@font-face {
  font-family: "Mona Sans";
  src: url("fonts/mona-sans-latin-wght.woff2") format("woff2");
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
}
:root {
  color-scheme: dark;
  font-family: "Mona Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --canvas: #070d1c;
  --panel: #102344;
  --panel-deep: #0a152c;
  --text: #edf3ff;
  --muted: #a6b7d4;
  --sky: #63b8ff;
  --periwinkle: #9c9fff;
  --success: #83e3cf;
  --warning: #f2ce8f;
  --danger: #ffa69d;
  --line: rgba(139,179,236,.22);
  --line-soft: rgba(139,179,236,.12);
  --radius: 22px;
  --ease: cubic-bezier(.22,1,.36,1);
  background: var(--canvas);
  color: var(--text);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
* { box-sizing: border-box; }
[hidden]{display:none!important}
html { scroll-behavior: smooth; scroll-padding-top: 94px; }
body { margin: 0; min-width: 320px; min-height: 100vh; background: var(--canvas); }
button, input, select { font: inherit; }
button, a, select, summary { -webkit-tap-highlight-color: transparent; }
button, select, summary { cursor: pointer; }
a { color: inherit; }
h1, h2, h3, h4, p { margin: 0; }
svg { display: block; }
button:disabled { opacity: .55; cursor: wait; }
button, a, input, select, summary { transition: color .25s ease, background-color .25s ease, border-color .25s ease, box-shadow .3s ease, transform .3s var(--ease); }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline: 2px solid #8dcaff; outline-offset: 4px; }
button:active, .instrument-nav a:active { transform: translateY(1px) scale(.98); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.cosmic-backdrop { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; background: radial-gradient(ellipse at 4% 4%,#1c417655,transparent 42%),radial-gradient(ellipse at 94% 34%,#4f528633,transparent 45%),linear-gradient(160deg,#070d1c,#0c162a 70%,#080f20); }
.cosmic-halo { position: absolute; width: 760px; height: 760px; max-width: 80vw; right: -16%; top: -34%; border: 1px solid #a1cbff0d; border-radius: 50%; box-shadow: 0 0 0 65px #96a8ff03,0 0 0 130px #96a8ff02; }
.cosmic-horizon { position: absolute; left: -12%; right: -12%; top: 310px; height: 560px; border-top: 1px solid #9c9fff0d; border-radius: 50%; transform: rotate(-11deg); }
.login-shell, .app-shell { position: relative; z-index: 1; }
.skip-link { position: absolute; top: 12px; left: 24px; z-index: 100; transform: translateY(-180%); min-height: 44px; padding: 12px 18px; border: 1px solid #accfff; border-radius: 12px; color: #08152c; background: #b6d8ff; text-decoration: none; font-weight: 700; }
.skip-link:focus { transform: translateY(0); }
.eyebrow, .qsm-label, .module-index, .instrument-label, .read-only-label, .access-label { font-size: 10px; font-weight: 650; line-height: 1.5; letter-spacing: .10em; text-transform: uppercase; }
.eyebrow { color: #a9caff; }
.qsm-label { color: var(--muted); }
.module-index { color: var(--sky); font-variant-numeric: tabular-nums; }
.module-index span { color: var(--muted); margin-left: 8px; }
.tiny-orbit { display: inline-block; flex: 0 0 auto; width: 7px; height: 7px; border: 1px solid currentColor; border-radius: 50%; }
.brand-mark { display: grid; place-items: center; width: 32px; height: 32px; color: #a4ceff; border-radius: 10px; background: linear-gradient(140deg,#63b8ff1f,#9c9fff1a); border: 1px solid #aad3ff33; box-shadow: inset 0 1px #c4dfff19,0 4px 14px #03122640; }
.brand-mark svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.brand-mark svg circle:last-child { fill: var(--periwinkle); stroke: var(--panel-deep); }
.suite-brand { display: flex; align-items: center; gap: 9px; color: #a8bddb; font-size: 9px; font-weight: 650; letter-spacing: .13em; }
.brand-divider { margin: 0 10px; color: #657fa7; }
.orbital-art { width: 100%; fill: none; stroke: #8da9ef55; stroke-width: 1; }
.orbital-art .orbit-core { fill: #acd6ff; stroke: none; }
.orbital-art .orbit-node { fill: var(--periwinkle); stroke: #102344; stroke-width: 3; }

/* Original cosmic identity, with one glass layer per surface. */
.login-shell { display: flex; flex-direction: column; min-height: 100svh; width: min(1220px,100%); padding: 28px 36px 24px; margin: auto; }
.login-masthead { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.access-label { color: var(--muted); font-size: 9px; }
.login-layout { flex: 1; display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.85fr); align-items: center; gap: clamp(40px,6vw,80px); padding: 46px 0; }
.login-intro { min-width: 0; }
.login-intro h1 { margin-top: 18px; font-size: clamp(40px,5vw,66px); font-weight: 630; line-height: 1.08; letter-spacing: -.065em; }
.login-intro h1>span { display: block; color: #a8cbff; }
.login-description { margin-top: 20px; max-width: 400px; color: #b4c7e3; font-size: 15px; line-height: 1.8; }
.login-orbit { max-width: 390px; margin-top: 18px; filter: drop-shadow(0 0 22px #689bff20); }
.login-card { padding: 34px; border: 1px solid transparent; border-radius: 26px; background: linear-gradient(145deg,#17315cdd,#0d1a35e8) padding-box,linear-gradient(120deg,#b1d8ff66,#7d8cb52b 60%,#979cff55) border-box; box-shadow: inset 0 1px #d5e5ff0a,0 24px 80px #02081760,0 0 50px #6087ff09; backdrop-filter: blur(16px); min-width: 0; }
.login-card h2 { margin: 24px 0 14px; font-size: 27px; font-weight: 580; letter-spacing: -.045em; line-height: 1.22; }
.muted { color: var(--muted); font-size: 13px; line-height: 1.75; }
.login-card label { display: block; margin: 26px 0 9px; font-size: 11px; font-weight: 650; }
.login-card input { width: 100%; min-height: 52px; padding: 14px 16px; border: 1px solid #7c9ecb55; border-radius: 13px; background: #09172f90; color: var(--text); outline-offset: 3px; box-shadow: inset 0 2px 8px #02081728; }
.login-card input::placeholder { color: #859fc2; }
.login-card input:hover { border-color: #94bded99; }
.login-card input:focus { border-color: #8fc8ff; box-shadow: 0 0 0 4px #63b8ff18,inset 0 2px 8px #02081728; }
.login-submit { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 52px; width: 100%; margin-top: 14px; padding: 13px 17px; border: 1px solid #bedcff70; border-radius: 13px; background: linear-gradient(115deg,#6cbdff,#9fa9ff); color: #07152f; font-size: 12px; font-weight: 750; box-shadow: 0 7px 24px #568eff2b,inset 0 1px #e8f3ff80; }
.login-submit:hover { box-shadow: 0 10px 32px #568eff4a,inset 0 1px #e8f3ff80; transform: translateY(-2px); }
.login-submit span:last-child { font-size: 22px; font-weight: 400; }
.login-note { display: flex; align-items: center; gap: 8px; margin-top: 18px; color: var(--muted); font-size: 10px; }
.error { margin-top: 14px; padding: 11px 13px; border: 1px solid #c9788c50; border-radius: 12px; background: #76394822; color: var(--danger); font-size: 12px; line-height: 1.7; overflow-wrap: anywhere; }
.login-footer { display: flex; justify-content: space-between; gap: 20px; padding-top: 18px; border-top: 1px solid var(--line-soft); color: var(--muted); font-size: 10px; letter-spacing: .04em; }

.app-shell { width: min(1440px,100%); padding: 24px 32px 24px; margin: auto; }
.topbar { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 78px; padding-bottom: 16px; }
.brand-row { min-width: 0; }
.topbar h1 { margin-top: 10px; font-size: 27px; line-height: 1.15; letter-spacing: -.045em; font-weight: 660; }
.topbar h1 span { font-weight: 450; color: #b0c7eb; }
.top-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.mode-tag { display: inline-flex; align-items: center; min-height: 30px; padding: 5px 10px; border: 1px solid #73cab441; border-radius: 9px; color: #93e6d6; background: #368d7b14; font-size: 9px; font-weight: 750; letter-spacing: .08em; white-space: nowrap; }
.mode-tag.synthetic { border-color: #dbc18944; color: var(--warning); background: #ab7f3517; }
.link-state { display: flex; align-items: center; gap: 8px; min-height: 40px; padding: 9px 12px; border: 1px solid var(--line-soft); border-radius: 13px; background: #14274770; color: #b8cceb; font-size: 11px; }
.link-state b { font-weight: 550; }
.link-state i, .status-dot { display: block; flex: 0 0 auto; width: 7px; height: 7px; border-radius: 50%; background: #7384aa; box-shadow: 0 0 0 4px #899cd310; }
.link-state.online i, .status-banner.live .status-dot { background: var(--success); box-shadow: 0 0 0 4px #83e3cf12,0 0 12px #83e3cf25; }
.link-state.warn i { background: var(--warning); }
.ghost { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 44px; padding: 11px 14px; border: 1px solid #8cb4e433; border-radius: 13px; background: linear-gradient(140deg,#203d683b,#13274755); color: var(--text); font-size: 11px; box-shadow: inset 0 1px #bdd9ff0c; }
.ghost:hover { border-color: #91c8ff88; box-shadow: inset 0 1px #bdd9ff18,0 6px 18px #02081730; transform: translateY(-1px); }
.ghost span { font-size: 17px; color: #a1c8f5; }
.instrument-nav { position: sticky; top: 8px; z-index: 20; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 7px 9px; border: 1px solid #a7c8ff2a; border-radius: 18px; background: linear-gradient(130deg,#102344e8,#0b1830e8); box-shadow: 0 8px 30px #02081735,inset 0 1px #bbd7ff0a; backdrop-filter: blur(16px); }
.nav-links { display: flex; flex-wrap: wrap; gap: 5px; min-width: 0; }
.instrument-nav a { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 11px 16px; border: 1px solid transparent; border-radius: 12px; color: #a9bddf; text-decoration: none; font-size: 12px; font-weight: 600; white-space: nowrap; }
.instrument-nav a span { color: #7f9dcb; font-size: 9px; font-variant-numeric: tabular-nums; }
.instrument-nav a:hover, .instrument-nav a:focus-visible { border-color: #92beff40; background: #78aaff14; color: #ebf5ff; }
.instrument-nav a[aria-current] { border-color: #96bbff65; background: linear-gradient(120deg,#4a8acb55,#7379d444); color: #e9f3ff; box-shadow: inset 0 1px #c6ddff19,0 4px 13px #06132c2a; }
.instrument-nav a[aria-current] span { color: #b7d5ff; }
.read-only-label { display: flex; align-items: center; gap: 7px; padding-right: 8px; color: #93abd0; white-space: nowrap; font-size: 9px; }
.status-banner { display: flex; align-items: flex-start; gap: 11px; margin: 16px 0 0; padding: 12px 16px; border: 1px solid #789fd326; border-radius: 14px; background: #14274766; }
.status-banner .status-dot { margin-top: 5px; }
.status-banner strong { display: inline; color: #e7f2ff; font-size: 12px; font-weight: 650; line-height: 1.6; }
.status-banner span { color: var(--muted); font-size: 11px; line-height: 1.65; margin-left: 12px; overflow-wrap: anywhere; }
.status-banner.live { border-color: #79c9b52b; background: linear-gradient(110deg,#23495732,#14274766); }

/* Compact preview-first mission view. No synthetic photo fills the empty state. */
.dashboard { display: flex; flex-direction: column; gap: 34px; margin-top: 24px; }
.observatory-section { display: flex; flex-direction: column; gap: 16px; min-width: 0; scroll-margin-top: 96px; }
.section-heading { display: flex; align-items: center; justify-content: space-between; gap: 22px; min-width: 0; }
.section-heading .eyebrow { color: #85a9d7; font-size: 9px; letter-spacing: .1em; }
.section-heading h2 { margin-top: 6px; font-size: 23px; font-weight: 580; line-height: 1.2; letter-spacing: -.035em; }
.section-heading>p { max-width: 300px; color: #98adcf; font-size: 11px; line-height: 1.7; text-align: right; }
.hero-grid { display: grid; grid-template-columns: minmax(0,1.55fr) minmax(300px,.85fr); gap: 18px; align-items: stretch; }
.qsm-card { min-width: 0; padding: 22px; border: 1px solid transparent; border-radius: var(--radius); background: linear-gradient(145deg,#17305add,#0d1b36ee) padding-box,linear-gradient(130deg,#8fbfff55,#607fab1c 60%,#9c9fff35) border-box; box-shadow: inset 0 1px #d5e5ff08,0 10px 30px #02081733; transition: border-color .3s ease, box-shadow .35s ease, transform .4s var(--ease); }
.qsm-title { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 16px; color: #d9e9ff; }
.qsm-title h3, .review-inspector-head h4 { font-size: 11px; font-weight: 650; line-height: 1.5; letter-spacing: .055em; }
.instrument-label { display: inline-flex; align-items: center; gap: 7px; color: #9bb3d6; font-size: 8px; white-space: nowrap; }
.preview-panel { display: flex; flex-direction: column; padding: 16px; overflow: hidden; }
.preview-panel .qsm-title { padding: 2px 4px 0; }
.preview-wrap { position: relative; display: grid; place-items: center; flex: 1; width: 100%; height: 350px; min-height: 300px; border: 1px solid #8ab9ed28; border-radius: 14px; background: radial-gradient(ellipse at 50% 100%,#162c4b66,transparent 70%),#080e1e; overflow: hidden; box-shadow: inset 0 0 28px #02061160; }
.preview-wrap img { display: block; width: 100%; height: 100%; max-height: 480px; object-fit: contain; }
.preview-placeholder { padding: 24px; max-width: 380px; text-align: center; color: var(--muted); }
.preview-orbit { width: 190px; max-width: 100%; margin: 0 auto 12px; filter: drop-shadow(0 0 16px #6498ff22); }
.preview-placeholder b { display: block; margin-bottom: 8px; color: #cbdffb; font-size: 16px; font-weight: 550; letter-spacing: -.02em; }
.preview-placeholder span { color: #8ca5c9; font-size: 11px; line-height: 1.7; }
.preview-meta { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; margin: 13px 3px 0; color: #8ea8ce; font-size: 10px; line-height: 1.6; }
.preview-meta>span:first-child { color: #9bccff; font-variant-numeric: tabular-nums; }
.qsm-primary-card { display: flex; flex-direction: column; padding: 22px; }
.qsm-primary-card .qsm-title { margin-bottom: 18px; }
.qsm-primary-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); flex: 1; align-content: start; gap: 18px; }
.qsm-primary-grid section { min-width: 0; }
.score-row { display: flex; align-items: baseline; gap: 8px; margin-top: 7px; }
.qsm-quality-value { display: block; color: #a7d4ff; font-size: 64px; font-weight: 630; line-height: 1; letter-spacing: -.065em; font-variant-numeric: tabular-nums; text-shadow: 0 3px 25px #63b8ff19; }
.score-unit { color: #85a5cb; font-size: 11px; white-space: nowrap; }
.qsm-accent-line { display: block; margin-top: 10px; color: #b3d9ff; font-size: 9px; line-height: 1.6; font-weight: 650; letter-spacing: .075em; }
.confidence-instrument { padding-left: 16px; border-left: 1px solid #92bcff24; }
.qsm-confidence-value { display: block; margin-top: 14px; color: #bdc3ff; font-size: 28px; font-weight: 580; line-height: 1.25; letter-spacing: -.035em; font-variant-numeric: tabular-nums; }
.confidence-instrument .qsm-accent-line { margin-top: 6px; color: #aaaee6; }
.score-explainer { margin-top: 9px; max-width: 18ch; color: #8ea4c7; font-size: 10px; line-height: 1.6; }
.qsm-status-block { grid-column: 1/-1; padding: 16px 18px; margin-top: 0; border: 1px solid #8cb4e926; border-radius: 15px; background: linear-gradient(130deg,#35639616,#15244166); }
.qsm-status-block>strong { display: block; margin: 10px 0 8px; color: #dcecff; font-size: 21px; font-weight: 600; line-height: 1.25; letter-spacing: -.025em; overflow-wrap: anywhere; }
.qsm-status-block>span:not(.qsm-label) { display: block; color: #b0c3e1; font-size: 11px; line-height: 1.7; overflow-wrap: anywhere; }
.qsm-status-block>span#probableCauseMain { color: #d4e4fa; }
.qsm-status-block>em { display: block; margin-top: 10px; color: #8ea9d0; font-size: 10px; line-height: 1.7; font-style: normal; overflow-wrap: anywhere; }
.session-card { padding: 18px 20px 14px; border: 1px solid #8bb6f12b; border-radius: 18px; background: linear-gradient(115deg,#17336055,#17244577); box-shadow: inset 0 1px #cadeff09,0 8px 24px #0208171a; }
.session-heading { display: flex; justify-content: space-between; gap: 20px; padding-bottom: 16px; border-bottom: 1px solid var(--line-soft); }
.session-heading>span:last-child { color: #8da8d1; font-size: 10px; }
.qsm-session-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 0; padding: 18px 0; }
.qsm-session-grid section { min-width: 0; padding: 0 18px; border-left: 1px solid var(--line-soft); }
.qsm-session-grid section:first-child { padding-left: 0; border-left: 0; }
.qsm-session-grid strong { display: block; margin-top: 10px; font-size: 28px; font-weight: 610; line-height: 1.1; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.qsm-session-grid section:nth-child(2) strong { color: #93e3d2; }
.qsm-session-grid section:nth-child(3) strong { color: #ffb7ad; }
.qsm-session-grid section:nth-child(4) strong { color: #a4ceff; }
.qsm-help { color: #a9bddb; font-size: 12px; line-height: 1.7; margin-bottom: 14px; }
.session-card .qsm-help { margin: 0; color: #8ea8cd; font-size: 10px; }

/* Stellar evidence keeps measured profiles, limits and unavailable values intact. */
.evidence-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--line-soft); }
.evidence-head h3 { margin-top: 7px; color: #deebff; font-size: 21px; font-weight: 590; letter-spacing: -.025em; }
.review-count { padding: 8px 12px; border: 1px solid #87b8f344; border-radius: 12px; color: #b9d9ff; background: #5e99e217; font-size: 11px; white-space: nowrap; box-shadow: inset 0 1px #bfddff0b; }
.evidence-selector { padding: 18px 0; }
.evidence-selector label { display: block; margin-bottom: 9px; }
.evidence-select { display: block; width: min(780px,100%); min-height: 46px; padding: 12px 15px; border: 1px solid #8cafdf55; border-radius: 12px; color: #e2efff; background: #0c1a3580; font-size: 12px; overflow: hidden; text-overflow: ellipsis; box-shadow: inset 0 2px 8px #030a1822; }
.evidence-select:hover { border-color: #a0caff99; box-shadow: 0 0 0 3px #63b8ff0b; }
.evidence-select option { background: #112341; color: var(--text); }
.stellar-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 2px 0 12px; color: #a1b9dc; font-size: 11px; }
.stellar-verdict { color: #b5d9ff; font-size: 24px; font-weight: 600; line-height: 1.2; letter-spacing: -.025em; }
.rescued .stellar-verdict { color: #93e9d7; }
.retained .stellar-verdict { color: #ffb4a9; }
.stellar-result>p { max-width: 85ch; color: #afc4e4; font-size: 13px; line-height: 1.75; }
.stellar-proof { display: grid; place-items: center; gap: 14px; margin: 20px 0; padding: 20px; border: 1px solid #8bb5ec2a; border-radius: 16px; background: radial-gradient(ellipse at 50% 100%,#213f6c40,transparent 65%),#081328b3; box-shadow: inset 0 1px #b4d5ff08; transition: border-color .3s ease, box-shadow .35s ease; }
.stellar-proof img { display: block; width: 405px; max-width: 100%; height: auto; image-rendering: pixelated; }
.stellar-proof figcaption { max-width: 70ch; color: #8eaad1; font-size: 11px; line-height: 1.6; text-align: center; }
.stellar-metrics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 20px; }
.stellar-metrics>div { min-width: 0; padding: 15px; border: 1px solid #92baff23; border-radius: 14px; background: linear-gradient(145deg,#28457327,#11244377); box-shadow: inset 0 1px #bfd5ff07; transition: transform .35s var(--ease), border-color .3s ease, background-color .3s ease; }
.stellar-metrics span, .stellar-metrics small { display: block; color: #a7bdde; font-size: 10px; line-height: 1.6; overflow-wrap: anywhere; }
.stellar-metrics strong { display: block; margin: 9px 0 5px; color: #e0ecff; font-size: 25px; font-weight: 580; line-height: 1.2; letter-spacing: -.035em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.stellar-metrics small { color: #859fc8; }
.stellar-record { margin-top: 20px; border-top: 1px solid var(--line-soft); font-size: 12px; }
.stellar-record summary { min-height: 46px; padding: 14px 0; color: #a5caff; font-weight: 550; transition: color .25s ease, padding-left .3s var(--ease); }
.stellar-record summary:hover { color: #d9eaff; padding-left: 5px; }
.stellar-record p { padding: 7px 0; color: #a8bddc; line-height: 1.7; overflow-wrap: anywhere; }
.evidence-note { margin-top: 16px; padding: 10px 12px; border-left: 2px solid #e8c79570; border-radius: 0 9px 9px 0; background: #ab805012; color: #dac7a9; font-size: 11px; line-height: 1.7; }
.evidence-empty { min-height: 124px; padding: 22px; display: flex; flex-direction: column; justify-content: center; border: 1px dashed #8bacdc44; border-radius: 15px; background: linear-gradient(130deg,#31517a16,#0d1b3355); color: #a4badb; font-size: 12px; line-height: 1.8; }
.evidence-empty strong { display: block; margin-bottom: 7px; color: #d4e6ff; font-size: 18px; font-weight: 560; line-height: 1.3; letter-spacing: -.02em; }

/* Every channel retains its scientific colour and reference lines. */
.qsm-signal-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 18px; }
.qsm-signal-grid section { min-width: 0; padding-left: 18px; border-left: 1px solid var(--line-soft); }
.qsm-signal-grid section:first-child { padding-left: 0; border-left: 0; }
.qsm-signal-grid strong { display: block; margin-top: 10px; color: #dfebff; font-size: 22px; font-weight: 580; line-height: 1.25; letter-spacing: -.025em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.qsm-signal-grid small { display: block; margin-top: 6px; color: #92acd2; font-size: 10px; line-height: 1.6; overflow-wrap: anywhere; }
.qsm-signal-grid section:nth-child(2) strong, .qsm-signal-grid section:nth-child(5) strong { font-size: 17px; }
.inline-value { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; }
.inline-value span { color: #b2b8ff; font-size: 11px; font-variant-numeric: tabular-nums; }
.plugin-timeline { width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; padding: 6px 0; }
.plugin-timeline-svg { display: block; width: 100%; min-width:1000px; height: auto; }
.timeline-empty, .plot-empty { display: grid; place-items: center; min-height: 190px; padding: 24px; border: 1px solid #82afe025; border-radius: 14px; color: #a0b7da; background: radial-gradient(ellipse at 50% 0%,#2e56872b,transparent 70%),#0a172d80; text-align: center; font-size: 12px; line-height: 1.7; }
.plot-empty b { display: block; margin-bottom: 9px; color: #d5e6ff; font-size: 16px; font-weight: 550; letter-spacing: -.02em; }
.plot-empty span { display: block; max-width: 62ch; color: #8ea8cf; }
.tl-band { fill: #0a1830; stroke: #4d6c973e; stroke-width: 1; }
.tl-grid { stroke: #4d6c9750; stroke-width: .8; }
.tl-events, .tl-events-help, .tl-detail, .tl-scale { fill: #a5bcdd; }
.tl-events { font-size: 8.5px; font-weight: 650; }
.tl-events-help { font-size: 8px; }
.tl-name { font-size: 9px; font-weight: 650; }
.tl-name.q { fill: #8ecaff; }
.tl-name.c { fill: #b2b2ff; }
.tl-name.g { fill: #89ddc8; }
.tl-name.s { fill: #e9cc88; }
.tl-name.b { fill: #f2afa7; }
.tl-detail { font-size: 7.8px; }
.tl-scale { font-size: 7.6px; }
.tl-q, .tl-c, .tl-g, .tl-s, .tl-b, .line-ra, .line-dec { fill: none; vector-effect: non-scaling-stroke; stroke-width: 1.8; transition: opacity .3s ease, filter .35s ease, stroke-width .3s ease; }
.tl-q, .line-ra { stroke: #7bc1ff; }
.tl-c { stroke: #aaa8ff; }
.tl-g { stroke: #83d8c3; }
.tl-s { stroke: #edd08b; }
.tl-b, .line-dec { stroke: #eea79e; }
.plugin-timeline-svg circle[fill="#8AB4F8"] { fill: #7bc1ff; }
.plugin-timeline-svg circle[fill="#C58AF9"] { fill: #aaa8ff; }
.plugin-timeline-svg circle[fill="#81C995"] { fill: #83d8c3; }
.plugin-timeline-svg circle[fill="#FDD663"] { fill: #edd08b; }
.plugin-timeline-svg circle[fill="#F28B82"] { fill: #eea79e; }
.tl-ref-guide, .tl-ref-zero, .tl-ref-stars, .tl-ref-bg { fill: none; stroke-width: 1; stroke-dasharray: 5 4; vector-effect: non-scaling-stroke; }
.tl-ref-guide { stroke: #72c2b5; }
.tl-ref-zero { stroke: #7592bd; }
.tl-ref-stars { stroke: #d7b471; }
.tl-ref-bg { stroke: #d69791; }
.tl-ref-label { fill: #abc4e9; font-size: 8px; font-weight: 600; }
.tl-status { vector-effect: non-scaling-stroke; }
.tl-status.reject, .tl-status.error { stroke: #f6a399; stroke-width: 1.4; }
.tl-status.warning { stroke: #e8ca88; stroke-width: 1; }
.tl-badge { fill: #3e2b41; stroke: #ecaaad; stroke-width: .9; }
.tl-badge-text { fill: #ffebe9; font-size: 9.5px; font-weight: 650; }
.timeline-hit { cursor: pointer; transition: fill .2s ease; }
.timeline-hit:hover, .timeline-hit:focus-visible { fill: #87baff12; }
.timeline-hit:focus-visible { stroke: #99c9ff; stroke-width: 1; outline: none; }
.guide-facts { display: flex; flex-wrap: wrap; gap: 10px 22px; padding: 14px 0; margin-bottom: 14px; border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); color: #a6badb; font-size: 11px; }
.guide-facts b { margin-left: 7px; color: #e1eeff; font-size: 15px; font-weight: 580; font-variant-numeric: tabular-nums; }
.plot { max-width: 100%; min-width: 0; }
.guide-plot { min-height: 225px; }
.guide-legend { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 20px; margin-bottom: 15px; color: #a2bade; font-size: 10px; }
.guide-legend span { display: inline-flex; align-items: center; gap: 6px; }
.legend { display: inline-block; width: 12px; height: 2px; }
.legend.ra { background: #7bc1ff; }
.legend.dec { background: #eea79e; }
.guide-svg-wrap { display: grid; grid-template-columns: 44px minmax(0,1fr); grid-template-rows: 200px auto; min-width: 0; }
.guide-y-axis { display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; padding-right: 10px; color: #93add4; font-size: 10px; font-variant-numeric: tabular-nums; }
.guide-svg-wrap svg { width: 100%; height: 200px; grid-column: 2; grid-row: 1; border-left: 1px solid #6084bb40; border-bottom: 1px solid #6084bb40; border-radius: 0 10px 0 0; background: #0b193180; }
.guide-x-axis { display: flex; justify-content: space-between; grid-column: 2; padding-top: 9px; color: #93add4; font-size: 10px; }
.zero-line { stroke: #6986b75e; stroke-width: 1.2; stroke-dasharray: 5 5; }

/* Review stays a useful instrument, with clear semantic colour and touch targets. */
.table-wrap { max-width: 100%; min-width: 0; overflow: auto; overscroll-behavior: contain; border: 1px solid #83ace034; border-radius: 14px; background: #09162d9c; scrollbar-color: #5478ac66 transparent; }
.frame-table { width: 100%; min-width:760px; border-collapse: separate; border-spacing: 0; font-size: 11px; font-variant-numeric: tabular-nums; }
.frame-table th { position: sticky; top: 0; z-index: 2; min-height: 44px; padding: 14px 12px; border-bottom: 1px solid #769dd735; background: #152c4f; color: #abc4e8; text-align: left; font-size: 10px; font-weight: 650; white-space: nowrap; }
.frame-table td { padding: 12px; height: 46px; border-bottom: 1px solid #6b8db71e; color: #a6bddf; white-space: nowrap; transition: background-color .25s ease, color .25s ease, box-shadow .25s ease; }
.frame-table tr:last-child td { border-bottom: 0; }
.frame-table td:first-child { color: #e0ecff; }
.frame-table tbody tr[role="button"] { cursor: pointer; }
.frame-table tbody tr[role="button"]:hover td { background: #618ed61d; color: #e5efff; }
.frame-table tbody tr.selected { background: #638fe528; box-shadow: inset 3px 0 #93c9ff; }
.frame-table tbody tr.selected td { color: #dceaff; }
.frame-table tbody tr:focus-visible { outline-offset: -3px; }
.frame-table tbody tr.rejected td:first-child, .frame-table tbody tr.would-reject td:first-child, .frame-table tbody tr.error td:first-child { color: #ffb4ad; }
.frame-table tbody tr.warning td:first-child { color: #f1d18f; }
.frame-table .filename { max-width: 310px; color: #d8e8ff; overflow: hidden; text-overflow: ellipsis; }
.frame-table .cause { max-width: 280px; overflow: hidden; text-overflow: ellipsis; }
.empty-row td { padding: 20px 16px; height: 64px; text-align: center; color: #94afd6; white-space: normal; font-size: 11px; line-height: 1.7; }
.rejected-wrap { max-height: 284px; }
.history-wrap { max-height: 400px; }
.events-table-wrap { max-height: 270px; }
.rank-wrap { max-height: 245px; }
.rank-wrap .frame-table { min-width: 440px; }
.review-inspector-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 24px 0 13px; }
.review-inspector-head span { color: #9bb3d6; font-size: 10px; }
.inspector-empty { display: grid; place-items: center; min-height: 90px; padding: 20px; border: 1px dashed #88b3ed3d; border-radius: 14px; color: #9ab5da; background: #1e3d6414; font-size: 12px; }
.inspector { display: grid; gap: 13px; }
.inspector-file { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 17px; border: 1px solid #88b3ed29; border-radius: 15px; background: linear-gradient(135deg,#27436e38,#0f203d99); }
.inspector-file>div { min-width: 0; }
.inspector-file>div>span { display: block; color: #8ba9d2; font-size: 9px; font-weight: 650; letter-spacing: .1em; }
.inspector-file strong { display: block; margin-top: 8px; color: #dbeaff; font-size: 13px; font-weight: 580; line-height: 1.7; overflow-wrap: anywhere; }
.inspector-file small { display: block; margin-top: 6px; color: #91acd3; font-size: 10px; line-height: 1.7; overflow-wrap: anywhere; }
.pill { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-height: 30px; padding: 6px 10px; border: 1px solid #8dadde40; border-radius: 9px; color: #b5d3fb; background: #789bd51b; font-size: 9px; font-weight: 700; letter-spacing: .04em; line-height: 1.5; }
.pill.accepted { color: #9ae7d5; border-color: #7fcdba48; background: #4b9d891b; }
.pill.warning { color: #f0d18f; border-color: #dbbc7948; background: #a887391c; }
.pill.rejected, .pill.would-reject, .pill.error { color: #ffb4ad; border-color: #e6a4a24d; background: #b067791e; }
.pill.learning { color: #adb7e8; background: #868bcc1a; }
.inspector-reason { padding: 15px 17px; border-left: 2px solid #85bcff; border-radius: 0 12px 12px 0; background: #1b386229; }
.inspector-reason b, .inspector-reason span { display: block; font-size: 12px; line-height: 1.7; overflow-wrap: anywhere; }
.inspector-reason b { color: #dceaff; font-weight: 580; }
.inspector-reason span { margin-top: 5px; color: #a2b8dc; }
.inspector-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.inspector-metric { min-width: 0; padding: 14px 15px; border: 1px solid #86afe824; border-radius: 13px; background: linear-gradient(145deg,#25456f27,#10244388); transition: border-color .3s ease, transform .35s var(--ease); }
.inspector-metric span { display: block; color: #93acd0; font-size: 10px; line-height: 1.6; }
.inspector-metric b { display: block; margin-top: 8px; color: #dceaff; font-size: 14px; font-weight: 560; line-height: 1.5; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.secondary-details { min-width: 0; border: 1px solid #88b4ed33; border-radius: 20px; background: linear-gradient(145deg,#192f5066,#11203db3); box-shadow: inset 0 1px #c7deff08; }
.secondary-details>summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 64px; padding: 18px 22px; list-style: none; color: #c5dcff; font-size: 13px; font-weight: 550; line-height: 1.6; }
.secondary-details>summary::-webkit-details-marker { display: none; }
.secondary-details>summary:hover { color: #ecf5ff; background: #608deb0a; }
.details-action { display: grid; place-items: center; flex: 0 0 auto; width: 30px; height: 30px; border: 1px solid #94bbf340; border-radius: 50%; color: #a4ccff; background: #6396db10; font-size: 22px; font-weight: 350; transition: transform .35s var(--ease), background-color .25s ease; }
.secondary-details[open] .details-action { transform: rotate(45deg); background: #6396db25; }
.secondary-content { display: grid; gap: 16px; padding: 0 16px 16px; }
.secondary-content .qsm-card { background: #0e213d8f; border: 1px solid #719ad32b; border-radius: 16px; backdrop-filter: none; box-shadow: none; }
.best-worst-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 22px; }
.best-worst-grid>section { min-width: 0; }
.stellar-tooltip { position: fixed; z-index: 100; pointer-events: none; width: min(440px,calc(100vw - 24px)); max-height: calc(100vh - 24px); overflow: auto; padding: 18px; border: 1px solid #91b9f36b; border-radius: 18px; background: linear-gradient(140deg,#17315af5,#0b1b36f5); box-shadow: 0 18px 45px #02081788,inset 0 1px #cde6ff12; color: #d8e9ff; font-size: 12px; line-height: 1.7; }
.stellar-tooltip p { margin-top: 7px; color: #a4bddf; overflow-wrap: anywhere; }
.stellar-tooltip .stellar-proof { margin: 12px 0 0; padding: 10px; border-radius: 11px; }

/* Connection limits remain visible; the diagram is decorative, not a sky image. */
.empty-state { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); align-items: center; gap: 30px; min-height: 350px; margin-top: 24px; padding: 34px; border: 1px solid transparent; border-radius: 24px; background: linear-gradient(145deg,#18315ad9,#0c1b35e8) padding-box,linear-gradient(125deg,#91beff4c,#738cba1f,#979cff38) border-box; box-shadow: 0 12px 50px #02081740; }
.empty-copy { min-width: 0; }
.empty-copy h2 { max-width: 580px; margin-top: 14px; color: #ddebff; font-size: 31px; font-weight: 570; line-height: 1.2; letter-spacing: -.035em; overflow-wrap: anywhere; }
#emptyText { margin-top: 16px; color: #acc1df; font-size: 13px; line-height: 1.8; overflow-wrap: anywhere; }
.empty-note { max-width: 440px; margin-top: 10px; color: #8ba5cd; font-size: 11px; line-height: 1.8; }
.standby-checks { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--line-soft); font-size: 10px; color: #9cb5da; }
.standby-checks b { margin-right: 7px; font-size: 9px; color: #a5caff; font-weight: 550; }
.empty-instrument { min-width: 0; width: min(300px,100%); justify-self: center; filter: drop-shadow(0 0 20px #6589f51b); }
.empty-instrument>span { display: block; text-align: center; color: #a4c9ff; font-size: 9px; font-weight: 600; letter-spacing: .1em; }
.empty-instrument>span>span { margin-left: 6px; color: #809fc9; }
.app-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-top: 38px; padding-top: 18px; border-top: 1px solid var(--line-soft); color: #85a1cb; font-size: 9px; letter-spacing: .04em; }
.app-footer>span:first-child { color: #b4c9e9; }
.app-footer>span:first-child>span { margin: 0 8px; color: #6b8ab5; }
.app-footer a { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; padding: 10px 0; color: #aacfff; text-decoration: none; font-size: 11px; letter-spacing: 0; }
.app-footer a:hover { color: #edf5ff; transform: translateY(-2px); }

/* Interaction motion complements shared view and user-triggered chart draws. */
.qsm-card:focus-within { border-color: #95c5ff55; box-shadow: inset 0 1px #d5e5ff10,0 12px 32px #02081733,0 0 26px #6a9dff0c; }
.secondary-details[open] .secondary-content { animation: disclosure-reveal .3s var(--ease) both; }
@keyframes disclosure-reveal { from { opacity: .5; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
@media (hover: hover) and (pointer: fine) {
  .qsm-card:hover { border-color: #9fc7ff43; box-shadow: inset 0 1px #d5e5ff13,0 14px 38px #02081744,0 0 30px #7796ff0b; transform: translateY(-2px); }
  .stellar-proof:hover { border-color: #92beff69; box-shadow: 0 0 24px #689aff0d,inset 0 1px #b4d5ff10; }
  .stellar-metrics>div:hover, .inspector-metric:hover { transform: translateY(-2px); border-color: #97beff50; }
  .plugin-timeline:hover .tl-q, .guide-plot:hover .line-ra { filter: drop-shadow(0 0 3px #63b8ff32); stroke-width: 2; }
  .plugin-timeline:hover .tl-c { filter: drop-shadow(0 0 3px #9c9fff2d); }
  .guide-plot:hover .line-dec { filter: drop-shadow(0 0 3px #eea79e22); }
}

@media (max-width: 1200px) {
  .app-shell, .login-shell { padding-left: 28px; padding-right: 28px; }
  .top-actions { max-width: 340px; }
  .hero-grid { grid-template-columns: minmax(0,1.4fr) minmax(300px,.9fr); }
  .qsm-card { padding: 20px; }
  .preview-panel { padding: 15px; }
  .qsm-quality-value { font-size: 58px; }
  .qsm-session-grid section { padding: 0 14px; }
  .qsm-session-grid .qsm-label { font-size: 9px; letter-spacing: .06em; }
  .qsm-signal-grid { gap: 14px; }
  .qsm-signal-grid section { padding-left: 14px; }
  .stellar-metrics { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .login-layout { gap: 42px; }
}
@media (max-width: 900px) {
  .topbar { align-items: flex-start; }
  .topbar h1 { font-size: 25px; }
  .top-actions { max-width: 290px; }
  .instrument-nav { gap: 12px; }
  .instrument-nav a { padding: 11px 13px; font-size: 11px; }
  .read-only-label { display: none; }
  .hero-grid { grid-template-columns: minmax(0,1fr); }
  .preview-wrap { height: 360px; }
  .qsm-primary-grid { grid-template-columns: minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.3fr); align-items: start; gap: 18px; }
  .qsm-status-block { grid-column: auto; margin-top: 0; padding: 13px; }
  .qsm-quality-value { font-size: 62px; }
  .qsm-confidence-value { font-size: 27px; }
  .qsm-session-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px 0; }
  .qsm-session-grid section:nth-child(4) { padding-left: 0; border-left: 0; }
  .qsm-signal-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px 16px; }
  .qsm-signal-grid section:nth-child(4) { padding-left: 0; border-left: 0; }
  .inspector-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .plugin-timeline-svg { min-width: 900px; }
  .best-worst-grid { grid-template-columns: minmax(0,1fr); }
  .login-layout { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 28px; }
  .login-card { padding: 28px; }
  .login-intro h1 { font-size: 49px; }
  .empty-state { padding: 28px; }
}
@media (max-width: 640px) {
  html { scroll-padding-top: 128px; }
  .app-shell { padding: 18px 14px 20px; }
  .topbar { display: block; padding-bottom: 14px; }
  .topbar h1 { font-size: 26px; margin-top: 9px; }
  .suite-brand { font-size: 8px; gap: 8px; }
  .top-actions { max-width: none; margin-top: 14px; justify-content: flex-start; gap: 8px; }
  .link-state { flex: 1; font-size: 10px; min-width: 0; min-height: 40px; padding: 9px 10px; }
  .link-state b { overflow-wrap: anywhere; }
  .mode-tag { font-size: 8px; padding: 5px 8px; }
  .ghost { gap: 10px; padding: 10px 11px; font-size: 10px; }
  .instrument-nav { top: 6px; padding: 6px; border-radius: 15px; }
  .nav-links { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; width: 100%; }
  .instrument-nav a { justify-content: space-between; gap: 6px; padding: 11px 12px; border-color: #8caee31a; border-radius: 10px; font-size: 11px; }
  .instrument-nav a span { order: 1; font-size: 8px; }
  .status-banner { margin-top: 14px; padding: 12px 13px; border-radius: 12px; }
  .status-banner strong { display: block; font-size: 11px; }
  .status-banner span { display: block; margin: 4px 0 0; font-size: 10px; }
  .dashboard { margin-top: 22px; gap: 28px; }
  .observatory-section { gap: 13px; scroll-margin-top: 130px; }
  .section-heading { align-items: flex-start; gap: 12px; }
  .section-heading h2 { font-size: 21px; margin-top: 5px; }
  .section-heading>p { display: none; }
  .eyebrow, .qsm-label { font-size: 9px; }
  .hero-grid { gap: 13px; }
  .qsm-card { padding: 16px; border-radius: 18px; }
  .qsm-title { gap: 10px; margin-bottom: 14px; align-items: flex-start; flex-wrap: wrap; }
  .qsm-title h3 { font-size: 10px; }
  .instrument-label { font-size: 8px; }
  .preview-panel { padding: 12px; }
  .preview-wrap { min-height: 235px; height: 260px; border-radius: 12px; }
  .preview-wrap img { max-height: 300px; }
  .preview-placeholder { padding: 16px; }
  .preview-orbit { width: 165px; margin-bottom: 9px; }
  .preview-placeholder b { font-size: 14px; }
  .preview-placeholder span { font-size: 10px; }
  .preview-meta { display: block; font-size: 9px; margin-top: 11px; }
  .preview-meta>span { display: block; }
  .preview-meta>span+span { margin-top: 4px; }
  .qsm-primary-card .qsm-title { margin-bottom: 16px; }
  .qsm-primary-grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 16px; }
  .qsm-quality-value { font-size: 56px; }
  .score-row { gap: 6px; }
  .score-unit { font-size: 10px; }
  .confidence-instrument { padding-left: 14px; }
  .qsm-confidence-value { margin-top: 11px; font-size: 24px; }
  .qsm-accent-line { font-size: 9px; letter-spacing: .06em; }
  .score-explainer { font-size: 9px; }
  .qsm-status-block { grid-column: 1/-1; padding: 14px; }
  .qsm-status-block>strong { font-size: 19px; }
  .qsm-status-block>span:not(.qsm-label) { font-size: 11px; }
  .session-card { padding: 15px 16px 13px; border-radius: 16px; }
  .qsm-session-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 0; padding: 16px 0; }
  .qsm-session-grid section { padding: 0 14px; }
  .qsm-session-grid section:nth-child(odd) { padding-left: 0; border-left: 0; }
  .qsm-session-grid section:nth-child(even) { padding-left: 14px; border-left: 1px solid var(--line-soft); }
  .qsm-session-grid strong { font-size: 28px; }
  .session-heading>span:last-child { font-size: 9px; }
  .evidence-head { padding-bottom: 15px; gap: 12px; align-items: flex-start; flex-wrap: wrap; }
  .evidence-head h3 { font-size: 19px; }
  .review-count { padding: 7px 9px; font-size: 10px; }
  .evidence-selector { padding: 16px 0; }
  .evidence-select { font-size: 11px; padding: 12px; }
  .stellar-heading { align-items: flex-start; font-size: 10px; gap: 12px; }
  .stellar-verdict { font-size: 22px; }
  .stellar-result>p { font-size: 12px; line-height: 1.8; }
  .stellar-proof { padding: 12px; border-radius: 13px; gap: 12px; margin: 16px 0; }
  .stellar-proof figcaption { font-size: 10px; }
  .stellar-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 16px; }
  .stellar-metrics>div { padding: 12px; border-radius: 12px; }
  .stellar-metrics strong { font-size: 23px; }
  .stellar-metrics span, .stellar-metrics small { font-size: 9px; }
  .evidence-empty { min-height: 120px; padding: 18px; font-size: 11px; }
  .evidence-empty strong { font-size: 18px; }
  .qsm-help { font-size: 11px; }
  .qsm-signal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 14px; }
  .qsm-signal-grid section { padding-left: 14px; }
  .qsm-signal-grid section:nth-child(odd) { border-left: 0; padding-left: 0; }
  .qsm-signal-grid section:nth-child(even) { border-left: 1px solid var(--line-soft); padding-left: 14px; }
  .qsm-signal-grid strong { font-size: 22px; }
  .qsm-signal-grid section:nth-child(2) strong, .qsm-signal-grid section:nth-child(5) strong { font-size: 16px; }
  .qsm-signal-grid small { font-size: 9px; }
  .plugin-timeline-svg { min-width:760px; }
  .guide-facts { gap: 12px 18px; font-size: 10px; }
  .guide-facts b { margin-left: 5px; font-size: 14px; }
  .guide-legend { gap: 11px 16px; font-size: 9px; }
  .guide-svg-wrap { grid-template-columns: 36px minmax(0,1fr); grid-template-rows: 175px auto; }
  .guide-svg-wrap svg { height: 175px; }
  .guide-y-axis, .guide-x-axis { font-size: 9px; }
  .guide-plot { min-height: 200px; }
  .timeline-empty, .plot-empty { min-height: 170px; padding: 19px; font-size: 11px; }
  .plot-empty b { font-size: 14px; }
  .frame-table th, .frame-table td { padding: 12px 10px; }
  .frame-table th { font-size: 9px; }
  .frame-table td { font-size: 10px; }
  .review-inspector-head { margin-top: 22px; gap: 12px; }
  .review-inspector-head h4 { font-size: 9px; }
  .review-inspector-head span { font-size: 10px; }
  .inspector { gap: 11px; }
  .inspector-file { padding: 14px; gap: 11px; flex-wrap: wrap; }
  .inspector-file strong { font-size: 12px; }
  .inspector-file small { font-size: 10px; }
  .inspector-reason { padding: 14px; }
  .inspector-reason b, .inspector-reason span { font-size: 11px; }
  .inspector-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  .inspector-metric { padding: 12px; border-radius: 12px; }
  .inspector-metric span { font-size: 9px; }
  .inspector-metric b { font-size: 13px; }
  .secondary-details { border-radius: 18px; }
  .secondary-details>summary { padding: 16px; min-height: 62px; gap: 14px; font-size: 12px; }
  .secondary-content { padding: 0 12px 12px; gap: 12px; }
  .secondary-content .qsm-card { padding: 13px; border-radius: 14px; }
  .best-worst-grid { gap: 20px; }
  .stellar-tooltip { padding: 15px; font-size: 11px; }
  .empty-state { min-height: 0; padding: 22px; margin-top: 20px; border-radius: 20px; grid-template-columns: minmax(0,1fr); gap: 20px; }
  .empty-copy h2 { margin-top: 12px; font-size: 27px; }
  #emptyText { font-size: 12px; margin-top: 14px; }
  .empty-note { font-size: 11px; }
  .standby-checks { gap: 13px; margin-top: 20px; font-size: 9px; }
  .empty-instrument { width: 220px; max-width: 100%; }
  .empty-instrument>span { font-size: 8px; }
  .app-footer { margin-top: 28px; gap: 8px 20px; font-size: 8px; }
  .app-footer>span { width: 100%; }
  .login-shell { padding: 20px 18px; }
  .login-masthead { gap: 12px; }
  .access-label { display: none; }
  .brand-divider { margin: 0 6px; }
  .login-layout { grid-template-columns: minmax(0,1fr); gap: 24px; padding: 32px 0 28px; }
  .login-intro h1 { margin-top: 12px; font-size: 44px; }
  .login-intro h1>span { display: inline; }
  .login-description { margin-top: 15px; font-size: 13px; }
  .login-orbit { display: none; }
  .login-card { padding: 25px; border-radius: 22px; }
  .login-card h2 { margin-top: 20px; font-size: 24px; }
  .login-card .muted { font-size: 12px; }
  .login-card label { margin-top: 24px; }
  .login-submit { font-size: 12px; }
  .login-footer { flex-wrap: wrap; font-size: 9px; gap: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .qsm-card:hover, .stellar-metrics>div:hover, .inspector-metric:hover, .login-submit:hover, .ghost:hover, .app-footer a:hover, button:active, .instrument-nav a:active { transform: none !important; }
}
