dokuwiki-template-sprintdoc.../css/base.less
2025-04-05 16:47:44 +02:00

831 lines
23 KiB
Text
Executable file

/**
* This file provides the basic/reset styles.
*/
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* global vars */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@font_family_screen: "Athiti", ui-sans, sans-serif;
@font_family_print: "Athiti", ui-sans, sans-serif;
@nav_direct_background: var(--color-background);
@nav_direct_color: @ini_existing;
@background_darker: rgba(230,230,230, .2);
@ini_sidebar_width: (100 - @ini_site_width) - 4;
@height-context-bar: 50px;
@margin-small: 1rem;
@margin-default: 2rem;
@margin-big: 3.07rem;
@nav-margin: 1.3rem;
@small-spacing: .3rem;
@very-small-spacing: .2rem;
@grid: @margin-small;
@toggle-size: 1.75rem;
@transition: ease-out .30s;
@box-shadow-offset: .1em .1em .1em rgba(153,153,153,.5); // tabinclude
@box-shadow: 0 0 .5em rgba(153,153,153,.5); // pagetoolbox hover
@box-shadow-colored: 0 0 .5em fade(@ini_existing, 50%);
@box-shadow-right-bottom: .1em .3rem .5em rgba(153,153,153,.5);
@box-shadow-bottom: 0 .1em .5em rgba(153,153,153,.5); // qc-wrapper (breadcrumb), struct inline-editor
/* + + + for programmers customizing + + + */
@fix_border-radius: 0.5rem; // inputs, editbox (textarea), buttons, content, code, quicksearch, msg
@toggle-showsidebar_width: 3.47rem; // shown sidebar after toggle
@headericons-margin-xxs: .45rem; // screen xxs margin-top for header icons
@page_padding-top: @margin-small; // padding-top for 'dokuwiki__content'
@page-header_height: 2.8rem; // minimum: 2.8rem (height for breadcrumb, page-header, page-footer)
@meta-box_height: (@page-header_height - @page_padding-top);
@breadcrumb_height: @page-header_height;
@formfield_min-height: 2rem; // min-height for input, textarea, select, keygen
@code-background: #F6F6F6; /* code, pre, samp, kbd */
/* icons */
@noopentasks-background: #ECECEC; /* metabox tabs + num in icons + tabinclude */
@noopentasks-border: #BBB; /* metabox tabs + num in icons + code, pre, samp, kbd */
@noopentasks-color: #666; /* metabox tabs + num in icons + code, pre, samp, kbd */
@wikiicons-border: #CCC; /* usertools, breadcrumbs icons, pagetools box-hover */
/* navigation left */
@menu-margin-lg: 1.3rem;
@quicksearch-button-color: @noopentasks-color; /* autosuggest, submit in quicksearch */
@suggestion-zebra: #EEE;
/* edit mode */
@highlight-odd-ini_text: fade(@ini_background, 95%);
@highlight-even-ini_text: fade(@ini_text, 5%);
@color-editBox: var(--color-foreground); // editmode for tables, revision states
//@nolinkedicon-ini_background: fade(@ini_background_site, 10%);
//@opacity-ini_nav_menu_color: fade(@ini_nav_menu_color, 40%);
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* fonts */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@font-size-very-small: .73rem;
@font-size-small: .88rem;
@font-size-default: 1rem;
@font-size-big: 1.5rem;
@font-size-bigger: 1.75rem;
@line-height-default: 125%;
@line-height-big: 135%;
@line-height-bigger: 140%;
@font-weight-bold: 800;
@font-weight-normal: 400;
@font-scale-factor: .0769;
@font-size-head6: @font-size-default;
@font-size-head5: @font-size-default + @font-scale-factor;
@font-size-head4: @font-size-default + (@font-scale-factor * 3);
@font-size-head3: @font-size-default + (@font-scale-factor * 5);
@font-size-head2: @font-size-default + (@font-scale-factor * 7);
@font-size-head1: @font-size-default + (@font-scale-factor * 9);
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* breakpoints */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@break-min-xxs: 480;
@break-max-xxs: (@break-min-xxs - 1);
@break-min-xs: 768;
@break-max-xs: (@break-min-xs - 1);
@break-min-sm: 992;
@break-max-sm: (@break-min-sm - 1);
@break-min-md: 1024;
@break-max-md: (@break-min-md - 1);
@break-min-lg: 1200;
@break-max-lg: (@break-min-lg - 1);
@break-min-xlg: 1440;
@break-max-xlg: (@break-min-xlg - 1);
@break-min-xxlg: 1600;
@break-max-xxlg: (@break-min-xxlg - 1);
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* media queries for breakpoints */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@screen_min-xxs: ~"only screen and (min-width: " ~"@{break-min-xxs}px)";
@screen_max-xxs: ~"only screen and (max-width: " ~"@{break-max-xxs}px)";
@screen_min-xs: ~"only screen and (min-width: " ~"@{break-min-xs}px)";
@screen_max-xs: ~"only screen and (max-width: " ~"@{break-max-xs}px)";
@screen_min-sm: ~"only screen and (min-width: " ~"@{break-min-sm}px)";
@screen_max-sm: ~"only screen and (max-width: " ~"@{break-max-sm}px)";
@screen_min-md: ~"only screen and (min-width: " ~"@{break-min-md}px)";
@screen_max-md: ~"only screen and (max-width: " ~"@{break-max-md}px)";
@screen_min-lg: ~"only screen and (min-width: " ~"@{break-min-lg}px)";
@screen_max-lg: ~"only screen and (max-width: " ~"@{break-max-lg}px)";
@screen_min-xlg: ~"only screen and (min-width: " ~"@{break-min-xlg}px)";
@screen_max-xlg: ~"only screen and (max-width: " ~"@{break-max-xlg}px)";
@screen_min-xxlg: ~"only screen and (min-width: " ~"@{break-min-xxlg}px)";
@screen_max-xxlg: ~"only screen and (max-width: " ~"@{break-max-xxlg}px)";
@screen_only-md: ~"only screen and (min-width: 800px) and (max-width: " ~"@{break-max-md}px)";
@screen_only-xlg: ~"only screen and (min-width: " ~"@{break-min-xlg}px) and (max-width: " ~"@{break-max-xxlg}px)";
@screen_md-xlg: ~"only screen and (min-width: " ~"@{break-min-md}px) and (max-width: " ~"@{break-max-xlg}px)";
@screen_md-lg: ~"only screen and (min-width: " ~"@{break-min-md}px) and (max-width: " ~"@{break-max-lg}px)";
@screen_xs-lg: ~"only screen and (min-width: " ~"@{break-min-xs}px) and (max-width: " ~"@{break-max-md}px)";
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* col width */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@c12: 100%;
@c11: 91.66666667%;
@c10: 83.33333333%;
@c9: 75%;
@c8: 66.66666667%;
@c7: 58.33333333%;
@c6: 50%;
@c5: 41.66666667%;
@c4: 33.33333333%;
@c3: 25%;
@c2: 16.66666667%;
@c1: 8.33333333%;
@grid-columns: 12;
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* fonts */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@font-face {
font-family: "Athiti";
font-weight: 700;
src: url("fonts/athiti/Athiti-Bold.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 600;
src: url("fonts/athiti/Athiti-SemiBold.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 500;
src: url("fonts/athiti/Athiti-Medium.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 400;
src: url("fonts/athiti/Athiti-Regular.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 300;
src: url("fonts/athiti/Athiti-Light.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 200;
src: url("fonts/athiti/Athiti-ExtraLight.woff2") format("woff2");
}
@font-face {
font-family: "Departure Mono";
src: url("fonts/departuremono/DepartureMono-Regular.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 100;
src: url("fonts/argonglow/ArgonGlow-Thin.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 200;
src: url("fonts/argonglow/ArgonGlow-ExtraLight.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 300;
src: url("fonts/argonglow/ArgonGlow-Light.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 400;
src: url("fonts/argonglow/ArgonGlow-Regular.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 500;
src: url("fonts/argonglow/ArgonGlow-Medium.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 600;
src: url("fonts/argonglow/ArgonGlow-SemiBold.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 700;
src: url("fonts/argonglow/ArgonGlow-Bold.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
src: url("fonts/argonglow/ArgonGlow-VariableVF.woff2") format("woff2");
font-weight: 100 900;
}
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* all media */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
html,
body {
.reset();
font-size: 100.1%;
}
header,
.nav-direct{
.elementsReset();
}
ol,
ul {
list-style: none outside none;
}
blockquote,
q {
quotes: none;
}
acronym {
cursor: help;
border-bottom: dotted 1px @ini_text;
}
*:focus {
outline: 0;
}
table{
border-collapse: collapse;
border-spacing: 0;
empty-cells: show;
caption-side: top;
}
caption,
th,
td {
text-align: left;
vertical-align: top;
}
img {
display: block;
float: none;
border: none 0;
line-height: @line-height-default;
}
*,
div,
nav,
header {
box-sizing: border-box;
}
header,
footer,
.container,
.row, nav,
nav > ul {
&::before,
&::after {
display: table;
content: ' ';
clear: both;
}
}
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* css behaviour */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
.sr-out {
.sr-out();
}
.sr-only {
.sr-only();
}
.clearer{
clear: both;
}
.structure,
.none,
.mobile-only {
display: none;
}
.mobile-only {
display: none;
@media @screen_max-md {
display: inline-block;
}
}
.mobile-hide {
display: inline-block;
@media @screen_max-md {
display: none;
}
}
.desktop-only {
display: none;
@media @screen_min-md {
display: inline-block;
}
}
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* variables */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
:root {
--color-neutral-50: #F2F0F5;
--color-neutral-100: #D1C6E0;
--color-neutral-200: #B2A0CB;
--color-neutral-300: #957EB5;
--color-neutral-400: #7A60A0;
--color-neutral-500: #61468B;
--color-neutral-600: #4B3176;
--color-neutral-700: #371F60;
--color-neutral-800: #26114B;
--color-neutral-900: #180736;
--color-neutral-950: #0C011F;
--color-argon-50: #E1ABC9;
--color-argon-100: #DA87B5;
--color-argon-200: #D464A1;
--color-argon-300: #CD448F;
--color-argon-400: #C6257D;
--color-argon-500: #B0166F;
--color-argon-600: #9A0A61;
--color-argon-700: #830755;
--color-argon-800: #6D0449;
--color-argon-900: #56023C;
--color-argon-950: #3F012D;
--color-krypton-50: #B2D9EA;
--color-krypton-100: #8CC9E4;
--color-krypton-200: #69BADE;
--color-krypton-300: #4BADD8;
--color-krypton-400: #2493C2;
--color-krypton-500: #167FAC;
--color-krypton-600: #0A6C96;
--color-krypton-700: #075C81;
--color-krypton-800: #044C6B;
--color-krypton-900: #023C55;
--color-krypton-950: #012C3F;
--color-green-50: #C0F49A;
--color-green-100: #A7E57A;
--color-green-200: #8FD75D;
--color-green-300: #7AC843;
--color-green-400: #66B92D;
--color-green-500: #54AA18;
--color-green-600: #47990F;
--color-green-700: #397E0A;
--color-green-800: #2B6206;
--color-green-900: #1F4703;
--color-green-950: #122B01;
--color-red-50: #E6AFAF;
--color-red-100: #DD9090;
--color-red-200: #D57272;
--color-red-300: #CC5757;
--color-red-400: #C33D3D;
--color-red-500: #BB2626;
--color-red-600: #B21010;
--color-red-700: #950808;
--color-red-800: #780404;
--color-red-900: #5C0202;
--color-red-950: #3F0101;
--color-white: #FFFFFF;
--color-dark-foreground: var(--color-neutral-50);
--color-dark-background: var(--color-neutral-950);
--color-dark-shade-1: var(--color-neutral-900);
--color-dark-shade-2: var(--color-neutral-800);
--color-dark-shade-3: var(--color-neutral-700);
--color-dark-shade-4: var(--color-neutral-600);
--color-dark-text-1: var(--color-neutral-200);
--color-dark-text-2: var(--color-neutral-300);
--color-dark-text-3: var(--color-neutral-400);
--color-dark-text-4: var(--color-neutral-500);
--color-dark-primary: var(--color-argon-400);
--color-dark-secondary: var(--color-krypton-300);
--color-dark-error: var(--color-red-500);
--color-dark-success: var(--color-green-500);
--color-dark-warning: #efb100;
--color-dark-highlight: #efb10060;
--color-dark-accent-1: #60a5f9;
--color-dark-accent-2: #d381f7;
--color-dark-accent-3: #ff7975;
--color-light-foreground: var(--color-neutral-950);
--color-light-background: var(--color-neutral-50);
--color-light-shade-1: var(--color-neutral-100);
--color-light-shade-2: var(--color-neutral-200);
--color-light-shade-3: var(--color-neutral-300);
--color-light-shade-4: var(--color-neutral-400);
--color-light-text-1: var(--color-neutral-800);
--color-light-text-2: var(--color-neutral-700);
--color-light-text-3: var(--color-neutral-600);
--color-light-text-4: var(--color-neutral-500);
--color-light-primary: var(--color-argon-600);
--color-light-secondary: var(--color-krypton-500);
--color-light-error: var(--color-red-600);
--color-light-success: var(--color-green-600);
--color-light-warning: #d08700;
--color-light-highlight: #d0870060;
--color-light-accent-1: #303EC0;
--color-light-accent-2: #6c366c;
--color-light-accent-3: #932f0a;
--color-cmyk-primary: var(--color-dark-primary);
--color-cmyk-secondary: var(--color-dark-secondary);
--text-xs: 0.75rem;
--text-sm: 0.875rem;
--text-base: 1rem;
--text-lg: 1.125rem;
--text-xl: 1.25rem;
--text-2xl: 1.5rem;
--text-3xl: 1.875rem;
--text-4xl: 2.25rem;
--text-5xl: 3rem;
--container-3xs: 16rem;
--container-2xs: 18rem;
--container-xs: 20rem;
--container-sm: 24rem;
--container-md: 28rem;
--container-lg: 32rem;
--container-xl: 36rem;
--container-2xl: 42rem;
--container-3xl: 48rem;
--container-4xl: 56rem;
--container-5xl: 64rem;
--container-6xl: 72rem;
--container-7xl: 80rem;
}
.fnButton {
border-radius: 0.5rem;
background-color: var(--color-shade-1);
transition: background-color 150ms;
color: var(--color-foreground);
font-size: 1.2em;
border: solid 0.1em var(--color-shade-1);
transition-property: filter, border-color;
transition-duration: 200ms;
transition-timing-function: ease-out;
&:hover, &.active{
.fnActiveButton();
}
}
.fnButtonSecondary {
&:hover, &.active{
.fnActiveButtonSecondary();
}
}
.fnActiveButton {
background-color: transparent;
border: solid 0.1em var(--color-glow-primary);
text-decoration: none;
color: var(--color-glow-primary);
filter: var(--filter-glow-primary);
transition: var(--transition-glow);
}
.fnActiveButtonSecondary {
background-color: transparent;
border: solid 0.1em var(--color-glow-secondary);
text-decoration: none;
color: var(--color-glow-secondary);
filter: var(--filter-glow-secondary);
transition: var(--transition-glow);
}
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* screen only */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@media screen {
.dark {
--color-foreground: var(--color-dark-foreground);
--color-background: var(--color-dark-background);
--color-shade-1: var(--color-dark-shade-1);
--color-shade-2: var(--color-dark-shade-2);
--color-shade-3: var(--color-dark-shade-3);
--color-shade-4: var(--color-dark-shade-4);
--color-text-1: var(--color-dark-text-1);
--color-text-2: var(--color-dark-text-2);
--color-text-3: var(--color-dark-text-3);
--color-text-4: var(--color-dark-text-4);
--color-primary: var(--color-dark-primary);
--color-secondary: var(--color-dark-secondary);
--color-error: var(--color-dark-error);
--color-success: var(--color-dark-success);
--color-warning: var(--color-dark-warning);
--color-highlight: var(--color-dark-highlight);
--color-accent-1: var(--color-dark-accent-1);
--color-accent-2: var(--color-dark-accent-2);
--color-accent-3: var(--color-dark-accent-3);
--filter-glow-primary: drop-shadow(0 0 0.0625em var(--color-white)) drop-shadow(0 0 0.125em var(--color-primary)) drop-shadow(0 0 0.25em var(--color-primary));
--filter-glow-secondary: drop-shadow(0 0 0.0625em var(--color-white)) drop-shadow(0 0 0.125em var(--color-secondary)) drop-shadow(0 0 0.25em var(--color-secondary));
--color-glow-primary: var(--color-white);
--color-glow-secondary: var(--color-white);
--transition-glow: filter 150ms cubic-bezier(0,1.7,1,-0.3) 50ms,
border-color 150ms cubic-bezier(0,1.7,1,-0.3) 50ms;
@media (prefers-reduced-motion) {
--transition-glow: filter 150ms, border-color 150ms;
}
.light-only {
display: none;
}
.dark-only {
display: initial;
}
}
.light {
--color-foreground: var(--color-light-foreground);
--color-background: var(--color-light-background);
--color-shade-1: var(--color-light-shade-1);
--color-shade-2: var(--color-light-shade-2);
--color-shade-3: var(--color-light-shade-3);
--color-shade-4: var(--color-light-shade-4);
--color-text-1: var(--color-light-text-1);
--color-text-2: var(--color-light-text-2);
--color-text-3: var(--color-light-text-3);
--color-text-4: var(--color-light-text-4);
--color-primary: var(--color-light-primary);
--color-secondary: var(--color-light-secondary);
--color-error: var(--color-light-error);
--color-success: var(--color-light-success);
--color-warning: var(--color-light-warning);
--color-highlight: var(--color-light-highlight);
--color-accent-1: var(--color-light-accent-1);
--color-accent-2: var(--color-light-accent-2);
--color-accent-3: var(--color-light-accent-3);
--filter-glow-primary: drop-shadow(0 0 0.0625em var(--color-argon-400));
--filter-glow-secondary: drop-shadow(0 0 0.0625em var(--color-krypton-400));
--color-glow-primary: var(--color-argon-950);
--color-glow-secondary: var(--color-krypton-950);
--transition-glow: filter 150ms cubic-bezier(0, 2, 1, -0.7) 50ms,
border-color 150ms cubic-bezier(0, 2, 1, -0.7) 50ms;
@media (prefers-reduced-motion) {
--transition-glow: filter 150ms, border-color 150ms;
}
.light-only {
display: initial;
}
.dark-only {
display: none;
}
}
@media (prefers-color-scheme: dark) {
html {
.dark();
&:has(#themeLight:checked) {
.light();
}
}
#themeToggleDark {
display: none !important;
}
}
@media (prefers-color-scheme: light) {
html {
.light();
&:has(#themeDark:checked) {
.dark();
}
}
#themeToggleLight {
display: none !important;
}
}
html {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}
article, aside, details, figcaption, figure, footer, header,
main, menu, nav, section, summary {
display: block;
}
audio,
canvas,
progress,
video {
display: inline-block;
vertical-align: baseline;
}
audio:not([controls]) {
display: none;
height: 0;
}
[hidden],
template {
display: none;
}
a {
color: var(--color-accent-1);
text-decoration: underline;
&:hover,
&:active,
&:focus {
color: var(--color-accent-3);
text-decoration: none;
}
&:visited {
color: var(--color-accent-2);
text-decoration: underline;
&:hover,
&:active,
&:focus {
color: var(--color-accent-3);
text-decoration: none;
}
}
}
abbr[title] {
border-bottom: 1px dotted;
}
small {
font-size: 80%;
}
svg:not(:root) {
overflow: hidden;
}
hr {
box-sizing: content-box;
height: 0;
}
pre {
overflow: auto;
}
code,
kbd,
pre,
samp {
font-family: "Departure Mono", ui-monospace, monospace;
font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
color: inherit;
font: inherit;
margin: 0;
}
button,
select {
text-transform: none;
}
button {
overflow: visible;
}
input {
&[type="checkbox"],
&[type="radio"] {
box-sizing: border-box;
padding: 0;
}
&[type="number"] {
&::-webkit-inner-spin-button,
&::-webkit-outer-spin-button {
height: auto;
}
}
&[type="search"] {
-webkit-appearance: textfield;
box-sizing: content-box;
&::-webkit-search-cancel-button,
&::-webkit-search-decoration {
-webkit-appearance: none;
}
}
}
legend {
border: 0;
padding: 0;
}
textarea {
overflow: auto;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
}
html, body {
font-family: @font_family_screen;
color: var(--color-foreground);
}
}
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
/* print only */
/* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + */
@media print {
body {
font-size: 12pt;
}
}