/* Independent induction file: paper, brass and a clear working desk. */
body.pg-on{overflow:hidden;}
.echo-prologue{--pg-bg:#132d27;--pg-surface:#1d3932;--pg-paper:#f6f0e3;--pg-paper-soft:#eae3d3;--pg-ink:#253b33;--pg-muted:#b7c6b9;--pg-gold:#e8c580;--pg-line:rgba(232,224,202,.18);--pg-coral:#ed7962;position:fixed;inset:0;z-index:200;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;border:0;padding:env(safe-area-inset-top) max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left));color:var(--pg-paper);background:radial-gradient(ellipse at 18% 5%,#29483d 0,transparent 55%),var(--pg-bg);font-family:var(--sans);font-size:14px;line-height:1.65;overflow:hidden;color-scheme:dark;}
.echo-prologue::backdrop{background:#10251f;}
.echo-prologue *{box-sizing:border-box;}
.echo-prologue [hidden]{display:none!important;}
.echo-prologue button{font:inherit;cursor:pointer;touch-action:manipulation;}
.echo-prologue button:focus-visible,.echo-prologue summary:focus-visible{outline:3px solid var(--pg-gold);outline-offset:4px;}
.echo-prologue button:disabled{cursor:default;}
.echo-prologue h1,.echo-prologue h2,.echo-prologue h3,.echo-prologue p{margin:0;}
.echo-prologue h1,.echo-prologue h2{font-family:var(--serif);font-weight:700;text-wrap:balance;}
.echo-prologue h1:focus{outline:none;}
.echo-prologue svg{flex-shrink:0;}
.pg-icon{display:inline-block;width:20px;height:20px;vertical-align:middle;}
.pg-top,.pg-progress,.pg-scroll,.pg-footer{width:min(1340px,100%);margin:0 auto;min-width:0;}
.pg-top{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--pg-line);}
.pg-brand{display:flex;align-items:center;gap:11px;min-width:0;}
.pg-brand>img{width:42px;height:42px;object-fit:contain;}
.pg-brand>div{display:flex;flex-direction:column;min-width:0;}
.pg-brand b{font-family:var(--serif);font-size:18px;letter-spacing:.04em;}
.pg-brand small{color:var(--pg-muted);font-size:11px;letter-spacing:.1em;}
.pg-top-actions{display:flex;gap:10px;align-items:center;flex-shrink:0;}
.pg-language,.pg-skip{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:8px 14px;border:1px solid var(--pg-line);border-radius:5px;color:var(--pg-paper);background:transparent;}
.pg-skip{color:var(--pg-muted);}
.pg-language:hover,.pg-skip:hover{border-color:var(--pg-gold);color:var(--pg-gold);background:rgba(232,197,128,.06);}
.pg-progress{padding-top:18px;}
.pg-progress ol{display:flex;list-style:none;justify-content:space-between;margin:0;padding:0 0 12px;gap:12px;}
.pg-progress li{display:flex;align-items:center;gap:8px;font-size:12px;color:#a8b8ad;}
.pg-step-number{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--pg-line);border-radius:50%;font:11px var(--mono);}
.pg-step-number .pg-icon{width:14px;height:14px;}
.pg-progress li.on{color:var(--pg-gold);font-weight:700;}
.pg-progress li.on .pg-step-number{color:var(--pg-bg);border-color:var(--pg-gold);background:var(--pg-gold);}
.pg-progress li.done{color:#c3d7c2;}
.pg-progress li.done .pg-step-number{border-color:#819d86;}
.pg-progress-track{height:2px;background:var(--pg-line);overflow:hidden;}
.pg-progress-track i{display:block;height:100%;background:var(--pg-gold);transition:width .35s;}
.pg-scroll{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#668474 transparent;padding-bottom:24px;}
.pg-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;}
.pg-heading>div{min-width:0;}
.pg-eyebrow{font:10px/1.5 var(--mono);letter-spacing:.11em;color:var(--pg-gold);}
.pg-heading .pg-eyebrow>span:last-child{margin-left:14px;color:var(--pg-muted);}
.pg-heading h1{font-size:clamp(25px,2.7vw,36px);line-height:1.35;margin:5px 0 7px;}
.pg-heading p:not(.pg-eyebrow){font-size:13px;color:var(--pg-muted);}
.pg-state{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 11px;border:1px solid var(--pg-line);border-radius:4px;color:var(--pg-muted);font-size:11px;white-space:nowrap;}
.pg-state.complete{color:#bfdbb6;border-color:#7f9b78;}
.pg-state .pg-icon{width:14px;height:14px;}
.pg-workspace{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:22px;align-items:start;}
.pg-stage{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:460px;padding:28px;background:linear-gradient(135deg,rgba(239,233,210,.045),transparent 65%),var(--pg-surface);border:1px solid var(--pg-line);border-radius:8px;overflow:hidden;}
.pg-notes{min-width:0;border-radius:6px;background:var(--pg-paper);color:var(--pg-ink);color-scheme:light;overflow:hidden;}
.pg-notes>summary{display:flex;align-items:center;gap:8px;min-height:50px;padding:12px 16px;cursor:pointer;list-style:none;font-weight:700;border-bottom:1px solid #d8d1c0;}
.pg-notes>summary::-webkit-details-marker{display:none;}
.pg-notes>summary>span:nth-last-child(2){margin-left:auto;font:11px var(--mono);}
.pg-notes>summary>i{font-style:normal;transition:transform .2s;}
.pg-notes[open]>summary>i{transform:rotate(180deg);}
.pg-notes-inner{padding:16px;}
.pg-file-id{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #d8d1c0;font:20px var(--mono);letter-spacing:.1em;}
.pg-file-id .pg-icon{width:28px;height:28px;color:#a58750;}
.pg-notes section{margin-top:18px;}
.pg-notes h3{display:flex;justify-content:space-between;margin-bottom:8px;font:10px/1.5 var(--mono);color:#637467;letter-spacing:.06em;}
.pg-notes h3>b{color:var(--pg-ink);}
.pg-notes p{font-size:12px;line-height:1.8;}
.pg-file-clues article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:3px 8px;padding:10px 0;border-bottom:1px solid #ded7c7;}
.pg-file-clues article time{font:11px/1.8 var(--mono);color:#8c6039;}
.pg-file-clues article b{font-size:12px;}
.pg-file-clues article p{grid-column:2;font-size:11px;color:#586d5e;}
.pg-empty{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:14px 8px;background:#ebe5d6;color:#697867;border:1px dashed #c8c7b2;border-radius:3px;}
.pg-empty .pg-icon{width:30px;height:30px;margin-bottom:5px;color:#9c9e87;}
.pg-empty strong{font-size:12px;font-weight:500;}
.pg-empty>span:last-child{font-size:11px;}
.pg-log{list-style:none;padding:0;margin:0;display:grid;gap:7px;}
.pg-log li{display:flex;align-items:center;gap:7px;font-size:11px;color:#4d6554;}
.pg-log .pg-icon{width:13px;height:13px;}
.pg-controls{padding-top:14px;border-top:1px solid #d8d1c0;}
.pg-controls p{color:#667868;font-size:11px;}
.pg-controls p+p{margin-top:6px;}
.pg-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px;padding:16px 0 max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--pg-line);}
.pg-guidance{display:flex;align-items:center;gap:12px;min-width:0;}
.pg-guidance-icon{width:38px;height:38px;display:grid;place-items:center;flex-shrink:0;background:rgba(232,197,128,.08);border:1px solid rgba(232,197,128,.3);border-radius:50%;color:var(--pg-gold);}
.pg-guidance b{font:10px/1.5 var(--mono);letter-spacing:.08em;color:var(--pg-muted);}
.pg-hint{font-size:13px;line-height:1.65;color:var(--pg-paper);margin-top:3px!important;overflow-wrap:anywhere;}
.pg-hint[data-mode="retry"]{color:#ffb59d;}
.pg-next{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-width:210px;max-width:40%;min-height:48px;padding:12px 18px;border:1px solid transparent;border-radius:4px;background:var(--pg-gold);color:var(--pg-ink);font-weight:700!important;line-height:1.5;}
.pg-next:disabled{background:#30453b;color:#c1cabd;border-color:var(--pg-line);}
.pg-next:not(:disabled):hover{background:#f6dba3;}
.pg-next>span{min-width:0;overflow-wrap:anywhere;}
/* The pocket watch has a dedicated reading surface instead of a splash screen. */
.pg-open{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(0,1fr);align-items:center;gap:30px;}
.pg-device{min-width:0;text-align:center;}
.pg-device-label{display:flex;justify-content:space-between;gap:10px;padding-bottom:13px;font:10px/1.5 var(--mono);color:var(--pg-muted);border-bottom:1px solid var(--pg-line);}
.pg-watch-orbit{position:relative;display:grid;place-items:center;max-width:290px;aspect-ratio:1;margin:28px auto 10px;border:1px solid rgba(232,197,128,.25);border-radius:50%;background:radial-gradient(circle,rgba(232,197,128,.08),transparent 70%);}
.pg-watch-orbit::before{content:"";position:absolute;inset:15px;border:1px dashed rgba(232,197,128,.22);border-radius:50%;}
.pg-watch{position:relative;width:62%;aspect-ratio:1;padding:0;border:0;background:transparent;border-radius:24%;transition:transform .25s;}
.pg-watch>img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 14px rgba(0,0,0,.3));}
.pg-watch:not(:disabled):hover{transform:translateY(-5px) rotate(-6deg);}
.pg-watch.rewind{animation:pgWatchRewind 1.1s cubic-bezier(.5,0,.3,1);}
@keyframes pgWatchRewind{to{transform:rotate(-720deg);}}
.pg-orbit-time{position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);padding:0 12px;background:var(--pg-surface);font:12px var(--mono);color:var(--pg-gold);}
.pg-device>p{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;color:var(--pg-muted);margin-top:22px;}
.pg-device>p .pg-icon{width:14px;height:14px;}
.pg-account h2{font-size:clamp(25px,2.8vw,36px);line-height:1.3;margin:10px 0 8px;}
.pg-account>p{font-size:11px;color:var(--pg-muted);}
.pg-record-placeholder{display:flex;flex-direction:column;gap:18px;margin-top:28px;padding:30px 14px;border:1px dashed var(--pg-line);border-radius:4px;align-items:center;color:var(--pg-muted);font-size:12px;}
.pg-wave{display:flex;align-items:center;gap:4px;height:46px;}
.pg-wave i{height:var(--h);width:3px;border-radius:2px;background:#bba574;opacity:.7;}
.pg-echo{display:flex;flex-direction:column;gap:10px;margin-top:22px;padding:18px;border-radius:5px;background:var(--pg-paper);color:var(--pg-ink);animation:pgReveal .25s ease-out;}
.pg-record-tag{display:flex;align-items:center;gap:6px;font:10px/1.5 var(--mono);color:#7e6543;}
.pg-record-tag .pg-icon{width:15px;height:15px;}
.pg-echo>b{font-size:12px;}
.pg-echo blockquote{margin:0;font:18px/1.7 var(--serif);}
.pg-echo p{padding-top:10px;border-top:1px solid #d9d3c1;color:#637162;font-size:11px;}
@keyframes pgReveal{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
/* Scene search and evidence discovery stay in document flow on small screens. */
.pg-scene-layout{width:100%;}
.pg-scene{position:relative;aspect-ratio:16/10;min-height:300px;max-height:490px;border-radius:5px;overflow:hidden;background:#35554a;}
.pg-scene-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.pg-scene-bg.fallback{background:linear-gradient(140deg,#3c5c4a,#1a2b24);}
.pg-scene-cap{position:absolute;top:12px;left:12px;right:12px;display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid rgba(255,255,255,.15);border-radius:4px;background:rgba(14,29,24,.89);color:#f8f0de;}
.pg-scene-cap div{display:flex;flex-direction:column;}
.pg-scene-cap small{font:9px/1.5 var(--mono);color:#c2c9b3;letter-spacing:.08em;}
.pg-scene-cap b{font:15px/1.5 var(--serif);}
.pg-scene-cap>span:last-child{margin-left:auto;font:12px var(--mono);color:var(--pg-gold);}
.pg-hs{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:5px;min-width:110px;padding:12px;border:1px solid rgba(249,222,161,.8);border-radius:5px;color:#fff5da;background:rgba(20,42,34,.92);box-shadow:0 0 0 7px rgba(232,197,128,.14),0 6px 20px rgba(0,0,0,.25);}
.pg-hs>.pg-icon{width:30px;height:30px;margin-bottom:2px;color:#ffe0a0;}
.pg-hs>span{font-weight:700;}
.pg-hs>small{font:9px/1.5 var(--mono);color:#d7d2b5;}
.pg-hs:hover{box-shadow:0 0 0 10px rgba(232,197,128,.22);}
.pg-discovery{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:18px;padding:18px;background:var(--pg-paper);color:var(--pg-ink);border-radius:5px;margin-top:16px;animation:pgReveal .25s;}
.pg-discovery .pg-eyebrow{color:#667552;letter-spacing:.04em;}
.pg-discovery .pg-eyebrow .pg-icon{width:14px;height:14px;}
.pg-discovery h2{font-size:21px;margin:4px 0;}
.pg-discovery p:last-child{font-size:12px;line-height:1.8;}
.pg-evidence-art{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;flex-shrink:0;width:84px;height:110px;padding:12px 9px;border:1px solid #c2b594;border-radius:3px;background:repeating-linear-gradient(0deg,transparent 0 17px,rgba(106,90,49,.06) 18px 19px),#e8ddbd;color:#776245;box-shadow:2px 3px 0 rgba(45,56,38,.1);}
.pg-evidence-art.receipt{background-color:#e1e6d8;border-color:#b0bba1;color:#4f6b51;}
.pg-evidence-art>i{position:absolute;right:7px;top:5px;font:7px var(--mono);font-style:normal;letter-spacing:.05em;}
.pg-evidence-art>.pg-icon{width:30px;height:30px;}
.pg-evidence-art>b{font:13px var(--mono);}
.pg-evidence-art>em{display:block;width:80%;height:2px;background:currentColor;opacity:.2;}
.pg-evidence-art>em:last-child{width:60%;}
/* Contradiction exercise: claim and evidence have separate visual identities. */
.pg-tl{display:flex;flex-direction:column;gap:24px;}
.pg-claim{padding:20px 22px;background:var(--pg-paper);color:var(--pg-ink);border-radius:5px;border-left:3px solid var(--pg-gold);}
.pg-claim>.pg-eyebrow{color:#7e6543;}
.pg-claim blockquote{margin:10px 0 0;font:20px/1.75 var(--serif);}
.pg-timeline{padding:4px 0;}
.pg-tl-head{display:flex;justify-content:space-between;padding-bottom:20px;font:11px var(--mono);color:var(--pg-muted);}
.pg-tl-track{position:relative;min-height:76px;border:1px dashed transparent;background:rgba(0,0,0,.13);border-radius:4px;padding:12px 8px;}
.pg-tl-track.over{border-color:var(--pg-gold);background:rgba(232,197,128,.15);}
.pg-tl-bar{display:flex;align-items:center;min-height:50px;padding:10px 14px;border-radius:3px;background:#dce1c9;color:#3a493b;font-size:13px;line-height:1.6;transition:background .25s;}
.pg-tl-bar.broken{background:#edb29c;color:#502d23;box-shadow:inset 0 0 0 1px #ef8b73;}
.pg-tl-mark{position:absolute;left:50%;top:-9px;bottom:-8px;border-left:2px dashed var(--pg-gold);pointer-events:none;}
.pg-tl-mark>span{position:absolute;left:0;top:-10px;transform:translateX(-50%);font:9px var(--mono);background:var(--pg-surface);padding:2px 5px;color:var(--pg-gold);}
.pg-tl-key{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:18px;font-size:11px;color:var(--pg-gold);}
.pg-tl-key .pg-icon{width:15px;height:15px;}
.pg-chip{display:flex;align-items:center;gap:14px;width:100%;min-width:0;padding:16px;border:1px solid #b9a171;border-radius:5px;background:var(--pg-paper);color:var(--pg-ink);text-align:left;}
.pg-chip>span:not(.pg-evidence-art){flex:1;min-width:0;}
.pg-chip b{display:block;font:18px/1.5 var(--serif);}
.pg-chip small{display:block;color:#68775d;font-size:11px;margin-top:5px;}
.pg-chip .pg-drag-hint{color:#7c806e;font-size:10px;}
.pg-chip.verified{border-color:#84ac8b;}
.pg-verification{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-left:3px solid #a3c391;border-radius:3px;background:rgba(175,204,152,.1);color:#e1ebcf;animation:pgReveal .2s;}
.pg-verification>.pg-icon{margin-top:2px;color:#b5d69e;}
.pg-verification b{font-size:13px;}
.pg-verification p{font-size:12px;line-height:1.8;margin-top:4px;}
/* The training board uses the same pin-and-link language as the full game. */
.pg-board{position:relative;min-width:0;padding:18px 18px 20px;border:1px solid #8d724d;border-radius:5px;background:radial-gradient(circle at 15% 20%,rgba(255,255,255,.13) 0 1px,transparent 2px) 0 0/12px 12px,#a18156;color:#2c392e;}
.pg-board-caption{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:25px;padding-bottom:10px;border-bottom:1px solid rgba(47,49,31,.23);color:#302f20;font:10px/1.6 var(--mono);letter-spacing:.04em;}
.pg-board-caption>span{display:flex;align-items:center;gap:7px;}
.pg-board-caption .pg-icon{width:15px;height:15px;}
.pg-board-caption>b{font:12px var(--mono);}
.pg-strings{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3;}
.pg-strings path{fill:none;stroke:#ad2333;stroke-width:2.5;stroke-linecap:round;filter:drop-shadow(0 1px 1px rgba(255,238,188,.3));}
.pg-sus{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;z-index:2;}
.pg-pin{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:14px 8px 12px;border:1px solid #d4cbb7;border-radius:3px;background:var(--pg-paper);color:var(--pg-ink);box-shadow:0 4px 8px rgba(25,28,18,.18);transition:box-shadow .2s,transform .2s;}
.pg-pin:hover{transform:translateY(-3px);}
.pg-pin .pin{position:absolute;top:-6px;left:50%;width:12px;height:12px;transform:translateX(-50%);border:1px solid #882236;border-radius:50%;background:#c9424c;box-shadow:1px 2px 2px rgba(0,0,0,.3);}
.pg-avatar{position:relative;display:block;width:80px;height:95px;max-width:100%;margin-bottom:6px;background:#e3ce9f;color:#88703d;border:1px solid rgba(44,57,46,.08);border-radius:2px;overflow:hidden;}
.pg-avatar>img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%;}
.pg-record-speaker{display:flex;align-items:center;gap:12px;}
.pg-record-speaker .pg-avatar{flex-shrink:0;width:46px;height:56px;margin:0;}
.pg-record-speaker>div{display:flex;flex-direction:column;gap:7px;min-width:0;}
.pg-record-speaker b{font-size:12px;}
.pg-pin>b{font:17px/1.5 var(--serif);}
.pg-pin>small{font-size:11px;color:#6a7764;text-align:center;line-height:1.5;overflow-wrap:anywhere;}
.pg-pin[data-n]::after{content:attr(data-n);position:absolute;top:5px;right:5px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#b72f3f;color:white;font:11px var(--mono);}
.pg-pin.glow,.pg-pin.caught{box-shadow:0 0 0 3px var(--pg-gold),0 4px 8px rgba(25,28,18,.18);}
.pg-pin.shake{animation:pgNudge .35s;}
@keyframes pgNudge{25%{transform:translateX(-4px);}75%{transform:translateX(4px);}}
.pg-tray{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;z-index:2;margin-top:65px;}
.pg-bc{display:flex;align-items:flex-start;gap:11px;min-width:0;padding:13px;border:1px solid #d1c7ae;border-radius:3px;background:var(--pg-paper);color:var(--pg-ink);text-align:left;box-shadow:0 3px 5px rgba(36,36,23,.15);}
.pg-bc>.pg-evidence-art{width:54px;height:80px;padding:8px 5px;gap:4px;}
.pg-bc .pg-evidence-art>.pg-icon{width:22px;height:22px;}
.pg-bc .pg-evidence-art>b{font-size:10px;}
.pg-bc>span:last-child{flex:1;min-width:0;}
.pg-bc b:not(.pg-evidence-art b){display:block;font:15px/1.5 var(--serif);margin:4px 0;}
.pg-bc small{display:block;font-size:10px;line-height:1.8;color:#68775f;}
.pg-bc>span:last-child>small:first-child{font:8px/1.5 var(--mono);letter-spacing:.06em;}
.pg-bc em{display:flex;align-items:center;gap:4px;margin-top:8px;font-style:normal;font-size:10px;color:#425e41;}
.pg-bc em .pg-icon{width:12px;height:12px;}
.pg-bc.sel{outline:3px solid #ffe3a2;outline-offset:2px;}
.pg-bc.pinned{border-color:#5f8055;background:#e8eadc;}
.pg-accuse{display:flex;flex-direction:column;gap:24px;}
.pg-finding-intro{padding-bottom:20px;border-bottom:1px solid var(--pg-line);}
.pg-finding-records{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.pg-finding-records>div{display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:3px;background:rgba(232,197,128,.09);font-size:11px;}
.pg-finding-records .pg-icon{width:13px;height:13px;color:#c1d5aa;}
.pg-finding-records time{font:10px var(--mono);color:var(--pg-gold);}
.pg-finding-intro>p{color:var(--pg-muted);font-size:12px;margin-top:12px;}
.pg-accuse h2{font-size:clamp(21px,2.3vw,29px);line-height:1.5;}
/* Closure, replay and the next assignment have a complete destination screen. */
.echo-prologue[data-step="complete"],.echo-prologue[data-step="paused"]{grid-template-rows:auto minmax(0,1fr);}
.pg-end-scroll{overflow:auto;min-height:0;scrollbar-width:thin;overscroll-behavior:contain;}
.pg-end{max-width:980px;margin:0 auto;padding:50px 0 28px;}
.pg-completion{display:flex;align-items:center;gap:30px;}
.pg-complete-seal{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;flex-shrink:0;width:110px;height:110px;border:1px solid var(--pg-gold);border-radius:50%;box-shadow:inset 0 0 0 6px var(--pg-bg),inset 0 0 0 7px rgba(232,197,128,.4);color:var(--pg-gold);transform:rotate(-8deg);}
.pg-complete-seal>.pg-icon{width:36px;height:36px;}
.pg-complete-seal>span{font:11px var(--mono);letter-spacing:.12em;}
.pg-completion h1{font-size:clamp(28px,3.6vw,45px);line-height:1.35;margin:8px 0 12px;}
.pg-completion p:last-child{color:var(--pg-muted);font-size:13px;line-height:1.9;}
.pg-skills{margin-top:34px;padding:22px 0;border-top:1px solid var(--pg-line);border-bottom:1px solid var(--pg-line);}
.pg-skills h2{font:11px var(--mono);letter-spacing:.06em;color:var(--pg-muted);margin-bottom:15px;}
.pg-skills>div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.pg-skills>div>span{display:flex;align-items:center;gap:6px;font-size:12px;}
.pg-skills .pg-icon{width:15px;height:15px;color:#bfd5ad;}
.pg-skills small{font:10px var(--mono);color:var(--pg-muted);}
.pg-reward{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:13px 16px;border:1px solid rgba(232,197,128,.25);border-radius:4px;background:rgba(232,197,128,.05);color:var(--pg-gold);}
.pg-reward>span{display:flex;align-items:center;gap:8px;font-size:12px;}
.pg-reward>small{font-size:11px;color:var(--pg-muted);}
.pg-reward>b{display:inline-flex;align-items:center;gap:7px;font:20px var(--mono);}
.pg-next-files{margin-top:32px;}
.pg-section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;}
.pg-section-heading h2{font-size:20px;}
.pg-section-heading>span{font-size:10px;color:var(--pg-muted);}
.pg-cta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.pg-route{display:flex;align-items:center;gap:16px;min-width:0;padding:22px 18px;border:1px solid #c9cfb8;border-radius:5px;background:var(--pg-paper);color:var(--pg-ink);text-align:left;transition:transform .2s,border-color .2s;}
.pg-route.primary{border-color:#ebc77f;background:#ead3a1;}
.pg-route:hover{transform:translateY(-3px);border-color:var(--pg-gold);}
.pg-route-icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:48px;border:1px solid rgba(36,57,44,.2);border-radius:3px;}
.pg-route>span:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column;gap:5px;}
.pg-route small{font:9px/1.5 var(--mono);letter-spacing:.07em;color:#62735c;}
.pg-route b{font:22px/1.4 var(--serif);}
.pg-route em{font-size:11px;font-style:normal;color:#596b52;line-height:1.7;}
.pg-spoiler-note{margin-top:18px!important;font-size:11px;color:var(--pg-muted);}
.pg-end-actions{display:flex;justify-content:space-between;gap:20px;margin-top:18px;}
.pg-link{min-height:44px;padding:8px 0;border:0;border-bottom:1px solid var(--pg-line);background:none;color:var(--pg-paper);font-size:12px!important;}
.hero-prologue{display:inline-flex;align-items:center;gap:6px;margin:-8px 0 14px;padding:5px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.25);color:#ffe9b0;font-size:13px;}
.hero-prologue:hover{background:rgba(255,255,255,.08);}
@media(min-width:1500px){.pg-stage{min-height:520px;}}
@media(max-width:1100px) and (min-width:1000px){.pg-workspace{grid-template-columns:minmax(0,1fr) 260px;gap:16px;}.pg-stage{padding:22px;}.pg-open{gap:20px;grid-template-columns:minmax(150px,.8fr) minmax(0,1fr);}.pg-bc{flex-direction:column;}}
@media(max-width:999px){.pg-workspace{grid-template-columns:minmax(0,1fr);gap:14px;}.pg-stage{min-height:420px;}.pg-notes>summary{padding:11px 16px;}.pg-notes-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}.pg-file-id{grid-column:1/-1;}.pg-notes section{margin-top:0;}.pg-controls{grid-column:1/-1;}.pg-top{min-height:72px;}.pg-footer{gap:18px;}.pg-end{padding-top:30px;}.pg-skills>div{justify-content:flex-start;gap:12px 22px;}}
@media(max-width:600px){.echo-prologue{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));font-size:13px;}.pg-top{min-height:66px;gap:10px;}.pg-brand{gap:8px;}.pg-brand>img{width:34px;height:34px;}.pg-brand b{font-size:15px;letter-spacing:0;}.pg-brand small{font-size:9px;letter-spacing:.04em;}.pg-top-actions{gap:6px;}.pg-language,.pg-skip{min-width:44px;min-height:44px;padding:8px;}.pg-skip>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}.pg-progress{padding-top:12px;}.pg-progress ol{gap:3px;padding-bottom:11px;}.pg-progress li{gap:4px;font-size:10px;}.pg-step-number{width:21px;height:21px;font-size:9px;}.pg-step-number .pg-icon{width:11px;height:11px;}.pg-scroll{padding-bottom:16px;}.pg-heading{padding:18px 0 16px;gap:10px;align-items:flex-start;}.pg-heading h1{font-size:25px;line-height:1.4;}.pg-heading p:not(.pg-eyebrow){font-size:11px;line-height:1.8;}.pg-heading .pg-eyebrow{font-size:8px;}.pg-heading .pg-eyebrow>span:last-child{margin-left:7px;}.pg-state{font-size:9px;padding:4px 7px;margin-top:2px;}.pg-stage{min-height:360px;padding:18px 16px;border-radius:5px;}.pg-open{grid-template-columns:minmax(0,1fr);gap:24px;}.pg-device-label{font-size:9px;}.pg-watch-orbit{width:180px;margin-top:20px;}.pg-device>p{margin-top:17px;font-size:10px;}.pg-account h2{font-size:26px;}.pg-account>p{font-size:10px;}.pg-record-placeholder{margin-top:16px;padding:20px 12px;gap:9px;}.pg-wave{height:36px;}.pg-echo{margin-top:16px;padding:15px;gap:8px;}.pg-echo blockquote{font-size:18px;}.pg-notes-inner{display:block;padding:16px;}.pg-notes section{margin-top:16px;}.pg-notes summary{font-size:12px;min-height:48px;}.pg-footer{display:grid;grid-template-columns:minmax(0,1fr);min-height:0;gap:10px;padding:12px 0 max(12px,env(safe-area-inset-bottom));}.pg-guidance{gap:9px;}.pg-guidance-icon{width:30px;height:30px;}.pg-guidance-icon .pg-icon{width:16px;height:16px;}.pg-guidance b{display:none;}.pg-hint{font-size:11px;line-height:1.7;}.pg-next{width:100%;max-width:100%;min-width:0;min-height:46px;padding:10px 14px;justify-content:space-between;font-size:13px!important;}.pg-scene{min-height:320px;aspect-ratio:4/5;max-height:440px;}.pg-scene-cap{top:9px;left:9px;right:9px;padding:8px;gap:7px;}.pg-scene-cap small{font-size:8px;}.pg-scene-cap b{font-size:13px;}.pg-scene-cap>span:last-child{font-size:10px;}.pg-discovery{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:14px 12px;}.pg-discovery .pg-evidence-art{width:64px;height:90px;}.pg-discovery h2{font-size:18px;}.pg-discovery .pg-eyebrow{font-size:8px;}.pg-discovery p:last-child{font-size:11px;}.pg-tl{gap:21px;}.pg-claim{padding:16px;}.pg-claim blockquote{font-size:18px;}.pg-claim .pg-eyebrow{font-size:9px;}.pg-tl-head{font-size:9px;}.pg-tl-bar{font-size:11px;padding:10px;}.pg-chip{padding:12px 10px;gap:10px;}.pg-chip>.pg-evidence-art{width:55px;height:82px;padding:8px 5px;}.pg-chip .pg-evidence-art>b{font-size:10px;}.pg-chip .pg-evidence-art>.pg-icon{width:23px;height:23px;}.pg-chip b{font-size:15px;}.pg-chip>span>small{font-size:10px;}.pg-chip>.pg-icon{width:16px;height:16px;}.pg-drag-hint{display:none!important;}.pg-verification{padding:12px 10px;gap:8px;}.pg-verification b{font-size:12px;}.pg-verification p{font-size:11px;}.pg-board{padding:16px 10px;}.pg-board-caption{font-size:9px;margin-bottom:22px;gap:7px;}.pg-board-caption>span{gap:4px;}.pg-sus{gap:8px;}.pg-pin{padding:12px 4px 9px;gap:2px;}.pg-avatar{width:62px;height:76px;margin-bottom:4px;}.pg-pin>b{font-size:16px;}.pg-pin>small{font-size:9px;}.pg-pin[data-n]::after{width:18px;height:18px;top:3px;right:3px;font-size:9px;}.pg-tray{grid-template-columns:minmax(0,1fr);margin-top:47px;gap:12px;}.pg-bc{padding:12px 10px;gap:10px;}.pg-bc b:not(.pg-evidence-art b){font-size:15px;}.pg-bc>span>small{font-size:10px;}.pg-accuse{gap:22px;}.pg-accuse h2{font-size:23px;}.pg-finding-intro{padding-bottom:16px;}.pg-finding-intro>p{font-size:11px;}.pg-finding-records>div{font-size:10px;}.pg-finding-records time{font-size:9px;}.pg-end{padding:28px 0 20px;}.pg-completion{align-items:flex-start;gap:16px;}.pg-complete-seal{width:64px;height:64px;gap:3px;box-shadow:inset 0 0 0 4px var(--pg-bg),inset 0 0 0 5px rgba(232,197,128,.4);}.pg-complete-seal>.pg-icon{width:23px;height:23px;}.pg-complete-seal>span{font-size:8px;}.pg-completion .pg-eyebrow{font-size:9px;}.pg-completion h1{font-size:30px;margin:6px 0 10px;}.pg-completion p:last-child{font-size:11px;}.pg-skills{margin-top:24px;padding:18px 0;}.pg-skills h2{font-size:10px;}.pg-skills>div{gap:12px 18px;}.pg-skills>div>span{font-size:11px;gap:4px;}.pg-skills small{font-size:9px;}.pg-reward{padding:11px 12px;flex-wrap:wrap;gap:5px 12px;}.pg-reward>span{font-size:11px;}.pg-reward>small{font-size:10px;}.pg-reward>b{font-size:18px;}.pg-next-files{margin-top:26px;}.pg-section-heading{display:block;margin-bottom:12px;}.pg-section-heading h2{font-size:20px;}.pg-section-heading>span{display:block;font-size:9px;margin-top:5px;}.pg-cta{grid-template-columns:minmax(0,1fr);gap:12px;}.pg-route{padding:18px 14px;gap:12px;}.pg-route b{font-size:22px;}.pg-route small{font-size:9px;}.pg-route em{font-size:10px;}.pg-route-icon{width:34px;height:43px;}.pg-spoiler-note{font-size:10px;line-height:1.8;}.pg-end-actions{margin-top:12px;}}
@media(max-width:359px){.pg-brand b{font-size:14px;}.pg-brand>img{width:30px;height:30px;}.pg-brand small{font-size:8px;}.pg-top-actions{gap:4px;}.pg-progress li{font-size:9px;gap:3px;}.pg-state{font-size:8px;padding:4px 5px;}.pg-stage{padding:16px 12px;}.pg-avatar{width:52px;height:64px;}.pg-pin>b{font-size:14px;}.pg-board{padding:14px 9px;}.pg-pin>small{font-size:8px;}.pg-bc{padding:10px 8px;gap:8px;}.pg-bc>.pg-evidence-art{width:43px;height:72px;}.pg-bc b:not(.pg-evidence-art b){font-size:14px;}.pg-complete-seal{width:55px;height:55px;}.pg-completion{gap:12px;}.pg-completion h1{font-size:27px;}}
@media(prefers-reduced-motion:reduce){.echo-prologue *,.echo-prologue *::before,.echo-prologue *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}
/* Preserve the book target while adapting the scene crop. */
.pg-scene{width:100%;}
.pg-scene-bg{object-position:32% 50%;}
/* Original prologue performance, contained inside the full investigation UI. */
.pg-opening-title{animation:pgOpeningLine 1s .2s both;}
.pg-opening-brief{margin-top:18px;animation:pgOpeningLine 1s 1.4s both;}
.pg-opening-brief p{font:15px/1.9 var(--serif);color:var(--pg-paper);}
.pg-watch-arrival{animation:pgWatchArrival .65s 2.8s both;}
.pg-stage.flash::after{content:"";position:absolute;inset:0;z-index:6;background:#fff8dc;opacity:0;pointer-events:none;animation:pgWatchFlash 1.1s both;}
.pg-wave i{animation:pgWave 1.1s calc(var(--i)*-.09s) ease-in-out infinite;}
.pg-type{position:relative;display:grid;}
.pg-type-reserve,.pg-type-live{grid-area:1/1;}
.pg-type-reserve{visibility:hidden;}
.pg-type-live::after{content:"";display:inline-block;width:1px;height:1em;margin-left:2px;background:currentColor;vertical-align:-.1em;animation:pgCursor .7s steps(1) infinite;}
.pg-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.pg-hs{animation:pgHotspot 1.8s ease-in-out infinite;}
.pg-discovery.flip{transform-origin:50% 50%;animation:pgEvidenceFlip .8s cubic-bezier(.3,1.2,.5,1) both;}
.pg-chip:not(:disabled){cursor:grab;animation:pgEvidenceBob 1.6s ease-in-out infinite;}
.pg-chip:not(:disabled):is(:hover,:focus-visible){animation-play-state:paused;}
.pg-chip:active:not(:disabled){cursor:grabbing;}
.pg-chip.fly{pointer-events:none;transform-origin:center;animation:pgEvidenceFly .5s ease-in both;}
.pg-chip.verified{display:none;}
.pg-tl-bar.broken{background:repeating-linear-gradient(135deg,#edb29c 0 8px,#efc1af 8px 16px);animation:pgEvidenceCrack .5s;}
.pg-stamp{position:absolute;top:50%;left:50%;z-index:5;width:max-content;max-width:88%;padding:7px 16px;border:4px double #ffdfce;border-radius:5px;background:#ab4135;color:#fff5e3;font:900 clamp(20px,3vw,42px)/1.3 var(--serif);text-align:center;overflow-wrap:anywhere;transform:translate(-50%,-50%) rotate(-6deg);box-shadow:0 5px 0 rgba(0,0,0,.18);pointer-events:none;animation:pgSealIn .45s cubic-bezier(.2,1.5,.5,1) both,pgSealOut .3s 1.3s forwards;}
.pg-strings path.draw,.pg-strings path.snap{stroke-dasharray:1;stroke-dashoffset:1;animation:pgRedString .6s ease-out forwards;}
.pg-stamp.verdict{max-width:150%;padding:7px 9px;font-size:clamp(17px,2.5vw,34px);}
.pg-strings path.snap{stroke:#7a2b2b;animation:pgRedString .4s ease-out forwards,pgRedSnap .5s .4s forwards;}
.pg-board .pg-pin:hover{transform:none;border-color:#a78a50;}
.pg-pin.caught{box-shadow:0 0 0 3px #ed9476,0 0 28px rgba(237,121,98,.3);}
.echo-prologue.dark{background:#091510;}
.echo-prologue.dark .pg-stage{background:#0a1712;transition:background .8s;}
.pg-outro{display:flex;flex-direction:column;align-items:center;gap:22px;width:100%;padding:24px 0;text-align:center;}
.pg-outro-watch{width:100px;aspect-ratio:1;animation:pgWatchRewind 2.4s cubic-bezier(.5,0,.3,1) infinite;}
.pg-outro-watch img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 22px rgba(232,197,128,.16));}
.pg-outro-line{max-width:36em;font:clamp(17px,1.8vw,24px)/1.85 var(--serif);opacity:0;}
.pg-outro-line.voice{font-size:clamp(23px,2.2vw,31px);color:var(--pg-gold);}
.pg-outro-line.visible{opacity:1;animation:pgOpeningLine .8s both;}
@keyframes pgOpeningLine{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}
@keyframes pgWatchArrival{from{opacity:0;transform:scale(.6) rotate(20deg);}to{opacity:1;transform:none;}}
@keyframes pgWatchFlash{0%,100%{opacity:0;}25%{opacity:.85;}}
@keyframes pgWave{50%{transform:scaleY(.4);opacity:.35;}}
@keyframes pgCursor{50%{opacity:0;}}
@keyframes pgHotspot{50%{box-shadow:0 0 0 12px rgba(232,197,128,0),0 6px 20px rgba(0,0,0,.25);}}
@keyframes pgEvidenceFlip{from{opacity:0;transform:perspective(900px) rotateY(-150deg) scale(.8);}to{opacity:1;transform:none;}}
@keyframes pgEvidenceBob{50%{transform:translateY(-5px);}}
@keyframes pgEvidenceFly{to{transform:translate(var(--pg-fly-x,0),var(--pg-fly-y,-120px)) scale(.3);opacity:0;}}
@keyframes pgEvidenceCrack{20%{transform:translateX(-5px) rotate(-1deg);}40%{transform:translateX(5px) rotate(1deg);}60%{transform:translateX(-3px);}80%{transform:translateX(2px);}}
@keyframes pgSealIn{from{opacity:0;transform:translate(-50%,-50%) rotate(-10deg) scale(.65);}to{opacity:1;transform:translate(-50%,-50%) rotate(-6deg) scale(1);}}
@keyframes pgSealOut{to{opacity:0;}}
@keyframes pgRedString{to{stroke-dashoffset:0;}}
@keyframes pgRedSnap{to{opacity:0;transform:translateY(24px);}}
@media(max-width:600px){.pg-opening-brief{margin-top:14px;}.pg-opening-brief p{font-size:13px;}.pg-outro{gap:20px;padding:12px 0;}.pg-outro-watch{width:88px;}.pg-outro-line{font-size:17px;line-height:1.9;}.pg-stamp{padding:7px 12px;}}
@media(prefers-reduced-motion:reduce){.pg-strings path.draw,.pg-strings path.snap{stroke-dashoffset:0;}}
