/* GAME//DOSSIER 0.4.12 — KINO//DOSSIER identity layer
   Transposes the stable visual grammar of KINO//DOSSIER 0.9.73 without
   touching GAME's data/navigation bundles. Comfort keeps GAME ergonomics;
   Terminal uses KINO's authored green/cyan hierarchy. */

:root{
  --ui-accent-dark:#b7ff2a;
  --ui-accent-dark-2:#88cf12;
  --ui-accent-light-text:#526d0a;
  --ui-accent-light-text-2:#456000;
  --ui-accent-fill:#b7ff2a;
  --ui-accent-fill-2:#98df18;
}
html[data-accent="cyan"]{
  --ui-accent-dark:#43e6ff;--ui-accent-dark-2:#14b8d0;
  --ui-accent-light-text:#006b78;--ui-accent-light-text-2:#00545f;
  --ui-accent-fill:#43e6ff;--ui-accent-fill-2:#1bc4dc;
}
html[data-accent="amber"]{
  --ui-accent-dark:#ffc14a;--ui-accent-dark-2:#dd9518;
  --ui-accent-light-text:#805800;--ui-accent-light-text-2:#684600;
  --ui-accent-fill:#ffc14a;--ui-accent-fill-2:#e5a126;
}
html[data-accent="red"]{
  --ui-accent-dark:#ff6b63;--ui-accent-dark-2:#d9433b;
  --ui-accent-light-text:#982d28;--ui-accent-light-text-2:#78211e;
  --ui-accent-fill:#ff6b63;--ui-accent-fill-2:#e34a43;
}
html[data-accent="blue"]{
  --ui-accent-dark:#66aaff;--ui-accent-dark-2:#397fd6;
  --ui-accent-light-text:#1f5f9e;--ui-accent-light-text-2:#174b7d;
  --ui-accent-fill:#66aaff;--ui-accent-fill-2:#4389df;
}
html[data-accent="purple"]{
  --ui-accent-dark:#a985ff;--ui-accent-dark-2:#7a5bd6;
  --ui-accent-light-text:#6240a8;--ui-accent-light-text-2:#4d3188;
  --ui-accent-fill:#9b7cff;--ui-accent-fill-2:#8060e8;
}

