/* AKALAKA shared day/night theme (2026-10-01, owner: "during the day no part of the app is displayed
   with dark colors"). ONE stylesheet for every sub-page (Capture, EHR, Visit, Workflow); it used to be
   pasted into each page, and only Capture's copy ever got a day mode, so EHR/Visit/Workflow stayed
   dark all day. The mode is chosen by /static/akalaka_theme.js (same akalaka_theme_mode setting as the
   Notes Studio page). NIGHT = :root tokens below; DAY = :root[data-theme="day"] overrides. */
:root{--ls-bg:#0e0b16;--ls-panel:#171320;--ls-panel2:#1e1830;--ls-ink:#ece8f6;--ls-muted:#9990b2;--ls-line:#2b2442;--ls-lilac:#a479ff;--ls-deep:#7c5cff;--ls-strike:#ff4d6d;--ls-gold:#ecc06c;--ls-ok:#54d6a0;--ls-brand:linear-gradient(135deg,#a479ff,#7c5cff);--ls-glow:0 0 16px rgba(124,92,255,.4);}
:root{--ls-topbar:rgba(14,11,22,.95);--ls-wash:255,255,255;--ls-code:#08060f;color-scheme:dark;}
/* DAY (2026-09-15, owner): same colour codes as the Notes Studio page's day mode — white panels, black text —
   chosen by the same akalaka_theme_mode setting. Nothing below this line knows which mode is on. */
:root[data-theme="day"]{--ls-bg:#f3f1f8;--ls-panel:#ffffff;--ls-panel2:#ebe8f3;--ls-ink:#1d1730;--ls-muted:#6b6484;--ls-line:#d9d4e6;--ls-lilac:#6d4de6;--ls-deep:#6d4de6;--ls-glow:0 0 14px rgba(109,77,230,.22);--ls-topbar:rgba(248,247,252,.92);--ls-wash:0,0,0;--ls-code:#ebe8f3;color-scheme:light;}
:root[data-theme="day"] body{background:radial-gradient(1000px 520px at 85% -12%,rgba(124,92,255,.10),transparent 60%),var(--ls-bg)!important;}
:root[data-theme="day"] header{color:var(--ls-ink);} :root[data-theme="day"] header p{color:var(--ls-muted);}
:root[data-theme="day"] .nav a{color:var(--ls-muted);background:rgba(0,0,0,.04);border-color:var(--ls-line);} :root[data-theme="day"] .nav a.on{background:var(--ls-panel);color:var(--ls-deep);}
body{background:radial-gradient(1000px 520px at 85% -12%,rgba(124,92,255,.14),transparent 60%),var(--ls-bg)!important;color:var(--ls-ink)!important;}
h1,h2,h3,h4{color:var(--ls-ink)!important;} .card h2,.panel h2{color:var(--ls-muted)!important;background:rgba(0,0,0,.15)!important;border-color:var(--ls-line)!important;}
label{color:var(--ls-lilac)!important;} .mini,.hint,.sub,.dump-label{color:var(--ls-muted)!important;}
.card,.panel,.bucket,.box,.stage,.step,.conn,.dictation-controls,.dump{background:var(--ls-panel)!important;border-color:var(--ls-line)!important;color:var(--ls-ink)!important;}
/* 2026-09-14 (owner): .dump was missing from the dark-panel list above, so every briefing/mailbox/dump box stayed WHITE (--panel:#fff) while the theme painted its text near-white (--ls-ink) and its labels/hints lilac/grey — unreadable. Same panel as everything else now, and the remaining light-on-dark colours are held at >= 4.5:1 (briefing_ui_drive.py contrast audit). */
.item{border-color:var(--ls-line)!important;} .item pre{background:var(--ls-code)!important;color:var(--ls-ink)!important;}
.itext{background:var(--ls-code)!important;border-color:var(--ls-line)!important;color:var(--ls-ink)!important;}
.mini,.hint,.sub,.dump-label,.clear,.panel .x,.card h2,.panel h2,#whoami{color:var(--ls-muted)!important;}
:root:not([data-theme="day"]) .mini,:root:not([data-theme="day"]) .hint,:root:not([data-theme="day"]) .sub,:root:not([data-theme="day"]) .clear,:root:not([data-theme="day"]) .panel .x,:root:not([data-theme="day"]) .panel h2,:root:not([data-theme="day"]) #whoami{color:#b9b1d1!important;}
/* pills: the Studio page's .pill recipe (panel2 background, accent text, border) */
.bucket .ct{color:var(--ls-deep)!important;} .kv{background:var(--ls-panel2)!important;color:var(--ls-deep)!important;border:1px solid var(--ls-line);}
:root:not([data-theme="day"]) .bucket .ct,:root:not([data-theme="day"]) .kv{color:#5eead4!important;} :root:not([data-theme="day"]) .kv{background:#0f2530!important;}
/* links + the "✓ captured" flash: accent in day (the Studio day accent), teal/green in night as before */
.plink{color:var(--ls-deep)!important;} .flash{color:var(--ls-deep)!important;}
:root:not([data-theme="day"]) .plink{color:#5eead4!important;} :root:not([data-theme="day"]) .flash{color:var(--ls-ok)!important;}
/* error text: the Studio page's day red (#dc2626, 4.5:1 on white) by day, the strike red by night */
.errtxt{color:#dc2626;} :root:not([data-theme="day"]) .errtxt{color:var(--ls-strike);}
input,select,textarea,.pin,.dump-textarea,.transcript-box{background:var(--ls-panel2)!important;border-color:var(--ls-line)!important;color:var(--ls-ink)!important;}
input:focus,select:focus,textarea:focus{border-color:var(--ls-lilac)!important;box-shadow:var(--ls-glow)!important;outline:none;}
.btn,.btn-strike{background:var(--ls-brand)!important;color:#fff!important;border:none!important;box-shadow:var(--ls-glow)!important;}
.btn.ghost{background:transparent!important;border:1px solid var(--ls-line)!important;color:var(--ls-ink)!important;box-shadow:none!important;}
.btn.warn{background:var(--ls-gold)!important;color:#111!important;} .btn.red,.btn.danger,.btn.alt{background:var(--ls-strike)!important;color:#fff!important;}
.out,.log,.chat,.logrow,.transcript-box{background:var(--ls-code)!important;border-color:var(--ls-line)!important;color:var(--ls-muted)!important;}
.alert.acute{background:rgba(255,77,109,.14)!important;border-color:var(--ls-strike)!important;color:#ffb3c0!important;} .alert.high{background:rgba(236,192,108,.14)!important;border-color:var(--ls-gold)!important;color:#f3d79a!important;}
.spark i{background:var(--ls-lilac)!important;} .step.done .n{background:var(--ls-ok)!important;} .step.cur .n{background:var(--ls-brand)!important;color:#fff!important;} .dot.live{background:var(--ls-ok)!important;} .dot.stub{background:var(--ls-gold)!important;}
.ls-nav{display:flex;align-items:center;gap:14px;padding:9px 18px;border-bottom:1px solid var(--ls-line);background:var(--ls-topbar);flex-wrap:wrap;position:sticky;top:0;z-index:900;}
.ls-nav .bm{width:28px;height:28px;border-radius:8px;background:var(--ls-brand);display:grid;place-items:center;font-size:15px;box-shadow:var(--ls-glow);}
.ls-nav .bn{font-weight:800;font-size:14px;letter-spacing:-.02em;line-height:1.05;color:var(--ls-ink);} .ls-nav .bn small{display:block;font-weight:500;font-size:9.5px;color:var(--ls-muted);}
.ls-nav nav{display:flex;gap:3px;flex-wrap:wrap;} .ls-nav nav a{color:var(--ls-muted);text-decoration:none;font-size:12px;font-weight:650;padding:6px 10px;border-radius:8px;}
.ls-nav nav a:hover{color:var(--ls-ink);background:rgba(var(--ls-wash),.05);} .ls-nav nav a.on{background:var(--ls-brand);color:#fff;box-shadow:var(--ls-glow);}
/* shared nav dropdowns (2026-08-29), token-based so they follow the theme */
.ls-nav nav{align-items:center}.navdd{position:relative;display:inline-block}.navdd>a{display:inline-block}.navdd-menu{display:none;position:absolute;top:100%;left:0;min-width:200px;padding:6px;background:var(--ls-panel);border:1px solid var(--ls-line);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.5);z-index:950}.navdd-menu a{display:block;padding:8px 10px;border-radius:7px;font-size:12.5px;color:var(--ls-ink)!important;background:none!important;box-shadow:none!important}.navdd-menu a small{display:block;font-weight:500;font-size:10.5px;color:var(--ls-muted)}.navdd-menu a:hover{background:rgba(var(--ls-wash),.06)!important}.navdd:hover .navdd-menu,.navdd:focus-within .navdd-menu{display:block}.navdd::after{content:"";position:absolute;left:0;right:0;top:100%;height:8px}
:root[data-theme="day"] .navdd-menu{box-shadow:0 8px 24px rgba(40,30,80,.14)}
/* the day/night button the theme script adds to every sub-page nav */
#themeToggle{margin-left:auto;background:transparent;border:1px solid var(--ls-line);border-radius:8px;padding:5px 9px;cursor:pointer;font-size:14px;color:var(--ls-ink)}
/* page parts that were hard-coded dark (EHR/Visit/Workflow toasts, PIN modal, legacy header) */
:root[data-theme="day"] .toast{background:#ffffff!important;color:var(--ls-ink)!important;border:1px solid var(--ls-line);box-shadow:0 8px 24px rgba(40,30,80,.14)!important}
:root[data-theme="day"] .modal{background:rgba(243,241,248,.86)!important}
:root[data-theme="day"] .modal .box{background:var(--ls-panel)!important;color:var(--ls-ink)!important;border:1px solid var(--ls-line)}
:root[data-theme="day"] .hbtn{background:rgba(0,0,0,.04)!important;border-color:var(--ls-line)!important;color:var(--ls-ink)!important}
:root[data-theme="day"] .sub,:root[data-theme="day"] header p{color:var(--ls-muted)!important}
/* day: card/panel title bands were a night-only 15% black wash (a grey bar by day); waiting workflow
   step numbers were white on light grey */
:root[data-theme="day"] .card h2,:root[data-theme="day"] .panel h2{background:rgba(0,0,0,.03)!important}
:root[data-theme="day"] .step:not(.done):not(.cur) .n{color:var(--ls-ink)!important}
