@font-face{font-family:Forum;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/forum.woff2)format("woff2")}@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/rubik-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/rubik-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#16100c;--ink-2:#21180f;--ink-3:#2e2115;--line:#4a3623;--paper:#f0e3c6;--paper-dim:#b9a684;--gold:#e6b962;--gold-dim:#8f6c2c;--wine:#a63d3d;--green:#7bbf7b;--display:"Forum", Georgia, "Times New Roman", serif;--text:"Rubik", "Segoe UI", Roboto, system-ui, -apple-system, sans-serif;--top-inset:0px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--ink);height:100%;color:var(--paper);font-family:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0}body{background-image:radial-gradient(120% 80% at 50% 0%, #35251a 0%, var(--ink) 62%)}h1,h2,h3{font-family:var(--display);letter-spacing:.01em;margin:0;font-weight:400}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}a{color:var(--gold)}img{max-width:100%;display:block}#app{max-width:560px;height:100dvh;padding-top:var(--top-inset);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.scroll{min-height:0;padding:4px 14px calc(env(safe-area-inset-bottom) + 20px);scrollbar-width:thin;flex:1;overflow:hidden auto}.page-head,.home-head,.scene-head{align-items:center;gap:10px;min-height:46px;padding:10px 14px 8px;display:flex}.page-title{flex:1;min-width:0}.page-title small,.brand small{color:var(--paper-dim);white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.page-title h1,.brand h1{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(18px,5.2vw,24px);line-height:1.15;display:-webkit-box;overflow:hidden}.brand{flex:1;min-width:0}.round{background:var(--ink-3);border:1px solid var(--line);border-radius:50%;flex:none;width:38px;height:38px;font-size:22px;line-height:1}.round.ghost{background:0 0;border-color:#0000}.wallet{flex:none;gap:6px;display:flex}.purse{background:var(--ink-2);border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:4px 8px 4px 6px;font-size:12px;display:inline-flex}.purse b{font-weight:600}.purse.coin b{color:var(--gold)}.purse.gem b{color:#8fd0ff}.purse.lens b{color:var(--paper)}.icon{image-rendering:pixelated;background-image:url(/assets/items.png);background-repeat:no-repeat;flex:none;display:inline-block}.icon.inline-mark{vertical-align:-4px;margin-left:4px}.home-art{border:1px solid var(--line);background:#241a12 url(/assets/bg/cover.jpg) 50%/cover no-repeat;border-radius:16px;height:clamp(120px,26vh,220px);margin:0 14px;box-shadow:inset 0 -40px 60px -30px #0c0805}.home-body{min-height:0;padding:12px 14px calc(env(safe-area-inset-bottom) + 18px);flex:1;overflow-y:auto}.lead{color:var(--paper-dim);margin:0 0 14px;font-size:14px;line-height:1.5}.big{text-align:left;border:1px solid var(--gold-dim);background:linear-gradient(135deg,#7a4a1d,#56320f);border-radius:14px;width:100%;padding:14px 16px;display:block;box-shadow:0 6px 18px -10px #000}.big small{color:#f0d6a8;font-size:12px;display:block}.big span{font-family:var(--display);font-size:21px}.big.locked{background:var(--ink-2);border-color:var(--line)}.tiles{grid-template-columns:1fr 1fr;gap:10px;margin:14px 0;display:grid}.tile{text-align:left;background:var(--ink-2);border:1px solid var(--line);border-radius:12px;padding:12px}.tile b{font-family:var(--display);font-size:17px;display:block}.tile span{color:var(--paper-dim);font-size:12px}.wide-btn{text-align:center;background:var(--gold-dim);border:1px solid var(--gold);color:#fff5e0;border-radius:12px;width:100%;margin-top:10px;padding:12px 14px;font-size:14px;display:block}.wide-btn.ghost{background:var(--ink-2);border-color:var(--line);color:var(--paper)}.card{background:var(--ink-2);border:1px solid var(--line);border-radius:14px;margin:10px 0;padding:14px}.card h2{font-size:20px}.card h3{margin-bottom:6px;font-size:16px}.hint{color:var(--paper-dim);margin:6px 0;font-size:13px;line-height:1.5}.hint.small{font-size:12px}.hint.done{color:var(--green)}.card.room.locked{opacity:.72}.lock{font-family:var(--text);color:var(--wine);vertical-align:middle;font-size:11px}.scenes{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0;display:grid}.scene-tile{text-align:left;background:var(--ink-3);border:1px solid var(--line);border-radius:10px;padding:10px}.scene-tile.off{opacity:.5}.scene-tile b{margin-bottom:4px;font-size:13px;font-weight:500;display:block}.stars{color:var(--gold);letter-spacing:1px;font-size:13px}.stars .dim,.stars.dim{color:var(--line)}.stars.new{color:var(--green);letter-spacing:0;font-size:11px}.works h3{font-size:14px}.work-row{gap:6px;margin:6px 0 8px;display:flex}.work-dot{background:var(--line);border-radius:3px;width:18px;height:6px}.work-dot.done{background:var(--gold)}.scene-screen{overflow:hidden}.timer{text-align:right;flex:none}.timer b{font-family:var(--display);color:var(--gold);font-size:20px;display:block}.timer b.over{color:var(--wine)}.timer small{color:var(--paper-dim);font-size:11px}.canvas-wrap{border:1px solid var(--line);background:#140f0c;border-radius:12px;flex:1;min-height:0;margin:0 10px;position:relative;overflow:hidden}.canvas-wrap canvas{touch-action:none;width:100%;height:100%;display:block}.canvas-wrap.shake{animation:.38s shake}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}50%{transform:translate(6px)}80%{transform:translate(-3px)}}.target-bar{padding:10px 12px calc(env(safe-area-inset-bottom) + 10px);flex:none;align-items:stretch;gap:8px;display:flex}.targets{scrollbar-width:thin;flex:1;gap:6px;min-width:0;display:flex;overflow:auto hidden}.target{background:var(--ink-2);border:1px solid var(--line);border-radius:10px;flex-direction:column;flex:none;align-items:center;gap:2px;width:62px;padding:6px 3px;transition:opacity .2s,border-color .2s;display:flex}.target span{text-align:center;color:var(--paper-dim);font-size:9.5px;line-height:1.15}.target.found{opacity:.38;border-color:var(--green)}.target.found span{text-decoration:line-through}.lens-btn{background:var(--gold-dim);border:1px solid var(--gold);color:#fff5e0;border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:58px;display:flex}.lens-btn b{margin-top:2px;font-size:13px}.card.clue{background:linear-gradient(135deg,#3a2a17,#241a10);font-style:italic}.option{text-align:left;background:var(--ink-3);border:1px solid var(--line);border-radius:10px;width:100%;margin-top:6px;padding:10px 12px;font-size:14px;display:block}.option.picked{border-color:var(--gold);background:#4a3418}.card.offer.owned{opacity:.7}.row{gap:8px;margin-top:10px;display:flex}.row button{background:var(--gold-dim);border:1px solid var(--gold);color:#fff5e0;border-radius:10px;flex:1;padding:11px;font-size:14px}.row button.ghost{background:var(--ink-3);border-color:var(--line);color:var(--paper)}.leaders{margin:0;padding:0;list-style:none}.leaders li{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:9px 12px;display:flex}.leaders li.me{background:#33240f;border-radius:8px}.leaders .place{width:26px;color:var(--paper-dim);font-size:13px}.leaders .who{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.leaders .mark{color:var(--gold);font-size:10px;font-weight:400}.leaders .score{color:var(--gold);font-variant-numeric:tabular-nums}.switch{align-items:center;gap:10px;padding:8px 0;font-size:15px;display:flex}.switch input{width:20px;height:20px;accent-color:var(--gold)}.card.offline{text-align:center;margin:auto 14px}.overlay{z-index:40;opacity:1;background:#0a0705b8;justify-content:center;align-items:center;padding:18px;animation:.16s fade;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.overlay.closing{opacity:0;transition:opacity .16s}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{background:var(--ink-2);border:1px solid var(--line);width:min(420px,100%);max-height:86dvh;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:16px;overflow-y:auto}.sheet h2{margin-bottom:8px;font-size:22px}.sheet p{color:var(--paper-dim);margin:6px 0;font-size:14px;line-height:1.5}.sheet p.good{color:var(--green)}.result-stars{text-align:center;color:var(--gold);letter-spacing:4px;margin:6px 0;font-size:30px}.result-time{text-align:center}.result-list{margin:12px 0 0;padding:0;list-style:none}.result-list li{border-bottom:1px solid var(--line);justify-content:space-between;padding:8px 0;font-size:14px;display:flex}.result-list b{color:var(--gold)}.toast{left:50%;bottom:calc(18px + env(safe-area-inset-bottom));pointer-events:none;z-index:60;text-align:center;background:var(--ink-3);border:1px solid var(--line);border-radius:12px;max-width:min(460px,100% - 28px);padding:11px 16px;font-size:14px;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px -14px #000}.toast-good{border-color:var(--green)}.toast-bad{border-color:var(--wine)}.offline-bar{z-index:30;border-bottom:1px solid var(--wine);background:#4a1e1e;align-items:center;gap:10px;padding:8px 14px;font-size:13px;display:flex;position:sticky;top:0}.offline-bar span{flex:1;min-width:0}.offline-bar button{background:var(--wine);color:#fff;border:1px solid #d06a6a;border-radius:8px;flex:none;padding:5px 12px}.bad-note{color:#f0a6a6}@media (prefers-reduced-motion:reduce){.canvas-wrap.shake,.overlay{animation:none}}
