:root {
  color-scheme: light;
  --page:#fafcfb; --paper:#ffffff; --text:#22352d; --secondary:#5e7468;
  --muted:#809188; --line:#dce8e1; --green:#14785c; --green-dark:#0a5b44;
  --green-wash:#e2f3ea; --blue:#347fd2; --blue-wash:#edf5fc;
  --amber:#87531b; --amber-wash:#fff5e6; --amber-line:#edd3a8;
}
*{box-sizing:border-box}
html{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
body{margin:0;background:var(--page);color:var(--text)}
button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}
button:focus-visible,input:focus-visible,a:focus-visible,.handle-hit:focus-visible{outline:3px solid #e3ae61;outline-offset:3px}
a{color:var(--green);text-decoration-color:#a1c5b4;text-underline-offset:3px}a:hover{color:var(--green-dark)}
.hidden{display:none!important}
.page-shell{max-width:1290px;padding:38px 30px 28px;margin:auto}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em;font-weight:500}
h1{font-size:clamp(35px,4vw,53px);line-height:1.11;margin:11px 0 11px;max-width:1000px}
h2{font-size:25px;line-height:1.15;margin:6px 0 0}h3{font-size:18px;margin:0}
p{margin:0}
.eyebrow,.section-label{font-size:10.2px;line-height:1.25;letter-spacing:.13em;font-weight:800;color:var(--green)}
.masthead{margin-bottom:23px}.byline{font-size:13px;color:var(--secondary);line-height:1.6}.byline strong{color:#304b3c;font-weight:650}.middot{margin:0 8px;color:#adc1b5}
.briefing{background:linear-gradient(115deg,#f1f8f4,#f4f8fc);border:1px solid #d8e8de;border-radius:14px;padding:21px 25px 18px;margin-bottom:23px}
.briefing-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}.briefing h2{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;letter-spacing:-.025em;font-size:21px;font-weight:800;color:#234636;margin:7px 0 15px}
.info-button{width:22px;height:22px;border-radius:50%;border:1.5px solid #7b9c8a;background:#fff;display:grid;place-items:center;color:#426c57;font-family:Georgia,serif;font-weight:700;font-style:italic;font-size:14px;padding:0;flex-shrink:0}.info-button:hover{background:#e5f5ec}
.facts{display:grid;grid-template-columns:1.2fr .8fr 1.15fr;gap:18px;margin-bottom:15px}.fact{display:flex;gap:10px;align-items:start}.fact-number{font-size:10px;font-weight:820;letter-spacing:.055em;color:#4b9b78;margin-top:3px}.fact p{font-size:12px;color:#456258;line-height:1.57}.fact strong{color:#2b4d3b}
.blindspot{display:flex;gap:9px;align-items:start;background:var(--amber-wash);border:1px solid var(--amber-line);border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.45;color:var(--amber);margin:0 0 13px}.blindspot-icon{border:1.5px solid #b17e39;border-radius:50%;font-size:11px;font-weight:900;line-height:15px;text-align:center;width:17px;height:17px;flex-shrink:0}
.task{font-size:13px;line-height:1.65;color:#385444}.task strong{color:#1a553d}
.capacity-note{font-size:11.7px;line-height:1.6;color:#647b6e;margin-top:5px}
.technical-details{border-top:1px solid #cfe0d7;margin-top:15px;padding-top:11px;font-size:11.5px;line-height:1.7;color:#526e5c}.technical-details strong{color:#2b5140}
.game-grid{display:grid;grid-template-columns:minmax(0,1.92fr) minmax(310px,.85fr);gap:22px;align-items:start}
.studio,.result-panel,.leaderboard-panel{background:#fff;border:1px solid var(--line);border-radius:13px}
.studio{padding:24px 23px 20px;min-width:0}
.side-column{display:grid;gap:18px}.result-panel,.leaderboard-panel{padding:23px 21px}
.studio-heading,.leaderboard-header{display:flex;justify-content:space-between;align-items:start;gap:14px}
.button-quiet{color:#476f59;background:#f4f9f6;border:1px solid #dfece4;border-radius:6px;font-size:11px;font-weight:740;padding:9px 11px;flex-shrink:0}.button-quiet:hover:not(:disabled){background:#e7f4eb}
.mode-picker{border:0;margin:18px 0 0;padding:0}.mode-picker legend{font-size:11.3px;font-weight:750;color:#4b6455;margin-bottom:8px}
.mode-options{display:grid;grid-template-columns:1fr 1fr;padding:4px;gap:4px;background:#f1f5f2;border-radius:8px;max-width:500px}
.mode-option{position:relative;cursor:pointer}.mode-option input{position:absolute;width:0;height:0;opacity:0}
.mode-option span{display:block;padding:11px 8px;text-align:center;font-size:12px;font-weight:730;border-radius:6px;color:#667a6d}
.mode-option input:checked+span{color:var(--green);background:#fff;box-shadow:0 2px 8px #1e463316}.mode-option input:focus-visible+span{outline:3px solid #dfab54;outline-offset:2px}
.chart-help{font-size:12.5px;color:#5e7266;line-height:1.6;margin-top:18px;margin-bottom:3px}.chart-help strong{color:#347cce}
.chart-wrap{max-width:740px;margin:0 auto}#screening-plot{width:100%;height:auto;display:block;overflow:visible;touch-action:none;user-select:none;-webkit-user-select:none}
.plot-gridline{stroke:#ecf2ee;stroke-width:1}.plot-border{fill:none;stroke:#b2c3b8;stroke-width:1.1}
.axis-text{font-size:11px;fill:#738b7c}.axis-name{font-size:13px;fill:#354e40;font-weight:710}
.admission-region{fill:#b9e7d5;fill-opacity:.56}.boundary-line{stroke:#168162;stroke-width:2.9;fill:none;stroke-linecap:round;stroke-linejoin:round}
.handle-hit{fill:transparent;cursor:grab}.handle-hit.dragging{cursor:grabbing}.handle-visible{fill:#438ad9;stroke:#fff;stroke-width:2.6;pointer-events:none;filter:drop-shadow(0 2px 2px #18446d55)}
.handle-hit:hover+.handle-visible,.handle-hit:focus+.handle-visible{fill:#1767b9;stroke-width:3.2}
.chart-legend{display:flex;gap:14px;justify-content:center;align-items:center;flex-wrap:wrap;margin:0 0 8px;color:#587267;font-size:10.5px;line-height:1.6}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{flex-shrink:0;width:11px;height:11px;display:inline-block}
.legend-green{background:#c6eede;border:1px solid #75cbaa;border-radius:2px}.legend-blue-handle{border-radius:50%;background:#438ad9;border:2px solid white;box-shadow:0 0 0 1px #438ad9}
.legend-top{background:#317bd4;border-radius:50%}.legend-picked{background:#df8e47;border-radius:50%}.legend-both{background:#df8e47;border:3px solid #317bd4;border-radius:50%}.legend-other{background:#b3c2b7;border-radius:50%}
.chart-context{text-align:center;font-size:10.7px;line-height:1.5;color:#829589;min-height:18px;margin:0}
.boundary-note{font-size:11px;color:#587264;background:#f3f8f5;padding:10px 13px;margin-top:11px;border-radius:6px;line-height:1.6}.boundary-note strong{color:#345a47}
.candidate-dot{pointer-events:auto;cursor:help}.candidate-dot.other{fill:#adbdaf;opacity:.38}.candidate-dot.only-top{fill:#327bd4;opacity:.84}.candidate-dot.only-picked{fill:#e08b42;opacity:.85}.candidate-dot.both{fill:#e08b42;stroke:#276bc4;stroke-width:2.4;opacity:.96}
.before-submit h2,.after-submit h2{font-size:24px;margin-top:10px}.before-submit>p:not(.hint){font-size:12px;color:var(--secondary);line-height:1.62;margin:15px 0 20px}
.button-primary{border:1px solid var(--green);background:var(--green);color:#fff;width:100%;border-radius:7px;padding:15px 12px;font-size:13px;font-weight:790;min-height:60px;transition:background .15s}.button-primary:hover:not(:disabled){background:var(--green-dark)}.button-primary span{font-size:18px;margin-left:4px}
.hint{font-size:10.7px;line-height:1.5;color:#8a9c8e;text-align:center;margin-top:11px}.error-message{font-size:11px;line-height:1.5;color:#aa6127;margin-top:8px}
.score-eyebrow{font-size:12px;font-weight:720;color:#4d6a58;margin-top:17px}.hero-score{font-family:Georgia,"Times New Roman",serif;font-size:clamp(58px,6vw,83px);letter-spacing:-.055em;font-variant-numeric:tabular-nums;line-height:1.05;margin:5px 0 11px;color:var(--green)}
.score-comparison{font-size:11px;color:#5b7864;line-height:1.55;padding-bottom:14px}.score-breakdown{border-top:1px solid #e8f0ea;margin-bottom:17px}
.score-breakdown>div{display:flex;justify-content:space-between;gap:9px;font-size:11px;color:#677d70;border-bottom:1px solid #e8f0ea;padding:10px 0}.score-breakdown strong{font-variant-numeric:tabular-nums;color:#304e3c}
.button-replay,.button-answer{display:block;width:100%;border-radius:7px;padding:13px 10px;font-size:13px;font-weight:790}
.button-replay{color:#fff;background:var(--green);border:1px solid var(--green)}.button-replay:hover{background:var(--green-dark)}
.button-answer{color:var(--green);border:1px solid #b8d9c8;background:#f1faf5;margin-top:9px}.button-answer:hover{background:#e2f3ea}
.leaderboard-header h2{margin:5px 0 0}.trophy{color:#c2954c;font-size:25px;margin-top:8px}.leaderboard-intro{margin:12px 0 14px;color:#708478;font-size:11.4px;line-height:1.55}
.leaderboard-tabs{display:grid;grid-template-columns:1fr 1fr;gap:3px;border-radius:7px;background:#f1f5f2;padding:4px;margin:0 0 15px}.leaderboard-tabs button{border:0;border-radius:5px;color:#657b6c;font-size:11px;font-weight:740;padding:10px 7px;background:transparent}.leaderboard-tabs button.active{background:#fff;box-shadow:0 2px 7px #164d2b12;color:var(--green)}
.board-heading{display:flex;justify-content:space-between;gap:8px;padding-bottom:9px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#97a99c;font-weight:820}
.leaderboard-list{list-style:none;margin:0;padding:0}.leaderboard-list li{min-height:55px;display:grid;grid-template-columns:22px minmax(0,1fr) 73px 71px;align-items:center;gap:7px;padding:8px 0;border-bottom:1px solid #edf2ed}.rank{color:#90a197;font-size:11px;font-variant-numeric:tabular-nums}.player{font-size:11.5px;color:#3a5946;font-weight:760;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.points{text-align:right;color:var(--green);font-size:11.9px;font-weight:800;font-variant-numeric:tabular-nums}.rule-mini{display:block;width:70px;height:38px}.no-scores{display:block!important;text-align:center;padding:23px 5px!important;color:#82968a;font-size:11px;line-height:1.5}
.save-panel{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.save-panel label{font-size:11.4px;font-weight:760;color:#45634e;display:block;margin-bottom:7px}.save-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.save-row input{width:100%;min-width:0;border-radius:6px;border:1px solid #d9e7de;padding:10px;background:#fff;font-size:12px}.save-row button{background:#e6f4e9;border:1px solid #badbca;border-radius:6px;padding:10px 14px;color:#137452;font-weight:790;font-size:12px}.save-row button:hover:not(:disabled){background:#d1e9d8}.save-panel p{font-size:10.7px;color:#6c8172;line-height:1.45;margin-top:7px}
.board-status{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#7d9184;font-size:10.4px;margin-top:12px}.board-status button{border:0;background:transparent;color:#598573;padding:2px 6px;font-size:21px}
.answer-view{padding-top:20px}.answer-lead{font-size:12px;color:#657b6d;line-height:1.62;margin-bottom:15px}.answer-lead strong{color:#315541}
.answer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.answer-rule{border:1px solid #dce8e0;border-radius:9px;padding:11px 8px 12px;min-width:0}.answer-rule h3{font-size:17.7px;line-height:1.2;margin:0 0 3px}.answer-rule h3 sup{font-family:Inter,sans-serif;font-size:10px}.rule-description{font-size:10px;line-height:1.45;color:#74887b;min-height:28px}.answer-rule img{display:block;width:100%;height:auto;aspect-ratio:2.75/3;object-fit:contain;margin:4px auto 0}.answer-score{display:flex;gap:5px;align-items:baseline;flex-direction:column;border-top:1px solid #e8f0ea;margin-top:8px;padding:9px 3px 0}.answer-score span{font-size:10px;color:#7a8d80}.answer-score strong{font-family:Georgia,"Times New Roman",serif;font-size:24px;color:var(--green);font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.035em}
.answer-caveat{font-size:10.6px;color:#758a7d;line-height:1.65;margin:13px 0}.paper-link{display:inline-block;font-size:13px;font-weight:760;background:#e9f7ef;padding:12px 15px;border-radius:6px;text-decoration:none}.paper-link:hover{background:#d5eddf}
footer{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #dce7df;margin-top:24px;padding-top:17px;color:#879c8b;font-size:11px;line-height:1.6}
@media(max-width:1070px){.page-shell{padding:28px 22px}.game-grid{grid-template-columns:minmax(0,1fr)}.side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.studio{max-width:none}.answer-rule img{max-width:280px}}
@media(max-width:700px){.page-shell{padding:22px 14px}.briefing{padding:17px 15px}.facts{grid-template-columns:1fr;gap:11px}.fact{gap:9px}.briefing h2{font-size:20px}.side-column{grid-template-columns:1fr}.studio,.result-panel,.leaderboard-panel{padding:19px 15px}.answer-grid{grid-template-columns:1fr;gap:11px}.answer-rule{display:grid;grid-template-columns:1fr minmax(120px,1.5fr);grid-template-rows:auto 1fr auto;align-items:start;column-gap:9px}.answer-rule h3{grid-column:1}.answer-rule .rule-description{grid-column:1}.answer-rule img{grid-column:2;grid-row:1 / span 3;max-height:240px;max-width:210px;margin:auto}.answer-score{grid-column:1}.answer-rule h3{font-size:18px}.answer-rule .rule-description{font-size:11px}.masthead{margin-bottom:17px}.briefing{margin-bottom:17px}.chart-legend{font-size:9.7px;gap:8px}footer{display:block}footer span{display:block;margin-top:5px}}
@media(max-width:390px){.answer-rule{display:block}.answer-rule img{max-width:300px;max-height:none}.answer-rule .rule-description{min-height:0}.answer-score{flex-direction:row;justify-content:space-between}.leaderboard-list li{grid-template-columns:18px minmax(0,1fr) 69px 61px;gap:5px}.rule-mini{width:61px}}

/* V5: paper notation, single-column briefing, and readable long-form instruction. */
.page-shell{max-width:1335px;padding:35px 34px 32px}
.masthead{margin-bottom:25px}
.masthead h1{font-size:clamp(35px,3.8vw,55px);max-width:none}
.briefing{background:#f2f8f6;border-color:#d8e8e1;border-radius:13px;padding:25px 31px 23px;margin-bottom:25px}
.briefing-heading{max-width:1020px}
.briefing h2{font-size:24px;margin:6px 0 13px}
.briefing-copy{max-width:890px}
.briefing-copy>p:not(.blindspot){font-size:14px;line-height:1.75;letter-spacing:.002em;color:#415d4e;margin-bottom:11px}
.briefing-copy>p strong{font-weight:750;color:#224c39}
.briefing-copy .blindspot{font-size:13.5px;line-height:1.6;background:#fff4e4;border-color:#ecd3aa;padding:11px 14px;margin:15px 0}
.blindspot-icon{margin-top:2px}
.math{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:1.08em}
.math-keep{white-space:nowrap}
.score-definition{background:#fff;border:1px solid #d8e6dd;border-left:4px solid #3c9175;border-radius:7px;padding:13px 17px;margin:14px 0 11px}
.score-definition-label{font-size:10px;color:#317358;letter-spacing:.12em;font-weight:820}
.score-definition p{color:#365447;font-size:13.5px;line-height:1.75;margin-top:5px}
.briefing-copy>p.capacity-note{font-size:12px;line-height:1.6;color:#5e7769;margin:10px 0 0}
.technical-details{max-width:895px;margin-top:15px;font-size:12.4px;line-height:1.75}
.game-grid{grid-template-columns:minmax(0,1.75fr) minmax(320px,.82fr);gap:20px}
.studio{padding:24px 25px 22px}
.studio-heading h2{font-size:28px}
.mode-picker{margin-top:19px}
.mode-options{max-width:465px}
.mode-option span{font-size:12.8px}
.mode-explanation{font-size:11.5px;color:#788c7e;line-height:1.55;margin-top:8px}
.chart-help{font-size:13px;max-width:740px;line-height:1.65;margin:14px auto 4px}
.chart-help strong{color:#2c7bbb}
.chart-wrap{max-width:760px}
.chart-legend{font-size:11.3px;gap:13px;margin-bottom:8px}
.chart-context{font-size:11.7px;max-width:660px;margin:0 auto;line-height:1.6}
.boundary-note{font-size:12px;line-height:1.6}
.result-views{display:flex;justify-content:center;gap:4px;margin:8px auto 0;background:#f0f5f2;padding:4px;border-radius:8px;max-width:470px}
.result-views button{flex:1;border:0;border-radius:6px;padding:9px 7px;background:transparent;color:#60786b;font-size:11.5px;font-weight:740}
.result-views button.active{background:#fff;box-shadow:0 1px 5px #154b3419;color:#116d53}
.score-footnote{font-size:10px;color:#819387;line-height:1.55;margin:-8px 0 17px}
.answer-view{padding-top:17px}
.answer-lead{font-size:13px;line-height:1.7;margin-bottom:16px}
.answer-grid{gap:12px}
.answer-rule{padding:13px 11px 14px;border-radius:9px;min-width:0}
.answer-rule h3{font-size:17px}
.answer-rule .rule-description{font-size:11.1px;line-height:1.55;min-height:43px}
.answer-rule img{aspect-ratio:2.6/3.1;object-fit:contain;margin:5px auto 0}
.answer-score{padding:10px 2px 0}
.answer-score strong{font-size:25px}
.answer-caveat{font-size:11.5px;line-height:1.65;margin:13px 0}
.paper-link{margin-top:6px}
@media(max-width:1070px){
 .page-shell{padding:28px 24px}
 .game-grid{display:flex;flex-direction:column}
 .studio,.side-column{width:100%}
 .side-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 /* After submission, put the player's score and action buttons BEFORE the answer gallery. */
 .game-grid.evaluated .side-column{display:contents}
 .game-grid.evaluated .result-panel{order:1;width:100%}
 .game-grid.evaluated .studio{order:2;width:100%}
 .game-grid.evaluated .leaderboard-panel{order:3;width:100%}
 .answer-rule img{max-width:280px}
}
@media(max-width:700px){
 .page-shell{padding:24px 15px}
 .masthead h1{font-size:clamp(33px,8vw,41px)}
 .briefing{padding:19px 18px}
 .briefing h2{font-size:22px;margin-bottom:13px}
 .briefing-copy>p:not(.blindspot){font-size:13.3px;line-height:1.7;margin-bottom:11px}
 .briefing-copy .blindspot{font-size:12.8px}
 .score-definition{padding:12px 13px}
 .score-definition p{font-size:12.8px;line-height:1.65}
 .technical-details{font-size:11.9px}
 .studio,.result-panel,.leaderboard-panel{padding:20px 16px}
 .studio-heading h2{font-size:24px}
 .side-column{grid-template-columns:1fr}
 .chart-help{font-size:12.2px}
 .chart-legend{font-size:10.5px}
 .answer-grid{grid-template-columns:1fr;gap:11px}
 .answer-rule{display:grid;grid-template-columns:minmax(0,1fr) minmax(145px,1.4fr);grid-template-rows:auto 1fr auto;column-gap:11px}
 .answer-rule h3{grid-column:1;font-size:19px}
 .answer-rule .rule-description{grid-column:1;font-size:11.3px;min-height:auto}
 .answer-rule img{grid-column:2;grid-row:1/span 3;max-width:225px;max-height:260px;margin:auto}
 .answer-score{grid-column:1;align-self:end}
 .answer-caveat{font-size:11.4px}
}
@media(max-width:390px){
 .answer-rule{display:block}
 .answer-rule img{max-width:290px;max-height:none}
 .answer-rule .rule-description{min-height:0}
 .answer-score{flex-direction:row;justify-content:space-between}
 .result-views button{font-size:10.3px}
}

/* V6: concise, quiet research-demo design. One-column setting and an inline
   MathML manipulation-cost expression, with capacity as fine print. */
.page-shell{max-width:1300px}
.masthead{margin-bottom:18px}
.masthead h1{margin-top:0;margin-bottom:10px;font-size:clamp(34px,3.7vw,50px)}
.briefing{padding:22px 29px 18px;margin-bottom:19px;background:#f3f8f5;border-color:#dae8df}
.briefing h2{margin:4px 0 12px;font-size:23px}
.briefing-copy{max-width:970px}
.briefing-copy>p:not(.blindspot){font-size:13.4px;line-height:1.64;margin-bottom:9px}
.briefing-copy .blindspot{border-left:3px solid #dbb679;border-top:0;border-bottom:0;border-right:0;background:#fff7ec;font-size:12.6px;line-height:1.55;padding:10px 13px;margin:10px 0}
.blindspot-icon{display:none}
.inline-formula{white-space:nowrap;display:inline-block;vertical-align:-.37em;margin:0 .08em;color:#1e4f3a}
.inline-formula math{font-size:1.13em}
.score-definition{display:flex;align-items:center;flex-wrap:wrap;gap:8px 13px;max-width:770px;background:transparent;border:0;padding:5px 0 8px;margin:3px 0 1px;border-radius:0}
.score-formula-name{font-size:12.2px;font-weight:730;color:#246449}
.score-fraction{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;color:#354e40;font-size:12px;line-height:1.48}
.score-fraction>span:first-child{padding:0 9px 3px;border-bottom:1px solid #526b5c}
.score-fraction>span:last-child{padding:3px 8px 0}
.briefing-copy>p.capacity-note{font-size:10.8px;color:#829389;line-height:1.58;border-top:1px solid #dce9e1;padding-top:9px;margin:6px 0 0;max-width:940px}
.technical-details{margin-top:12px;font-size:11.6px}
.answer-switch{font-size:12.5px;line-height:1.65;color:#516d5e;margin:14px 0 3px}
.answer-switch a{font-weight:780}
.answer-rule .rule-description{min-height:38px}
.answer-view{padding-top:13px}
.answer-lead{font-size:12px;margin-bottom:13px}
.answer-caveat{display:none}
.score-footnote{font-size:10.4px;line-height:1.55}
@media(max-width:700px){
 .briefing{padding:18px 17px;margin-bottom:17px}
 .briefing-copy>p:not(.blindspot){font-size:13px;line-height:1.65}
 .score-definition{gap:7px 10px;padding:6px 0}
 .score-fraction{font-size:11.2px}
 .inline-formula{vertical-align:-.36em}
 .briefing-copy>p.capacity-note{font-size:10.5px;line-height:1.55}
 .answer-switch{font-size:12.2px}
}

/* V7: simplified briefing, stacked MathML fraction, no obsolete details icon. */
.briefing-heading h2{margin:0 0 13px;font-size:24px}
.briefing-copy{max-width:940px}
.briefing-copy .math{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:800}
.cost-formula{display:flex;justify-content:center;align-items:center;margin:7px 0 12px;color:#205941}
.cost-formula math{font-size:22px;line-height:1.3}
.welfare-equation{font-size:14px;font-weight:620;color:#245b40;margin:9px 0 8px!important}
.welfare-equation strong{font-weight:850}
.briefing-copy>p.capacity-note{margin-top:12px;padding-top:11px}
@media(max-width:700px){.cost-formula math{font-size:20px}.briefing-heading h2{font-size:22px}}
/* Keep the amber warning a single text paragraph at narrow viewports. */
.briefing-copy .blindspot{display:block}
.briefing-copy .blindspot strong{margin-right:.2em}
@media(max-width:390px){
  .axis-text{font-size:15px}
  .axis-name{font-size:16px}
}

/* V8: the manipulation-cost fraction is inline, at the same font size as body text.
   data-latex in HTML preserves the source \frac form; inline MathML renders
   its authentic fraction bar offline without a network dependency. */
.briefing-copy .inline-cost{display:inline;white-space:nowrap;font-size:inherit;color:#205941;vertical-align:baseline}
.briefing-copy .inline-cost math{font-size:1em;math-style:compact;vertical-align:-.18em}

/* V9: accessible explanations in the answer gallery and annotated dual tracks. */
.answer-view .answer-grid{display:flex;flex-direction:column;gap:15px}
.answer-view .answer-rule{display:grid;grid-template-columns:minmax(160px,38%) minmax(0,1fr);gap:19px;align-items:center;padding:16px 17px;border:1px solid #dce8e0;background:#fff;border-radius:10px}
.answer-view .answer-story-copy h3{font-size:21px;line-height:1.28;margin:0 0 9px;color:#233e30}
.answer-view .answer-story-copy .rule-description{font-size:13px;line-height:1.75;color:#4b6857;min-height:0;margin:0}
.answer-view .answer-story-copy .rule-description strong{font-weight:770;color:#1b664e}
.answer-view .answer-mini-figure,.answer-view .dual-figure{margin:0;min-width:0}
.answer-view .answer-mini-figure img{display:block;width:100%;max-width:215px;max-height:none;height:auto;aspect-ratio:auto;margin:0 auto}
.answer-view .answer-score{margin-top:15px;padding:10px 0 0;border-top:1px solid #e8f0ea;display:flex;flex-direction:row;justify-content:space-between;align-items:baseline;gap:12px}
.answer-view .answer-score span{font-size:11px;line-height:1.5}
.answer-view .answer-score strong{font-size:25px}
.answer-view .answer-dual{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:17px 15px 6px;background:#f8fcfa;border-color:#cce3d6}
.answer-dual-intro{display:grid;grid-template-columns:minmax(0,1fr) 127px;gap:14px;align-items:start;margin:0 4px}
.answer-view .answer-dual-intro .answer-score{margin:0;padding:0 0 0 12px;border-top:0;border-left:1px solid #d8e7dc;flex-direction:column;gap:1px}
.answer-view .answer-dual-intro .answer-score strong{font-size:27px}
.answer-view .dual-figure{width:100%;margin-top:10px}
.dual-annotated-plot{display:block;width:100%;height:auto;max-width:750px;margin:0 auto}
.track-annotation path{fill:none;stroke:#8b6336;stroke-width:2.4;stroke-linecap:round}
.track-annotation rect{fill:#fffaf1;stroke:#cfb590;stroke-width:1.7}
.track-annotation text{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;fill:#5d4730}
.track-annotation .track-number{font-size:16px;font-weight:840;letter-spacing:1.4px;fill:#946c3e}
.track-annotation .track-title{font-size:19px;font-weight:800}
.player-counter{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#f3f9f5;border:1px solid #dcece2;border-radius:9px;padding:12px 13px;margin:16px 0 8px}
.player-counter>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.player-counter-label{font-size:12px;font-weight:790;color:#22533c}
.player-counter small{font-size:9.6px;line-height:1.5;color:#748b7b}
.player-counter strong{font-family:Georgia,"Times New Roman",serif;font-size:29px;line-height:1;color:#137356;font-variant-numeric:tabular-nums;font-weight:600}
@media(max-width:700px){
 .answer-view .answer-rule{grid-template-columns:minmax(100px,36%) minmax(0,1fr);gap:12px;padding:12px 10px}
 .answer-view .answer-story-copy h3{font-size:18px}
 .answer-view .answer-story-copy .rule-description{font-size:11.7px;line-height:1.65}
 .answer-dual-intro{grid-template-columns:1fr;gap:5px}
 .answer-view .answer-dual-intro .answer-score{flex-direction:row;justify-content:space-between;align-items:baseline;border-left:0;border-top:1px solid #d8e7dc;padding:7px 0 0}
 .answer-view .answer-mini-figure img{max-width:210px}
 .track-annotation .track-title{font-size:20px}
}
@media(max-width:420px){
 .answer-view .answer-story{display:flex;flex-direction:column;align-items:stretch}
 .answer-view .answer-mini-figure{width:100%;order:1}
 .answer-view .answer-story-copy{order:2}
 .answer-view .answer-mini-figure img{max-width:240px;max-height:265px;width:auto}
 .answer-view .answer-dual{display:flex}
 .answer-view .answer-dual .answer-story-copy{order:0}
 .answer-view .answer-dual .dual-figure{order:1}
 .player-counter{padding:11px}
}

.dual-figure-caption{display:flex;gap:13px;justify-content:center;flex-wrap:wrap;margin:0 0 9px;font-size:10.8px;line-height:1.55;color:#516f5f}
.dual-figure-caption span{flex:1;min-width:195px}
.dual-figure-caption b{color:#276a4a;font-weight:760}
@media(max-width:700px){.dual-figure-caption{display:block;font-size:11.4px;margin-top:7px}.dual-figure-caption span{display:block;margin:5px 0}}
