/* Bindery. Stable, small print variation; exact chart geometry and unchanged hit targets. */
:root[data-look=fixed]{--bind-cloth:url('/assets/bindery/bookcloth.webp');--bind-grain:url('/assets/bindery/press-grain.webp');--bind-lines:url('/assets/bindery/ledger-lines.svg');--bind-ink:url('/assets/bindery/ink.webp')}
:root[data-look=fixed] body{background-color:#27291f;background-image:linear-gradient(105deg,#161a10b0,#1c1c1390),var(--bind-lines),var(--bind-cloth);background-size:auto,1300px 910px,1400px 1100px;background-position:0 0,center 85px,0 0;background-repeat:repeat,repeat-y,repeat}
:root[data-look=fixed] .main{min-height:calc(100dvh - 95px);padding-bottom:20px}
:root[data-look=fixed] [data-stock]{--stock-tint:#baae8110;--stock-x:0px;--stock-y:0px;--stock-edge:6.5px;background-image:linear-gradient(115deg,var(--stock-tint),#ffffff02),var(--fixed-pulp);background-position:0 0,var(--stock-x) var(--stock-y);background-size:auto,1000px 800px;border-image-width:var(--stock-edge)}
:root[data-look=fixed] [data-stock="1"]{--stock-tint:#bdc59a18;--stock-x:157px;--stock-y:-71px;--stock-edge:6px 7px 6px 6px}
:root[data-look=fixed] [data-stock="2"]{--stock-tint:#b7a27c16;--stock-x:357px;--stock-y:100px;--stock-edge:7px 6px 6.5px 7px}
:root[data-look=fixed] [data-stock="3"]{--stock-tint:#87957710;--stock-x:-93px;--stock-y:193px;--stock-edge:6px 6.5px 7px 6px}
:root[data-look=fixed] [data-stock="4"]{--stock-tint:#d6caa019;--stock-x:431px;--stock-y:-120px;--stock-edge:7px 7px 6px 6.5px}
/* Tonal ink, not missing glyphs: only large paper type uses a clipped texture. */
:root[data-look=fixed] :is(.dossier-paper,.last-slip,.source-book,.worked-figure,.scratch-sheet,.hint-item,.print-note){isolation:isolate;color:#303225}
:root[data-look=fixed] :is(.dossier-paper,.last-slip,.source-book,.scratch-sheet,.hint-item,.worked-figure)::before{background-image:var(--fixed-paper);filter:drop-shadow(1px 4px 2px #0007)}
:root[data-look=fixed] :is(.dossier-paper,.last-slip,.source-book,.hint-item,.worked-figure,.print-note) :is(h2,h3,strong,b,p,span,a,svg){mix-blend-mode:multiply}
@supports(background-clip:text){:root[data-look=fixed]:not([data-texture=off]) :is(.dossier-paper strong,.dossier-paper b,.last-slip h3,.source-book h2,.source-book h3,.print-note h2){background:var(--bind-ink) repeat;-webkit-background-clip:text;background-clip:text;color:transparent}}
:root[data-look=fixed] .last-slip{padding:26px 24px;gap:14px}
:root[data-look=fixed] .source-book{min-height:170px}
:root[data-look=fixed] .source-book:hover{color:#262b20;background:none!important}
:root[data-look=fixed] .source-book :is(a,span){color:#353c2b}
:root[data-look=fixed] .source-book:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
/* Full photographic mounts. Override the old 250px limit and !important source crop. */
:root[data-look=fixed] .hero-scene{min-height:290px;overflow:hidden;background:#2a3022 var(--bind-grain) 40% 0/1000px 800px;background-blend-mode:multiply;display:grid;grid-template-columns:minmax(0,1fr)}
:root[data-look=fixed] .hero-scene .hero-art{display:block!important;position:absolute;inset:0!important;width:100%!important;height:100%!important;max-height:none;opacity:1;filter:none;background-image:linear-gradient(90deg,#23281ff5 0%,#23281feb 23%,#23281f66 53%,#23281f33 80%),linear-gradient(0deg,#242a1e80,transparent 45%),url('/assets/bindery/cockpit-print.webp')!important;background-size:auto,auto,cover;background-repeat:no-repeat;background-position:center,center,62% 52%;mask-image:none;-webkit-mask-image:none}
:root[data-look=fixed] .hero-scene .hero-art::after{content:'';position:absolute;inset:0;background:var(--bind-grain) 100% 50%/900px;mix-blend-mode:soft-light;opacity:.35;pointer-events:none}
:root[data-look=fixed] .hero-scene .resume-column{max-width:62%;min-width:0;width:auto;background:none;align-self:center;padding:27px 31px 44px;z-index:2}
:root[data-look=fixed] .hero-scene h1{font-size:clamp(38px,3.7vw,63px);margin:13px 0}
:root[data-look=fixed] .hero-scene .scene-caption{left:30px;right:auto;bottom:10px;font:10px/1.5 var(--mono);letter-spacing:.08em}
:root[data-look=fixed] .record-hero .record-portrait{inset:0 165px 0 0!important;width:auto!important;background-image:linear-gradient(90deg,#282e23fa 0%,#282e23ee 32%,#282e2355 62%),linear-gradient(0deg,#282e2355,#282e2300),url('/assets/bindery/wing-print.webp');background-size:auto,auto,cover;background-position:center,center,65% 45%;opacity:1!important;border:0;mask-image:none;-webkit-mask-image:none}
:root[data-look=fixed] .record-hero>div:not(.record-portrait):not(.record-controls){background:none;padding:30px;max-width:75%}
:root[data-look=fixed] .record-hero h1{font-size:clamp(40px,4vw,64px)}
:root[data-look=fixed] .record-hero{min-height:238px;background:#282e23;overflow:hidden}
:root[data-look=fixed] .record-controls{position:relative;z-index:2;align-self:center;margin:12px 16px 12px 0;padding:22px 17px;max-width:245px}
/* Save status owns its space even when a request fails. */
:root[data-look=fixed] .common-masthead{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0}
:root[data-look=fixed] .mast-brand{flex:0 1 auto;min-width:0}
:root[data-look=fixed] .student-nav{flex:1 1 auto;min-width:0;justify-content:center}
:root[data-look=fixed] .mast-tools{display:flex;flex:0 0 auto;align-items:center;gap:10px;min-width:0;width:auto}
:root[data-look=fixed] .mast-tools>.icon-button{flex:0 0 28px;width:28px;min-width:28px}
:root[data-look=fixed] #save-status{position:static;display:inline-flex!important;align-items:center;gap:6px;flex:0 0 auto;min-width:0;max-width:115px;width:auto;padding:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:12px/1.4 var(--body);border:0;background:none;color:var(--muted);box-shadow:none;cursor:default}
:root[data-look=fixed] #save-status .icon{width:17px;height:17px;flex:0 0 17px}
:root[data-look=fixed] #save-status.pending{color:#e2c78f}
:root[data-look=fixed] #save-status[data-action=retry-save]{cursor:pointer;text-decoration:underline;text-underline-offset:4px}
:root[data-look=fixed] #save-status:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
/* Full layout for the retained Progress view. */
:root[data-look=fixed] .progress-sheet{max-width:1510px;margin:0 auto}
:root[data-look=fixed] .desk-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:17px 5px 25px}
:root[data-look=fixed] .desk-heading h1{font:clamp(39px,4.2vw,65px)/1.05 var(--display);margin:10px 0}
:root[data-look=fixed] .folio{font:11px/1.6 var(--mono);letter-spacing:.1em;color:var(--muted)}
:root[data-look=fixed] .progress-ledger{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:7px solid transparent;border-image:var(--fixed-edge) 17 / 7px / 0 stretch;gap:0;padding:15px 9px;margin-bottom:14px}
:root[data-look=fixed] .progress-ledger>div{padding:10px 20px;display:flex;flex-direction:column;gap:12px;min-width:0}
:root[data-look=fixed] .progress-ledger b{font:38px/1.1 var(--display)}
:root[data-look=fixed] .progress-ledger b small{font-size:20px;color:var(--muted)}
:root[data-look=fixed] .progress-ledger>div+div{background:var(--fixed-rule) left center/5px 160px no-repeat}
:root[data-look=fixed] .progress-ledger span{font:12px/1.6 var(--body);color:var(--muted)}
:root[data-look=fixed] .progress-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}
:root[data-look=fixed] :is(.progress-section,.confidence-desk,.reason-strip){padding:22px;border:7px solid transparent;border-image:var(--fixed-edge) 17 / 7px / 0 stretch;min-width:0}
:root[data-look=fixed] .desk-section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:19px;padding-bottom:13px;background:var(--fixed-rule) left bottom/750px 5px repeat-x}
:root[data-look=fixed] .desk-section-title h2{font:25px/1.2 var(--display);margin:0}
:root[data-look=fixed] .desk-section-title :is(a,button,span){font:12px/1.5 var(--body);color:var(--muted)}
:root[data-look=fixed] .return-row{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border:0;background:var(--fixed-rule) left bottom/700px 5px repeat-x;padding:15px 0;min-width:0;color:var(--text)}
:root[data-look=fixed] .return-row>span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
:root[data-look=fixed] .return-row b{font:18px/1.3 var(--display)}
:root[data-look=fixed] .return-row small{font:12px/1.5 var(--body);color:var(--muted)}
:root[data-look=fixed] .return-value{display:flex;align-items:center;gap:7px;font:13px/1.3 var(--mono)}
:root[data-look=fixed] .return-signal{width:6px;height:21px;background:var(--warning);flex:0 0 6px}
:root[data-look=fixed] .return-signal.recalled{background:var(--good)}
:root[data-look=fixed] .honest-empty{padding:16px 0 24px;line-height:1.7}
:root[data-look=fixed] .honest-empty p{color:var(--muted);margin:10px 0;max-width:58ch}
:root[data-look=fixed] .quiet-details{margin-top:20px;font-size:12px;color:var(--muted)}
:root[data-look=fixed] .certainty-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
:root[data-look=fixed] .certainty-columns>div{display:grid;grid-template-columns:1fr auto;gap:15px;min-width:0}
:root[data-look=fixed] .certainty-columns b{font:28px/1.2 var(--display)}
:root[data-look=fixed] .certainty-columns i{height:7px;grid-column:1/-1;background:#757b563f}
:root[data-look=fixed] .certainty-columns em{height:7px;display:block;background:var(--good)}
:root[data-look=fixed] .certainty-columns small{grid-column:1/-1;color:var(--muted);font:12px/1.4 var(--body)}
:root[data-look=fixed] .timing-summary{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:12px 0 24px}
:root[data-look=fixed] .timing-summary>div{display:flex;flex-direction:column;gap:7px}
:root[data-look=fixed] .timing-summary b{font:32px/1.1 var(--display)}
:root[data-look=fixed] .timing-summary :is(span,small){font:12px/1.6 var(--body);color:var(--muted)}
:root[data-look=fixed] .decision-totals{display:grid;gap:12px}
:root[data-look=fixed] .decision-totals>span{display:flex;justify-content:space-between;gap:16px}
:root[data-look=fixed] .exam-history-row{display:flex;align-items:center;gap:20px;padding:14px 0;justify-content:space-between;background:var(--fixed-rule) left bottom/600px 4px repeat-x}
:root[data-look=fixed] .exam-range{font:48px/1.2 var(--display);margin:12px 0}
:root[data-look=fixed] .reason-strip{display:flex;gap:30px;align-items:center;flex-wrap:wrap;margin-top:15px}
:root[data-look=fixed] .reason-strip h2{flex:1 1 200px;font:25px/1.3 var(--display)}
:root[data-look=fixed] .reason-strip>div{display:flex;flex-direction:column;gap:6px;min-width:90px}
:root[data-look=fixed] .reason-strip b{font:30px/1.2 var(--display)}
/* Functional marginal notes; no pretend student handwriting or invented operational data. */
:root[data-look=fixed] .print-note{position:relative;padding:29px 26px;border:0;background:none;color:var(--paper-text);isolation:isolate;min-width:0;align-self:start;box-shadow:none}
:root[data-look=fixed] .print-note::before{content:'';position:absolute;inset:0;z-index:-1;background:var(--fixed-paper) center/100% 100% no-repeat;filter:drop-shadow(1px 5px 3px #0008);pointer-events:none}
:root[data-look=fixed] .print-note h2{font:30px/1.15 var(--display);margin:16px 0}
:root[data-look=fixed] .print-note .plate-label{color:#4e503e;font:11px/1.5 var(--mono)}
:root[data-look=fixed] .print-note p{font:16px/1.65 var(--display);margin:12px 0}
:root[data-look=fixed] .print-note :is(a,button){color:#343b2b;font:13px/1.6 var(--body);text-decoration:underline;text-underline-offset:4px}
:root[data-look=fixed] .record-path{width:100%;height:auto;display:block;margin:22px 0;opacity:.86;stroke-width:1.2}
:root[data-look=fixed] .note-links{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px}
:root[data-look=fixed] .note-index>div{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0;padding:12px 0;background:var(--fixed-rule) left bottom/650px 4px repeat-x}
:root[data-look=fixed] .note-index :is(dt,dd){font:13px/1.5 var(--body);margin:0}
:root[data-look=fixed] .note-index dd{text-align:right}
:root[data-look=fixed] .practice-notebook{margin-top:8px;grid-column:2;grid-row:3;padding:23px 25px}
:root[data-look=fixed] .practice-notebook .record-path{margin:12px 0}
:root[data-look=fixed] .practice-notebook h2{font-size:27px;margin:12px 0}
:root[data-look=fixed] .practice-setup{position:relative;align-items:start}
:root[data-look=fixed] .practice-setup .setup-main{grid-row:2/5}
:root[data-look=fixed] .setup-quick{grid-row:2;grid-column:2;align-self:start}
:root[data-look=fixed] .setup-quick>.quick-card{min-height:132px;padding:19px 22px;gap:10px}
:root[data-look=fixed] .setup-quick>.quick-card strong{font:25px/1.2 var(--display)}
:root[data-look=fixed] .practice-setup>.method-note{grid-row:5;grid-column:1/-1}
:root[data-look=fixed] .account-composition{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:24px;max-width:1510px;margin:auto}
:root[data-look=fixed] .account-wrap{display:contents;max-width:none;margin:0;min-width:0}
:root[data-look=fixed] .account-wrap>.panel:first-child{grid-column:1;grid-row:1}
:root[data-look=fixed] .account-notebook{grid-column:2;grid-row:1;margin-top:8px}
:root[data-look=fixed] .account-wrap>.panel:nth-child(2){grid-column:1;grid-row:2}
:root[data-look=fixed] .account-wrap>.panel:nth-child(3){grid-column:2;grid-row:2}
:root[data-look=fixed] .account-row{gap:18px}
:root[data-look=fixed] .account-row code{overflow-wrap:anywhere}
:root[data-look=fixed] .record-heading-row{display:grid;grid-template-columns:1fr 390px;gap:25px;align-items:center;margin-bottom:25px}
:root[data-look=fixed] .record-heading-row .page-head{margin:0;padding:15px 6px}
:root[data-look=fixed] .record-notebook{padding:23px 27px;min-height:165px}
:root[data-look=fixed] .record-notebook h2{font-size:25px;margin:9px 0}
:root[data-look=fixed] .record-notebook p{font:13px/1.6 var(--body)}
:root[data-look=fixed] .record-key{font:12px/1.6 var(--mono)}
:root[data-look=fixed] .publication-note{margin:22px 0;padding:25px 30px}
:root[data-look=fixed] .release-path{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;margin:15px 0;position:relative}
:root[data-look=fixed] .release-path>div{display:flex;gap:12px;align-items:center;min-width:0}
:root[data-look=fixed] .release-path b{font:27px var(--display);opacity:.8}
:root[data-look=fixed] .release-path span{font:16px/1.4 var(--display)}
:root[data-look=fixed] .library-head{background:var(--bind-lines) right 20px/auto 320px no-repeat}
:root[data-look=fixed] .library-head p{max-width:55ch}
:root[data-look=fixed] .history-list{padding:0}
:root[data-look=fixed] .history-item{margin:13px 0!important}
:root[data-look=fixed] .history-summary{gap:17px;align-items:center;min-height:88px}
:root[data-look=fixed] .history-question{min-width:0;line-height:1.5}
:root[data-look=fixed] .history-question small{display:block;line-height:1.6;margin-top:8px}
:root[data-look=fixed] .history-detail{padding:18px 24px 25px}
:root[data-look=fixed] .history-detail>p{margin:12px 0}
:root[data-look=fixed] .answer-review{padding:25px 24px}
:root[data-look=fixed] .worked-solution{margin:20px 0}
:root[data-look=fixed] .decision-inner{padding-top:20px}
:root[data-look=fixed] .hint-item{padding:20px 25px!important;min-height:68px;margin:14px 0;font:18px/1.6 var(--display)}
:root[data-look=fixed] .worked-figure{padding:19px 21px!important}
:root[data-look=fixed] .worked-figure svg text{fill:var(--paper-text);font-family:var(--display);mix-blend-mode:multiply}
:root[data-look=fixed] .question-footer{min-height:76px;align-items:center}
:root[data-look=fixed] .owner-site .chart{max-height:290px;width:100%}
:root[data-look=fixed] .owner-site .overview-layout{align-items:start;gap:20px}
:root[data-look=fixed] .owner-site .section-head{margin-top:24px}
:root[data-look=fixed] .empty{box-shadow:none;border:0;background:none;padding:25px 20px}
:root[data-look=fixed] .app-footer{margin-top:30px;padding:25px 10px 16px;clear:both}
@media(max-width:1300px){:root[data-look=fixed] .common-masthead{gap:9px}:root[data-look=fixed] .mast-tools{gap:6px}:root[data-look=fixed] .brand-word{font-size:34px!important}:root[data-look=fixed] [data-site-header] .site-tab{padding:7px 6px!important}:root[data-look=fixed] .mast-tag{display:none}}
@media(max-width:1050px) and (min-width:701px){:root[data-look=fixed] .common-masthead{flex-wrap:wrap}:root[data-look=fixed] .common-masthead>.student-nav{order:3;flex-basis:100%;justify-content:center}:root[data-look=fixed] .mast-brand{flex:1 1 auto}}
@media(max-width:850px){:root[data-look=fixed] .practice-setup{display:flex;flex-direction:column;gap:18px}:root[data-look=fixed] .practice-setup>*{width:100%;margin:0}:root[data-look=fixed] .practice-shortcuts{order:0}:root[data-look=fixed] .setup-main{order:1}:root[data-look=fixed] .setup-quick{order:2}:root[data-look=fixed] .practice-notebook{order:3}:root[data-look=fixed] .practice-setup>.method-note{order:4}:root[data-look=fixed] .account-composition{grid-template-columns:1fr}:root[data-look=fixed] .account-wrap>.panel,:root[data-look=fixed] .account-notebook{grid-column:auto;grid-row:auto}:root[data-look=fixed] .record-heading-row{grid-template-columns:1fr 320px}}
@media(max-width:700px){:root[data-look=fixed] .student-nav{justify-content:flex-start}:root[data-look=fixed] .common-masthead{padding:10px 8px;min-height:69px;gap:8px}:root[data-look=fixed] .mast-brand{max-width:48%;flex:0 1 auto}:root[data-look=fixed] .brand-word{font-size:31px!important}:root[data-look=fixed] .mast-tools{gap:3px}:root[data-look=fixed] #save-status{font-size:10px;gap:3px;max-width:75px}:root[data-look=fixed] #save-status .icon{width:14px;height:14px;flex-basis:14px}:root[data-look=fixed] .mast-tools>.icon-button{width:26px;min-width:26px;flex-basis:26px}:root[data-look=fixed] .mast-tools .account-link{display:none}:root[data-look=fixed] .record-heading-row{grid-template-columns:1fr;gap:14px}:root[data-look=fixed] .record-notebook{min-height:0}:root[data-look=fixed] .progress-ledger{grid-template-columns:1fr 1fr}:root[data-look=fixed] .progress-ledger>div{padding:12px}:root[data-look=fixed] .progress-columns{grid-template-columns:1fr}:root[data-look=fixed] .certainty-columns{gap:12px}:root[data-look=fixed] .desk-section-title{flex-wrap:wrap;gap:9px}:root[data-look=fixed] .desk-section-title h2{font-size:23px}:root[data-look=fixed] .hero-scene .resume-column{max-width:100%;padding:23px 20px 42px}:root[data-look=fixed] .hero-scene .hero-art{background-position:center,center,65% 50%;opacity:.65}:root[data-look=fixed] .record-hero .record-portrait{inset:0!important;background-position:center,center,70% 45%;opacity:.5!important}:root[data-look=fixed] .record-hero>div:not(.record-portrait):not(.record-controls){max-width:100%;padding:23px 20px}:root[data-look=fixed] .record-controls{max-width:none;margin:8px 17px 18px}:root[data-look=fixed] .history-summary{gap:10px;flex-wrap:wrap}:root[data-look=fixed] .history-date{margin-left:24px}:root[data-look=fixed] .history-detail{padding:14px 12px}:root[data-look=fixed] .print-note{padding:24px}:root[data-look=fixed] .progress-section{padding:17px}:root[data-look=fixed] .certainty-columns span{font-size:12px}:root[data-look=fixed] .release-path{grid-template-columns:1fr;gap:14px}:root[data-look=fixed] .setup-quick{grid-template-columns:1fr}:root[data-look=fixed] .setup-quick>.quick-card{min-height:110px}}
@media(max-width:375px){:root[data-look=fixed] .brand-word{font-size:26px!important}:root[data-look=fixed] .mast-tools .owner-link{display:none}:root[data-look=fixed] .confidence-desk{padding:14px}:root[data-look=fixed] .progress-ledger b{font-size:29px}:root[data-look=fixed] .return-row b{font-size:16px}}
/* Accessibility settings apply to the print treatment as well. */
:root[data-look=fixed][data-texture=off] body{background:#23261e}
:root[data-look=fixed][data-texture=off] [data-stock]{background-image:none;background:#30362a;border-image:none;border:1px solid #767b62}
:root[data-look=fixed][data-texture=off] .print-note::before{display:none}
:root[data-look=fixed][data-texture=off] .print-note{background:#c9bea0}
:root[data-look=fixed][data-texture=off] :is(.print-note,.library-head){background-image:none}
:root[data-look=fixed][data-texture=off] :is(.dossier-paper strong,.dossier-paper b,.last-slip h3,.source-book h2,.source-book h3,.print-note h2){background:none;color:var(--paper-text)}
:root[data-look=fixed][data-texture=off] .hero-art::after{display:none}
@media(forced-colors:active){:root[data-look=fixed] *{mix-blend-mode:normal!important;background-image:none!important}:root[data-look=fixed] .print-note::before{display:none}:root[data-look=fixed] :is(.dossier-paper strong,.dossier-paper b,.last-slip h3,.source-book h2,.source-book h3,.print-note h2){color:CanvasText!important}:root[data-look=fixed] #save-status{color:ButtonText}}
