/* ALBUDENT tokeny – generováno z tokens.json (web/build.mjs). Needitovat ručně. */
@font-face{font-family:Lexend;src:url(../fonts/Lexend-400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Lexend;src:url(../fonts/Lexend-500.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Lexend;src:url(../fonts/Lexend-600.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Lexend;src:url(../fonts/Lexend-700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(../fonts/Figtree-400.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(../fonts/Figtree-500.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(../fonts/Figtree-600.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Figtree;src:url(../fonts/Figtree-700.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
:root {
  --space-1: 4px;
  --space-md: 6px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 80px;
  --radius-s: 10px;
  --radius-m: 16px;
  --radius-l: 24px;
  --radius-xl: 36px;
  --top-left-radius: 15px;
  --radius-pill: 999px;
  --glass-blur: 24px;
  --dur-fast: 140ms;
  --dur-base: 260ms;
  --dur-slow: 900ms;
  --font-display: Lexend, "Segoe UI", system-ui, sans-serif;
  --font-sans: Figtree, "Segoe UI", system-ui, sans-serif;
}
:root, [data-theme="light"] {
  color-scheme: light;
  --brand-500: #007cdc;
  --brand-600: #0068b8;
  --brand-700: #00508f;
  --brand-900: #0a2540;
  --brand-100: #e1effb;
  --brand-50: #f2f8fe;
  --aqua-300: #7fe0fb;
  --aqua-100: #d4f6fe;
  --apricot-400: #f4a27a;
  --apricot-100: #fde9dd;
  --apricot-700: #a3471b;
  --surface: #e6ebf2;
  --background: var(--surface);
  --blue-basic: var(--brand-500);
  --surface-raised: #eef3f9;
  --surface-sunken: #e1e8f1;
  --neu-light: #ffffff;
  --neu-dark: #c3cfdc;
  --glass: rgba(255, 255, 255, 0.55);
  --glass-edge: rgba(255, 255, 255, 0.7);
  --ink: #1d2a39;
  --ink-logo: #333333;
  --muted: #536476;
  --line: #cdd8e4;
  --on-brand: #ffffff;
  --success: #13795b;
  --warning: #7f5700;
  --danger: #b42318;
  --focus: #0068b8;
  --neu-raised: 9px 9px 20px #c3cfdc, -9px -9px 20px #ffffff;
  --neu-raised-s: 4px 4px 10px #c3cfdc, -4px -4px 10px #ffffff;
  --neu-inset: inset 4px 4px 10px #c3cfdc, inset -4px -4px 10px #ffffff;
  --glass-shadow: 0 20px 50px rgba(10, 37, 64, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.75);
  --blockshadow: 0 3px 3px 1px rgba(0, 0, 0, 0.2);
  --brand-glow: 0 10px 24px rgba(0, 104, 184, 0.35);
}
[data-theme="dark"] {
  color-scheme: dark;
  --brand-500: #3a9bea;
  --brand-600: #5aaef0;
  --brand-700: #8cc8f5;
  --brand-900: #dcecfa;
  --brand-100: #13304d;
  --brand-50: #0f2236;
  --aqua-300: #4fd0f2;
  --aqua-100: #0f3a47;
  --apricot-400: #f4a27a;
  --apricot-100: #3a2418;
  --apricot-700: #f7b896;
  --surface: #18222e;
  --background: var(--surface);
  --blue-basic: var(--brand-500);
  --surface-raised: #1c2734;
  --surface-sunken: #141c26;
  --neu-light: #24323f;
  --neu-dark: #0c1219;
  --glass: rgba(28, 39, 52, 0.58);
  --glass-edge: rgba(255, 255, 255, 0.12);
  --ink: #e8eef5;
  --ink-logo: #f2f2f2;
  --muted: #9fb2c5;
  --line: #2c3a4a;
  --on-brand: #04121f;
  --success: #4cc79a;
  --warning: #f0c050;
  --danger: #ff8a7a;
  --focus: #7fe0fb;
  --neu-raised: 9px 9px 20px #0c1219, -9px -9px 20px #24323f;
  --neu-raised-s: 4px 4px 10px #0c1219, -4px -4px 10px #24323f;
  --neu-inset: inset 4px 4px 10px #0c1219, inset -4px -4px 10px #24323f;
  --glass-shadow: 0 20px 50px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.10);
  --blockshadow: 0 3px 3px 1px rgba(0, 0, 0, 0.5);
  --brand-glow: 0 10px 24px rgba(58, 155, 234, 0.30);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --brand-500: #3a9bea;
    --brand-600: #5aaef0;
    --brand-700: #8cc8f5;
    --brand-900: #dcecfa;
    --brand-100: #13304d;
    --brand-50: #0f2236;
    --aqua-300: #4fd0f2;
    --aqua-100: #0f3a47;
    --apricot-400: #f4a27a;
    --apricot-100: #3a2418;
    --apricot-700: #f7b896;
    --surface: #18222e;
    --background: var(--surface);
    --blue-basic: var(--brand-500);
    --surface-raised: #1c2734;
    --surface-sunken: #141c26;
    --neu-light: #24323f;
    --neu-dark: #0c1219;
    --glass: rgba(28, 39, 52, 0.58);
    --glass-edge: rgba(255, 255, 255, 0.12);
    --ink: #e8eef5;
    --ink-logo: #f2f2f2;
    --muted: #9fb2c5;
    --line: #2c3a4a;
    --on-brand: #04121f;
    --success: #4cc79a;
    --warning: #f0c050;
    --danger: #ff8a7a;
    --focus: #7fe0fb;
    --neu-raised: 9px 9px 20px #0c1219, -9px -9px 20px #24323f;
    --neu-raised-s: 4px 4px 10px #0c1219, -4px -4px 10px #24323f;
    --neu-inset: inset 4px 4px 10px #0c1219, inset -4px -4px 10px #24323f;
    --glass-shadow: 0 20px 50px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.10);
    --blockshadow: 0 3px 3px 1px rgba(0, 0, 0, 0.5);
    --brand-glow: 0 10px 24px rgba(58, 155, 234, 0.30);
  }
}
.display-xl{font-family:var(--font-display);font-size:64px;line-height:68px;font-weight:600;letter-spacing:-0.02em}
.display-l{font-family:var(--font-display);font-size:44px;line-height:50px;font-weight:600;letter-spacing:-0.015em}
.heading-1{font-family:var(--font-display);font-size:32px;line-height:38px;font-weight:600}
.heading-2{font-family:var(--font-display);font-size:24px;line-height:30px;font-weight:500}
.heading-3{font-family:var(--font-display);font-size:18px;line-height:24px;font-weight:500}
.body-l{font-family:var(--font-sans);font-size:18px;line-height:28px;font-weight:400}
.body{font-family:var(--font-sans);font-size:16px;line-height:24px;font-weight:400}
.body-s{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:400}
.label{font-family:var(--font-sans);font-size:13px;line-height:16px;font-weight:600;letter-spacing:0.02em}
.button{font-family:var(--font-sans);font-size:15px;line-height:20px;font-weight:600}
.numeric{font-family:var(--font-display);font-size:28px;line-height:32px;font-weight:600}
