:root{--ink:#f1e4c9;--gold:#d0ad72;--muted:#aeb2a7}
.mine-exploration-toggle{position:fixed;z-index:8;right:34px;top:106px;border:1px solid #d8b47b55;border-radius:18px;background:#14292bd9;color:#dec596;padding:8px 12px;font-size:10px;letter-spacing:1px;cursor:pointer}
.mine-exploration-toggle:hover{border-color:#ffe4af;background:#243d3c}
.film-playing .mine-exploration-toggle,.quiet-reading .mine-exploration-toggle{display:none!important}
.detail-marker.mine-story-marker{width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker.mine-story-marker>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker.mine-story-marker .detail-label{opacity:1;left:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker.mine-story-marker:is(:hover,:focus-visible){border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker.mine-story-marker.decision-replay{opacity:.58}
.detail-marker.mine-story-marker.decision-replay:is(:hover,:focus-visible){opacity:1}
.detail-marker[data-detail^="gathering-"]{width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker[data-detail^="gathering-"]>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker[data-detail^="gathering-"] .detail-label{opacity:1;left:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker[data-detail^="gathering-"]:is(:hover,:focus-visible){border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker[data-detail^="gathering-"].decision-replay{opacity:.62}
.detail-marker[data-detail^="gathering-"].decision-replay:is(:hover,:focus-visible){opacity:1}
.detail-marker:is([data-clip=interrogationSteady],[data-clip=interrogationEscape],[data-detail=interrogation-phone]){width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker:is([data-clip=interrogationSteady],[data-clip=interrogationEscape],[data-detail=interrogation-phone])>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker:is([data-clip=interrogationSteady],[data-clip=interrogationEscape],[data-detail=interrogation-phone]) .detail-label{opacity:1;left:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker:is([data-clip=interrogationSteady],[data-clip=interrogationEscape],[data-detail=interrogation-phone]):is(:hover,:focus-visible){border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker:is([data-clip=interrogationSteady],[data-clip=interrogationEscape],[data-detail=interrogation-phone]).decision-replay{opacity:.62}
.detail-marker:is([data-clip=interrogationSteady],[data-clip=interrogationEscape],[data-detail=interrogation-phone]).decision-replay:is(:hover,:focus-visible){opacity:1}
.detail-marker[data-clip=yardSignal]{width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker[data-clip=yardSignal]>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker[data-clip=yardSignal] .detail-label{opacity:1;left:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker[data-clip=yardSignal]:hover,.detail-marker[data-clip=yardSignal]:focus-visible{border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker[data-clip=yardSignal].decision-replay{opacity:.62}
.detail-marker[data-clip=yardSignal].decision-replay:hover,.detail-marker[data-clip=yardSignal].decision-replay:focus-visible{opacity:1}
.detail-marker[data-clip=yardBriefing]{width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker[data-clip=yardBriefing]>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker[data-clip=yardBriefing] .detail-label{opacity:1;left:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker[data-clip=yardBriefing]:hover,.detail-marker[data-clip=yardBriefing]:focus-visible{border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker[data-clip=yardBriefing].decision-replay{opacity:.62}
.detail-marker[data-clip=yardBriefing].decision-replay:hover,.detail-marker[data-clip=yardBriefing].decision-replay:focus-visible{opacity:1}
.detail-marker[data-clip=lampDeparture]{width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker[data-clip=lampDeparture]>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker[data-clip=lampDeparture] .detail-label{opacity:1;left:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker[data-clip=lampDeparture]:hover,.detail-marker[data-clip=lampDeparture]:focus-visible{border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker[data-clip=lampDeparture].decision-replay{opacity:.62}
.detail-marker[data-clip=lampDeparture].decision-replay:hover,.detail-marker[data-clip=lampDeparture].decision-replay:focus-visible{opacity:1}
.detail-marker[data-clip=lampResponse]{width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker[data-clip=lampResponse]>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker[data-clip=lampResponse] .detail-label{opacity:1;left:auto;right:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker[data-clip=lampResponse]:hover,.detail-marker[data-clip=lampResponse]:focus-visible{border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker[data-clip=lampResponse].decision-replay{opacity:.62}
.detail-marker[data-clip=lampResponse].decision-replay:hover,.detail-marker[data-clip=lampResponse].decision-replay:focus-visible{opacity:1}
.detail-marker[data-clip=lampDecision]{width:24px;height:24px;background:#172a2ac9;border-color:#d8b47b66;box-shadow:none;cursor:pointer}
.detail-marker[data-clip=lampDecision]>span:first-child{font-size:0;width:5px;height:5px;background:#e9c98c;border-radius:50%;box-shadow:0 0 8px #e9c98c55}
.detail-marker[data-clip=lampDecision] .detail-label{opacity:1;left:29px;top:50%;translate:0 -50%;font-size:10px;pointer-events:none}
.detail-marker[data-clip=lampDecision]:hover,.detail-marker[data-clip=lampDecision]:focus-visible{border-color:#ffe4af;box-shadow:0 0 0 3px #e4bd6c18}
.detail-marker[data-clip=lampDecision].decision-replay{opacity:.62}
.detail-marker[data-clip=lampDecision].decision-replay:hover,.detail-marker[data-clip=lampDecision].decision-replay:focus-visible{opacity:1}
body:not(.immersive) .masthead{padding:clamp(24px,3.4vh,42px) clamp(32px,4vw,72px);background:linear-gradient(#0b151bd4,transparent)}
body:not(.immersive) .library-intro{position:fixed;left:5.5vw;top:33vh;width:29vw;max-width:560px;transform:none;text-align:left;pointer-events:none;transition:opacity .35s ease}
.library-intro .eyebrow{font-size:10px;line-height:1.8;letter-spacing:2px;color:#c9ac77}
.library-intro h1{font:normal clamp(30px,3.1vw,56px)/1.55 LocalSerif,"KaiTi",serif;letter-spacing:2px;margin:18px 0 20px;color:#eee2c9;text-shadow:0 2px 18px #08131288}
.library-intro h1 em{font-style:normal;color:#dfbe83}
.library-intro p{display:block;font-size:14px;line-height:2;letter-spacing:1px;color:#b4bdaf;margin:0}
.book-picker{position:fixed;inset:0;display:block;width:auto;height:auto;transform:none;translate:none;gap:0;pointer-events:none;opacity:1;transition:opacity .28s ease}
.book-choice{position:absolute;display:block;left:0;top:0;width:0;height:0;min-width:0;max-width:none;min-height:0;margin:0;padding:0;flex:none;border:1px solid transparent;border-radius:2px;background:transparent;backdrop-filter:none;box-shadow:none;transform:none;translate:none;overflow:visible;text-align:center;pointer-events:none;transition:border-color .2s,box-shadow .2s}
body[data-phase=library] .book-choice:not(:disabled){pointer-events:auto}
.book-choice:hover,.book-choice:focus-visible{background:transparent;border-color:#e6c486bb;box-shadow:inset 0 0 0 1px #f1d3a02e,0 0 18px #f0cd8a17;translate:none;outline:none}
.book-choice:focus-visible{border-color:#ffe3ad;box-shadow:0 0 0 3px #e7c27d3d}
.book-open{position:absolute;left:50%;bottom:12px;translate:-50% 5px;display:block;width:max-content;padding:6px 10px;border:1px solid #e3c58c66;border-radius:18px;background:#182b2ae8;color:#f0dbb3;font-size:10px;line-height:1.5;letter-spacing:1px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s,translate .2s}
.book-choice:hover .book-open,.book-choice:focus-visible .book-open{opacity:1;translate:-50% 0}
.library-footnote{position:fixed;left:5.5vw;right:auto;bottom:35px;display:block;text-align:left;font-size:10px;line-height:1.8;letter-spacing:1px;color:#9eab9d;pointer-events:none;transition:opacity .35s ease}
body[data-phase=moving] .library-intro,body[data-phase=moving] .book-picker,body[data-phase=moving] .library-footnote{opacity:0;pointer-events:none}
.library-transition{position:fixed;left:24px;right:24px;bottom:29px;z-index:6;text-align:center;color:#d8c7a6;font-size:11px;line-height:1.8;letter-spacing:2px;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .25s ease}
body[data-phase=moving] .library-transition{visibility:visible;opacity:1}
.library-status{position:fixed;bottom:22%;left:45%;z-index:6;max-width:370px;color:#e4d5b5;background:#12252aeb;border-left:2px solid #bb9a63;padding:13px 18px;font:13px/1.8 LocalSerif,serif;pointer-events:none;opacity:0;transition:opacity .35s}.library-status.visible{opacity:1}
.audio-panel{position:fixed;z-index:15;right:clamp(32px,4vw,72px);top:91px;width:286px;max-height:calc(100vh - 115px);overflow:auto;padding:23px;border:1px solid #c9aa6e66;border-radius:6px;background:#14272cf5;box-shadow:0 18px 48px #0008;backdrop-filter:blur(14px)}.audio-panel h2{font:normal 20px LocalSerif,serif;letter-spacing:3px;margin:0 0 10px}.audio-edition{font-size:10px;color:#d5b779;letter-spacing:1px;margin:0 0 22px}.audio-switch{display:flex;justify-content:space-between;align-items:center;margin:18px 0 12px;font-size:12px;color:#e5d7b8;letter-spacing:1px}.audio-switch input{accent-color:#d9b777;width:17px;height:17px}.audio-level{display:block}.audio-level span{display:flex;justify-content:space-between;font-size:10px;color:#a7b4ac}.audio-level input{display:block;width:100%;margin:12px 0 18px;accent-color:#d2b074;cursor:pointer}.audio-playback{display:flex;gap:8px;padding-top:8px}.audio-playback button{flex:1;padding:8px 4px;border:1px solid #b99c634d;border-radius:4px;background:#2b4141;color:#e4cfa5;font-size:10px}.audio-playback button:disabled{opacity:.4}.audio-status{font-size:10px;line-height:1.9;color:#cabb98;margin:14px 0 0}.audio-note{font-size:9px;line-height:1.9;color:#92a59c;margin:13px 0 0;border-top:1px solid #c0a16c30;padding-top:12px}
.voice-caption{position:fixed;left:36px;bottom:142px;z-index:8;width:calc(100vw - 470px);max-width:650px;padding:13px 48px 14px 17px;border-left:2px solid #cfb17c;background:linear-gradient(90deg,#102028f5,#102028db);box-shadow:0 8px 26px #0004;border-radius:3px}.voice-caption>div{display:flex;align-items:center;gap:12px}.voice-caption span{font-size:12px;letter-spacing:2px;color:#f0d19b}.voice-caption small{font-size:9px;color:#a7b9aa;letter-spacing:1px}.voice-caption p{font:17px/1.85 LocalSerif,serif;color:#f2e4c5;margin:7px 0 0}.voice-caption button{position:absolute;right:12px;top:14px;width:25px;height:25px;padding:0;border:1px solid #cfb17c55;border-radius:4px;background:#314644;color:#d5ba85;font-size:10px}
.story-workbench{margin-top:14px;padding-top:12px;border-top:1px solid #c5a57030}.workbench-label,.character-strip-label{font-size:9px;color:#aeb9a9;letter-spacing:2px;display:block;margin-bottom:9px}.character-strip-label{margin-top:15px;color:#cbb98f}.scene-actions{display:flex;gap:7px;flex-wrap:wrap}.scene-action{padding:7px 10px;border:1px solid #bda17150;background:#a988451a;border-radius:4px;color:#e7d5ae;font-size:10px;letter-spacing:1px}.scene-action:before{content:'· ';color:#ddbe84}.scene-action:hover{background:#8a6a4399;color:#fff0d2}.scene-action:disabled{opacity:.45}
.character-strip{display:flex;gap:7px;flex-wrap:wrap;margin-top:0}.character-chip{font-size:10px;padding:6px 10px;border-radius:20px;background:#3247469c;border:1px solid #aabb9b55;color:#d1debf}.character-chip:hover,.character-chip[aria-pressed=true]{background:#7d7651;color:#fff1cc;border-color:#c7ba81}.scene-action:focus-visible,.character-chip:focus-visible{outline:2px solid #dec38d;outline-offset:3px}
.character-panel{position:fixed;z-index:8;left:38px;top:216px;width:285px;max-height:calc(100vh - 365px);overflow:auto;padding:23px 23px 19px;border:1px solid #d4b17b45;border-radius:3px;background:linear-gradient(145deg,#122931f0,#15252ceb);box-shadow:0 18px 50px #0005;backdrop-filter:blur(16px)}.character-panel .eyebrow{font-size:8px}.character-panel h2{font:normal 29px LocalSerif,serif;letter-spacing:6px;margin:14px 0 8px}.character-role{color:#c7b58f;font-size:10px;letter-spacing:1px;margin:0 0 18px}.character-reply{font:14px/2 LocalSerif,serif;color:#e1ddc8;border-top:1px solid #c3a46f33;padding-top:16px;min-height:100px}.character-options{display:flex;flex-wrap:wrap;gap:7px}.character-options button{font-size:10px;border:1px solid #c8ae7744;padding:8px 10px;background:#30444788;border-radius:3px}.character-options button:hover{background:#8c754a}.panel-close{position:absolute;top:10px;right:12px;background:none;border:0;color:#b8bcae;font-size:20px;padding:2px 5px}.character-note{font-size:9px;line-height:1.8;color:#8fa49b;margin:16px 0 0}
@media(max-height:740px){body:not(.immersive) .library-intro{top:32vh}.library-intro h1{font-size:clamp(28px,3.1vw,42px);margin:14px 0 16px}.library-footnote{bottom:24px}.library-transition{bottom:22px}}
@media(max-width:1100px){body:not(.immersive) .library-intro{width:30vw;max-width:none}.library-intro h1{font-size:clamp(24px,3vw,33px);letter-spacing:1px}.library-intro p{font-size:12px}.book-open{font-size:9px;padding:5px 8px}}
@media(max-height:740px){.character-panel{top:190px;max-height:calc(100vh - 310px)}.detail-panel{bottom:110px;padding:12px 14px}.story-workbench{margin-top:11px;padding-top:10px}}
@media(max-width:1100px){.character-panel{width:260px;left:30px}}
.view-toggle{padding:9px 13px;border:1px solid #d8b47b55;border-radius:22px;background:#142b30c9;font-size:10px;letter-spacing:1px;color:#e7ce9f}.view-toggle:hover,.view-toggle[aria-pressed=true]{background:#d8b47b;color:#172a2b}.quiet-reading .reader-header,.quiet-reading .detail-panel,.quiet-reading .character-panel{display:none!important}.quiet-reading .brand{opacity:.55}.scene-cue{position:fixed;z-index:6;max-width:238px;padding:8px 12px;border:1px solid #ddc28d55;border-radius:4px;background:#11252de8;color:#f0dcba;font-size:10px;letter-spacing:.6px;line-height:1.7;box-shadow:0 5px 20px #0003;pointer-events:none;backdrop-filter:blur(8px)}
.detail-panel{max-height:calc(100vh - 245px);overflow:auto;scrollbar-width:thin;scrollbar-color:#9b845d #152a30}.story-workbench summary{padding:1px 0 3px;color:#c7b78e;font-size:10px;letter-spacing:1px;cursor:pointer;list-style:none}.story-workbench summary:after{content:'＋';float:right;color:#cdb585}.story-workbench[open] summary{margin-bottom:14px}.story-workbench[open] summary:after{content:'−'}.story-workbench summary:focus-visible{outline:2px solid #dec38d;outline-offset:4px}.detail-action.is-hovered{border-color:#efd4a1;background:#725e3899}.detail-marker.is-hovered{border-color:#ffe4af;box-shadow:0 0 0 7px #e4bd6c26,0 3px 16px #0006}.detail-marker[data-effect=wheel]{width:30px;height:30px;font-size:18px;cursor:ew-resize;touch-action:none}.detail-marker.scrubbing{cursor:grabbing;background:#d9ba7f;color:#172b30;box-shadow:0 0 0 10px #e4bd6c30}.detail-marker.scrubbing .detail-label{opacity:1}.detail-marker.discovered:not([data-effect=wheel]){font-size:12px}.detail-marker:disabled{pointer-events:none;opacity:.28}.event-steps{display:flex;gap:4px;height:3px;align-items:center}.event-steps span{display:block;width:22px;height:2px;border-radius:2px;background:#dcc19333;transition:background .35s,width .35s}.event-steps span.active{background:#dfc492;width:32px}.event-steps span.done{background:#a9b995}.page-ready #next{border-color:#e5c88c;background:#c9aa72;color:#15282b;box-shadow:0 0 18px #e2bd6b30;animation:page-ready 1.7s ease-in-out 3}.hotspot{animation:hint-arrive .4s ease-out}.hotspot:focus-visible{outline:2px solid #ffe1ac;outline-offset:5px}.immersive .reader-controls{background:linear-gradient(145deg,#12282ded,#102025ed)}
@keyframes page-ready{50%{box-shadow:0 0 0 6px #e2bd6b16,0 0 24px #e2bd6b40}}@keyframes hint-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}}
.film-trigger{display:block;pointer-events:auto;margin-top:17px;padding:10px 15px;border:1px solid #e7c68c88;border-radius:22px;background:#132b31e8;color:#ffe2ad;box-shadow:0 4px 20px #0004;font-size:11px;letter-spacing:1px}.film-trigger:hover{background:#c4a06a;color:#15292c}.film-trigger:disabled{opacity:.4}.film-controls{position:fixed;z-index:12;left:50%;bottom:34px;translate:-50% 0;width:340px;padding:16px 19px;border:1px solid #e2c18a66;border-radius:10px;background:#11242be8;backdrop-filter:blur(12px);box-shadow:0 8px 35px #0005}.film-controls>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:1px;color:#ead0a1}.film-controls #film-time{font-size:10px;color:#aebfb5}.film-controls progress{display:block;width:100%;height:3px;margin:14px 0 16px;appearance:none;border:0;border-radius:2px;overflow:hidden;background:#506057;accent-color:#dfc18b}.film-controls progress::-webkit-progress-bar{background:#506057}.film-controls progress::-webkit-progress-value{background:#dfc18b}.film-controls progress::-moz-progress-bar{background:#dfc18b}.film-buttons{display:flex;gap:9px}.film-buttons button{flex:1;border:1px solid #d7b97d66;background:#294341;color:#f1d9b0;padding:8px;border-radius:4px;font-size:10px}.film-buttons button:hover{background:#b69460;color:#172a2b}.film-buttons button:disabled{opacity:.45}.film-playing .reader-header,.film-playing .reader-controls,.film-playing .detail-panel,.film-playing .detail-markers,.film-playing .character-panel,.film-playing .hotspots,.film-playing .event-caption,.film-playing .voice-caption{display:none!important}.film-playing .masthead .brand{opacity:.4}
.film-launchers{display:flex;gap:8px;flex-wrap:wrap;max-width:340px}.film-launchers .film-trigger{padding:9px 12px;font-size:10px}.detail-marker[data-clip=cart]{width:38px;height:38px;background:#a48043e8;border:1px solid #f4d69c;color:#fff0d0;font-size:13px;box-shadow:0 0 0 6px #e6c27a20,0 4px 22px #0007}.detail-marker[data-clip=cart] .detail-label{opacity:1;top:43px;font-size:10px}.detail-marker[data-clip=cart]:hover{background:#d2ae71;color:#182a2d}
.film-playing .film-controls{left:auto;right:28px;top:100px;bottom:auto;translate:none;width:clamp(240px,23vw,300px)}
