design/styleguide/assets/style/styleguide.css
lilith ed133f9c8e
All checks were successful
/ build (push) Successful in 11s
Make theme-toggle tab-selectable
2025-03-06 02:28:53 +01:00

1348 lines
36 KiB
CSS

: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-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-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);
--line-height-loose: 1.4;
--line-height-relaxed: 1.3;
--line-height-base: 1.2;
--line-height-snug: 1.1;
--line-height-tight: 1;
--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;
--text-6xl: 3.75rem;
--text-7xl: 4.5rem;
--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;
}
.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-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;
--text-glow-primary: drop-shadow(0 0 0.03125em var(--color-white))
drop-shadow(0 0 0.0625em var(--color-primary))
drop-shadow(0 0 0.125em var(--color-primary));
--text-glow-secondary: drop-shadow(0 0 0.03125em var(--color-white))
drop-shadow(0 0 0.0625em var(--color-secondary))
drop-shadow(0 0 0.125em var(--color-secondary));
}
.dark .light-only {
display: none;
}
.dark .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-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-950));
--filter-glow-secondary: drop-shadow(0 0 0.0625em var(--color-krypton-950));
--color-glow-primary: var(--color-argon-800);
--color-glow-secondary: var(--color-krypton-800);
--transition-glow:
filter 150ms cubic-bezier(0, 2, 1, -0.7) 50ms,
border-color 150ms cubic-bezier(0, 2, 1, -0.7) 50ms;
--text-glow-primary: drop-shadow(0 0 0.03125em var(--color-argon-950));
--text-glow-secondary: drop-shadow(0 0 0.03125em var(--color-krypton-950));
}
.light .light-only {
display: initial;
}
.light .dark-only {
display: none;
}
@media (prefers-color-scheme: dark) {
html {
--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-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;
--text-glow-primary: drop-shadow(0 0 0.03125em var(--color-white))
drop-shadow(0 0 0.0625em var(--color-primary))
drop-shadow(0 0 0.125em var(--color-primary));
--text-glow-secondary: drop-shadow(0 0 0.03125em var(--color-white))
drop-shadow(0 0 0.0625em var(--color-secondary))
drop-shadow(0 0 0.125em var(--color-secondary));
}
html .light-only {
display: none;
}
html .dark-only {
display: initial;
}
html:has(#themeLight:checked) {
--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-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-950));
--filter-glow-secondary: drop-shadow(0 0 0.0625em var(--color-krypton-950));
--color-glow-primary: var(--color-argon-800);
--color-glow-secondary: var(--color-krypton-800);
--transition-glow:
filter 150ms cubic-bezier(0, 2, 1, -0.7) 50ms,
border-color 150ms cubic-bezier(0, 2, 1, -0.7) 50ms;
--text-glow-primary: drop-shadow(0 0 0.03125em var(--color-argon-950));
--text-glow-secondary: drop-shadow(0 0 0.03125em var(--color-krypton-950));
}
html:has(#themeLight:checked) .light-only {
display: initial;
}
html:has(#themeLight:checked) .dark-only {
display: none;
}
#themeToggleDark {
display: none;
}
}
@media (prefers-color-scheme: light) {
html {
--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-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-950));
--filter-glow-secondary: drop-shadow(0 0 0.0625em var(--color-krypton-950));
--color-glow-primary: var(--color-argon-800);
--color-glow-secondary: var(--color-krypton-800);
--transition-glow:
filter 150ms cubic-bezier(0, 2, 1, -0.7) 50ms,
border-color 150ms cubic-bezier(0, 2, 1, -0.7) 50ms;
--text-glow-primary: drop-shadow(0 0 0.03125em var(--color-argon-950));
--text-glow-secondary: drop-shadow(0 0 0.03125em var(--color-krypton-950));
}
html .light-only {
display: initial;
}
html .dark-only {
display: none;
}
html:has(#themeDark:checked) {
--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-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;
--text-glow-primary: drop-shadow(0 0 0.03125em var(--color-white))
drop-shadow(0 0 0.0625em var(--color-primary))
drop-shadow(0 0 0.125em var(--color-primary));
--text-glow-secondary: drop-shadow(0 0 0.03125em var(--color-white))
drop-shadow(0 0 0.0625em var(--color-secondary))
drop-shadow(0 0 0.125em var(--color-secondary));
}
html:has(#themeDark:checked) .light-only {
display: none;
}
html:has(#themeDark:checked) .dark-only {
display: initial;
}
#themeToggleLight {
display: none;
}
}
@font-face {
font-family: "Athiti";
font-weight: 700;
src: url("../font/athiti/Athiti-Bold.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 600;
src: url("../font/athiti/Athiti-SemiBold.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 500;
src: url("../font/athiti/Athiti-Medium.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 400;
src: url("../font/athiti/Athiti-Regular.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 300;
src: url("../font/athiti/Athiti-Light.woff2") format("woff2");
}
@font-face {
font-family: "Athiti";
font-weight: 200;
src: url("../font/athiti/Athiti-ExtraLight.woff2") format("woff2");
}
@font-face {
font-family: "Departure Mono";
src: url("../font/departuremono/DepartureMono-Regular.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 100;
src: url("../font/argonglow/ArgonGlow-Thin.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 200;
src: url("../font/argonglow/ArgonGlow-ExtraLight.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 300;
src: url("../font/argonglow/ArgonGlow-Light.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 400;
src: url("../font/argonglow/ArgonGlow-Regular.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 500;
src: url("../font/argonglow/ArgonGlow-Medium.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 600;
src: url("../font/argonglow/ArgonGlow-SemiBold.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
font-weight: 700;
src: url("../font/argonglow/ArgonGlow-Bold.woff2") format("woff2");
}
@font-face {
font-family: "Argon Glow";
src: url("../font/argonglow/ArgonGlow-VariableVF.woff2") format("woff2");
font-weight: 100 900;
}
:root {
font-size: 1rem;
}
body {
background-color: var(--color-background);
color: var(--color-foreground);
font-family: "Athiti", ui-sans, sans-serif;
line-height: var(--line-height-base);
}
.main-title,
h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
margin: 1rem 0;
}
.main-title {
font-size: var(--text-7xl);
line-height: var(--line-height-base);
}
h1,
.h1 {
font-size: var(--text-5xl);
line-height: var(--line-height-base);
}
h2,
.h2 {
font-size: var(--text-4xl);
line-height: var(--line-height-base);
}
h3,
.h3 {
font-size: var(--text-3xl);
line-height: var(--line-height-base);
}
h4,
.h4 {
font-size: var(--text-2xl);
line-height: var(--line-height-loose);
}
h5,
.h5 {
font-size: var(--text-xl);
line-height: var(--line-height-loose);
}
h6,
.h6 {
font-size: var(--text-lg);
line-height: var(--line-height-loose);
}
pre {
font-family: "Departure Mono", ui-monospace, monospace;
font-size: 0.8em;
display: block;
padding: 1rem;
border-radius: 1rem;
border: solid 0.3em var(--color-shade-2);
}
pre code {
background-color: initial;
border: initial;
border-radius: initial;
padding: initial;
font-size: inherit;
}
code,
.code {
font-family: "Departure Mono", ui-monospace, monospace;
font-size: 0.8em;
border: solid 0.15em var(--color-shade-2);
border-radius: 0.2em;
padding: 0 0.2em;
}
pre span.comment,
code span.comment,
.code span.comment {
color: var(--color-text-4);
font-style: italic;
}
pre span.neutral,
code span.neutral,
.code span.neutral {
color: var(--color-text-2);
}
pre span.identifier,
code span.identifier,
.code span.identifier {
color: var(--color-primary);
}
pre span.function,
code span.function,
.code span.function {
color: var(--color-accent-1);
font-style: italic;
}
pre span.keyword,
code span.keyword,
.code span.keyword {
color: var(--color-accent-2);
}
pre span.number,
code span.number,
.code span.number {
color: var(--color-accent-3);
}
pre span.string,
code span.string,
.code span.string {
color: var(--color-accent-3);
font-style: italic;
}
table {
width: fit-content;
border-collapse: collapse;
}
table th,
table td {
padding: 0.25rem 0.5rem;
border: solid 0.1em var(--color-shade-4);
}
table tr th {
text-align: left;
background-color: var(--color-shade-1);
}
table thead {
position: sticky;
top: 4rem;
z-index: 10;
}
@media (min-width: 48rem) {
table thead {
top: 0;
}
}
table thead tr > th {
outline-width: 0.1em;
outline-style: solid;
outline-offset: -0.05em;
outline-color: var(--color-shade-4);
}
table.row-hover tbody tr:hover th {
background-color: var(--color-shade-3);
}
table.row-hover tbody tr:hover td {
background-color: var(--color-shade-2);
}
a {
color: var(--color-accent-1);
text-decoration: underline;
}
a:hover, a:active, a:focus {
color: var(--color-accent-3);
text-decoration: none;
}
a:visited {
color: var(--color-accent-2);
text-decoration: underline;
}
a:visited:hover, a:visited:active, a:visited:focus {
color: var(--color-accent-3);
text-decoration: none;
}
figure {
display: flex;
flex-direction: column;
align-items: center;
}
figure img {
width: 100%;
max-height: 30vh;
object-fit: contain;
object-position: center;
}
img {
width: 80%;
max-height: 30vh;
object-fit: contain;
object-position: center;
margin: 0 auto;
}
i[data-icon] {
display: inline-block;
width: 1em;
height: 1em;
flex-shrink: 0;
position: relative;
box-sizing: content-box;
}
i[data-icon]::before {
content: "";
display: block;
width: 100%;
height: 100%;
mask-size: contain;
mask-position: center;
mask-repeat: no-repeat;
background-color: currentColor;
}
i[data-icon="arrow_down"]::before {
mask-image: url("../icon/arrow_down.svg");
}
i[data-icon="arrow_down_left"]::before {
mask-image: url("../icon/arrow_down_left.svg");
}
i[data-icon="arrow_down_right"]::before {
mask-image: url("../icon/arrow_down_right.svg");
}
i[data-icon="arrow_left"]::before {
mask-image: url("../icon/arrow_left.svg");
}
i[data-icon="arrow_right"]::before {
mask-image: url("../icon/arrow_right.svg");
}
i[data-icon="arrow_up"]::before {
mask-image: url("../icon/arrow_up.svg");
}
i[data-icon="arrow_up_left"]::before {
mask-image: url("../icon/arrow_up_left.svg");
}
i[data-icon="arrow_up_right"]::before {
mask-image: url("../icon/arrow_up_right.svg");
}
i[data-icon="basket"]::before {
mask-image: url("../icon/basket.svg");
}
i[data-icon="bed"]::before {
mask-image: url("../icon/bed.svg");
}
i[data-icon="clock"]::before {
mask-image: url("../icon/clock.svg");
}
i[data-icon="code"]::before {
mask-image: url("../icon/code.svg");
}
i[data-icon="creature"]::before {
mask-image: url("../icon/creature.svg");
}
i[data-icon="cross"]::before {
mask-image: url("../icon/cross.svg");
}
i[data-icon="cross_small"]::before {
mask-image: url("../icon/cross_small.svg");
}
i[data-icon="cup_1"]::before {
mask-image: url("../icon/cup_1.svg");
}
i[data-icon="cup_2"]::before {
mask-image: url("../icon/cup_2.svg");
}
i[data-icon="dect"]::before {
mask-image: url("../icon/dect.svg");
}
i[data-icon="external"]::before {
mask-image: url("../icon/external.svg");
}
i[data-icon="fairydust"]::before {
mask-image: url("../icon/fairydust.svg");
}
i[data-icon="flag"]::before {
mask-image: url("../icon/flag.svg");
}
i[data-icon="gluten"]::before {
mask-image: url("../icon/gluten.svg");
}
i[data-icon="hackertours"]::before {
mask-image: url("../icon/hackertours.svg");
}
i[data-icon="hare_head"]::before {
mask-image: url("../icon/hare_head.svg");
}
i[data-icon="history"]::before {
mask-image: url("../icon/history.svg");
}
i[data-icon="home"]::before {
mask-image: url("../icon/home.svg");
}
i[data-icon="hygene"]::before {
mask-image: url("../icon/hygene.svg");
}
i[data-icon="info"]::before {
mask-image: url("../icon/info.svg");
}
i[data-icon="lightbulb"]::before {
mask-image: url("../icon/lightbulb.svg");
}
i[data-icon="link"]::before {
mask-image: url("../icon/link.svg");
}
i[data-icon="location"]::before {
mask-image: url("../icon/location.svg");
}
i[data-icon="lock"]::before {
mask-image: url("../icon/lock.svg");
}
i[data-icon="login"]::before {
mask-image: url("../icon/login.svg");
}
i[data-icon="logout"]::before {
mask-image: url("../icon/logout.svg");
}
i[data-icon="menu"]::before {
mask-image: url("../icon/menu.svg");
}
i[data-icon="menu_small"]::before {
mask-image: url("../icon/menu_small.svg");
}
i[data-icon="merch"]::before {
mask-image: url("../icon/merch.svg");
}
i[data-icon="message"]::before {
mask-image: url("../icon/message.svg");
}
i[data-icon="microphone"]::before {
mask-image: url("../icon/microphone.svg");
}
i[data-icon="network"]::before {
mask-image: url("../icon/network.svg");
}
i[data-icon="pen"]::before {
mask-image: url("../icon/pen.svg");
}
i[data-icon="plate_and_cutlery"]::before {
mask-image: url("../icon/plate_and_cutlery.svg");
}
i[data-icon="power"]::before {
mask-image: url("../icon/power.svg");
}
i[data-icon="question"]::before {
mask-image: url("../icon/question.svg");
}
i[data-icon="schedule"]::before {
mask-image: url("../icon/schedule.svg");
}
i[data-icon="search"]::before {
mask-image: url("../icon/search.svg");
}
i[data-icon="settings"]::before {
mask-image: url("../icon/settings.svg");
}
i[data-icon="signup"]::before {
mask-image: url("../icon/signup.svg");
}
i[data-icon="soldering_iron"]::before {
mask-image: url("../icon/soldering_iron.svg");
}
i[data-icon="tick"]::before {
mask-image: url("../icon/tick.svg");
}
i[data-icon="tick_small"]::before {
mask-image: url("../icon/tick_small.svg");
}
i[data-icon="ticket"]::before {
mask-image: url("../icon/ticket.svg");
}
i[data-icon="toast"]::before {
mask-image: url("../icon/toast.svg");
}
i[data-icon="train"]::before {
mask-image: url("../icon/train.svg");
}
i[data-icon="vegan"]::before {
mask-image: url("../icon/vegan.svg");
}
i[data-icon="warning"]::before {
mask-image: url("../icon/warning.svg");
}
* {
box-sizing: border-box;
}
body {
margin: 0;
height: 100vh;
width: 100%;
display: flex;
flex-direction: column;
position: relative;
overflow: auto;
}
body header {
text-align: center;
width: 100%;
height: fit-content;
flex-grow: 0;
}
@media (max-width: 48rem) {
body header {
margin-top: 4rem;
}
}
body header .header-image {
height: 200px;
width: fit-content;
max-width: 100%;
object-fit: contain;
}
body header #backToWiki > img {
transition: transform 200ms;
}
body header #backToWiki:hover > img {
transform: scale(1.05);
}
body .main-title,
body h1,
body .h1,
body h2,
body .h2,
body h3,
body .h3,
body h4,
body .h4 {
filter: var(--text-glow-primary);
color: var(--color-glow-primary);
}
body > div {
display: flex;
gap: 1rem;
flex-grow: 1;
flex-direction: column;
}
@media (min-width: 48rem) {
body > div {
flex-direction: row;
}
}
body > div nav {
display: flex;
flex-direction: column;
flex-shrink: 0;
position: sticky;
top: 0;
padding: 0 1rem;
background-color: var(--color-background);
z-index: 20;
overflow: hidden;
width: 100%;
height: 4rem;
transition: height 200ms;
}
@media (min-width: 48rem) {
body > div nav {
max-width: 15rem;
width: fit-content;
top: 1rem;
height: fit-content;
overflow: visible;
}
body > div nav button {
display: none;
}
}
@media (max-width: 48rem) {
body > div nav {
position: fixed;
}
body > div nav:not(.visible) ul {
display: none;
}
body > div nav.visible {
height: 100vh;
}
}
body > div nav button {
background-color: transparent;
border: none;
color: var(--color-foreground);
font-size: 2rem;
cursor: pointer;
transition: filter 400ms ease-in;
padding: 1rem 0;
width: 2rem;
height: 2rem;
box-sizing: content-box;
}
body > div nav button:hover {
filter: var(--filter-glow-primary);
transition: var(--transition-glow);
}
body > div nav ul {
display: flex;
flex-direction: column;
gap: 0.75rem;
list-style-type: none;
padding: 0;
margin: 0;
}
body > div nav ul li {
border-radius: 0.5rem;
background-color: var(--color-shade-1);
transition: background-color 150ms;
}
body > div nav ul li.link-back {
background-color: var(--color-background);
}
body > div nav ul li.active {
background-color: var(--color-shade-2);
}
body > div nav ul li.link-back a, body > div nav ul li.active a {
border-color: var(--color-shade-4);
}
body > div nav ul li > a,
body > div nav ul li label {
display: flex;
align-items: center;
gap: 0.5rem;
border-radius: 0.5rem;
border: solid 0.1em var(--color-shade-1);
padding: 0.4rem 1rem;
color: var(--color-foreground);
text-decoration: none;
font-size: 1.2em;
box-sizing: border-box;
transition-property: filter, border-color;
transition-duration: 400ms;
transition-timing-function: ease-in;
}
body > div nav ul li > a:visited, body > div nav ul li > a:focus, body > div nav ul li > a:active, body > div nav ul li > a:hover,
body > div nav ul li label:visited,
body > div nav ul li label:focus,
body > div nav ul li label:active,
body > div nav ul li label:hover {
color: var(--color-foreground);
}
body > div nav ul li:hover, body > div nav ul li:focus-within {
background-color: transparent;
}
body > div nav ul li:hover a,
body > div nav ul li:hover label, body > div nav ul li:focus-within a,
body > div nav ul li:focus-within label {
border: solid 0.1em var(--color-glow-primary);
background-color: transparent;
filter: var(--filter-glow-primary);
transition: var(--transition-glow);
}
body > div nav ul li:hover a:visited, body > div nav ul li:hover a:focus, body > div nav ul li:hover a:active, body > div nav ul li:hover a:hover,
body > div nav ul li:hover label:visited,
body > div nav ul li:hover label:focus,
body > div nav ul li:hover label:active,
body > div nav ul li:hover label:hover, body > div nav ul li:focus-within a:visited, body > div nav ul li:focus-within a:focus, body > div nav ul li:focus-within a:active, body > div nav ul li:focus-within a:hover,
body > div nav ul li:focus-within label:visited,
body > div nav ul li:focus-within label:focus,
body > div nav ul li:focus-within label:active,
body > div nav ul li:focus-within label:hover {
color: var(--color-glow-primary);
}
body > div nav ul li:hover.link-back a, body > div nav ul li:focus-within.link-back a {
border: solid 0.1em var(--color-glow-secondary);
filter: var(--filter-glow-secondary);
}
body > div nav ul li:hover.link-back a:visited, body > div nav ul li:hover.link-back a:focus, body > div nav ul li:hover.link-back a:active, body > div nav ul li:hover.link-back a:hover, body > div nav ul li:focus-within.link-back a:visited, body > div nav ul li:focus-within.link-back a:focus, body > div nav ul li:focus-within.link-back a:active, body > div nav ul li:focus-within.link-back a:hover {
color: var(--color-glow-secondary);
}
body > div nav ul li:not(.themeToggle) i[data-icon] {
padding-right: 0.5em;
padding-top: 0.2em;
padding-bottom: 0.2em;
border-right: solid 0.1em currentColor;
}
body > div nav ul li.themeToggle {
font-size: 1.4em;
width: fit-content;
}
body > div nav ul li.themeToggle input {
width: 0;
height: 0;
margin: 0;
padding: 0;
display: block;
opacity: 0;
}
body > div nav ul li.themeToggle label {
justify-content: center;
padding: 0.25em;
}
body > div main {
max-width: min(var(--container-4xl), 100vw);
width: 100%;
padding: 0 1rem;
}
@media (min-width: 48rem) {
body > div main {
padding-left: 2rem;
border-left: dashed 0.25rem var(--color-shade-4);
}
}
.background {
background-color: var(--color-background);
}
a.a-regular, a.a-regular:hover, a.a-regular:active, a.a-regular:focus, a.a-regular:visited {
color: var(--color-accent-1);
text-decoration: underline;
}
a.a-hover, a.a-hover:visited {
color: var(--color-accent-3);
text-decoration: none;
}
a.a-visited, a.a-visited:hover, a.a-visited:active, a.a-visited:focus {
color: var(--color-accent-2);
text-decoration: underline;
}
.alert {
background-color: var(--color-shade-1);
padding: 1rem 1.5rem;
border-radius: 1rem;
position: relative;
display: flex;
flex-direction: row;
gap: 1.5rem;
margin: 2rem 0;
}
.alert i[data-icon] {
padding-top: 0.5rem;
font-size: var(--text-5xl);
filter: var(--filter-glow-primary);
color: var(--color-glow-primary);
}
.alert strong {
font-size: var(--text-xl);
display: block;
}
.alert p {
margin: 0;
}
.alert::before {
content: "";
position: absolute;
inset: 0;
border-radius: 1rem;
border: solid 0.125rem var(--color-glow-primary);
filter: var(--filter-glow-primary);
}
pre,
.code {
max-width: 100%;
overflow-x: auto;
}
.layout-column {
display: flex;
width: 100%;
}
.layout-column > * {
width: 100%;
}
@media (max-width: 48rem) {
.layout-column {
flex-wrap: wrap;
}
.layout-column > * {
width: 100%;
}
}
.flex-wrap-md {
display: flex;
align-items: center;
}
.flex-wrap-md > * {
width: 100%;
}
@media (max-width: 80rem) {
.flex-wrap-md {
flex-wrap: wrap;
justify-content: center;
}
.flex-wrap-md > * {
width: 100%;
}
}
main > div.generator {
display: flex;
flex-direction: column;
gap: 1em;
align-items: center;
}
main > div.generator img {
width: 400px;
height: 300px;
object-fit: contain;
filter: 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));
}
main > div.generator i {
font-size: 3em;
filter: 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));
}
.icon-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(var(--text-5xl), 1fr));
align-items: center;
justify-items: center;
gap: 2rem;
}
.icon-grid div {
width: var(--text-5xl);
height: var(--text-5xl);
display: flex;
align-items: center;
justify-content: center;
box-sizing: content-box;
padding: 0.5rem;
border-radius: 0.3rem;
cursor: pointer;
}
.icon-grid div:hover, .icon-grid div:focus {
background-color: var(--color-shade-2);
}
.icon-grid div:hover i[data-icon]::after, .icon-grid div:focus i[data-icon]::after {
content: attr(data-icon);
font-size: var(--text-xl);
background-color: var(--color-shade-2);
padding: 0.5rem;
z-index: 10;
position: absolute;
bottom: calc((var(--text-xl) * -1) - 2rem);
border-radius: 0.3rem;
}
.icon-grid div i[data-icon] {
font-size: var(--text-5xl);
position: relative;
}
.icon-grid div i[data-icon].icon-small {
font-size: var(--text-3xl);
}
.swatch-grid {
background-color: var(--color-background);
color: var(--color-foreground);
padding: 1rem;
}
.swatch-grid section {
display: flex;
flex-wrap: wrap;
gap: 1rem;
margin-top: 2rem;
}
.swatch-grid section > span {
width: 100%;
font-size: var(--text-xl);
}
.swatch-grid section .swatch-container {
display: inline-flex;
flex-direction: column;
align-items: end;
gap: 0.25rem;
background-color: var(--color-background);
border-radius: 1rem;
padding: 0.5rem;
border: 0.125rem solid var(--color-foreground);
}
.swatch-grid section .swatch-container .swatch {
background-color: var(--swatch-color);
width: 8rem;
height: 8rem;
border-radius: 0.5rem;
}
.swatch-grid section .swatch-container span {
font-family: "Departure Mono", ui-monospace, monospace;
color: var(--color-foreground);
line-height: 1.5;
}
.glow-16-primary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 16px;
color: var(--color-white);
filter: url("glows.svg#textBlur16Primary");
}
.glow-18-primary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 18px;
color: var(--color-white);
filter: url("glows.svg#textBlur18Primary");
}
.glow-24-primary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 24px;
color: var(--color-white);
filter: url("glows.svg#textBlur24Primary");
}
.glow-32-primary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 32px;
color: var(--color-white);
filter: url("glows.svg#textBlur32Primary");
}
.glow-48-primary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 48px;
color: var(--color-white);
filter: url("glows.svg#textBlur48Primary");
}
.glow-72-primary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 72px;
color: var(--color-white);
filter: url("glows.svg#textBlur72Primary");
}
.glow-160-primary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 160px;
color: var(--color-white);
filter: url("glows.svg#textBlur160Primary");
}
.glow-16-secondary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 16px;
color: var(--color-white);
filter: url("glows.svg#textBlur16Secondary");
}
.glow-18-secondary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 18px;
color: var(--color-white);
filter: url("glows.svg#textBlur18Secondary");
}
.glow-24-secondary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 24px;
color: var(--color-white);
filter: url("glows.svg#textBlur24Secondary");
}
.glow-32-secondary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 32px;
color: var(--color-white);
filter: url("glows.svg#textBlur32Secondary");
}
.glow-48-secondary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 48px;
color: var(--color-white);
filter: url("glows.svg#textBlur48Secondary");
}
.glow-72-secondary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 72px;
color: var(--color-white);
filter: url("glows.svg#textBlur72Secondary");
}
.glow-160-secondary {
font-family: "Argon Glow", ui-sans, sans-serif;
font-weight: 400;
font-size: 160px;
color: var(--color-white);
filter: url("glows.svg#textBlur160Secondary");
}
/*# sourceMappingURL=styleguide.css.map */