/* ============================================================
   sirucka.cz — Design tokens (color, type, spacing, shadow)
   ============================================================ */

:root {
  /* BACKGROUNDS */
  --bg-primary:        #0A1020;
  --bg-secondary:      #10182B;
  --bg-tertiary:       #161F38;
  --bg-elevated:       #1B2542;

  /* GLASS */
  --glass-fill:        rgba(255, 255, 255, 0.06);
  --glass-fill-strong: rgba(255, 255, 255, 0.09);
  --glass-fill-faint:  rgba(255, 255, 255, 0.04);

  /* TEXT */
  --text-primary:      #F3F6FF;
  --text-secondary:    #A9B4D0;
  --text-tertiary:     #6B779A;
  --text-on-accent:    #FFFFFF;

  /* ACCENTS */
  --accent-pink:       #C2477F;
  --accent-purple:     #6D4FD0;
  --accent-glow:       #9B7BE0;
  --accent-pink-soft:  rgba(194, 71, 127, 0.15);
  --accent-purple-soft:rgba(109, 79, 208, 0.16);
  --accent-gradient:   linear-gradient(120deg, #C2477F 0%, #6D4FD0 100%);
  --accent-gradient-soft: linear-gradient(120deg, rgba(194,71,127,0.18), rgba(109,79,208,0.18));

  /* BORDERS */
  --border-subtle:     rgba(255, 255, 255, 0.08);
  --border-default:    rgba(255, 255, 255, 0.12);
  --border-strong:     rgba(255, 255, 255, 0.20);
  --border-accent:     rgba(155, 123, 224, 0.45);

  /* STATUS */
  --ok:                #4ADE9E;
  --warn:              #FFC061;
  --off:               #ED6A5E;   /* presence: offline. same red as .term-dot.r */
  --info:              #6FA8FF;

  /* TYPE */
  --font-sans:    'Source Sans 3', 'Segoe UI', system-ui, -apple-system, sans-serif;
  --font-display: 'Source Sans 3', 'Segoe UI', system-ui, sans-serif;
  --font-mono:    'JetBrains Mono', 'SFMono-Regular', ui-monospace, 'Cascadia Code', monospace;

  --fs-display:  clamp(2.75rem, 5.5vw, 4.25rem);
  --fs-h1:       clamp(2.1rem, 3.6vw, 3rem);
  --fs-h2:       clamp(1.6rem, 2.4vw, 2.1rem);
  --fs-h3:       1.375rem;
  --fs-h4:       1.125rem;
  --fs-body-lg:  1.1875rem;
  --fs-body:     1.0625rem;
  --fs-small:    0.9375rem;
  --fs-caption:  0.8125rem;
  --fs-mono:     0.875rem;

  --lh-tight:    1.08;
  --lh-snug:     1.28;
  --lh-body:     1.65;

  --tracking-tight:   -0.02em;
  --tracking-normal:   0;
  --tracking-wide:     0.16em;

  --weight-light:   300;
  --weight-regular: 400;
  --weight-medium:  500;
  --weight-semibold:600;
  --weight-bold:    700;

  /* RADII / SHADOW / BLUR */
  --radius-sm:   3px;
  --radius-md:   6px;
  --radius-lg:   10px;
  --radius-xl:   13px;
  --radius-pill: 999px;
  --radius-btn:  8px 2px 2px 2px;

  --blur-glass:  18px;
  --blur-soft:   60px;

  --shadow-card:    0 18px 48px -24px rgba(0, 0, 0, 0.7);
  --shadow-raised:  0 28px 70px -28px rgba(0, 0, 0, 0.78);
  --shadow-inset:   inset 0 1px 0 0 rgba(255, 255, 255, 0.06);
  --glow-pink:      0 0 0 1px rgba(194, 71, 127, 0.38), 0 12px 40px -10px rgba(194, 71, 127, 0.38);
  --glow-purple:    0 0 0 1px rgba(109, 79, 208, 0.40), 0 12px 40px -10px rgba(109, 79, 208, 0.42);
  --focus-ring:     0 0 0 3px rgba(155, 123, 224, 0.5);

  /* SPACING */
  --sp-1: 4px;   --sp-2: 8px;   --sp-3: 12px;  --sp-4: 16px;
  --sp-5: 24px;  --sp-6: 32px;  --sp-7: 48px;  --sp-8: 64px;
  --sp-9: 96px;  --sp-10: 128px;

  --container:        1280px;
  --container-narrow: 760px;

  /* focal radial fill */
  --fill-focal:       radial-gradient(120% 140% at 18% 0%, #C2477F 0%, #8341C9 42%, #5B3FBF 100%);
  --fill-focal-hover: radial-gradient(120% 140% at 18% 0%, #D2528C 0%, #8E49D6 42%, #6446CE 100%);
}

/* ============================================================
   ATMOSPHERE — navy base + scroll-driven color grading
   Each section sets [data-theme]; the bokeh + code-texture hues
   cross-fade between themes. Navy base never leaves. Palette-only.
   ============================================================ */
:root{
  --g1:#6D4FD0; --g2:#C2477F; --g3:#9B7BE0;   /* bokeh hues */
  --grade: rgba(109,79,208,.10);              /* faint full-bleed grade */
  --code-rgb: 155,123,224;                    /* code-texture tint */
  --gt: 0 0;                                  /* grade light-source offset (translate) */
  --b1t: 0 0; --b2t: 0 0; --b3t: 0 0;         /* per-theme bokeh drift offsets */
}
/* per-section temperatures + light placement — strictly palette tokens */
[data-theme="hero"]    {--g1:#6D4FD0;--g2:#C2477F;--g3:#9B7BE0;--grade:rgba(109,79,208,.12);--code-rgb:155,123,224;--gt:20vw -9vh;  --b1t:0 0;        --b2t:0 0;        --b3t:0 0}
[data-theme="about"]   {--g1:#7C5CE0;--g2:#9B7BE0;--g3:#6D4FD0;--grade:rgba(155,123,224,.13);--code-rgb:169,180,208;--gt:-24vw -5vh; --b1t:-70px 30px; --b2t:60px -12px; --b3t:-30px 6px}
[data-theme="focus"]   {--g1:#6D4FD0;--g2:#8341C9;--g3:#9B7BE0;--grade:rgba(109,79,208,.15);--code-rgb:155,123,224;--gt:26vw 8vh;   --b1t:60px 14px;  --b2t:-40px 22px; --b3t:40px -22px}
[data-theme="projects"]{--g1:#3E63C8;--g2:#6FA8FF;--g3:#6D4FD0;--grade:rgba(111,168,255,.14);--code-rgb:111,168,255;--gt:-28vw 2vh;  --b1t:-120px 44px;--b2t:90px 12px;  --b3t:-60px 12px}
[data-theme="notes"]   {--g1:#C2477F;--g2:#9B7BE0;--g3:#6D4FD0;--grade:rgba(194,71,127,.13);--code-rgb:194,140,170;--gt:18vw 28vh;  --b1t:20px 90px;  --b2t:-50px 32px; --b3t:50px -12px}
[data-theme="now"]     {--g1:#6D4FD0;--g2:#C2477F;--g3:#9B7BE0;--grade:rgba(109,79,208,.12);--code-rgb:155,123,224;--gt:-6vw -12vh; --b1t:-30px 12px; --b2t:30px 0;     --b3t:0 30px}
[data-theme="status"]  {--g1:#2FA577;--g2:#4ADE9E;--g3:#3E8F9B;--grade:rgba(74,222,158,.13);--code-rgb:74,222,158;--gt:-26vw 32vh; --b1t:-90px 150px;--b2t:60px 100px; --b3t:6px -80px}
[data-theme="contact"] {--g1:#6D4FD0;--g2:#C2477F;--g3:#9B7BE0;--grade:rgba(194,71,127,.14);--code-rgb:155,123,224;--gt:22vw 12vh;  --b1t:0 30px;     --b2t:0 -12px;    --b3t:30px 0}
