/* Documentary identity; reading controls inherit the tested reader shell. */
:root{--paper:#f3eee3;--ink:#292925;--muted:#655e54;--line:#b8b0a1;--accent:#743b32;--wash:#e9e2d5;--mark:#e5d2a3;--folio:ui-monospace,'Courier New',monospace;--serif:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif}
:root[data-theme=dusk]{--paper:#252624;--ink:#ece5d7;--muted:#beb5a8;--line:#69665e;--accent:#e7aa95;--wash:#333530;--mark:#67533b}
:root[data-theme=ink]{--paper:#fffdf7;--ink:#22221f;--muted:#5d574f;--line:#b6b0a5;--accent:#72362f;--wash:#f0ebe1;--mark:#efdda8}
.eyebrow{font-size:12px;letter-spacing:.12em}.masthead{min-height:72px;gap:24px;max-width:1400px}.wordmark{font:24px var(--serif);font-variant:small-caps;letter-spacing:.03em}.masthead nav a{font-size:13px;min-width:44px;text-align:center}.reader-tools{top:72px}.reader-tools button{min-width:44px}.small{font-size:14px}.site-footer{font-size:13px}.site-footer button{font-size:13px;min-width:44px}.type-button{min-width:44px}button:disabled{cursor:default}.reader-section-label{font:italic 1.15rem var(--serif);color:var(--muted);margin:0}.reader-heading{margin-bottom:32px}.reader-heading .eyebrow{margin-bottom:12px}.reading{padding-top:20px}.reader-tools{margin-bottom:40px;padding-bottom:8px}.reading-surface{line-height:var(--leading)}.reading-surface [data-align]{display:block}.reading-surface [data-align=center]{text-align:center}.reading-surface [data-align=right]{text-align:right}.source-smallcap{font-variant:small-caps}.source-underline{text-decoration:underline}.source-image{display:block;max-width:100%;height:auto;margin:24px auto}.source-image[width="659"]{max-width:min(320px,85%)}.reading-surface .heading{font-weight:400;letter-spacing:.02em}.reading-surface[data-profile="dracula/document@1"]>.heading:first-child{font-size:1.25em}.source-image[width="60"]{max-width:60px}.license-text{white-space:pre-wrap;font:15px/1.65 var(--sans)}
.dracula-shelf{max-width:1200px;margin:0 auto;padding:72px 6vw 48px;display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(48px,8vw,120px)}.shelf-book{padding:0 0 32px}.shelf-book h1{font-size:clamp(5rem,8vw,8rem);letter-spacing:-.055em;margin:24px 0 28px;line-height:1}.shelf-book h1 span{display:block;margin-top:24px;letter-spacing:.15em;font:14px var(--folio);color:var(--accent)}.cover-author{font:23px/1.5 var(--serif);margin-bottom:32px}.shelf-book .primary{margin-bottom:14px}.cover-rule{border-bottom:1px solid var(--line);width:64px;margin:36px 0 20px}.shelf-investigation{border-left:1px solid var(--line);padding:0 0 40px 48px}.file-emblem{margin:30px 0 18px;display:flex;align-items:center;gap:20px;color:var(--accent)}.file-emblem span{font:italic 32px var(--serif)}.file-emblem svg{width:160px;fill:none;stroke:currentColor;stroke-width:1.3}.shelf-investigation h2{font-size:clamp(3.4rem,5vw,5.3rem);margin:0 0 24px;line-height:1.02}.shelf-investigation h2 em{font-weight:400}.shelf-investigation>p:not(.eyebrow):not(.small){font:20px/1.5 var(--serif);margin-bottom:30px}.case-entry{display:inline-flex;align-items:center;gap:28px;min-height:48px;border-bottom:1px solid var(--accent);text-decoration:none;color:var(--accent);margin-bottom:20px}.shelf-source{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:start;gap:30px;font-size:14px}.shelf-source summary{cursor:pointer;padding:12px 0;min-height:44px}.shelf-source img{width:160px;height:auto}.shelf-source details{margin-left:auto}.extra-book{grid-column:1/-1;border-top:1px solid var(--line);margin-top:16px}.case-intro h1{font-size:clamp(4rem,8vw,7rem)}.case-deck{font:28px/1.5 var(--serif);max-width:630px}.case-brief{max-width:660px;border-top:1px solid var(--line);padding-top:24px}.case-brief>.primary{margin:8px 24px 24px 0}.case-brief>button.text{display:block;margin-bottom:24px}.case-page{max-width:1600px;margin:auto;padding:42px 4vw 48px}.case-header{display:flex;align-items:start;justify-content:space-between;gap:32px}.case-header h1{font-size:clamp(2.7rem,4.5vw,4.5rem);margin:0 0 16px;letter-spacing:-.04em}.case-header>div>p:last-child{font:21px var(--serif);color:var(--muted)}.case-header-actions{display:flex;flex-direction:column;align-items:end;font-size:13px}.case-stages{display:flex;gap:20px;border-block:1px solid var(--ink);margin:20px 0 0}.case-stages button{font-size:13px;padding:16px 8px;display:flex;align-items:center;gap:12px}.case-stages span{font:12px var(--folio)}.case-stages [aria-current=step]{color:var(--accent);box-shadow:inset 0 -3px var(--accent)}.case-stages button:disabled{opacity:.48}.case-desk{display:grid;grid-template-columns:minmax(180px,230px) minmax(280px,1fr) minmax(310px,.88fr);gap:30px;align-items:start;padding-top:24px}.index-title{display:flex;align-items:baseline;gap:12px;justify-content:space-between;margin-bottom:20px}.index-title h2{font:22px var(--serif);margin:0}.index-title>span{font:11px var(--folio);color:var(--muted)}.document-index ol{list-style:none;margin:0;padding:0}.document-index li{border-top:1px solid var(--line)}.document-index li button{display:flex;width:100%;text-align:left;align-items:baseline;gap:12px;padding:14px 8px;font:15px/1.3 var(--serif)}.document-index small{display:block;color:var(--muted);font:11px/1.5 var(--sans);margin-top:6px}.document-index li button[aria-pressed=true]{background:var(--wash);box-shadow:inset 3px 0 var(--accent)}.folio{font:12px var(--folio);color:var(--accent)}.mobile-file-select{display:none}.evidence-paper{padding:28px;background:var(--paper);border:1px solid var(--line);box-shadow:5px 5px 0 var(--wash)}.paper-top{display:flex;justify-content:space-between;font:11px var(--folio);padding-bottom:28px;color:var(--muted)}.evidence-paper h2{font-size:2rem;margin-bottom:16px}.document-date{font:13px/1.5 var(--sans);color:var(--muted);padding-bottom:20px;border-bottom:1px solid var(--line)}.source-label{font:11px/1.5 var(--sans);color:var(--muted)}.evidence-paper .fragment-surface{font-size:var(--size);line-height:var(--leading);margin:20px 0 26px}.paper-actions{display:flex;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px;font-size:13px}.paper-actions button{text-align:left}.deduction-notebook{padding:4px 0 16px 24px;border-left:1px solid var(--line);scroll-margin-top:90px;outline:none}.deduction-notebook h2{font-size:1.9rem;line-height:1.18}.case-instruction{font-size:var(--size);line-height:1.5;color:var(--muted)}.deduction-notebook fieldset{border:0;margin:24px 0;padding:0;min-width:0}.deduction-notebook legend{font:16px/1.45 var(--serif);margin:0 0 12px}.answer-option{display:flex;gap:12px;align-items:start;padding:12px 8px;border-top:1px solid var(--line);font:16px/1.45 var(--serif);cursor:pointer}.answer-option input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent);margin:4px 0}.answer-option:has(:checked){background:var(--wash)}.evidence-picker{display:grid;grid-template-columns:1fr;gap:0}.evidence-picker label{display:flex;gap:10px;align-items:center;min-height:44px;font:14px/1.4 var(--sans);padding:8px;cursor:pointer;border-top:1px solid var(--line)}.evidence-picker b{font:12px var(--folio);color:var(--accent);margin-right:4px}.evidence-picker input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}.evidence-picker label:has(:checked){background:var(--wash)}.timeline{padding:0;list-style:none;margin:24px 0 30px}.timeline li{display:grid;grid-template-columns:18px 1fr 44px;gap:12px;align-items:center;border-top:1px solid var(--line);padding:10px 0;font:16px/1.45 var(--serif)}.timeline-number{font:12px var(--folio);color:var(--accent)}.move-buttons{display:flex;flex-direction:column}.move-buttons button{padding:8px;min-width:44px;min-height:44px;display:grid;place-items:center}.move-buttons svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}.case-help{border-top:1px solid var(--line);margin-top:24px;font-size:14px}.case-help .small{margin-left:16px}.hint{font-size:var(--size);line-height:1.5;color:var(--muted)}.case-feedback:not(:empty){background:var(--wash);padding:16px;border-left:3px solid var(--accent);font:var(--size)/1.5 var(--serif);scroll-margin:90px}.case-feedback:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.case-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line)}.shore-sketch{margin-top:24px}.shore-sketch summary{font:14px var(--serif);min-height:44px;padding:12px 0;cursor:pointer}.shore-sketch svg{max-width:100%;color:var(--muted)}.shore-sketch svg text{fill:currentColor;font:13px var(--serif)}.shore-sketch p{font:12px/1.6 var(--sans);color:var(--muted)}.case-report{max-width:720px;margin:56px auto}.case-report h2{font-size:clamp(3rem,6vw,5rem)}.report-lead{font:var(--size)/1.6 var(--serif)}.case-report ol{padding-left:28px}.case-report li{padding:20px 0;border-top:1px solid var(--line)}.case-report li h3{font-size:24px}.case-report li p{font:var(--size)/var(--leading) var(--serif)}.report-end{padding:24px 0;border-block:1px solid var(--line);margin-bottom:24px}.report-end button{margin:8px 24px 8px 0}#case-save-status:not(:empty){padding:14px;background:var(--wash);border-left:3px solid var(--accent)}.case-stages [disabled]{opacity:.65}.focus .reader-heading{display:block}.focus .reader-section-label{display:block}.focus .reader-heading .eyebrow{display:block;font-size:12px}.focus .reading{padding-top:24px}
@media(min-width:1800px){.case-desk{gap:40px}}
@media(max-width:1150px){.case-desk{grid-template-columns:210px minmax(280px,1fr)}.deduction-notebook{grid-column:2;padding:28px 0 0;border-left:0;border-top:1px solid var(--line)}.document-index{grid-row:1/3}.case-page{padding-inline:5vw}.evidence-picker{grid-template-columns:1fr 1fr;gap:8px}.case-stages{gap:12px}.evidence-paper{padding:28px}}
@media(max-width:700px){.dracula-shelf{grid-template-columns:1fr;padding:40px 7vw}.shelf-book h1{font-size:5.8rem}.shelf-investigation{border-left:0;border-top:1px solid var(--line);padding:32px 0}.shelf-investigation h2{font-size:3.8rem}.shelf-source{gap:16px;flex-wrap:wrap}.shelf-source details{margin-left:0}.case-page{padding:28px 5vw}.case-header{display:block}.case-header h1{font-size:3rem}.case-header-actions{align-items:start;flex-direction:row;gap:24px;flex-wrap:wrap}.case-stages{gap:0;justify-content:space-between;flex-wrap:wrap}.case-stages button{font-size:12px;gap:5px;padding:12px 6px;min-height:48px}.case-desk{display:block;padding-top:8px}.document-index ol{display:none}.mobile-file-select{display:block;font-size:13px;margin-bottom:24px}.mobile-file-select select{display:block;width:100%;min-height:48px;margin-top:8px;background:var(--paper);border:1px solid var(--line);padding:8px;font-size:15px}.index-title{margin-bottom:8px}.shore-sketch{margin:12px 0 24px}.shore-sketch svg{width:280px}.evidence-paper{padding:24px 20px}.evidence-paper h2{font-size:2rem}.paper-top{padding-bottom:24px}.deduction-notebook{margin-top:32px;padding-top:28px}.evidence-picker{grid-template-columns:1fr}.case-footer{display:block}.case-report{margin:40px auto}.case-report ol{padding-left:22px}.case-brief .primary{margin-right:0}.case-header-actions button{font-size:13px}.case-stages button span{display:none}.reader-tools{gap:10px}.reader-tools .tool-group{gap:14px}}
@media(max-width:540px){.masthead{min-height:92px;margin:0 5vw;padding-top:4px;gap:0}.masthead nav{gap:18px}.masthead nav a{font-size:12px;padding:12px 0}.wordmark{font-size:24px}.reader-tools{top:92px}.reader-heading{margin-bottom:20px}.reading{padding-inline:6vw}.reader-tools{margin-bottom:24px}.case-header h1{font-size:2.7rem}}
@media(max-height:500px){.masthead{position:relative;min-height:60px;display:flex}.masthead nav{gap:20px}.reader-tools{top:0;margin-bottom:16px}.reader-tools .tool-group{gap:20px}.reader-heading{margin-bottom:20px}.case-header h1{font-size:2.4rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.mobile-papers-link{display:none}@media(max-width:700px){.mobile-papers-link{display:block;margin-bottom:20px;font-size:14px}}

.reading-surface [data-align]{display:inline-block;width:100%;vertical-align:top}.answer-option{font-size:max(17px,calc(var(--size) * .85))}.deduction-notebook legend{font-size:max(17px,calc(var(--size) * .85))}

.paper-turns{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:13px;margin-top:12px}.index-title h2{white-space:nowrap}
@media(max-width:700px){.case-header>div>p:last-child:not(.eyebrow){display:none}.case-header h1{font-size:2.3rem;margin-bottom:12px}.case-header .eyebrow{font-size:11px;margin-bottom:12px}.case-header-actions{gap:20px}.case-stages{margin-top:12px}.case-page{padding-top:24px}.case-desk{padding-top:4px}}

/* WebKit's native menulist can ignore min-height until appearance is explicit. */
select,.mobile-file-select select{appearance:none;min-height:48px;padding:10px 40px 10px 12px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23655e54' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}
:root[data-theme=dusk] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23ece5d7' stroke-width='1.5'/%3E%3C/svg%3E")}

/* Let enlarged navigation wrap, and keep the reading toolbar below it. */
:root .masthead .wordmark{display:flex;align-items:center;min-height:44px;flex-shrink:0;justify-self:start}
:root .masthead .type-button{flex-shrink:0}
:root .masthead nav{min-width:0;flex-wrap:wrap}
:root .masthead nav a{white-space:nowrap}
:root .masthead.wrap-chrome{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;row-gap:0;padding-block:6px}
:root .masthead.wrap-chrome .wordmark{grid-column:1;grid-row:1;justify-self:start}
:root .masthead.wrap-chrome .type-button{grid-column:2;grid-row:1}
:root .masthead.wrap-chrome nav{grid-column:1/-1;grid-row:2;width:100%;margin:0;justify-content:space-between}
:root .reader-tools{top:var(--reader-header-height,0px);flex-wrap:wrap}
:root .reader-tools .tool-group{flex-wrap:wrap;min-width:0}
.select-control{display:block;position:relative;min-width:0}
.select-control select{background-image:none;appearance:none;-webkit-appearance:none;width:100%;min-height:44px;padding-right:2.5em}
.select-control>.ui-icon{position:absolute;right:.8em;top:50%;transform:translateY(-50%) rotate(90deg);pointer-events:none}
.shelf-source>a{display:inline-flex;align-items:center;min-height:44px}

:root body.focus .masthead{display:none}

:root .masthead.stack-title{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto}
:root .masthead.stack-title .type-button{grid-column:1;grid-row:2;justify-self:end}
:root .masthead.stack-title nav{grid-row:3}
