@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-ext-600-normal-BEFdM_VE.woff2) format("woff2"),url(/assets/cinzel-latin-ext-600-normal-BY9Mq9iK.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2) format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-ext-400-normal-o8fRvAFQ.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-ext-400-normal-DG8lny6_.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-400-normal-DDLP67lu.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-400-normal-C0kVTdou.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-ext-400-normal-K8pwR3tn.woff2) format("woff2"),url(/assets/eb-garamond-greek-ext-400-normal-BaZl8BIK.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-400-normal-CVAbzS9p.woff2) format("woff2"),url(/assets/eb-garamond-greek-400-normal-d4JlP2QH.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-vietnamese-400-normal-CLvJdMEL.woff2) format("woff2"),url(/assets/eb-garamond-vietnamese-400-normal-ifvNSiWx.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-ext-400-normal-o4A__6QZ.woff2) format("woff2"),url(/assets/eb-garamond-latin-ext-400-normal-B4EmgUmt.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-normal-BCNrxLz_.woff2) format("woff2"),url(/assets/eb-garamond-latin-400-normal-maQnHeKB.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-ext-400-italic-Bz1w3xqM.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-ext-400-italic-CYS3phfl.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-cyrillic-400-italic-BGIwiowF.woff2) format("woff2"),url(/assets/eb-garamond-cyrillic-400-italic-BZInx2ys.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-ext-400-italic-CHZOQEtG.woff2) format("woff2"),url(/assets/eb-garamond-greek-ext-400-italic-BL1XYHtS.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-greek-400-italic-Dqr5KC66.woff2) format("woff2"),url(/assets/eb-garamond-greek-400-italic-BamGE6QP.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-vietnamese-400-italic-DQ8HKnks.woff2) format("woff2"),url(/assets/eb-garamond-vietnamese-400-italic-ORtyMVfw.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-ext-400-italic-V7s3nWfX.woff2) format("woff2"),url(/assets/eb-garamond-latin-ext-400-italic-DUSsnRSD.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/eb-garamond-latin-400-italic-DSEbMgZu.woff2) format("woff2"),url(/assets/eb-garamond-latin-400-italic-CDFyLPXJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/kalam-devanagari-400-normal-Dy6c0U2e.woff2) format("woff2"),url(/assets/kalam-devanagari-400-normal-Dyzod-UE.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/kalam-latin-ext-400-normal-DtcdGa4L.woff2) format("woff2"),url(/assets/kalam-latin-ext-400-normal-AcQmRO9z.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/kalam-latin-400-normal-BthBl_aR.woff2) format("woff2"),url(/assets/kalam-latin-400-normal-Bl-H2BUA.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--night: #05070f;--ink: #e9e2cf;--dim: #9aa3bf;--amber: #ffb347;--brass: #c9a24a;--paper: #efe4c6;--serif: "EB Garamond", Georgia, serif;--display: "Cinzel", "EB Garamond", serif;--hand: "Kalam", cursive}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--night);color:var(--ink);font-family:var(--serif);overflow:hidden;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}.title{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center}.title>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:brightness(.75);animation:drift 40s ease-in-out infinite alternate}@keyframes drift{0%{transform:scale(1.04)}to{transform:scale(1.12) translateY(-1.5%)}}.title-copy{position:relative;padding:16px;max-width:640px;margin-top:-14vh}.title h1{font-family:var(--display);font-weight:600;font-size:clamp(34px,7vw,76px);letter-spacing:.06em;margin:0 0 12px;color:#f6eedb;text-shadow:0 0 30px rgba(255,179,71,.35),0 2px 2px #000}.sub{font-size:clamp(16px,2.2vw,21px);line-height:1.45;margin:0 auto 28px;max-width:34em;text-wrap:balance;text-shadow:0 1px 3px #000}.small{font-size:14px;color:var(--dim);margin-top:18px}.seal{width:104px;height:104px;border-radius:50%;border:none;background:radial-gradient(circle at 38% 32%,#c4473a,#7c1912 62%,#4a0c08);box-shadow:0 0 0 4px #00000040,0 8px 30px #0009,inset 0 0 0 6px #ffffff12;font-family:var(--display);font-size:17px;letter-spacing:.12em;color:#f6e3c6;transition:transform .15s}.seal:hover{transform:scale(1.05)}.credit{position:absolute;right:16px;bottom:14px;font-size:13px;color:var(--dim);text-decoration:none;letter-spacing:.04em}.credit:hover{color:var(--ink)}.credit.inline{position:static;display:inline-block;margin-top:14px}.game{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column}.hud,.bar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;min-height:48px}.hud{padding-top:max(8px,env(safe-area-inset-top))}.bar{padding-bottom:max(8px,env(safe-area-inset-bottom));min-height:64px}.room{font-family:var(--display);letter-spacing:.08em;font-size:15px}.right{display:flex;align-items:center;gap:10px}.clock{font-family:var(--display);color:var(--amber);font-size:15px;letter-spacing:.05em}.hintbtn,.soundbtn,.back{background:#ffffff0f;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:6px 12px;font-size:14px;min-height:36px}.hintbtn{width:36px;padding:0;font-family:var(--display)}.back[hidden]{visibility:hidden;display:block}.items{display:flex;gap:8px;overflow-x:auto}.item{width:48px;height:48px;padding:0;border-radius:10px;border:1px solid rgba(201,162,74,.45);background:#000;overflow:hidden;flex:0 0 auto}.item img{width:100%;height:100%;object-fit:cover}.stagewrap{flex:1 1 auto;min-height:0;display:grid;place-items:center}.stage{position:relative;aspect-ratio:16 / 9;width:min(100vw,calc((100dvh - 120px) * 16 / 9));container-type:inline-size;overflow:hidden;background:#000}.bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease}.bg.on{opacity:1}.fx,.puzzle,.hots{position:absolute;top:0;right:0;bottom:0;left:0}.hots{pointer-events:none}.hots>*{pointer-events:auto}.fx,.puzzle{pointer-events:none}.puzzle>*{pointer-events:auto}.puzzle>.carved,.puzzle>.painted,.puzzle>.beam,.puzzle>.glints{pointer-events:none}.hot{position:absolute;background:transparent;border:0;padding:0;border-radius:8px}@media (hover: hover){.hot:hover{outline:1px solid rgba(255,220,160,.25);background:#ffdca00d}}.hot:focus-visible{outline:1px solid rgba(255,220,160,.25);background:#ffdca00d}.debug .hot{outline:2px dashed #ff0;background:#ffff001f}.debug .hot:after{content:attr(aria-label);position:absolute;left:2px;top:2px;font-size:11px;color:#ff0}.caption{position:absolute;left:50%;bottom:4%;transform:translate(-50%,8px);width:min(88%,720px);padding:10px 16px;border-radius:10px;background:#03050ed1;border:1px solid rgba(255,255,255,.08);font-size:clamp(14px,1.7vw,19px);line-height:1.4;text-align:center;opacity:0;transition:opacity .35s,transform .35s;pointer-events:none}.caption.on{opacity:1;transform:translate(-50%)}.glow{position:absolute;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;mix-blend-mode:screen}.glow.warm{background:radial-gradient(circle,rgba(255,190,90,.75),rgba(255,140,40,.25) 35%,transparent 68%)}.glow.flicker{animation:flicker 1.8s infinite}.glow.ember{background:radial-gradient(circle,rgba(255,110,30,.6),rgba(255,70,0,.2) 40%,transparent 70%)}.glow.breathe{animation:breathe 3.2s ease-in-out infinite}.glow.lamp{background:radial-gradient(circle,rgba(255,250,225,.95),rgba(255,210,120,.4) 30%,transparent 66%);animation:flicker 2.4s infinite}@keyframes flicker{0%,to{opacity:1}40%{opacity:.85}60%{opacity:.95}75%{opacity:.8}}@keyframes breathe{0%,to{opacity:.35;transform:translate(-50%,-50%) scale(.92)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}}.bubbles{position:absolute;width:4%;height:8%;transform:translate(-50%,-50%)}.bubbles i{position:absolute;bottom:0;width:7px;height:7px;border-radius:50%;border:1px solid rgba(200,220,255,.55);opacity:0;animation:bubble 6.5s infinite}@keyframes bubble{0%{opacity:0;transform:translateY(0) scale(.6)}10%{opacity:.9}45%{opacity:0;transform:translateY(-140%) scale(1)}to{opacity:0}}.painted{position:absolute;left:0;top:0;transform-origin:0 0;display:grid;place-items:center;pointer-events:none;mix-blend-mode:multiply}.painted span{font-family:var(--display);font-weight:600;font-size:78px;line-height:1;letter-spacing:.16em;color:#22302a;opacity:.88;filter:blur(.6px);-webkit-mask-image:repeating-linear-gradient(97deg,#000 0 3px,rgba(0,0,0,.72) 3px 4px,#000 4px 9px);mask-image:repeating-linear-gradient(97deg,#000 0,#000 3px,#000000b8 3px,#000000b8 4px,#000 4px,#000 9px)}.carved{position:absolute;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));justify-items:center;align-items:center;padding:4% 0}.carved>div{height:96%;aspect-ratio:1;opacity:.9;filter:drop-shadow(0 1px 0 rgba(255,210,150,.45)) drop-shadow(0 -1px 0 rgba(0,0,0,.7))}.carved svg{width:100%;height:100%}.lock{position:absolute;display:grid;grid-template-columns:repeat(4,1fr);column-gap:7.5%}.wheel{position:relative}.win{position:absolute;top:4%;right:4%;bottom:4%;left:4%;overflow:hidden;border:0;background:transparent;padding:0;cursor:pointer;-webkit-mask-image:linear-gradient(transparent,#000 26%,#000 74%,transparent);mask-image:linear-gradient(transparent,#000 26%,#000 74%,transparent)}.strip{position:absolute;left:0;right:0;top:-55%;height:210%;display:grid;grid-template-rows:repeat(3,1fr)}.cell{display:grid;place-items:center;padding:4% 18%;min-height:0}.cell svg{width:100%;height:100%;filter:drop-shadow(0 -1px 0 rgba(0,0,0,.8)) drop-shadow(0 1px 0 rgba(255,220,140,.25))}.arrow{position:absolute;left:50%;width:90%;height:46%;transform:translate(-50%);border:0;border-radius:4px;background:transparent;color:#24170a;font-size:clamp(12px,2.1cqw,30px);line-height:1;padding:0;text-shadow:0 1px 0 rgba(255,232,170,.55),0 -1px 0 rgba(0,0,0,.35);cursor:pointer}.arrow svg{width:34%;height:auto;fill:#2a1a06;filter:drop-shadow(0 1px 0 rgba(255,232,170,.6)) drop-shadow(0 -1px 0 rgba(0,0,0,.4))}.arrow:hover svg{fill:#120b02}.arrow:hover{color:#1d1303;background:#ffe6a01f}.arrow:active{transform:translate(-50%) translateY(1px)}.arrow.up{bottom:100%}.arrow.down{top:100%}.clockface{position:absolute}.clockface>svg{width:100%;height:100%}.clockface text{font-family:var(--display);font-size:7px;fill:#2b1e0c}.knobs{position:absolute;left:50%;top:104%;transform:translate(-50%);display:flex;gap:12px}.knob,.card .actions button{border:1px solid #8a6a2a;background:linear-gradient(#e7c56d,#a37a2a);color:#24170a;border-radius:999px;padding:8px 16px;font-family:var(--display);font-size:14px;letter-spacing:.06em;min-height:40px;box-shadow:0 3px 10px #00000080}.page{position:absolute;font-family:var(--hand);color:#2a1b0c;font-size:1.2cqw;line-height:1.65;padding:3%;transform:rotate(-1deg)}.page p{margin:0 0 1em}.page .shaky{transform:rotate(-1.5deg);color:#5a1a10;letter-spacing:.04em}.beam{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.beam polyline{fill:none;stroke:#ffd68cd9;stroke-width:.9;filter:drop-shadow(0 0 1.2px rgba(255,190,90,1));vector-effect:non-scaling-stroke;stroke-linejoin:round}.beam polyline{stroke-width:4px}.beam polyline.hit{stroke:#fff4d6}.mirror{position:absolute;width:8%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;border:2px solid rgba(201,162,74,.8);background:radial-gradient(circle,#281e0fd9,#140e06e6);box-shadow:0 4px 12px #0009;padding:0}.mirror i{position:absolute;left:12%;right:12%;top:50%;height:14%;margin-top:-7%;background:linear-gradient(#e8f0ff,#9fb2d6);border:1px solid #c9a24a;border-radius:2px;transition:transform .25s}.mirror.m0 i{transform:rotate(-45deg)}.mirror.m1 i{transform:rotate(45deg)}.mirror.m2 i{left:38%;right:38%;height:24%;margin-top:-12%;border-radius:50%;opacity:.55}.mirror.rust{border-color:#783c1ed9;background:radial-gradient(circle,#3c190ae6,#1e0c04f2)}.mirror.rust i{background:linear-gradient(#8a5a3a,#4a2a18);border-color:#6a3a20}.decoy{position:absolute;width:6%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 40% 35%,#8a7a5a,#4a3e28 60%,#2a2214);border:2px solid #3a2e1a;box-shadow:0 3px 10px #0009;pointer-events:none}.decoy.lit{box-shadow:0 0 14px #ffc87880,0 3px 10px #0009}.hook{position:absolute;width:7.5%;aspect-ratio:3 / 2.3;transform:translate(-50%);border:1px dashed rgba(255,230,180,.25);border-radius:4px;background:transparent;padding:0}.hook svg{width:100%;display:block;animation:flutter 3s ease-in-out infinite;transform-origin:left center}@keyframes flutter{0%,to{transform:skewY(0)}50%{transform:skewY(2deg) scaleX(.97)}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:none;place-items:center;background:#0009;padding:16px;z-index:20}.overlay.on{display:grid}.card{width:min(560px,100%);max-height:92dvh;overflow:auto;background:linear-gradient(#141a33,#0b0f22);border:1px solid rgba(201,162,74,.4);border-radius:14px;padding:22px 24px;box-shadow:0 20px 60px #000000b3;font-size:18px;line-height:1.45}.card h2{font-family:var(--display);font-weight:600;letter-spacing:.06em;color:var(--amber);margin:0 0 12px;font-size:22px}.card.paper{background:var(--paper);color:#2a1b0c}.card.paper h2{color:#6b4513}.card .hand{font-family:var(--hand);font-size:16px;line-height:2}.card.dark{background:linear-gradient(#1a0606,#080202);border-color:#c2272d80}.card.dark h2{color:#e05a4a}.card .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.story{font-style:italic;font-size:20px;border-left:3px solid var(--amber);padding-left:14px}.found{color:var(--dim);font-size:15px}.chart{font-family:var(--display);text-align:center;letter-spacing:.04em}.chart.big{font-family:var(--serif);font-size:22px;font-style:italic}.flags{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.flags figure{margin:0;text-align:center}.flags svg{width:100%;display:block}.flags figcaption{font-family:var(--display);margin-top:4px;font-size:18px}.drum{position:relative;width:220px;height:220px;margin:26px auto 8px;border-radius:50%;background:radial-gradient(circle,#fff6da 0 14%,#3a2a10 15% 30%,transparent 31%)}.drum .panel{position:absolute;left:50%;top:50%;width:46px;height:64px;margin:-32px 0 0 -23px;border-radius:6px;border:2px solid #8a6a2a;background:linear-gradient(#4a3714,#2b1f0b);padding:0}.drum .panel.open{background:linear-gradient(#fff4d0,#ffcf6e);box-shadow:0 0 18px #ffd278e6}.scare{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#000;opacity:0}.scare img{width:100%;height:100%;object-fit:cover}.scare.on{opacity:1;animation:shake .45s linear 2}.scare.on img{animation:lunge 1.5s ease-out forwards}.scare.out{opacity:0;transition:opacity .6s}@keyframes lunge{0%{transform:scale(1.18);filter:brightness(1.8) contrast(1.3)}12%{filter:brightness(1) contrast(1.1)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-14px,8px)}40%{transform:translate(12px,-10px)}60%{transform:translate(-8px,-6px)}80%{transform:translate(10px,6px)}}.ending{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#000;opacity:0;transition:opacity 2.5s;display:grid;place-items:center;overflow:hidden}.ending.on{opacity:1}.ending .frame{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);aspect-ratio:16 / 9;width:max(100vw,calc(100vh * 16 / 9))}.ending .frame img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.lampglow{position:absolute;width:9%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,252,230,.95),rgba(255,220,140,.35) 40%,transparent 70%);mix-blend-mode:screen;animation:flicker 2.4s infinite}.sweep{position:absolute;width:0;height:0}.sweep:before{content:"";position:absolute;left:0;top:-3vh;width:80vw;height:6vh;transform-origin:0 50%;background:linear-gradient(90deg,rgba(255,245,210,.75),rgba(255,235,180,.15) 60%,transparent);clip-path:polygon(0 45%,100% 0,100% 100%,0 55%);mix-blend-mode:screen;animation:sweep 5s ease-in-out infinite alternate}@keyframes sweep{0%{transform:rotate(-14deg);opacity:.5}to{transform:rotate(12deg);opacity:1}}.endwrap{position:relative;z-index:2;margin:16px;display:flex;flex-direction:column;align-items:center;gap:14px;max-height:calc(100% - 32px);overflow-y:auto}.stats{color:var(--amber);font-family:var(--display);font-size:15px;letter-spacing:.03em}.pieces{padding-left:20px;font-style:italic;font-size:16px}.pieces li{margin-bottom:6px}.pieces span{color:var(--dim)}@media (max-width: 640px){.hud,.bar{padding-left:12px;padding-right:12px}.room{font-size:13px}.soundbtn{font-size:12px}}@media (orientation: portrait){.stage{overflow:visible}.caption{top:calc(100% + 14px);bottom:auto;width:calc(100vw - 24px);font-size:16px}}@media (max-height: 500px){.hud,.bar{min-height:0;padding-top:4px;padding-bottom:4px}.item{width:36px;height:36px}.hintbtn,.soundbtn,.back{min-height:30px;padding:3px 10px}.hintbtn{width:30px}.stage{width:min(100vw,calc((100dvh - 84px) * 16 / 9))}}.carved>div{position:relative}.carved b{position:absolute;right:104%;top:50%;transform:translateY(-50%);font-family:var(--display);font-size:1.4cqw;color:#2a1606;opacity:.85;text-shadow:0 1px 0 rgba(255,210,150,.4)}@media (orientation: portrait){.ending .frame{transform:translate(-67.5%,-50%)}}.arrow:before,.hook:before{content:"";position:absolute;top:-10px;right:-4px;bottom:-10px;left:-4px}.arrow.up:before{top:-14px;right:-4px;bottom:-2px;left:-4px}.arrow.down:before{top:-2px;right:-4px;bottom:-14px;left:-4px}@media (max-height: 500px){.card{padding:14px 18px;font-size:15px;line-height:1.35}.card h2{font-size:18px;margin-bottom:6px}.story{font-size:16px}.pieces{font-size:13px;margin:6px 0}.pieces li{margin-bottom:2px}.card .actions{margin-top:10px}}.ending .frame img{opacity:0;transition:opacity 1.6s ease}.ending .frame img.on{opacity:1}.ending .sweep,.ending .lampglow{opacity:0;transition:opacity 1.2s}.ending.sweeping .sweep,.ending.sweeping .lampglow{opacity:1}.finale-line{position:absolute;left:50%;bottom:9%;transform:translate(-50%,10px);width:min(86vw,760px);margin:0;padding:14px 20px;border-radius:12px;background:#03050eb8;font-size:clamp(17px,2.4vw,26px);font-style:italic;line-height:1.4;text-align:center;color:#f6eedb;opacity:0;transition:opacity .9s,transform .9s;z-index:2}.finale-line.on{opacity:1;transform:translate(-50%)}.finale-skip{position:absolute;right:16px;top:max(14px,env(safe-area-inset-top));z-index:3;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:6px 14px;font-size:14px}.endcard{width:min(600px,100%)}.kicker{margin:0 0 4px;font-family:var(--display);letter-spacing:.24em;text-transform:uppercase;font-size:13px;color:var(--amber)}.endcard h2{font-size:clamp(22px,3.2vw,30px);color:#f6eedb}.resolve{font-style:italic;font-size:17px;border-left:3px solid var(--amber);padding-left:14px}.board{margin-top:14px;padding:12px 14px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(201,162,74,.25)}.board h3{margin:0 0 8px;font-family:var(--display);font-weight:600;font-size:15px;letter-spacing:.08em;color:var(--amber)}.entry{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.entry label{display:flex;align-items:center;gap:8px;font-size:15px}.entry input{width:4.2em;padding:6px 8px;border-radius:6px;border:1px solid rgba(201,162,74,.6);background:#05070f;color:#f6eedb;font-family:var(--display);font-size:18px;letter-spacing:.25em;text-transform:uppercase}.entry .post,.actions.spread .share{border:1px solid #8a6a2a;background:linear-gradient(#e7c56d,#a37a2a);color:#24170a;border-radius:999px;padding:7px 14px;font-family:var(--display);font-size:13px;letter-spacing:.06em}.boardmsg:empty{display:none}.times{margin:8px 0 0;padding-left:22px;font-family:var(--display);font-size:15px;columns:2;column-gap:28px}.times li{break-inside:avoid;margin-bottom:3px}.times li b{display:inline-block;width:3.4em;letter-spacing:.12em}.times li.mine{color:var(--amber)}.actions.spread{justify-content:space-between}.journal{margin-top:14px;font-size:15px}.journal summary{cursor:pointer;color:var(--dim)}.journalbtn{margin-top:6px;background:none;border:0;color:var(--amber);text-decoration:underline;text-underline-offset:3px;font-size:15px}.title .overlay{position:fixed;z-index:5}.title .card{text-align:left}.fog{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.fog i{position:absolute;left:-50%;width:200%;height:34%;top:46%;background:radial-gradient(ellipse 30% 50% at 25% 50%,rgba(200,215,255,.13),transparent 70%),radial-gradient(ellipse 25% 45% at 70% 60%,rgba(200,215,255,.1),transparent 70%);animation:fogdrift 46s linear infinite}.fog i+i{top:58%;opacity:.8;animation-duration:70s;animation-direction:reverse}@keyframes fogdrift{0%{transform:translate(0)}to{transform:translate(25%)}}.shimmer{position:absolute;aspect-ratio:3 / 1;transform:translate(-50%,-50%);background:repeating-linear-gradient(0deg,transparent 0 6px,rgba(230,240,255,.22) 6px 7px);-webkit-mask-image:radial-gradient(ellipse at center,#000,transparent 70%);mask-image:radial-gradient(ellipse at center,#000,transparent 70%);mix-blend-mode:screen;animation:shimmer 2.6s ease-in-out infinite alternate}@keyframes shimmer{0%{opacity:.35;background-position:0 0}to{opacity:.9;background-position:0 4px}}.glow.fire{background:radial-gradient(circle,rgba(255,150,50,.55),rgba(255,90,20,.18) 40%,transparent 70%);animation:fireflicker .9s steps(6) infinite}@keyframes fireflicker{0%,to{opacity:.75}20%{opacity:1}45%{opacity:.6}70%{opacity:.95}}.glow.flicker:not(.warm){background:radial-gradient(circle,rgba(255,200,110,.6),rgba(255,150,50,.15) 45%,transparent 70%)}.glow.blink{background:radial-gradient(circle,rgba(255,240,200,1),rgba(255,220,150,.4) 40%,transparent 70%);animation:blink 3.4s infinite}@keyframes blink{0%,60%,to{opacity:.15}65%,80%{opacity:1}}@media (prefers-reduced-motion: reduce){.fog i,.shimmer,.glow{animation:none!important}}.ending:not(.sweeping) .lampglow,.ending:not(.sweeping) .sweep{display:none}.times li.small{list-style:none;font-family:var(--serif);columns:1}.times:has(li.small){columns:1;padding-left:0}@media (max-height: 500px){.endcard{width:min(760px,100%);display:grid;grid-template-columns:1.15fr 1fr;column-gap:16px;align-items:start}.endcard>.kicker,.endcard>h2,.endcard>.stats{grid-column:1 / -1}.endcard h2{font-size:19px;margin-bottom:2px}.endcard .stats{margin:0 0 6px;font-size:13px}.endcard .resolve{margin:0;font-size:13px;line-height:1.35}.endcard .board{margin-top:0;padding:8px 10px}.endcard .board h3{font-size:13px;margin-bottom:4px}.endcard .entry input{font-size:15px;padding:3px 6px}.endcard .times{font-size:13px}.endcard .actions.spread,.endcard .journal,.endcard .credit{grid-column:1 / -1;margin-top:8px}.endcard .journal{font-size:13px}}.clockhand{position:absolute;transform-origin:50% var(--pivot);transform:translate(-50%,calc(-1 * var(--pivot))) rotate(var(--a, 0deg));transition:transform .45s cubic-bezier(.3,1.3,.5,1);filter:drop-shadow(1px 2px 1.5px rgba(0,0,0,.55));pointer-events:none}.clockhand.hour{--pivot: 86%;height:6.2cqw}.clockhand.minute{--pivot: 94.5%;height:8.3cqw}.lever{position:absolute;left:50%;width:70%;height:52%;transform:translate(-50%);border:0;padding:0;background:transparent;cursor:pointer}.lever.up{bottom:100%}.lever.down{top:100%}.win .strip{top:-100%;height:300%}.cell{display:block;width:100%;height:100%;object-fit:cover;min-height:0;padding:0}.carving{position:absolute;height:10.5%;transform:translate(-50%,-50%);mix-blend-mode:multiply;opacity:.9;pointer-events:none}.lock .win{top:0;right:0;bottom:0;left:0;border-radius:2px}.mirror{border:0!important;background:none!important;box-shadow:none!important;width:9%}.mirror img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(2px 4px 4px rgba(0,0,0,.6));transition:transform .3s ease;pointer-events:none}.mirror.m1 img{transform:rotate(90deg)}.mirror i{display:none}img.decoy{width:7%;height:auto;aspect-ratio:auto;border:0;border-radius:0;background:none;box-shadow:none;filter:drop-shadow(2px 4px 4px rgba(0,0,0,.6))}img.decoy.lit{filter:drop-shadow(0 0 10px rgba(255,200,120,.7)) drop-shadow(2px 4px 4px rgba(0,0,0,.6))}.hook{border:0!important;width:7.5%}.hook img{width:100%;display:block;filter:drop-shadow(2px 4px 3px rgba(0,0,0,.6));animation:flutter 3s ease-in-out infinite;transform-origin:left top}.flaggrid{position:absolute;display:grid;grid-template-columns:repeat(4,1fr);gap:6% 8%;align-items:center}.flaggrid figure{margin:0;text-align:center}.flaggrid img{width:82%;filter:drop-shadow(1px 2px 2px rgba(60,30,0,.45))}.flaggrid figcaption{font-family:var(--display);font-size:2.4cqw;color:#3a240c;mix-blend-mode:multiply;opacity:.85}.chartnote{position:absolute;font-family:var(--hand);color:#2a1a0a;font-size:2.3cqw;line-height:1.35;mix-blend-mode:multiply;opacity:.88;transform:rotate(-1.2deg)}.chartnote p{margin:0 0 .3em}.drumlight{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .4s ease;pointer-events:none}.drumlight.on{opacity:1}.closeup{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;background:#000000d1;display:grid;place-items:center;cursor:pointer}.closeup .frame{position:relative;width:min(100vw,calc(100dvh * 16 / 9));aspect-ratio:16 / 9;container-type:inline-size}.closeup .frame img{width:100%;height:100%;display:block}.pagehand{position:absolute;left:22%;top:22%;width:60%;margin:0;font-family:var(--hand);font-size:3.1cqw;line-height:1.55;color:#23160a;mix-blend-mode:multiply;transform:rotate(-1deg)}.page{font-size:1.45cqw;line-height:1.5;color:#22150a;mix-blend-mode:multiply}.card,.card.paper,.card.dark,.endcard{background:url(/art/parchment.jpg) center / cover no-repeat;color:#24170b;border:0;border-radius:3px;box-shadow:0 0 0 1px #3c230a80,0 24px 60px #000000bf,inset 0 0 60px #5a320a59}.card h2,.card.paper h2,.endcard h2{color:#3a1f08}.card.dark h2{color:#7a1a10}.card .found,.card .small,.journal summary,.pieces span{color:#5a4128}.story,.resolve{border-left-color:#8a5a22}.kicker,.stats,.board h3{color:#7a4a14}.board{background:#5a3c1414;border-color:#5a3c1459}.times li.mine{color:#8a2a10}.entry input{background:#fff8e6b3;color:#24170b;border-color:#8a6a2a}.card .actions button,.entry .post,.actions.spread .share,.finale-skip{background:url(/art/plate.webp) center / 100% 100% no-repeat;border:0;border-radius:0;box-shadow:none;color:#2a1a06;text-shadow:0 1px 0 rgba(255,236,180,.6);font-family:var(--display);letter-spacing:.06em;padding:12px 26px;min-height:46px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.45))}.card .actions button:active,.entry .post:active,.actions.spread .share:active{transform:translateY(1px)}.seal{width:132px;height:132px;background:url(/art/seal.webp) center / contain no-repeat;box-shadow:none;border:0;color:transparent;filter:drop-shadow(0 8px 14px rgba(0,0,0,.6))}.seal:after{content:"Begin";display:block;margin-top:140px;color:#f6eedb;font-family:var(--display);letter-spacing:.2em;font-size:15px;text-shadow:0 1px 3px #000}.title .small{margin-top:40px}.hintbtn,.soundbtn,.back{border:0;border-radius:0;padding:0;color:transparent;font-size:0;background:center / contain no-repeat;filter:drop-shadow(0 2px 3px rgba(0,0,0,.6))}.hintbtn{width:40px;height:40px;background-image:url(/art/btn-hint.webp)}.soundbtn{width:40px;height:40px;background-image:url(/art/btn-sound.webp)}.soundbtn.off{filter:grayscale(1) brightness(.55) drop-shadow(0 2px 3px rgba(0,0,0,.6))}.back{width:64px;height:40px;background-image:url(/art/btn-back.webp)}.bar{background:url(/art/pouch-strip.jpg) center / cover no-repeat;min-height:96px;box-shadow:inset 0 8px 14px #0000008c;position:relative}.items{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);gap:14px}.item{width:72px;height:72px;border:0;border-radius:0;background:none;overflow:visible;transition:transform .15s,filter .15s}.item img{object-fit:contain;filter:drop-shadow(0 3px 3px rgba(0,0,0,.6))}.item.held{transform:translateY(-8px) scale(1.12);filter:brightness(1.25)}.stage{width:min(100vw,calc((100dvh - 150px) * 16 / 9))}.inhand{position:fixed;right:10px;bottom:6px;width:128px;height:128px;pointer-events:none;opacity:0;transform:translateY(40px);transition:opacity .25s,transform .25s;z-index:15}.inhand.on{opacity:1;transform:none}.inhand .handimg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.6))}.inhand .helditem{position:absolute;left:50%;top:22%;width:52%;transform:translate(-50%) rotate(-12deg);filter:drop-shadow(0 3px 4px rgba(0,0,0,.6))}.follow{position:fixed;left:0;top:0;width:58px;pointer-events:none;z-index:50;display:none;filter:drop-shadow(0 4px 5px rgba(0,0,0,.6))}@media (pointer: fine){.follow.on{display:block}.inhand{display:none}}.caption,.finale-line{background:none;border:0;text-shadow:0 1px 2px #000,0 0 12px rgba(0,0,0,.9)}.caption:before,.finale-line:before{content:"";position:absolute;top:-20px;right:-40px;bottom:-20px;left:-40px;z-index:-1;background:radial-gradient(ellipse at center,rgba(0,0,0,.6),transparent 70%)}.hot:hover,.hot:focus-visible{outline:none!important;background:none!important}.hot{cursor:pointer}@media (max-height: 500px){.bar{min-height:64px}.item{width:52px;height:52px}.stage{width:min(100vw,calc((100dvh - 100px) * 16 / 9))}.hintbtn,.soundbtn{width:32px;height:32px}.back{width:52px;height:32px}}.lock .cell{object-fit:cover;object-position:center;transform:scale(1.5)}.lock .strip{display:grid;grid-template-rows:repeat(3,1fr)}.lock .strip>img{overflow:hidden}.carving{display:none}.carved2{position:absolute;height:9.5%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;background:linear-gradient(#0e0602,#2a1607);-webkit-mask:var(--m) center / contain no-repeat;mask:var(--m) center / contain no-repeat;-webkit-mask-mode:luminance;mask-mode:luminance;opacity:.92;filter:drop-shadow(0 1.5px 0 rgba(255,214,160,.4)) drop-shadow(0 -1px 0 rgba(0,0,0,.6))}.entry input{background:transparent!important;border:0!important;border-bottom:2px solid rgba(60,35,10,.7)!important;border-radius:0!important;font-family:var(--hand)!important;font-size:24px!important;color:#1e1206!important;letter-spacing:.3em;width:4.6em;padding:0 4px!important;outline:none}.entry label{font-family:var(--hand);font-size:17px}.times{font-family:var(--hand)}.bar{display:grid;grid-template-columns:72px 1fr 72px;align-items:center}.bar .back{grid-column:1}.items{position:static;transform:none;grid-column:2;justify-content:center;overflow-x:auto;max-width:100%}@media (max-width: 600px){.bar{grid-template-columns:56px 1fr 8px}.item{width:54px;height:54px}.items{gap:8px}.inhand{width:92px;height:92px;bottom:104px}}.panarrow{display:none}@media (orientation: portrait) and (max-width: 760px){.chartnote{left:35.5%!important;width:29%!important;height:auto!important}.stagewrap{position:relative;display:block;overflow:hidden;touch-action:none}.stage{position:absolute;left:0;top:0;height:100%;width:auto;aspect-ratio:16 / 9;overflow:hidden}.caption{top:auto;bottom:3%;left:var(--cap-x, 50%);width:var(--cap-w, 88%);font-size:16px}.stagewrap.pans .panarrow{display:block;position:absolute;top:50%;width:44px;height:44px;margin-top:-22px;border:0;padding:0;background:url(/art/btn-back.webp) center / 80% no-repeat;opacity:.55;filter:drop-shadow(0 2px 4px rgba(0,0,0,.8));animation:nudge 2.4s ease-in-out infinite;z-index:4;pointer-events:none}.panarrow.left{left:4px}.panarrow.right{right:4px;transform:scaleX(-1)}.stagewrap.at-left .panarrow.left,.stagewrap.at-right .panarrow.right{display:none!important}}@keyframes nudge{0%,to{opacity:.35}50%{opacity:.75}}.hot,.hot:hover,.hot:focus,.hot:focus-visible,.hot:active{background:none!important;border:0!important;outline:none!important;box-shadow:none!important}.menubtn{width:40px;height:40px;border:0;padding:0;background:url(/art/btn-menu.webp) center / contain no-repeat;filter:drop-shadow(0 2px 3px rgba(0,0,0,.6))}.card.menu{width:min(360px,100%);text-align:center}.menulist{display:grid;gap:8px;margin-top:8px}.menulist button{background:url(/art/plate.webp) center / 100% 100% no-repeat;border:0;color:#2a1a06;text-shadow:0 1px 0 rgba(255,236,180,.6);font-family:var(--display);letter-spacing:.06em;font-size:15px;padding:12px 20px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.45))}@media (max-height: 500px){.menulist{grid-template-columns:1fr 1fr}.menubtn{width:32px;height:32px}}.puzzle button:focus,.hots button:focus,.item:focus{outline:none}.puzzle button:focus-visible,.item:focus-visible{filter:brightness(1.25)}.item img{filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.7))}.glints{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2}.beam{z-index:2}.glint{position:absolute;width:2.6%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(255,250,230,.95),rgba(255,210,130,.5) 35%,transparent 70%);mix-blend-mode:screen}.plaque{display:grid;place-items:center;flex:0 0 auto;width:min(340px,78vw);aspect-ratio:3.93;background:url(/art/plaque-credit.webp) center / contain no-repeat;filter:drop-shadow(0 8px 14px rgba(0,0,0,.7));text-decoration:none;transition:filter .2s}.plaque span{font-family:var(--display);font-size:clamp(14px,1.6vw,18px);letter-spacing:.14em;text-transform:uppercase;color:#3b2508;text-shadow:0 1px 0 rgba(255,236,180,.55),0 -1px 0 rgba(0,0,0,.35)}.plaque:hover{filter:drop-shadow(0 8px 14px rgba(0,0,0,.7)) brightness(1.12)}@media (max-height: 500px){.plaque{width:230px}.plaque span{font-size:12px}}
