.story-shell{width:min(100%,810px);margin:0 auto}.story-shell>.breadcrumb{margin-bottom:18px}
.story-sheet,.verdict-file,.machine{border:1px solid #aba896;border-radius:3px;box-shadow:3px 4px 0 #ded8c9;overflow:hidden;background:#fdfaf0}
.sheet-head,.sheet-foot,.clue-stats,.machine-rail{display:flex;justify-content:space-between;align-items:center;gap:16px}
.sheet-head{padding:16px clamp(19px,5vw,48px);background:#e9e2cc;border-bottom:1px solid #b8b19a;background-image:repeating-linear-gradient(135deg,transparent 0 7px,#b39b6b0c 7px 8px)}
.sheet-head .eyebrow{color:#585343;font-size:9px}.case-name{margin-top:4px;font:italic 26px/1.15 var(--serif);letter-spacing:-.035em}
.hound-tag{background:#f8f0d6;color:#664731;display:grid;place-items:center;border:1px solid #a78d6a;border-radius:50%;width:74px;height:46px;transform:rotate(-8deg)}
.hound{width:90%;height:100%}.sheet-body{padding:clamp(22px,4.2vw,46px) clamp(19px,5vw,48px) 28px}
.clue-meter{display:flex;gap:4px}.clue-meter i{width:18px;height:4px;background:#d7d1c1}.clue-meter .filled{background:var(--red)}
.scene-setting{font:clamp(17px,1.7vw,23px)/1.5 var(--serif);color:#504e42;margin:23px 0 13px;max-width:65ch}
.story-sheet .story-question{font:500 clamp(34px,4vw,53px)/1.04 var(--serif);letter-spacing:-.055em;max-width:24ch}
.story-sheet .answers{gap:10px;margin-top:24px}.story-sheet .answer{background:#f6f2e6;border-color:#c7bfaa}.story-sheet .answer:hover,.story-sheet .answer:focus-visible{background:#f4e5d6;border-color:var(--red)}
.sheet-foot{border-top:1px dashed #bdb79f;padding:12px clamp(19px,5vw,48px);font:10px var(--mono);color:#666153;flex-wrap:wrap}.sheet-foot button{min-height:29px}
.machine,.verdict-file{--accent:#edaf83;background:#22271f;color:#fcf7e5}.verdict-file.spy{--accent:#ffab88}.verdict-file.civilian{--accent:#b3dfab}
.machine-rail{text-transform:uppercase;font:650 10px/1.4 var(--mono);letter-spacing:.09em;border-bottom:1px solid #5a6050;padding:17px clamp(16px,4vw,34px);color:#e1e1ce}
.machine{text-align:center;padding-bottom:25px}.scan-screen{margin:26px auto 15px;height:145px;width:min(78%,370px);border:1px solid #6e8164;border-radius:8px;overflow:hidden;position:relative;background:#323d2f;color:#c3e5ab}
.scanner-grid{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 19px,#a4be9222 19px 20px),repeating-linear-gradient(90deg,transparent 0 19px,#a4be9222 19px 20px)}.scan-dog{position:absolute;left:21%;top:12%;width:58%;height:81%}
.scan-beam{position:absolute;left:0;top:0;bottom:0;width:21%;background:linear-gradient(90deg,transparent,#c3e79048);border-right:2px solid #c5dbaf;animation:sweep 1.3s ease-in-out both}
.paper-slip{position:absolute;left:31%;bottom:-2px;width:38%;padding:12px 5px 8px;background:#f7ecce;color:#47382b;box-shadow:1px 2px 5px #2225;transform-origin:bottom;animation:feed .5s 1.15s both cubic-bezier(.2,.7,.3,1)}
.paper-slip span,.paper-slip b{display:block}.paper-slip span{font:8px var(--mono);letter-spacing:.07em}.paper-slip b{font:bold 24px var(--serif);margin-top:5px}
.console-copy{padding:0 12px}.console-copy .eyebrow{color:#c7d8b9}.console-copy h1{font:500 clamp(33px,5vw,60px)/1.1 var(--serif);letter-spacing:-.055em;margin:10px auto}.console-copy>p:last-child,.verdict-sub{color:#e3e0ce;font:16px/1.5 var(--serif)}
.skip-reveal{margin-top:18px;background:none;border:0;text-decoration:underline;text-underline-offset:4px;color:#d5d7c6;font:12px var(--mono);min-height:37px}
.verdict-hero{position:relative;text-align:center;padding:clamp(28px,4.5vw,52px) 14px 32px;background:radial-gradient(ellipse at 50% 0%,#404636,transparent 78%);overflow:hidden}
.seal-label{color:#dad9c4;font-size:9px}.verdict-stamp{position:relative;display:table;max-width:100%;margin:18px auto;color:var(--accent);border:5px double currentColor;padding:.06em .18em .04em;line-height:.98;font-size:clamp(43px,7.8vw,104px);font-family:var(--mono);font-weight:900;letter-spacing:-.07em;transform:rotate(-3deg)}
.ink-dust{pointer-events:none;position:absolute;inset:0;opacity:.28;background:radial-gradient(circle at 18% 47%,var(--accent) 0 2px,transparent 3px),radial-gradient(circle at 22% 33%,var(--accent) 0 1px,transparent 2px),radial-gradient(circle at 78% 55%,var(--accent) 0 2px,transparent 3px),radial-gradient(circle at 84% 37%,var(--accent) 0 1px,transparent 2px)}
.result-paper{border-top:5px double #c9c0a4;color:var(--ink);background:#fcf9ee;padding:clamp(22px,4vw,42px) clamp(19px,5vw,48px)}
.result-paper h2{font:500 clamp(37px,5vw,60px)/1 var(--serif);letter-spacing:-.055em;margin:7px 0}.profile-role{color:var(--muted);font:italic 19px var(--serif)}
.finding{padding:10px 14px;margin:21px 0 0;border-left:3px solid var(--red);background:#f1ebda}.finding .eyebrow{font-size:9px;color:#605440}.finding p{font:19px/1.4 var(--serif);margin:4px 0}
.file-trail{border-top:1px solid var(--rule);margin-top:20px;padding-top:12px}.file-trail summary{cursor:pointer}.file-trail summary{font:13px var(--mono)}.file-trail li{margin:8px 0}.file-trail p{font:14px/1.4 var(--sans);margin-top:4px}
.stamp-in .verdict-stamp{animation:stamp .48s cubic-bezier(.22,.85,.28,1) both}.stamp-in .ink-dust{animation:dust .6s ease-out both}.sheet-body{animation:scene-in .19s ease-out}
@keyframes sweep{0%{transform:translateX(-105%)}100%{transform:translateX(485%)}}
@keyframes feed{from{transform:translateY(105%) rotate(-3deg)}to{transform:translateY(0) rotate(-3deg)}}
@keyframes stamp{0%{opacity:0;transform:scale(1.5) rotate(-13deg)}52%{opacity:1;transform:scale(.93) rotate(-3deg)}76%{transform:scale(1.035) rotate(-3deg)}100%{transform:scale(1) rotate(-3deg)}}
@keyframes dust{0%,37%{opacity:0;transform:scale(.75)}55%{opacity:.8}100%{opacity:.28;transform:scale(1)}}
@keyframes scene-in{from{opacity:.25;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.sheet-head{padding:12px 18px}.hound-tag{width:60px;height:38px}.case-name{font-size:23px}.sheet-body{padding:19px 16px}.story-sheet .choice-text{font-size:17px}.story-sheet .answer{gap:9px;padding:10px}.scene-setting{margin-top:17px}.machine-rail{font-size:8px}.sheet-foot{font-size:9px;gap:6px}.verdict-stamp{border-width:4px}}
@media(prefers-reduced-motion:reduce){.scan-beam,.paper-slip,.stamp-in .verdict-stamp,.stamp-in .ink-dust,.sheet-body{animation:none}}
