:root{--gain:#8fcdb9;--loss:#e297ad}/* A single presentation surface keeps the narrative and evidence on one grid. */
.story-section .section-heading{align-items:center}.story-play{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:7px;padding:8px 12px;color:var(--muted);font-size:18px;line-height:1.4;white-space:nowrap;transition:color .2s,background .2s,border-color .2s}.story-play:hover{color:var(--ink);background:#b79ce417;border-color:#baa0e066}.story-play[aria-pressed=true]{color:#d2b9f0;border-color:#bba0df60;background:#baa1e00a}.story-play svg{flex-shrink:0}.story-tabs{gap:8px;border:0;min-height:56px}.story-tabs>button,.story-tabs>button:first-child{position:relative;min-width:0;flex:1;padding:14px 18px;display:flex;align-items:center;gap:13px;text-align:left;border:1px solid transparent;border-radius:7px;color:#8f839e;background:transparent;overflow:hidden;font-size:18px;transition:background .25s,border-color .25s,color .25s}.story-tabs>button span{display:inline;margin:0;color:#aaa2b8;line-height:1.25;white-space:normal}.story-tabs>button[aria-selected=true]{background:linear-gradient(110deg,#b99ce415,#a4bce808);border-color:#b69cdd38;color:#d1b4f0}.story-tabs>button[aria-selected=true] span{color:#f0e8fa}.story-tabs>button:hover{background:#b39bdb0b}.story-tabs>button::after{display:none}.story-tabs>button::before{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#c3a3ed,#9fc5f3);transform:scaleX(var(--story-progress,0));transform-origin:left;transition:transform .12s linear}.story-tabs>button[aria-selected=false]::before{transform:scaleX(0)}.story-panel{display:grid;grid-template-columns:36% minmax(0,1fr);gap:0;align-items:stretch;min-height:0;border:1px solid #bca5e130;border-radius:12px;background:radial-gradient(ellipse at 95% 0,#8e9bdf0a,transparent 55%),#0e0f16;overflow:hidden;isolation:isolate}.story-copy{display:flex;flex-direction:column;min-width:0;padding:30px;border-right:1px solid #bea6e023;background:linear-gradient(145deg,#b195d608,transparent 75%)}.story-copy h3{font-size:32px;line-height:1.2;letter-spacing:-.9px;max-width:none;font-weight:500;text-wrap:balance;color:#eee7f6}.story-copy p{font-size:20px;line-height:1.6;margin:22px 0 0;max-width:none;color:#bdb6cd;text-wrap:pretty}.story-copy .text-link{margin-top:auto;align-self:flex-start;padding:10px 0 0;min-height:40px;font-size:18px;gap:9px;color:#ceb1ed;translate:none}.story-copy .text-link::before{content:'+';display:grid;place-items:center;width:21px;height:21px;border:1px solid #baa0df52;border-radius:50%;font:18px/1 var(--ui-font);transition:background .2s,border-color .2s}.story-copy .text-link:hover{color:#eee2fa}.story-copy .text-link:hover::before{background:#b99cdf23;border-color:#bea4e8a0}.story-copy math{font-size:1.06em}.story-copy #finding-actions{margin-top:auto}.story-copy #finding-actions:empty{display:none}.story-visual{border:0;border-radius:0;min-height:0;min-width:0;padding:30px;background:none;display:flex;flex-direction:column;align-self:stretch;justify-content:flex-start;gap:22px;overflow:hidden;position:relative}.method-diagram::before{content:none}.visual-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;min-height:30px}.visual-title{font:500 24px/1.25 var(--ui-font);margin:0;color:#e5dced;letter-spacing:-.35px}.story-visual h4{margin:0}.story-visual math{font-family:var(--math-font)}.story-visual .model-logo{width:23px;height:23px;flex-shrink:0;padding:1px}.story-visual .comparison-model{display:flex;gap:9px;align-items:center;font:18px/1.3 var(--ui-font);min-width:0}.story-visual .comparison-track{height:8px;display:block;background:#afa2c811;border:0;border-radius:2px;position:relative}.story-visual .comparison-track i{border-radius:2px}/* Two bars for each real query,with values attached to their endpoints. */
.cost-comparison-key{display:flex;gap:25px;align-items:center;flex-wrap:wrap;font:18px/1.3 var(--ui-font);color:#b7afc5;flex-shrink:0}.cost-comparison-key>span{display:flex;align-items:center;gap:9px}.cost-comparison-key i{display:block;width:24px;height:7px;border-radius:2px}.uniform-swatch{background:#777386}.utility-swatch{background:linear-gradient(90deg,#b197db,#9ebff0)}.query-costs{display:flex;flex-direction:column;justify-content:space-evenly;flex:1;min-height:0}.query-comparison{display:grid;grid-template-columns:146px minmax(0,1fr);align-items:center;gap:24px;width:100%;padding:22px 0;border-bottom:1px solid #baa1db1d;border-radius:0;text-align:left;animation:story-item .6s var(--ease) both;animation-delay:var(--stagger,0ms);transition:background .2s}.query-comparison:last-child{border:0}.query-name{display:flex;align-items:center;gap:12px;font:20px/1.3 var(--ui-font);color:#d8cde7}.query-name svg{width:28px;height:28px;flex-shrink:0;fill:none;stroke:#bca6df;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;transition:stroke .2s}.query-comparison:hover .query-name{color:#fff}.query-comparison:hover svg{stroke:#d6bef7}.query-cost-pair{display:grid;gap:13px;padding-block:3px}.query-bar-row{position:relative;display:block;height:11px;margin-right:58px;color:#c6b6df;font:18px/1 var(--ui-font)}.query-bar-row:first-child{color:#9e96ac}.query-bar-track{display:block;height:100%;width:100%}.query-bar-track>i{display:block;width:var(--bar-width);height:100%;border-radius:2px;animation:bar-grow .7s var(--ease) both;animation-delay:var(--stagger,0ms);transform-origin:left}.query-bar-value{position:absolute;left:calc(var(--bar-width) + 10px);top:-3px;font-variant-numeric:tabular-nums}.uniform-bar{background:#777386}.utility-bar{background:linear-gradient(90deg,#b197db,#9ebff0)}.query-comparison:hover .utility-bar{filter:brightness(1.18)}/* Three outcome rows share a fixed value column and a common text baseline. */
.utility-rows{display:flex;flex-direction:column;justify-content:space-evenly;flex:1;min-height:0}.utility-row{display:grid;grid-template-columns:98px minmax(0,1fr);gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid #b8a0db20;animation:story-item .6s var(--ease) both;animation-delay:var(--stagger,0ms)}.utility-row:last-child{border:0}.utility-value{font:54px/1.05 var(--math-font);color:#baa0e8;white-space:nowrap;display:flex;align-items:center;justify-content:flex-start}.utility-value math{font-size:1em}.utility-row.positive .utility-value{color:var(--gain)}.utility-row.negative .utility-value{color:var(--loss)}.utility-row strong{font-size:20px;line-height:1.3;font-weight:600;display:block}.utility-row p{font-size:18px;line-height:1.45;color:#ada6be;margin:8px 0 0}/* The original curve is drawn at the available plot size; coverage stays live. */
.paper-curve{display:flex;flex-direction:column;flex:1;min-height:0;gap:18px}.paper-curve>svg{display:block;width:100%;height:0;min-height:170px;flex:1;overflow:visible}.paper-curve text{font:20px var(--chart-font);fill:#b7a7ca}.paper-curve .area-label{fill:#cbb3e9;font-size:25px}.paper-curve .coverage-control{margin:0;padding-top:18px;border-top:1px solid #bca1dc20;font:18px/1.4 var(--ui-font);gap:16px}.paper-curve .coverage-control input{flex:1;height:24px;accent-color:var(--purple);border:0;box-shadow:none;background:transparent}.paper-curve .coverage-control output{width:58px;padding:3px 0;font:20px var(--ui-font);color:#b3cdf2;font-variant-numeric:tabular-nums}/* Each model is listed once{display:flex;flex-direction:column;justify-content:space-between;flex:1;gap:14px;min-height:0}.truncated-track::before{content:'//';position:absolute;left:-10px;top:-9px;font:17px var(--chart-font);letter-spacing:-5px;color:#a18bae;z-index:1}.pair-arrow{padding:0 8px;color:#8e819e}/* The same prompt occupies the same column for every model. */
.prompt-matrix{display:flex;flex:1;flex-direction:column;justify-content:space-between;gap:13px;min-height:0}.prompt-matrix-head,.prompt-matrix-row{display:grid;grid-template-columns:152px repeat(3,minmax(0,1fr));gap:22px;align-items:center}.prompt-matrix-head{min-height:63px;align-items:start}.prompt-matrix-head>span{font-size:18px;color:#a599b3;padding-top:13px}.prompt-matrix-head h4{font:18px/1.3 var(--ui-font);color:#c9bcd7;position:relative;padding-top:13px}.prompt-matrix-head h4 i{position:absolute;top:0;left:0;width:23px;height:3px;background:var(--prompt-color);border-radius:2px}.prompt-matrix-row{border-top:1px solid #b9a2d922;padding:18px 0;animation:story-item .6s var(--ease) both;animation-delay:var(--stagger,0ms)}.prompt-matrix-value{display:flex;flex-direction:column;gap:10px}.prompt-matrix-value strong{font:400 23px/1 var(--ui-font);color:#ded3e8;font-variant-numeric:tabular-nums}.prompt-measure-track{height:7px;display:block;background:#b89fd411;border-radius:2px}.prompt-measure-track>i{height:100%;width:var(--width);display:block;background:var(--color);border-radius:2px;transform-origin:left;animation:bar-grow .65s var(--ease)}/* A fixed label column keeps every pair of domain bars aligned. */
.story-visual[data-visual=policies]{gap:12px}.policy-model-legend{display:flex;align-items:center;gap:20px;flex-wrap:wrap;flex-shrink:0}.policy-model-legend>span{display:inline-flex;gap:7px;align-items:center;font:18px/1.2 var(--ui-font)}.policy-model-legend>span:first-child{color:#accbf4}.policy-model-legend>span:last-child{color:#cfb2ef}.policy-model-legend .model-logo{width:21px;height:21px}.policy-component-key{display:flex;align-items:center;gap:22px;flex-shrink:0}.policy-component-key button{display:inline-flex;gap:8px;align-items:center;font:18px/1.3 var(--ui-font);padding:0;color:#80738e;opacity:.45;transition:opacity .2s,color .2s}.policy-component-key button.active{color:#c5b7d4;opacity:1}.policy-component-key i{width:17px;height:6px;border-radius:1px}.policy-domains{display:flex;flex-direction:column;justify-content:space-evenly;flex:1;gap:3px;min-height:0}.policy-domain{display:grid;grid-template-columns:178px minmax(0,1fr);gap:12px;align-items:center;min-height:23px;font:18px/1.2 var(--ui-font);color:#bdb0ce}.policy-domain:last-child{border-top:1px solid #bba0da25;padding-top:6px;margin-top:3px}.policy-domain>div{display:grid;gap:3px;background:linear-gradient(90deg,transparent 49.7%,#b9a5cf55 49.7%,#b9a5cf55 50.3%,transparent 50.3%)}.policy-stack{display:block;position:relative;height:7px;min-height:7px;width:100%;padding:0;border:0}.policy-stack i{position:absolute;height:7px;top:0;border-radius:1px;transition:width .35s var(--ease),left .35s var(--ease),filter .2s}.policy-stack:hover i{filter:brightness(1.3)}/* Full numbers and original query text remain in accessible dialogs. */
.original-query{font-family:var(--ui-font);font-size:24px!important;line-height:1.65!important;color:#e4d6ee!important}.query-cost{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:20px}.query-cost math,.query-cost strong{font-size:25px;color:#d3b8f3;font-weight:400}.query-cost strong{font-family:var(--ui-font)}.detail-model{display:inline-flex;align-items:center;gap:9px;font-size:18px;color:#ded0eb}.detail-model .model-logo{vertical-align:middle}.detail-prompt{display:block;font-size:18px;color:var(--muted);margin-top:5px}.research-dialog .results-table td:first-child{font-family:Arial,Helvetica,sans-serif!important;font-size:18px!important;white-space:normal;min-width:295px}.research-dialog .results-table td:not(:first-child){font:20px var(--ui-font)}.research-dialog .detail-model{flex-wrap:wrap}.research-dialog .dialog-body>.table-scroll{max-height:58svh}
@keyframes story-item{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(min-width:761px){.method-screen,.findings-screen{justify-content:flex-start;gap:20px}.story-panel{flex:1;min-height:0}.story-tabs{flex-shrink:0}}
@media(min-width:761px) and (max-height:800px){.method-screen,.findings-screen{gap:16px}.story-tabs{min-height:52px}.story-tabs>button,.story-tabs>button:first-child{padding:12px 14px;gap:10px}.story-copy{padding:24px}.story-copy h3{font-size:29px}.story-copy p{font-size:20px;line-height:1.5;margin-top:18px}.story-copy .text-link{min-height:35px;padding-top:7px}.story-visual{padding:24px;gap:17px}.visual-title{font-size:23px}.query-comparison{grid-template-columns:129px minmax(0,1fr);gap:18px;padding:17px 0}.query-name{font-size:19px;gap:10px}.query-name svg{width:25px;height:25px}.query-bar-row{margin-right:53px}.utility-row{grid-template-columns:83px minmax(0,1fr);gap:20px;padding:13px 0}.utility-value{font-size:48px}.utility-row p{margin-top:6px;line-height:1.4}.prompt-matrix-head,.prompt-matrix-row{grid-template-columns:132px repeat(3,minmax(0,1fr));gap:17px}.prompt-matrix-row{padding:14px 0}.prompt-matrix-value strong{font-size:22px}.prompt-matrix{gap:9px}.story-visual[data-visual=policies]{padding:22px;gap:9px}.policy-domain{grid-template-columns:173px minmax(0,1fr);min-height:21px}.policy-domains{gap:2px}
}
@media(max-width:760px){.story-section .section-heading{align-items:center;flex-wrap:nowrap;gap:18px}.story-section h2{font-size:34px;line-height:1.18}.story-play{padding:7px 8px;font-size:18px;gap:6px}.story-play svg{width:18px}.story-play>span{display:none}.story-tabs{gap:7px;overflow-x:auto;min-height:58px;padding-bottom:5px;scrollbar-width:thin;scrollbar-color:#a18ac352 transparent;max-width:100%}.story-tabs>button,.story-tabs>button:first-child{flex:0 0 auto;padding:12px 13px!important;gap:9px;font-size:18px;min-width:135px}.story-tabs>button span{display:inline;margin:0;font-size:18px;white-space:nowrap}.story-panel{grid-template-columns:1fr;min-height:0;overflow:visible;gap:0;border-radius:10px}.story-copy{padding:24px;border-right:0;border-bottom:1px solid #bca5dd29;gap:0}.story-copy h3{font-size:29px;line-height:1.2;text-wrap:pretty}.story-copy p{font-size:20px;line-height:1.6;margin-top:18px}.story-copy .text-link{margin-top:20px;padding-top:0;min-height:28px}.story-copy #finding-actions{margin-top:0}.story-visual{padding:24px 20px;min-height:350px;overflow:hidden;gap:22px;align-self:auto}.visual-title{font-size:23px}.story-visual .comparison-model{font-size:18px}.query-comparison{grid-template-columns:1fr;gap:20px;padding:22px 0}.query-name{font-size:20px;gap:12px}.query-name svg{width:25px;height:25px}.query-bar-row{margin-right:58px}.query-cost-pair{gap:16px}.cost-comparison-key{font-size:18px;gap:22px}.query-costs{min-height:340px}.utility-rows{gap:0}.utility-row{grid-template-columns:64px 1fr;gap:18px;padding:24px 0}.utility-value{font-size:39px}.utility-row strong{font-size:20px}.utility-row p{font-size:18px;line-height:1.5;margin-top:9px}.paper-curve{min-height:310px;gap:20px}.paper-curve>svg{flex:none;height:250px;min-height:0}.paper-curve text{font-size:18px}.paper-curve .coverage-control{gap:11px;font-size:18px}.paper-curve .coverage-control output{font-size:19px}.prompt-matrix{gap:20px}.prompt-matrix-head,.prompt-matrix-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.prompt-matrix-head>span{display:none}.prompt-matrix-head h4{font-size:18px;overflow-wrap:anywhere}.prompt-matrix-row{padding:19px 0;gap:20px 10px}.prompt-matrix-row>.comparison-model{grid-column:1/-1;font-size:20px}.prompt-matrix-value strong{font-size:20px}.policy-model-legend{gap:13px}.policy-model-legend>span{font-size:18px}.policy-component-key{gap:17px}.policy-domains{gap:17px}.policy-domain{grid-template-columns:1fr;gap:8px;font-size:20px;line-height:1.3}.policy-domain>div{gap:6px}.policy-stack,.policy-stack i{height:9px}.policy-domain:last-child{padding-top:16px;margin-top:0}.story-visual[data-visual=policies]{gap:20px}.original-query{font-size:22px!important}.query-cost{gap:9px;font-size:20px}.research-dialog .dialog-body{padding:22px 16px}
}
@media(prefers-reduced-motion:reduce){.story-tabs>button::before{transition:none}.query-comparison,.utility-row,.prompt-matrix-row,.prompt-measure-track i,.query-bar-track i{animation:none}}

/* The compact canvas retains full type sizes and all six comparisons. */

@media(min-width:761px) and (max-height:800px){.prompt-matrix-row{padding:8px 0}.prompt-matrix{gap:8px}}
/* On phones, comparisons become a vertical list instead of a cropped table. */

@media(max-width:760px){.story-section{grid-template-columns:minmax(0,1fr)}.story-section>.screen{min-width:0;width:100%;max-width:100vw}.story-tabs{min-width:0;width:100%}.story-panel{min-width:0;max-width:100%}}
@media(min-width:761px) and (max-height:800px){.story-visual[data-visual=policies]{gap:5px}.policy-domain:last-child{padding-top:4px;margin-top:2px}}
/* The response-utility dialog follows immediate outcomes, budget, then price. */
.utility-detail-section{margin-top:30px}.utility-detail-section h3{font-size:24px!important;margin:0 0 15px!important;color:#e5d9f0}
.utility-base-outcomes{margin:0 0 22px;border-top:1px solid var(--line)}.utility-base-outcomes>div{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:20px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.utility-base-outcomes dt{font-size:20px;color:#c9bfd6}.utility-base-outcomes dd{display:flex;justify-content:flex-end;align-items:center;gap:3px;margin:0;font:30px/1.1 var(--math-font);color:#d0b5f0}.utility-base-outcomes dd math{font-size:1em}
.utility-equation{border:1px solid #bba0df35;border-radius:7px;background:#bba0df08;padding:20px 22px;margin:18px 0 22px;overflow-x:auto;color:#d6bff2;font:27px/1.4 var(--math-font)}.utility-equation math{font-size:1em;min-width:max-content}
.utility-setting{padding:24px;border:1px solid #bca2df38;border-left:3px solid #bca2df;border-radius:7px;background:linear-gradient(130deg,#bba0df0b,transparent)}.utility-setting p:last-child{margin-bottom:0}
@media(max-width:760px){.utility-detail-section{margin-top:26px}.utility-detail-section h3{font-size:23px!important}.utility-base-outcomes>div{grid-template-columns:minmax(0,1fr) 75px}.utility-equation{padding:18px 14px;font-size:23px}.utility-setting{padding:20px 16px}}
/* Match the paper: GPT uses purple, Gemini uses rose, with shade for outcome. */
.policy-model-legend>span:first-child,.policy-model-legend>span:last-child{color:var(--model-color)}
.policy-model-swatch{width:18px;height:8px;flex-shrink:0;border-radius:2px;background:var(--model-color)}
.policy-component-colors{display:grid;gap:3px}.policy-component-key .policy-component-colors i{width:19px;height:5px;border-radius:1px}
/* Center each method group inside an equal-height cell bounded by rules. */
@media(min-width:761px){
 .query-costs,.utility-rows{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(3,minmax(0,1fr));justify-content:stretch;gap:0;border-block:1px solid #baa1db1d}
 .query-comparison,.utility-row{min-height:0;padding-block:0;align-items:center}
}
@media(min-width:761px){.method-explanation h3{flex-shrink:0}.method-explanation #method-description{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#745b8a transparent}.method-explanation .text-link{flex-shrink:0}}
