/* ============================================================================
   EVE - JAAETTU TEEMATIEDOSTO (kerrokset 1-2)
   Passi 2a / 2026-09-02 - yksi token- ja teemalahde KAIKILLE sivuille.
   ----------------------------------------------------------------------------
   Saannot (CSS-refaktorointispeksi Passi 1.5 REV 2, kohta 11):
   - Kaikki 7 sivua (index, whisper, help, plans, admin, library-admin,
     translations) linkittavat taman ENSIMMaisena tyyliviittauksena.
   - Sivun <head>:ssa on teema-boot-skripti ENNEN tata linkkia
     (localStorage eveTheme -> <html data-theme>, ei teemavilahdysta).
   - Uusi teema = yksi html[data-theme="x"] -lohko TAHAN tiedostoon
     (+ WCAG 2.2 AA -kontrastitarkistus + visuaalinen kierros 7 sivulla).
   - Teema-id:t pysyvat: "playfull" (oletus) ja "formal" - ei uudelleennimeamista.
   - Editorin teemaohitteet (#startScreen ym.) asuvat tassa, koska KAIKKI
     teemamarittelyt pidetaan yhdessa paikassa; ne eivat osu sivusivuihin.
   - Perustypografia (kerroksen 1 taydennys) tulee Passissa 2b yhdessa
     eve.css-uusikirjoituksen kanssa; tama tiedosto on nyt pelkka
     token+teemalahde. Siihen asti editori kayttaa edelleen eve.css:n
     omaa :root-lohkoa (sama sisalto, ei toiminnallista eroa).
   ============================================================================ */

/* --- Kerros 1: tokenit (Nocturne/gold = playfull-oletus) ---
   Poimittu sanatarkasti eve.css:n paasisan :root-lohkosta (build
   BUGILOKITUS 2026-09-02). Poikkeus: --border ja --text-dim ovat
   cascade-VOITTAJAN arvot (eve.css:n myohempi 2. :root-lohko). */
:root {
    --eve-night-950: #050b13;
    --eve-night-900: #08121f;
    --eve-night-850: #0c1928;
    --eve-night-800: #112238;
    --eve-line: #29405a;
    --eve-line-strong: #496884;
    --eve-gold: #e4b764;
    --eve-gold-bright: #ffd88d;
    --eve-moon: #eef5fb;
    --eve-muted: #b4c2cf;
    --eve-focus: #8ed7ff;
    --eve-ok: #6fcf97;
    --eve-warn: #d8b35c;
    --eve-error: #d96d72;
    --eve-info: #7fa6c4;
    --success: #57c98a;
    --warning: #e5b85c;
    --error: #e07171;
    --accent: #7fa6c4;
    --bg-dark: var(--eve-night-900);
    --bg-darker: var(--eve-night-950);
    --bg-panel: var(--eve-night-850);
    --bg-card: var(--eve-night-800);
    --beige: var(--eve-gold);
    --beige-light: var(--eve-gold-bright);
    --beige-dark: #839db0;
    --text: var(--eve-moon);
    --text-dim: var(--eve-muted);
    --border: var(--eve-line);

    /* Typography scale (6 sizes — replaces 70 ad-hoc values) */
    --eve-fs-xs: 0.75rem;      /* 12px meta, badges, timestamps */
    --eve-fs-sm: 0.82rem;      /* ~13px tabs, secondary buttons */
    --eve-fs-md: 0.88rem;      /* ~14px panel/transcript text */
    --eve-fs-lg: 1.0rem;       /* 16px panel titles, transport */
    --eve-fs-xl: 1.15rem;      /* ~18px modal titles */
    --eve-fs-display: 1.5rem;  /* 24px start screen */
    --eve-lh-tight: 1.25;      /* headings */
    --eve-lh-ui: 1.35;         /* controls */
    --eve-lh-body: 1.5;        /* body text (WCAG 1.4.12) */

    /* Spacing scale (4px base) */
    --eve-space-1: 4px;  --eve-space-2: 8px;  --eve-space-3: 12px;
    --eve-space-4: 16px; --eve-space-6: 24px;

    /* Heights */
    --eve-header-h: 40px;      /* ALL panel headers + transport bar */
    --eve-touch-min: 24px;     /* WCAG 2.2 target minimum */
    --cand-w: 320px;           /* candidates column width — JS overrides inline */

    /* Compatibility tokens referenced by existing rules */
    --surface-dim: #060b14;
    --surface-bright: #243347;
    --surface-container-lowest: #050912;
    --surface-container-low: #0b1421;
    --surface-container: #101b2a;
    --surface-container-high: #172438;
    --surface-container-highest: #213149;
    --border-subtle: rgba(185, 205, 220, 0.12);
    --eve-gold-soft: #e4c66f;
    --eve-gold-muted: rgba(212, 175, 55, 0.42);
    --eve-moonlight: #b9cddc;
    --eve-frost: #e8eef3;
    --eve-mist: #91a0ae;
    --eve-radius-sm: 6px;
    --eve-radius-md: 8px;
    --eve-radius-lg: 10px;
    --eve-shadow-soft: 0 10px 30px rgba(0, 0, 0, 0.28);
    --eve-shadow-gold: 0 0 0 1px rgba(212, 175, 55, 0.24),
                       0 0 18px rgba(212, 175, 55, 0.08);
    --eve-icon-color: var(--eve-moonlight);
    --eve-icon-accent: var(--eve-gold);
    --eve-ease: cubic-bezier(.2,.75,.25,1);
    --eve-fast: 120ms;
    --eve-normal: 170ms;
    --eve-panel: #0b1421;
    --eve-panel-soft: #0e1928;
    --eve-control: #111f32;
    --eve-line-hover: rgba(185,205,220,.30);
    --eve-soft-line: rgba(185,205,220,.08);
    --eve-soft-line-hover: rgba(185,205,220,.16);
    --eve-icon-size-header: 23px;
    --eve-icon-size-toolbar: 22px;
    --eve-icon-size-primary: 24px;
    --eve-icon-size-panel: 25px;
    --eve-icon-moonlight: #c9d8e1;
    --eve-icon-muted: #9fb2c0;
    --eve-icon-gold: #e1c46b;
}

