@charset "UTF-8";
/* xPEBLx3.0 · Mac3.6 · shell print system Load after desktop.css. ASCII is the default; body[data-print-style="halftone"] selects the warm print kit. Every palette is local to an explicit shell root. No root/body palette aliases, experimental dialogs, stimulus selectors or art. GSAP belongs to motion.js: one short pulse on the brand dot only. */
/* ASCII / dark. Descendant desktop.css aliases resolve these local tokens. */
:is(.sidebar, #main > .topbar, #main > .view, #main > #contextPanel, #main > .footer, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog, .additional-training-dialog, #toast, #startupIntro) {
  --desktop-bg: #101441; --desktop-surface: #171d4f; --desktop-raised: #222956; --desktop-sunken: #0d1031; --desktop-ink: #f6f3e7; --desktop-muted: #ccd0e3;
  --desktop-faint: #b5bdd8; --desktop-line: #6773a5; --desktop-control: #99a4d3; --desktop-accent: #b7c8ff; --desktop-accent-ink: #101441; --desktop-accent-soft: #283569;
  --desktop-accent-line: #99aeea; --desktop-primary: #2345cc; --desktop-primary-ink: #ffffff; --desktop-primary-hover: #1936ae; --desktop-magenta: #ffafe1; --desktop-orange: #ffbe91;
  --desktop-heading: #ffafe1; --desktop-focus: #c4d2ff; --desktop-warn: #f5d3a0; --desktop-warn-soft: #382d40; --desktop-danger: #ffb6c4; --desktop-danger-soft: #3b2541;
  --desktop-ok: #b2e1ce; --desktop-shadow: 0 14px 36px rgb(4 6 28 / .24); --desktop-radius: 3px; --motion-accent-field: #2345cc; --motion-accent-label: #ffffff; --motion-border-style: solid;
  --bg: var(--desktop-bg); --surface: var(--desktop-surface); --raised: var(--desktop-raised); --sunken: var(--desktop-sunken); --ink: var(--desktop-ink); --muted: var(--desktop-muted);
  --faint: var(--desktop-faint); --line: var(--desktop-line); --line-strong: var(--desktop-control); --accent: var(--desktop-accent); --accent-ink: var(--desktop-accent-ink); --accent-soft: var(--desktop-accent-soft);
  --accent-line: var(--desktop-accent-line); --warn: var(--desktop-warn); --warn-soft: var(--desktop-warn-soft); --danger: var(--desktop-danger); --danger-soft: var(--desktop-danger-soft); --ok: var(--desktop-ok);
  --radius: 3px; --radius-s: 2px; --shadow: var(--desktop-shadow); color: var(--desktop-ink);
}
:root[data-theme="light"] :is(.sidebar, #main > .topbar, #main > .view, #main > #contextPanel, #main > .footer, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog, .additional-training-dialog, #toast, #startupIntro) {
  --desktop-bg: #f6f3e7; --desktop-surface: #fffdf5; --desktop-raised: #eceade; --desktop-sunken: #efeddf; --desktop-ink: #18234e; --desktop-muted: #414b68;
  --desktop-faint: #515b78; --desktop-line: #a3a8b9; --desktop-control: #707992; --desktop-accent: #2345cc; --desktop-accent-ink: #ffffff; --desktop-accent-soft: #e5e9fc;
  --desktop-accent-line: #536ac2; --desktop-primary: #2345cc; --desktop-primary-hover: #1730a3; --desktop-magenta: #a51c73; --desktop-orange: #8b3e13; --desktop-heading: #a51c73;
  --desktop-focus: #2345cc; --desktop-warn: #704710; --desktop-warn-soft: #f4e7cd; --desktop-danger: #a02643; --desktop-danger-soft: #f7e3e8; --desktop-ok: #235b47;
  --desktop-shadow: 0 14px 36px rgb(24 35 78 / .10);
}
/* Halftone / dark: graphite reading surfaces and orange accent fields. */
body[data-print-style="halftone"] :is(.sidebar, #main > .topbar, #main > .view, #main > #contextPanel, #main > .footer, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog, .additional-training-dialog, #toast, #startupIntro) {
  --desktop-bg: #24211e; --desktop-surface: #2e2925; --desktop-raised: #3a332d; --desktop-sunken: #1d1a18; --desktop-ink: #fff4e5; --desktop-muted: #e0cfc0;
  --desktop-faint: #cfbcaa; --desktop-line: #887564; --desktop-control: #af9984; --desktop-accent: #ffc294; --desktop-accent-ink: #24211e; --desktop-accent-soft: #443024;
  --desktop-accent-line: #cb9871; --desktop-primary: #ff9346; --desktop-primary-ink: #24211e; --desktop-primary-hover: #ffb67e; --desktop-magenta: #ffc294; --desktop-orange: #ffc294;
  --desktop-heading: #fff4e5; --desktop-focus: #ffd4b1; --desktop-warn: #f6d59c; --desktop-warn-soft: #3e3021; --desktop-danger: #ffb8b0; --desktop-danger-soft: #442a28;
  --desktop-ok: #b7dcc9; --desktop-shadow: 0 14px 36px rgb(10 8 6 / .22); --motion-accent-field: #9e3b0d; --motion-accent-label: #ffffff; --motion-border-style: solid;
}
:root[data-theme="light"] body[data-print-style="halftone"] :is(.sidebar, #main > .topbar, #main > .view, #main > #contextPanel, #main > .footer, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog, .additional-training-dialog, #toast, #startupIntro) {
  --desktop-bg: #f3ece2; --desktop-surface: #fff8ee; --desktop-raised: #e9dfd1; --desktop-sunken: #e9dccb; --desktop-ink: #27241f; --desktop-muted: #514a42;
  --desktop-faint: #60564b; --desktop-line: #a09382; --desktop-control: #776956; --desktop-accent: #8f370d; --desktop-accent-ink: #ffffff; --desktop-accent-soft: #f4dfc9;
  --desktop-accent-line: #a45d31; --desktop-primary: #ff9346; --desktop-primary-ink: #27241f; --desktop-primary-hover: #ffb67e; --desktop-magenta: #8f370d; --desktop-orange: #8f370d;
  --desktop-heading: #27241f; --desktop-focus: #8f370d; --desktop-warn: #704710; --desktop-warn-soft: #f4e7cd; --desktop-danger: #a02634; --desktop-danger-soft: #f7e3df;
  --desktop-ok: #285b43; --desktop-shadow: 0 14px 36px rgb(39 36 31 / .10);
}
body { background: #101441; }
:root[data-theme="light"] body { background: #f6f3e7; }
body[data-print-style="halftone"] { background: #24211e; }
:root[data-theme="light"] body[data-print-style="halftone"] { background: #f3ece2; }
body:not([data-sidebar="compact"]):not([data-focus="on"]) .sidebar { width: 216px; }
body:not([data-sidebar="compact"]):not([data-focus="on"]) #main { margin-left: 216px; }
.sidebar { background: var(--desktop-sunken); border-right: 1px solid var(--desktop-control); }
.sidebar .brand { color: var(--desktop-ink); margin-bottom: 10px; }
.sidebar .brand-mark { color: var(--motion-accent-label); background: var(--motion-accent-field); border-radius: 0; }
.sidebar .brand-name { letter-spacing: -.04em; }
.sidebar .nav-caption { color: var(--desktop-faint); text-transform: none; letter-spacing: .015em; margin-top: 16px; }
.sidebar .nav-item { position: relative; border-radius: 2px; color: var(--desktop-muted); transition: none; }
.sidebar .nav-item:hover { background: var(--desktop-raised); color: var(--desktop-ink); }
.sidebar :is(.nav-item.active, .nav-item[aria-current="page"], #desktopHome[aria-pressed="true"]) { color: var(--desktop-ink); border-color: var(--desktop-accent-line); background: var(--desktop-accent-soft); box-shadow: none; }
.sidebar .nav-glyph { color: var(--desktop-faint); }
.sidebar :is(.nav-item.active, #desktopHome[aria-pressed="true"]) .nav-glyph { color: var(--desktop-accent); }
.sidebar :is(.nav-count, .offline, .mode-note) { color: var(--desktop-faint); }
.sidebar .preferences { border-color: var(--desktop-control); }
.sidebar .session-indicator { background: var(--desktop-accent-soft); border: 1px solid var(--desktop-accent-line); }
.sidebar .session-indicator :is(strong, span span) { color: var(--desktop-ink); }
#main > .topbar { position: sticky; min-height: 56px; height: 56px; margin-bottom: 16px; background: var(--desktop-bg); border-bottom: 1px solid var(--desktop-control); }
#main > .topbar :is(.crumb, .ghost-button) { color: var(--desktop-muted); }
#main > .topbar .crumb[aria-current="page"] { color: var(--desktop-ink); }
#main > .topbar .search { background: var(--desktop-surface); border-color: var(--desktop-control); border-radius: 2px; }
#main > .topbar .search:focus-within { border-color: var(--desktop-focus); box-shadow: 0 0 0 2px var(--desktop-focus); }
#main > .topbar :is(.search input, .search-glyph) { color: var(--desktop-ink); }
#main > .view { background: var(--desktop-bg); min-width: 0; }
#main > .footer { border-top: 1px solid var(--desktop-line); margin-top: 24px; padding-top: 16px; color: var(--desktop-faint); }
/* Remove isolated illustrations and their unused columns, including startup. */
.shell-bitmap, .desktop-bitmap { display: none !important; }
#main > .view .hero { grid-template-columns: minmax(0, 1fr); }
#main > #contextPanel { grid-template-columns: minmax(0, 1fr); padding: 0 18px; }
#main > #resultView .page-grid { grid-template-columns: minmax(0, 1fr); }
#main > #resultView > .page-grid > .page-aside { display: none; }
#startupIntro .intro-composition { grid-template-columns: minmax(0, 1fr); }
#startupIntro .intro-brand { grid-column: 1; }
#startupIntro { background: var(--desktop-bg); }
#startupIntro .intro-composition { background: var(--desktop-surface); border-color: var(--desktop-control); }
#startupIntro :is(.intro-caption, .intro-index) { color: var(--desktop-muted); }
#startupIntro .intro-wordmark { color: var(--desktop-heading); }
#startupIntro .intro-skip { color: var(--desktop-ink); background: var(--desktop-surface); border-color: var(--desktop-control); }
/* Plain surfaces and thin frames; no ornamental edges. */
#main > .view :is(.hero, .desktop-heading, .desktop-card, .block, .aside-card, .session-panel, .result-row, .resource-row, .desktop-metric, .desktop-readable-report), #main > #contextPanel, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog { position: relative; isolation: isolate; border-color: var(--desktop-line); border-radius: 3px; border-style: var(--motion-border-style); background: var(--desktop-surface); color: var(--desktop-ink); }
#main > .view :is(.hero, .desktop-heading) { min-height: 0; padding: 18px 22px; margin-bottom: 16px; align-items: start; gap: 10px; }
#main > .view .hero-copy { padding: 0; gap: 6px 16px; }
#main > .view :is(.desktop-title, .desktop-heading h1, .hero h1) { margin: 0; font-size: clamp(28px, 2.6vw, 42px); line-height: 1.06; letter-spacing: -.045em; color: var(--desktop-heading); }
#main > .view :is(.hero p, .desktop-heading p) { max-width: 76ch; margin-top: 0; font-size: 14px; line-height: 1.45; color: var(--desktop-muted); }
#main > .view .desktop-heading .desktop-actions { margin: 10px 0 0; }
#main > .view .hero-copy > :is(.program-guide, .hero-stats) { grid-column: auto; }
#main > .view .program-guide[open] { grid-column: 1 / -1; }
#main > .view .program-guide[open] + .hero-stats { grid-column: 1 / -1; }
#main > .view .program-guide summary { min-height: 44px; color: var(--desktop-accent); }
#main > .view .hero-stats { justify-content: flex-end; }
#main > .view .section-heading { margin: 0 0 12px; }
#main > .view .section-heading h2 { font-size: 25px; line-height: 1.2; color: var(--desktop-ink); }
#main > .view .eyebrow { text-transform: none; letter-spacing: .015em; color: var(--desktop-accent); }
#main > .view :is(.page-head h1, .session-panel h1) { font-size: clamp(28px, 2.5vw, 38px); color: var(--desktop-heading); }
#main > .view .page-head { gap: 8px; padding-bottom: 8px; }
#main > .view :is(.lead, .resource-intro) { color: var(--desktop-muted); font-size: 15px; line-height: 1.6; }
#main > .view :is(.desktop-card, .block, .aside-card) { padding: 18px; }
#main > .view .block:is(.disclosure, .motion-disclosure) { padding: 0; }
#main > .view .desktop-card > :is(h2, h3), #main > .view .desktop-card > header :is(h2, h3) { font-size: 21px; line-height: 1.25; margin-bottom: 12px; color: var(--desktop-ink); }
#main > .view .desktop-toolbar { padding: 8px 0; margin-bottom: 12px; border-color: var(--desktop-line); }
#main > .view .desktop-grid { gap: 16px; }
#main > .view .desktop-side { gap: 16px; }
#main > #contextPanel .context-copy { padding: 12px 0; }
#main > #contextPanel :is(.context-copy p, .eyebrow) { color: var(--desktop-muted); }
#main > #contextPanel .eyebrow { color: var(--desktop-accent); }
#main > .view .desktop-metrics, #main > .view .desktop-card .desktop-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0 0 12px; }
#main > .view .desktop-card .desktop-metrics { margin: 12px 0; }
#main > .view .desktop-metric, #main > .view .desktop-card .desktop-metric { min-width: 0; padding: 8px 10px; background: var(--desktop-surface); border-color: var(--desktop-control); }
#main > .view .desktop-metric strong { margin-bottom: 2px; color: var(--desktop-accent); font-size: 22px; line-height: 1.05; letter-spacing: -.025em; overflow-wrap: anywhere; }
#main > .view .desktop-metric :is(span, small, dt) { display: block; color: var(--desktop-muted); font: 11px/1.2 var(--sans); overflow-wrap: anywhere; }
#main > .view :is(.desktop-next, .desktop-context, .desktop-session-note) { background: var(--desktop-accent-soft); border-color: var(--desktop-accent-line); border-left-color: var(--desktop-accent); border-radius: 2px; padding: 14px 16px; color: var(--desktop-muted); }
#main > .view :is(.desktop-next, .desktop-context, .desktop-session-note) strong { color: var(--desktop-ink); }
#main > .view .desktop-session-note[role="alert"] { background: var(--desktop-danger-soft); border-color: var(--desktop-danger); color: var(--desktop-danger); }
#main > .view .card-main:hover, #main > .view :is(.desktop-card, .resource-row, .result-row):focus-within { border-color: var(--desktop-accent); box-shadow: none; }
#main > .view :is(.task-label, .card-group) { color: var(--desktop-faint); text-transform: none; letter-spacing: 0; }
#main > .view .task-symbol { background: var(--desktop-accent-soft); color: var(--desktop-accent); border-radius: 2px; }
#main > .view .favourite-card { color: var(--desktop-muted); border-radius: 2px; }
#main > .view .favourite-card[aria-pressed="true"] { color: var(--desktop-magenta); }
#main > .view :is(.badge, .tag, .desktop-queue-badge) { color: var(--desktop-muted); background: var(--desktop-surface); border-color: var(--desktop-control); border-radius: 2px; text-transform: none; letter-spacing: 0; }
#main > .view .desktop-queue-badge { color: var(--motion-accent-label); background: var(--motion-accent-field); border-color: var(--motion-accent-field); }
#main > .view :is(.desktop-list-row, .desktop-plan-row) { border-bottom-style: solid; border-color: var(--desktop-line); }
#main > .view :is(.desktop-list-row, .desktop-plan-row) strong { color: var(--desktop-ink); }
#main > .view :is(.desktop-list-row, .desktop-plan-row) :is(small, p) { color: var(--desktop-muted); }
#main > .view :is(.desktop-plan-row[aria-current="step"], .desktop-plan-row[data-current="true"]) { background: var(--desktop-accent-soft); border-left-color: var(--desktop-accent); }
#main > .view :is(.empty, .desktop-empty) { background: var(--desktop-surface); color: var(--desktop-muted); border-color: var(--desktop-control); border-radius: 3px; }
#main > .view .desktop-card .desktop-empty { padding: 16px; }
#main > .view :is(.empty, .desktop-empty)::before { margin-bottom: 8px; color: var(--desktop-accent); }
body[data-density="compact"] #main > .view :is(.desktop-list-row, .desktop-plan-row) { padding-top: 10px; padding-bottom: 10px; }
body[data-density="comfortable"] #main > .view :is(.desktop-card, .block, .aside-card) { padding: 24px; }
body[data-density="comfortable"] #main > .view .block:is(.disclosure, .motion-disclosure) { padding: 0; }
body[data-density="comfortable"] #main > .view :is(.desktop-list-row, .desktop-plan-row) { padding-top: 16px; padding-bottom: 16px; }
#main > .view .facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 16px; min-width: 0; align-items: start; }
#main > .view .facts.compact, #main > .view .page-aside .facts { grid-template-columns: minmax(0, 1fr); }
#main > .view .facts > .fact-pair { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; min-width: 0; gap: 4px; }
#main > .view .facts > .fact-pair > dt { color: var(--desktop-muted); font: 500 12px/1.45 var(--sans); text-transform: none; letter-spacing: 0; overflow-wrap: anywhere; }
#main > .view .facts > .fact-pair > dd { min-width: 0; margin: 0; color: var(--desktop-ink); font-size: 14px; line-height: 1.55; white-space: pre-line; overflow-wrap: anywhere; }
#main > .view #resultFacts { padding: 0; border: 0; background: transparent; gap: 10px; }
#main > .view #resultFacts > .fact-pair { position: relative; padding: 12px 14px; border: 1px solid var(--desktop-control); border-top-width: 1px; border-radius: 3px; background: var(--desktop-surface); }
#main > .view #resultFacts > .fact-pair > dd { font-size: 16px; font-weight: 650; font-variant-numeric: tabular-nums; }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(.motion-disclosure, .disclosure) { border-color: var(--desktop-control); border-radius: 3px; background: var(--desktop-surface); }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(.motion-disclosure, .disclosure) > summary { position: relative; display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 16px 10px 40px; color: var(--desktop-ink); font: 600 14px/1.5 var(--sans); text-transform: none; letter-spacing: 0; list-style: none; cursor: pointer; }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(.motion-disclosure, .disclosure) > summary::-webkit-details-marker { display: none; }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(.motion-disclosure, .disclosure) > summary::before { content: ""; position: absolute; left: 17px; top: calc(50% - 4px); width: 7px; height: 7px; border-right: 2px solid var(--desktop-accent); border-bottom: 2px solid var(--desktop-accent); transform: rotate(-45deg); margin: 0; }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(.motion-disclosure, .disclosure)[open] > summary::before { transform: rotate(45deg); top: calc(50% - 6px); }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(.motion-disclosure, .disclosure) > summary:hover { background: var(--desktop-raised); }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) .motion-disclosure > :not(summary) { margin: 0 16px 16px; }
:is(.sidebar, #main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) :is(.primary, .secondary, .danger, .ghost-button, .icon-button, .chip, .desktop-plan-controls button, .desktop-drag-handle) { min-height: 44px; border-radius: 2px; transition: none; }
:is(#main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) .primary { background: var(--desktop-primary); color: var(--desktop-primary-ink); border-color: var(--desktop-control); }
:is(#main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) .primary:hover:not(:disabled) { background: var(--desktop-primary-hover); border-color: var(--desktop-control); }
:is(.sidebar, #main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) :is(.secondary, .icon-button, .desktop-plan-controls button) { color: var(--desktop-ink); background: var(--desktop-surface); border-color: var(--desktop-control); }
:is(.sidebar, #main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) :is(.secondary, .icon-button, .desktop-plan-controls button):hover:not(:disabled) { background: var(--desktop-accent-soft); border-color: var(--desktop-accent); }
:is(#main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #pilotDialog) .ghost-button:hover:not(:disabled) { background: var(--desktop-raised); color: var(--desktop-ink); }
:is(#main > .view, #stopDialog, #pilotDialog) .danger { color: var(--desktop-danger); background: var(--desktop-danger-soft); border-color: var(--desktop-danger); }
#main > .view .chip { background: var(--desktop-surface); color: var(--desktop-muted); border-color: var(--desktop-control); }
#main > .view .chip:hover { background: var(--desktop-raised); color: var(--desktop-ink); }
#main > .view .chip[aria-pressed="true"], #desktopLayout button[aria-pressed="true"] { background: var(--desktop-accent-soft); color: var(--desktop-ink); border-color: var(--desktop-accent); box-shadow: none; }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select, textarea) { min-height: 44px; max-width: 100%; border: 1px solid var(--desktop-control); border-radius: 2px; padding: 10px 12px; background: var(--desktop-surface); color: var(--desktop-ink); font: 400 14px/1.5 var(--sans); }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(input, textarea)::placeholder, #main > .topbar input::placeholder { color: var(--desktop-muted); opacity: 1; }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(input, textarea)[readonly] { background: var(--desktop-raised); border-style: dashed; }
:is(#main > .view, #desktopCommand, #desktopLayout, #pilotDialog) :is(input[type="checkbox"], input[type="radio"], input[type="range"]) { accent-color: var(--desktop-accent); }
#main > .view :is(.segmented, .choice, .param) { background: var(--desktop-bg); border-color: var(--desktop-control); border-radius: 3px; }
#main > .view .segmented span { color: var(--desktop-muted); border-radius: 2px; }
#main > .view .segmented input:checked + span { background: var(--desktop-accent); color: var(--desktop-accent-ink); }
#main > .view .choice:has(input:checked) { background: var(--desktop-accent-soft); border-color: var(--desktop-accent); }
#main > .view :is(.choice small, .note, .help, .optional, .summary-note, .param-name) { color: var(--desktop-muted); }
#main > .view .param[data-changed="true"] { border-color: var(--desktop-warn); }
#main > .view .warning { background: var(--desktop-warn-soft); color: var(--desktop-warn); border-color: var(--desktop-warn); }
:is(.sidebar, #main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) :focus-visible { outline: 3px solid var(--desktop-focus); outline-offset: 3px; }
#main > .topbar .search input:focus-visible { outline: none; }
#main > .view .segmented input:focus-visible + span { outline: 3px solid var(--desktop-focus); outline-offset: 2px; }
:is(.sidebar, #main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) :is(a, .text-button, .param-reset) { color: var(--desktop-accent); }
:is(.sidebar, #main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) kbd { color: var(--desktop-muted); background: var(--desktop-surface); border-color: var(--desktop-control); }
:is(.sidebar, #main > .topbar, #main > .view, #desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) ::selection { color: var(--desktop-accent-ink); background: var(--desktop-accent); }
#main > .view :is(.result-row, .resource-row) { padding: 16px 18px; gap: 16px; }
#main > .view :is(.result-score, .desktop-progress) { color: var(--desktop-accent); }
#main > .view :is(.result-meta, .resource-meta, .resource-path, .resource-note, .file-size) { color: var(--desktop-muted); }
#main > .view :is(.resource-info h3, .result-head h3) { color: var(--desktop-ink); }
#main > .view :is(.files li, .raw pre, .resource-document-text, .desktop-readable-report) { background: var(--desktop-bg); color: var(--desktop-ink); border-color: var(--desktop-line); }
#main > .view .desktop-progress { height: 8px; background: var(--desktop-raised); accent-color: var(--desktop-accent); border-radius: 0; }
#main > .view progress.desktop-progress::-webkit-progress-bar { background: var(--desktop-raised); border-radius: 0; }
#main > .view progress.desktop-progress::-webkit-progress-value { background: var(--desktop-accent); border-radius: 0; }
#main > .view progress.desktop-progress::-moz-progress-bar { background: var(--desktop-accent); }
#desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog { border-color: var(--desktop-control); box-shadow: var(--desktop-shadow); }
:is(#desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog)::backdrop { background: rgb(12 13 24 / .58); }
#desktopCommand :is(p, small), #desktopLayout :is(p, label), #stopDialog p, #resourceDocument .resource-note, #pilotDialog :is(p, .pilot-note) { color: var(--desktop-muted); }
#desktopLayout .desktop-label { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; font: 500 13px/1.5 var(--sans); }
#desktopLayout .desktop-label select { width: 100%; }
#desktopCommand button.desktop-list-row { background: var(--desktop-bg); color: var(--desktop-ink); border-color: var(--desktop-control); border-radius: 2px; }
#desktopCommand button.desktop-list-row:hover { background: var(--desktop-accent-soft); border-color: var(--desktop-accent); }
#resourceDocument .resource-document-text { background: var(--desktop-bg); color: var(--desktop-ink); border-color: var(--desktop-control); }
#pilotDialog .pilot-item { background: var(--desktop-bg); border-color: var(--desktop-line); }
#pilotDialog .pilot-notice { color: var(--desktop-accent); background: var(--desktop-surface); }
#pilotDialog .pilot-error { color: var(--desktop-danger); }
#toast { color: var(--desktop-bg); background: var(--desktop-ink); }
:is(#main > .view, #pilotDialog) [data-tone="ok"] { color: var(--desktop-ok); border-color: var(--desktop-ok); }
:is(#main > .view, #pilotDialog) [data-tone="warn"] { color: var(--desktop-warn); border-color: var(--desktop-warn); }
:is(#main > .view, #pilotDialog) [data-tone="danger"] { color: var(--desktop-danger); border-color: var(--desktop-danger); }
:is(#main > .view, #pilotDialog) [data-tone="muted"] { color: var(--desktop-faint); }
#main > .view .facts > .fact-pair > dd[data-tone="ok"] { color: var(--desktop-ok); }
#main > .view .facts > .fact-pair > dd[data-tone="warn"] { color: var(--desktop-warn); }
#main > .view .facts > .fact-pair > dd[data-tone="danger"] { color: var(--desktop-danger); }
#main > .view .facts > .fact-pair > dd[data-tone="muted"] { color: var(--desktop-faint); }
/* Window widths retain shell geometry and grouped facts. */
@media (max-width: 1240px) { #main > .view .facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } #main > .view .facts.compact, #main > .view .page-aside .facts { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 1100px) {
  #main > .view .facts { grid-template-columns: minmax(0, 1fr); }
  #main > .topbar .topbar-tools { gap: 4px; }
  #main > .topbar .search { width: clamp(152px, 17vw, 220px); }
  #main > .topbar .ghost-button { padding-left: 8px; padding-right: 8px; font-size: 12px; }
}
@media (min-width: 721px) and (max-width: 960px) {
  #main > .topbar { gap: 6px; padding-right: 16px; padding-left: 16px; }
  #main > .topbar .search { width: 152px; }
  #main > .topbar .crumb { max-width: 9ch; font-size: 11px; }
  #main > .topbar .breadcrumbs li + li::before { padding: 0 2px; }
  #main > .view :is(.desktop-heading, .hero) { padding: 14px 16px; }
  #main > .view :is(.desktop-title, .desktop-heading h1, .hero h1) { font-size: 28px; white-space: normal; }
  #main > .view .desktop-metric { padding: 8px; }
}
@media (min-width: 1440px) { #main > .view .facts { grid-template-columns: repeat(3, minmax(0, 1fr)); } #main > .view .facts.compact, #main > .view .page-aside .facts { grid-template-columns: minmax(0, 1fr); } }
@media (min-width: 1800px) { #main > .view .desktop-grid { gap: 20px; } }
@media (max-width: 720px) {
  body:not([data-sidebar="compact"]):not([data-focus="on"]) .sidebar { width: 100%; }
  body:not([data-sidebar="compact"]):not([data-focus="on"]) #main { margin-left: 0; }
  #main > .view .desktop-metrics, #main > .view .desktop-card .desktop-metrics { grid-template-columns: repeat(auto-fit, minmax(min(100%, 124px), 1fr)); }
  #main > .topbar { height: auto; min-height: 56px; }
  #main > .topbar .search { width: min(220px, 100%); }
  #main > .view .hero-copy { grid-template-columns: minmax(0, 1fr); }
  :is(#desktopCommand, #desktopLayout, #stopDialog, #resourceDocument, #pilotDialog) { padding: 18px; }
}
/* Neutralize inherited decorative pseudos; keep normal separators and progress. */
.sidebar .nav-item::before, #main > .view :is(.hero, .desktop-heading, .desktop-card, .block, .aside-card, .session-panel, .result-row, .resource-row, .card-main, .page-head)::after, #main > #contextPanel::after { content: none !important; display: none !important; animation: none !important; }
#main > .view :is(.aside-card, .session-panel, .desktop-next, .desktop-context, .desktop-session-note) { border-width: 1px; border-style: solid; }
#main > .view :is(.desktop-plan-row[aria-current="step"], .desktop-plan-row[data-current="true"]) { border-left-width: 1px; }
#main > .view .card-main:hover { box-shadow: none; }
.sidebar .brand-mark { position: relative; }
.sidebar .brand-mark > .motion-dot { position: absolute; right: 2px; bottom: 2px; width: 5px; height: 5px; border-radius: 50%; background: var(--motion-accent-label); opacity: 1; pointer-events: none; user-select: none; }
body:is([data-ui-session="active"], [data-session], [data-ui-readonly="true"]) .sidebar .motion-dot { visibility: hidden !important; }
:root[data-motion="reduced"] .sidebar .motion-dot { opacity: 1 !important; transform: none !important; transition: none !important; animation: none !important; }
@media (prefers-reduced-motion: reduce) { .sidebar .motion-dot { opacity: 1 !important; transform: none !important; transition: none !important; animation: none !important; } }
/* Directory spacing is independent of obsolete cards/list layout preferences. */
#main > #catalogView { --directory-padding: 10px; --directory-gap: 10px; --directory-index: 32px; }
body[data-density="comfortable"] #main > #catalogView { --directory-padding: 16px; --directory-gap: 14px; }
#main > #catalogView .catalog-workspace { display: grid; gap: 16px; min-width: 0; }
#main > #catalogView .catalog-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; }
#main > #catalogView .catalog-heading h2 { margin: 0; color: var(--desktop-heading); font: 750 clamp(26px, 2.3vw, 36px)/1.15 var(--desktop-font); letter-spacing: -.035em; }
#main > #catalogView #visibleCount { margin-left: 8px; color: var(--desktop-muted); font: 500 12px/1.5 var(--sans); letter-spacing: 0; }
#main > #catalogView .catalog-heading :is(p, small) { color: var(--desktop-muted); font-size: 13px; line-height: 1.5; }
#main > #catalogView .catalog-toolbar { display: grid; grid-template-columns: minmax(180px, 1.4fr) minmax(160px, 1fr) auto; align-items: end; gap: 12px; padding: 14px; background: var(--desktop-surface); border: 1px solid var(--desktop-line); border-radius: 3px; }
#main > #catalogView .catalog-toolbar label { display: grid; gap: 6px; min-width: 0; color: var(--desktop-muted); font: 500 13px/1.5 var(--sans); }
#main > #catalogView .catalog-toolbar select { display: block; width: 100%; min-width: 0; min-height: 44px; margin: 0; }
#main > #catalogView :is(#catalogReset, #catalogMore) { min-height: 44px; padding: 10px 14px; border: 1px solid var(--desktop-control); border-radius: 3px; background: var(--desktop-surface); color: var(--desktop-ink); font: 600 14px/1.5 var(--sans); }
#main > #catalogView :is(#catalogReset, #catalogMore):hover:not(:disabled) { background: var(--desktop-accent-soft); border-color: var(--desktop-accent); }
#main > #catalogView #catalogMore { justify-self: start; margin-top: 4px; }
#main > #catalogView #catalog.catalog-directory { display: flex; flex-direction: column; gap: 0; min-width: 0; grid-template-columns: none; border: 1px solid var(--desktop-line); border-radius: 3px; background: var(--desktop-surface); }
#main > #catalogView .catalog-directory > .catalog-item { display: block; min-width: 0; margin: 0; border: 0; border-bottom: 1px solid var(--desktop-line); border-radius: 0; background: transparent; }
#main > #catalogView .catalog-directory > .catalog-item:last-child { border-bottom: 0; }
#main > #catalogView .catalog-row { display: grid; grid-template-columns: var(--directory-index) minmax(0, 1fr) minmax(84px, 140px) 44px; align-items: center; gap: var(--directory-gap); padding: var(--directory-padding); min-width: 0; }
#main > #catalogView .catalog-index { color: var(--desktop-faint); text-align: center; font: 500 12px/1.5 var(--mono); font-variant-numeric: tabular-nums; }
#main > #catalogView .catalog-row > .card-main { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 4px; width: 100%; height: auto; min-height: 44px; min-width: 0; margin: 0; padding: 6px 8px; border: 1px solid transparent; border-radius: 3px; background: transparent; box-shadow: none; color: var(--desktop-ink); text-align: left; transition: none; }
#main > #catalogView .catalog-row > .card-main:hover:not(:disabled) { background: var(--desktop-accent-soft); border-color: var(--desktop-accent-line); box-shadow: none; }
#main > #catalogView .catalog-row > .card-main:focus-visible { border-color: var(--desktop-focus); }
#main > #catalogView .catalog-row .card-title { display: block; grid-area: auto; margin: 0; color: var(--desktop-ink); font: 650 16px/1.4 var(--sans); letter-spacing: -.01em; white-space: normal; overflow-wrap: anywhere; }
#main > #catalogView .catalog-subtitle { display: block; color: var(--desktop-muted); font: 400 12px/1.45 var(--sans); white-space: normal; overflow-wrap: anywhere; }
#main > #catalogView .catalog-kind { min-width: 0; color: var(--desktop-muted); font: 500 12px/1.45 var(--sans); white-space: normal; overflow-wrap: anywhere; }
#main > #catalogView .catalog-row > .favourite-card { position: static; inset: auto; display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-height: 44px; min-width: 44px; margin: 0; border: 1px solid transparent; border-radius: 3px; background: transparent; color: var(--desktop-muted); }
#main > #catalogView .catalog-row > .favourite-card:hover { background: var(--desktop-raised); border-color: var(--desktop-control); }
#main > #catalogView .catalog-row > .favourite-card[aria-pressed="true"] { color: var(--desktop-magenta); }
#main > #catalogView :is(.catalog-guide, .catalog-detail) { min-width: 0; background: transparent; }
#main > #catalogView .catalog-guide { border: 1px solid var(--desktop-line); border-radius: 3px; background: var(--desktop-surface); }
#main > #catalogView :is(.catalog-guide, .catalog-detail) > summary { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 14px; color: var(--desktop-accent); font: 500 13px/1.5 var(--sans); list-style: none; cursor: pointer; }
#main > #catalogView :is(.catalog-guide, .catalog-detail) > summary::-webkit-details-marker { display: none; }
#main > #catalogView :is(.catalog-guide, .catalog-detail) > summary::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; margin-right: 2px; border: 0; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg); }
#main > #catalogView :is(.catalog-guide, .catalog-detail)[open] > summary::before { transform: rotate(45deg); }
#main > #catalogView :is(.catalog-guide, .catalog-detail) > summary:hover { background: var(--desktop-raised); }
#main > #catalogView .catalog-guide > :not(summary) { margin: 0 14px 14px; color: var(--desktop-muted); font-size: 14px; line-height: 1.6; }
#main > #catalogView .catalog-detail > summary { padding-left: calc(var(--directory-padding) + var(--directory-index) + var(--directory-gap) + 8px); }
#main > #catalogView .catalog-detail-body { padding: 0 var(--directory-padding) var(--directory-padding) calc(var(--directory-padding) + var(--directory-index) + var(--directory-gap) + 8px); color: var(--desktop-ink); }
#main > #catalogView .catalog-detail-body :is(p, ul, ol) { max-width: 78ch; margin: 0 0 12px; color: var(--desktop-muted); font-size: 14px; line-height: 1.65; overflow-wrap: anywhere; }
#main > #catalogView .catalog-detail-body :is(h3, h4, strong) { color: var(--desktop-ink); }
#main > #catalogView .catalog-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 4px; }
#main > #catalogView .catalog-actions button { min-height: 44px; padding: 10px 12px; border-radius: 3px; font-size: 14px; line-height: 1.5; }
#main > #catalogView .catalog-actions button:not(.primary):not(.danger) { color: var(--desktop-ink); background: var(--desktop-surface); border: 1px solid var(--desktop-control); }
#main > #catalogView .catalog-actions button:not(.primary):not(.danger):hover:not(:disabled) { background: var(--desktop-accent-soft); border-color: var(--desktop-accent); }
@media (min-width: 721px) and (max-width: 960px) {
  #main > #catalogView .catalog-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  #main > #catalogView #catalogReset { grid-column: 1 / -1; justify-self: start; }
  #main > #catalogView .catalog-row { grid-template-columns: 26px minmax(0, 1fr) 92px 44px; }
  #main > #catalogView { --directory-index: 26px; --directory-gap: 8px; }
}
@media (max-width: 720px) {
  #main > #catalogView .catalog-toolbar { grid-template-columns: minmax(0, 1fr); }
  #main > #catalogView .catalog-row { grid-template-columns: 24px minmax(0, 1fr) 44px; gap: 6px; }
  #main > #catalogView .catalog-kind { grid-column: 2; grid-row: 2; padding-left: 8px; }
  #main > #catalogView .catalog-row > .favourite-card { grid-column: 3; grid-row: 1; }
  #main > #catalogView .catalog-detail > summary { padding-left: 14px; }
  #main > #catalogView .catalog-detail-body { padding-left: 14px; }
}
#startupIntro, #startupIntro :is(.intro-frame, .intro-brand, .intro-wordmark, .intro-caption) { animation: none !important; transition: none !important; transform: none; }

/* Specialist conclusion: stacked fields, full-width inputs, ordinary disclosure. */
#main > .view .specialist-conclusion > form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: start; width: 100%; min-width: 0; box-sizing: border-box; margin: 0; padding: 0 16px 16px; }
#main > .view .specialist-conclusion .field { display: flex; flex-direction: column; align-items: stretch; grid-column: 1 / -1; gap: 6px; min-width: 0; margin: 0; color: var(--desktop-ink); font-size: 14px; line-height: 1.5; }
#main > .view .specialist-conclusion .field:has(> input[type="text"]) { grid-column: auto; }
#main > .view .specialist-conclusion .field > :is(textarea, input:not([type="checkbox"]):not([type="radio"])) { display: block; width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; }
#main > .view .specialist-conclusion textarea { min-height: 104px; height: auto; resize: vertical; line-height: 1.6; }
#main > .view .specialist-conclusion form > label:has(> input[type="checkbox"]) { display: flex; align-items: flex-start; grid-column: 1 / -1; gap: 10px; min-height: 44px; padding: 8px 0; color: var(--desktop-ink); font-size: 14px; line-height: 1.5; cursor: pointer; }
#main > .view .specialist-conclusion input[type="checkbox"] { flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--desktop-accent); }
#main > .view .specialist-conclusion form > .secondary { width: 100%; min-height: 44px; margin: 0; white-space: normal; }
#main > .view .specialist-conclusion form > p[role="status"] { grid-column: 1 / -1; min-height: 1.5em; max-width: 100%; margin: 0; padding: 0; color: var(--desktop-muted); font-size: 14px; line-height: 1.5; }
@media (max-width: 960px) { #main > .view .specialist-conclusion > form { grid-template-columns: minmax(0, 1fr); } }

/* Desktop directory: reserve a real summary column in the existing row grid.
   Only the summary leaves flow; details and its body retain native disclosure flow. */
@media (min-width: 721px) {
  #main > #catalogView { --directory-summary: 96px; --directory-row-height: 64px; }
  body[data-density="comfortable"] #main > #catalogView { --directory-row-height: 72px; }
  #main > #catalogView .catalog-directory > .catalog-item { position: relative; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-row { grid-template-columns: var(--directory-index) minmax(0, 1fr) minmax(72px, 100px) var(--directory-summary) 44px; min-height: var(--directory-row-height); padding-block: 8px; }
  body[data-density="comfortable"] #main > #catalogView .catalog-directory > .catalog-item > .catalog-row { padding-block: 14px; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-row > .catalog-index { grid-column: 1; grid-row: 1; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-row > .card-main { grid-column: 2; grid-row: 1; gap: 2px; padding-block: 0; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-row > .catalog-kind { grid-column: 3; grid-row: 1; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-row > .favourite-card { grid-column: 5; grid-row: 1; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-row :is(.card-title, .catalog-subtitle) { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-detail { position: static; margin: 0; padding: 0; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-detail > summary { position: absolute; top: calc((var(--directory-row-height) - 44px) / 2); right: calc(var(--directory-padding) + 44px + var(--directory-gap)); width: var(--directory-summary); height: 44px; min-height: 44px; box-sizing: border-box; gap: 6px; padding: 8px 6px; border: 1px solid transparent; border-radius: 3px; font-size: 12px; white-space: nowrap; }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-detail[open] > summary { background: var(--desktop-accent-soft); border-color: var(--desktop-accent-line); }
  #main > #catalogView .catalog-directory > .catalog-item > .catalog-detail > .catalog-detail-body { position: static; width: 100%; min-width: 0; box-sizing: border-box; margin: 0; padding: 12px var(--directory-padding) var(--directory-padding); border-top: 1px solid var(--desktop-line); }
}
/* Compact history: report/conclusion forms are built only when a record is opened. */
#main > #resultsView .results-toolbar { display:grid; grid-template-columns:minmax(180px,1.7fr) minmax(160px,1fr) auto; gap:12px; align-items:end; margin-bottom:8px; }
#main > #resultsView .results-toolbar label { display:grid; gap:6px; min-width:0; color:var(--desktop-muted); font-size:13px; }
#main > #resultsView .results-toolbar :is(input,select) { width:100%; min-width:0; margin:0; min-height:44px; box-sizing:border-box; }
#main > #resultsView .result-directory-item { display:block; padding:0; }
#main > #resultsView .result-detail { width:100%; }
#main > #resultsView .result-summary { display:flex; gap:14px; align-items:center; padding:14px 16px; cursor:pointer; list-style:none; }
#main > #resultsView .result-summary::-webkit-details-marker { display:none; }
#main > #resultsView .result-summary-copy { flex:1; min-width:0; }
#main > #resultsView .result-summary h3 { color:var(--desktop-ink); font-size:17px; margin:0 0 4px; overflow-wrap:anywhere; }
#main > #resultsView .result-summary .result-meta { margin:0; font-size:12px; }
#main > #resultsView .result-expand { font-size:12px; color:var(--desktop-accent); white-space:nowrap; }
#main > #resultsView .result-expand::after { content:' ⌄'; }
#main > #resultsView details[open] > .result-summary .result-expand::after { content:' ⌃'; }
#main > #resultsView .result-summary:hover { background:var(--desktop-raised); }
#main > #resultsView .result-detail > .result-body { padding:0 16px 16px; }
#main > #resultsView .result-detail:not([open]) > .result-body { display:none; }
#main > #resultsView .result-directory-item[hidden] { display:none; }
@media(max-width:1000px) { #main > #resultsView .results-toolbar { grid-template-columns:minmax(0,1fr) minmax(0,1fr); } #main > #resultsView .results-toolbar button { grid-column:1/-1;justify-self:start; } }
@media(max-width:650px) { #main > #resultsView .results-toolbar { grid-template-columns:minmax(0,1fr); } #main > #resultsView .result-summary { flex-wrap:wrap;gap:8px; } #main > #resultsView .result-summary-copy { flex-basis:100%; } }
#main > #resultsView .result-summary-copy { text-align:left; }
#main > #resultsView .results-toolbar select { appearance:none; }

.additional-training-dialog { border-radius:3px; }
.additional-training-dialog button { border-radius:2px; }

/* Current application mark; fixed brand colours, no glyph or retired character. */
.sidebar .brand-mark { background:transparent; padding:0; overflow:visible; }
.sidebar .brand-mark > .brand-logo { width:100%;height:100%;display:block;object-fit:contain; }
#main > #toolsView { width:100%;min-width:0; }
