/* Examplar shared visual language. Loaded last by every hosted page.
   Page styles retain layout; these tokens own the palette and typography. */
:root, .live-card-preview[data-theme="light"] {
  color-scheme: light;
  --site-bg: #eceef1; --site-surface: #fff; --site-soft: #f5f6f8;
  --site-ink: #1b222c; --site-muted: #4f5967; --site-faint: #5f6876;
  --site-line: #dde1e6; --site-border: #c6ccd4;
  --site-accent: #0f766e; --site-link: #0b5d57; --site-tint: #e3f1ef; --site-on-accent: #fff;
  --site-nav: #1d232f; --site-nav-line: #313947; --site-nav-text: #b3bac6;
  --site-good: #1f754b; --site-good-bg: #ecf6f0;
  --site-bad: #a32939; --site-bad-bg: #faeeee;
  --site-warn: #815916; --site-warn-bg: #fdf6e7;
  --site-overlay: rgb(17 22 30 / .55);
  --site-font: 'Segoe UI Variable Text', 'Segoe UI', system-ui, -apple-system, sans-serif;
}
:root[data-theme="dark"], body.dark-mode, .live-card-preview[data-theme="dark"] {
  color-scheme: dark;
  --site-bg: #11151b; --site-surface: #191f28; --site-soft: #1f2630;
  --site-ink: #e5e9ef; --site-muted: #a9b2bf; --site-faint: #8a93a0;
  --site-line: #29313c; --site-border: #3a4350;
  --site-accent: #3fb8a8; --site-link: #74d3c6; --site-tint: #16302d; --site-on-accent: #062320;
  --site-nav: #161b24; --site-nav-line: #2b3340;
  --site-good: #69c895; --site-good-bg: #1a2c23;
  --site-bad: #f09aa5; --site-bad-bg: #2f2022;
  --site-warn: #dfb66b; --site-warn-bg: #2e271a;
  --site-overlay: rgb(4 6 10 / .66);
}
/* Compatibility aliases keep the real application controllers and page layouts.
   Resolve on body too: inherited sheets use both body.dark-mode and data-theme. */