/* Korkeampi kontrasti (WCAG: honoroidaan kayttajan OS-asetus).
   Sanatarkasti sama kuin eve.css:n sisainen @media (prefers-contrast:
   more) -saanto — vaikuttaa vain, kun kayttaja on pyytanyt korkeampaa
   kontrastia jarjestelmasta. */
@media (prefers-contrast: more) {
    :root {
        --border: #526b84;
        --text-dim: #b1bec9;
    }
}

/* --- Kerros 2: teemat ---
   playfull = oletus: tokenit ylla + kuvamateriaali perussaannoissa.
   formal = vaihtoehto: rauhallisempi kuvamateriaali (taustat + logo).
   Siirretty sanatarkasti eve.css:n TEEMAT-osiosta (Passi 2b poistaa
   kopion eve.css:sta, jolloin tama jaa ainoaksi lahteeksi). */

/* ============================================================ TEEMAT (2026-09-01) — kaksi nimettya teemaa: PLAYFULL (oletus, alkuperainen "Eve"-maisema + script-logo) ja FORMAL (vaihtoehtoinen, synnytetyt kulta/navy-assetit). Teema valitaan aloitussivun Theme-painikkeesta ja tallentuu localStorageen (eveTheme); <html data-theme="formal"> ohjaa nama. Ei uusia elementteja — pelkat taustakuva-ohitukset. */
/* 2026-09-03 (kayttajan pyynto): formal-teeman editoriheaderin
   oma logovariantti poistettu — headeri kayttaa virallista
   Eve-logoa (eve-logo-header.png) aivan kuten playfull-teema. */

html[data-theme="formal"] #startScreen {
    background: linear-gradient(180deg, rgba(3, 8, 16, .08) 0%, rgba(3, 8, 16, .20) 56%, rgba(3, 8, 16, .68) 100%),
        url("themes/formal/eve-landing-bg-4k.webp") center / cover no-repeat,
        #050912;
}

html[data-theme="formal"] #startScreen.eve-landing-soft {
    background: linear-gradient(180deg, rgba(18, 31, 48, .02) 0%, rgba(10, 22, 37, .10) 56%, rgba(3, 8, 16, .56) 100%),
        url("themes/formal/eve-landing-bg-4k.webp") center / cover no-repeat,
        #08121f;
}

/* 2026-09-04 (kayttajan pyynto): FORMAL-landingin keskikohta — playfull-
   taustassa Eve-script-logo + "EASY VIDEO EDITOR" -alaotsikko on poltettuna
   taustakuvaan, mutta formal-taustasta ne puuttuvat. Nyt ne piirretaan
   start-kortin h2-varaukseen: logo taustakuvana (sama virallinen
   eve-logo-header.png kuin playfull/app-header), alaotsikko ::after-
   pseudona (perussaannossa content:none — otetaan kayttoon vain formalissa).
   Kulmalogo-pseudoa EI ole enaa missaan teemassa (poistettu 2026-09-03:n
   buildeissa; tama tiedosto korvaa mahdollisen vanhentuneen valimuistin). */
html[data-theme="formal"] #startScreen .start-card h2 {
    background: url("eve-logo-header.png") no-repeat center 34% / min(72%, 330px) auto;
}

html[data-theme="formal"] #startScreen .start-card h2::after {
    content: "EASY VIDEO EDITOR";
    top: 62%;
    color: #e3c17d;
}

html[data-theme="formal"] #startScreen .start-cta button::before,
    html[data-theme="formal"] #startScreen .start-card > div:last-child .auth-dismiss::before {
    background-image: url("themes/formal/new-project.webp");
}

html[data-theme="formal"] #startScreen .start-cta .start-secondary::before {
    background-image: url("themes/formal/old-projects.webp");
}

html[data-theme="formal"] #startScreen .start-card > div:last-child .auth-dismiss::before {
    background-image: url("themes/formal/continue-editor.webp");
}

html[data-theme="formal"] #npLauncher {
    background: linear-gradient(rgba(2,7,14,.10), rgba(2,7,14,.18)),
      url("themes/formal/eve-night-coast.jpg") center center / cover no-repeat,
      var(--npd-night-0);
}

/* 2026-09-03 (kayttajan pyynto): aloitussivu palautettu entiselleen —
   vasemman ylakulman logo-pseudo poistettu. Logo kuuluu editorisivun
   headeriin (joka nayttaa nyt virallisen logon molemmissa teemoissa). */
/* Teemapainikkeen nimilaput poistettu 2026-09-03: valitsin on pelkka
   sivellinkuvake ja teemat nakyvat valikossa (aktivinen korostettuna). */
