:root {
  color-scheme: light;
  --bg: #f5f7f4;
  --card: #ffffff;
  --panel: #ffffff;
  --panel2: #f9fbf9;
  --line: #dce4de;
  --text: #1d2b27;
  --muted: #64736d;
  --red: #176b5b;
  --red2: #176b5b;
  --cyan: #177f73;
  --gold: #8c650c;
  --blue: #426e96;
  --purple: #62558d;
}

html, body { background: var(--bg); color: var(--text); }
body { background-image: none; font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; line-height: 1.45; }
.ambient, .glow, .hero:after, .radar { display: none; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
button { transition: background-color .15s ease, border-color .15s ease, transform .15s ease; }
button:hover:not(:disabled), a.cta:hover { transform: translateY(-1px); }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 2px solid #177f73; outline-offset: 2px; }
.shell { width: min(1320px, calc(100% - 48px)); padding-top: 20px; }
.topbar, nav { border-bottom: 1px solid var(--line); margin-bottom: 24px; }
.topbar { padding: 8px 0 20px; }
nav { height: 74px; }
.brand-mark, .logo i { background: var(--text); border-radius: 10px; box-shadow: none; }
.brand-mark { width: 37px; height: 37px; }
.logo i { width: 35px; height: 35px; }
.brand h1, .logo, .logo b, footer .logo { color: var(--text); }
.brand h1 { font-size: 17px; font-weight: 700; }
.logo b span { color: var(--red); }
.eyebrow, .kicker, .overline, .card-title p, .section-title p, .steps>div>p, .final>p { color: var(--red); letter-spacing: .12em; }
.navlinks, .navlinks a, .navlinks button { color: var(--muted); }
.navlinks a:hover { color: var(--text); }

.panel, .metrics article, .admin-stats article, .research-metrics article,
.research-card, .lab-grid article, .compare-summary article, .account-head aside,
.pay-card, .verify-card, .history, .plan, .cards article, .price-grid article {
  background: var(--card); border: 1px solid var(--line); box-shadow: none; color: var(--text);
}
.panel, .pay-card, .verify-card, .history, .account-head aside { border-radius: 12px; }
.metrics article, .admin-stats article, .research-metrics article,
.research-card, .lab-grid article, .compare-summary article, .plan, .cards article, .price-grid article { border-radius: 10px; }
.section-heading h3, .lab-grid h4, .card-title h2, .cards h3, .steps li strong,
.account-head h1, .auth-card h1, .section-title h2, .final h2 { color: var(--text); }
.hero, .control-hero { background: var(--card); border: 1px solid var(--line); border-radius: 14px; box-shadow: none; }
main:not(.shell) > .hero { min-height: 570px; padding: 38px; margin-top: 28px; }
.hero-copy, .hero-copy>p, .control-hero p:last-child, .account-head>div>p:last-child,
.section-title span, .cards p, .steps li small, .compare-note, .lab-note { color: var(--muted); }
.hero h1, .hero h2, .control-hero h2 { color: var(--text); }
.hero h1 em { color: var(--red); }
.hero h1, .hero h2, .control-hero h2 { letter-spacing: -.045em; }
.latest-orbit { width: 190px; min-width: 190px; background: #f3f7f3; border: 1px solid var(--line); box-shadow: none; }
.latest-orbit strong { color: var(--red); }
.latest-orbit span, .latest-orbit small { color: var(--muted); }
.control-hero { padding: 32px 36px; }
.live-pill { background: #f0f6f2; border-color: var(--line); color: var(--text); }
.live-pill i, .live i { background: #177f73; box-shadow: none; }
.live-pill small, .live, .legend { color: var(--muted); }

.primary, .cta, .cta.small, .review-button {
  background: var(--text); color: #ffffff; border: 1px solid var(--text); box-shadow: none; border-radius: 8px;
}
.primary:hover, .cta:hover, .review-button:hover { background: #344740; border-color: #344740; }
.secondary, .outline, .load-more, .text-button, .switcher button,
.quick-buttons button, .actions button, .danger {
  background: var(--card); color: var(--text); border: 1px solid var(--line); box-shadow: none; border-radius: 8px;
}
.text-button { border: 0; background: transparent; color: var(--red); }
.secondary:hover, .outline:hover, .load-more:hover, .quick-buttons button:hover { background: #eef4ef; }
.quick-buttons button.active, .switcher button.active { background: #e7f1eb; color: var(--red); border-color: #a8cdb8; }
.switcher span { background: var(--red); }
.filters input, .filters select, .gap-toolbar select, .top-round-controls input,
.top-round-controls select, .quick-views select, .compare-form select,
.compare-form input, .lab-controls select, .auth-card input, .verify-card input,
.actions select, dialog textarea {
  background: #ffffff; color: var(--text); border: 1px solid #cdd9d1; border-radius: 8px; box-shadow: none;
}
.filters input:focus, .filters select:focus, .auth-card input:focus, .verify-card input:focus { border-color: var(--red); box-shadow: 0 0 0 3px #dcefe3; }
input::placeholder, textarea::placeholder { color: #84928a; }
.filters label span, .top-round-controls label span, .quick-views label,
.compare-form label, .lab-controls label, .gap-toolbar label,
.auth-card label span, .verify-card label span, dialog label span { color: var(--muted); }
.quick-views { border-bottom-color: var(--line); }
.quick-views>span, .compare-note, #compare-status, #lab-status,
.lab-panel article p, .gap-toolbar>span, .gap-scope, .gap-note { color: var(--muted); }
.compare-form fieldset { border-color: var(--line); }
.compare-form legend { color: var(--red); }

.quality-note, .research-warning, .prob-warning { background: #f0f6f2; border: 1px solid #d4e5d8; color: #4c6558; }
.quality-note span { background: #dceee3; color: var(--red); }
.quality-note p, .research-warning strong { color: #375d4c; }
.table-scroll, .table-wrap, .top-table-scroll { border-color: var(--line); }
table { color: var(--text); }
th { color: #63756c; border-bottom: 1px solid var(--line); }
td { color: #35463e; border-bottom: 1px solid #e9eee9; }
tbody tr:hover { background: #f4f8f5; }
.hash, .rank { color: #64756c; }
.multi.low { color: #66776e; }
.multi.mid { color: #177f73; }
.multi.high { color: #5c5795; }
.multi.mega { color: #906311; }
.badge.observed, .badge.source { background: #edf2ef; color: #536e5f; }
.badge.provider { background: #dff2ea; color: #176b5b; }
.badge { letter-spacing: .03em; }
.top-rounds-table thead { background: #ffffff; }
.top-summary { background: var(--line); border-color: var(--line); }
.top-summary>div, .review-facts, .pay-details div { background: var(--card); border-color: var(--line); }
.top-summary span, .metrics span, .metrics small, .research-metrics span,
.research-metrics small, .quality-grid span, .admin-stats span,
.admin-stats small, .compare-summary span, .compare-summary small { color: var(--muted); }
.top-summary strong, .metrics strong, .research-metrics strong,
.admin-stats strong, .compare-summary strong { color: var(--text); }
.gap-pill.mid, .gap-pill.high, .gap-pill.mega { background: #edf5ef; color: var(--red); }
.gap-current { color: var(--text); }
.gap-track, .band-track { background: #e7ede8; }
.gap-track i, .gap-chart-row i, .band-fill { background: var(--red); }
.gap-table summary, .gap-detail p, .gap-chart-row span { color: var(--text); }
.gap-note { border-top-color: var(--line); }
.gap-table tr, .gap-changed { border-color: var(--line); }
.research-grid article, .research-card, .rolling-card, .prob-cards article,
.prob-method, .quality-grid>div { background: var(--card); border-color: var(--line); }
.prob-cards article { background-image: none; border-radius: 10px; }
.prob-cards span, .prob-cards small, .prob-cards p, .prob-method p,
#prob-scope, .probability-panel td small { color: var(--muted); }
.prob-controls label, .prob-method summary { color: var(--text); }
.prob-controls select { background: #ffffff; color: var(--text); border: 1px solid #cdd9d1; }
.condition-row { background: #f4f7f4; }
.condition-row small, .correlation-row span, .correlation-row strong,
.research-card-title>span, .quality-grid span { color: var(--muted); }
.condition-row em.neutral { background: #e4f2e9; color: #176b5b; }
.condition-row em.positive { background: #eeecf6; color: #62558d; }
.condition-row em.negative { background: #f8e9e7; color: #9b4b3f; }
.condition-row em.limited { background: #f4eedf; color: #8c650c; }
.correlation-row>div { background: #e7ede8; }
.quality-grid { background: var(--line); border-color: var(--line); }
.quality-grid strong { color: var(--text); }
.prob-cards strong, .research-card h4 { color: var(--text); }
.research-card p, .prob-method p, .research-scope { color: var(--muted); }
.lab-grid article { background: #ffffff; }
.lab-grid th, .lab-grid td { color: var(--text); }
.lab-grid td small, .compare-table td small { color: var(--muted); }
.distribution-panel .band-row span, .table-actions span, .research-actions>span { color: var(--muted); }

.flight-card { background: #ffffff; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 15px 40px #203b2b12; transform: none; }
.sky { background: linear-gradient(155deg, #eff5ee, #dfece4); border-radius: 8px; }
.sky .grid { background-image: linear-gradient(#446b5420 1px,transparent 1px),linear-gradient(90deg,#446b5420 1px,transparent 1px); }
.trail { stroke: var(--red); filter: none; }
.plane { fill: var(--text); filter: none; }
.score span, .score small { color: var(--muted); }
.score strong { color: var(--text); }
.chips span { background: #edf2ed; color: var(--text); }
.chips .purple { background: #eeecf6; color: #5d558a; }
.chips .gold { background: #f4eedf; color: #8c650c; }
.mini, .mini div+div, .numbers, .numbers div+div, .steps li, footer { border-color: var(--line); }
.mini small, .numbers span { color: var(--muted); }
.mini b, .numbers strong { color: var(--text); }
.cards article { min-height: 205px; }
.cards i { color: var(--red); }
.price-grid article.popular, .plan.selected { border-color: #70ad8e; box-shadow: 0 8px 24px #2e6f4810; }
.plan.selected:before { display: none; }
.price-grid em, .price-grid b, .plan b { color: var(--red); }
.price-grid small, .plan small, .plan span { color: var(--muted); }
.final { background: #eaf2eb; border: 1px solid #cfe0d2; border-radius: 14px; }
.final h2 { color: var(--text); }
footer, footer p { color: var(--muted); }

.auth-shell { padding-top: 60px; }
.auth-card { background: #ffffff; border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 15px 45px #203b2b0d; }
.tabs { border-bottom-color: var(--line); }
.tabs button { color: var(--muted); }
.tabs button.active { color: var(--text); border-bottom-color: var(--red); }
.auth-card form>small, .legal { color: var(--muted); }
.message, .form-message { background: #fbf2ef; border: 1px solid #e7cfc6; color: #915439; }
.message.success, .form-message.success { background: #e8f4ec; border-color: #c5dfcc; color: #286c4b; }
.account-head aside>span, .account-head aside>span.active { background: var(--red); box-shadow: none; }
.account-head aside small, .account-head aside em, .notice,
.pay-details span, .verify-card label span { color: var(--muted); }
.qr-shell { background: #f4f7f4; border: 1px solid var(--line); }
.qr-placeholder { color: var(--muted); }
.qr-placeholder i { border-color: #a8b9ac; }
.status.submitted { background: #f5edda; color: #84620d; }
.status.approved { background: #e2f1e7; color: #176b4d; }
.status.rejected { background: #f8e9e7; color: #9b4b3f; }
.actions select, .actions button { color: var(--text); }
.admin-panel td strong { color: var(--text); }
.admin-panel td small, .review-facts span { color: var(--muted); }
.danger { color: #9b4b3f; border-color: #e5cbc5; }
dialog { background: #ffffff; color: var(--text); border: 1px solid var(--line); box-shadow: 0 22px 70px #203b2b24; }
dialog::backdrop { background: #15241c80; backdrop-filter: blur(3px); }
.dialog-close { color: var(--muted); }

@media (max-width: 720px) {
  .shell { width: min(100% - 24px, 1320px); }
  .hero, .control-hero { padding: 24px; }
  .latest-orbit { width: 160px; min-width: 160px; }
  .gap-table tr { background: #ffffff; border-color: var(--line); }
  .gap-table td:before { color: var(--muted); }
  .topbar { gap: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