:root, html body, html body.dark-mode, html body.exam-landing, html body.exam-landing.dark-mode, .live-card-preview {
  --h-bg: var(--site-bg); --h-surface: var(--site-surface); --h-surface-soft: var(--site-soft); --h-panel: var(--site-bg);
  --h-text: var(--site-ink); --h-text-soft: var(--site-muted); --h-text-faint: var(--site-faint);
  --h-line: var(--site-line); --h-line-strong: var(--site-border);
  --h-accent: var(--site-accent); --h-accent-deep: var(--site-link); --h-accent-tint: var(--site-tint);
  --h-accent-chip-border: var(--site-border); --h-btn-primary-text: var(--site-on-accent);
  --h-good: var(--site-good); --h-good-tint: var(--site-good-bg); --h-bad: var(--site-bad); --h-bad-tint: var(--site-bad-bg);
  --h-flag: var(--site-warn); --h-flag-tint: var(--site-warn-bg); --h-overlay: var(--site-overlay);
  --h-card-shadow: none; --h-font-num: var(--site-font);
  --bg: var(--site-bg); --surface: var(--site-surface); --surface-soft: var(--site-soft);
  --text: var(--site-ink); --text-soft: var(--site-muted); --text-faint: var(--site-faint);
  --line: var(--site-line); --line-strong: var(--site-border);
  --accent: var(--site-accent); --accent-deep: var(--site-link); --accent-tint: var(--site-tint); --accent-chip-border: var(--site-border);
  --good: var(--site-good); --good-tint: var(--site-good-bg); --bad: var(--site-bad); --bad-tint: var(--site-bad-bg);
  --flag: var(--site-warn); --flag-tint: var(--site-warn-bg); --btn-primary-text: var(--site-on-accent);
  --overlay: var(--site-overlay); --card-shadow: none; --font-ui: var(--site-font); --font-num: var(--site-font);
  --rail-bg: var(--site-nav); --rail-line: var(--site-nav-line); --rail-text: var(--site-nav-text);
  --rail-text-strong: #eef1f5; --accent-bright: #2dd4bf;
  --live-bg: var(--site-bg); --live-surface: var(--site-surface); --live-surface-soft: var(--site-soft);
  --live-ink: var(--site-ink); --live-muted: var(--site-muted); --live-line: var(--site-line);
  --live-accent: var(--site-accent); --live-accent-ink: var(--site-on-accent); --live-soft: var(--site-tint);
  --live-input-line: var(--site-border); --live-error: var(--site-bad); --live-error-bg: var(--site-bad-bg);
  --primary: var(--site-accent); --primary-dark: var(--site-link); --ink: var(--site-ink); --muted: var(--site-muted);
  --card: var(--site-surface); --card-border: var(--site-line); --page-bg: var(--site-bg); --shadow: none;
}
html { background: var(--site-bg); scroll-padding-top: 80px; }
html body, html body.dark-mode, html body.exam-landing {
  background: var(--site-bg); color: var(--site-ink); font-family: var(--site-font); font-size: 15px; line-height: 1.5;
}
button, input, select, textarea { font-family: inherit; }
h1,h2,h3 { text-wrap: balance; }
p { text-wrap: pretty; }
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline: 2px solid var(--site-accent); outline-offset: 3px; }
:where(.cr-topbar,.live-header,.cr-rail,.site-footer) :focus-visible { outline-color: #2dd4bf; }
:where(input,select,textarea) { accent-color: var(--site-accent); }
:where(.live-button,.btn-primary,.exam-card-start) { border-radius: 5px; }
.cr-topbar,.live-header { background: var(--site-nav); box-shadow: none; }
.cr-topnav,.live-topnav { max-width: 1200px; min-height: 56px; }
.cr-topnav-links a,.live-header nav a { white-space: nowrap; }
.live-layout { max-width: 1200px; padding-top: 40px; }
.live-page h1 { font-size: clamp(1.75rem,3vw,2rem); letter-spacing: -.025em; }
.live-panel,.landing-card { box-shadow: none; border-radius: 12px; }
.live-button:hover { filter: none; background: var(--site-link); }
.live-button.secondary:hover,.live-button.text:hover { background: var(--site-soft); }
.live-access-gate { font-family: var(--site-font)!important; }
html body[data-site-footer] .site-footer {
  --footer-bg: var(--site-surface); --footer-text: var(--site-muted); --footer-strong: var(--site-ink);
  --footer-line: var(--site-line); --footer-accent: var(--site-link); font-family: var(--site-font);
}
html body .live-table th { background: var(--site-soft); }
html body .live-badge { color: var(--site-link); }
html body .live-badge.muted { background: var(--site-soft); color: var(--site-muted); }
html body .live-admin-tabs button[aria-selected=true] { background: var(--site-tint); color: var(--site-link); }

/* Home: a confident introduction leads directly into finding an exam. */
.home-page .container { max-width: 1200px; padding-inline: 16px; }
.exam-runtime-page .container { max-width: none; padding: 0; }
.cr-main { min-width: 0; }
.cr-hero-zone { width: auto; margin: 0; background: none; border: 0; color: var(--site-ink); }
.hero-header.hero-banner { padding: 36px 0 16px; background: none; border: 0; box-shadow: none; }
.hero-banner__inner { display: block; max-width: none; padding: 0; }
.hero-headline { color: var(--site-ink); font-size: 30px; font-weight: 750; letter-spacing: -.025em; line-height: 1.2; max-width: none; }
.hero-subtitle { color: var(--site-muted); max-width: 65ch; font-size: 15px; line-height: 1.5; margin-top: 8px; }
.home-page .hero-header.hero-banner { padding: 48px 0 32px; }
.home-page .hero-branding { display: grid; grid-template-columns: 1.25fr 1fr; gap: 48px; align-items: end; }
.home-page .hero-headline { font-size: clamp(36px,4vw,52px); letter-spacing: -.035em; line-height: 1.08; max-width: 21ch; margin: 0; text-wrap: balance; }
.home-page .hero-subtitle { max-width: 46ch; font-size: 17px; line-height: 1.6; margin: 0 0 2px; text-wrap: pretty; }
.home-page .cr-topnav-links>a[data-live-account] { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 0 16px; border-radius: 6px; background: var(--site-accent); color: var(--site-on-accent); font-weight: 650; }
.home-page .cr-topnav-links>a[data-live-account]:hover { background: var(--site-link); }
.hero-proof { display: none; }
.cr-hero-zone::before,.cr-hero-zone::after,.hero-banner::before,.hero-banner::after { display: none; }
.home-board { gap: 24px; }
.home-board>.content-grid { order: 0; }
.home-board>.home-steps { order: 2; }
.home-board>.roadmap-entry-card { order: 3; }
.home-board>.home-tools { order: 4; }
body .home-board .home-step { background: none; border-radius: 0; box-shadow: none; }
.home-steps { background: transparent; border: 0; border-radius: 0; padding: 0; gap: 24px; }
.home-step { background: none; box-shadow: none; border: 0; padding: 0; }
.home-step-n { background: none; color: var(--site-faint); border: 0; font: 600 15px var(--site-font); width: 24px; }
.home-step h3 { font-size: 15px; color: var(--site-ink); }
.home-step p { color: var(--site-muted); font-size: 14px; }
.roadmap-entry-card { background: transparent; box-shadow: none; border: 0; border-block: 1px solid var(--site-line); border-radius: 0; padding: 16px 0; }
.roadmap-entry-card:hover { transform: none; background: var(--site-soft); }
.roadmap-entry-card>i { display: none; }
.content-grid { display: block; }
.exam-library-section { padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
.section-header h2 { font-size: 18px; }
.section-header h2>i { display: none; }
.library-controls { background: transparent; border: 0; padding: 0; }
.library-controls.filters-collapsed .library-search { display: flex; max-height: none; opacity: 1; visibility: visible; }
.library-search { max-width: 420px; }
.home-page .library-control-topline { display: flex; align-items: stretch; gap: 12px; margin-bottom: 12px; }
.home-page .library-search { flex: 1; min-width: 0; max-width: none; min-height: 48px; }
.home-page .library-search input { background: transparent; }
.home-page .library-filter-toggle { flex: none; min-height: 48px; border-radius: 8px; }
.library-search input { background: var(--site-surface); border-color: var(--site-border); border-radius: 8px; }
.library-result-count,.section-subtitle { color: var(--site-faint); }
.exam-grid { grid-template-columns: repeat(auto-fill,minmax(310px,1fr)); gap: 16px; }

/* Cards also render in the administrative catalogue preview. */
.exam-card {
  --card-accent: var(--site-accent); --card-tint: var(--site-tint);
  position: relative; display: flex; flex-direction: column; gap: 0;
  padding: 22px; border: 1px solid var(--site-line); border-radius: 12px;
  background: var(--site-surface); color: var(--site-ink); box-shadow: none; text-align: left;
  transition: border-color 120ms; overflow: visible;
}
.exam-card::before,.exam-card::after { display: none; }
.exam-card:hover { transform: none; background: var(--site-surface); border-color: var(--site-border); box-shadow: none; }
.exam-card.selected { background: var(--site-surface); border-color: var(--site-accent); box-shadow: 0 0 0 1px var(--site-accent); }
.exam-card-head { display: flex; align-items: baseline; gap: 12px; justify-content: space-between; padding-right: 24px; }
.exam-card .exam-title { margin: 0; font: 750 30px/1.1 var(--site-font); letter-spacing: -.025em; color: var(--site-ink); }
.exam-card .exam-title button { all: unset; cursor: pointer; }
.exam-card .exam-title button:focus-visible { outline: 2px solid var(--site-accent); outline-offset: 4px; }
.exam-card .exam-badge { position: static; display: block; background: none; padding: 0; border: 0; border-radius: 0; font: 400 13px/1.5 var(--site-font); color: var(--site-faint); text-transform: none; letter-spacing: normal; }
.exam-card .exam-subtitle { min-height: 2.7em; margin: 10px 0 2px; font-size: 15px; line-height: 1.35; color: var(--site-ink); }
.exam-card-provider { margin: 0 0 18px; font-size: 13px; color: var(--site-faint); }
.exam-card-facts { margin: 0; padding-top: 14px; border-top: 1px solid var(--site-line); font-size: 14px; color: var(--site-muted); }
.exam-card-facts strong { color: var(--site-ink); font-weight: 600; }
.exam-card .exam-total-info,.exam-card .exam-study-info { margin: 4px 0 0; padding: 0; border: 0; background: none; color: var(--site-faint); font: 400 13px/1.5 var(--site-font); }
.exam-card .exam-card-labs { align-self: flex-start; margin: 8px 0 0; padding: 0; border: 0; background: none; color: var(--site-link); font-size: 13px; text-decoration: underline; }
.exam-card .exam-card-actions { display: grid; grid-template-columns: 1fr; grid-template-rows: 38px 38px; justify-items: start; gap: 8px; margin-top: auto; padding-top: 18px; }
.exam-card .exam-card-start,.exam-card .exam-card-study { width: auto; flex: none; min-height: 38px; padding: 8px 16px; font-size: 14px; font-weight: 600; border-radius: 5px; }
.exam-card .exam-card-start { background: var(--site-accent); color: var(--site-on-accent); border: 1px solid transparent; }
.exam-card .exam-card-study { background: none; color: var(--site-ink); border: 1px solid var(--site-border); }
.exam-card .exam-card-unlock { width: auto; flex: none; background: none; color: var(--site-link); padding: 6px 0; border: 0; border-radius: 0; font-size: 14px; text-decoration: underline; min-height: 32px; }
.exam-card .exam-delete { width: 36px; height: 36px; top: 10px; right: 8px; color: var(--site-faint); background: none; border: 0; opacity: 0; }
.exam-card:hover .exam-delete,.exam-card .exam-delete:focus-visible { opacity: 1; }
.exam-card .exam-feature { color: var(--site-faint); font-size: 13px; margin-top: 6px; }
.exam-card[class*="exam-c"] .exam-badge { background: none; color: var(--site-faint); border: 0; }
.exam-card .exam-card-labs { width: auto; text-align: left; justify-content: flex-start; }
.exam-card .exam-card-offer { margin-top: 10px; padding: 10px 0; background: none; border: 0; border-top: 1px solid var(--site-line); }
.exam-card .offer-label { text-transform: none; letter-spacing: normal; }

/* Details, purchase, import, review, diagnostics and first-session dialogs. */
.exam-details-placeholder { grid-column: 1/-1; border: 1px solid var(--site-border); box-shadow: none; border-radius: 12px; }
.exam-details-header { background: var(--site-surface); }
.current-exam-indicator { display: none; }
.exam-details-title-area h2 { font-size: 22px; }
.exam-details-title-area h2:focus-visible { outline: 2px solid var(--site-accent); outline-offset: 4px; }
.exam-details-placeholder .module-icon { display: none; }
.module-domain-label { list-style: none; font-weight: 650; font-size: 14px; margin-top: 16px; padding: 10px 0 4px; color: var(--site-ink); }
.module-domain-label span { float: right; color: var(--site-faint); font-weight: 400; }
.module-qcount-badge { color: var(--site-faint); background: none; font-size: 13px; }
.pro-modal { width: min(520px,calc(100vw - 32px)); background: var(--site-surface); border: 1px solid var(--site-line); border-radius: 12px; padding: 28px; color: var(--site-ink); }
.pro-modal-title { font-size: 22px; padding-right: 32px; color: var(--site-ink); }
.pro-modal-sub { color: var(--site-muted); font-size: 15px; }
.pro-modal-close { color: var(--site-faint); width: 40px; height: 40px; }
.purchase-compare { border-collapse: collapse; width: 100%; margin: 20px 0; font-size: 14px; }
.purchase-compare th,.purchase-compare td { padding: 10px 0; border-bottom: 1px solid var(--site-line); text-align: right; }
.purchase-compare th { color: var(--site-faint); font-weight: 400; font-size: 13px; }
.purchase-compare :first-child { text-align: left; }
.purchase-rules { font-size: 14px; color: var(--site-muted); border-top: 1px solid var(--site-line); margin-top: 20px; padding-top: 16px; }
.purchase-rules ul { padding-left: 18px; display: grid; gap: 6px; }
.pro-modal-buy { background: var(--site-accent); color: var(--site-on-accent); border-radius: 5px; min-height: 44px; }
.pro-modal-import { color: var(--site-link); }
.purchase-rules a { color: var(--site-link); }
.pro-modal .pro-modal-import { border: 0; background: none; font-size: 14px; font-weight: 400; }
.pro-modal-offer { background: var(--site-tint); box-shadow: none; border-color: var(--site-line); }
.examplar-toast { background: var(--site-ink); color: var(--site-surface); border-radius: 8px; }

/* Editorial and utility pages use the same reading rhythm. */
.exam-landing .landing-hero { background: transparent; box-shadow: none; border: 0; color: var(--site-muted); padding: 24px 0; }
.exam-landing .landing-hero h1,.exam-landing .landing-hero strong { color: var(--site-ink); }
.exam-landing h1 { font-size: clamp(1.75rem,3.2vw,2.25rem); letter-spacing: -.025em; }
.exam-landing .hero,.exam-landing .guide-hero { background: var(--site-surface); color: var(--site-muted); border: 1px solid var(--site-line); box-shadow: none; border-radius: 12px; }
.exam-landing .hero h1,.exam-landing .guide-hero h1 { color: var(--site-ink); font-size: clamp(1.75rem,3.2vw,2.25rem); line-height: 1.2; letter-spacing: -.025em; }
.exam-landing .landing-kicker,.exam-landing .guide-hero .landing-kicker { color: var(--site-faint); background: none; border: 0; border-radius: 0; padding: 0; font: 400 14px/1.5 var(--site-font); letter-spacing: normal; text-transform: none; }
.exam-landing .guide-updated { color: var(--site-faint); font: 400 13px/1.5 var(--site-font); }
.exam-landing .guide-verdict { border-left: 1px solid var(--site-line); }
.exam-landing .guide-verdict strong,.exam-landing.dark-mode .guide-verdict strong { color: var(--site-ink); }
.exam-landing .guide-table th { background: var(--site-soft); }
.exam-landing .guide-step-label,.exam-landing.dark-mode .guide-step-label { color: var(--site-link); font: 650 14px/1.5 var(--site-font); text-transform: none; }
.exam-landing .guide-cta-block { text-align: left; background: var(--site-surface); }
.exam-landing .guide-cta-block p { margin-left: 0; }
.exam-landing .hub-card:hover { transform: none; box-shadow: none; border-color: var(--site-border); }
.exam-landing .hub-badge { color: var(--site-faint); background: none; padding: 0; font-size: 13px; font-weight: 400; text-transform: none; letter-spacing: normal; }
.exam-landing .landing-trust-line { color: var(--site-faint); font: 400 13px/1.5 var(--site-font); }
.exam-landing .landing-cta { background: var(--site-accent); color: var(--site-on-accent); border-radius: 5px; }
.exam-landing .landing-cta-ghost { color: var(--site-ink); border-color: var(--site-border); border-radius: 5px; }
.exam-landing .guide-card-label,.exam-landing.dark-mode .guide-card-label { color: var(--site-faint); font: 600 13px/1.5 var(--site-font); letter-spacing: normal; text-transform: none; }
.exam-landing .guide-card i { color: var(--site-link); }
.exam-landing .guide-card:hover { border-color: var(--site-border); }
.legal-page { width: min(1120px,calc(100% - 32px)); }
.legal-content,.lab-detail { overflow-wrap: anywhere; }
html body .legal-hero { background: var(--site-surface); border: 1px solid var(--site-line); box-shadow: none; }
html body .legal-kicker { color: var(--site-faint); background: none; border: 0; padding: 0; border-radius: 0; text-transform: none; letter-spacing: normal; font: 400 14px/1.5 var(--site-font); }
.editor-validation { background: var(--site-soft); color: var(--site-ink); border-color: var(--site-border); }
.editor-validation-ok { background: var(--site-good-bg); color: var(--site-good); border-color: var(--site-line); }
.editor-validation-warning { background: var(--site-warn-bg); color: var(--site-warn); border-color: var(--site-line); }
.editor-validation-error { background: var(--site-bad-bg); color: var(--site-bad); border-color: var(--site-line); }
.form .row label { font-size: 13px; text-transform: none; letter-spacing: normal; }
.form-header-status,.editor-save-status { color: var(--site-good); }
.form-header-status { background: var(--site-good-bg); border-color: var(--site-line); }
.form-header-status.is-dirty,.editor-save-status.is-dirty { color: var(--site-warn); background: var(--site-warn-bg); }
html body .live-access-gate { background: var(--site-surface)!important; color: var(--site-ink)!important; border-color: var(--site-border)!important; }
html body .live-access-gate h1 { color: var(--site-ink)!important; }
html body .live-access-gate p { color: var(--site-muted)!important; }
html body .live-access-gate a { color: var(--site-link)!important; }
html body .live-access-gate .live-button { background: var(--site-accent)!important; color: var(--site-on-accent)!important; }
.exam-landing :is(.landing-card,.landing-panel,.guide-card,.faq-item) { background: var(--site-surface); border-color: var(--site-line); box-shadow: none; }
.roadmap-global-progress,.roadmap-track-card .rt-count,.roadmap-node .rn-code { font-family: var(--site-font); opacity: 1; }
.roadmap-track-tagline { opacity: 1; color: var(--site-muted); }
.roadmap-track-card { background: var(--site-surface); border-color: var(--site-line); }
.roadmap-node .rn-row { background: var(--site-surface); }
.roadmap-node.is-passed .rn-dot { color: var(--site-on-accent); }
.labs-nav-group-label { text-transform: none; letter-spacing: normal; opacity: 1; font-size: 13px; }
.cr-pack-sub { opacity: 1; }
.site-notification { position: fixed; top: 20px; right: 20px; padding: 16px 20px; max-width: min(400px,calc(100vw - 32px)); background: var(--site-tint); color: var(--site-ink); border: 1px solid var(--site-border); border-radius: 8px; z-index: 9999; }
html body:is([data-site-footer],.dark-mode) .analytics-privacy-overlay, html body:is([data-site-footer],.dark-mode) .analytics-consent-banner,
html body .analytics-privacy-overlay, html body .analytics-consent-banner {
  --privacy-surface: var(--site-surface); --privacy-text: var(--site-ink); --privacy-muted: var(--site-muted);
  --privacy-line: var(--site-border); --privacy-soft: var(--site-soft); --privacy-accent: var(--site-accent);
  --privacy-accent-ink: var(--site-on-accent); --privacy-danger: var(--site-bad);
  color-scheme: inherit; font-family: var(--site-font);
}
html body .analytics-privacy-button { background: var(--site-surface); color: var(--site-muted); border: 1px solid var(--site-line); border-radius: 5px; font-size: 12px; box-shadow: none; }
.content-grid>.sidebar { position: static; display: grid; grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); gap: 16px; margin-top: 24px; }
.getting-started-card,.progress-section,.home-tools,.hero-preview { background: var(--site-surface); border: 1px solid var(--site-line); border-radius: 12px; box-shadow: none; }
.getting-started-card { text-align: left; }
.getting-started-card .gs-icon { display: none; }
.getting-started-card h3 { color: var(--site-ink); font-size: 18px; }
.getting-started-card p,.gs-points { color: var(--site-muted); }
.gs-cta { background: var(--site-accent); color: var(--site-on-accent); border-radius: 5px; }
.home-tools { padding: 22px 24px; }
.exam-details-content .info-card-container { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.exam-details-content .info-card { background: none; border: 0; padding: 0; display: flex; flex-direction: row; gap: 6px; align-items: baseline; box-shadow: none; }
.exam-details-content .info-card>i,.exam-details-section>h3>i { display: none; }
.exam-details-content .info-card>span { font-size: 15px; color: var(--site-ink); font-weight: 600; }
.exam-details-content .info-card>small { font-size: 13px; color: var(--site-faint); }
.exam-details-section h3 { font-size: 16px; }
.exam-details-section h3,.exam-details-section h4,.exam-details-content .info-card small,.exam-details-content .progress-label { text-transform: none; letter-spacing: normal; font-weight: 600; }
.exam-details-section>h3 { color: var(--site-ink); }
.exam-details-content .info-card-container { border: 0; background: none; }
.exam-details-content .progress-label { font-size: 13px; color: var(--site-faint); }
.details-exam-taxonomy .exam-taxonomy { gap: 6px 12px; }
.details-exam-taxonomy .exam-taxonomy-chip { border: 0; background: none; padding: 0; font-size: 13px; color: var(--site-faint); }
.details-exam-taxonomy .exam-taxonomy-chip i { display: none; }
.modules-list .module-domain-label { display: block; background: none; border: 0; border-radius: 0; box-shadow: none; cursor: default; }
.module-domain-label label { display: block; cursor: pointer; }
.module-domain-label input { width: 16px; height: 16px; margin-right: 6px; }
.modules-list.selectable-list li[data-module] { background: none; border: 0; border-radius: 0; padding: 7px 0 7px 24px; }
.modules-list.selectable-list li[data-module]:hover { background: var(--site-soft); }
#module-selection-summary { color: var(--site-muted); font-size: 13px; margin: 8px 0; }
@media (hover:none) { .exam-card .exam-delete { opacity: 1; width: 44px; height: 44px; } }
@media (max-width:720px) {
  .exam-runtime-page .cr-layout { grid-template-columns: minmax(0,1fr); }
  .exam-runtime-page .navigation-buttons { gap: 8px; padding-inline: 12px; }
  .exam-runtime-page .navigation-buttons .btn { min-width: 0; padding-inline: 12px; }
  .home-page .container { padding-inline: 16px; }
  .hero-header.hero-banner { padding-top: 24px; }
  .hero-headline { font-size: 28px; }
  .home-page .hero-header.hero-banner { padding: 28px 0 24px; }
  .home-page .hero-branding { grid-template-columns: 1fr; gap: 16px; }
  .home-page .hero-headline { font-size: 36px; max-width: 23ch; }
  .home-page .hero-subtitle { font-size: 16px; max-width: 52ch; margin: 0; }
  .exam-grid { grid-template-columns: minmax(0,1fr); }
  .exam-card { padding: 20px; }
  .cr-topnav,.live-topnav { padding: 10px 16px; gap: 8px 16px; flex-wrap: wrap; }
  .cr-topnav-links,.live-header nav { display: flex; flex-wrap: wrap; gap: 4px 14px; }
  .cr-topnav-links>a,.live-header nav>a { display: inline-flex; align-items: center; min-height: 36px; font-size: 13px; }
  .home-steps { grid-template-columns: 1fr; gap: 12px; }
  .live-layout { padding-inline: 16px; }
  .pro-modal { padding: 24px 20px; }
}
@media(max-width:480px) {
  .home-page .cr-topnav { display: grid; grid-template-columns: 1fr; gap: 12px; }
  .home-page .cr-topnav-links { display: flex; justify-content: space-between; gap: 8px; width: 100%; }
  .home-page .cr-topnav-links>a { font-size: 12px; min-height: 44px; }
  .home-page .cr-topnav-links>a[data-live-account] { padding-inline: 10px; min-height: 44px; }
  .home-page .cr-topnav .theme-toggle { width: 36px; height: 44px; }
  .home-page .hero-headline { font-size: 34px; }
  .home-page .library-control-topline { gap: 8px; }
  .home-page .library-filter-toggle { padding-inline: 10px; gap: 6px; }
  .home-page .library-filter-toggle>i { display: none; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation: none!important; transition: none!important; scroll-behavior: auto!important; }
}
/* The personal editor keeps its storage boundary visible in both themes. */
.editor-notice { margin: 20px 0; padding: 20px; background: var(--surface); color: var(--ink); border: 1px solid var(--line); border-left: 4px solid var(--accent); border-radius: 8px; }
.editor-notice h2 { margin: 0 0 8px; font-size: 18px; }
.editor-notice p { margin: 8px 0 0; line-height: 1.6; }
.editor-notice [id="editor-session-actions"] { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 12px; }
.editor-notice [hidden], #editor-workspace[hidden] { display: none !important; }
