/* Consume mithrandir-site's canonical --theme-* contract, with stand-alone fallbacks. */
:root {
  color-scheme: light;
  --calc-page: var(--theme-page, #f3f0e8);
  --calc-surface: var(--theme-surface, #f7f4ed);
  --calc-raised: var(--theme-surface-raised, #ffffff);
  --calc-muted-surface: var(--theme-surface-muted, #eef1f4);
  --calc-control: var(--theme-control, #e5eaf0);
  --calc-text: var(--theme-text, #17283a);
  --calc-muted: var(--theme-text-muted, #62758a);
  --calc-border: var(--theme-border, rgba(19, 45, 70, 0.18));
  --calc-border-strong: var(--theme-border-strong, rgba(19, 45, 70, 0.34));
  --calc-blue: var(--theme-accent, #1f4e79);
  --calc-navy: var(--theme-accent-strong, #00274c);
  --calc-maize: var(--theme-maize, #d2ad52);
  --calc-maize-bright: var(--theme-maize-bright, #ffcb05);
  --calc-focus-soft: var(--theme-focus-soft, #f2e6bc);
  --calc-danger: var(--theme-danger, #9d3030);
  --calc-danger-surface: var(--theme-danger-surface, #fae7e7);
  --calc-shadow: var(--theme-shadow, 0 14px 38px rgba(0, 39, 76, 0.09));
  --calc-font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --calc-serif: Georgia, "Times New Roman", serif;
  --calc-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --calc-page: var(--theme-page, #0f1723);
  --calc-surface: var(--theme-surface, #131e2d);
  --calc-raised: var(--theme-surface-raised, #172233);
  --calc-muted-surface: var(--theme-surface-muted, #1c293c);
  --calc-control: var(--theme-control, #23334a);
  --calc-text: var(--theme-text, #eef4ff);
  --calc-muted: var(--theme-text-muted, #aab7c8);
  --calc-border: var(--theme-border, #2d3a4d);
  --calc-border-strong: var(--theme-border-strong, #46566d);
  --calc-blue: var(--theme-accent, #ffcb05);
  --calc-navy: var(--theme-accent-strong, #ffdb4d);
  --calc-maize: var(--theme-maize, #ffcb05);
  --calc-maize-bright: var(--theme-maize-bright, #ffdb4d);
  --calc-focus-soft: var(--theme-focus-soft, #40371d);
  --calc-danger: var(--theme-danger, #ff9f9f);
  --calc-danger-surface: var(--theme-danger-surface, #3a2026);
  --calc-shadow: var(--theme-shadow, 0 18px 44px rgba(0, 0, 0, 0.24));
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    color-scheme: dark;
    --calc-page: #0f1723;
    --calc-surface: #131e2d;
    --calc-raised: #172233;
    --calc-muted-surface: #1c293c;
    --calc-control: #23334a;
    --calc-text: #eef4ff;
    --calc-muted: #aab7c8;
    --calc-border: #2d3a4d;
    --calc-border-strong: #46566d;
    --calc-blue: #ffcb05;
    --calc-navy: #ffdb4d;
    --calc-maize: #ffcb05;
    --calc-maize-bright: #ffdb4d;
    --calc-focus-soft: #40371d;
    --calc-danger: #ff9f9f;
    --calc-danger-surface: #3a2026;
    --calc-shadow: 0 18px 44px rgba(0, 0, 0, 0.24);
  }
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--calc-page); }
body { min-height: 100vh; margin: 0; background: var(--calc-page); color: var(--calc-text); font-family: var(--calc-font); line-height: 1.45; }
button, input, select { font: inherit; }

.skip-link { position: fixed; z-index: 100; top: 0.5rem; left: 0.5rem; padding: 0.65rem 1rem; transform: translateY(-160%); border-radius: 0.4rem; background: var(--calc-maize-bright); color: #00274c; font-weight: 800; }
.skip-link:focus { transform: translateY(0); }

.site-header { height: 64px; background: #132d46; color: #ffffff; box-shadow: 0 4px 18px rgba(0, 39, 76, 0.14); }
.site-header__inner { width: min(100% - 2rem, 1480px); height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-inline: auto; }
.site-brand { display: inline-flex; align-items: center; gap: 0.7rem; color: inherit; text-decoration: none; }
.site-brand__mark { display: grid; width: 34px; height: 34px; place-items: center; border: 2px solid #d2ad52; border-radius: 50%; color: #ffcb05; font-family: var(--calc-serif); font-size: 1.15rem; font-style: italic; }
.site-brand small, .site-brand strong { display: block; line-height: 1.15; }
.site-brand small { color: #d2ad52; font-size: 0.58rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }
.site-brand strong { margin-top: 0.15rem; font-family: var(--calc-serif); font-size: 0.95rem; font-style: italic; font-weight: 500; }
.header-criterion { display: flex; align-items: center; gap: 0.65rem; font-size: 0.7rem; letter-spacing: 0.06em; text-transform: uppercase; }
.header-criterion span { color: rgba(255, 255, 255, 0.6); }
.header-criterion strong { padding: 0.32rem 0.55rem; border: 1px solid rgba(210, 173, 82, 0.56); border-radius: 0.3rem; color: #ffcb05; }

.app-shell { width: min(100% - 2rem, 1480px); margin-inline: auto; padding-block: 1.1rem; }
.workspace-heading { display: flex; align-items: center; justify-content: space-between; gap: 1.4rem; margin-bottom: 0.75rem; }
.workspace-title { display: flex; min-width: 0; align-items: center; gap: 0.8rem; }
.tool-symbol { display: grid; width: 46px; height: 46px; flex: 0 0 46px; place-items: center; border: 2px solid var(--calc-maize); border-radius: 50%; color: var(--calc-maize-bright); font-family: var(--calc-serif); font-size: 1.8rem; font-style: italic; line-height: 1; }
.eyebrow, .section-number { display: block; margin: 0 0 0.2rem; color: var(--calc-blue); font-size: 0.75rem; font-weight: 850; letter-spacing: 0.11em; text-transform: uppercase; }
.workspace-heading h1, .card-heading h2, .inverse-result h2, .matrix-heading h2 { margin: 0; }
.workspace-heading h1 { font-family: var(--calc-serif); font-size: clamp(1.7rem, 3vw, 2.45rem); font-weight: 500; letter-spacing: -0.035em; line-height: 1.05; }
.workspace-context { display: flex; min-width: 0; align-items: center; justify-content: flex-end; gap: 0.85rem; }
.workspace-context > p { max-width: none; margin: 0; color: var(--calc-muted); font-size: 0.95rem; text-align: right; }
.guide-link, .help-back-link { display: inline-flex; min-height: 38px; flex: 0 0 auto; align-items: center; justify-content: center; gap: 0.35rem; padding: 0.45rem 0.7rem; border: 1px solid var(--calc-border-strong); border-radius: 0.4rem; background: var(--calc-raised); color: var(--calc-blue); font-size: 0.78rem; font-weight: 800; text-decoration: none; }
.guide-link:hover, .help-back-link:hover { border-color: var(--calc-blue); background: var(--calc-muted-surface); }
.guide-link:focus-visible, .help-back-link:focus-visible { outline: 3px solid var(--calc-focus-soft); outline-offset: 2px; }

.view-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--calc-border-strong); border-radius: 0.65rem 0.65rem 0 0; background: var(--calc-surface); }
.view-tab { position: relative; display: flex; min-height: 50px; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.65rem 0.9rem; border-right: 1px solid var(--calc-border); color: var(--calc-muted); font-size: 0.9rem; text-decoration: none; }
.view-tab:last-child { border-right: 0; }
.view-tab::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: transparent; content: ""; }
.view-tab:hover, .view-tab:focus-visible { background: var(--calc-muted-surface); color: var(--calc-text); outline: none; }
.view-tab:focus-visible { box-shadow: inset 0 0 0 3px var(--calc-focus-soft); }
.view-tab.is-active { background: var(--calc-raised); color: var(--calc-navy); }
.view-tab.is-active::after { background: var(--calc-maize-bright); }

.view-stage { min-height: 0; border: 1px solid var(--calc-border-strong); border-top: 0; border-radius: 0 0 0.65rem 0.65rem; background: var(--calc-surface); box-shadow: var(--calc-shadow); }
.calculator-view { padding: 1rem; }
.combined-layout { display: grid; min-height: 0; gap: 0.75rem; }
.card { min-width: 0; padding: 0.8rem; border: 1px solid var(--calc-border); border-radius: 0.55rem; background: var(--calc-raised); }
.card-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 0.6rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--calc-border); }
.card-heading h2, .inverse-result h2, .matrix-heading h2 { font-family: var(--calc-serif); font-size: 1.4rem; font-weight: 500; line-height: 1.1; }
.card-heading > p { max-width: none; margin: 0; color: var(--calc-muted); font-size: 0.82rem; text-align: right; }
.card-heading--inverse { align-items: center; }
.section-number--maize { color: #d2ad52; }

.field-grid { display: grid; gap: 0.65rem; }
.field-grid--planner, .field-grid--inverse { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.field { min-width: 0; }
.field label { display: flex; align-items: baseline; justify-content: space-between; gap: 0.5rem; margin-bottom: 0.3rem; font-size: 0.84rem; font-weight: 750; }
.field label span { color: var(--calc-blue); font-family: var(--calc-serif); font-size: 1.05rem; font-style: italic; }
.field input { width: 100%; min-height: 48px; padding: 0.55rem 0.65rem; border: 1px solid var(--calc-border-strong); border-radius: 0.4rem; outline: none; background: var(--calc-control); color: var(--calc-text); font-family: var(--calc-mono); font-size: 1.12rem; font-weight: 700; }
.field select { width: 100%; min-height: 48px; padding: 0.55rem 0.65rem; border: 1px solid var(--calc-border-strong); border-radius: 0.4rem; outline: none; background: var(--calc-control); color: var(--calc-text); font-weight: 700; }
.field input:focus { border-color: var(--calc-blue); box-shadow: 0 0 0 3px var(--calc-focus-soft); }
.field select:focus { border-color: var(--calc-blue); box-shadow: 0 0 0 3px var(--calc-focus-soft); }
.field input[aria-invalid="true"] { border-color: var(--calc-danger); background: var(--calc-danger-surface); }
.field small, .field-error { display: block; min-height: 1em; margin-top: 0.18rem; color: var(--calc-muted); font-size: 0.7rem; line-height: 1.2; }
.field-error:empty { display: none; }
.field-error:not(:empty) { color: var(--calc-danger); }
.field:has(.field-error:not(:empty)) > small { display: none; }

.beta-quick { margin: 0.65rem 0; padding: 0.48rem 0.65rem; border-left: 3px solid var(--calc-maize); background: var(--calc-muted-surface); color: var(--calc-muted); font-size: 0.76rem; }
.beta-quick strong { color: var(--calc-navy); }
.guidance-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem; }
.engineering-details, .assumptions-bar { border: 1px solid var(--calc-border); border-radius: 0.4rem; background: var(--calc-surface); }
.guidance-heading { margin: 0; padding: 0.55rem 0.7rem 0.25rem; color: var(--calc-blue); font-size: 0.78rem; font-weight: 800; line-height: 1.25; }
.details-body { padding: 0.2rem 0.7rem 0.7rem; }
.beta-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
.beta-list li { font-size: 0.72rem; }
.beta-list strong, .beta-list span { display: block; }
.beta-list strong { color: var(--calc-navy); }
.details-body > p { margin: 0.6rem 0 0; padding-top: 0.55rem; border-top: 1px solid var(--calc-border); font-size: 0.72rem; font-weight: 650; }

.result-card { display: flex; flex-direction: column; border-color: #1f4e79; background: #00274c; color: #ffffff; }
.result-card .card-heading { border-color: rgba(255, 255, 255, 0.17); }
.result-card .card-heading h2 { color: #ffffff; }
.status-badge { padding: 0.25rem 0.5rem; border: 1px solid rgba(255, 203, 5, 0.46); border-radius: 99px; color: #ffcb05; font-size: 0.68rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.status-badge--invalid { border-color: #d2ad52; background: #f2e6bc; color: #00274c; }
.result-content { display: flex; min-height: 0; flex: 1; flex-direction: column; }
.primary-result { padding: 0.5rem 0.7rem; border-left: 4px solid #ffcb05; background: rgba(255, 255, 255, 0.07); }
.primary-result span, .primary-result small { display: block; }
.primary-result span { color: rgba(255, 255, 255, 0.72); font-size: 0.76rem; text-transform: uppercase; }
.primary-result strong { display: block; margin-block: 0.05rem; color: #ffcb05; font-family: var(--calc-mono); font-size: clamp(2.4rem, 4vw, 3.4rem); letter-spacing: -0.06em; line-height: 1; }
.primary-result small { color: rgba(255, 255, 255, 0.68); font-size: 0.72rem; }
.metric-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 0.5rem; border-block: 1px solid rgba(255, 255, 255, 0.17); }
.metric-grid--inverse { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.metric { min-width: 0; padding: 0.45rem 0.5rem; border-right: 1px solid rgba(255, 255, 255, 0.17); }
.metric:last-child { border-right: 0; }
.metric span, .metric small, .metric strong { display: block; }
.metric span { color: rgba(255, 255, 255, 0.65); font-size: 0.66rem; text-transform: uppercase; }
.metric strong { overflow: hidden; margin-block: 0.1rem; color: #ffffff; font-family: var(--calc-mono); font-size: clamp(1rem, 1.6vw, 1.35rem); text-overflow: ellipsis; }
.metric small { color: #d2ad52; font-size: 0.66rem; }
.pass-strip { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: auto; padding-top: 0.5rem; font-size: 0.7rem; text-transform: uppercase; }
.pass-strip span { color: rgba(255, 255, 255, 0.62); }
.pass-strip strong { color: #ffcb05; letter-spacing: 0.06em; }
.neutral-output { margin: 0.75rem 0 0; padding: 0.75rem; border: 1px solid var(--calc-maize); border-radius: 0.4rem; background: var(--calc-focus-soft); color: var(--calc-text); font-size: 0.75rem; }

.assumptions-bar { min-width: 0; }
.assumptions-bar > div { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; padding: 0.2rem 0.7rem 0.7rem; font-size: 0.72rem; }
.assumptions-bar ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0.3rem 1rem; margin: 0; padding-left: 1rem; }
.assumptions-bar p { margin: 0; padding-left: 0.7rem; border-left: 3px solid var(--calc-maize); }

.mode-switch { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; margin: 0 0 0.8rem; padding: 0; border: 0; }
.mode-switch legend { margin-bottom: 0.35rem; color: var(--calc-muted); font-size: 0.74rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.mode-switch label { cursor: pointer; }
.mode-switch input { position: absolute; opacity: 0; pointer-events: none; }
.mode-switch label span { display: block; min-height: 50px; padding: 0.55rem 0.65rem; border: 1px solid var(--calc-border-strong); border-radius: 0.4rem; background: var(--calc-surface); }
.mode-switch label strong, .mode-switch label small { display: block; }
.mode-switch label strong { font-size: 0.8rem; }
.mode-switch label small { margin-top: 0.12rem; color: var(--calc-muted); font-size: 0.7rem; }
.mode-switch input:checked + span { border-color: var(--calc-blue); background: var(--calc-focus-soft); color: var(--calc-navy); box-shadow: inset 4px 0 0 var(--calc-maize); }
.mode-switch input:focus-visible + span { outline: 3px solid var(--calc-focus-soft); outline-offset: 2px; }
.planner-mode-switch { margin-bottom: 0.55rem; }
.planner-mode-switch label span { min-height: 42px; padding-block: 0.42rem; }

.design-life-details { margin-top: 0.55rem; border: 1px solid var(--calc-border); border-radius: 0.4rem; background: var(--calc-surface); }
.design-life-details summary { display: flex; cursor: pointer; align-items: center; justify-content: space-between; gap: 1rem; padding: 0.5rem 0.65rem; color: var(--calc-blue); font-size: 0.76rem; font-weight: 800; }
.design-life-details summary span { color: var(--calc-muted); font-size: 0.65rem; letter-spacing: 0.07em; text-transform: uppercase; }
.design-life-details summary:focus-visible { outline: 3px solid var(--calc-focus-soft); outline-offset: 2px; }
.design-life-body { padding: 0.15rem 0.65rem 0.65rem; border-top: 1px solid var(--calc-border); }
.design-life-fields { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 0.8fr); gap: 0.6rem; padding-top: 0.5rem; }
.design-life-fields .field input, .design-life-fields .field select { min-height: 40px; padding-block: 0.4rem; font-size: 0.9rem; }
.design-life-body > p { margin: 0.25rem 0 0; color: var(--calc-muted); font-size: 0.68rem; }

.physical-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 0.5rem; border-block: 1px solid rgba(255, 255, 255, 0.17); }
.physical-results > div { min-width: 0; padding: 0.45rem 0.5rem; border-right: 1px solid rgba(255, 255, 255, 0.17); }
.physical-results > div:last-child { border-right: 0; }
.physical-results span, .physical-results strong { display: block; }
.physical-results span { color: rgba(255, 255, 255, 0.65); font-size: 0.64rem; text-transform: uppercase; }
.physical-results strong { overflow-wrap: anywhere; margin-top: 0.1rem; color: #ffffff; font-family: var(--calc-mono); font-size: 0.88rem; }

.inverse-result { min-width: 0; }

.matrix-view { display: flex; min-height: 0; flex-direction: column; }
.matrix-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-bottom: 0.7rem; }
.matrix-heading p { margin: 0.2rem 0 0; color: var(--calc-muted); font-size: 0.82rem; }
.return-link { color: var(--calc-blue); font-size: 0.82rem; font-weight: 750; }
.return-link:focus-visible { outline: 3px solid var(--calc-focus-soft); outline-offset: 3px; }
.matrix-wrap { min-height: 0; overflow: auto; border: 1px solid var(--calc-border-strong); border-radius: 0.45rem; background: var(--calc-raised); }
table { width: 100%; border-collapse: collapse; font-family: var(--calc-mono); font-size: 0.875rem; font-variant-numeric: tabular-nums; }
th, td { padding: 0.55rem 0.7rem; border-bottom: 1px solid var(--calc-border); text-align: right; white-space: nowrap; }
th { position: sticky; z-index: 2; top: 0; background: #132d46; color: #ffffff; font-family: var(--calc-font); font-size: 0.72rem; letter-spacing: 0.04em; text-transform: uppercase; }
th span { display: block; color: #d2ad52; }
th:first-child, td:first-child { text-align: left; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:nth-child(even) { background: var(--calc-surface); }
tbody tr.is-selected { background: #f2e6bc; color: #00274c; font-weight: 800; }
.matrix-value { display: block; }
.matrix-physical-exposure { display: block; margin-top: 0.15rem; color: var(--calc-muted); font-family: var(--calc-font); font-size: 0.68rem; font-weight: 650; white-space: normal; }
.is-selected .matrix-physical-exposure { color: #1f4e79; }
.table-note { margin: 0.55rem 0 0; color: var(--calc-muted); font-size: 0.75rem; }

.fit-view { width: 100%; }
.fit-heading { align-items: center; }
.scope-badge { padding: 0.32rem 0.58rem; border: 1px solid var(--calc-maize); border-radius: 99px; color: var(--calc-blue); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap; }
.fit-layout { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(360px, 0.75fr); gap: 0.75rem; }
.fit-layout > .card { min-width: 0; }
.fit-result-stack { display: grid; min-width: 0; align-content: start; gap: 0.75rem; }
.fit-result-stack > .card { min-width: 0; }
.fit-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 0.75rem; margin-bottom: 0.65rem; }
.unit-field { display: grid; gap: 0.2rem; color: var(--calc-muted); font-size: 0.72rem; font-weight: 750; }
.unit-field input { width: 10rem; min-height: 38px; padding: 0.4rem 0.55rem; border: 1px solid var(--calc-border-strong); border-radius: 0.35rem; outline: none; background: var(--calc-control); color: var(--calc-text); }
.unit-field input:focus { border-color: var(--calc-blue); box-shadow: 0 0 0 3px var(--calc-focus-soft); }
.fit-actions { display: flex; flex-wrap: wrap; gap: 0.45rem; }
.secondary-button, .row-remove-button, .result-action { cursor: pointer; border-radius: 0.35rem; font-weight: 800; }
.secondary-button { min-height: 38px; padding: 0.4rem 0.7rem; border: 1px solid var(--calc-border-strong); background: var(--calc-surface); color: var(--calc-text); }
.secondary-button:hover, .secondary-button:focus-visible, .row-remove-button:hover, .row-remove-button:focus-visible { border-color: var(--calc-blue); color: var(--calc-blue); outline: none; box-shadow: 0 0 0 3px var(--calc-focus-soft); }
.fit-entry-wrap { overflow: hidden; border: 1px solid var(--calc-border-strong); border-radius: 0.45rem; }
.fit-entry-table { table-layout: fixed; }
.fit-entry-table th:first-child, .fit-entry-table td:first-child { width: 6rem; }
.fit-entry-table th:last-child, .fit-entry-table td:last-child { width: 6.5rem; }
.fit-entry-table th, .fit-entry-table td { padding: 0.32rem 0.55rem; }
.fit-entry-table td { background: var(--calc-raised); }
.fit-specimen-number { color: var(--calc-muted); font-weight: 800; }
.fit-life-control { display: grid; gap: 0.12rem; }
.fit-life-input { width: 100%; min-height: 38px; padding: 0.35rem 0.55rem; border: 1px solid var(--calc-border-strong); border-radius: 0.32rem; outline: none; background: var(--calc-control); color: var(--calc-text); font-family: var(--calc-mono); font-weight: 700; }
.fit-life-input:focus { border-color: var(--calc-blue); box-shadow: 0 0 0 3px var(--calc-focus-soft); }
.fit-entry-table tr.is-invalid .fit-life-input { border-color: var(--calc-danger); background: var(--calc-danger-surface); }
.fit-row-error { color: var(--calc-danger); font-family: var(--calc-font); font-size: 0.65rem; text-align: left; }
.fit-row-error:empty { display: none; }
.row-remove-button { min-height: 34px; padding: 0.3rem 0.5rem; border: 1px solid var(--calc-border); background: transparent; color: var(--calc-muted); font-size: 0.7rem; }
.fit-entry-guidance { margin: 0.55rem 0 0; color: var(--calc-muted); font-size: 0.72rem; }
.fit-analysis-details { margin-top: 0.55rem; border: 1px solid var(--calc-border); border-radius: 0.4rem; background: var(--calc-surface); }
.fit-analysis-details summary { cursor: pointer; padding: 0.55rem 0.7rem; color: var(--calc-blue); font-size: 0.75rem; font-weight: 800; }
.fit-analysis-details summary:focus-visible { outline: 3px solid var(--calc-focus-soft); outline-offset: 2px; }
.fit-analysis-wrap { max-height: 260px; overflow: auto; border-top: 1px solid var(--calc-border); }
.fit-analysis-table { font-size: 0.75rem; }
.fit-analysis-table th { font-size: 0.64rem; }
.fit-analysis-table th, .fit-analysis-table td { padding: 0.42rem 0.5rem; }
.fit-analysis-wrap .table-note { padding: 0 0.65rem 0.55rem; }
.fit-result-card { min-height: 0; }
.fit-metric-grid { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) minmax(0, 0.65fr); }
.result-caution { margin: 0.65rem 0 0; padding: 0.55rem 0.65rem; border-left: 3px solid #ffcb05; background: rgba(255, 255, 255, 0.07); color: rgba(255, 255, 255, 0.78); font-size: 0.72rem; }
.result-action { width: 100%; min-height: 44px; margin-top: 0.65rem; padding: 0.55rem 0.8rem; border: 1px solid #ffcb05; background: #ffcb05; color: #00274c; }
.result-action:hover, .result-action:focus-visible { background: #ffdb4d; outline: 3px solid rgba(255, 255, 255, 0.65); outline-offset: 2px; }
.result-action:disabled { cursor: not-allowed; opacity: 0.5; }
.fit-plot-wrap { overflow: hidden; border: 1px solid var(--calc-border); border-radius: 0.4rem; background: var(--calc-surface); }
.fit-plot-wrap svg { display: block; width: 100%; height: auto; min-height: 260px; }
.plot-placeholder { fill: var(--calc-muted); font-family: var(--calc-font); font-size: 15px; }
.plot-grid-line { stroke: var(--calc-border); stroke-width: 1; }
.plot-axis { stroke: var(--calc-text); stroke-width: 1.5; }
.plot-tick { fill: var(--calc-muted); font-family: var(--calc-mono); font-size: 12px; }
.plot-axis-label { fill: var(--calc-text); font-family: var(--calc-font); font-size: 13px; font-weight: 750; }
.plot-fit-line { stroke: var(--calc-maize-bright); stroke-width: 3; }
.plot-point { fill: #4f8fc7; stroke: var(--calc-raised); stroke-width: 2; }
.plot-fit-label { fill: var(--calc-blue); font-family: var(--calc-mono); font-size: 13px; font-weight: 800; }
.fit-guidance-card > p { margin: 0 0 0.65rem; color: var(--calc-muted); font-size: 0.76rem; }
.fit-guidance-card ul { display: grid; gap: 0.35rem; margin: 0 0 0.7rem; padding-left: 1.1rem; font-size: 0.74rem; }
.fit-guidance-card .fit-mechanism-note, .fit-guidance-card .fit-eta-note { padding: 0.55rem 0.65rem; border-left: 3px solid var(--calc-maize); background: var(--calc-muted-surface); color: var(--calc-text); }

.fit-predictions-card .card-heading { align-items: center; }
.life-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--calc-border); border-radius: 0.4rem; background: var(--calc-surface); }
.life-metric { min-width: 0; padding: 0.48rem 0.55rem; border-right: 1px solid var(--calc-border); }
.life-metric:nth-child(4) { border-right: 0; }
.life-metric--mean { grid-column: 1 / -1; border-top: 1px solid var(--calc-border); border-right: 0; }
.life-metric span, .life-metric strong, .life-metric small { display: block; }
.life-metric span { color: var(--calc-muted); font-size: 0.65rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }
.life-metric strong { overflow-wrap: anywhere; margin-block: 0.08rem; color: var(--calc-navy); font-family: var(--calc-mono); font-size: 0.98rem; }
.life-metric small { color: var(--calc-muted); font-size: 0.64rem; }
.prediction-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem; margin-top: 0.55rem; }
.prediction-control { min-width: 0; padding: 0.55rem; border: 1px solid var(--calc-border); border-radius: 0.4rem; background: var(--calc-surface); }
.prediction-control h3 { margin: 0 0 0.4rem; color: var(--calc-blue); font-size: 0.76rem; }
.prediction-control label { display: flex; justify-content: space-between; gap: 0.5rem; color: var(--calc-text); font-size: 0.7rem; font-weight: 750; }
.prediction-control label span { color: var(--calc-muted); font-weight: 650; }
.prediction-control input { width: 100%; min-height: 40px; margin-top: 0.25rem; padding: 0.4rem 0.5rem; border: 1px solid var(--calc-border-strong); border-radius: 0.35rem; outline: none; background: var(--calc-control); color: var(--calc-text); font-family: var(--calc-mono); font-weight: 700; }
.prediction-control input:focus { border-color: var(--calc-blue); box-shadow: 0 0 0 3px var(--calc-focus-soft); }
.prediction-control input[aria-invalid="true"] { border-color: var(--calc-danger); background: var(--calc-danger-surface); }
.prediction-control > small { display: block; min-height: 1em; margin-top: 0.18rem; color: var(--calc-muted); font-size: 0.64rem; }
.prediction-output { display: grid; gap: 0.2rem; margin-top: 0.45rem; padding-top: 0.4rem; border-top: 1px solid var(--calc-border); font-size: 0.68rem; }
.prediction-output span { display: flex; justify-content: space-between; gap: 0.5rem; color: var(--calc-muted); }
.prediction-output strong { color: var(--calc-navy); font-family: var(--calc-mono); }
.prediction-output--life > span { display: grid; }
.prediction-output--life strong { overflow-wrap: anywhere; margin-top: 0.08rem; font-size: 0.9rem; }
.prediction-output--life small { color: var(--calc-blue); font-size: 0.68rem; font-weight: 750; }
.prediction-scope { margin: 0.55rem 0 0; color: var(--calc-muted); font-size: 0.66rem; }

/* V2.2 light-mode polish stays local to the Weibull product and reuses the shared theme contract. */
:root:not([data-theme="dark"]) .view-tabs { border-color: var(--theme-border-strong, rgba(19, 45, 70, 0.34)); background: var(--theme-surface, #f7f4ed); }
:root:not([data-theme="dark"]) .view-stage { border-color: var(--theme-border-strong, rgba(19, 45, 70, 0.34)); background: var(--theme-surface-muted, #eef1f4); }
:root:not([data-theme="dark"]) .card { border-color: var(--theme-border-strong, rgba(19, 45, 70, 0.34)); box-shadow: 0 1px 0 var(--theme-border, rgba(19, 45, 70, 0.18)); }
:root:not([data-theme="dark"]) .engineering-details,
:root:not([data-theme="dark"]) .assumptions-bar,
:root:not([data-theme="dark"]) .design-life-details,
:root:not([data-theme="dark"]) .mode-switch label span,
:root:not([data-theme="dark"]) .prediction-control,
:root:not([data-theme="dark"]) .life-metrics { background: var(--theme-surface, #f7f4ed); }
:root:not([data-theme="dark"]) .matrix-wrap,
:root:not([data-theme="dark"]) .fit-entry-wrap,
:root:not([data-theme="dark"]) .fit-analysis-details,
:root:not([data-theme="dark"]) .fit-plot-wrap { border-color: var(--theme-border-strong, rgba(19, 45, 70, 0.34)); }

body.weibull-help-page { height: auto; overflow: auto; }
.help-shell { width: min(100% - 2rem, 1480px); margin-inline: auto; padding-block: 1.1rem 2.5rem; }
.help-hero { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding: 0.95rem 0 1rem; border-bottom: 1px solid var(--calc-border-strong); }
.help-hero .workspace-title { align-items: flex-start; }
.help-hero-copy { max-width: 800px; }
.help-hero h1 { margin: 0; font-family: var(--calc-serif); font-size: clamp(2rem, 4vw, 3.2rem); font-weight: 500; letter-spacing: -0.035em; line-height: 1.02; }
.help-intro { max-width: 760px; margin: 0.55rem 0 0; color: var(--calc-muted); font-size: 1rem; }
.help-toc { margin-block: 1rem; padding: 0.85rem 1rem; border: 1px solid var(--calc-border-strong); border-radius: 0.55rem; background: var(--calc-raised); box-shadow: var(--calc-shadow); }
.help-toc h2 { margin: 0 0 0.55rem; color: var(--calc-blue); font-size: 0.82rem; letter-spacing: 0.08em; text-transform: uppercase; }
.help-toc ol { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.25rem 1.2rem; margin: 0; padding-left: 1.25rem; }
.help-toc a { color: var(--calc-text); font-size: 0.78rem; font-weight: 700; text-decoration-color: var(--calc-maize); text-underline-offset: 0.18em; }
.help-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 0.32fr); align-items: start; gap: 0.85rem; }
.help-content { display: grid; gap: 0.85rem; }
.help-section { scroll-margin-top: 1rem; }
.help-section h2 { margin: 0 0 0.55rem; font-family: var(--calc-serif); font-size: 1.45rem; font-weight: 500; line-height: 1.12; }
.help-section h3 { margin: 0.8rem 0 0.25rem; color: var(--calc-blue); font-size: 0.9rem; }
.help-section p { margin: 0.35rem 0; color: var(--calc-muted); }
.help-section li { margin-block: 0.2rem; }
.help-section strong { color: var(--calc-text); }
.help-section a { color: var(--calc-blue); }
.help-sidebar { position: sticky; top: 1rem; display: grid; gap: 0.85rem; }
.help-callout { border-left: 4px solid var(--calc-maize); }
.help-callout h2 { margin: 0 0 0.5rem; font-family: var(--calc-serif); font-size: 1.3rem; font-weight: 500; }
.help-callout p { margin: 0.35rem 0; color: var(--calc-muted); }
.help-example-grid, .glossary-grid { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 0.35rem 0.85rem; margin: 0.7rem 0 0; }
.help-example-grid dt, .glossary-grid dt { color: var(--calc-blue); font-weight: 800; }
.help-example-grid dd, .glossary-grid dd { margin: 0; color: var(--calc-muted); }
.formula { overflow-x: auto; margin: 0.6rem 0; padding: 0.65rem 0.75rem; border: 1px solid var(--calc-border); border-radius: 0.4rem; background: var(--calc-muted-surface); color: var(--calc-navy); font-family: var(--calc-mono); font-size: 0.86rem; white-space: nowrap; }
.help-note { padding: 0.6rem 0.7rem; border-left: 3px solid var(--calc-maize); background: var(--calc-muted-surface); color: var(--calc-text) !important; }
.help-footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--calc-border-strong); color: var(--calc-muted); }
.help-footer p { margin: 0; }

.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; }
[hidden] { display: none !important; }

@media (min-width: 1000px) {
  body { height: 100vh; overflow: hidden; }
  .app-shell { height: calc(100vh - 64px); display: flex; min-height: 0; flex-direction: column; }
  .view-stage { display: flex; min-height: 0; flex: 1; }
  .calculator-view { width: 100%; min-height: 0; overflow: auto; }
  .calculator-view.is-active { display: flex; flex-direction: column; }
  .combined-layout { min-height: 100%; flex: 1; grid-template-columns: minmax(0, 1.35fr) minmax(390px, 0.75fr); grid-template-rows: minmax(0, 3fr) minmax(0, 2fr); }
  .combined-layout > .input-card { overflow: auto; }
  .combined-layout .card { padding: 0.65rem; }
  .combined-layout .card-heading { margin-bottom: 0.45rem; padding-bottom: 0.4rem; }
  .card-heading > p { white-space: nowrap; }
  .combined-layout .field input { min-height: 44px; }
  .combined-layout .beta-quick { margin-block: 0.45rem; padding-block: 0.4rem; }
  .combined-layout .guidance-heading { padding-block: 0.45rem 0.18rem; }
  .combined-layout .details-body,
  .combined-layout .assumptions-bar > div { padding-bottom: 0.55rem; }
  .combined-layout .primary-result { padding-block: 0.4rem; }
  .combined-layout .primary-result strong { font-size: clamp(2.2rem, 2.8vw, 2.75rem); }
  .combined-layout .metric-grid { margin-top: 0.4rem; }
  .combined-layout .metric { padding-block: 0.35rem; }
  .combined-layout .pass-strip { padding-top: 0.35rem; }
  .guidance-grid .assumptions-bar > div { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
  .guidance-grid .assumptions-bar ul { grid-template-columns: 1fr; }
  .matrix-view .matrix-wrap { flex: 1; }
  .fit-plot-wrap svg { height: 282px; min-height: 0; }
  .fit-guidance-card > p { margin-bottom: 0.45rem; font-size: 0.72rem; }
  .fit-guidance-card ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.22rem 1rem; margin-bottom: 0.5rem; font-size: 0.7rem; }
  .fit-guidance-card .fit-mechanism-note,
  .fit-guidance-card .fit-eta-note { padding-block: 0.42rem; }
}

@media (min-width: 1100px) {
  .workspace-context > p { white-space: nowrap; }
  .fit-result-stack { display: contents; }
  .fit-input-card { grid-column: 1; grid-row: 1; }
  .fit-result-card { grid-column: 2; grid-row: 1; }
  .fit-plot-card { grid-column: 1; grid-row: 2; }
  .fit-predictions-card { grid-column: 2; grid-row: 2; }
  .fit-guidance-card { grid-column: 1 / -1; grid-row: 3; }
}

@media (min-width: 1000px) and (max-height: 999px) {
  body { height: auto; min-height: 100vh; overflow: auto; }
  .site-header { height: 54px; }
  .app-shell { height: auto; min-height: calc(100vh - 54px); padding-block: 0.55rem; }
  .workspace-heading { align-items: center; margin-bottom: 0.55rem; }
  .tool-symbol { width: 42px; height: 42px; flex-basis: 42px; font-size: 1.65rem; }
  .workspace-heading h1 { font-size: clamp(1.85rem, 2.7vw, 2.2rem); }
  .workspace-heading > p { font-size: 0.86rem; }
  .view-tab { min-height: 46px; padding-block: 0.5rem; }
  .view-stage { display: block; }
  .calculator-view { overflow: visible; padding: 0.75rem; }
  .calculator-view.is-active { display: block; }
  .combined-layout { min-height: 0; grid-template-rows: auto auto; }
  .combined-layout > .input-card { overflow: visible; }
}

@media (min-width: 1000px) and (min-height: 1000px) {
  .combined-layout { grid-template-rows: minmax(0, 1.2fr) minmax(0, 0.8fr); }
  .combined-layout .card { padding: 0.9rem; }
  .combined-layout .card-heading { margin-bottom: 0.7rem; padding-bottom: 0.6rem; }
  .card-heading h2, .inverse-result h2, .matrix-heading h2 { font-size: 1.55rem; }
  .card-heading > p { font-size: 0.88rem; }
  .combined-layout .field input { min-height: 50px; font-size: 1.2rem; }
  .field label { font-size: 0.9rem; }
  .field small, .field-error { font-size: 0.74rem; }
  .mode-switch label span { min-height: 56px; padding: 0.7rem 0.75rem; }
  .mode-switch label strong { font-size: 0.88rem; }
  .mode-switch label small { font-size: 0.76rem; }
  .beta-quick { font-size: 0.82rem; }
  .guidance-heading { padding: 0.65rem 0.8rem 0.3rem; font-size: 0.86rem; }
  .details-body { padding: 0.25rem 0.8rem 0.6rem; }
  .beta-list li, .details-body > p, .assumptions-bar > div { font-size: 0.78rem; }
  .assumptions-bar > div { padding: 0.25rem 0.8rem 0.6rem; }
  .combined-layout .primary-result { padding: 0.65rem 0.85rem; }
  .combined-layout .primary-result strong { font-size: clamp(2.8rem, 3.3vw, 3.45rem); }
  .primary-result span { font-size: 0.82rem; }
  .primary-result small { font-size: 0.78rem; }
  .combined-layout .metric { padding: 0.55rem 0.6rem; }
  .metric span, .metric small { font-size: 0.7rem; }
  .metric strong { font-size: clamp(1.15rem, 1.5vw, 1.45rem); }
  .pass-strip { font-size: 0.76rem; }
}

@media (min-width: 1001px) {
  body:has(.site-rail) .site-header { display: none; }
  body:has(.site-rail) .app-shell { width: auto; height: 100vh; margin-left: 248px; padding-inline: 1rem; }
  body:has(.site-rail) .help-shell { width: auto; margin-left: 248px; padding-inline: 1rem; }
}

@media (max-width: 1499px) {
  .workspace-heading { align-items: stretch; flex-direction: column; gap: 0.5rem; }
  .workspace-context { justify-content: space-between; }
  .workspace-context > p { text-align: left; }
}

@media (min-width: 1000px) and (max-width: 1249px) {
  .combined-layout { grid-template-columns: 1fr; grid-template-rows: auto; }
  .combined-layout > .input-card { overflow: visible; }
  .card-heading > p { white-space: normal; }
  .help-toc ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .help-layout { grid-template-columns: 1fr; }
  .help-sidebar { position: static; grid-row: 1; }
}

@media (max-width: 1099px) {
  .fit-layout { grid-template-columns: 1fr; }
}

@media (max-width: 999px) {
  .app-shell { width: min(100% - 1.25rem, 900px); }
  .workspace-heading { align-items: start; flex-direction: column; gap: 0.45rem; }
  .workspace-context > p { text-align: left; }
  .combined-layout { grid-template-columns: 1fr; }
  .fit-layout { grid-template-columns: 1fr; }
  .field-grid--inverse { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .help-shell { width: min(100% - 1.25rem, 900px); }
  .help-toc ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .help-layout { grid-template-columns: 1fr; }
  .help-sidebar { position: static; grid-row: 1; }
}

@media (max-width: 699px) {
  .site-header { height: 58px; }
  .site-header__inner { width: min(100% - 1.25rem, 1480px); }
  .header-criterion span { display: none; }
  .header-criterion strong { font-size: 0.58rem; }
  .app-shell { padding-block: 0.8rem; }
  .workspace-heading h1 { font-size: 1.65rem; }
  .workspace-context { align-items: flex-start; flex-direction: column; gap: 0.45rem; }
  .workspace-context > p { font-size: 0.75rem; }
  .guide-link { min-height: 36px; }
  .view-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .view-tab { justify-content: center; gap: 0.25rem; padding-inline: 0.35rem; white-space: nowrap; }
  .view-tab strong { font-size: 0; }
  .view-tab strong::after { content: attr(data-short); font-size: 0.68rem; }
  .calculator-view { padding: 0.7rem; }
  .field-grid--planner, .field-grid--inverse { grid-template-columns: 1fr; }
  .beta-list { grid-template-columns: 1fr; }
  .guidance-grid { grid-template-columns: 1fr; }
  .tool-symbol { width: 40px; height: 40px; flex-basis: 40px; font-size: 1.55rem; }
  .metric-grid { grid-template-columns: 1fr; border-bottom: 0; }
  .metric { display: grid; grid-template-columns: 1fr auto; align-items: baseline; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.17); }
  .metric small { grid-column: 1 / -1; }
  .assumptions-bar > div { grid-template-columns: 1fr; }
  .assumptions-bar ul { grid-template-columns: 1fr; }
  .mode-switch { grid-template-columns: 1fr; }
  .planner-mode-switch { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .planner-mode-switch label strong { font-size: 0.72rem; }
  .planner-mode-switch label small { font-size: 0.63rem; }
  .design-life-fields { grid-template-columns: 1fr; }
  .physical-results { grid-template-columns: 1fr; }
  .physical-results > div { border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.17); }
  .physical-results > div:last-child { border-bottom: 0; }
  .card-heading { align-items: start; flex-direction: column; gap: 0.25rem; }
  .card-heading > p { text-align: left; white-space: normal; }
  .matrix-heading { align-items: start; flex-direction: column; }
  .fit-toolbar { align-items: stretch; flex-direction: column; }
  .unit-field input { width: 100%; }
  .fit-actions > button { flex: 1; }
  .matrix-wrap { overflow: visible; border: 0; background: transparent; }
  table, tbody, tr, td { display: block; width: 100%; }
  thead { display: none; }
  tbody { display: grid; gap: 0.65rem; }
  tbody tr { overflow: hidden; border: 1px solid var(--calc-border-strong); border-radius: 0.45rem; background: var(--calc-raised); }
  tbody tr:nth-child(even) { background: var(--calc-raised); }
  tbody tr.is-selected { border-color: var(--calc-maize); background: #f2e6bc; }
  td { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 0.48rem 0.65rem; text-align: right !important; }
  td::before { color: var(--calc-muted); content: attr(data-label); font-family: var(--calc-font); font-size: 0.59rem; text-align: left; text-transform: uppercase; }
  td:has(.matrix-physical-exposure) { display: grid; grid-template-columns: 1fr auto; gap: 0.1rem 1rem; }
  td:has(.matrix-physical-exposure)::before { grid-row: 1 / 3; align-self: center; }
  td:has(.matrix-physical-exposure) .matrix-value,
  td:has(.matrix-physical-exposure) .matrix-physical-exposure { grid-column: 2; }
  .is-selected td::before { color: #1f4e79; }
  .fit-entry-table { display: table; width: 100%; table-layout: fixed; }
  .fit-entry-table thead { display: table-header-group; }
  .fit-entry-table tbody { display: table-row-group; }
  .fit-entry-table tr { display: table-row; }
  .fit-entry-table th, .fit-entry-table td { display: table-cell; width: auto; }
  .fit-entry-table th:first-child, .fit-entry-table td:first-child { width: 4.5rem; }
  .fit-entry-table th:last-child, .fit-entry-table td:last-child { width: 4.8rem; }
  .fit-entry-table td::before { content: none; }
  .fit-entry-table .row-remove-button { padding-inline: 0.3rem; font-size: 0.63rem; }
  .fit-analysis-wrap { overflow-x: auto; }
  .fit-analysis-table { display: table; min-width: 700px; }
  .fit-analysis-table thead { display: table-header-group; }
  .fit-analysis-table tbody { display: table-row-group; }
  .fit-analysis-table tr { display: table-row; }
  .fit-analysis-table th, .fit-analysis-table td { display: table-cell; width: auto; }
  .fit-analysis-table td::before { content: none; }
  .life-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .life-metric { border-bottom: 1px solid var(--calc-border); }
  .life-metric:nth-child(2), .life-metric:nth-child(4) { border-right: 0; }
  .life-metric:nth-child(3), .life-metric:nth-child(4) { border-bottom: 0; }
  .life-metric--mean { border-top: 1px solid var(--calc-border); border-bottom: 0; }
  .prediction-grid { grid-template-columns: 1fr; }
  .help-hero { align-items: flex-start; flex-direction: column; }
  .help-hero h1 { font-size: 1.85rem; }
  .help-intro { font-size: 0.88rem; }
  .help-toc ol { grid-template-columns: 1fr; }
  .help-example-grid, .glossary-grid { grid-template-columns: 1fr; gap: 0.1rem; }
  .help-example-grid dd, .glossary-grid dd { margin-bottom: 0.45rem; }
  .help-footer { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto !important; transition: none !important; }
}
