/* Career Lab visual system. This is the sole owner of colour, type and control styling.
   app.css and public.css contain layout and behavioural states only. */
:root {
  --canvas: #f2f0e6;
  --brand-lime: #dcf57f;
  --brand-soft: #f3f6e9;
  --brand-lime-hover: #c9ed58;
  --surface: #faf8f1;
  --surface-muted: #f0f0ed;
  --text: #252525;
  --text-muted: #606060;
  --border: #d4d4d0;
  --accent: #252525;
  --accent-hover: #252525;
  --accent-soft: #f0f0ed;
  --on-accent: #252525;
  --danger: #b43d36;
  --danger-soft: #fff0ee;
  --warning: #785a20;
  --warning-soft: #fbf3df;
  --media: #202020;
  --on-media: #ffffff;
  --radius-control: 12px;
  --radius-card: 16px;
  --shadow-popover: 0 12px 32px #00000018;
  --font-body: 'Bricolage Grotesque', ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-display: var(--font-body);
  --type-page: clamp(28px, 3vw, 36px);
  --type-section: 24px;
  --type-panel: 20px;
  --type-body: 16px;
  --type-control: 14px;
  --type-small: 12px;
  --page-width: 1120px;
  --flow-width: 800px;
  --reading-width: 740px;
  --page-gutter: 32px;
  --card-padding: 24px;
  --dock-h: 66px;
  /* Existing renderer names resolve to the same semantic palette and scale. */
  --ink: var(--text); --muted: var(--text-muted); --paper: var(--canvas);
  --page-background: var(--canvas); --white: var(--surface);
  --blue: var(--accent); --blue-dark: var(--accent-hover);
  --line: var(--border); --lime: var(--accent-soft); --aqua: var(--surface-muted);
  --yellow: var(--surface-muted); --coral: var(--danger);
  --surface-soft: var(--surface-muted); --focus: var(--accent);
  --scenario-accent: var(--accent); --scenario-soft: var(--surface-muted);
  --journalist-soft: var(--surface-muted); --radius: var(--radius-card);
  --shadow: none; --display-font: var(--font-display);
  --text-label: var(--type-small); --text-xs: var(--type-small);
  --text-sm: var(--type-control); --text-base: var(--type-body);
  --text-lg: 18px; --text-xl: var(--type-panel);
  --heading-sm: var(--type-section); --heading-md: var(--type-page);
  --heading-lg: var(--type-page); --heading-xl: var(--type-page);
  font-family: var(--font-body); color: var(--text); background: var(--canvas);
  font-synthesis: none;
}
* { box-sizing: border-box; }
html, body { background: var(--canvas); color: var(--text); }
body { font-family: var(--font-body); font-size: var(--type-body); font-weight: 400; line-height: 1.6; }
button, input, select, textarea { font-family: var(--font-body); }
h1, h2, h3 { font-family: var(--font-display); font-weight: 600; color: inherit; letter-spacing: -.025em; }
h1 { font-size: var(--type-page); line-height: 1.16; }
h2 { font-size: var(--type-section); line-height: 1.3; }
h3 { font-size: var(--type-panel); line-height: 1.35; }
p, li { line-height: 1.65; }
strong, b { font-weight: 600; }
a { color: var(--accent); }
small, .tiny { font-size: var(--type-small); line-height: 1.5; }
.lede, .hero-lede { font-size: var(--type-body); font-weight: 400; line-height: 1.65; color: var(--text-muted); }
.muted, .section-subhead, .library-head p, .tool-head p, .rehearsal-step-hint, .document-intro, .artifact-focus-head p,
.job-brief-story p, .jobcard-body p, .role-summary, .brief-reassurance, .voice-console p, .p-id p, .quickstart-status,
.interview-quickstart > p, .quickstart-alternative, .activity-note, .sequence-help,
.profile-stats, .pstatus, .sync-state, .checkpoint { color: var(--text-muted); }
.eyebrow, .scenario-label, .role-heading small, .artifact-note-source, .document-meta,
.mode-choice-label, .brief-mode-label, .simulation-brief > div > span, .foot-col h3,
.review-list dt, .application-column h2 { font-size: var(--type-small); line-height: 1.5; font-weight: 600; letter-spacing: .07em; }
.eyebrow, .scenario-label, .role-heading small, .artifact-note-source, .foot-col h3 { text-transform: uppercase; }
.eyebrow, .scenario-label, .role-heading small, .artifact-note-source, .review-list dt { color: var(--text-muted); }
.card h2, .surface-card h2, .brief-launch h2, .p-id h2, .jobcard-body h3,
.role-heading strong, .jobcard-top strong, .auth-card h2, .card-top h2 { font-size: var(--type-panel); line-height: 1.35; font-weight: 600; }
.history-copy strong, .profile-head strong, .detail-head strong { font-size: var(--type-control); font-weight: 600; }
.pstatus, .sync-state, .profile-stats, .history-copy span, .situation-meta, .activity-summary,
.job-brief-meta, .artifact-note-progress, .quickstart-how, .quickstart-drop small,
.quickstart-drop > span:not(.quickstart-file-label), .interview-cv-upload p,
.interview-file p, .rehearsal-step-hint, .quickstart-status, .brief-reassurance,
#brief-av-note, .checkpoint, .voice-heard, .scene-still figcaption { font-size: var(--type-small); line-height: 1.6; }
#rehearsal-step-title, .artifact-focus-head h3 { font-size: var(--type-section); line-height: 1.3; }
#brief-objective { color: var(--text); }
main { max-width: var(--page-width); padding: 32px var(--page-gutter) 64px; }
#screen-rehearse { max-width: var(--flow-width); }
#screen-briefing { max-width: none; }
/* Neutral foundations; named studio surfaces below carry purposeful colour. */
.card, .surface-card, .jobcard, .auth-card, .age-card, .brief-launch,
.interview-quickstart, .interview-attachment, .interview-advert-details,
.interview-cv-upload, .interview-file, .artifact-note, .queue-item, .seq-item,
.msg, .triage-btn, .activity-reminder-sticky, .history-item, .job-search-result,
.empty-state, .sim-shell, .character, .transcript, .composer, .voice-console,
.completion-card, .application-card, .cohort-card, .company-playbook-card,
.next-card, .level-cell, .activity-row, .find-jobs-form, .job-guidance,
.report-summary > div, .landing-role, .interview-plan-card, .surface-empty {
  color: var(--text); background: var(--surface); border-color: var(--border);
  border-radius: var(--radius-card); box-shadow: none;
}
.card-top, .card-top.plain, .jobcard-top, .notebook-cover, .result-hero,
.rehearsal-hero, #screen-home .hero, .hero, .home-explore,
.application-column, .rehearsal-review-summary, .quickstart-drop, .artifact-reference,
.finding, .activity-brief-card, .quote, .msg-body, .log-entry, .log-entry.mine,
.compare-title, .auth-tabs, .view-toggle, .mode-tabs { color: var(--text); background: var(--surface-muted); }
#screen-rehearse .rehearsal-hero, .activity-body .card, .artifact-focus .finding,
.sim-stage, .activity-stage, .job-brief, .job-brief-heading, .job-brief-story,
.sim-shell:has(.activity-artifact), .sim-shell:has(.activity-artifact) .sim-header,
.sim-shell:has(.activity-artifact) .sim-footer, #app-footer, footer { background: transparent; }
.notebook-cover .eyebrow, .notebook-cover .lede { color: var(--text-muted); }
.simulation-brief, .sim-header, .sim-footer, .response-suggestions { background: var(--surface); color: var(--text); }
.artifact-note { font-family: var(--font-body); font-size: var(--type-panel); font-weight: 400; line-height: 1.65; }
.artifact-note-source { font-family: var(--font-body); }
.artifact-selected p { font-size: var(--type-body); }
.evidence-card p, .evidence-card blockquote { white-space: pre-line; }
/* Shared card anatomy. Compact list rows are an explicit density variant. */
.card, .surface-card { padding: var(--card-padding); }
.card > .card-top { margin: calc(-1 * var(--card-padding)) calc(-1 * var(--card-padding)) var(--card-padding); padding: var(--card-padding); border-bottom: 1px solid var(--border); border-radius: 0; }
.card:has(> .card-top) { overflow: hidden; }
.activity-body .card { padding: 0; border: 0; }
.jobcard-top, .jobcard-body { padding: var(--card-padding); border-radius: 0; }
#library-grid.list-view .role-card { padding: 16px; }
#library-grid.list-view .role-card .card-top { padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; }
/* Every action uses this control family. */
button, .btn, .send, .back-btn, .circle-btn, .tray-arrow, .auth-submit {
  font-size: var(--type-control); font-weight: 500; line-height: 1.4;
  color: var(--text); background: var(--surface); border-color: var(--border);
  border-radius: var(--radius-control); box-shadow: none;
  transition: background .18s, border-color .18s, opacity .18s;
}
.btn, button:not(.linklike):not(.seq-drag-handle) { min-height: 44px; }
.btn:hover, button:hover:not(:disabled) { background: var(--surface-muted); box-shadow: none; }
.btn:active, button:active:not(:disabled) { transform: translateY(1px); }
.btn.primary, .btn.lime, .send, .auth-submit, .quickstart-file-label, .orb,
.header-cta, .job-search-result .jr-practise { color: var(--on-accent); background:var(--brand-lime); border-color: var(--accent); }
.btn.primary:hover, .btn.lime:hover, .send:hover, .auth-submit:hover, .header-cta:hover { background:var(--brand-lime-hover); }
.quickstart-file-label { font-size: var(--type-control); font-weight: 500; border-radius: var(--radius-control); }
.btn.ghost, .back-btn, .profile-links button, .artifact-note-navigation .btn,
.artifact-selected .btn, .interview-attachment .btn, .quickstart-alternative .btn,
.auth-forgot, .foot-col .linklike { background:var(--surface); border-color:var(--border); }
.btn.ghost:hover, .back-btn:hover, .profile-links button:hover, .artifact-selected .btn:hover { background: var(--surface-muted); }
button:disabled, .btn:disabled { opacity: .45; transform: none; box-shadow: none; cursor: not-allowed; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible,
textarea:focus-visible, summary:focus-visible, [tabindex]:not(main):focus-visible {
  outline: 2px solid var(--accent) !important; outline-offset: 3px; box-shadow: none !important;
}
main:focus, main:focus-visible { outline: none !important; }
/* Shared selection states. */
.mode-choice button.selected, .mode-tabs button.selected, .difficulty-picker button[aria-pressed="true"],
.reflection-scale button.selected, .choice-thread button.selected, .filter-btn[aria-pressed="true"],
.view-toggle button[aria-pressed="true"], .auth-tabs button[aria-selected="true"],
.age-options > button.selected, .age-options .tag-row .btn[aria-pressed="true"],
.seq-item.moved, .msg.selected, .save-btn.saved, .artifact-note.selected,
.dock-btn.active, .mm-link[aria-current="page"] { background: var(--accent-soft); color: var(--accent); border-color: var(--accent); }
.role-icon, .p-monogram, .tile-monogram, .pavatar, .profile-btn, .msg .who,
.detail-head .who, .seq-item .pos, .check, .evidence-mark, .outcome-stamp {
  color: var(--accent); background: var(--surface-muted); border-color: var(--border);
  font-family: var(--font-body); font-size: var(--type-control); font-weight: 600; box-shadow: none;
}
.p-monogram, .pavatar, .profile-btn, .orb { border-radius: 50%; }
.tag, .status-chip, .no-score-chip, .step-chip, .preview-state,
.preview-duration, .completion-badge, .day-chip, .lock-chip, .find-jobs-pill,
.meta span, .situation-meta span, .artifact-note-progress strong, .triage-btn .verb,
.queue-item .sev, .msg .done-chip { font-size: var(--type-small); font-weight: 500; line-height: 1.5; color: var(--text-muted); background: var(--surface-muted); border-color: var(--border); border-radius: 999px; box-shadow: none; }
.progress-track, .progress-dot, .tray-dots i { background: var(--surface-muted); border-color: var(--border); }
.progress-track i, .progress-dot.complete, .tray-dots i.active, .typing-dots i,
.wave i, .pulse, .journey-item::before, .landing-kicker::before { background:var(--brand-lime); }
.status-chip .pulse.empty { background: var(--text-muted); }
.journey-line::before, .profile-divider, .auth-divider::before, .auth-divider::after { background: var(--border); }
.journey-step, .journey-step::before { background: transparent; color: var(--text-muted); }
.journey-step strong { font-size: var(--type-control); font-weight: 600; color: var(--text); }
.journey-step span { font-size: var(--type-small); color: var(--text-muted); }
.interview-progress li { font-size: var(--type-control); color: var(--text-muted); }
.interview-progress li > span { background: var(--surface); color: var(--text-muted); border-color: var(--border); font-size: var(--type-small); }
.interview-progress [aria-current="step"] { color: var(--accent); }
.interview-progress [aria-current="step"] > span { border-color: var(--accent); }
.interview-progress .complete > span { color: var(--on-accent); background:var(--brand-lime); border-color: var(--accent); }
/* Forms */
label { font-size: var(--type-control); font-weight: 500; line-height: 1.5; }
input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), select, textarea {
  font-size: var(--type-body); font-weight: 400; line-height: 1.5;
  color: var(--text); background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius-control); box-shadow: none;
}
input::placeholder, textarea::placeholder { color: var(--text-muted); opacity: .85; }
input[type="checkbox"], input[type="radio"] { accent-color: var(--accent); }
input[type="file"] { font-size: var(--type-control); color: var(--text-muted); }
input[type="file"]::file-selector-button { min-height: 44px; padding: 10px 14px; margin-right: 10px; border: 1px solid var(--border); border-radius: var(--radius-control); background: var(--surface); color: var(--text); font: inherit; cursor: pointer; }
.composer textarea { border: 0 !important; background: transparent; }
.composer:focus-within { outline: 2px solid var(--accent); outline-offset: 2px; }
.composer textarea:focus-visible { outline: none !important; }
/* Conversation and media keep the same controls; only the media itself is dark. */
.bubble { color: var(--text); background: var(--surface-muted); font-size: var(--type-body); font-weight: 400; line-height: 1.65; }
.bubble.me { color: var(--on-accent); background:var(--brand-soft); }
.bubble .speaker { color: inherit; font-size: var(--type-small); font-weight: 600; line-height: 1.5; }
.captions, .your-line, .voice-heard { color: var(--text); background: var(--surface-muted); font-size: var(--type-body); line-height: 1.6; }
.captions::before, .your-line b { font-size: var(--type-small); font-weight: 600; color: var(--text-muted); }
.video-stage .character, .video-stage .video-tile { background: var(--media); color: var(--on-media); }
.video-stage .captions, .self-view, .self-view::before { color: var(--on-media); background: var(--media); }
.video-stage .captions::before, .video-stage .p-id span, .video-stage .p-id p { color: var(--on-media); }
.video-controls .circle-btn { background: var(--surface); color: var(--text); }
.voice-console strong { font-size: var(--type-body); font-weight: 600; }
.response-option { font-size: var(--type-control); line-height: 1.6; }
.response-suggestions::before { color: var(--text-muted); font-size: var(--type-small); font-weight: 500; }
/* Menus and feedback */
.profile-menu, .mega-panel, .billing-dialog, .mm-panel { background: var(--surface); color: var(--text); border-color: var(--border); border-radius: var(--radius-card); box-shadow: var(--shadow-popover); }
.billing-dialog::backdrop { background: #00000066; }
.mega-backdrop { background: transparent; }
.profile-links button, .mega-item strong, .mega-more, .mm-link, .mega-links a { font-size: var(--type-control); font-weight: 500; }
.mega-item small, .profile-head .pstatus, .profile-stats, .sync-state { font-size: var(--type-small); font-weight: 400; color: var(--text-muted); }
.mega-item:hover, .mega-item:focus-visible, .mm-link:hover { background: var(--surface-muted); }
.auth-error, .quickstart-status[data-state="error"], .danger, .profile-links button.danger { color: var(--danger); }
.auth-error, .log-entry.cost { background: var(--danger-soft); border-color: var(--danger); }
#recovery-success, .quickstart-status[data-state="success"], .upload-zone.loaded { color: var(--accent); }
.voice-input.listening, .circle-btn.danger { background: var(--danger); color: var(--on-accent); border-color: var(--danger); }
.triage-btn .verb.escalate, .queue-item .sev.high { color: var(--danger); background: var(--danger-soft); }
.queue-item .sev, .sponsored-label { color: var(--warning); background: var(--warning-soft); }
.toast { color: var(--on-media); background: var(--media); border: 0; border-radius: var(--radius-control); font-size: var(--type-control); box-shadow: var(--shadow-popover); }
.skip-link { color: var(--on-accent); background:var(--brand-lime); border: 0; border-radius: var(--radius-control); font-size: var(--type-control); }
.activity-live, .activity-note, .support-panel { background: var(--surface-muted); color: var(--text); font-size: var(--type-control); line-height: 1.6; }
.clock-panel, .clock-strip { background: var(--surface-muted); color: var(--text); }
.clock-panel p, .clock-panel small, .clock-strip span { color: var(--text-muted); }
.clock { font-size: var(--type-page); font-weight: 600; }
.clock small { font-size: var(--type-small); }
.job-search-skeleton, .job-search-skeleton i { background: var(--surface-muted); }
/* Public guide rows use the same compact-card treatment. */
.rolelist a { color: var(--text); background: var(--surface); border-color: var(--border); border-radius: var(--radius-card); }
.rolelist a strong { font-size: var(--type-body); font-weight: 600; }
.rolelist a > span > span { font-size: var(--type-control); color: var(--text-muted); }
.rolelist i { font-size: var(--type-control); color: var(--accent); background: var(--surface-muted); border-color: var(--border); border-radius: var(--radius-control); }
.rolelist a:hover, .jobcard:hover, .related a:hover, .day-links a:hover { transform: none; background: var(--surface-muted); }
/* One header and footer across every app screen. */
.topbar { min-height: 72px; padding: 8px var(--page-gutter); background: var(--surface); color: var(--text); border-bottom: 1px solid var(--border); }
.topbar .brand { width: 148px; height: 48px; }
.topbar .brand-primary { width: 148px; height: 48px; object-fit: contain; }
.topbar .desktop-nav button, .topbar .desktop-nav button:hover { font-size: var(--type-control); font-weight: 500; background: transparent; color: var(--text-muted); border: 0; }
.topbar .desktop-nav button.active, .topbar .mega[data-open="true"] .mega-trigger { color: var(--accent); }
.nav-label { line-height: 1.4; text-decoration-thickness: 2px; text-underline-offset: 5px; text-decoration-color: var(--accent); }
.profile-btn { width: 44px; height: 44px; }
.top-user-name { font-size: var(--type-control); font-weight: 500; }
.bottom-dock { color: var(--text); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-card); box-shadow: var(--shadow-popover); }
.dock-btn { background: transparent; color: var(--text-muted); font-size: var(--type-small); font-weight: 500; }
.dock-btn.active { color: var(--accent); background: var(--accent-soft); }
#app-footer { max-width: var(--page-width); padding-inline: var(--page-gutter); border-top: 1px solid var(--border); }
#app-footer .foot-col a, #app-footer .foot-col .linklike { font-size: var(--type-control); font-weight: 400; color: var(--text-muted); line-height: 1.6; }
#app-footer .foot-col h3, .footer-grid h2 { font-size: var(--type-small); color: var(--text-muted); font-weight: 600; }
#app-footer .foot-brand img, .footer-brand .brand img, header.site .brand img { width: 148px; height: 48px; object-fit: contain; }
#app-footer .foot-brand p, .foot-base, .footer-brand p { font-size: var(--type-small); line-height: 1.6; color: var(--text-muted); }
main.wrap { max-width: var(--page-width); padding: 32px var(--page-gutter) 64px; }
header.site .wrap { width: 100%; max-width: none; min-height: 72px; padding: 8px var(--page-gutter); }
footer.site .wrap { max-width: var(--page-width); padding-inline: var(--page-gutter); }
header.site, .mm-head { background: var(--surface); border-color: var(--border); }
.sitenav a { color: var(--text-muted); font-size: var(--type-control); font-weight: 500; line-height: 1.4; border-bottom: 0; text-decoration: none; }
.sitenav a[aria-current="page"] { color: var(--accent); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 5px; }
.stat li, .step, .band, .guard, .apply, .related a, .day-links a { color: var(--text); background: var(--surface); border-color: var(--border); box-shadow: none; }
.step b, .stat b { font-size: var(--type-panel); color: var(--accent); background: var(--surface-muted); border-color: var(--border); border-radius: var(--radius-control); }
.band p, .guard p, .apply p { color: var(--text-muted); }
.stat small, .meta span, .pills span { font-size: var(--type-small); color: var(--text-muted); background: var(--surface-muted); }
img[src="/brand/career-lab-logo.png"] { mix-blend-mode: multiply; }
@media(max-width:759px) {
  :root { --page-gutter: 20px; --card-padding: 20px; }
  main { padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
  .bubble { font-size: 17px; }
  .topbar .brand, .topbar .brand-primary { width: 136px; }
}
@media(prefers-reduced-motion:reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Interview and activity surfaces use the shared brand tokens. */
.rehearsal-hero h1 { font-size:clamp(36px,4.8vw,62px); line-height:1.06; letter-spacing:-.045em; font-weight:500; }
.rehearsal-hero h1 em { color:var(--accent); font-style:normal; }
.interview-followup .rehearsal-hero h1 { font-size:var(--type-page); }
.studio-intro li > span { color:var(--accent); font-size:var(--type-small); font-weight:600; }
.studio-intro strong { font-size:18px; font-weight:600; }
.studio-intro p { color:var(--text-muted); font-size:var(--type-control); line-height:1.5; }
#screen-rehearse #interview-quickstart { background:var(--surface); border:1px solid var(--border); border-radius:22px; }
#screen-rehearse .quickstart-drop { background:var(--accent-soft); border:1px dashed var(--accent); border-radius:16px; }
#screen-rehearse .quickstart-drop:hover { background:var(--surface-muted); }
.quickstart-file-label { color:var(--on-accent); font-size:var(--type-control); font-weight:600; }
#screen-rehearse #rehearsal-form, #screen-rehearse .rehearsal-summary { background:var(--surface); }
.studio-session-brief span { font-size:var(--type-small); color:var(--text-muted); }
.studio-session-brief strong { font-size:var(--type-body); line-height:1.5; font-weight:500; }
.workspace-kind { color:var(--accent); font-size:var(--type-small); letter-spacing:.08em; text-transform:uppercase; }
#screen-simulation .sim-shell, #screen-simulation .sim-header, #screen-simulation .sim-footer { background:var(--surface); }
#screen-simulation .mode-tabs { background:var(--surface); border-bottom:1px solid var(--border); }
#screen-simulation .mode-tabs button { background:transparent; border:1px solid transparent; color:var(--text-muted); }
#screen-simulation .mode-tabs button.selected { background:var(--brand-lime); color:var(--on-accent); }
#screen-simulation .simulation-brief { background:var(--accent-soft); }
#screen-simulation .simulation-brief strong { font-size:var(--type-body); font-weight:500; line-height:1.6; }
#screen-simulation .p-monogram { background:var(--brand-lime); color:var(--text); border-radius:50%; }
#screen-simulation .character, #screen-simulation .response-suggestions { background:transparent; }
#screen-simulation .bubble { background:var(--surface-muted); border:0; font-size:17px; line-height:1.65; }
#screen-simulation .bubble.me { background:var(--brand-soft); color:var(--on-accent); }
#screen-simulation .bubble .speaker { font-size:var(--type-small); }
#screen-simulation .composer { background:var(--surface); border:1px solid var(--border); box-shadow:0 4px 16px #00000008; }
#screen-simulation .composer textarea { background:transparent; font-size:var(--type-body); }
.suggestion-label { font-size:var(--type-small); color:var(--text-muted); }
#screen-simulation .response-options button { background:transparent; border:1px solid var(--border); font-size:var(--type-control); line-height:1.5; }
#screen-simulation .response-options button:hover:not(:disabled) { background:var(--accent-soft); border-color:var(--accent); }
.studio-state { font-size:var(--type-small); color:var(--text-muted); }
.studio-state::before { background:var(--brand-lime); }
.studio-recovery { background:var(--warning-soft); color:var(--text); }
#screen-simulation .sim-shell[data-session-mode="voice"] .tile-monogram { background:var(--accent-soft); color:var(--accent); box-shadow:0 0 0 12px var(--surface),0 0 0 13px var(--border); font-size:44px; font-weight:500; }
#screen-simulation .sim-shell[data-session-mode="voice"] .captions { background:var(--surface); font-size:22px; line-height:1.5; }
#screen-simulation .voice-console { background:var(--surface); color:var(--text); }
#screen-simulation .sim-shell[data-session-mode="video"] .video-tile { background:var(--media); }
#screen-simulation .sim-shell[data-session-mode="video"] .captions { background:var(--surface-muted); color:var(--text); }
#screen-simulation .completion-card { background:var(--accent-soft); border:0; }
.mission-trail { font-size:var(--type-control); color:var(--text-muted); }
.mission-trail li[aria-current="step"], .mission-trail li.complete { color:var(--accent); border-color:var(--accent); }
.mission-trail li[aria-current="step"] { font-weight:600; }
.activity-outcome { background:var(--accent-soft); color:var(--text); }
.activity-outcome h4 { font-size:18px; font-weight:600; }
.activity-outcome p { font-size:var(--type-control); line-height:1.65; }
.artifact-note { background:var(--surface); box-shadow:0 8px 20px #00000007; }
.artifact-note.selected { border-color:var(--accent); background:var(--accent-soft); }
.artifact-note-source { color:var(--text-muted); font-size:var(--type-small); }
.activity-body .seq-item, .activity-body .queue-item, .activity-body .triage-btn { background:var(--surface); }
.activity-body .seq-item.moved { background:var(--accent-soft); border-color:var(--accent); }
.activity-body .msg.selected { background:var(--brand-lime); color:var(--text); }
#screen-debrief .result-hero { background:var(--accent-soft); }
@media(max-width:650px) { #screen-simulation .bubble { font-size:18px; } .mission-trail { font-size:var(--type-small); } }

.studio-intro li > span { background:var(--warning-soft); color:var(--warning); border-radius:50%; }
.evidence-tab { background:var(--surface); color:var(--text-muted); font-size:var(--type-small); }
.evidence-tab[aria-current="true"] { border-color:var(--accent); color:var(--accent); background:var(--accent-soft); font-weight:600; }
.evidence-tab[data-kept="true"]::after { background:var(--brand-lime); }
#screen-simulation .sim-shell[data-session-mode="activity"], #screen-simulation .sim-shell[data-session-mode="activity"] .sim-header, #screen-simulation .sim-shell[data-session-mode="activity"] .sim-footer { background:var(--canvas); }

#screen-simulation .sim-shell[data-session-mode="video"] .character { color:var(--text); }
#screen-simulation .sim-shell[data-session-mode="video"] .p-id span, #screen-simulation .sim-shell[data-session-mode="video"] .p-id p, #screen-simulation .sim-shell[data-session-mode="video"] .captions::before { color:var(--text-muted); }

@media(max-width:650px) { .studio-intro strong { font-size:var(--type-control); line-height:1.4; } }

/* White surfaces, lime emphasis and charcoal typography. */
h1, h2, h3 { font-weight:700; }
.topbar .desktop-nav button { color:var(--text); font-weight:600; }
.topbar .desktop-nav button:hover { color:var(--accent); }
.profile-btn, .menu-btn { background:var(--brand-lime); color:var(--text); border-color:transparent; border-radius:50%; }
.bottom-dock { border-color:var(--text); }
.dock-btn.active { color:var(--text); background:var(--brand-lime); }
#screen-home .hero { background:transparent; }
#screen-home .hero-copy { background:var(--brand-soft); border-radius:24px; }
#screen-home .hero h1 { font-size:clamp(42px,4.7vw,66px); line-height:1.02; letter-spacing:-.055em; font-weight:700; }
#screen-home .hero h1 span { color:var(--accent); }
#screen-home .hero .eyebrow, #screen-home .hero .lede { color:var(--text); }
#screen-home .hero .lede { font-size:18px; line-height:1.5; }
.home-path { color:var(--text); border-radius:24px; }
.home-path-interview, .home-path-interview:hover:not(:disabled) { background:var(--surface); border:1px solid var(--border); }
.home-path-match, .home-path-match:hover:not(:disabled) { background:var(--surface); border:1px solid var(--border); }
.home-path .eyebrow { color:var(--text); font-size:11px; }
.home-path strong { font-size:clamp(26px,2.4vw,34px); line-height:1.08; letter-spacing:-.035em; font-weight:700; }
.home-path-link { font-size:14px; font-weight:600; line-height:1.35; }
.home-path-link > span { background:var(--text); color:var(--surface); border-radius:50%; font-size:22px; }
#screen-home .section-head h2 { font-size:32px; letter-spacing:-.04em; }
#screen-home .experiment-card, #library-grid .role-card { border-color:var(--text); border-radius:20px; }
#screen-home .experiment-card .card-top, #library-grid:not(.list-view) .role-card .card-top { background:var(--brand-soft); border-radius:0; }
#screen-home .experiment-card .role-heading strong, #library-grid:not(.list-view) .role-heading strong { font-size:30px; line-height:1.1; letter-spacing:-.04em; }
.role-heading small { color:var(--text); }
#screen-home .experiment-card h2 { font-size:23px; }
#screen-rehearse .rehearsal-hero { background:var(--brand-soft); border-radius:24px; }
.rehearsal-hero h1 { font-weight:700; }
.rehearsal-hero h1 em { color:var(--text); }
.rehearsal-hero .lede, .rehearsal-hero .eyebrow, .studio-intro p { color:var(--text); }
.studio-intro { border-color:var(--border); }
.studio-intro li > span { background:var(--brand-lime); color:var(--text); font-weight:700; }
#screen-rehearse .quickstart-drop { background:var(--brand-soft); border:1px solid var(--accent); }
#screen-rehearse .quickstart-drop:hover { background:var(--brand-lime-hover); }
#screen-rehearse #interview-quickstart { border-color:var(--text); }
#screen-simulation .mode-tabs { background:var(--brand-lime); border-color:transparent; }
#screen-simulation .mode-tabs button { color:var(--text); font-weight:600; }
#screen-simulation .mode-tabs button.selected { background:var(--text); color:var(--surface); }
#screen-simulation .simulation-brief { background:var(--brand-soft); }
#screen-simulation .bubble { background:var(--surface-muted); color:var(--text); }
#screen-simulation .bubble.me { background:var(--brand-soft); color:var(--text); }
#screen-simulation .sim-shell[data-session-mode="voice"] .character { background:var(--surface); }
#screen-simulation .sim-shell[data-session-mode="voice"] .tile-monogram { background:var(--brand-lime); color:var(--text); box-shadow:0 0 0 12px var(--surface),0 0 0 14px var(--border); }
#screen-simulation .sim-shell[data-session-mode="voice"] .captions { background:var(--surface); color:var(--text); }
#screen-simulation .sim-shell[data-session-mode="voice"] .p-id p { color:var(--text); }
.mission-trail li[aria-current="step"] { color:var(--text); border-color:var(--accent); }
.artifact-note { background:var(--surface); border-color:var(--border); box-shadow:6px 6px 0 var(--border); }
.artifact-note.selected { background:var(--brand-soft); border-color:var(--accent); box-shadow:6px 6px 0 var(--text); }
.artifact-note-source { color:var(--text); font-weight:700; }
.evidence-tab[aria-current="true"] { background:var(--brand-lime); color:var(--text); }
.activity-outcome { background:var(--brand-soft); }
#screen-debrief .result-hero { background:var(--brand-soft); }
@media(max-width:650px) {
  .home-path strong { font-size:24px; }
  .home-path-link { font-size:12px; }
  #screen-home .hero .lede { font-size:16px; }
  .rehearsal-hero h1 { font-size:38px; }
}

#screen-simulation .progress-dot { background:transparent; border:1px solid var(--accent); }
#screen-simulation .progress-dot.complete { background:var(--brand-lime); }

/* Full-screen practice: compact chrome, generous conversation, readable controls. */
body.in-simulation #screen-simulation .sim-header { background:var(--surface); }
body.in-simulation #screen-simulation .workspace-heading h1 { font-size:20px; line-height:1.2; letter-spacing:-.025em; }
body.in-simulation #screen-simulation .workspace-heading .eyebrow { font-size:10px; letter-spacing:.06em; }
body.in-simulation #screen-simulation .sim-header > .back-btn { background:var(--brand-lime); border-radius:12px; color:var(--text); }

body.in-simulation #screen-simulation .simulation-brief { background:var(--accent-soft); }
body.in-simulation #screen-simulation .simulation-brief summary { font-size:13px; font-weight:600; color:var(--text); }
body.in-simulation #screen-simulation .session-goal-copy strong { font-size:15px; line-height:1.5; font-weight:400; }
body.in-simulation #screen-simulation .response-progress strong { font-size:12px; }
body.in-simulation #screen-simulation .transcript { background:transparent; }
body.in-simulation #screen-simulation .sim-shell[data-session-mode="text"] .p-id h2 { font-size:18px; }
body.in-simulation #screen-simulation .sim-shell[data-session-mode="text"] .p-id > span { font-size:12px; }
body.in-simulation #screen-simulation .studio-state { font-size:12px; }
body.in-simulation #screen-simulation .response-options button { background:var(--surface); font-size:13px; line-height:1.4; }
body.in-simulation #screen-simulation .response-options button:hover:not(:disabled) { background:var(--brand-lime); border-color:var(--text); }
body.in-simulation #screen-simulation .suggestion-label { font-size:11px; }
body.in-simulation #screen-simulation .sim-footer { background:var(--surface); }
body.in-simulation #screen-simulation .checkpoint { font-size:11px; line-height:1.4; }
@media(max-width:899px) { body.in-simulation #screen-simulation .workspace-heading h1 { font-size:18px; } body.in-simulation #screen-simulation .sim-shell[data-session-mode="voice"] .captions { font-size:18px; line-height:1.45; } }

body.in-simulation #screen-simulation .composer:focus-within { outline:none; border-color:var(--accent); box-shadow:0 0 0 1px var(--accent); }
body.in-simulation #screen-simulation .voice-console p { font-size:12px; line-height:1.4; }
@media(max-width:899px) {
  body.in-simulation #screen-simulation .sim-shell[data-session-mode="voice"] .tile-monogram { font-size:28px; box-shadow:none; }
  body.in-simulation #screen-simulation .sim-shell[data-session-mode="voice"] .p-id p { font-size:12px; line-height:1.4; }
}

body.in-simulation #screen-simulation .sim-shell[data-session-mode="activity"] .sim-header { background:var(--surface); }

body.in-simulation #screen-simulation .sim-shell[data-session-mode="video"] .self-view { background:transparent; color:var(--text-muted); font-size:11px; line-height:1.4; }
body.in-simulation #screen-simulation .sim-shell[data-session-mode="video"] .tile-monogram { font-size:28px; }
body.in-simulation #screen-simulation .sim-shell[data-session-mode="video"] .p-id h2 { font-size:18px; }
body.in-simulation #screen-simulation .sim-shell[data-session-mode="video"] .p-id > span { font-size:12px; }

/* Conversation controls use the same white, lime and charcoal system. */
body.in-simulation #screen-simulation .mode-tabs { background:transparent; }
body.in-simulation #screen-simulation .mode-tabs button { background:var(--brand-lime); color:var(--text); border:0; border-radius:50%; }
body.in-simulation #screen-simulation .mode-tabs button:hover:not(:disabled) { background:var(--brand-lime-hover); }
body.in-simulation #screen-simulation .composer .send { background:var(--brand-lime); color:var(--on-accent); border-color:var(--accent); }
body.in-simulation #screen-simulation .composer .send:hover:not(:disabled) { background:var(--brand-lime-hover); }

#screen-library .library-head { background:var(--brand-soft); border-radius:20px; }
#screen-library .library-head h1, #screen-library .library-head p { color:var(--text); }
#screen-library #filter-row button[aria-pressed="true"] { background:var(--brand-lime); color:var(--text); border-color:var(--text); }
#library-grid .role-card { background:var(--surface); color:var(--text); border-color:var(--text); border-radius:16px; }
#library-grid:not(.list-view) .role-card .card-top { background:transparent; }
#library-grid .role-card .role-icon { background:var(--text); color:var(--surface); }
#library-grid .role-card :is(.role-summary, .scenario-label, .situation-meta, .activity-summary) { color:var(--text); }
#library-grid .role-card .card-actions > .btn.primary { background:var(--brand-lime); color:var(--text); border-color:var(--text); }
#library-grid .role-card .card-actions > .btn.primary:hover { background:var(--brand-lime-hover); }
#library-grid .role-card .save-btn { background:var(--surface); color:var(--text); }
#library-grid .role-card .save-btn[aria-pressed="true"] { background:var(--text); color:var(--surface); }
#library-search { padding:11px 16px; font-size:16px; line-height:24px; }
#library-search:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
#library-grid .role-heading h2 { font-size:22px; line-height:1.2; letter-spacing:-.025em; }
#library-grid .role-card .situation-meta > span { background:transparent; color:var(--text); border:0; }
#library-grid .role-card .card-actions > :nth-child(n) { background:transparent; border-color:transparent; color:var(--text); font-size:12px; }
#library-grid .role-card .card-actions > :nth-child(3):hover { color:var(--text); text-decoration:underline; }
.library-count { color:var(--text-muted); font-size:13px; }

#library-grid .role-card .activity-summary { font-size:13px; }

.toast a { color:inherit; text-decoration:underline; }

/* Career search and filtering. */
#screen-library .library-head { background:var(--brand-soft); color:var(--text); }
#screen-library .library-head p { color:var(--text); }
#screen-library .library-search-row { background:var(--surface); }
#screen-library .library-search-row input { background:var(--surface); border-color:var(--text); }
#screen-library #filter-row .filter-btn { color:var(--text); border-color:var(--text); }
#screen-library #filter-row .filter-btn { background:var(--surface); }
#screen-library #filter-row .filter-btn[aria-pressed="true"] { box-shadow:inset 0 0 0 2px var(--text); }
#library-grid:not(.list-view) .role-card .card-top,
#library-grid.list-view .role-card .card-top { background:var(--brand-soft); }
#library-grid .role-card { border-color:var(--text); }
#library-grid .role-card .save-btn { background:var(--surface); border-color:var(--text); }
#library-grid .role-card .save-btn.saved { background:var(--brand-lime); }

/* Shared treatment across product journeys. */
#screen-landing .landing-copy { background:var(--brand-soft); color:var(--text); }
#screen-landing .landing-copy .lede,
#screen-landing .landing-kicker { color:var(--text); }
#screen-landing .landing-kicker::before { background:var(--brand-lime); }
#screen-landing .landing-role { background:var(--brand-soft); border-color:var(--text); }
#screen-landing .landing-role-label { background:var(--text); color:var(--surface); }
#screen-landing .landing-points li:nth-child(1) .pip { background:var(--brand-lime); }
#screen-landing .landing-points li:nth-child(2) .pip { background:var(--brand-lime); }
#screen-landing .landing-points li:nth-child(3) .pip { background:var(--brand-lime); }
#screen-landing .auth-card,
#screen-recovery .auth-card { background:var(--brand-soft); border-color:var(--text); }
#screen-landing .auth-tabs,
#screen-recovery .auth-tabs { background:var(--surface-muted); }
#screen-landing .btn-google { background:var(--surface); border-color:var(--text); }
#screen-recovery .landing-copy { background:var(--brand-soft); color:var(--text); }
#screen-recovery .landing-copy .lede { color:var(--text); }
#screen-recovery .step-chip { background:var(--brand-lime); color:var(--text); border-color:var(--text); }

#screen-welcome .age-card { background:var(--brand-soft); border-color:var(--text); }
#screen-welcome .step-chip { background:var(--brand-lime); color:var(--text); border-color:var(--text); }
#screen-welcome .age-options > button:nth-child(n) { background:var(--brand-lime); }
#screen-welcome .age-options > button { color:var(--text); border-color:var(--text); }

#screen-home .return-card { background:var(--brand-soft); border-color:var(--text); }
#screen-home .home-explore { background:var(--brand-soft); border-color:var(--text); }
#screen-home .journey-step:nth-child(n) { background:var(--brand-soft); }

#screen-library .library-tools .btn.primary,
#library-grid .role-card .card-actions > .btn.primary { background:var(--brand-lime); color:var(--on-accent); border-color:var(--accent); }
#screen-library .library-tools .btn.primary:hover,

#screen-findjobs .library-head { background:var(--brand-soft); color:var(--text); }
#screen-findjobs .library-head p { color:var(--text); }
#screen-findjobs .cv-job-match { background:var(--brand-soft); border-color:var(--text); }
#screen-findjobs .find-jobs-form { background:var(--brand-soft); border-color:var(--text); }
#screen-findjobs .find-jobs-suggest button:nth-child(n) { background:var(--brand-lime); }
#screen-findjobs .job-search-result:nth-child(n) { background:var(--surface-muted); }
#screen-findjobs .job-search-result:nth-child(n) { background:var(--surface); }

#screen-match .match-lead { background:var(--brand-soft); color:var(--text); }
#screen-match .match-lead .lede { color:var(--text); }
#screen-match .step-chip { background:var(--brand-lime); color:var(--text); border-color:var(--text); }
#screen-match #match-progress { background:#ffffffaa; }
#screen-match #match-progress i { background:var(--text-muted); }
#match-body > .card:not(.evidence-card) { background:var(--brand-soft); border-color:var(--text); }
#match-body .choice-thread button:nth-child(n) { background:var(--brand-lime); }
#match-body .choice-thread button { color:var(--text); border-color:var(--text); }
#match-body .choice-thread button.selected { background:var(--brand-lime); color:var(--on-accent); border-color:var(--accent); }
#match-body > .evidence-card:nth-of-type(n) { background:var(--brand-soft); }
#match-body > .evidence-card { border-color:var(--text); }
#match-body .experiment-card { background:var(--brand-soft); color:var(--text); border-color:var(--text); }
#match-body .experiment-card .card-top { background:transparent; }
#match-body .experiment-card :is(.role-summary,.scenario-label,.situation-meta,.activity-summary) { color:var(--text); }
#match-body .experiment-card .role-icon { background:var(--text); color:var(--surface); }
#match-body .experiment-card .btn.primary { background:var(--brand-lime); color:var(--on-accent); border-color:var(--accent); }

#screen-briefing .job-brief-heading { background:var(--brand-soft); color:var(--text); }
#screen-briefing .job-brief-heading .eyebrow,
#screen-briefing .job-brief-meta { color:var(--text); }
#screen-briefing .job-brief-story > section:first-child { background:var(--brand-soft); }
#screen-briefing .job-brief-task { background:var(--brand-soft); }
#screen-briefing .job-brief-story p { color:var(--text); }
#screen-briefing .brief-launch { background:var(--brand-soft); border-color:var(--text); }
#screen-briefing .brief-launch :is(.eyebrow,.brief-reassurance,#brief-av-note) { color:var(--text); }
#screen-briefing .mode-choice button { background:var(--surface); color:var(--text); border-color:var(--text); }
#screen-briefing .mode-choice button.selected { background:var(--brand-lime); color:var(--on-accent); border-color:var(--accent); }

#screen-debrief .result-hero { background:var(--brand-soft); border-color:var(--text); }
#screen-debrief #evidence-grid .evidence-card:nth-child(n) { background:var(--surface); }
#screen-debrief #evidence-grid .evidence-card { border-color:var(--text); }
#screen-debrief #evidence-grid .evidence-mark { background:var(--text); color:var(--surface); border-color:var(--text); }
#screen-debrief #evidence-grid .quote { background:#ffffff99; border-color:var(--text); }

#screen-reflection .brief-grid > :first-child { background:var(--brand-soft); color:var(--text); }
#screen-reflection .brief-grid > :first-child .lede { color:var(--text); }
#screen-reflection #reflection-form { background:var(--brand-soft); border-color:var(--text); }
#screen-reflection .reflection-scale button:nth-child(n) { background:var(--brand-lime); }
#screen-reflection .reflection-scale button:nth-child(n) { background:var(--surface); }
#screen-reflection .reflection-scale button { color:var(--text); border-color:var(--text); }
#screen-reflection .reflection-scale button.selected { background:var(--brand-lime); color:var(--on-accent); border-color:var(--accent); }

#screen-notebook .notebook-cover { background:var(--brand-soft); color:var(--text); }
#screen-notebook .notebook-cover .lede { color:var(--text); }
#screen-notebook #notebook-content > .notebook-page:nth-child(4n + 1),
#screen-notebook .notebook-grid > .notebook-page:nth-child(n) { background:var(--brand-soft); }
#screen-notebook #notebook-content > .notebook-page:nth-child(4n + 2),
#screen-notebook .notebook-grid > .notebook-page:nth-child(n) { background:var(--surface); }
#screen-notebook #notebook-content > .notebook-page:nth-child(4n + 3),
#screen-notebook .notebook-page,
#screen-notebook > .card { border-color:var(--text); }
#screen-notebook .level-cell:nth-child(n) { background:var(--brand-soft); }
#screen-notebook .level-cell { color:var(--text); border-color:var(--text); }
#screen-notebook .next-card:nth-child(n) { background:var(--brand-soft); }
#screen-notebook .next-card { color:var(--text); border-color:var(--text); }

#screen-compare .compare-lead { background:var(--brand-soft); color:var(--text); }
#screen-compare .compare-lead .lede { color:var(--text); }
#screen-compare .compare-card:nth-child(odd) { background:var(--brand-soft); border-color:var(--text); }
#screen-compare .compare-card:nth-child(even) { background:var(--brand-soft); border-color:var(--text); }
#screen-compare .compare-card:nth-child(odd) .compare-title { background:var(--brand-soft); }
#screen-compare .compare-card:nth-child(even) .compare-title { background:var(--brand-soft); }
#screen-compare .compare-row { border-color:#25252555; }
#screen-compare .compare-locked { background:var(--brand-soft); border-color:var(--text); }

#screen-applications .tool-head { background:var(--brand-soft); color:var(--text); }
#screen-applications .tool-head p { color:var(--text); }
#screen-applications .application-form { background:var(--brand-soft); border-color:var(--text); }
#screen-applications .application-column:nth-child(n) { background:var(--surface); }
#screen-applications .application-column { border-color:var(--text); }

#screen-staff > .tool-head { background:var(--brand-soft); color:var(--text); }
#screen-staff > .tool-head p { color:var(--text); }
#screen-staff #platform-kpis > div:nth-child(n) { background:var(--brand-soft); }
#screen-staff #platform-kpis > div { border-color:var(--text); }
#screen-staff .cohort-create { background:var(--brand-soft); border-color:var(--text); }
#screen-staff .cohort-card:nth-child(odd) { background:var(--brand-soft); border-color:var(--text); }
#screen-staff .cohort-card:nth-child(even) { background:var(--brand-soft); border-color:var(--text); }
#screen-staff > .section-head { background:var(--brand-soft); color:var(--text); }
#screen-staff > .section-head .section-subhead { color:var(--text); }
#screen-staff .company-playbook-form { background:var(--brand-soft); border-color:var(--text); }
#screen-staff .company-playbook-card:nth-child(odd) { background:var(--brand-soft); border-color:var(--text); }
#screen-staff .company-playbook-card:nth-child(even) { background:var(--brand-soft); border-color:var(--text); }

#screen-rehearse #rehearsal-form > .card-top { background:var(--brand-soft); }
#screen-rehearse .rehearsal-summary { background:var(--brand-soft); border-color:var(--text); }
#screen-rehearse #rehearsal-history { background:var(--brand-soft); border-color:var(--text); }
#screen-rehearse #interview-report { background:var(--brand-soft); border-color:var(--text); }
#screen-rehearse #interview-report .evidence-card:nth-child(n) { background:var(--brand-soft); }

/* White content surfaces with a single lime brand accent. */

#screen-landing .landing-copy { background:var(--surface); }
#screen-landing .landing-role { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-landing .auth-card,
#screen-recovery .auth-card { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-recovery .landing-copy { background:var(--surface); }
#screen-welcome .age-card { background:var(--surface); border-color:var(--border); }
#screen-welcome .age-options > button:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-welcome .age-options > button.selected { background:var(--brand-lime); color:var(--on-accent); border-color:var(--accent); }

#screen-home .return-card { background:var(--surface); border-color:var(--border); }
#screen-home .home-explore { background:var(--surface); border-color:var(--border); }
#screen-home .journey-step:nth-child(n) { background:transparent; }
#screen-home .journey-step:nth-child(n) { border-top:1px solid var(--border); }

#screen-findjobs .library-head { background:var(--surface); }
#screen-findjobs .cv-job-match { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-findjobs .find-jobs-form { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-findjobs .find-jobs-suggest button:nth-child(n) { background:var(--surface); }
#screen-findjobs .find-jobs-suggest button:nth-child(n) { border-color:var(--border); }
#screen-findjobs .job-search-result:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-findjobs .job-search-result:nth-child(4n + 1) { border-left:1px solid var(--border); }
#screen-findjobs .job-search-result:nth-child(4n + 2) { border-left:1px solid var(--border); }
#screen-findjobs .job-search-result:nth-child(4n + 3) { border-left:1px solid var(--border); }
#screen-findjobs .job-search-result:nth-child(4n) { border-left:1px solid var(--border); }

#screen-match .match-lead { background:var(--surface); border-left:0; }
#screen-match .step-chip { background:var(--surface); border-color:var(--border); }
#screen-match #match-progress { background:var(--surface); }
#match-body > .card:not(.evidence-card) { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#match-body .choice-thread button:nth-child(n) { background:var(--surface); color:var(--text); border-color:var(--border); }
#match-body .choice-thread button:hover:not(:disabled) { background:var(--surface); border-color:var(--accent); }
#match-body > .evidence-card:nth-of-type(n) { background:var(--surface); border-color:var(--border); }
#match-body > .evidence-card:nth-of-type(n) { border-top:1px solid var(--border); }
#match-body .experiment-card { background:var(--surface); color:var(--text); border-color:var(--border); }
#match-body .experiment-card .card-top { background:var(--brand-soft); }
#match-body .experiment-card .role-icon { background:var(--surface); color:var(--text); border:1px solid var(--text); }

#screen-briefing .job-brief-heading { background:var(--surface); }
#screen-briefing .job-brief-story > section:first-child { background:var(--surface); border-left:1px solid var(--border); }
#screen-briefing .job-brief-task { background:var(--surface); border-left:1px solid var(--border); }
#screen-briefing .brief-launch { background:var(--surface); border-color:var(--border); }

#screen-debrief .result-hero { background:var(--surface); border-color:var(--border); border-left:1px solid var(--border); }
#screen-debrief #evidence-grid .evidence-card:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-debrief #evidence-grid .evidence-card:nth-child(n) { border-top:1px solid var(--border); }
#screen-debrief #evidence-grid .quote { background:var(--surface-muted); border-color:var(--border); }

#screen-reflection .brief-grid > :first-child { background:var(--surface); }
#screen-reflection #reflection-form { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-reflection .reflection-scale button:nth-child(n) { background:var(--surface); color:var(--text); border-color:var(--border); }
#screen-reflection .reflection-scale button:hover:not(:disabled) { background:var(--surface); }

#screen-notebook .notebook-cover { background:var(--surface); }
#screen-notebook #notebook-content > .notebook-page:nth-child(n),
#screen-notebook .notebook-grid > .notebook-page:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-notebook #notebook-content > .notebook-page:nth-child(4n + 1),
#screen-notebook .notebook-grid > .notebook-page:nth-child(n) { border-top:1px solid var(--border); }
#screen-notebook #notebook-content > .notebook-page:nth-child(4n + 2),
#screen-notebook #notebook-content > .notebook-page:nth-child(4n + 3),
#screen-notebook .level-cell:nth-child(n) { background:var(--surface); color:var(--text); border-color:var(--border); }
#screen-notebook .level-cell:nth-child(n) { border-top:1px solid var(--border); }
#screen-notebook .next-card:nth-child(n) { background:var(--surface); color:var(--text); border-color:var(--border); }
#screen-notebook .next-card:nth-child(n) { border-top:1px solid var(--border); }

#screen-compare .compare-lead { background:var(--surface); }
#screen-compare .compare-card:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-compare .compare-card:nth-child(odd) { border-top:1px solid var(--border); }
#screen-compare .compare-card:nth-child(even) { border-top:1px solid var(--border); }
#screen-compare .compare-card:nth-child(odd) .compare-title { background:var(--surface); }
#screen-compare .compare-card:nth-child(even) .compare-title { background:var(--surface); }
#screen-compare .compare-locked { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }

#screen-applications .tool-head { background:var(--surface); }
#screen-applications .application-form { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-applications .application-column:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-applications .application-column:nth-child(n) { border-top:1px solid var(--border); }

#screen-staff > .tool-head { background:var(--surface); }
#screen-staff #platform-kpis > div:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-staff #platform-kpis > div:nth-child(n) { border-top:1px solid var(--border); }
#screen-staff .cohort-create { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-staff .cohort-card:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-staff .cohort-card:nth-child(odd) { border-top:1px solid var(--border); }
#screen-staff .cohort-card:nth-child(even) { border-top:1px solid var(--border); }
#screen-staff > .section-head { background:var(--surface); }
#screen-staff .company-playbook-form { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-staff .company-playbook-card:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-staff .company-playbook-card:nth-child(odd) { border-top:1px solid var(--border); }
#screen-staff .company-playbook-card:nth-child(even) { border-top:1px solid var(--border); }

#screen-rehearse .rehearsal-summary { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-rehearse #rehearsal-history { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-rehearse #interview-report { background:var(--surface); border-color:var(--border); border-top:1px solid var(--border); }
#screen-rehearse #interview-report .evidence-card:nth-child(n) { background:var(--surface); border-color:var(--border); }
#screen-rehearse #interview-report .evidence-card:nth-child(n) { border-top:1px solid var(--border); }

/* Secondary actions remain recognisable controls at rest. */
.btn.ghost, .back-btn, .auth-forgot, .profile-links button { background:var(--surface); border:1px solid var(--border); }
#library-grid .role-card .card-actions > :nth-child(3) { background:var(--surface); border-color:var(--border); }
#app-footer button.linklike { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-control); }
.mobile-menu { background:#00000066; border:0; border-radius:0; box-shadow:none; }
.mm-panel { background:var(--surface); border:1px solid var(--border); border-radius:20px; box-shadow:var(--shadow-popover); }
.mm-title { font-size:20px; font-weight:700; }
.mm-link { background:var(--surface); color:var(--text); border-radius:12px; }
.mm-link[aria-current="page"] { background:var(--brand-soft); border-color:var(--text); }
.mm-secondary .mm-link { font-size:13px; }

/* Let interview setup read as one spacious workspace instead of nested cards. */
#screen-rehearse .rehearsal-hero {
  background: transparent;
  border-radius: 0;
}
#screen-rehearse #interview-quickstart {
  background: transparent;
  border: 0;
  border-block: 1px solid var(--border);
  border-radius: 0;
}
#screen-rehearse #rehearsal-form {
  background: transparent;
  border: 0;
  border-block: 1px solid var(--border);
}
#screen-rehearse #rehearsal-form > .card-top {
  border-bottom: 0;
}
#screen-rehearse .interview-advert-details {
  border-inline: 0;
  border-radius: 0;
}
