:root{--cream:#e8d7b2;--gold:#b39866;--line:#8e744d;--ink:#282016;--serif:'Songti TC','Noto Serif TC','PMingLiU',serif;--sans:-apple-system,BlinkMacSystemFont,'PingFang TC',sans-serif}*{box-sizing:border-box}body{--accent:#762c23;--bright:#bd6550;--deep:#330d0c;margin:0;font:16px var(--sans);color:var(--cream);background:#0a1313 url('assets/arkham-night.png') center/cover fixed}body:before{content:'';position:fixed;inset:0;background:linear-gradient(#030c0ba8,#030c0b36);z-index:-1}body[data-phase=investigation]{--accent:#235347;--bright:#78a18a;--deep:#0d2923}body[data-phase=enemy]{--accent:#7d3524;--bright:#bb7951;--deep:#36180f}body[data-phase=upkeep]{--accent:#24516e;--bright:#82adc2;--deep:#101e32}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;min-height:44px;transition:filter .15s;border:0}button:hover{filter:brightness(1.14)}button:focus-visible,a:focus-visible{outline:3px solid #e3b865;outline-offset:4px}button:disabled{opacity:.45;cursor:default}.shell{max-width:1540px;margin:auto;padding:0 28px}.topbar{display:grid;grid-template-columns:230px minmax(0,1fr) 168px;gap:24px;align-items:center;min-height:120px}.brand{display:flex;align-items:center;justify-content:center}.brand-mark{display:none}.brand-title{font:44px/1.2 var(--serif);letter-spacing:5px;color:#f0ddb6;text-shadow:0 2px 6px #000}.brand .eyebrow{font:16px/1.3 Georgia,serif;letter-spacing:2px;text-align:center;margin-top:4px}.brand .eyebrow span{font-size:9px;letter-spacing:1.5px}.phase-nav,.mode-button,.sidebar,.dark-panel{background:linear-gradient(125deg,#15201be8,#060d0dea);border:1px solid var(--line);border-radius:5px;box-shadow:inset 0 0 0 3px #060f0e,inset 0 0 0 4px #a68a4a22,0 8px 24px #0005}.phase-list{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);padding:0;margin:0}.phase-list li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:86px;position:relative;color:#baa989;font-family:var(--serif);font-size:16px;border-right:1px solid #ad8a5530}.phase-list li:last-child{border:0}.phase-nav-symbol{border:1px solid #857758;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font:28px/1 Georgia,serif}.phase-list li.active{color:#f7e4c0;background:radial-gradient(ellipse at top,var(--accent),var(--deep));box-shadow:inset 0 0 0 1px var(--bright);border-radius:5px}.phase-list li.active .phase-nav-symbol{color:#e4b38d;border-color:#d3986c;box-shadow:0 0 20px #b2473155}.mode-button{color:#e2d1af;padding:12px;font-size:14px;min-height:60px;line-height:1.5}.display-round{display:block;color:#d5b575;margin-bottom:4px}.workspace{display:grid;grid-template-columns:190px minmax(0,1fr) 260px;gap:24px;align-items:start}.sidebar{padding:24px 18px;min-height:656px;display:flex;flex-direction:column;position:relative}.sidebar:before,.dark-panel:before{content:'';pointer-events:none;position:absolute;inset:7px;border:1px solid #a68a4a26;border-radius:14px 2px}.round-label{font-size:12px;letter-spacing:2px;color:#c8b58e}.round-label span{border:1px solid #8a7248;font-size:9px;padding:2px 4px;letter-spacing:0;margin-left:8px}.round-number{display:flex;align-items:baseline;gap:10px;margin:8px 0 16px}.round-number>span:first-child{font:64px/1.1 Georgia,serif;color:#e0c894}.round-number>span:last-child{font:9px Georgia,serif;letter-spacing:2px;color:#bfa780}.sidebar-line{height:1px;background:linear-gradient(90deg,transparent,#967c4f,transparent);margin:8px 0 24px}.eyebrow{font-size:10px;letter-spacing:2px}.sidebar>.eyebrow{color:#c2ae84}.step-list{padding:0;margin:20px 0;list-style:none}.step-list li{display:flex;align-items:center;gap:10px;font-size:13px;color:#bcae92;line-height:1.65;padding:14px 0;position:relative}.step-list li:not(:last-child):after{content:'';position:absolute;left:12px;top:42px;bottom:-14px;border-left:1px solid #89704477}.step-dot{flex-shrink:0;width:26px;height:26px;border:1px solid #817054;border-radius:50%;display:grid;place-items:center;font:12px Georgia,serif;background:#151d16}.step-list li.active{color:#fae3b5}.step-list li.active .step-dot{background:var(--accent);border-color:var(--bright);box-shadow:0 0 12px #ae543144}.step-list li.done{color:#baaa82}.step-list li.done .step-dot{color:#ddc797;background:#443b24}.sidebar-bottom{margin-top:auto;padding-top:24px}.sidebar-bottom p{font:13px/1.9 var(--serif);color:#b9a680}.quiet-button{background:linear-gradient(#27332b,#101b17);border:1px solid #998257;border-radius:4px;padding:8px 16px;color:#e6d4b0;font-size:14px}.sidebar .quiet-button{width:100%}
main{min-width:0;color:var(--ink);background:#e6d3ad url('assets/dossier-paper.png') center/100% 100%;position:relative;border:1px solid #907044;border-radius:5px;padding:24px 36px;box-shadow:0 12px 32px #0007;min-height:656px;display:flex;flex-direction:column}main:before{content:'';position:absolute;inset:10px;border:1px solid #92734577;pointer-events:none;border-radius:12px 2px}.sheet-top{display:flex;align-items:center;justify-content:space-between;color:#775f3d;border-bottom:1px solid #98744955;padding-bottom:16px}.slash{padding:0 8px;color:#9f8863}.step-count{font-size:11px;letter-spacing:1px}.paper-heading{padding:24px 0 20px;position:relative;min-height:164px}.phase-heading{display:flex;align-items:center;gap:16px}.phase-symbol{width:54px;height:54px;display:grid;place-items:center;border:1px solid #75492c;border-radius:50%;font:36px/1 Georgia,serif;color:#efd3a5;background:linear-gradient(var(--accent),var(--deep));box-shadow:inset 0 0 0 3px #efc58433,0 2px 5px #4c2b2444}.phase-heading .eyebrow{color:var(--accent);font-family:Georgia,serif;letter-spacing:2px}h1{font:600 44px/1.25 var(--serif);letter-spacing:3px;color:var(--accent);margin:6px 0 0}.phase-subtitle{font:14px/1.8 var(--serif);color:#4f402c;max-width:70%;margin:16px 0 0}.rule-line{display:flex;align-items:center;gap:12px;color:#947347}.rule-line span{height:1px;background:#9e805755;flex:1}.rule-line i{font-style:normal;font-size:16px}.instruction{padding:28px 0 16px}.instruction-label{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:2px;color:#7b6240}.instruction-label span{font:16px Georgia,serif;display:grid;place-items:center;width:32px;height:32px;border:1px solid #bc9770;border-radius:50%;background:var(--accent);color:#fff0d5;box-shadow:0 0 0 3px #d8c399,0 0 0 4px #a6804955}.instruction h2{font:600 32px/1.5 var(--serif);color:var(--accent);margin:20px 0 16px;letter-spacing:1px}.instruction p{font-size:18px;line-height:1.85;margin:0;max-width:590px;color:#3e3425}.rules-button{background:transparent;align-self:flex-start;color:#695035;font-size:13px;display:flex;align-items:center;gap:24px;padding:0;min-height:44px;border-bottom:1px solid #a88b61}.next-preview{margin-top:auto;display:flex;align-items:center;gap:16px;padding:24px 0 20px;border-bottom:1px solid #a7875555;color:#5b4630;font-size:13px}.next-preview .eyebrow{color:#826b4b;flex-shrink:0}.next-preview>span:last-child{margin-left:auto}.actions{display:flex;gap:12px;margin-top:20px}.previous-button{font:16px var(--serif);background:linear-gradient(#e7d6b8,#c6ad83);color:#493720;border:1px solid #9c7d53;padding:12px 20px;min-height:60px;border-radius:5px}.primary-button{font:20px var(--serif);letter-spacing:1px;color:#f5e4c9;background:linear-gradient(var(--accent),var(--deep));box-shadow:inset 0 0 0 3px #220b0b55,inset 0 0 0 4px #d2a46866,0 3px 7px #4d2e2666;border:1px solid #70472d;padding:16px 24px;min-height:60px;border-radius:5px;display:flex;align-items:center;justify-content:space-between;gap:20px}.actions .primary-button{flex:1}.sheet-bottom{display:flex;justify-content:space-between;margin-top:20px;font-size:9px;color:#7a6343;gap:12px;letter-spacing:.5px}.sheet-bottom>span:last-child{display:none}
.notes-column{display:flex;flex-direction:column;gap:20px}.dark-panel{position:relative;padding:20px;color:#dccbad}.dark-panel h2{font:18px var(--serif);letter-spacing:1px;margin:0 0 20px;border-bottom:1px solid #a588504d;padding-bottom:14px;display:flex;gap:12px;align-items:center}.dark-panel h2>span{display:grid;place-items:center;width:24px;height:24px;font:18px Georgia,serif;color:#dac296}.note-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.note-mark{flex-shrink:0;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font:20px Georgia,serif;background:var(--accent);color:#f8e4be}.note-mark.gold{background:#a7813e}.note-item h3{font:16px/1.5 var(--serif);margin:0 0 8px;color:#d9a174}.note-item p,.dark-panel>p{font-size:13px;line-height:1.85;color:#c8baa1;margin:0}.deck-status{padding-top:14px;border-top:1px solid #a5885033;color:#a69372;font-size:10px;line-height:1.8}.rule-note a{display:flex;justify-content:space-between;color:#e0c396;font-size:12px;padding-top:16px;margin-top:16px;border-top:1px solid #a5885033;text-decoration:none;min-height:44px}.table-note{padding:0 8px;text-align:center;color:#c5b28d}.ornament{font-size:24px;color:#a99260}.table-note p{font:15px/1.9 var(--serif);margin:12px 0}.table-note>span{font:8px Georgia,serif;letter-spacing:1.8px;color:#a28e66}footer{display:flex;justify-content:space-between;border-top:1px solid #a1834b55;margin-top:24px;padding:16px 0;font-size:9px;letter-spacing:1px;color:#b4a17d}
dialog{background:#e6d4b0;color:var(--ink);border:1px solid #987541;padding:28px;border-radius:5px;max-width:520px;width:calc(100% - 32px);box-shadow:0 20px 60px #0008}dialog::backdrop{background:#020707bf;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;color:#785f3c}.close-dialog{background:transparent;color:#4a3521;width:44px;font-size:28px}dialog h2{font:28px/1.5 var(--serif);color:var(--accent)}dialog p{font-size:16px;line-height:1.9}.fine-print{border-top:1px solid #99764466;padding-top:16px;font-size:12px;color:#766043}dialog a{color:#594124;font-size:14px;min-height:44px;display:inline-flex;align-items:center}.dialog-actions{display:flex;gap:12px;margin-top:24px}
.display .sidebar,.display .notes-column,.display .sheet-top,.display .rules-button,.display .actions,.display .sheet-bottom{display:none}.display .workspace{grid-template-columns:1fr}.display main{min-height:656px;padding:40px 64px;text-align:center}.display .paper-heading{padding-top:24px}.display .phase-heading{justify-content:center}.display .phase-subtitle{max-width:none}.display .instruction{padding:40px 0}.display .instruction-label{justify-content:center}.display .instruction h2{font-size:48px}.display .instruction p{font-size:24px;max-width:780px;margin:auto}.display .next-preview{margin-top:24px;justify-content:center;border:0}.display .next-preview>span:last-child{margin-left:0}
@media(min-width:1400px){main{min-height:740px;padding:32px 44px}.sidebar{min-height:740px}.paper-heading{padding:32px 0 24px;min-height:188px}.instruction{padding:36px 0 24px}.instruction h2{font-size:40px}.instruction p{font-size:20px}.topbar{min-height:132px}}
@media(max-width:1250px){.shell{padding:0 20px}.topbar{grid-template-columns:170px minmax(0,1fr) 140px;gap:16px;min-height:112px}.brand-title{font-size:34px}.brand .eyebrow{font-size:12px}.brand .eyebrow span{font-size:8px}.workspace{grid-template-columns:170px minmax(0,1fr) 230px;gap:16px}.dark-panel{padding:18px}.dark-panel h2{font-size:16px}.note-item{gap:8px}.note-item h3{font-size:14px}.note-item p,.dark-panel>p{font-size:12px}main{padding:24px 28px;min-height:656px}.sidebar{padding:24px 16px}.paper-heading{min-height:160px}.phase-symbol{width:44px;height:44px;font-size:28px}h1{font-size:36px}.instruction h2{font-size:28px}.instruction p{font-size:17px}.primary-button{font-size:18px}.previous-button{font-size:14px;padding:12px 16px}.sheet-bottom{font-size:9px}.phase-list li{font-size:14px}}
@media(max-width:1000px){.workspace{grid-template-columns:160px minmax(0,1fr)}.notes-column{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.table-note{display:none}.sidebar{min-height:656px}.topbar{grid-template-columns:150px minmax(0,1fr);gap:16px}.mode-button{grid-column:1/-1;justify-self:end;min-height:44px;font-size:12px;margin-bottom:16px;padding:8px 16px}.topbar{padding-top:20px}.phase-list li{min-height:72px;font-size:13px}.phase-nav-symbol{width:30px;height:30px;font-size:24px}.brand-title{font-size:30px}.display .topbar{grid-template-columns:150px minmax(0,1fr)}.display main{min-height:640px}}
@media(max-width:650px){.shell{padding:0 12px}.topbar{grid-template-columns:1fr 1fr;gap:12px;padding-top:20px}.brand{justify-content:flex-start}.brand-title{font-size:28px}.brand .eyebrow{font-size:10px}.brand .eyebrow span{font-size:7px}.phase-nav{grid-column:1/-1;grid-row:2}.mode-button{grid-column:2;grid-row:1;margin:0;justify-self:end;font-size:11px;min-height:44px;padding:8px 10px}.phase-list li{font-size:12px;min-height:68px;gap:6px}.workspace{display:block;margin-top:16px}.sidebar{min-height:0;padding:16px;margin-bottom:16px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:0}.round-label{grid-column:1}.round-number{grid-column:1;margin:8px 0 0}.round-number>span:first-child{font-size:36px}.sidebar-line,.sidebar>.eyebrow,.step-list,.sidebar-bottom p{display:none}.sidebar-bottom{grid-column:2;grid-row:1/3;padding:0}.sidebar .quiet-button{font-size:12px}main{padding:24px;min-height:660px}.paper-heading{min-height:152px;padding-top:24px}.phase-subtitle{max-width:80%;font-size:13px}.instruction h2{font-size:28px}.instruction p{font-size:16px}.instruction{padding-top:24px}.next-preview{padding:24px 0 16px;font-size:12px;gap:12px}.actions{gap:8px}.primary-button{font-size:16px;padding:16px;gap:8px}.previous-button{padding:12px;font-size:13px}.notes-column{display:flex;margin-top:20px}.dark-panel{padding:24px}.dark-panel h2{font-size:18px}.note-item h3{font-size:16px}.note-item p,.dark-panel>p{font-size:14px}.display main{padding:24px;min-height:620px}.display .instruction h2{font-size:36px}.display .instruction p{font-size:20px}.display .topbar{grid-template-columns:1fr 1fr}footer{font-size:9px;letter-spacing:0}footer>span:last-child{display:none}.dialog-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.sheet-top{border-bottom:0;padding:4px 0 12px}.sheet-top>.eyebrow{padding:5px 8px;background:#ead8b6bf;color:#654d2e;border-radius:2px;letter-spacing:1.5px}.step-count{background:#181712d9;border:1px solid #bd945a;color:#efdcba;border-radius:4px;padding:7px 10px;white-space:nowrap}.phase-subtitle{max-width:65%}.instruction{position:relative}.rules-button{position:relative}
@media(max-width:650px){.phase-heading{gap:10px}.phase-symbol{width:36px;height:36px;font-size:24px}h1{font-size:30px}.sheet-top>.eyebrow{font-size:9px;padding:4px;letter-spacing:.5px}.step-count{font-size:9px;padding:6px}.phase-subtitle{max-width:60%}.paper-heading{min-height:170px}.phase-heading .eyebrow{font-size:9px}.sidebar-bottom .quiet-button{min-height:44px}}
.display main{background-image:url('assets/paper-grain.svg');background-size:180px 180px;background-color:#e6d3ad;box-shadow:inset 0 0 40px #a57f4a33,0 12px 32px #0007}.display main:before{inset:16px;border:1px solid #92734577}.display .phase-subtitle{max-width:none}
@media(max-width:650px){main{background-size:100% 100%}.display main{background-size:180px 180px}}
/* Keep secondary navigation legible over the illustrated parchment. */
.previous-button{background:linear-gradient(#514735,#30291f);color:#f4e5c9;border:1px solid #7b603b;box-shadow:inset 0 0 0 2px #b69a6333,0 2px 4px #3f2c2440;text-shadow:0 1px 1px #0008}.previous-button:disabled{opacity:1;background:#c5b392;color:#695b46;border-color:#a18b65;box-shadow:none;text-shadow:none}
/* Preserve artwork proportions; crop overflow instead of stretching. */
main{background-image:url('assets/dossier-paper.png'),url('assets/paper-grain.svg');background-size:cover,180px 180px;background-position:center top,center;background-repeat:no-repeat,repeat;background-color:#e6d3ad;box-shadow:inset 0 0 30px #9b75442b,0 12px 32px #0007}
@media(max-width:650px){main{background-size:cover,180px 180px;background-position:35% top,center}.display main{background-size:180px 180px}}
.display main{background-image:url('assets/paper-grain.svg');background-size:180px 180px;background-repeat:repeat}
/* Reference-led composition: compact header, investigator rail, framed step card. */
.topbar{grid-template-columns:190px 76px minmax(0,1fr) 148px;gap:16px;min-height:108px}.header-round{font:18px var(--serif);color:#e5d2ab;text-align:center;white-space:nowrap}.header-round span{font-family:Georgia,serif}.brand-title{font-size:38px}.brand .eyebrow{font-size:13px}.phase-list li{min-height:74px;font-size:14px}.phase-nav-symbol{width:30px;height:30px;font-size:24px}.phase-list li.active{background:radial-gradient(ellipse at center,var(--accent),transparent 90%);box-shadow:inset 0 -2px var(--bright)}.mode-button{min-height:52px;font-size:12px}.workspace{grid-template-columns:220px minmax(0,1fr) 280px;gap:20px}.sidebar{min-height:680px;padding:12px;background:transparent;border:0;box-shadow:none}.sidebar:before{display:none}.investigator-heading{display:flex;align-items:center;justify-content:space-between;padding:12px 8px;border:1px solid #a18354;border-radius:3px;background:#111b19dd;font:18px var(--serif)}.investigator-heading>span{font:10px var(--sans);color:#bba57e}.investigator-list{display:grid;gap:12px;margin-top:16px}.investigator{display:flex;gap:10px;align-items:center;background:linear-gradient(130deg,#172624de,#080e10ea);border:1px solid #a18c65;border-radius:5px;padding:8px;min-height:94px;box-shadow:inset 0 0 0 3px #080e1044}.investigator:first-child{border-color:#9cb7b2}.investigator h3{font:16px/1.5 var(--serif);margin:0 0 8px;color:#eadbc0}.investigator p{font-size:11px;line-height:1.5;margin:0;color:#c4bba8;display:flex;align-items:center;gap:6px}.portrait{display:block;flex-shrink:0;width:54px;height:64px;border:1px solid #9b855e;border-radius:3px;background-image:url('assets/design-reference.png');background-size:1659px 1106px;background-repeat:no-repeat}.portrait.roland{background-position:-19px -149px}.portrait.daisy{background-position:-19px -227px}.portrait.skids{background-position:-19px -307px}.portrait.wendy{background-position:-19px -389px}.class-dot{width:13px;height:13px;border-radius:3px;background:#426c8c}.class-dot.seeker{background:#a68845}.class-dot.rogue{background:#5c7b65}.class-dot.survivor{background:#9c463a}.sidebar-bottom{padding:24px 4px 0}.sidebar-bottom p{font-size:12px}
main{display:block;padding:16px;border:1px solid #b39765;background:linear-gradient(135deg,#1d1615e8,var(--deep)),url('assets/arkham-night.png') center/cover;min-height:680px;border-radius:7px;box-shadow:inset 0 0 0 4px #090e0d66,0 8px 28px #0009}main:before{inset:6px;border-color:#bb935348;border-radius:15px 2px}.sheet-top{display:none}.paper-heading{min-height:144px;padding:20px;background:#d5bc93 url('assets/dossier-paper.png') center top/cover;margin:-8px -8px 16px;border:1px solid #927142;border-radius:4px 4px 2px 2px}.phase-heading{gap:16px}.phase-symbol{width:54px;height:54px;font-size:34px}h1{font-size:34px;letter-spacing:2px;color:#281e13}.phase-heading .eyebrow{font-size:10px;color:#72583b}.phase-subtitle{font-size:14px;color:#40321f;margin:12px 0 0;max-width:65%}.instruction{padding:20px;background:#e0cba5 url('assets/paper-grain.svg') center/180px;border:1px solid #c09b63;border-radius:5px;box-shadow:inset 0 0 0 4px #8f6b3933,inset 0 0 32px #855c3030}.instruction-label{font-size:11px;color:#755b37;letter-spacing:1px}.instruction-label span{width:24px;height:24px;font-size:12px;box-shadow:none}.instruction-body{display:flex;align-items:center;gap:16px;margin-top:8px}.step-illustration{flex-shrink:0;width:80px;height:96px;background-image:url('assets/design-reference.png');background-size:1843px 1229px;background-position:-221px -232px;border:1px solid #92754c;border-radius:5px;box-shadow:0 2px 4px #593e2c66}.instruction h2{font-size:26px;margin:0 0 12px;line-height:1.4;color:#282015}.instruction p{font:16px/1.8 var(--serif);color:#352a1b}.step-progress{display:flex;align-items:center;justify-content:center;margin:20px 0 0}.step-progress span{width:12px;height:12px;border-radius:50%;background:#9f917c;border:1px solid #82755e;position:relative;margin-right:24px}.step-progress span:not(:last-child):after{content:'';position:absolute;left:11px;top:4px;width:25px;border-top:2px solid #8a7d64}.step-progress span.active{background:var(--accent);border-color:#6a3c24;box-shadow:0 0 0 2px #dabd92}.step-progress span.done{background:#70563b}.step-progress span:last-child{margin:0}.rules-button{color:#d7bf98;font-size:11px;border-color:#987446;min-height:36px;display:inline-flex;margin-top:6px}.next-preview{color:#bca584;padding:8px 0 12px;margin:0;border-bottom:0;font-size:11px}.next-preview .eyebrow{color:#bda483}.actions{margin-top:0;gap:12px}.primary-button{font-size:20px;min-height:56px}.previous-button{font-size:16px;min-height:56px;min-width:112px}.steps-panel{margin-top:16px;padding:16px;background:#090e0da6;border:1px solid #9a76483f;border-radius:4px;color:#e3cfab}.steps-panel h2{display:flex;justify-content:space-between;margin:0 0 8px;font:14px var(--serif);color:#dfb782}.step-list{margin:0}.step-list li{padding:6px 8px;font:14px/1.5 var(--serif);gap:12px}.step-list li:not(:last-child):after{display:none}.step-list li.active{background:linear-gradient(90deg,var(--accent),transparent);border-radius:20px}.step-dot{width:22px;height:22px;font-size:12px;background:#b19670;color:#282015;border:0}.step-list li.active .step-dot{background:var(--bright);color:#fff1d0}.sheet-bottom{color:#ad9673;font-size:9px;margin-top:14px}.dark-panel{background:linear-gradient(125deg,#151414e8,var(--deep));padding:20px}.notes-column{gap:16px}.dark-panel h2{font-size:20px}.note-item h3{font-size:17px;color:#d69a6b}.note-item p,.dark-panel>p{font-size:14px}.table-note{background:#080e0a66;border:1px solid #85683c55;border-radius:4px;padding:16px}.table-note p{font-size:16px}.table-note .ornament{font-size:18px}
.display .steps-panel,.display .instruction-label,.display .step-illustration,.display .step-progress{display:none}.display main{display:flex;min-height:680px;background:#e1cba4 url('assets/paper-grain.svg') center/180px;color:#302518}.display .paper-heading{background:transparent;border:0;min-height:0;margin:0;padding:16px 0}.display .instruction{background:transparent;box-shadow:none;border:0}.display .instruction-body{display:block}.display h1{color:var(--accent)}.display .next-preview{color:#645032}.display .next-preview .eyebrow{color:#826844}
@media(max-width:1250px){.topbar{grid-template-columns:160px 64px minmax(0,1fr) 128px;gap:12px;min-height:100px}.workspace{grid-template-columns:190px minmax(0,1fr) 248px;gap:16px}.brand-title{font-size:30px}.brand .eyebrow{font-size:10px}.brand .eyebrow span{font-size:7px}.header-round{font-size:16px}.phase-list li{font-size:12px;min-height:70px}.investigator h3{font-size:14px}.investigator p{font-size:10px}.investigator{padding:6px;gap:8px}.dark-panel{padding:18px}.dark-panel h2{font-size:18px}.note-item h3{font-size:15px}.note-item p,.dark-panel>p{font-size:12px}.instruction h2{font-size:24px}.instruction p{font-size:15px}main{padding:16px;min-height:668px}.sidebar{min-height:668px}.paper-heading{min-height:134px;padding:18px}h1{font-size:30px}.phase-symbol{width:44px;height:44px;font-size:28px}.step-illustration{width:64px;height:82px;background-size:1536px 1024px;background-position:-184px -195px}.primary-button{font-size:18px}.previous-button{min-width:92px;font-size:14px}.mode-button{font-size:11px}}
@media(max-width:1000px){.topbar{grid-template-columns:140px 60px minmax(0,1fr)}.mode-button{grid-column:1/-1;justify-self:end;margin:0 0 12px}.workspace{grid-template-columns:176px minmax(0,1fr)}.notes-column{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.table-note{display:none}.brand-title{font-size:28px}.investigator{gap:6px;padding:6px}.investigator h3{font-size:13px}.investigator p{font-size:9px}.sidebar{padding:8px}.display .topbar{grid-template-columns:140px 60px minmax(0,1fr)}}
@media(max-width:650px){.topbar{grid-template-columns:1fr auto auto;gap:8px;padding-top:20px}.header-round{font-size:13px}.mode-button{grid-column:3;grid-row:1;margin:0;padding:8px;font-size:10px}.phase-nav{grid-column:1/-1;grid-row:2}.brand-title{font-size:26px}.workspace{display:block}.sidebar{display:block;min-height:0;padding:0;margin-bottom:16px}.investigator-list{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.investigator-heading{font-size:14px;padding:10px}.investigator{min-height:80px}.portrait{width:44px;height:58px}.investigator h3{font-size:12px}.investigator p{font-size:9px}.sidebar-bottom{display:flex;justify-content:flex-end;padding:8px 0 0}.sidebar .quiet-button{width:auto}.sidebar-bottom p{display:none}main{padding:16px;min-height:0}.paper-heading{min-height:138px;padding:18px}.phase-subtitle{font-size:12px}.instruction{padding:16px}.instruction-body{gap:12px}.instruction h2{font-size:23px}.instruction p{font-size:15px}.step-illustration{display:none}.step-list{display:block}.steps-panel{padding:12px}.step-list li{font-size:13px}.next-preview{font-size:10px}.actions{gap:8px}.previous-button{font-size:13px;min-width:80px;padding:10px}.primary-button{font-size:16px;padding:12px}.notes-column{display:flex}.dark-panel h2{font-size:18px}.note-item h3{font-size:16px}.note-item p,.dark-panel>p{font-size:14px}.display .topbar{grid-template-columns:1fr auto auto}.display main{min-height:600px}}
.phase-symbol{font-size:20px;position:relative;padding-top:12px}.phase-symbol:before{content:'步驟';position:absolute;top:8px;left:0;right:0;text-align:center;font:10px var(--serif)}
body[data-phase=enemy] .step-illustration{background-size:1536px 1024px;background-position:-192px -746px}
body[data-phase=investigation] .step-illustration,body[data-phase=upkeep] .step-illustration{display:none}
@media(max-width:1250px){.investigator h3{font-size:12px;white-space:nowrap}.phase-symbol{font-size:17px;padding-top:10px}.phase-symbol:before{font-size:8px;top:6px}}
@media(max-width:650px){.investigator h3{font-size:11px}.investigator p{font-size:8px}}
/* Usability polish: legible secondary copy and real disclosure controls. */
html{color-scheme:dark;scroll-padding-top:16px}.skip-link{position:fixed;top:12px;left:12px;z-index:20;transform:translateY(-200%);background:#f0dfbc;color:#292014;padding:12px 20px;border:2px solid #a7813e;border-radius:4px}.skip-link:focus{transform:translateY(0)}button,a,summary{touch-action:manipulation}main:focus{outline:none}dialog{color-scheme:light;overscroll-behavior:contain;max-height:calc(100dvh - 48px);overflow:auto}.steps-panel summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;font:15px var(--serif);color:#edce9c;min-height:44px;margin:-8px -4px 4px;padding:0 4px}.steps-panel summary::-webkit-details-marker{display:none}.steps-panel summary>span{transition:transform .15s}.steps-panel:not([open]) summary{margin-bottom:-8px}.steps-panel:not([open]) summary>span{transform:rotate(-90deg)}summary:focus-visible{outline:3px solid #e3b865;outline-offset:2px;border-radius:3px}.dark-panel>p,.note-item p{color:#ddcfb7}.rules-button{font-size:13px;min-height:44px;color:#edcf9f}.next-preview{font-size:13px;color:#e1c8a1}.next-preview .eyebrow{color:#d2b383}.deck-status{font-size:11px;color:#bea580}.sheet-bottom{font-size:11px;color:#cbb18a;line-height:1.6}.step-list li{color:#d9c5a4}.step-list li.active{color:#fff0ce}.instruction h2{text-wrap:balance}.instruction-body>div{min-width:0}.header-round,.phase-symbol,.step-dot{font-variant-numeric:tabular-nums}.primary-button,.previous-button{min-height:60px}.table-note{padding:12px}.table-note p{font-size:14px}.rule-note a:hover{text-decoration:underline;text-underline-offset:4px}.shell{padding-bottom:env(safe-area-inset-bottom)}
@media(min-width:1001px) and (max-width:1250px){.note-item p,.dark-panel>p{font-size:14px;line-height:1.75}.instruction h2{font-size:28px}.instruction p{font:16px/1.8 var(--sans)}.investigator h3{font-size:13px;white-space:normal;line-height:1.4}.dark-panel{padding:16px}.note-item{margin-bottom:16px}.dark-panel h2{margin-bottom:16px}.paper-heading{min-height:124px}.instruction{padding:16px}.step-progress{margin-top:16px}.steps-panel{padding:12px}.step-list li{padding:5px 8px}.sidebar,main{min-height:652px}.table-note{display:none}}
@media(max-width:650px){.investigator-list{display:flex;overflow-x:auto;gap:8px;padding-bottom:8px;scroll-snap-type:x proximity}.investigator{flex:0 0 174px;scroll-snap-align:start;min-height:80px}.investigator h3{font-size:13px;white-space:normal}.investigator p{font-size:10px}.sidebar-bottom{padding-top:0}.sidebar{margin-bottom:12px}.instruction h2{font-size:26px}.next-preview{font-size:12px}.sheet-bottom{font-size:10px}.phase-nav-symbol{border:0}.steps-panel summary{font-size:15px}.rules-button{font-size:13px}}
@media(min-width:1001px) and (max-width:1250px){.investigator h3{font-size:12px;white-space:nowrap}}
/* New-game card setup */
[hidden]{display:none!important}#new-dialog{max-width:1000px;width:calc(100% - 40px);padding:28px 32px;max-height:calc(100dvh - 40px);color-scheme:light}#new-dialog>h2{margin:4px 0 8px;font-size:30px}.setup-intro{margin:0 0 20px!important;font-size:14px!important;color:#685133}.setup-intro span{font-size:10px;margin-left:12px;letter-spacing:2px}.setup-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px}.lookup-section,.draft-section{min-width:0}.lookup-section label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.lookup-controls{display:flex;gap:8px}.lookup-controls input{width:0;flex:1;min-width:0;border:1px solid #95744a;border-radius:4px;background:#fff4d8;color:#302519;font:16px var(--sans);padding:12px;min-height:48px}.lookup-controls input:focus-visible{outline:2px solid #7a3d2e;outline-offset:2px}.lookup-controls input[aria-invalid=true]{border-color:#a82b20}.lookup-controls .primary-button{min-height:48px;font:15px var(--sans);padding:12px 16px;white-space:nowrap;gap:0}.input-help{font:12px/1.7 var(--sans)!important;color:#6d583a;margin:8px 0 12px}.lookup-status{font:13px/1.65 var(--sans)!important;margin:12px 0;min-height:22px;color:#5d4930}.lookup-status[data-kind=error],#setup-error{color:#922e22}.lookup-status[data-kind=success]{color:#315b3d}.card-preview{padding:16px;background:#f0dfbb;border:1px solid #a88656;border-radius:5px}.preview-top{display:flex;gap:16px;align-items:flex-start}.preview-top>div{min-width:0}.preview-top img{width:110px;height:auto;aspect-ratio:130/182;object-fit:contain;border-radius:4px;flex-shrink:0}.card-code{font-size:10px;letter-spacing:.5px;color:#7b6241}.preview-top h3{font:24px/1.35 var(--serif);margin:8px 0;color:#332719;overflow-wrap:anywhere}.preview-top p{font:12px/1.8 var(--sans);margin:8px 0}.preview-top a{font-size:11px;line-height:1.5;min-height:44px}.api-language{font:11px/1.7 var(--sans)!important;color:#705a3d;border-top:1px solid #ab8d5b55;padding-top:12px}.card-text{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.85 var(--sans)!important;color:#382b1c;margin:12px 0}.card-preview details{border-top:1px solid #ab8d5b55;padding-top:8px}.card-preview summary{min-height:44px;cursor:pointer;font-size:12px;display:flex;align-items:center;color:#6c5030}.card-preview>.primary-button{width:100%;margin-top:12px;font-size:16px;min-height:48px;justify-content:center}.lookup-empty{padding:36px 16px;text-align:center;color:#765c38;border:1px dashed #a58c6166;border-radius:4px}.lookup-empty>span{font-size:40px}.lookup-empty h3{font:20px var(--serif);margin:12px 0}.lookup-empty p{font:13px/1.8 var(--sans)}.draft-section{padding:16px;background:#d5bf9955;border:1px solid #ab8b5c55;border-radius:4px}.draft-heading{display:flex;align-items:center;justify-content:space-between}.draft-heading h3{font:20px var(--serif);margin:0}.draft-heading>span{font-size:12px;color:#745b38}.draft-list{max-height:450px;overflow:auto}.draft-empty{font:13px/1.8 var(--sans);color:#826b4d;padding:20px 0}.draft-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #a58c6155}.draft-card>div:first-child{min-width:0}.draft-card strong{font:16px/1.5 var(--serif);display:block;color:#32271a;overflow-wrap:anywhere}.draft-card>div>span{display:block;font-size:11px;color:#765f40;margin-top:4px}.quantity-controls{display:flex;align-items:center;flex-shrink:0;gap:4px}.quantity-controls button{min-width:32px;min-height:44px;border:1px solid #a78a5d;border-radius:3px;background:#e9d6b2;color:#4a3720;font-size:14px}.quantity-controls>span{min-width:16px;text-align:center;font-size:12px}.quantity-controls .remove-card{border:0;background:transparent;font-size:11px;padding:4px;color:#853b2a}.setup-bottom{border-top:1px solid #a58c6166;margin-top:24px;padding-top:12px}.setup-bottom>p{font:12px/1.7 var(--sans);margin:8px 0}.setup-bottom .dialog-actions{justify-content:flex-end;margin-top:12px}.setup-bottom .primary-button{min-height:48px;font-size:18px}.setup-bottom .quiet-button{color:#574126;background:transparent}.selected-portrait{width:44px;height:62px;object-fit:cover;border:1px solid #a58b5e;border-radius:3px;flex-shrink:0}.investigator:has(.selected-portrait) h3{white-space:normal;overflow-wrap:anywhere;font-size:14px}.sidebar-bottom #session-cards{margin-bottom:8px;font-size:12px}.sidebar-bottom:has(#session-cards:not([hidden])){display:block}.sidebar-bottom:has(#session-cards:not([hidden])) button{width:100%}#session-dialog{max-width:680px}#session-list{max-height:60dvh;overflow:auto}.lookup-controls button:disabled{opacity:.65;cursor:wait}.card-preview .primary-button:disabled{opacity:.65;cursor:default}
@media(max-width:700px){#new-dialog{width:calc(100% - 24px);padding:20px;max-height:calc(100dvh - 24px)}.setup-grid{grid-template-columns:1fr;gap:20px}.draft-list{max-height:280px}.setup-bottom .dialog-actions{flex-wrap:wrap}.setup-bottom .dialog-actions>button{flex:1;justify-content:center;font-size:14px}.draft-card{flex-wrap:wrap}.quantity-controls{margin-left:auto}.preview-top img{width:90px}.preview-top h3{font-size:22px}.card-preview{padding:12px}.lookup-controls .primary-button{font-size:13px;padding:10px}.setup-intro span{display:block;margin:4px 0 0}}
.saved-card-source{font-size:11px!important;white-space:nowrap}#setup-error:empty{display:none}.setup-bottom .quiet-button{min-height:48px}.card-preview{color-scheme:light}#session-list .draft-card{flex-wrap:wrap}
/* Investigator preview mirrors the physical card's information hierarchy. */
#new-dialog{max-width:1140px}.setup-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr)}.investigator-preview{padding:12px}.investigator-card{border:1px solid #a17d48;border-radius:8px;overflow:hidden;background:#dec79e url('assets/paper-grain.svg') center/180px;box-shadow:inset 0 0 20px #8e693833;--icon-paper:#e6d3ad}.character-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 12px;border-bottom:3px solid #9e7c48;background:linear-gradient(#eee0c3,#d8bd8d)}.character-title{min-width:0}.character-title h3{font:26px/1.3 var(--serif);margin:0;color:#34291c;letter-spacing:1px}.character-title p{font:11px/1.5 var(--sans);margin:6px 0 0;color:#695337}.character-skills{display:flex;gap:4px;flex-shrink:0}.skill-badge{display:flex;align-items:center;justify-content:center;gap:4px}.character-skills .skill-badge{background:#f0e2c7;border:1px solid #b59664;border-radius:12px 12px 6px 6px;padding:8px 5px;min-width:43px;box-shadow:inset 0 0 5px #9e7c4840}.skill-value{font:28px/1 Georgia,serif;color:#34291c}.card-icon{display:inline-flex;align-items:center;justify-content:center;color:#51412d;vertical-align:-5px;flex-shrink:0}.card-icon svg{display:block;width:22px;height:22px}.icon-willpower{color:#41617d}.icon-intellect{color:#745b77}.icon-combat{color:#994b36}.icon-agility{color:#426f57}.icon-health{color:#b24a37}.icon-sanity{color:#526c95}.character-body{display:grid;grid-template-columns:36% minmax(0,1fr);gap:0;min-height:240px}.character-art{display:block;position:relative;overflow:hidden;isolation:isolate;flex-shrink:0;width:56px;height:76px;background:#453b2b;border:1px solid #a88a58;border-radius:4px}.character-art img{position:absolute;max-width:none;height:125%;width:auto;top:-25%;left:-2%;object-fit:initial}.portrait-fallback{position:absolute;inset:0;display:grid;place-items:center;color:#dfcba2;font:28px var(--serif);z-index:-1}.character-body>.character-art{width:100%;height:100%;min-height:240px;border:0;border-right:1px solid #a88a5880;border-radius:0}.character-body>.character-art img{height:125%;top:-25%;left:-8%;width:auto}.character-abilities{padding:16px 14px;background:#f1e6c9bb;display:flex;flex-direction:column;min-width:0}.character-traits{font:italic 13px/1.5 var(--serif)!important;text-align:center;margin:0 0 12px!important;color:#665137}.ability-text{font:14px/1.85 var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;color:#332a20}.ability-text .card-icon{margin:0 4px 0 0}.ability-text .card-icon svg{width:20px;height:20px}.character-vitals{display:flex;justify-content:center;gap:28px;margin-top:auto;padding-top:20px}.character-vitals .card-icon svg{width:32px;height:32px}.character-vitals .skill-value{font-size:34px}.character-card-footer{padding:8px 12px;border-top:1px solid #ad8b5755;font:10px var(--sans);letter-spacing:.5px;color:#755d3d;text-align:right}.investigator-preview .api-language{margin-top:12px}.draft-card>.character-art{width:52px;height:70px}.draft-card>.draft-card-info{flex:1;min-width:0}.draft-card strong{font-size:17px}.mini-card-image{width:42px;height:58px;object-fit:contain;flex-shrink:0}.draft-card .quantity-controls{flex-shrink:0}.draft-card .character-art~.quantity-controls{margin-left:auto}.investigator .character-art{width:50px;height:68px}.investigator:has(.character-art) h3{white-space:normal;overflow-wrap:anywhere}.draft-list{max-height:540px}
@media(max-width:1050px) and (min-width:701px){.setup-grid{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:16px}.character-header{flex-wrap:wrap}.character-skills{width:100%;justify-content:flex-end}.character-body{grid-template-columns:32% minmax(0,1fr)}.ability-text{font-size:13px}}
@media(max-width:700px){.setup-grid{grid-template-columns:1fr}.character-header{flex-wrap:wrap;padding:12px}.character-title h3{font-size:24px}.character-skills{width:100%;justify-content:space-between}.character-skills .skill-badge{flex:1;max-width:60px}.character-body{grid-template-columns:34% minmax(0,1fr);min-height:260px}.character-body>.character-art{min-height:260px}.character-abilities{padding:12px 10px}.ability-text{font-size:12px;line-height:1.85}.character-traits{font-size:12px!important}.character-vitals{gap:14px}.character-vitals .skill-value{font-size:28px}.character-vitals .card-icon svg{width:24px;height:24px}.draft-card>.character-art{width:48px;height:64px}.draft-card strong{font-size:16px}.draft-card .quantity-controls{margin-left:0}}
.character-card-footer{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap}.character-card-footer a{font:10px var(--sans);min-height:28px;color:#72532e}.draft-card-info{min-width:0;flex:1}.draft-card .draft-card-info>span{line-height:1.6}.character-vitals .skill-badge{gap:6px}.investigator-preview #add-card{margin-top:12px}.setup-grid{align-items:start}
