*{box-sizing:border-box}body,html{margin:0;height:100%;background:#0b0809;color:#f4ead2;font-family:Comic Sans MS,Bangers,system-ui,sans-serif}.stage{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px}.frame{position:relative;width:min(100vw - 24px,(100vh - 70px) * 16/9);aspect-ratio:16/9;border:4px solid #000;box-shadow:0 0 0 2px #f4ead2,0 20px 60px #000;overflow:hidden;border-radius:6px}.game{width:100%;height:100%;display:block}.slots{position:absolute;bottom:12px;right:12px;display:flex;gap:8px}.slots .combine{align-self:center;padding:6px 10px;font-size:13px;background:rgba(20,12,6,.85);color:#ffd9a0;border:1px solid #a8743a;border-radius:6px;cursor:pointer;animation:dread-pulse 1.2s ease-in-out infinite alternate}@keyframes dread-pulse{to{box-shadow:0 0 12px rgba(255,190,110,.7)}}.slots[hidden]{display:none}.slot{width:clamp(38px,5vw,58px);aspect-ratio:1;background:rgba(20,14,11,.75);border:3px solid #000;box-shadow:0 0 0 2px #f4ead2;border-radius:6px;display:grid;place-items:center}.slot img{width:80%;animation:pop2 .35s ease-out}.prompt{bottom:14%;background:#000;padding:6px 14px;border-radius:999px;border:2px solid #f4ead2;font-weight:700;animation:fadein .15s}.prompt,.toast{position:absolute;left:50%;transform:translateX(-50%)}.toast{top:16px;background:#fffbe9;color:#111;border:3px solid #000;padding:10px 20px;border-radius:14px;box-shadow:5px 5px 0 #000;font-weight:800;font-size:clamp(15px,1.7vw,22px);line-height:1.3;max-width:min(60%,100% - 2 * min(260px,30%) - 40px);text-align:center;z-index:7;pointer-events:none;animation:pop .25s ease-out,fadeout .5s ease-in 3.2s forwards}.banner{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(28px,6vw,72px);font-weight:900;color:#ffd84a;-webkit-text-stroke:3px #000;text-shadow:6px 6px 0 #000;animation:pop2 .5s ease-out}.banner,.fade{pointer-events:none}.fade{position:absolute;inset:0;background:#000;transition:opacity .45s}.help{opacity:.6;font-size:13px;margin:0}kbd{display:inline-block;min-width:1.5em;padding:0 .35em;margin-right:.4em;border:solid;border-width:2px 2px 3px;border-radius:5px;font:800 .8em/1.3 system-ui,sans-serif;text-align:center}.frame{--threat:0}.vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent calc(58% - var(--threat) * 18%),rgba(60,0,0,calc(var(--threat) * .55)) 80%,rgba(0,0,0,.75) 100%)}.pickup-card{position:absolute;right:12px;bottom:calc(clamp(38px, 5vw, 58px) + 28px);display:flex;gap:10px;align-items:center;max-width:300px;background:#fffbe9;color:#111;border:3px solid #000;border-radius:12px;box-shadow:4px 4px 0 #000;padding:8px 12px 8px 8px;animation:slidein .3s ease-out,fadeout .4s ease-in 2.2s forwards;z-index:3}.pickup-card img{width:54px;height:54px;object-fit:contain}.pickup-card b{display:block}.pickup-card span{font-size:13px}.phone-tab{right:12px;bottom:calc(clamp(38px, 5vw, 58px) + 26px);display:flex;flex-direction:column;align-items:center;gap:2px;background:#15121c;border:3px solid #000;box-shadow:0 0 0 2px #f4ead2,3px 4px 0 #000;border-radius:12px;padding:5px;cursor:pointer;z-index:4;animation:slidein .3s ease-out}.phone-tab[hidden]{display:none}.phone-tab img{width:clamp(30px,3.4vw,42px);aspect-ratio:314/600;object-fit:contain;filter:drop-shadow(2px 3px 0 #000)}.phone-tab{position:absolute}.phone-tab:focus-visible img,.phone-tab:hover img{transform:rotate(-6deg) scale(1.06)}.phone-tab kbd{margin:0;font-size:11px}.phone-tab.fresh{animation:slidein .3s ease-out,phoneGlow 1.6s ease-in-out infinite}.phone-dot{position:absolute;top:2px;right:2px;width:12px;height:12px;border-radius:50%;background:#ff5a3c;border:2px solid #000}@keyframes phoneGlow{50%{box-shadow:0 0 0 2px #ffd84a,0 0 16px 4px #ffd84a88,3px 4px 0 #000}}@media (pointer:coarse){.phone-tab kbd{display:none}}.phone{position:absolute;right:14px;bottom:calc(clamp(38px, 5vw, 58px) + 22px);width:min(260px,30%);aspect-ratio:314/600;max-height:calc(100% - clamp(38px, 5vw, 58px) - 36px);z-index:5;color:#eae4f5;font-family:system-ui,sans-serif;font-size:clamp(10px,1.05vw,13px);transform:translateX(calc(100% + 30px));opacity:0;visibility:hidden;transition:transform .32s cubic-bezier(.2,1.1,.4,1),opacity .2s,visibility 0s .32s}.phone.open{transform:none;opacity:1;visibility:visible;transition:transform .32s cubic-bezier(.2,1.1,.4,1),opacity .2s}.phone.closeup.open{right:50%;bottom:50%;width:min(300px,34%);transform:translate(50%,50%) rotate(-2deg)}.phone-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);z-index:5;animation:fadein .3s}.phone-frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(5px 7px 0 #000)}.phone-screen{position:absolute;left:8.9%;right:8.9%;top:10.3%;bottom:9.3%;display:flex;flex-direction:column;background:linear-gradient(#1b1726,#0f0c16);border-radius:6px;overflow:hidden}.phone-closeup-hint{position:absolute;top:100%;left:-20%;right:-20%;margin:10px 0 0;text-align:center;font-size:15px;color:#f4ead2;text-shadow:0 2px 0 #000}.app-bar,.phone-closeup-hint{font-family:Comic Sans MS,system-ui,sans-serif}.app-bar{display:flex;align-items:center;gap:6px;padding:6px 8px;background:#ff8a1f;color:#1a0d00;border-bottom:2px solid #000;font-size:1.15em}.app-bar img{width:1.9em;border-radius:6px;border:2px solid #000}.app-bar b{flex:1 1}.phone-close{background:#000;color:#fff;border:0;border-radius:50%;width:1.9em;height:1.9em;cursor:pointer;font-size:.9em}.app-body{flex:1 1;overflow-y:auto;padding:8px;scrollbar-width:thin}.app-nav{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:3px;gap:3px;padding:4px;background:#0a0810;border-top:2px solid #000}.app-nav button{display:flex;flex-direction:column;align-items:center;background:#221c30;color:#c9c1d8;border:2px solid #000;border-radius:8px;padding:3px 0 2px;font-size:.8em;font-weight:700;cursor:pointer}.app-nav button img{width:62%;max-width:34px}.app-nav button.on{background:#ff8a1f;color:#1a0d00}.up{color:#3ddc84}.down{color:#ff5a5a}.coin-head{display:flex;justify-content:space-between;align-items:baseline;font-size:1.15em}.coin-head small{font-size:.7em;opacity:.8}.price-line{width:100%;height:5.5em;margin:4px 0;background:repeating-linear-gradient(#0000 0 24%,#ffffff10 24% 25%);border-radius:6px}.curve{position:relative;height:1.5em;background:#2a2338;border-radius:999px;overflow:hidden;border:1px solid #000}.curve span{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#ff8a1f,#ffd84a)}.curve em{position:relative;display:block;text-align:center;font-style:normal;font-weight:800;font-size:.85em;line-height:1.75em;color:#fff;text-shadow:0 1px 2px #000}.metrics{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;margin:6px 0}.metrics div{background:#221c30;border-radius:6px;padding:3px 6px;border:1px solid transparent}.metrics div.alert{border-color:#ff5a5a;background:#3a1820}.metrics dt{font-size:.75em;opacity:.7}.metrics dd{margin:0;font-weight:800;font-size:1.05em}.metrics small{display:block;font-size:.75em;color:#ffb3b3}.metrics div:not(.alert) small{color:#9b93ab}.caption{margin:4px 0 6px;line-height:1.3;font-weight:600}.feed ul,.trades{list-style:none;margin:0;padding:0}.trades li{display:grid;grid-template-columns:1fr auto auto;grid-gap:2px 6px;gap:2px 6px;padding:3px 0;border-top:1px solid #ffffff14;font-size:.9em}.trades li.buy b{color:#3ddc84}.trades li.pull b,.trades li.sell b{color:#ff5a5a}.trades li.pull{background:#3a1820}.trades em{grid-column:1/-1;font-style:normal;font-size:.8em;color:#ffb3b3}.feed-title{margin:0 0 4px;font-weight:800}.feed button{width:100%;display:grid;grid-template-columns:auto 1fr auto;grid-gap:0 6px;gap:0 6px;text-align:left;background:#221c30;color:inherit;border:2px solid #000;border-radius:8px;padding:5px 6px;margin-bottom:4px;font:inherit}.feed button small{grid-column:1/-1;opacity:.6}.feed li.mine button{border-color:#ff8a1f;cursor:pointer}.notes h4{margin:0 0 4px;font-size:.75em;letter-spacing:.2em;text-transform:uppercase;color:#8a8496}.notes .goal{margin:0 0 4px;font-weight:800;font-size:1.15em}.notes ul{margin:0;padding-left:16px}.notes li{margin-bottom:4px}.phone .hint{color:#a9a2b8;margin:0 0 10px}.light{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px}.light p{margin:0}.torch{width:6.5em;height:6.5em;border-radius:50%;border:4px solid #000;background:#2a2338;cursor:pointer;display:grid;place-items:center}.torch img{width:70%;filter:grayscale(1) brightness(.7)}.torch.on{background:#ffe9a6;box-shadow:0 0 40px #ffe9a6}.torch.on img{filter:none}.torch:disabled{opacity:.4;cursor:not-allowed}.dialogue{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);width:min(82%,760px);display:flex;gap:14px;background:#fffbe9;color:#111;border:4px solid #000;border-radius:16px;box-shadow:6px 6px 0 #000;padding:12px;animation:rise .25s ease-out;z-index:5}.portrait{width:clamp(72px,12%,120px);aspect-ratio:1;object-fit:cover;border:3px solid #000;border-radius:10px;align-self:flex-start}.dialogue-body{flex:1 1}.dialogue-name{font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#9b2a1a}.npc-sniper .dialogue-name{color:#6b45d9}.npc-wash-trader .dialogue-name{color:#d1520f}.dialogue-text{margin:4px 0 10px;font-size:clamp(13px,1.6vw,17px);line-height:1.35}.choices{display:flex;flex-wrap:wrap;gap:8px}.choices button{font:inherit;font-weight:700;background:#111;color:#fffbe9;border:2px solid #000;border-radius:10px;padding:6px 12px;cursor:pointer}.choices button:hover:not(:disabled){background:#9b2a1a}.choices button:disabled{opacity:.45;cursor:not-allowed}.outside-dark{position:absolute;inset:0;background:#000 50%/cover;display:grid;place-content:end center;padding-bottom:8%;text-align:center;grid-gap:8px;gap:8px;text-shadow:0 2px 6px #000,0 0 2px #000;animation:fadein .5s,fadeout .7s ease-in 2.6s forwards;z-index:6;isolation:isolate}.outside-dark:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 69% 35%,#0000 0 8%,#000d 30%);z-index:-1}.outside-dark p{font-size:clamp(16px,2.4vw,26px);margin:0}.outside-dark em{opacity:.6}.endcard{position:absolute;inset:0;overflow:auto;background:radial-gradient(#1a1220,#070507);display:grid;place-items:center;animation:fadein 1s;z-index:7}.endcard-inner{width:min(92%,720px);padding:16px 0}.endcard h2{margin:0;font-size:clamp(26px,4.4vw,48px);color:#ffd84a;-webkit-text-stroke:2px #000;text-shadow:4px 4px 0 #000}.endcard .sub{margin:0 0 8px;opacity:.75}.endcard ol{margin:0 0 12px;padding-left:22px;font-size:clamp(12px,1.5vw,16px);line-height:1.35}.endcard li{margin-bottom:6px}.teaser{position:relative;height:clamp(90px,16vw,170px);border:3px solid #000;border-radius:12px;box-shadow:0 0 0 2px #f4ead2;background-size:cover;background-position:50%;display:flex;flex-direction:column;justify-content:flex-end;padding:10px 14px;text-shadow:0 2px 4px #000}.teaser span{font-size:12px;letter-spacing:.2em;text-transform:uppercase}.teaser b{font-size:clamp(20px,3vw,32px)}.teaser em{position:absolute;top:10px;right:14px;font-size:12px;opacity:.8}.endcard button{margin-top:12px;font:inherit;font-weight:800;background:#ffd84a;border:3px solid #000;border-radius:10px;padding:8px 18px;box-shadow:3px 3px 0 #000;cursor:pointer}@keyframes fadeout{to{opacity:0;visibility:hidden}}@keyframes slidein{0%{transform:translateX(30px);opacity:0}}@keyframes phonein{0%{transform:translateY(40px) scale(.85);opacity:0}}@keyframes zoomin{0%{transform:translate(50%,50%) scale(.3) rotate(-12deg);opacity:0}}@keyframes rise{0%{transform:translate(-50%,20px);opacity:0}}@keyframes pop{0%{transform:translateX(-50%) scale(.6);opacity:0}}@keyframes fadein{0%{opacity:0}}@keyframes pop2{0%{transform:scale(.6);opacity:0}}.gfx-error{position:absolute;inset:0;overflow:auto;background:radial-gradient(#1a1220,#070507);display:grid;place-items:center;z-index:50;text-align:center}.gfx-error-inner{width:min(92%,520px);padding:16px 0}.gfx-error h2{margin:0 0 8px;font-size:clamp(22px,4vw,36px);color:#ffd84a;-webkit-text-stroke:2px #000;text-shadow:3px 3px 0 #000}.gfx-error p{margin:0 0 8px;opacity:.85}.gfx-error ul{text-align:left;font-size:13px;opacity:.8;margin:8px auto;max-width:440px}.gfx-error code{display:block;font-size:11px;opacity:.5;margin:8px 0;word-break:break-word}.gfx-error button{margin-top:8px;font:inherit;font-weight:800;background:#ffd84a;border:3px solid #000;border-radius:10px;padding:8px 18px;box-shadow:3px 3px 0 #000;cursor:pointer}.dread{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 55%,rgba(0,0,0,.35) 100%),repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px);mix-blend-mode:multiply;opacity:calc(.35 + var(--threat) * .65);animation:dread-flicker 7s steps(1) infinite}.dread.soft{animation:none}@keyframes dread-flicker{0%,41%,44%,71%,to{background-color:transparent}42%{background-color:rgba(0,0,0,.45)}43%{background-color:rgba(0,0,0,.1)}72%{background-color:rgba(0,0,0,.3)}}.jump-scare{position:absolute;inset:0;z-index:9;pointer-events:none;overflow:hidden;animation:scare-shake .45s linear}.jump-scare-face{position:absolute;left:var(--ox);top:var(--oy);width:46%;aspect-ratio:1;object-fit:cover;border:6px solid #000;border-radius:12px;box-shadow:0 0 60px 20px rgba(160,0,0,.7);filter:contrast(1.35) saturate(1.3) brightness(.9);transform:translate(-50%,-50%) scale(.12);animation:scare-lunge .9s cubic-bezier(.1,.9,.2,1) forwards}.jump-scare-flash{position:absolute;inset:0;background:radial-gradient(ellipse at var(--ox) var(--oy),rgba(255,30,20,.85),rgba(90,0,0,.9) 70%);mix-blend-mode:hard-light;animation:scare-flash .9s ease-out forwards}.jump-scare.soft{animation:none}.jump-scare.soft .jump-scare-flash{background:radial-gradient(ellipse at center,transparent 40%,rgba(120,0,0,.6));mix-blend-mode:normal}@keyframes scare-lunge{0%{transform:translate(-50%,-50%) scale(.12);opacity:0}8%{opacity:1}22%{left:50%;top:50%;transform:translate(-50%,-50%) scale(1.9) rotate(-3deg)}70%{left:50%;top:50%;transform:translate(-50%,-50%) scale(2.05) rotate(2deg);opacity:1}to{left:50%;top:50%;transform:translate(-50%,-50%) scale(2.3);opacity:0}}@keyframes scare-flash{0%{opacity:0}6%{opacity:1}14%{opacity:.25}20%{opacity:.9}to{opacity:0}}@keyframes scare-shake{0%,to{transform:none}20%{transform:translate(-14px,8px)}40%{transform:translate(12px,-10px)}60%{transform:translate(-8px,-6px)}80%{transform:translate(6px,4px)}}.dialogue.comic{background:transparent;border:0;box-shadow:none;padding:0;align-items:flex-end;gap:18px}.comic-panel{position:relative;flex:0 0 clamp(96px,17%,150px);background:#fffbe9;border:4px solid #000;box-shadow:6px 6px 0 #000;transform:rotate(-2deg);padding:6px 6px 0}.comic-panel .portrait{width:100%;border-radius:0;border-width:3px;filter:contrast(1.15)}.comic-panel .dialogue-name{position:relative;margin:-14px -14px 6px 10px;background:#ffd23f;border:3px solid #000;padding:2px 8px;font-size:clamp(11px,1.3vw,14px);transform:rotate(2deg);box-shadow:3px 3px 0 #000}.dialogue.comic .dialogue-body{display:flex;flex-direction:column;gap:10px}.bubble{position:relative;background:#fffbe9;border:4px solid #000;border-radius:28px;box-shadow:6px 6px 0 #000;padding:12px 18px;cursor:pointer}.bubble:after,.bubble:before{content:"";position:absolute;left:-26px;bottom:18px;border:14px solid transparent;border-right:22px solid #000}.bubble:after{left:-17px;bottom:21px;border-width:11px;border-right:18px solid #fffbe9}.bubble .dialogue-text{margin:0;font-family:Comic Neue,Comic Sans MS,Bangers,system-ui,sans-serif;font-weight:700}.bubble .ghost{visibility:hidden}.bubble-more{position:absolute;right:14px;bottom:4px;font-size:11px;animation:blink .8s steps(1) infinite}.choices.waiting{opacity:.35}.dialogue.comic.tense .bubble{border-radius:6px;background:#fff1e6;animation:panel-shake .42s linear 2}.dialogue.comic.tense .comic-panel{animation:panel-shake .42s linear 2;box-shadow:6px 6px 0 #6a0000}@keyframes panel-shake{0%,to{translate:0 0}25%{translate:-4px 2px}50%{translate:4px -2px}75%{translate:-2px -2px}}@keyframes blink{50%{opacity:0}}.nav-glyph{font-style:normal;font-weight:900;font-size:11px;line-height:22px;height:22px;display:block}.stats h4{margin:8px 0 4px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px;margin:0}.stat-grid div{background:rgba(255,255,255,.06);border-radius:8px;padding:6px 8px}.stat-grid dt{font-size:10px;opacity:.7;text-transform:uppercase}.stat-grid dd{margin:0;font-size:20px;font-weight:900}.stat-grid .win dd{color:#3ddc84}.stat-grid .loss dd{color:#ff5a5a}.got-you,.recent-runs{list-style:none;margin:0;padding:0}.got-you li,.recent-runs li{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:12px}.recent-runs .escaped b{color:#3ddc84}.recent-runs .abandoned b{color:#ff5a5a}.chirps{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.chirp-post{background:rgba(255,255,255,.05);border-radius:8px;padding:7px 9px;font-size:12px;line-height:1.35}.chirp-post .who{margin:0 0 3px;font-size:11px}.chirp-post .who span{opacity:.6}.chirp-post p{margin:0}.chirp-post .launches{list-style:none;padding:0;margin:6px 0 0}.ranks ol{list-style:none;padding:0;margin:6px 0}.ranks li{display:flex;justify-content:space-between;padding:6px 8px;border-radius:6px;background:rgba(255,200,80,.12)}.app-nav.big{grid-template-columns:repeat(3,1fr);gap:5px;padding:6px}.app-nav.big button{padding:7px 0 5px;font-size:.95em;border-width:3px;border-radius:12px;box-shadow:0 4px 0 #000;transition:transform 80ms,box-shadow 80ms,background .12s}.app-nav.big button img{width:70%;max-width:46px}.app-nav.big button:hover{filter:brightness(1.15)}.app-nav.big button:active{transform:translateY(3px) scale(.96);box-shadow:0 1px 0 #000}.light-toggle{width:1.9em;height:1.9em;padding:2px;border:2px solid #000;border-radius:50%;background:#2a2236;cursor:pointer}.light-toggle img{width:100%;border:0;border-radius:0;opacity:.55}.light-toggle.on{background:#ffe066;box-shadow:0 0 8px #ffe066}.light-toggle.on img{opacity:1}.light-toggle:disabled{opacity:.4;cursor:not-allowed}.run-strip{display:flex;gap:10px;justify-content:center;margin:0;padding:3px 6px;font-size:.78em;font-weight:700;background:#120e1a;color:#c9c1d8;border-bottom:2px solid #000}.run-strip .win{color:#3ddc84}.run-strip .loss{color:#ff5a5a}.market{text-align:center;position:relative}.mcap-label{margin:4px 0 0;font-size:.8em;letter-spacing:.12em;font-weight:800;color:#c9c1d8}.mcap{margin:2px 0;font-family:Comic Sans MS,system-ui,sans-serif;font-size:1.75em;font-weight:900;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#3ddc84;text-shadow:0 0 10px rgba(61,220,132,.45)}.mcap-sub{margin:0 0 8px;font-size:.75em}.market.crashing .mcap,.market.dead .mcap,.mcap-sub.down{color:#ff4040;text-shadow:0 0 12px rgba(255,40,40,.7)}.sell-sol{width:92%;padding:12px 0;font-family:Comic Sans MS,system-ui,sans-serif;font-size:1.5em;font-weight:900;color:#fff;background:linear-gradient(#ff4b4b,#c40f0f);border:3px solid #000;border-radius:14px;box-shadow:0 6px 0 #000;cursor:pointer;animation:sellpulse 1.2s ease-in-out infinite;transition:transform 80ms,box-shadow 80ms}.sell-sol:active{transform:translateY(5px) scale(.97);box-shadow:0 1px 0 #000}.sell-sol:disabled{animation:none;background:#3a2a2a;color:#a88;cursor:default}@keyframes sellpulse{50%{transform:scale(1.04)}}.market.crashing{animation:crashshake .12s linear infinite}.market.crashing:after{content:"";position:absolute;inset:-8px;background:rgba(255,0,0,.28);pointer-events:none;animation:crashflash .35s steps(2) infinite}@keyframes crashshake{25%{transform:translate(-3px,2px)}75%{transform:translate(3px,-2px)}}@keyframes crashflash{50%{opacity:0}}.coin-mini{margin-top:10px;text-align:left}.dialogue.comic{width:min(92%,980px);gap:24px}.comic-panel{flex-basis:clamp(150px,min(28%,52vh),290px);margin-top:calc(-1 * clamp(24px, 8vh, 70px));padding:8px 8px 0;transform:rotate(-3deg) translateY(calc(-1 * clamp(10px, 4vh, 36px)));box-shadow:8px 8px 0 #000}.comic-panel .portrait{border-width:4px}.comic-panel .dialogue-name{font-size:clamp(16px,2.1vw,24px);padding:4px 12px;margin:-18px -18px 8px 8px}.bubble{padding:16px 24px}.bubble .dialogue-text{font-size:clamp(17px,2.3vw,24px);line-height:1.38}.dialogue.comic .choices{gap:10px}.dialogue.comic .choices button{min-height:52px;padding:10px 18px;font-size:clamp(15px,1.8vw,20px);border:3px solid #000;border-radius:14px;box-shadow:0 5px 0 #000;transition:transform 80ms,box-shadow 80ms,background .12s;touch-action:manipulation}.dialogue.comic .choices button kbd{margin-right:8px;padding:0 6px;background:#ffd23f;color:#111;border:2px solid #000;border-radius:6px}.dialogue.comic .choices button:hover:not(:disabled){background:#9b2a1a;transform:translateY(-2px);box-shadow:0 7px 0 #000}.dialogue.comic .choices button:focus-visible{outline:4px solid #ffd23f;outline-offset:2px;background:#9b2a1a}.dialogue.comic .choices button:active:not(:disabled){transform:translateY(4px) scale(.97);box-shadow:0 1px 0 #000;background:#ffd23f;color:#111}@media (max-height:480px){.dialogue.comic{bottom:8px;width:96%;gap:16px}.comic-panel{flex-basis:clamp(130px,22vw,190px)}.bubble{padding:10px 16px}.bubble .dialogue-text{font-size:16px}.dialogue.comic .choices button{min-height:48px;font-size:15px;padding:8px 14px}}.comic-panel{padding:14px 14px 4px}.bubble{padding:22px 30px}.dialogue.comic .dialogue-body{gap:16px}.dialogue.comic .choices{gap:14px 16px;padding:4px 6px 6px}@media (max-height:480px){.comic-panel{padding:10px 10px 2px}.bubble{padding:14px 20px}.dialogue.comic .choices{gap:10px 12px}}.dread-hud{position:absolute;inset:0;z-index:3;pointer-events:none}.dread-face{position:absolute;left:10px;top:50%;width:calc(6% + var(--near) * 16%);max-height:46%;aspect-ratio:1;object-fit:cover;border:4px solid #000;border-radius:50%;transform:translateY(-62%);opacity:calc(.15 + var(--near) * .85);filter:grayscale(calc(1 - var(--near))) contrast(1.4) brightness(calc(.35 + var(--near) * .6));box-shadow:0 0 calc(var(--near) * 50px) rgba(170,0,0,.85);animation:dread-breathe 1.6s ease-in-out infinite;transition:width .4s ease-out}.dread-hud.soft .dread-face{animation:none}@media (min-width:900px) and (hover:hover){.dread-face{opacity:calc(.45 + var(--near) * .55);filter:grayscale(calc(.7 - var(--near) * .7)) contrast(1.25) brightness(calc(.85 + var(--near) * .45))}}@keyframes dread-breathe{50%{transform:translateY(-62%) scale(1.06)}}.dread-text{position:absolute;right:12px;top:12%;margin:0;max-width:min(24%,260px);text-align:right;font-family:Courier New,monospace;font-weight:700;color:#e8d9c4;text-shadow:0 0 6px #000,2px 2px 0 #000;font-size:clamp(12px,1.4vw,18px);letter-spacing:.04em}.dread-text.t1{color:#f0b7a0}.dread-text.t2{color:#ff6a4d;font-size:clamp(14px,1.7vw,22px)}.dread-text.t3{color:#ff2a1a;font-size:clamp(16px,2.2vw,28px);animation:dread-jitter .12s steps(2) infinite}.dread-hud.soft .dread-text.t3{animation:none}@keyframes dread-jitter{50%{transform:translate(1px,-1px)}}.lockpad{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:8;background:#1a1410;color:#f4ead2;border:4px solid #000;box-shadow:0 0 0 2px #f4ead2,6px 6px 0 #000;border-radius:14px;padding:14px 20px;text-align:center;max-width:92%;max-height:92%;overflow:auto}.lockpad h3{margin:0 0 10px}.wheels{display:flex;gap:10px;justify-content:center}.wheel{display:flex;flex-direction:column;align-items:center;gap:4px;border:3px solid #000;border-radius:10px;background:#2b221b;padding:4px;min-width:52px}.wheel.sel{box-shadow:0 0 0 3px #ffd84a}.wheel b{font-size:clamp(16px,2.2vw,26px);min-width:2.2em;padding:4px 6px;background:#fffbe9;color:#111;border-radius:6px}.death-card button,.lock-actions button,.wheel button{font:inherit;font-weight:800;background:#ffd84a;color:#111;border:3px solid #000;border-radius:8px;cursor:pointer;min-height:34px;min-width:40px}.lock-actions{display:flex;gap:10px;justify-content:center;margin-top:12px}.lock-actions button{padding:4px 12px}.lockpad .hint{margin:8px 0 0;opacity:.8;font-size:13px}.battery{margin-left:auto;font-size:.9em;font-weight:700}.battery.low{color:#ff5a4a}.death-card{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(ellipse at center,rgba(70,0,0,.92),#000 75%);text-align:center;padding:16px;animation:fadein .4s}.death-card .share-preview{width:min(360px,70vw,40vh);height:auto}.death-card h2{margin:0;font-size:clamp(30px,6vw,72px);color:#ff3a2a;-webkit-text-stroke:2px #000;text-shadow:5px 5px 0 #000}.death-card p{margin:0;max-width:560px}.death-card dl{display:flex;gap:22px;margin:8px 0}.death-card dt{font-size:12px;opacity:.75}.death-card dd{margin:0;font-size:clamp(20px,3vw,34px);font-weight:900}.death-card button{padding:8px 22px}@media (max-height:480px){.dread-face{top:44%;max-height:40%}.dread-text{top:8%}.lockpad{padding:8px 12px}.wheel{min-width:42px}}.breath{position:absolute;left:50%;bottom:18%;transform:translateX(-50%);width:260px;padding:8px 10px;background:rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.25);border-radius:6px;pointer-events:none;text-align:center;color:#e8e0d0;font:600 12px/1.4 Courier New,monospace;letter-spacing:.08em}.breath i{display:block;height:6px;margin-top:6px;background:#b9e3ff;transition:width .1s linear}.frame canvas{filter:blur(var(--nvblur,0))}.touch-nv{display:none;position:absolute;right:14px;top:34%;flex-direction:column;gap:12px;z-index:40}@media (pointer:coarse){.touch-nv{display:flex}}.touch-nv button{width:58px;height:58px;border-radius:50%;border:2px solid rgba(220,255,220,.5);background:rgba(0,0,0,.55);color:#d8ffd8;font:700 13px/1 Courier New,monospace;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.touch-nv button.on{background:rgba(30,110,50,.75)}.touch-nv button.hold{width:72px;height:72px;border-color:rgba(185,227,255,.7);color:#b9e3ff}.touch-nv button.hold:active{background:rgba(60,110,160,.7)}@media (pointer:coarse){.breath{bottom:36%}}.lb{font-family:inherit;color:#f4ead2}.lb-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 12px}.lb-tabs button{text-transform:capitalize;background:#1c1712;color:#f4ead2;border:2px solid #000;border-radius:10px;padding:6px 14px;cursor:pointer;box-shadow:3px 3px 0 #000}.lb-tabs button.on{background:#ffd84a;color:#111}.lb-sep{width:12px}.lb-list{list-style:none;margin:0;padding:0}.lb-list li{display:grid;grid-template-columns:56px 1fr auto auto;grid-gap:12px;gap:12px;align-items:baseline;padding:8px 12px;border-bottom:1px solid rgba(244,234,210,.15)}.lb-list li:first-child .lb-rank{color:#ffd84a}.lb-rank{font-weight:700}.lb-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}.lb-seed{opacity:.55;font-size:.85em}.lb-note{opacity:.75}.lb-compact .lb-list li{grid-template-columns:40px 1fr auto;padding:4px 6px;font-size:13px}.lb-compact .lb-tabs button{padding:3px 8px;font-size:12px}.share-card{margin:14px auto;max-width:600px}.share-card img{width:100%;height:auto;border:3px solid #000;border-radius:12px}.share-actions{display:flex;gap:12px;justify-content:center}.share-actions a{color:#ffd84a}.share-x{background:#000;color:#fff!important;padding:8px 16px;border-radius:999px;text-decoration:none}.share-wait{opacity:.7}@media (pointer:coarse) and (orientation:landscape){body,html{overflow:hidden;overscroll-behavior:none}.stage{position:fixed;inset:0;min-height:0;height:100dvh;padding:0;overflow:hidden;touch-action:none}.frame{flex-shrink:0;width:max(100dvw,100dvh * 16/9);border:0;border-radius:0;box-shadow:none}.stage>.help{display:none}.frame{--crop-y:max(0px,(max(100dvw,100dvh * 16/9) * 9/16 - 100dvh)/2);--crop-x:max(0px,(max(100dvw,100dvh * 16/9) - 100dvw)/2)}.frame .toast{top:calc(var(--crop-y) + max(8px, env(safe-area-inset-top)));max-width:min(70%,100dvw - 2 * min(220px,26%))}.frame .prompt{bottom:calc(var(--crop-y) + 12%)}.frame .era-card{top:calc(var(--crop-y) + 18%)}.frame .objective{top:calc(var(--crop-y) + max(8px, env(safe-area-inset-top)))}.frame .objective,.frame .phone-tab{left:calc(var(--crop-x) + max(14px, env(safe-area-inset-left)))}.frame .phone-tab{right:auto;bottom:auto;top:calc(var(--crop-y) + max(8px, env(safe-area-inset-top)) + 44px);z-index:41}.frame .phone-backdrop,.frame .phone.open{z-index:45}}.era-card{position:absolute;left:50%;top:22%;transform:translateX(-50%);width:min(86%,760px);text-align:center;pointer-events:none;z-index:8;color:#f4ead2;text-shadow:0 0 18px #000,3px 3px 0 #000;animation:eraIn 1.1s ease-out,fadeout .9s ease-in 3.3s forwards}.era-card small{display:block;letter-spacing:.4em;text-transform:uppercase;font-weight:800;color:#c9302c;font-size:clamp(11px,1.3vw,16px)}.era-card h2{margin:4px 0 6px;font-size:clamp(26px,5.2vw,64px);font-weight:900;color:#ffd84a;-webkit-text-stroke:2px #000}.era-card p{margin:0 auto;max-width:34em;font-style:italic;font-size:clamp(12px,1.6vw,19px)}@keyframes eraIn{0%{opacity:0;letter-spacing:.2em;filter:blur(6px)}to{opacity:1;filter:blur(0)}}.notes .memos li b{display:block;color:#c9302c}.reveal{position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(ellipse at 50% 60%,#0000 20%,#000e 80%);animation:reveal-dark 3.4s ease-in forwards}@keyframes reveal-dark{0%{opacity:0}15%{opacity:.6}70%{opacity:1}to{opacity:.25}}.reveal-candles{position:absolute;left:50%;bottom:10%;transform:translateX(-50%);display:flex;gap:clamp(24px,7vw,90px)}.reveal-candle{width:10px;height:34px;background:linear-gradient(#e9dcc0,#b9a77f);border-radius:2px;position:relative}.reveal-candle:before{content:"";position:absolute;left:50%;top:-18px;width:10px;height:16px;margin-left:-5px;border-radius:50% 50% 40% 40%;background:radial-gradient(#fff7c0,#ff9a2a 60%,#ff4a0000);box-shadow:0 0 18px 6px #ff8a2a99;animation:inherit;animation-name:snuff;animation-duration:.3s;animation-fill-mode:forwards}.reveal-candle{animation:forwards .3s none}@keyframes snuff{to{opacity:0;transform:scaleY(.2);box-shadow:none}}.endcard .ending-tag{margin:0;letter-spacing:.2em;text-transform:uppercase;font-size:12px;opacity:.7}.endcard .ending-text{font-size:clamp(13px,1.7vw,18px);line-height:1.45;margin:6px 0 14px}.endcard.ending-sign{background:radial-gradient(#0f1f12,#030503)}.endcard.ending-sign h2{color:#6dff8a;animation:loop-flicker 2.4s steps(1) infinite}@keyframes loop-flicker{0%,92%{opacity:1}94%{opacity:.2}96%{opacity:1}98%{opacity:.4}}.endcard.ending-confess{background:radial-gradient(#3a2a18,#120c08);animation:lights-up 3s ease-out}@keyframes lights-up{0%{filter:brightness(.2)}to{filter:brightness(1)}}.memos .play{margin-right:6px;border:1px solid #f4ead2;background:#000a;color:inherit;border-radius:4px;cursor:pointer}.intro{position:absolute;inset:0;z-index:40;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.6em;padding:0 8%;text-align:center;background:radial-gradient(ellipse at 50% 60%,#1a0606,#000 75%);color:#f4ead2;cursor:pointer;animation:fadeout .7s ease-in 4.6s forwards}.intro small{letter-spacing:.4em;text-transform:uppercase;font-weight:800;color:#c9302c;font-size:clamp(11px,1.3vw,16px);opacity:0;animation:introLine .8s ease-out .1s forwards}.intro p{margin:0;font-size:clamp(15px,2.2vw,26px);text-shadow:3px 3px 0 #000;opacity:0;animation:introLine .9s ease-out forwards}.intro .l1{animation-delay:.3s}.intro .l2{animation-delay:1.5s}.intro .l3{animation-delay:2.7s;color:#ff6b5e}.intro em{margin-top:1.2em;font-size:12px;opacity:.55}@keyframes introLine{0%{opacity:0;transform:translateY(8px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}.objective{position:absolute;top:12px;left:14px;z-index:6;max-width:44%;padding:6px 12px;background:#0b0705d9;border:2px solid #f4ead2;border-radius:8px;color:#f4ead2;font-weight:800;font-size:clamp(11px,1.2vw,15px);box-shadow:3px 3px 0 #000;pointer-events:none;animation:goalIn .6s ease-out}.objective small{color:#ffd84a;text-transform:uppercase;letter-spacing:.2em;font-size:.75em;margin-right:6px}@keyframes goalIn{0%{opacity:0;transform:translateY(-8px)}}.card-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;align-items:center}.endcard .card-actions{justify-content:flex-start}.death-card button.share-x,.endcard button.share-x{background:#111;color:#fff;border-color:#f4ead2;padding:8px 14px}.nudge-toggle{display:block;font-size:11px;opacity:.75;margin:4px 0 8px;cursor:pointer}.share-wrap{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;position:relative}.share-preview{width:240px;height:auto;border:2px solid #000;border-radius:8px;box-shadow:3px 3px 0 #000}.share-note{font-size:13px;background:#ffd84a;color:#000;padding:2px 8px;border-radius:6px}.hints-btn{position:absolute;top:12px;right:14px;z-index:7;padding:6px 12px;background:#0b0705d9;border:2px solid #ffd84a;border-radius:8px;color:#ffd84a;font-weight:800;font-size:clamp(11px,1.2vw,15px);box-shadow:3px 3px 0 #000;cursor:pointer}.hints-btn kbd{margin-left:4px;font-size:.8em;opacity:.8}.quality-btn{position:absolute;top:52px;right:14px;z-index:7;padding:3px 8px;background:#0b0705b0;border:1px solid #f4ead280;border-radius:6px;color:#f4ead2;font-size:11px;cursor:pointer}.hints-book{position:absolute;inset:0;z-index:60;display:grid;place-items:center;background:#000a}.hints-book-inner{width:min(460px,90%);max-height:90%;overflow-y:auto;padding:16px 20px;background:#f3e7c4;color:#2a1c10;border:3px solid #2a1c10;border-radius:10px;box-shadow:6px 6px 0 #000}.hints-book-inner header{display:flex;justify-content:space-between;align-items:center}.hints-book-inner header button{background:none;border:0;font-size:20px;cursor:pointer;color:inherit}.hints .goal{font-weight:800;margin:6px 0 10px}.hints ol{padding-left:20px;display:grid;grid-gap:8px;gap:8px}.hints li button{padding:6px 10px;border:2px solid;border-radius:6px;background:#ffd84a;color:#2a1c10;font-weight:700;cursor:pointer}.hints li button:disabled{opacity:.4;cursor:default}.app-body .hints li button,.hints-foot{font-size:12px}.hints-foot{opacity:.75}.frame.lowq canvas{filter:none}.frame.lowq .dread,.frame.lowq .vignette{-webkit-backdrop-filter:none;backdrop-filter:none}.modal-outside{position:absolute;inset:0;z-index:5;background:transparent}.lockpad+.modal-outside,.modal-outside:has(+.lockpad){z-index:8}.modal-x:not(.phone-close){position:absolute;top:-14px;right:-14px;z-index:2;width:34px;height:34px;border-radius:50%;border:3px solid #000;background:#ffd84a;color:#111;font-weight:900;font-size:16px;line-height:1;cursor:pointer;box-shadow:2px 2px 0 #000}.phone-close.modal-x{min-width:30px;min-height:30px;font-size:18px;font-weight:900}.dialogue{overflow:visible}.hints-book-inner{position:relative;width:min(520px,92%);padding:22px 26px 18px 40px;background:linear-gradient(90deg,#00000026,#0000 18px),repeating-linear-gradient(#f3e7c4 0 26px,#e6d5a8 26px 27px);border:10px solid #5a2f17;border-left-width:18px;border-radius:6px 12px 12px 6px;box-shadow:inset 0 0 30px #8a5a2a55,0 0 0 3px #2a1408,8px 8px 0 #000;font-family:Georgia,Times New Roman,serif}.hints-book-inner h3{margin:0;font-family:inherit;letter-spacing:.08em;color:#5a2f17}.hints-book-inner .modal-x{top:-22px;right:-22px}.hints-book-inner .goal{font-style:italic}.hints li b{display:block;color:#7a3a12;font-size:.8em;text-transform:uppercase;letter-spacing:.08em}.hints-book-inner h4{margin:12px 0 4px;color:#5a2f17;border-bottom:1px solid #5a2f1755}.hints-all{padding-left:22px;display:grid;grid-gap:4px;gap:4px;font-size:13px}.hints-all>li>button{background:none;border:0;padding:2px 0;text-align:left;font:inherit;color:inherit;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.hints-all>li.done>button{opacity:.55}.hints-all>li.now>button{font-weight:700;color:#7a3a12}.hints-book-inner .modal-x{position:-webkit-sticky;position:sticky;float:right;top:0;right:0;margin:-10px -14px 0 8px}@media (pointer:coarse) and (orientation:landscape){.frame .hints-btn{top:calc(var(--crop-y) + max(8px, env(safe-area-inset-top)));min-height:40px}.frame .hints-btn,.frame .quality-btn{right:calc(var(--crop-x) + max(78px, env(safe-area-inset-right) + 64px));z-index:41}.frame .quality-btn{top:calc(var(--crop-y) + max(8px, env(safe-area-inset-top)) + 48px)}.frame .hints-book{position:fixed;z-index:70}.frame .hints-book-inner{max-height:calc(100dvh - 24px);width:min(560px,92dvw);font-size:15px}.frame .hints-book-inner button{min-height:36px}.frame .modal-outside{position:fixed}.frame .dialogue{bottom:calc(var(--crop-y) + 10px);z-index:42}.frame .lockpad{z-index:46}.frame .lockpad+.modal-outside,.frame .modal-outside:has(+.lockpad){z-index:45}.frame .modal-x{min-width:40px;min-height:40px}.frame .objective{max-width:calc(50dvw - var(--crop-x) - 150px)}.frame .hints-btn kbd{display:none}}.mp-frame{background:#0b0809 50%/cover no-repeat}.mp-scrim{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;gap:clamp(8px,1.6vw,18px);padding:clamp(14px,3vw,40px);background:linear-gradient(90deg,#000e,#000a 45%,transparent 75%);overflow:auto}.mp-logo{margin:0;font-size:clamp(30px,5.4vw,70px);line-height:.95;font-weight:900;color:#ffd84a;-webkit-text-stroke:3px #000;text-shadow:6px 6px 0 #000;transform:rotate(-2deg)}.mp-logo span{color:#ff8a3d}.mp-panel{background:#fffbe9;color:#111;border:3px solid #000;border-radius:14px;box-shadow:6px 6px 0 #000;padding:clamp(10px,1.6vw,18px)}.mp-home{width:min(380px,100%)}.mp-home h2,.mp-lobby h2{margin:0}.sub{margin:4px 0 10px;opacity:.75}.mp-actions{display:flex;gap:10px;flex-wrap:wrap}.mp-actions.col{flex-direction:column}.mp-btn{font:inherit;font-weight:800;font-size:clamp(14px,1.4vw,18px);color:#111;text-decoration:none;text-align:center;background:#ffd84a;border:3px solid #000;border-radius:10px;padding:8px 18px;box-shadow:3px 3px 0 #000;cursor:pointer;transition:transform .08s}.mp-btn:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 4px 0 #000}.mp-btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 #000}.mp-btn:disabled{opacity:.45;cursor:default}.mp-btn.big{font-size:clamp(18px,2vw,26px);padding:12px 22px}.mp-btn.small{padding:4px 12px;font-size:14px}.mp-btn.ghost{background:#fffbe9}.mp-btn.on{background:#7cf29a}.mp-field{display:flex;flex-direction:column;gap:4px;font-weight:800;margin-bottom:12px}.mp-field input,.mp-invite input,.mp-join input{font:inherit;border:3px solid #000;border-radius:8px;padding:6px 10px;background:#fff;min-width:0}.mp-join{display:flex;gap:8px}.mp-join input{flex:1 1}.mp-error,.mp-status{background:#000;color:#f4ead2;border:2px solid #ff7a7a;border-radius:999px;padding:6px 14px;font-weight:700;display:flex;gap:12px;align-items:center}.mp-status{border-color:#ffd84a}.mp-error a,.mp-error button{color:#ffd84a;background:none;border:0;font:inherit;font-weight:800;cursor:pointer}.mp-lobby{width:min(860px,100%);display:flex;flex-direction:column;gap:10px}.mp-lobby-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.mp-kicker{font-size:12px;font-weight:800;text-transform:uppercase;opacity:.6}.mp-code{font-size:clamp(26px,3.4vw,42px);letter-spacing:.12em;line-height:1}.mp-invite{display:flex;gap:6px;flex:1 1;max-width:420px}.mp-invite input{flex:1 1;font-size:13px}.mp-players{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:6px;gap:6px}.mp-players li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;border:2px solid #000;border-radius:8px;padding:5px 8px;background:#fff;font-size:14px}.mp-players li.empty{opacity:.4;border-style:dashed}.mp-players li.away{opacity:.6}.mp-players .dot{width:12px;height:12px;border-radius:50%;background:var(--tint,#ccc);border:2px solid #000}.mp-players em{font-size:11px;font-style:normal;background:#111;color:#f4ead2;border-radius:4px;padding:0 4px}.mp-players .role{width:100%;font-size:12px;opacity:.7}.mp-players .ready{font-size:11px;font-weight:800;opacity:.6}.mp-players .ready.on{opacity:1;color:#0a7a2c}.mp-roles{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:8px;gap:8px}.mp-role{font:inherit;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;background:#1a1220;color:#f4ead2;border:3px solid #000;border-radius:10px;padding:6px 6px 8px;box-shadow:3px 3px 0 #000;cursor:pointer}.mp-role img{width:70%;max-width:84px;border-radius:6px}.mp-role b{font-size:clamp(14px,1.5vw,18px);color:var(--tint)}.mp-role .ability{font-size:12px;font-weight:800}.mp-role small{font-size:11px;opacity:.7;line-height:1.2}.mp-role.picked{outline:3px solid var(--tint);outline-offset:-6px;transform:translateY(-3px)}.mp-role:disabled:not(.picked){opacity:.35;cursor:default}.mp-lobby-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.mp-countdown{font-weight:800;text-align:center}.mp-countdown b{font-size:1.6em;color:#c0392b}.mp-spectate{position:fixed;top:24px;left:50%;transform:translateX(-50%);background:#000;color:#ff7a7a;border:3px solid #ff7a7a;border-radius:999px;padding:6px 18px;font-weight:800;z-index:20}.mp-results{position:fixed;z-index:30}.mp-results table{width:100%;border-collapse:collapse;margin-bottom:8px}.mp-results td{padding:6px 8px;border-bottom:1px solid #f4ead233}.mp-results tr.me{color:#ffd84a}.mp-results .escaped{color:#7cf29a;font-weight:800}.mp-results .caught{color:#ff7a7a;font-weight:800}@media (max-width:700px){.mp-roles{grid-template-columns:repeat(3,1fr)}}.mp-banner{position:fixed;top:24px;left:50%;transform:translateX(-50%);background:#fffbe9;color:#111;border:3px solid #000;border-radius:14px;box-shadow:5px 5px 0 #000;padding:8px 20px;font-weight:800;z-index:20}.mp-banner b{color:#c0392b;font-size:1.3em}.mp-feed{position:fixed;left:16px;bottom:84px;display:flex;flex-direction:column;gap:4px;z-index:15;pointer-events:none;max-width:min(360px,70vw)}.mp-feed-line{background:#fffbe9;color:#111;border:2px solid #000;border-radius:10px;box-shadow:3px 3px 0 #000;padding:3px 10px;font-weight:700;font-size:13px;animation:mp-pop .18s ease-out}.mp-feed-line.good{background:#d9ffe3}.mp-feed-line.bad{background:#ffd9d9;color:#7a0d0d}.mp-inv{position:fixed;top:16px;right:16px;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:50vw;z-index:15;pointer-events:none}.mp-chip{background:#ffd84a;color:#111;border:2px solid #000;border-radius:999px;box-shadow:2px 2px 0 #000;padding:2px 10px;font-weight:800;font-size:12px}.mp-hidden{top:70px;left:50%;transform:translateX(-50%);border:2px solid #f4ead2;border-radius:999px;padding:4px 14px;font-weight:800;z-index:18}.mp-ability,.mp-hidden{position:fixed;background:#111;color:#f4ead2}.mp-ability{right:16px;bottom:16px;border:2px solid #f4ead2;border-radius:10px;padding:4px 10px;font-size:12px;font-weight:700;z-index:15;pointer-events:none}.mp-modal{position:fixed;inset:0;display:grid;place-items:center;background:#0009;z-index:40;animation:mp-fade .15s ease-out}.mp-modal input{font:inherit;font-size:28px;letter-spacing:.4em;text-align:center;width:7em;border:3px solid #000;border-radius:10px;padding:6px}@keyframes mp-pop{0%{transform:scale(.85);opacity:0}}@keyframes mp-fade{0%{opacity:0}}@media (max-width:700px){.mp-feed{bottom:120px}.mp-inv{top:60px}}.mp-minimap{position:fixed;top:16px;left:16px;background:#111c;border:2px solid #f4ead2;border-radius:10px;box-shadow:3px 3px 0 #000;z-index:15;pointer-events:none;overflow:hidden}.mp-minimap svg{display:block}.mp-roster{list-style:none;margin:0;padding:4px 8px 6px;border-top:1px solid #f4ead244;font:600 11px/1.5 system-ui,sans-serif;color:#f4ead2}.mp-roster li{display:flex;align-items:center;gap:6px;white-space:nowrap}.mp-roster li.you b:after{content:" (you)";font-weight:500;opacity:.7}.mp-roster i{width:8px;height:8px;border-radius:50%;border:1px solid #000;flex:none}.mp-roster span{margin-left:auto;padding-left:8px;opacity:.75}.mp-minimap-ping{transform-box:fill-box;transform-origin:center;animation:mp-ping .9s ease-out infinite}@keyframes mp-ping{0%{transform:scale(.3);opacity:1}to{transform:scale(1.2);opacity:0}}@media (max-width:700px){.mp-minimap{transform:scale(.75);transform-origin:top left}}.mp-panel{animation:mp-rise .26s cubic-bezier(.2,.9,.3,1.2) both}.mp-role{transition:transform .12s ease,box-shadow .12s ease,opacity .16s ease}.mp-role img{aspect-ratio:1;object-fit:cover;border:2px solid #000}.mp-role:not(:disabled):hover{transform:translateY(-4px) rotate(-1deg);box-shadow:5px 6px 0 #000}.mp-role:not(:disabled):active{transform:translateY(1px);box-shadow:1px 1px 0 #000}.mp-role.picked{box-shadow:3px 3px 0 #000,0 0 18px color-mix(in srgb,var(--tint) 55%,transparent)}@keyframes mp-rise{0%{transform:translateY(18px) scale(.98);opacity:0}}@media (max-height:500px) and (pointer:coarse),(max-width:700px){.frame.mp-frame{aspect-ratio:auto;width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0}.stage:has(>.mp-frame){padding:0}.mp-scrim{background:linear-gradient(180deg,#000c,#0009 60%,#000c)}.mp-scrim>.mp-panel{width:100%}.mp-role small{display:none}}@media (prefers-reduced-motion:reduce){.mp-panel,.mp-role{animation:none;transition:none}}.mp-breath{position:fixed;top:70px;left:50%;transform:translateX(-50%);background:#1a0505;color:#ffd6d0;border:2px solid #e0463a;border-radius:999px;padding:6px 16px;font-weight:800;z-index:40;animation:mp-breath 1.2s ease-in-out infinite}@keyframes mp-breath{50%{transform:translateX(-50%) scale(1.04);box-shadow:0 0 24px #e0463a88}}.mp-jolt{position:fixed;inset:0;pointer-events:none;z-index:35;background:radial-gradient(ellipse at center,transparent 45%,#8a0000cc 100%);animation:mp-jolt .9s ease-out forwards}@keyframes mp-jolt{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.mp-breath,.mp-jolt{animation:none}.mp-jolt{opacity:0}}.mp-scare{position:fixed;inset:0;pointer-events:none;z-index:60;overflow:hidden}.mp-scare.soft{background:radial-gradient(ellipse at center,transparent 40%,#3a0010cc 100%);animation:mp-jolt 1.2s ease-out forwards}.mp-scare-face{position:absolute;left:50%;top:50%;width:min(120vh,120vw);height:min(120vh,120vw);object-fit:cover;transform:translate(-50%,-50%) scale(.6);opacity:0;mix-blend-mode:normal;-webkit-mask-image:radial-gradient(circle,#000 45%,transparent 72%);mask-image:radial-gradient(circle,#000 45%,transparent 72%)}.mp-scare.burst .mp-scare-face{animation:mp-face .65s cubic-bezier(.2,1.6,.4,1) forwards}.mp-scare.burst,.mp-scare.wardrobe{animation:mp-shake .45s linear}.mp-scare.burst:before,.mp-scare.wardrobe:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 35%,#8a0000ee 100%);animation:mp-jolt .7s ease-out forwards}.mp-scare.blackout{animation:mp-blackout 1.7s step-end forwards}.mp-scare.blackout .mp-scare-face{animation:mp-face .4s cubic-bezier(.2,1.6,.4,1) 1.3s forwards;-webkit-mask-image:radial-gradient(circle,#000 25%,transparent 55%);mask-image:radial-gradient(circle,#000 25%,transparent 55%)}@keyframes mp-blackout{0%{background:#000c}8%{background:transparent}16%{background:#000e}22%{background:transparent}30%{background:#000}to{background:#000}}.mp-scare.fakeout{animation:mp-dim 2.1s ease-in forwards}.mp-scare.fakeout .mp-scare-face{animation:mp-face .55s cubic-bezier(.2,1.6,.4,1) 1.5s forwards}@keyframes mp-dim{0%{background:transparent}70%{background:#000a}72%{background:#000}to{background:#000}}.mp-scare.blackout.done,.mp-scare.fakeout.done{background:transparent}@keyframes mp-face{0%{opacity:0;transform:translate(-50%,-50%) scale(.55)}15%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}80%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}to{opacity:0;transform:translate(-50%,-50%) scale(1.1)}}.mp-scare-hand{position:absolute;left:0;top:50%;height:80vh;transform:translate(-100%,-50%);-webkit-mask-image:linear-gradient(90deg,#000 55%,transparent);mask-image:linear-gradient(90deg,#000 55%,transparent);animation:mp-grab .9s cubic-bezier(.1,1.4,.3,1) forwards}@keyframes mp-grab{0%{transform:translate(-100%,-50%)}30%{transform:translate(-25%,-50%) rotate(-4deg)}65%{transform:translate(-30%,-50%) rotate(2deg)}to{transform:translate(-100%,-50%)}}@keyframes mp-shake{0%,to{transform:translate(0)}10%{transform:translate(-14px,6px)}20%{transform:translate(12px,-8px)}30%{transform:translate(-10px,-4px)}45%{transform:translate(8px,8px)}60%{transform:translate(-6px,2px)}80%{transform:translate(3px,-2px)}}body.mp-shaking canvas{animation:mp-shake .45s linear}.mp-meters{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:14px;z-index:30;pointer-events:none;font:600 11px/1 system-ui,sans-serif;color:#d8cfe6;text-shadow:0 1px 2px #000}.mp-meter{display:flex;align-items:center;gap:6px}.mp-meter i{display:block;width:70px;height:6px;border-radius:3px;background:#ffffff22;overflow:hidden}.mp-meter i b{display:block;height:100%;background:#9b8cff;transition:width .15s}.mp-meter.eye i b{background:linear-gradient(90deg,#e8c547,#e0463a)}.mp-meter.hot{color:#ff7a6b}.mp-scare-toggle{position:fixed;right:12px;bottom:12px;z-index:31;font:600 11px system-ui,sans-serif;background:#00000088;color:#d8cfe6;border:1px solid #ffffff33;border-radius:6px;padding:4px 8px;cursor:pointer}@media (prefers-reduced-motion:reduce){.mp-scare,.mp-scare *,body.mp-shaking canvas{animation-duration:.01s!important}}.mp-conn-lost{position:fixed;top:12px;left:50%;transform:translateX(-50%);z-index:50;max-width:min(92vw,640px);background:#000;color:#f4ead2;border:2px solid #ff7a7a;border-radius:14px;padding:8px 16px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.mp-conn-lost button{color:#ffd84a;background:none;border:1px solid #ffd84a;border-radius:999px;padding:2px 12px;cursor:pointer}.mp-dread{position:fixed;inset:0;pointer-events:none;z-index:28;opacity:0;transition:opacity .4s;background:radial-gradient(ellipse at center,transparent calc(64% - var(--dread, 0) * 28%),#14000acc 100%),linear-gradient(90deg,#ff284a59,transparent 11%,transparent 89%,#28c8ff4d)}html.mp-dread-on .mp-dread{opacity:min(1,calc(var(--dread, 0) * 1.15))}html.mp-dread-hot .mp-dread{animation:mp-heart var(--beat,1.2s) ease-in-out infinite}html.mp-dread-hot .frame .game{animation:mp-warp var(--beat,1.2s) ease-in-out infinite;filter:saturate(calc(1 - var(--dread, 0) * .3)) contrast(calc(1 + var(--dread, 0) * .12))}html.mp-dread-calm .mp-dread{opacity:calc(var(--dread, 0) * .5);animation:none}@keyframes mp-heart{0%,to{transform:scale(1)}12%{transform:scale(1.07)}24%{transform:scale(1)}36%{transform:scale(1.05)}52%{transform:scale(1)}}@keyframes mp-warp{0%,to{transform:scale(1) rotate(0deg)}12%{transform:scale(calc(1 + var(--dread, 0) * .03)) rotate(calc(var(--dread, 0) * .25deg))}24%{transform:scale(1) rotate(0deg)}36%{transform:scale(calc(1 + var(--dread, 0) * .02)) rotate(calc(var(--dread, 0) * -.2deg))}52%{transform:scale(1) rotate(0deg)}}@media (prefers-reduced-motion:reduce){html.mp-dread-hot .frame .game,html.mp-dread-hot .mp-dread{animation:none}}.mp-diff{display:flex;flex-direction:column;gap:4px}.mp-seg{display:flex;gap:6px}.mp-beat{color:#ffd84a;font-weight:700}.mp-beatmy{margin:14px 0 10px;display:grid;grid-gap:6px;gap:6px}.mp-sound{position:fixed;right:12px;bottom:40px;z-index:31;display:flex;align-items:center;gap:6px;background:#00000088;border:1px solid #ffffff33;border-radius:6px;padding:3px 8px}.mp-sound-mute{background:none;border:0;cursor:pointer;font-size:14px;padding:0}.mp-sound input{width:90px;accent-color:#ffd84a}.mp-touch{--sl:max(12px,env(safe-area-inset-left));--sr:max(12px,env(safe-area-inset-right));--sb:max(10px,env(safe-area-inset-bottom));position:fixed;inset:0;z-index:40;pointer-events:none;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.mp-stick{position:absolute;left:var(--sl);bottom:var(--sb);pointer-events:auto;touch-action:none;width:120px;height:120px;border-radius:50%;border:3px solid #000;background:rgba(255,251,233,.18);display:grid;place-items:center}.mp-stick i{width:52px;height:52px;border-radius:50%;background:rgba(255,216,74,.85);border:3px solid #000;box-shadow:0 3px 0 #000}.mp-arc{right:var(--sr);bottom:var(--sb);width:172px;height:172px;pointer-events:none}.mp-arc,.mp-tbtn{position:absolute}.mp-tbtn{pointer-events:auto;touch-action:none;width:52px;height:52px;padding:0;border-radius:50%;border:3px solid #000;background:rgba(255,216,74,.78);color:#111;font:inherit;font-size:12px;font-weight:900;box-shadow:0 3px 0 #000}.mp-tbtn:active{transform:translateY(2px);box-shadow:0 1px 0 #000;background:#ffd84a}.mp-tbtn.primary{right:0;bottom:0;width:80px;height:80px;font-size:28px;background:rgba(255,216,74,.9)}.mp-tbtn.sprint{right:92px;bottom:4px}.mp-tbtn.ping{right:4px;bottom:92px}.mp-tbtn.ability{right:82px;bottom:82px;background:rgba(255,138,61,.85)}.mp-gear{top:max(8px,env(safe-area-inset-top));right:var(--sr);width:48px;height:48px;border-radius:12px;font-size:20px;background:rgba(255,251,233,.8)}html.mp-touch-ui .help{display:none}html.mp-touch-ui .slots{position:fixed;top:max(8px,env(safe-area-inset-top));left:50%;right:auto;bottom:auto;transform:translateX(-50%);gap:5px;z-index:35;opacity:.92}html.mp-touch-ui .slot{width:34px;border-width:2px}html.mp-touch-ui .mp-inv{top:max(8px,env(safe-area-inset-top));right:calc(max(12px, env(safe-area-inset-right)) + 56px);max-width:18vw}html.mp-touch-ui .mp-banner{top:calc(max(8px, env(safe-area-inset-top)) + 46px);padding:4px 12px;font-size:13px}html.mp-touch-ui .mp-breath,html.mp-touch-ui .mp-hidden,html.mp-touch-ui .mp-spectate{top:calc(max(8px, env(safe-area-inset-top)) + 88px);bottom:auto}html.mp-touch-ui .mp-minimap{top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));transform:scale(.62);transform-origin:top left}html.mp-touch-ui .mp-feed{left:calc(max(12px, env(safe-area-inset-left)) + 132px);bottom:calc(max(10px, env(safe-area-inset-bottom)) + 34px);max-width:calc(100vw - 340px);font-size:11px}html.mp-touch-ui .mp-meters{bottom:max(8px,env(safe-area-inset-bottom));gap:8px}html.mp-touch-ui .mp-meter i{width:44px}html.mp-touch-ui .mp-scare-toggle,html.mp-touch-ui .mp-sound{display:none}html.mp-touch-ui.mp-menu-open .mp-scare-toggle,html.mp-touch-ui.mp-menu-open .mp-sound{display:flex;position:fixed;right:max(12px,env(safe-area-inset-right));left:auto;bottom:auto;z-index:41;min-height:48px;align-items:center;padding:0 12px;background:rgba(17,17,17,.9);border:2px solid #f4ead2;border-radius:12px;box-shadow:3px 3px 0 #000}html.mp-touch-ui.mp-menu-open .mp-sound{top:calc(max(8px, env(safe-area-inset-top)) + 56px)}html.mp-touch-ui.mp-menu-open .mp-scare-toggle{top:calc(max(8px, env(safe-area-inset-top)) + 112px)}html.mp-touch-ui .mp-sound-mute{min-width:48px;min-height:48px;font-size:20px}.mp-rotate{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;text-align:center;background:#0b0809f2;color:#fffbe9;touch-action:none}.mp-rotate h2{margin:0;font-size:34px;font-weight:900;color:#ffd84a;-webkit-text-stroke:2px #000;text-shadow:4px 4px 0 #000;transform:rotate(-2deg)}.mp-rotate p{margin:0;max-width:300px}.mp-rotate .warn{color:#ff8a3d;font-weight:700}.mp-rotate-phone{width:56px;height:96px;border:4px solid #ffd84a;border-radius:12px;box-shadow:4px 4px 0 #000;animation:mp-rotate 1.8s ease-in-out infinite}@keyframes mp-rotate{0%,30%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media (prefers-reduced-motion:reduce){.mp-rotate-phone{animation:none;transform:rotate(-90deg)}}