/* The restored flow stays intact. Its existing scenery carries the period. */
body:has(.archive-case){background-color:#192125;background-image:radial-gradient(ellipse at 80% 9%,#ae8c5420,transparent 48%),linear-gradient(180deg,#242e32 0,#192125 700px);color:#d5d0c5}
body:has(.archive-case) .top,body:has(.archive-case) footer{border-color:#ad916e42}
body:has(.archive-case) .top nav a{color:#c6ccd0}
body:has(.archive-case) .top nav a.active{color:#e6c18a;border-color:#d4b075}
.archive-case{--gold:#cbb18a;--muted:#b8bcb8;--archive-ink:#d4ccbf;--archive-surface:#303638;--archive-serif:"Songti SC","STSong","Noto Serif CJK SC","Source Han Serif SC","SimSun",Georgia,serif;max-width:1080px;color:#d5d0c5;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Hiragino Sans GB",sans-serif;font-size:1.0625rem;line-height:1.85}
.archive-case p{font-size:1.0625rem;line-height:1.9}
.archive-case button,.archive-case a{font-family:inherit}
.archive-case ::selection{background:#ddba81;color:#19262d}
.archive-case .archive-topline{margin-bottom:14px}
.archive-case .archive-progress{margin-bottom:25px;border-bottom-color:#bfa57748}
.archive-case .archive-progress button{color:#cbd0d2;letter-spacing:.025em;font-size:.9375rem;font-weight:500}
.archive-case .archive-progress button[aria-current]{color:#edc58b}
.archive-case .archive-scene-title{max-width:100%;margin-bottom:25px}
.archive-case .archive-scene-title .eyebrow{color:#d9be95;letter-spacing:.09em;margin-bottom:10px;font-size:.875rem}
.archive-case .archive-scene-title h1{font-family:var(--archive-serif);font-weight:600;color:#ded6c7;letter-spacing:.025em;line-height:1.45;margin-bottom:14px;font-size:clamp(2rem,4.1vw,3.1rem);text-shadow:0 2px 18px #0003}
.archive-case .archive-scene-title h1 em{color:#d1b488}
.archive-case .archive-scene-title p{color:#c3c7c4;max-width:740px;font-size:1.0625rem;line-height:1.9}
.archive-case .archive-investigation{grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:22px}
.archive-case .archive-plan{min-height:445px;padding:22px;border-color:#c0a07280;gap:17px;background:linear-gradient(90deg,#46505166,#38424770),url('assets/street.webp') 17% center/cover;box-shadow:inset 0 0 65px #222d3133,0 10px 35px #0002}
.archive-case .archive-plan-top{color:#d5bc94;align-items:baseline}
.archive-case .archive-plan-top small{font-size:.875rem;color:#e3ddd1}
.archive-case .archive-plan-top{background:#2c373bec;margin:-5px -5px 0;padding:7px 10px;width:calc(100% + 10px)}
.archive-case .archive-floor{background:#2c363b;border-color:#ccac78bd;box-shadow:0 6px 20px #0004;min-width:60%;padding:12px 20px;color:#d9d3c6}
.archive-case .archive-floor span{color:#d5b88d;font-size:.9375rem}
.archive-case .archive-floor strong{font-size:1.0625rem;font-weight:500}
.archive-case .archive-route-line{border-color:#d0b27b94;border-left-width:1px}
.archive-case .archive-station{background:#3d4546;color:#ddd3c2;border-color:#91846f;box-shadow:0 3px 12px #0005;padding:11px 17px;font-size:1rem;font-weight:600;line-height:1.6}
.archive-case .archive-station[aria-pressed=true]{background:#6b4d39;color:#e6d5b8;border-color:#bd9b6d;box-shadow:0 0 0 2px #b38d5930,0 5px 18px #0003}
.archive-case .archive-station:hover{border-color:#c7ac81;transform:translateY(-1px)}
.archive-case .archive-door-label{color:#d2c9b9;background:#2c363b;max-width:100%;margin-top:5px;font-size:.9375rem}
.archive-case .archive-ground-button{color:#d9bd93;background:#2c363b;text-decoration:none;border:1px solid #cfb88ea6;padding:9px 18px;font-size:1rem;font-weight:500}
.archive-case .archive-ground p{background:var(--archive-surface);color:var(--archive-ink);border-color:#ab9877;text-align:left;font-size:1.0625rem;line-height:1.9;padding:14px;margin-top:8px}
.archive-case .archive-testimony{position:relative;padding:25px 25px 22px;background:linear-gradient(135deg,#353d3f,var(--archive-surface));color:var(--archive-ink);border:1px solid #88796188;box-shadow:0 10px 35px #0003;align-self:stretch}
.archive-case .archive-testimony>.archive-label{color:#beb39f;border-bottom:1px solid #a68d6366;padding-bottom:13px;font-size:.9375rem;letter-spacing:.02em}
.archive-case .archive-witness-controls{justify-content:flex-end}
.archive-case .archive-testimony-inner{border-left:0;padding-left:0;margin:19px 0 23px}
.archive-case .archive-testimony-inner>small{color:#ddd3c2;font-size:1.0625rem;font-weight:600}
.archive-case .archive-assignment{color:#bcb9af;font-size:1rem;line-height:1.85;margin-top:10px}
.archive-case .archive-testimony blockquote{font-family:var(--archive-serif);font-size:1.375rem;font-weight:600;line-height:1.95;color:#d5cdbf;letter-spacing:.015em;margin:17px 0 22px}
.archive-case .archive-testimony .archive-seen{color:#b9b19f;font-size:.875rem}
.archive-case .archive-testimony .quiet{color:#d1b891;border-color:#8f7e628c;min-height:44px;font-size:.9375rem}
.archive-case .archive-testimony .quiet:hover{color:#e0c8a4;background:#424843}
.archive-case .archive-testimony .archive-question{color:#d0bda0;font-size:1.0625rem;font-weight:500;border-top:1px solid #a8957377;padding-top:16px}
.archive-case .archive-testimony .archive-caption{color:#b9b19f;font-size:.9375rem;margin-top:8px}
.archive-case .archive-testimony .archive-note{background:#38413f;color:#d4ccbf;border-color:#97633d;padding:13px;margin-top:16px}
.archive-case .archive-testimony .archive-note p,.archive-case .archive-testimony .archive-note strong{color:#d0c8b9}
.archive-case .archive-actions{margin-top:23px}
.archive-case .primary{background:#b39c77;border:1px solid #c5ad88;border-radius:2px;color:#222928;box-shadow:0 3px 15px #0002}
.archive-case .primary:hover{background:#c3ac85}
.archive-case .quiet{border-radius:2px;color:#ddd3bf;border-color:#a88e6880;font-size:1rem}
.archive-case .archive-letter-desk{padding:28px;background:#293335;border:1px solid #bca07180;box-shadow:0 10px 30px #0002}
.archive-case .archive-letter-timeline{gap:22px}
.archive-case .archive-letter-timeline article{position:relative;padding:23px 24px;background:var(--archive-surface);border:1px solid #88796188;box-shadow:0 8px 18px #0003;min-width:0}
.archive-case .archive-letter-timeline article>span{display:block;color:#c9b391;border-bottom:1px solid #b59d7680;padding-bottom:13px;font-family:var(--archive-serif);font-size:1.0625rem;font-weight:600;letter-spacing:.05em}
.archive-case .archive-letter-timeline p{color:var(--archive-ink);font-family:inherit;font-size:1.125rem;font-weight:400;line-height:1.95;margin-top:17px}
.archive-case .archive-letter-toggle{border-color:#b99a68;color:#e9d2a6;background:#b89b641a}
.archive-case .archive-evidence-strip{color:#c6c9c3}
.archive-case .archive-evidence-strip small,.archive-case .archive-caption{color:#b8bcb8;font-size:.9375rem}
.archive-case .archive-lens{background:#283438;border-color:#b2976599;padding:4px}
.archive-case .archive-lens button{font-size:1rem;color:#d8d7d0}
.archive-case .archive-lens button[aria-pressed=true]{background:#a58d69;border-color:#bba17b;color:#202929}
.archive-case .archive-replay-notes{padding:20px 4px 20px 12px}
.archive-case .archive-current-fact{color:#d6d0c3;font-size:1.125rem;line-height:1.9}
.archive-case .archive-note{background:#303b3e;border-color:#c1a375}
.archive-case .archive-note p{color:#c8cbc5;font-size:1.0625rem}
.archive-case .archive-passage{background:#2c363b;color:#d6cdbd;border-color:#c3af8b;max-width:31%}
.archive-case .archive-passage.person-visible{background:#9d8059;color:#161f22;border-color:#c2a57b;box-shadow:0 0 25px #bf97531a}
.archive-case .archive-scrubber{border-color:#b59d6a66}
.archive-case .archive-scrubber button{background:#2b373b;border-right-color:#b59d6a66;color:#ded7c8;font-size:1rem}
.archive-case .archive-scrubber button[aria-pressed=true]{background:#544b3d;color:#e0cfb2;box-shadow:inset 0 -2px #d4b57d}
.archive-case .archive-meaning{background:#2b373b;border:1px solid #bda17077;padding:23px 25px;box-shadow:0 8px 24px #0002}
.archive-case .archive-big-quote{font-family:var(--archive-serif);font-size:1.55rem;font-weight:600;line-height:1.8;color:#d9d0bc;margin:12px 0}
.archive-case .archive-big-quote em{color:#d4b58a}
.archive-case .archive-meaning>p:last-child{color:#c3c7c4}
.archive-case .archive-source-note{font-size:.9375rem;color:#bac3c7;margin-top:25px;padding-top:12px}
.archive-case .archive-source-note p{color:#b8bcb8;font-size:.9375rem}
.archive-case .archive-label{color:#dfc496;font-size:.9375rem}
.archive-case .archive-pre-reveal>p{color:#d0d1c7}
.archive-case .archive-letter-question p{color:#d2d8d9}
.archive-case .archive-letter-question span{color:#b8bcb8}
.archive-case .archive-testimony button:focus-visible{outline-color:#d6b684}
.archive-opening{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);border:1px solid #88796188;background:#2c3639;overflow:hidden}
.archive-opening-art{display:block;width:100%;height:100%;min-height:390px;object-fit:cover;object-position:24% center}
.archive-opening-copy{padding:32px 34px;align-self:center}
.archive-opening-copy .archive-scene-title h1{font-size:clamp(1.8rem,3.2vw,2.6rem)}
.archive-opening-copy .archive-scene-title p+p{margin-top:14px}
.archive-opening-copy .primary{min-height:48px;padding:12px 20px;font-size:1rem}
.archive-materials{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;scroll-margin-top:18px}
.archive-materials button{min-height:44px;padding:8px 20px;border:1px solid #9a8a6c66;border-radius:24px;background:transparent;color:#c3c7c4;font-size:.9375rem}
.archive-materials button[aria-pressed=true]{border-color:#b49b71;background:#76634140;color:#dfcba3}
.archive-reveal-entry{margin-top:32px;padding-top:22px;border-top:1px solid #a68d6344}
.archive-reveal-entry .quiet{min-height:46px;padding:10px 17px;border-color:#b09a6f;color:#dbc59c}
@media(max-width:760px){
 .archive-opening{grid-template-columns:1fr}
 .archive-opening-art{height:180px;min-height:0;object-position:center 38%}
 .archive-opening-copy{padding:22px}
 .archive-opening-copy .archive-scene-title h1{font-size:1.8rem}
 .archive-opening-copy .archive-scene-title p{font-size:1rem}
 .archive-case .archive-investigation{grid-template-columns:minmax(0,1fr);gap:16px}
 .archive-case .archive-progress{margin-bottom:20px}
 .archive-case .archive-scene-title h1{font-size:2rem;line-height:1.45}
 .archive-case .archive-plan{min-height:414px;padding:17px;gap:16px;background-position:18% center}
 .archive-case .archive-plan-top{gap:7px}
 .archive-case .archive-plan-top small{font-size:.875rem}
 .archive-case .archive-floor{min-width:64%}
 .archive-case .archive-station{padding:11px 13px;font-size:.9375rem}
 .archive-case .archive-testimony{padding:21px}
 .archive-case .archive-testimony blockquote{font-size:1.25rem;line-height:1.95}
 .archive-case .archive-letter-desk{padding:19px 15px}
 .archive-case .archive-letter-timeline{gap:17px}
 .archive-case .archive-letter-timeline article{padding:20px}
 .archive-case .archive-letter-timeline p{font-size:1.0625rem}
 .archive-case .archive-replay-notes{padding:10px 0}
 .archive-case .is-replay{min-height:400px}
 .archive-case .is-replay .archive-floor{min-width:0}
 .archive-case .archive-big-quote{font-size:1.375rem}
 .archive-case .archive-meaning{padding:20px}
 .archive-case .archive-lens button{padding:10px 6px}
}
@media(max-width:360px){.archive-case .archive-plan{padding:13px}.archive-case .archive-station{padding:10px 8px}.archive-case .archive-testimony{padding:18px}.archive-case .archive-scene-title h1{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.archive-case .archive-station:hover{transform:none}}