/* KINO Comfort neutrals + selectable accent. */
html[data-interface="comfort"][data-theme="light"]{
  --bg:#f2f1ee;--bg2:#e8e7e3;
  --surface:#fff;--surface2:#f8f7f4;--surface-raised:#fff;
  --ink:#151515;--muted:#6d6b67;--dim:#87847f;
  --line:#c9c6bf;--line2:#9c9891;
  --accent:var(--ui-accent-light-text);--accent-soft:color-mix(in srgb,var(--ui-accent-fill) 13%,#fff);
  --action:var(--ui-accent-fill);--action-ink:#071004;
  --shadow:0 12px 34px rgba(24,24,22,.08);
  color-scheme:light;
}
html[data-interface="comfort"][data-theme="dark"]{
  --bg:#101113;--bg2:#0b0c0e;
  --surface:#18191c;--surface2:#1f2024;--surface-raised:#1c1d20;
  --ink:#f2f2f0;--muted:#a7a5a0;--dim:#777873;
  --line:#3a3b40;--line2:#64666c;
  --accent:var(--ui-accent-dark);--accent-soft:color-mix(in srgb,var(--ui-accent-dark) 11%,#18191c);
  --action:var(--ui-accent-dark);--action-ink:#071004;
  --shadow:0 14px 38px rgba(0,0,0,.24);
  color-scheme:dark;
}
html[data-interface="comfort"] .brand strong,
html[data-interface="comfort"] .home-kicker span,
html[data-interface="comfort"] .bottom-nav>button.active,
html[data-interface="comfort"] .catalog-credit a{color:var(--accent)}
html[data-interface="comfort"] .add-nav>span{background:var(--action);color:var(--action-ink)}
html[data-interface="comfort"] .status-selector>button.active>span,
html[data-interface="comfort"] .platform-selector button.active{background:var(--action);border-color:var(--action);color:var(--action-ink)}

/* Identity controls injected into Menu. */
.gd-identity-interface-section,.gd-identity-accent-section{position:relative}
.gd-identity-interface-note,.gd-identity-accent-note{margin:9px 2px 0;color:var(--muted);font-size:9.5px;line-height:1.45}
.gd-accent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.gd-accent-choice{min-height:54px;border:1px solid var(--line);background:var(--surface);border-radius:13px;display:grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:8px;padding:8px 9px;text-align:left}
.gd-accent-choice.active{border-color:var(--accent);background:var(--accent-soft)}
.gd-accent-choice .gd-accent-swatch{width:12px;height:12px;border-radius:50%;background:var(--swatch);box-shadow:0 0 0 3px color-mix(in srgb,var(--swatch) 16%,transparent)}
.gd-accent-choice strong{font-size:9.5px;line-height:1.15}.gd-accent-choice small{display:block;margin-top:3px;color:var(--muted);font-size:7.5px;line-height:1.2}
.gd-accent-choice[data-accent-choice="phosphor"]{--swatch:#b7ff2a}
.gd-accent-choice[data-accent-choice="cyan"]{--swatch:#43e6ff}
.gd-accent-choice[data-accent-choice="amber"]{--swatch:#ffc14a}
.gd-accent-choice[data-accent-choice="red"]{--swatch:#ff6b63}
.gd-accent-choice[data-accent-choice="blue"]{--swatch:#66aaff}
.gd-accent-choice[data-accent-choice="purple"]{--swatch:#9b7cff}

/* ===== KINO TERMINAL ===== */
html[data-interface="terminal"]{
  --bg:#010301;--bg2:#010301;
  --surface:#040804;--surface2:#071007;--surface-raised:#040804;
  --ink:#baff7a;--muted:#7da56c;--dim:#527048;
  --line:#244024;--line2:#4d7d3f;
  --accent:#9cff57;--accent-soft:#0b1c08;
  --action:#9cff57;--action-ink:#041004;
  --danger:#ff786d;
  --shadow:none;
  --term-cyan:#7fe5ff;--term-cyan-2:#53bfd8;--term-cyan-soft:rgba(127,229,255,.12);
  --terminal-faint:rgba(156,255,87,.08);
  color-scheme:dark;
}
html[data-interface="terminal"],html[data-interface="terminal"] body,
html[data-interface="terminal"] .app-shell,html[data-interface="terminal"] .app-frame,
html[data-interface="terminal"] .screen-stage,html[data-interface="terminal"] .screen-content{
  background:#010301!important;color:var(--ink);
}
html[data-interface="terminal"] body{font-family:var(--font-dossier),monospace!important}
html[data-interface="terminal"] .app-frame{isolation:isolate}
html[data-interface="terminal"] .app-frame::before{
  content:"";position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.18;
  background:repeating-linear-gradient(180deg,rgba(156,255,87,.03) 0 1px,transparent 1px 4px);mix-blend-mode:screen
}
html[data-interface="terminal"] .app-frame::after{
  content:"SYS:LOCAL / MEDIA:GAME / UI:TERMINAL";position:fixed;right:8px;bottom:calc(var(--nav) + env(safe-area-inset-bottom) + 2px);z-index:39;
  color:#4f7145;font:700 6.5px/1 var(--font-dossier),monospace;letter-spacing:.09em;pointer-events:none
}
html[data-interface="terminal"] .app-frame *,html[data-interface="terminal"] .app-frame *::before,html[data-interface="terminal"] .app-frame *::after{box-shadow:none!important;text-shadow:none!important}
html[data-interface="terminal"] .screen-content,html[data-interface="terminal"] .topbar,
html[data-interface="terminal"] .bottom-nav,html[data-interface="terminal"] button,
html[data-interface="terminal"] input,html[data-interface="terminal"] select,
html[data-interface="terminal"] .detail-screen,html[data-interface="terminal"] .gd-steam-overlay,
html[data-interface="terminal"] .gd-libtools-overlay{font-family:var(--font-dossier),monospace!important}

html[data-interface="terminal"] .topbar{
  min-height:64px;padding:calc(8px + env(safe-area-inset-top)) 10px 7px;border-bottom:1px solid var(--line2);background:#020502!important
}
html[data-interface="terminal"] .topbar::after{content:">";position:absolute;left:7px;bottom:-8px;padding:0 3px;background:#010301;color:var(--accent);font:800 10px/1 var(--font-dossier)}
html[data-interface="terminal"] .brand{color:var(--accent)!important;font-size:14px!important;letter-spacing:.045em!important;text-transform:uppercase}
html[data-interface="terminal"] .brand span,html[data-interface="terminal"] .brand strong{color:var(--accent)!important}
html[data-interface="terminal"] .topbar-title small{color:var(--term-cyan)!important;font-size:7.5px;letter-spacing:.13em}
html[data-interface="terminal"] .topbar-title h1{color:var(--accent);font:800 15px/1.1 var(--font-dossier)!important;letter-spacing:.045em!important;text-transform:uppercase}
html[data-interface="terminal"] .icon-button{width:40px;height:40px;border:1px solid var(--line);border-radius:0;background:#020502;color:var(--accent)}
html[data-interface="terminal"] .icon-button:active{border-color:var(--term-cyan);background:var(--term-cyan-soft)}
html[data-interface="terminal"] .icon-button svg{width:17px;height:17px;stroke-width:1.5}
html[data-interface="terminal"] .screen-content{padding:86px 11px calc(var(--nav) + 24px)}

html[data-interface="terminal"] .bottom-nav{
  min-height:72px;padding:4px 4px max(7px,env(safe-area-inset-bottom));align-items:stretch;border-top:1px solid var(--line2);background:#010301!important;gap:0
}
html[data-interface="terminal"] .bottom-nav>button{min-height:54px;border-right:1px solid var(--line);border-radius:0;color:var(--muted);gap:3px;font:700 7.5px/1.1 var(--font-dossier)!important;letter-spacing:.04em;text-transform:uppercase}
html[data-interface="terminal"] .bottom-nav>button:last-child{border-right:0}
html[data-interface="terminal"] .bottom-nav>button.active{color:var(--accent)!important;background:var(--terminal-faint)!important;box-shadow:inset 0 2px 0 var(--term-cyan)!important}
html[data-interface="terminal"] .bottom-nav>button>svg{width:17px;height:17px;stroke-width:1.5}
html[data-interface="terminal"] .bottom-nav .add-nav{transform:none!important;color:var(--term-cyan)!important}
html[data-interface="terminal"] .add-nav>span{width:25px;height:25px;border:1px solid var(--term-cyan);border-radius:0;background:transparent!important;color:var(--term-cyan)!important}
html[data-interface="terminal"] .add-nav>span svg{width:16px}html[data-interface="terminal"] .add-nav small{margin-top:0}

/* terminal primitives: remove Comfort softness, retain poster imagery. */
html[data-interface="terminal"] :is(
  .game-cover,.empty-archive,.featured-game,.status-card,.search-form,.search-intro,.game-result-card,
  .library-cover,.local-archive-card,.theme-control,.menu-list,.menu-list button,.data-safety-card,.backup-intro,
  .data-summary-grid,.data-action-card,.data-feedback,.cloud-status-card,.backup-empty,.backup-history,
  .favorite-action,.status-selector>button,.status-selector>button>span,.platform-selector button,
  .detail-identity>div span,.gd-steam-card,.gd-steam-field input,.gd-steam-row select,.gd-steam-search,
  .gd-steam-primary,.gd-steam-secondary,.gd-steam-summary,.gd-steam-stat,.gd-steam-pill,.gd-steam-row,
  .gd-steam-error,.gd-steam-success-mark,.gd-libtools-sheet,.gd-libtools-field,.gd-libtools-actions button,
  .gd-accent-choice
){border-radius:0!important}
html[data-interface="terminal"] :is(.featured-game,.status-card,.game-result-card,.local-archive-card,.menu-list,.data-safety-card,.backup-intro,.data-summary-grid,.data-action-card,.cloud-status-card,.backup-history,.favorite-action,.status-selector>button,.gd-steam-card,.gd-steam-stat,.gd-steam-row,.gd-libtools-sheet){background:#020502!important;border-color:var(--line)!important}
html[data-interface="terminal"] :is(.status-card-featured,.local-archive-card,.data-safety-card,.backup-intro){border-left:3px solid var(--term-cyan)!important}
html[data-interface="terminal"] .library-cover,html[data-interface="terminal"] .game-cover,html[data-interface="terminal"] .detail-cover{border-radius:0!important;border:1px solid var(--line2)!important}

html[data-interface="terminal"] :is(.home-kicker span,.eyebrow,.menu-section h2,.detail-section>h3,.detail-section-heading h3,.data-section-heading>span,.backup-section h2,.gd-steam-kicker,.gd-steam-mini-title,.gd-libtools-head strong){color:var(--term-cyan)!important}
html[data-interface="terminal"] .menu-section h2{font:800 9px/1.2 var(--font-dossier)!important;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px dashed var(--line);padding-bottom:6px}
html[data-interface="terminal"] .menu-section h2::before{content:"[";color:var(--muted)}
html[data-interface="terminal"] .menu-section h2::after{content:"]";color:var(--muted)}
html[data-interface="terminal"] .home-kicker{font-size:8px;border-bottom:1px dashed var(--line);padding-bottom:7px;margin-bottom:14px}
html[data-interface="terminal"] .detail-section{border-bottom:1px dashed var(--line);padding:20px 0}
html[data-interface="terminal"] .detail-section-heading>strong{color:var(--term-cyan)!important}
html[data-interface="terminal"] .detail-identity h2{color:var(--accent);font-family:var(--font-dossier)!important;font-size:clamp(24px,7vw,31px);letter-spacing:.025em;text-transform:uppercase}
html[data-interface="terminal"] .detail-summary>p{color:#a6db89}
html[data-interface="terminal"] .detail-identity>div span{color:var(--term-cyan);border-color:var(--line)}
html[data-interface="terminal"] .status-selector>button.active{border-color:var(--term-cyan)!important;background:var(--term-cyan-soft)!important}
html[data-interface="terminal"] .status-selector>button.active>span{background:transparent!important;border-color:var(--accent)!important;color:var(--accent)!important}
html[data-interface="terminal"] .platform-selector button.active{background:var(--term-cyan-soft)!important;border-color:var(--term-cyan)!important;color:var(--term-cyan)!important}

html[data-interface="terminal"] .search-form{height:54px;border:1px solid var(--term-cyan)!important;background:#010301!important}
html[data-interface="terminal"] .search-form input{background:transparent!important;color:var(--ink)!important}
html[data-interface="terminal"] .search-form svg{color:var(--term-cyan)}
html[data-interface="terminal"] .search-intro{background:#020502!important;border-color:var(--line)!important}
html[data-interface="terminal"] .search-intro-icon{border-radius:0!important;background:var(--term-cyan-soft)!important;color:var(--term-cyan)!important;border-color:var(--term-cyan)!important}
html[data-interface="terminal"] .library-game-copy small{color:var(--term-cyan)!important}
html[data-interface="terminal"] .library-game-copy strong{color:var(--ink)}
html[data-interface="terminal"] .status-card strong{color:var(--accent);font-family:var(--font-dossier)!important}
html[data-interface="terminal"] .status-glyph,html[data-interface="terminal"] .status-arrow{color:var(--term-cyan)}
html[data-interface="terminal"] .catalog-credit,html[data-interface="terminal"] .build-label,html[data-interface="terminal"] .detail-credit{color:var(--dim)}

html[data-interface="terminal"] .theme-control{border-color:var(--line2);background:#020502!important}
html[data-interface="terminal"] .theme-control button{border-color:var(--line);color:var(--muted);font:700 9px/1 var(--font-dossier)!important;text-transform:uppercase}
html[data-interface="terminal"] .theme-control button.active{background:var(--terminal-faint)!important;color:var(--accent)!important;box-shadow:inset 0 -2px 0 var(--accent)!important}
html[data-interface="terminal"] .gd-accent-grid{gap:4px}
html[data-interface="terminal"] .gd-accent-choice{background:#020502!important;border-color:var(--line)!important}
html[data-interface="terminal"] .gd-accent-choice.active{border-color:var(--term-cyan)!important;background:var(--term-cyan-soft)!important}
html[data-interface="terminal"] .gd-identity-accent-note{color:var(--term-cyan)}

/* external modules should feel native in Terminal too. */
html[data-interface="terminal"] .gd-steam-overlay,html[data-interface="terminal"] .gd-libtools-overlay{background:#010301!important;color:var(--ink)}
html[data-interface="terminal"] .gd-steam-head,html[data-interface="terminal"] .gd-libtools-head{background:#020502!important;border-color:var(--line2)!important}
html[data-interface="terminal"] .gd-steam-approved-icon{filter:brightness(1.55) saturate(1.35)}
html[data-interface="terminal"] :is(.gd-steam-primary,.gd-libtools-apply){background:var(--accent)!important;color:#041004!important;border-color:var(--accent)!important}
html[data-interface="terminal"] :is(.gd-steam-secondary,.gd-libtools-reset,.gd-libtools-x){background:#020502!important;color:var(--term-cyan)!important;border-color:var(--line2)!important}
html[data-interface="terminal"] .gd-steam-pill.active{border-color:var(--term-cyan)!important;background:var(--term-cyan-soft)!important;color:var(--term-cyan)!important}
html[data-interface="terminal"] .gd-steam-row-meta,html[data-interface="terminal"] .gd-steam-note,html[data-interface="terminal"] .gd-steam-lead{color:var(--muted)}

@media (min-width:700px){html[data-interface="terminal"] body{background:#000!important}}
