:root {
  --ink: #f7f7f4;
  --ink-soft: #ffffff;
  --ink-panel: #f0f2ee;
  --paper: #111417;
  --paper-dim: #4e5857;
  --paper-faint: #7f8986;
  --line: rgba(17, 20, 23, .14);
  --line-dark: rgba(11, 15, 18, .14);
  --orange: #d96f3d;
  --orange-bright: #bd542a;
  --mint: #a7d9bf;
  --cyan: #9ed6dc;
  --violet: #b7b6f0;
  --rose: #e8a9ba;
  --mono: "SFMono-Regular", "Roboto Mono", "IBM Plex Mono", Menlo, monospace;
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
  --display: "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; background: var(--ink); color: var(--paper); font-family: var(--sans); font-size: 15px; line-height: 1.65; letter-spacing: 0; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.site-shell { min-height: 100vh; background: var(--ink); }
.site-header { height: 74px; display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(22px, 4vw, 64px); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 20; background: rgba(247,247,244,.96); backdrop-filter: blur(14px); }
.brand, .header-actions, .brand, .footer-brand { display: flex; align-items: center; }
.brand { gap: 12px; min-width: 0; }
.brand-mark { width: 27px; height: 26px; display: inline-flex; align-items: flex-end; gap: 3px; }
.brand-mark span { display: block; width: 6px; background: var(--paper); border-radius: 1px 1px 0 0; }
.brand-mark span:nth-child(1) { height: 15px; background: var(--orange); }
.brand-mark span:nth-child(2) { height: 23px; }
.brand-mark span:nth-child(3) { height: 18px; background: var(--cyan); }
.brand-name { font-weight: 700; letter-spacing: 0; font-size: 17px; }
.brand-rule { height: 18px; width: 1px; background: var(--line); margin-left: 5px; }
.brand-report { font-family: var(--mono); font-size: 10px; color: var(--paper-dim); letter-spacing: .08em; text-transform: uppercase; }
.header-actions { gap: 18px; }
.release-chip { display: inline-flex; align-items: center; gap: 8px; color: var(--paper-dim); font: 10px var(--mono); letter-spacing: .1em; }
.header-link { color: var(--paper-dim); font: 10px var(--mono); letter-spacing: .08em; border-bottom: 1px solid transparent; }
.header-link:hover, .header-link:focus-visible { color: var(--orange-bright); border-color: var(--orange); outline: none; }
.status-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 4px rgba(167,217,191,.1); }
.language-toggle { border: 1px solid var(--line); background: transparent; color: var(--paper-dim); padding: 6px 10px; border-radius: 4px; cursor: pointer; font: 11px var(--mono); letter-spacing: .08em; }
.language-toggle:hover, .language-toggle:focus-visible { border-color: var(--orange); color: var(--paper); outline: none; }
.lang-option.active { color: var(--orange-bright); }
.lang-slash { opacity: .4; padding: 0 4px; }
.icon-button { border: 0; background: transparent; color: var(--paper); cursor: pointer; }
.mobile-menu { display: none; font-size: 20px; }
.layout-grid { display: block; max-width: 1600px; margin: 0 auto; }
.toc { position: sticky; top: 74px; height: calc(100vh - 74px); padding: 42px 28px 28px 38px; border-right: 1px solid var(--line); display: flex; flex-direction: column; }
.toc-label, .section-index, .signal-label, .source-label, .card-label, .toc-foot { font: 10px var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--paper-faint); }
.toc nav { margin-top: 25px; display: grid; gap: 3px; }
.toc-link { display: grid; grid-template-columns: 28px 1fr; align-items: center; gap: 8px; color: var(--paper-faint); padding: 9px 10px; margin-left: -10px; border-left: 2px solid transparent; transition: color .2s ease, border-color .2s ease, background .2s ease; }
.toc-link span { font: 10px var(--mono); opacity: .65; }
.toc-link b { font-size: 12px; font-weight: 500; }
.toc-link:hover, .toc-link:focus-visible, .toc-link.active { color: var(--paper); border-left-color: var(--orange); background: rgba(241,164,111,.06); outline: none; }
.toc-link.active b { color: var(--orange-bright); }
.toc-foot { margin-top: auto; color: #a4aaa7; }
.report-main { min-width: 0; }
.section-anchor { scroll-margin-top: 100px; }
.hero { padding: clamp(74px, 10vw, 150px) clamp(28px, 7vw, 120px) 34px; border-bottom: 1px solid var(--line); }
.hero-kicker { display: flex; align-items: center; gap: 10px; color: var(--orange); font: 10px var(--mono); letter-spacing: .14em; }
.eyebrow-line { width: 30px; height: 1px; background: var(--orange); }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(38px, 8vw, 150px); align-items: end; margin-top: 35px; }
.hero h1 { max-width: 75%; margin: 0; font-family: var(--display); font-size: clamp(42px, 5.7vw, 86px); line-height: .98; letter-spacing: 0; font-weight: 700; text-wrap: balance; }
.hero-lede { max-width: 680px; margin: 28px 0 0; color: var(--paper-dim); font-size: clamp(16px, 1.55vw, 21px); line-height: 1.65; }
.hero-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 25px; }
.tag { border: 1px solid var(--line); color: var(--paper-dim); padding: 5px 9px; border-radius: 3px; font: 9px var(--mono); letter-spacing: .09em; }
.tag-accent { color: var(--orange-bright); border-color: rgba(241,164,111,.45); }
.hero-actions { display: flex; align-items: center; gap: 22px; margin-top: 34px; }
.primary-button { display: inline-flex; align-items: center; gap: 19px; padding: 12px 15px 12px 17px; background: var(--orange); color: var(--ink); font-weight: 700; border-radius: 3px; transition: transform .2s ease, background .2s ease; }
.primary-button:hover, .primary-button:focus-visible { background: var(--orange-bright); transform: translateY(-2px); outline: none; }
.button-arrow { font-size: 19px; line-height: 1; }
.text-link { display: inline-flex; gap: 9px; color: var(--paper-dim); font-size: 13px; border-bottom: 1px solid var(--line); padding-bottom: 2px; }
.text-link:hover { color: var(--orange-bright); border-color: var(--orange); }
.hero-signal { min-height: 290px; border-left: 1px solid var(--line); padding: 11px 0 0 30px; position: relative; }
.signal-label { color: var(--orange); }
.signal-value { margin-top: 21px; font: 700 clamp(62px, 8vw, 116px)/.9 var(--display); letter-spacing: 0; }
.signal-value span { font-size: .4em; color: var(--orange); letter-spacing: 0; }
.signal-model { margin-top: 13px; color: var(--paper); font-size: 16px; font-weight: 700; }
.signal-meta { display: flex; justify-content: space-between; gap: 20px; color: var(--paper-faint); font: 10px var(--mono); margin-top: 4px; }
.signal-bars { position: absolute; bottom: 0; left: 30px; right: 0; height: 96px; display: flex; align-items: flex-end; gap: 7px; opacity: .75; }
.signal-bars i { flex: 1; background: var(--violet); display: block; min-width: 9px; }
.signal-bars i:nth-child(1), .signal-bars i:nth-child(4) { background: var(--cyan); }
.signal-bars i:nth-child(5) { background: var(--orange); }
.hero-note { display: flex; gap: 18px; margin-top: 58px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--paper-faint); font-size: 12px; }
.mono { font-family: var(--mono); letter-spacing: .03em; }
.hero-note .mono { color: var(--orange); white-space: nowrap; font-size: 10px; }
.metric-strip { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--line); }
.metric-item { min-height: 150px; padding: 30px clamp(18px, 3.5vw, 52px); border-right: 1px solid var(--line); }
.metric-item:last-child { border-right: 0; }
.metric-value { display: block; font: 700 clamp(39px, 4.5vw, 66px)/1 var(--display); letter-spacing: 0; color: var(--paper); }
.metric-label { display: block; font-size: 14px; color: var(--paper); margin-top: 13px; }
.metric-sub { display: block; color: var(--paper-faint); font: 10px var(--mono); margin-top: 3px; }
.report-section { padding: clamp(70px, 9vw, 130px) clamp(28px, 7vw, 120px); border-bottom: 1px solid var(--line); }
.report-body { background: #fff; }
.reading-layout { display: grid; grid-template-columns: 200px minmax(0, 900px); gap: clamp(38px, 6vw, 90px); align-items: start; }
.reading-index { position: sticky; top: 108px; display: grid; align-content: start; gap: 8px; padding-top: 3px; }
.reading-index > span { color: var(--orange); font: 10px var(--mono); letter-spacing: .12em; margin-bottom: 11px; }
.reading-index a { color: var(--paper-faint); font: 10px var(--mono); padding: 7px 0; border-bottom: 1px solid var(--line); }
.reading-index a:hover { color: var(--orange-bright); }
.article-copy { min-width: 0; }
.article-chapter { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 23px; padding: 0 0 68px; margin-bottom: 68px; border-bottom: 1px solid var(--line); scroll-margin-top: 110px; }
.article-chapter:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }
.article-num { color: var(--orange); font: 11px var(--mono); padding-top: 8px; }
.article-chapter h3 { margin: 0 0 24px; font: 700 clamp(25px, 2.5vw, 38px)/1.12 var(--display); letter-spacing: 0; }
.article-chapter p { margin: 0 0 19px; color: #303736; font-family: Georgia, "Songti SC", "SimSun", serif; font-size: 17px; line-height: 1.9; }
.article-chapter strong { color: var(--paper); font-weight: 700; }
.article-chapter em { color: var(--orange-bright); font-style: normal; }
.article-chapter ul { margin: 10px 0 23px; padding-left: 20px; color: #303736; font-family: Georgia, "Songti SC", "SimSun", serif; font-size: 16px; line-height: 1.8; }
.article-chapter li { margin: 7px 0; padding-left: 5px; }
.article-callout { margin: 28px 0; padding: 17px 20px; border-left: 3px solid var(--orange); background: #f5f3ee; color: #303736; font: 14px/1.7 var(--sans); }
.article-statline { display: grid; grid-template-columns: repeat(4, 1fr); margin: 28px 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.article-statline span { min-height: 80px; padding: 13px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--paper-faint); font: 10px var(--mono); }
.article-statline b { display: block; color: var(--paper); font: 700 25px/1 var(--display); margin-bottom: 8px; }
.article-results-leaderboard { margin-top: 48px; padding-top: 30px; border-top: 1px solid var(--line); scroll-margin-top: 110px; }
.article-leaderboard-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .7fr); gap: 26px; align-items: end; margin-bottom: 24px; }
.article-leaderboard-heading h4 { margin: 0; color: var(--paper); font: 700 clamp(25px, 2.8vw, 36px)/1.1 var(--display); }
.article-leaderboard-heading p { margin: 0; color: var(--paper-dim); font-size: 12px; line-height: 1.7; }
.article-results-leaderboard .leaderboard-layout { grid-template-columns: minmax(0, 1fr); }
.article-results-leaderboard .model-detail { position: static; min-height: auto; }
.article-results-leaderboard .detail-score { margin: 15px 0; }
.article-results-leaderboard .detail-grid { max-width: 350px; }
.article-execution-stats { margin-top: 54px; padding-top: 30px; border-top: 1px solid var(--line); scroll-margin-top: 110px; }
.execution-stats-heading { margin-bottom: 20px; }
.execution-table-wrap { overflow-x: auto; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.execution-table { width: 100%; min-width: 860px; border-collapse: collapse; table-layout: auto; }
.execution-table th, .execution-table td { padding: 15px 12px; border-bottom: 1px solid rgba(17,20,23,.1); text-align: right; white-space: nowrap; }
.execution-table thead th { color: var(--paper-faint); font: 10px var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.execution-table thead th:first-child, .execution-table tbody th { padding-left: 4px; text-align: left; }
.execution-table tbody th { color: var(--paper); font: 600 13px var(--sans); }
.execution-table tbody td { color: var(--paper-dim); font: 12px var(--mono); }
.execution-table tbody tr:last-child th, .execution-table tbody tr:last-child td { border-bottom: 0; }
.execution-stats-note { max-width: 760px; margin: 16px 0 0; color: var(--paper-faint); font-size: 11px; line-height: 1.7; }
.section-heading { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(250px, .7fr); align-items: end; gap: 40px; margin-bottom: 44px; }
.section-heading h2 { margin: 12px 0 0; max-width: 700px; font: 700 clamp(29px, 3.6vw, 52px)/1.06 var(--display); letter-spacing: 0; text-wrap: balance; }
.section-heading > p, .heading-aside { color: var(--paper-dim); margin: 0; font-size: 14px; line-height: 1.75; }
.split-heading { align-items: start; }
.pull-quote { border-top: 1px solid var(--orange); padding-top: 12px; display: grid; grid-template-columns: 30px 1fr; gap: 8px; }
.pull-quote > span { color: var(--orange); font: 42px/1 Georgia, serif; }
.pull-quote p { margin: 0; color: var(--paper); font-size: 17px; line-height: 1.5; }
.leaderboard-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 15px; }
.metric-tabs { display: flex; flex-wrap: wrap; gap: 5px; }
.metric-tab { border: 1px solid var(--line); background: transparent; color: var(--paper-dim); padding: 8px 12px; cursor: pointer; font: 11px var(--mono); border-radius: 3px; }
.metric-tab span { font: 10px var(--sans); opacity: .7; margin-left: 4px; }
.metric-tab:hover, .metric-tab:focus-visible, .metric-tab.active { border-color: var(--orange); color: var(--orange-bright); background: rgba(241,164,111,.08); outline: none; }
.toolbar-note { color: var(--paper-faint); font: 10px var(--mono); }
.leaderboard-layout { display: grid; grid-template-columns: minmax(0, 1fr) 246px; gap: 18px; align-items: start; }
.table-wrap { overflow-x: auto; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.leaderboard-table { width: 100%; min-width: 760px; border-collapse: collapse; table-layout: auto; }
.leaderboard-table th, .leaderboard-table td { padding: 15px 12px; text-align: left; border-bottom: 1px solid rgba(17,20,23,.1); white-space: nowrap; }
.leaderboard-table th { color: var(--paper-faint); font: 10px var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.leaderboard-table th:first-child, .leaderboard-table td:first-child { padding-left: 4px; width: 36px; }
.leaderboard-table td { color: var(--paper-dim); font: 12px var(--mono); }
.leaderboard-table td:nth-child(2) { color: var(--paper); font: 600 13px var(--sans); min-width: 170px; }
.leaderboard-table tr { cursor: pointer; transition: background .16s ease; }
.leaderboard-table tbody tr:hover, .leaderboard-table tbody tr.selected { background: rgba(241,164,111,.08); }
.leaderboard-table tbody tr.selected td:nth-child(2), .leaderboard-table tbody tr:first-child td:nth-child(2) { color: var(--orange-bright); }
.leaderboard-table tbody tr:first-child td:first-child { color: var(--orange); }
.bar-cell { min-width: 126px; }
.bar-cell-inner { display: grid; grid-template-columns: minmax(58px, 1fr) 43px; gap: 8px; align-items: center; }
.mini-bar { height: 5px; background: #dfe3df; overflow: hidden; }
.mini-bar i { display: block; height: 100%; background: var(--orange); }
.leaderboard-table td .completion { color: var(--mint); }
.model-detail { border: 1px solid var(--line); min-height: 250px; padding: 19px; background: var(--ink-panel); position: sticky; top: 95px; }
.detail-kicker { color: var(--orange); font: 9px var(--mono); letter-spacing: .13em; }
.detail-name { margin: 14px 0 3px; font-size: 19px; line-height: 1.2; }
.detail-role { color: var(--paper-faint); font-size: 12px; line-height: 1.55; }
.detail-score { margin: 26px 0; display: flex; align-items: baseline; gap: 7px; }
.detail-score strong { font: 700 44px/1 var(--display); letter-spacing: 0; }
.detail-score span { color: var(--orange); font: 10px var(--mono); }
.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding-top: 13px; border-top: 1px solid var(--line); }
.detail-grid small { display: block; color: var(--paper-faint); font: 9px var(--mono); }
.detail-grid b { display: block; margin-top: 3px; color: var(--paper); font: 14px var(--mono); }
.benchmark-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.evidence-card { min-height: 260px; padding: 22px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--ink-soft); }
.evidence-card-accent { background: #eef5f0; }
.card-top, .panel-heading { display: flex; justify-content: space-between; align-items: center; }
.card-number { color: var(--orange); font: 11px var(--mono); }
.card-label { color: var(--paper-faint); }
.evidence-card h3 { margin: 48px 0 12px; font: 600 22px/1.2 var(--display); letter-spacing: 0; }
.evidence-card p { margin: 0; color: var(--paper-dim); font-size: 13px; line-height: 1.7; }
.card-foot { color: var(--paper-faint); margin-top: 38px; font-size: 9px; }
.workflow-line { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; align-items: center; padding: 20px 0 0; color: var(--paper-dim); font: 11px var(--mono); }
.workflow-line i { color: var(--orange); font-style: normal; }
.workflow-line strong { color: var(--orange-bright); font-weight: 500; }
.diagnosis-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.diagnosis-panel { background: var(--ink-soft); border: 1px solid var(--line); padding: 21px; min-height: 265px; }
.diagnosis-panel-wide { grid-column: 1 / -1; }
.panel-heading { color: var(--paper); font-size: 13px; }
.panel-meta { color: var(--orange); font: 10px var(--mono); }
.diagnosis-chart { height: 150px; display: flex; align-items: flex-end; gap: clamp(8px, 1.6vw, 20px); padding: 20px 6px 0; border-bottom: 1px solid var(--line); }
.diag-column { flex: 1; min-width: 0; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; gap: 8px; }
.diag-column i { display: block; width: min(34px, 70%); background: var(--orange); min-height: 4px; }
.diag-column:nth-child(2) i, .diag-column:nth-child(5) i { background: var(--cyan); }
.diag-column span { color: var(--paper-faint); font: 9px var(--mono); white-space: nowrap; }
.diag-column b { color: var(--paper); font: 10px var(--mono); }
.panel-caption { margin-top: 13px; color: var(--paper-dim); font-size: 12px; }
.issue-bars { display: grid; gap: 11px; margin-top: 22px; }
.issue-row { display: grid; grid-template-columns: 60px minmax(0, 1fr) 50px; gap: 12px; align-items: center; }
.issue-row label { color: var(--paper-faint); font: 10px var(--mono); }
.issue-track { height: 9px; background: #dfe3df; }
.issue-track i { display: block; height: 100%; background: var(--mint); }
.issue-row strong { color: var(--paper); font: 11px var(--mono); text-align: right; }
.task-map { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.task-item { min-height: 160px; padding: 18px 19px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .18s ease, transform .18s ease; }
.task-item:hover { background: var(--ink-panel); transform: translateY(-2px); }
.task-item-index { color: var(--orange); font: 10px var(--mono); }
.task-item h3 { margin: 24px 0 8px; color: var(--paper); font: 600 17px/1.25 var(--display); }
.task-item p { margin: 0; color: var(--paper-faint); font-size: 12px; line-height: 1.6; }
.task-item.current { background: #eef5f0; }
.task-item.current h3 { color: var(--orange-bright); }
.architecture-stack { display: grid; gap: 3px; }
.arch-layer { display: grid; grid-template-columns: 54px 190px minmax(0, 1fr) 120px; gap: 18px; align-items: center; min-height: 70px; padding: 12px 18px; border: 1px solid var(--line); background: var(--ink-soft); }
.arch-layer:nth-child(2), .arch-layer:nth-child(5) { background: #eef5f0; }
.arch-index { color: var(--orange); font: 11px var(--mono); }
.arch-name { color: var(--paper); font-weight: 700; }
.arch-desc { color: var(--paper-dim); font-size: 12px; }
.arch-type { color: var(--paper-faint); font: 9px var(--mono); text-align: right; letter-spacing: .06em; }
.roadmap-list { border-top: 1px solid var(--line); }
.roadmap-item { display: grid; grid-template-columns: 100px minmax(160px, .65fr) minmax(0, 1fr); gap: 20px; padding: 22px 0; border-bottom: 1px solid var(--line); align-items: start; }
.roadmap-phase { color: var(--orange); font: 11px var(--mono); }
.roadmap-item h3 { margin: 0; font: 600 19px/1.25 var(--display); }
.roadmap-item p { margin: 0; color: var(--paper-dim); font-size: 13px; }
.roadmap-callout { margin-top: 36px; display: grid; grid-template-columns: 39px minmax(0, 650px); gap: 15px; align-items: start; padding: 20px; border: 1px solid rgba(241,164,111,.35); background: rgba(241,164,111,.05); }
.callout-mark { color: var(--orange); font: 27px var(--mono); }
.roadmap-callout p { margin: 0; color: var(--paper); font-size: 15px; }
.notes-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(220px, .6fr); gap: 45px; }
.notes-list { display: grid; gap: 0; }
.note-item { display: grid; grid-template-columns: 23px minmax(0, 1fr); gap: 12px; padding: 13px 0; border-top: 1px solid var(--line); color: var(--paper-dim); font-size: 13px; }
.note-item span { color: var(--orange); font: 10px var(--mono); }
.sources-box { display: grid; align-content: start; gap: 13px; padding: 18px; border: 1px solid var(--line); background: var(--ink-soft); }
.sources-box a { color: var(--cyan); font-size: 12px; }
.sources-box a:hover { color: var(--orange-bright); }
.source-date { color: var(--paper-faint); font: 10px var(--mono); margin-top: 12px; }
.outlook-section { border-bottom: 1px solid var(--line); }
.outlook-heading { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(260px, .7fr); align-items: end; gap: 40px; padding: clamp(66px, 8vw, 118px) clamp(28px, 7vw, 120px) 42px; border-bottom: 1px solid var(--line); }
.outlook-heading .section-index { align-self: start; grid-column: 1 / -1; margin-bottom: -20px; }
.outlook-heading h2 { margin: 0; font: 700 clamp(35px, 4.5vw, 62px)/1.05 var(--display); }
.outlook-heading p { margin: 0; color: var(--paper-dim); font-size: 14px; line-height: 1.75; }
.outlook-subsection { border-bottom: 1px solid var(--line); }
.outlook-subsection:last-child { border-bottom: 0; }
.site-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 25px clamp(28px, 7vw, 120px); color: var(--paper-faint); font: 10px var(--mono); }
.footer-brand { gap: 8px; color: var(--paper); font: 12px var(--sans); }
.footer-brand .brand-mark { transform: scale(.65); transform-origin: left center; width: 21px; margin-right: -7px; }
.back-top { color: var(--orange); }

/* Case-study page: a denser, white report treatment that shares the main site's tokens. */
.case-main { max-width: 1480px; margin: 0 auto; }
.case-hero { padding: clamp(72px, 9vw, 138px) clamp(28px, 7vw, 120px) 56px; border-bottom: 1px solid var(--line); }
.case-kicker, .case-section-label, .case-id, .case-subtitle > span, .case-meta, .case-file-facts, .case-model-head > span, .case-model-metrics small, .case-lesson > span, .case-source-box > span, .case-caveat > span, .global-lesson > span { font-family: var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.case-kicker { display: flex; align-items: center; gap: 10px; color: var(--orange); font-size: 10px; letter-spacing: .14em; }
.case-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) 230px; gap: clamp(42px, 9vw, 150px); align-items: end; margin-top: 34px; }
.case-hero h1, .case-hero h2 { max-width: 850px; margin: 0; font: 700 clamp(44px, 6vw, 88px)/.98 var(--display); letter-spacing: 0; text-wrap: balance; }
.case-hero p { max-width: 750px; margin: 28px 0 0; color: var(--paper-dim); font-size: clamp(16px, 1.5vw, 20px); line-height: 1.75; }
.case-meta { display: grid; gap: 8px; align-content: end; color: var(--paper-faint); font-size: 10px; line-height: 1.4; }
.case-meta strong { color: var(--paper); font: 700 84px/.85 var(--display); letter-spacing: 0; }
.case-meta small { color: var(--paper-faint); font: 10px var(--mono); letter-spacing: .02em; text-transform: none; }
.case-section { padding: clamp(66px, 8vw, 118px) clamp(28px, 7vw, 120px); border-bottom: 1px solid var(--line); }
.case-section-label { color: var(--orange); font-size: 10px; line-height: 1.2; }
.case-intro-grid, .lessons-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(390px, .82fr); gap: clamp(38px, 8vw, 125px); align-items: start; margin-top: 24px; }
.case-intro h2, .case-intro h3, .lessons-grid h2, .lessons-grid h3, .case-notes h2 { max-width: 720px; margin: 0; font: 700 clamp(30px, 3.5vw, 53px)/1.08 var(--display); letter-spacing: 0; text-wrap: balance; }
.case-intro p, .lessons-grid > div > p { max-width: 660px; margin: 24px 0 0; color: var(--paper-dim); font-size: 15px; line-height: 1.8; }
.principles { border-top: 1px solid var(--line); }
.principle-item { display: grid; grid-template-columns: 31px minmax(0, 1fr); gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.principle-item > span { color: var(--orange); font: 10px var(--mono); padding-top: 4px; }
.principle-item p { margin: 0; color: var(--paper-dim); font-size: 13px; line-height: 1.65; }
.case-table-wrap { margin-top: 28px; overflow-x: auto; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.case-overview-table { width: 100%; min-width: 1000px; border-collapse: collapse; table-layout: fixed; }
.case-overview-table th, .case-overview-table td { padding: 15px 12px; border-bottom: 1px solid rgba(17,20,23,.1); text-align: left; vertical-align: top; }
.case-overview-table th { color: var(--paper-faint); font: 10px var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.case-overview-table td { color: var(--paper-dim); font: 12px/1.55 var(--mono); }
.case-overview-table th:first-child, .case-overview-table td:first-child { width: 118px; padding-left: 4px; }
.case-overview-table th:nth-child(2), .case-overview-table td:nth-child(2) { width: 32%; }
.case-overview-table th:nth-child(3), .case-overview-table td:nth-child(3) { width: 82px; }
.case-overview-table th:nth-child(4), .case-overview-table td:nth-child(4) { width: 86px; }
.case-overview-table td:first-child b { display: block; color: var(--orange-bright); font-size: 13px; }
.case-overview-table td:first-child span { display: block; margin-top: 3px; color: var(--paper-faint); font-size: 10px; }
.case-overview-table .best-cell { color: var(--orange-bright); background: rgba(217,111,61,.06); }
.case-list-section { padding-top: clamp(66px, 8vw, 118px); }
.case-reading-layout { grid-template-columns: 190px minmax(0, 1fr); gap: clamp(38px, 6vw, 84px); margin-top: 24px; }
.case-reading-index { top: 108px; }
.case-reading-index a { line-height: 1.45; }
.case-article-copy { min-width: 0; }
.case-file { margin-top: 26px; padding: 0 0 44px; border-top: 2px solid var(--orange); border-bottom: 1px solid var(--line); }
.case-file + .case-file { margin-top: 62px; }
.case-cyan { border-top-color: #4f9da8; }
.case-violet { border-top-color: #7773c5; }
.case-file-header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, .75fr); gap: 45px; padding: 27px 0 34px; }
.case-id { color: var(--orange); font-size: 10px; }
.case-cyan .case-id { color: #4f9da8; }
.case-violet .case-id { color: #7773c5; }
.case-file-header h2 { max-width: 770px; margin: 14px 0 12px; font: 700 clamp(27px, 3vw, 43px)/1.1 var(--display); letter-spacing: 0; }
.case-file-header > div:first-child p { max-width: 720px; margin: 0; color: var(--paper-dim); font-size: 14px; line-height: 1.75; }
.case-file-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-content: start; border-top: 1px solid var(--line); }
.case-file-facts span { min-height: 76px; padding: 12px 10px 10px 0; color: var(--paper-faint); font-size: 9px; border-bottom: 1px solid var(--line); }
.case-file-facts span:nth-child(odd) { border-right: 1px solid var(--line); padding-right: 18px; }
.case-file-facts span:nth-child(even) { padding-left: 18px; }
.case-file-facts b { display: block; margin-bottom: 5px; color: var(--paper); font: 700 19px/1.1 var(--display); letter-spacing: 0; }
.case-subsection { margin-top: 34px; }
.case-subtitle { display: flex; align-items: baseline; gap: 13px; margin-bottom: 14px; }
.case-subtitle > span { color: var(--orange); font-size: 10px; }
.case-cyan .case-subtitle > span { color: #4f9da8; }
.case-violet .case-subtitle > span { color: #7773c5; }
.case-subtitle h3 { margin: 0; font: 700 19px/1.2 var(--display); letter-spacing: 0; }
.ground-truth-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 22px; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.ground-truth-list li { display: grid; grid-template-columns: 31px minmax(0, 1fr); gap: 12px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.ground-truth-list li > span { color: var(--orange); font: 10px var(--mono); padding-top: 3px; }
.ground-truth-list strong { color: var(--paper); font-size: 13px; line-height: 1.45; }
.ground-truth-list p { margin: 7px 0 7px; color: var(--paper-dim); font-size: 12px; line-height: 1.65; }
.ground-truth-list small { color: var(--paper-faint); font: 10px var(--mono); line-height: 1.4; }
.signal-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.signal-item { min-height: 225px; padding: 17px 18px 19px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.55); }
.signal-item:last-child:nth-child(3n + 1) { grid-column: 1 / -1; }
.signal-subject { display: flex; align-items: baseline; gap: 10px; }
.signal-subject span { color: var(--orange); font: 10px var(--mono); }
.signal-subject strong { color: var(--paper); font-size: 13px; }
.signal-item > p { margin: 18px 0 20px; color: var(--paper-dim); font-family: Georgia, "Songti SC", "SimSun", serif; font-size: 14px; line-height: 1.75; }
.audit-question { padding: 11px 12px; border-left: 2px solid var(--orange); background: #f5f3ee; color: var(--paper-dim); font-size: 12px; line-height: 1.6; }
.audit-question b { display: block; margin-bottom: 4px; color: var(--orange-bright); font: 9px var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.case-model-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.case-model-card { min-height: 250px; padding: 18px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--ink-soft); }
.case-model-card.is-best { background: #eef5f0; }
.case-model-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; }
.case-model-head strong { color: var(--paper); font-size: 13px; line-height: 1.35; }
.case-model-head > span { flex: 0 0 auto; color: var(--orange-bright); font-size: 10px; white-space: nowrap; }
.case-model-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 26px 0 22px; padding: 12px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.case-model-metrics small { display: block; color: var(--paper-faint); font-size: 8px; letter-spacing: .04em; }
.case-model-metrics b { display: block; margin-top: 5px; color: var(--paper); font: 700 17px/1 var(--display); }
.case-model-card p { margin: 0; color: var(--paper-dim); font-size: 12px; line-height: 1.7; }
.case-lesson { margin-top: 36px; padding: 17px 20px; border-left: 3px solid var(--orange); background: #f5f3ee; }
.case-cyan .case-lesson { border-left-color: #4f9da8; }
.case-violet .case-lesson { border-left-color: #7773c5; }
.case-lesson > span { display: block; margin-bottom: 7px; color: var(--orange-bright); font-size: 9px; }
.case-lesson p { margin: 0; color: var(--paper); font-size: 14px; line-height: 1.75; }
.lesson-list { border-top: 1px solid var(--line); }
.global-lesson { display: grid; grid-template-columns: 31px minmax(0, 1fr); gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.global-lesson > span { color: var(--orange); font-size: 10px; padding-top: 4px; }
.global-lesson p { margin: 0; color: var(--paper-dim); font-size: 13px; line-height: 1.7; }
.case-notes { border-bottom: 0; }
.case-notes h2 { margin-top: 24px; }
.case-caveats { margin-top: 26px; border-top: 1px solid var(--line); }
.case-caveat { display: grid; grid-template-columns: 31px minmax(0, 1fr); gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.case-caveat > span { color: var(--orange); font-size: 10px; padding-top: 4px; }
.case-caveat p { margin: 0; color: var(--paper-dim); font-size: 12px; line-height: 1.7; }
.case-source-box { display: grid; align-content: start; gap: 12px; padding: 18px; border: 1px solid var(--line); background: var(--ink-soft); }
.case-source-box > span { color: var(--paper-faint); font-size: 9px; }
.case-source-box a { color: #4f8e98; font: 12px var(--mono); overflow-wrap: anywhere; }
.case-source-box a:hover, .case-source-box a:focus-visible { color: var(--orange-bright); outline: none; }
.load-error { margin-top: 24px; padding: 16px; border-left: 3px solid #b72f2f; background: #f9eeee; color: #8c2626; }

/* Blog directory: reuses the report's shared type, color, and component tokens. */
.blog-main { max-width: 1600px; margin: 0 auto; }
.blog-hero { min-height: 0; padding-top: 42px; padding-bottom: 38px; }
.blog-hero .hero-copy { max-width: 920px; }
.blog-directory { background: var(--ink-soft); }
.blog-directory-heading { margin-bottom: 34px; }
.blog-posts { border-top: 1px solid var(--line); }
.blog-post-card { display: grid; grid-template-columns: minmax(138px, .35fr) minmax(0, 1fr) auto; gap: clamp(24px, 5vw, 78px); align-items: start; padding: clamp(24px, 4vw, 42px) 5px; border-bottom: 1px solid var(--line); transition: background .18s ease, padding .18s ease; }
.blog-post-card:hover, .blog-post-card:focus-visible { padding-left: 18px; padding-right: 18px; background: rgba(217,111,61,.07); outline: none; }
.blog-post-meta { display: grid; gap: 8px; padding-top: 6px; color: var(--paper-faint); font: 10px/1.45 var(--mono); letter-spacing: .08em; }
.blog-post-meta span { color: var(--orange-bright); }
.blog-post-copy { min-width: 0; }
.blog-post-version { color: var(--paper-faint); font: 10px var(--mono); letter-spacing: .1em; }
.blog-post-copy h3 { margin: 10px 0 12px; color: var(--paper); font: 700 clamp(28px, 3.2vw, 48px)/1.06 var(--display); letter-spacing: 0; transition: color .18s ease; }
.blog-post-card:hover .blog-post-copy h3, .blog-post-card:focus-visible .blog-post-copy h3 { color: var(--orange-bright); }
.blog-post-copy p { max-width: 680px; margin: 0; color: var(--paper-dim); font-size: 14px; line-height: 1.75; }
.blog-post-arrow { padding-top: 14px; color: var(--orange); font: 28px/1 var(--display); }

@media (max-width: 980px) {
  .case-hero-grid, .case-file-header, .case-intro-grid, .lessons-grid { grid-template-columns: 1fr; }
  .case-meta { grid-template-columns: auto auto; justify-content: start; gap: 5px 14px; }
  .case-meta strong { grid-row: span 2; font-size: 68px; }
  .case-file-facts { max-width: 560px; }
  .signal-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .case-model-grid { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .ground-truth-list { grid-template-columns: 1fr; }
  .signal-list { grid-template-columns: 1fr; }
  .signal-item:last-child:nth-child(3n + 1) { grid-column: auto; }
  .case-section, .case-hero { padding-left: 20px; padding-right: 20px; }
  .blog-post-card { grid-template-columns: 1fr auto; gap: 16px; }
  .blog-post-meta { grid-column: 1 / -1; grid-template-columns: 1fr auto; }
}

@media (max-width: 1180px) {
  .toc { padding-left: 25px; padding-right: 17px; }
  .leaderboard-layout { grid-template-columns: 1fr; }
  .model-detail { position: static; min-height: auto; }
  .detail-score { margin: 15px 0; }
  .detail-grid { max-width: 350px; }
}
@media (max-width: 820px) {
  .site-header { height: 65px; }
  .layout-grid { display: block; }
  .toc { position: fixed; z-index: 30; top: 65px; left: 0; bottom: 0; width: 280px; height: auto; transform: translateX(-102%); transition: transform .25s ease; background: var(--ink); box-shadow: 14px 0 30px rgba(0,0,0,.28); }
  .toc.open { transform: translateX(0); }
  .mobile-menu { display: inline-block; }
  .brand-report, .release-chip { display: none; }
  .hero-grid, .section-heading, .split-heading, .notes-grid, .reading-layout, .outlook-heading { grid-template-columns: 1fr; }
  .hero h1 { max-width: 100%; }
  .reading-index { position: static; grid-template-columns: repeat(2, 1fr); gap: 0 18px; }
  .reading-index > span { grid-column: 1 / -1; }
  .hero-signal { border-left: 0; border-top: 1px solid var(--line); padding: 25px 0 0; min-height: 245px; }
  .signal-bars { left: 0; }
  .metric-strip { grid-template-columns: repeat(2, 1fr); }
  .metric-item:nth-child(2) { border-right: 0; }
  .metric-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .benchmark-grid, .task-map { grid-template-columns: repeat(2, 1fr); }
  .evidence-card:last-child, .task-item:last-child { grid-column: 1 / -1; }
  .diagnosis-grid { grid-template-columns: 1fr; }
  .diagnosis-panel-wide { grid-column: auto; }
  .roadmap-item { grid-template-columns: 78px minmax(0, 1fr); }
  .roadmap-item p { grid-column: 2; }
  .site-footer { flex-wrap: wrap; }
}
@media (max-width: 560px) {
  body { font-size: 14px; }
  .site-header { padding: 0 18px; }
  .hero, .report-section { padding-left: 19px; padding-right: 19px; }
  .hero { padding-top: 62px; }
  .hero h1 { font-size: clamp(40px, 13vw, 61px); }
  .hero-lede { font-size: 15px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 15px; }
  .hero-note { flex-direction: column; gap: 6px; margin-top: 42px; }
  .metric-item { min-height: 128px; padding: 23px 15px; }
  .metric-value { font-size: 43px; }
  .report-section { padding-top: 66px; padding-bottom: 66px; }
  .section-heading { gap: 19px; margin-bottom: 30px; }
  .section-heading h2 { font-size: 35px; }
  .reading-index { grid-template-columns: 1fr; }
  .article-chapter { grid-template-columns: 28px minmax(0, 1fr); gap: 12px; }
  .article-chapter p { font-size: 16px; line-height: 1.8; }
  .article-statline { grid-template-columns: repeat(2, 1fr); }
  .leaderboard-toolbar { align-items: flex-start; flex-direction: column; }
  .metric-tabs { width: 100%; }
  .metric-tab { flex: 1; padding-left: 5px; padding-right: 5px; }
  .benchmark-grid, .task-map { grid-template-columns: 1fr; }
  .evidence-card:last-child, .task-item:last-child { grid-column: auto; }
  .workflow-line { justify-content: flex-start; line-height: 1.2; }
  .workflow-line i { display: none; }
  .workflow-line span, .workflow-line strong { padding: 6px 8px; border: 1px solid var(--line); }
  .arch-layer { grid-template-columns: 34px minmax(0, 1fr); gap: 5px 12px; padding: 13px 14px; }
  .arch-desc { grid-column: 2; }
  .arch-type { grid-column: 2; text-align: left; }
  .roadmap-item { grid-template-columns: 1fr; gap: 7px; }
  .roadmap-item p { grid-column: auto; }
  .notes-grid { gap: 25px; }
  .site-footer { padding-left: 19px; padding-right: 19px; align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
