/* Final palette contract shared by every route and embedded shell. */
:root, html[data-theme], body {
  --uno-background: #121717;
  --uno-surface: #121717;
  --uno-cyan: #70B8A5;
  --uno-blue: #70B8A5;
  --uno-highlight: #70B8A5;
  --uno-white: #F2F4F1;
  --uno-muted: #B8C2BD;
  --uno-gradient: linear-gradient(135deg,#70B8A5,#528E7F);
  --bg: #121717;
  --bg-soft: #121717;
  --surface: #121717;
  --surface-strong: #1C2623;
  --panel: #121717;
  --panel-strong: #1C2623;
  --text: #F2F4F1;
  --text-white: #F2F4F1;
  --text-muted: #B8C2BD;
  --muted: #B8C2BD;
  --accent: #70B8A5;
  --yellow: #70B8A5;
  --yellow-accent: #70B8A5;
  --yellow-soft: rgba(112,184,165,.16);
  --yellow-glow: rgba(112,184,165,.4);
  --yellow-glow-subtle: rgba(112,184,165,.2);
  --card-border-active: #70B8A5;
}
html, body, body.uno-settings, .settings-shell-stage { background-color: #121717; color: #F2F4F1; }
html body :is(.nav-capsule,.uno-settings-menu,.uno-settings-brand,.app-settings-header,.settings-shell .detail-header) { background: #121717; }
html body.uno-settings :is(.group-card,.form-card,.language-card) { background: #121717; border: 1px solid rgba(242,244,241,.09); }
html body :is(.uno-settings-menu a[aria-current],.library-tab[aria-current="page"],.library-tab.active) { color: #70B8A5; }
html body .uno-settings-menu a[aria-current] { background: rgba(112,184,165,.1); box-shadow: inset 3px 0 #70B8A5; }
html body :is(.zen-toggle input:checked + span,.progress-fill,.zen-progress-fill) { background: #70B8A5; border-color: #70B8A5; }
html body :is(a,button,input,select,textarea,[tabindex="0"]):focus-visible { outline: 2px solid #F2F4F1; outline-offset: 3px; }
html body.uno-settings .setting-row:focus-within { outline: none; background: #24322E; box-shadow: inset 0 0 0 2px #F2F4F1; }
html body.uno-settings .setting-row:focus-within input { outline: none; }
html body .media-card:focus-visible .poster { outline: 2px solid #F2F4F1; outline-offset: 3px; }
html body .uno-header-control:focus-visible { outline-color: #F2F4F1; }

/* One explicit choice per activation, for both touch and TV remotes. */
.setting-options-card { width: min(620px,100%); max-height: calc(100dvh - 40px); display: flex; flex-direction: column; padding: clamp(20px,2.5vw,36px); background: #121717; }
.setting-options-card h3 { font-size: clamp(24px,2vw,36px); }
.setting-options-card p { color: #B8C2BD; font-size: clamp(14px,1.1vw,20px); }
.setting-options-list { min-height: 0; overflow-y: auto; padding: 4px; display: grid; gap: 6px; }
.setting-option { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 60px; padding: 16px 20px; border: 1px solid transparent; border-radius: 10px; background: #1C2623; color: #F2F4F1; text-align: left; font-size: clamp(18px,1.5vw,26px); cursor: pointer; }
.setting-option[aria-pressed="true"] { color: #70B8A5; background: #20352E; }
.setting-option:hover { background: #2B3A34; }
.setting-options-cancel { flex-shrink: 0; align-self: flex-end; min-height: 48px; margin-top: 18px; }
@media(max-width:700px) {
  .setting-options-overlay { align-items: end; padding: 10px; }
  .setting-options-card { max-height: calc(100dvh - 24px); padding-bottom: max(20px,env(safe-area-inset-bottom)); }
}
