@import url('./theme-tokens.css');
/* T329: activity pairs. Layout and grading behavior remain with each activity owner.
   Shared tones preserve exact Cyber values across activity consumers. */
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) {
 --bb-bg:var(--theme-page);--bb-bg-deep:var(--theme-page);--bb-bg-surface:var(--theme-surface);--bb-panel-bg:var(--theme-surface);--bb-panel:var(--theme-surface);--bb-text:var(--theme-ink);--bb-text-main:var(--theme-ink);--bb-text-dim:var(--theme-muted);--bb-text-muted:var(--theme-muted);--bb-border:var(--theme-border);--bb-kelly:var(--theme-primary);--bb-info:var(--theme-info);--bb-warning:var(--theme-warning);
 --bg:var(--theme-page);--panel:var(--theme-surface);--panel2:var(--theme-inset);--ink:var(--theme-ink);--text:var(--theme-ink);--muted:var(--theme-muted);--dim:var(--theme-muted);--line:var(--theme-border);--accent:var(--theme-primary);--green:var(--theme-primary);--red:var(--theme-error);--amber:var(--theme-warning);--cyan:var(--theme-info);
}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) body {background:var(--theme-page)!important;color:var(--theme-ink)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.topbar,.site-nav,.bb-return-host,.system-head,.raid-card-head) {background:var(--theme-header)!important;color:var(--theme-on-header)!important;border-color:var(--theme-accent)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.bb-return-host,.topbar,.system-head,.raid-card-head) :is(a,button,h2,span) {color:var(--theme-on-header)!important}
/* Header buttons sit on light control surfaces and the account menu is a light panel: keep their text on the theme ink, not the header ink (Dress Blues fix 2026-10-25). */
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-return-host .bb-return-link:not(.bb-validate-link) {color:var(--bb-control-ink)!important}
html.bb-theme-learning[data-bb-theme="patriotic"] .bb-return-host .bb-validate-link {border:2px solid var(--theme-on-header,#f6f8fa)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-return-host .bb-nav-menu :is(a,button,span,label,div) {color:var(--theme-ink)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(input,textarea,select,option) {background:var(--theme-surface);color:var(--theme-ink);border-color:var(--theme-border)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.btn-primary,.btn.primary,.lab-btn:not(.secondary):not(.danger),.btn-tactical.primary,.cvv-btn.primary) {background:var(--theme-primary);color:var(--theme-on-primary)!important;border-color:var(--theme-primary)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.btn-primary,.btn.primary,.lab-btn:not(.secondary):not(.danger)):hover {background:var(--theme-primary-hover);color:var(--theme-on-primary)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.request-packet,.token-packet,.cvv-stage .num,.secondary.playback-btn) {background:var(--theme-primary);color:var(--theme-on-primary)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.analogy-box,.raid-rule) {background:var(--theme-info-bg);color:var(--theme-ink)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(table,.port-table,.symptom-table,.tactical-table) {color:var(--theme-ink);background:var(--theme-surface);border-color:var(--theme-border)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) th {background:var(--theme-header);color:var(--theme-on-header);border-color:var(--theme-border)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) td {color:var(--theme-ink);border-color:var(--theme-border)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) tbody tr:nth-child(even) {background:var(--theme-inset)}
/* These devices deliberately use a dark display in every site theme. */
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.terminal,.terminal-screen,.console-screen,.bios-screen,.bios-display,.cli-output,.cli-screen,.bsod-screen,.packet-view) {background:var(--theme-scene-bg);color:var(--theme-scene-ink);border-color:var(--theme-scene-border);--bb-text:var(--theme-scene-ink);--bb-text-main:var(--theme-scene-ink);--bb-text-dim:var(--theme-scene-muted);color-scheme:dark}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.terminal,.terminal-screen,.console-screen,.bios-screen,.cli-screen) :is(pre,code,.output,.prompt,input) {background:var(--theme-scene-bg);color:var(--theme-scene-ink);border-color:var(--theme-scene-border)}
/* Lab terminals keep the dark console look (and Cyber green accents) in every theme; crash screens stay Windows blue (Brett 2026-11-01). */
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.terminal-container,.terminal-window,.cli-terminal,.linux-terminal,.bb-terminal,.log-terminal) {background:var(--theme-scene-bg)!important;color:var(--theme-scene-ink);border-color:var(--theme-scene-border);--bb-kelly:#00C853;--bb-text:var(--theme-scene-ink);--bb-text-main:var(--theme-scene-ink);--bb-text-dim:var(--theme-scene-muted);--bb-text-muted:var(--theme-scene-muted);color-scheme:dark}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.terminal-container,.terminal-window,.cli-terminal,.linux-terminal,.bb-terminal,.log-terminal) .terminal-header {background:#0f161b;color:#00C853;border-color:var(--theme-scene-border)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.terminal-container,.terminal-window,.cli-terminal,.linux-terminal,.bb-terminal,.log-terminal) :is(.terminal-header span,.terminal-status,.form-label,.terminal-prompt) {color:#00C853}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.terminal-container,.terminal-window,.cli-terminal,.linux-terminal,.bb-terminal,.log-terminal) :is(.terminal-output,pre,code) {color:var(--theme-scene-ink)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.terminal-container,.terminal-window,.cli-terminal,.linux-terminal,.bb-terminal,.log-terminal) :is(select,input,textarea,option) {background:#0f161b;color:var(--theme-scene-ink);border-color:var(--theme-scene-border)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.bsod-kernel-screen,.bsod-screen) {background:#0000aa!important;color:#ffffff!important;border-color:#0000aa;color-scheme:dark}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.bsod-kernel-screen,.bsod-screen) * {color:#ffffff!important}
/* Explicit feedback pairs, including delayed reveal and unanswered results. */
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.correct,.is-correct,.feedback.correct,.pill.good) {background:var(--theme-success-bg)!important;color:var(--theme-success)!important;border-color:var(--theme-success)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.incorrect,.is-wrong,.feedback.error,.pill.danger) {background:var(--theme-error-bg)!important;color:var(--theme-error)!important;border-color:var(--theme-error)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.unanswered,.lockout,.countdown,.pill.warn) {background:var(--theme-warning-bg);color:var(--theme-warning);border-color:var(--theme-warning)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.loading,.empty-state,[aria-busy="true"]) {color:var(--theme-muted)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(button,input,select,textarea):disabled {background:var(--theme-disabled-bg);color:var(--theme-disabled-ink);border-color:var(--theme-border);cursor:not-allowed}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :focus-visible {outline:3px solid var(--theme-focus);outline-offset:3px}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-return-host :focus-visible {outline-color:var(--theme-focus-on-header)}
html.bb-theme-learning[data-bb-theme="neon"][data-bb-reduce-glow="true"] body * {text-shadow:none!important;box-shadow:none!important}
@media(prefers-reduced-motion:reduce),(prefers-reduced-data:reduce){html.bb-theme-learning[data-bb-theme="neon"] body * {text-shadow:none!important;box-shadow:none!important}}
/* Test Builder is also mounted inside the questions hub. Use its own scope. */
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-shell {color:var(--theme-ink);--bb-text:var(--theme-ink);--bb-text-dim:var(--theme-muted);--bb-panel-bg:var(--theme-surface);--bb-border:var(--theme-border);--bb-kelly:var(--theme-primary)}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-shell :is(button,select,input,option) {background:var(--theme-surface);color:var(--theme-ink)!important;border-color:var(--theme-border)}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-shell .tb-primary {background:var(--theme-primary)!important;color:var(--theme-on-primary)!important;border-color:var(--theme-primary)}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-shell :disabled {background:var(--theme-disabled-bg);color:var(--theme-disabled-ink)!important;opacity:1}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-options button[aria-pressed="true"] {background:var(--theme-info-bg);color:var(--theme-info)!important;outline:2px solid var(--theme-info)}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-options button.is-correct {background:var(--theme-success-bg)!important;color:var(--theme-success)!important;border-color:var(--theme-success)}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-options button.is-wrong {background:var(--theme-error-bg)!important;color:var(--theme-error)!important;border-color:var(--theme-error)}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-score :is(th,td) {color:var(--theme-ink);background:var(--theme-surface);border-color:var(--theme-border)}
html:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .tb-shell :focus-visible {outline:3px solid var(--theme-focus);outline-offset:3px}

/* Paired surfaces found by computed-style checks; override retained legacy page colors. */
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) th {background:var(--theme-header)!important;color:var(--theme-on-header)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .fr-go {background:var(--theme-primary)!important;color:var(--theme-on-primary)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-mission-head {background:var(--theme-header)!important;color:var(--theme-on-header)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-mission-head :is(h2,button,.bb-mission-kicker) {color:var(--theme-on-header)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-mission-body :is(strong,b) {color:var(--theme-ink)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-trust-marker {background:var(--theme-surface)!important;color:var(--theme-muted)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) .bb-trust-marker :is(strong,span,a) {color:var(--theme-ink)!important}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(button.selected,button.active,button[aria-selected="true"],button[aria-pressed="true"]):not(.is-correct):not(.is-wrong) {background:var(--theme-info-bg);color:var(--theme-info);border-color:var(--theme-info)}

/* Long chalkboard equations must fit the phone reading column. */
html.bb-theme-learning .chalkboard pre {white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;box-sizing:border-box}

html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.wrong,.btn-danger,button.danger,.status-error,[aria-invalid="true"]) {background:var(--theme-error-bg);color:var(--theme-error);border-color:var(--theme-error)}
html.bb-theme-learning:is([data-bb-theme="patriotic"],[data-bb-theme="neon"],[data-bb-theme="reserve"]) :is(.right,.status-success) {background:var(--theme-success-bg);color:var(--theme-success);border-color:var(--theme-success)}
@media print {
 html.bb-theme-enabled .tb-shell :is(.tb-score,.aar-panel,.aar-card,th,td) {background:var(--theme-print-paper)!important;color:var(--theme-print-ink)!important;box-shadow:none!important}
}
