@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/play/assets/pixelify-sans-cyrillic-400-normal-DfOZNMlW.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/play/assets/pixelify-sans-latin-ext-400-normal-DdH6zlBQ.woff2)format("woff2"),url(/play/assets/pixelify-sans-latin-ext-400-normal-BkfTUL4s.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/play/assets/pixelify-sans-latin-400-normal-DLrIX9QE.woff2)format("woff2"),url(/play/assets/pixelify-sans-latin-400-normal-JapMNN6Z.woff)format("woff");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}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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)format("woff2"),url(/play/assets/pixelify-sans-cyrillic-600-normal-B3EuUOZG.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/play/assets/pixelify-sans-latin-ext-600-normal-Dha6RiOG.woff2)format("woff2"),url(/play/assets/pixelify-sans-latin-ext-600-normal-CDaIumwU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/play/assets/pixelify-sans-latin-600-normal-Dd_Dy7u5.woff2)format("woff2"),url(/play/assets/pixelify-sans-latin-600-normal-BNlgYbDL.woff)format("woff");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{color:#e7dcc0;--ink:#0b1b23;--gold:#e1b77d;--moss:#a3bd90;--muted:#a6b5ae;--line:#52665e;background:#0b1b23;font-family:Pixelify Sans,monospace}html,body{height:100%;margin:0;overflow:hidden}#app{height:100%;overflow:hidden auto}#app *,#app :before,#app :after{box-sizing:border-box}[hidden]{display:none!important}button,input{font:inherit}button{cursor:pointer}button,input,label{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,label:has(input:focus-visible){outline-offset:4px;outline:3px solid #e8c594}button:hover{color:#ffedc9}h1:focus{outline:none}#app h1,#app h2,#app p,#app figure{margin:0}.entry-screen{width:100%;min-height:100%;padding:max(1rem, env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1.25rem, env(safe-area-inset-left));background:radial-gradient(at 20% 40%,#243a38 0,#0000 65%);max-width:1160px;margin:auto;line-height:1.2}.entry-header{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;min-height:44px;padding-bottom:.5rem;display:flex}.brand{width:220px;max-width:100%;height:auto;image-rendering:pixelated;display:block}.edition{max-width:100%;color:var(--muted);text-align:right;letter-spacing:.04em;align-items:center;gap:.4rem;margin-left:auto;font-size:.7rem;display:flex}.edition strong{color:#e7dcc0;font-weight:400}.eyebrow{color:var(--moss);letter-spacing:.12em;font-size:.8rem}.setup-heading,.map-heading{gap:.3rem;padding:1rem 0;display:grid}.setup-heading h1,.map-heading h1{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:clamp(1.65rem,2.6vw,2.25rem);font-weight:400;line-height:1}.arrival{grid-template-columns:minmax(0,1.5fr) minmax(19rem,1fr);align-items:stretch;gap:1rem;display:grid}.preview-frame{border:1px solid var(--line);background:#10242c;flex-direction:column;min-width:0;display:flex;position:relative;box-shadow:6px 6px #07161c}.preview-caption{letter-spacing:.1em;color:var(--moss);justify-content:space-between;padding:.5rem .75rem;font-size:.65rem;display:flex}.setup-preview{background:#070f14;flex:1;min-height:240px}.setup-preview:before{content:"";clip-path:polygon(48% 0,52% 0,100% 100%,0 100%);pointer-events:none;background:linear-gradient(#ffc07520,#ffc07503);position:absolute;inset:12% 14% 5%}.setup-preview:after{content:"";pointer-events:none;background:radial-gradient(#e1b77d45,#0000 70%);height:9%;position:absolute;bottom:4%;left:24%;right:24%}.preview-lamp{filter:drop-shadow(0 6px 12px #e1b77d44);pointer-events:none;width:auto;height:20%;position:absolute;top:0;left:50%;transform:translate(-50%)}.setup-preview .scene-canvas{z-index:1;left:0}.preview-status{color:var(--gold);background:var(--ink);text-align:center;padding:1rem;position:absolute;top:45%;left:1rem;right:1rem}.preview-retry{position:absolute;top:65%;left:1rem}.dressing-room{border-top:3px solid var(--gold);background:#172a2e;flex-direction:column;min-width:0;padding:1rem;display:flex}.name-field{min-width:0}.name-label,legend{margin-bottom:.4rem;font-size:.9rem;display:block}#guest-name{color:#ffedc9;background:#0d2027;border:1px solid #687d70;border-bottom:3px solid #a5ad89;border-radius:0;width:100%;min-height:44px;padding:.5rem .65rem;font-size:1rem}#guest-name::placeholder{color:#a2afa4;font-size:1rem}fieldset{border:0;min-width:0;margin:.75rem 0 0;padding:0}legend{padding:0}.character-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;display:grid}.character-option{border:1px solid var(--line);cursor:pointer;align-items:center;gap:.3rem;min-height:46px;padding:.45rem;font-size:.875rem;display:flex;position:relative}.character-option:has(input:checked){border-color:var(--gold);background:#293c39}.character-option input,.color-option input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute;inset:0}.character-option input:focus-visible,.color-option input:focus-visible{outline:none}.choice-label{overflow-wrap:anywhere;flex:1;min-width:0}.choice-check{color:var(--gold);visibility:hidden;font-size:.75rem}.character-option:has(input:checked) .choice-check{visibility:visible}.color-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:.35rem;display:grid}.color-option{text-align:center;cursor:pointer;overflow-wrap:anywhere;border:1px solid #0000;flex-direction:column;align-items:center;gap:.25rem;min-width:46px;min-height:46px;padding:.35rem .1rem;font-size:.8rem;display:flex;position:relative}.color-option:has(input:checked){border-color:var(--gold);background:#293c39}.cloth-chip{background:var(--cloth);border-top:4px solid var(--cloth-light);border-left:4px solid var(--cloth-light);border-right:4px solid var(--cloth-dark);border-bottom:4px solid var(--cloth-dark);width:26px;height:22px;display:block;box-shadow:2px 2px #07161c}.pixel-button{letter-spacing:.08em;text-transform:uppercase;overflow-wrap:anywhere;color:#14282c;background:#d7ae74;border:1px solid #e7c99a;border-bottom:4px solid #907447;border-radius:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;min-height:52px;padding:.9rem 1rem;font-size:1rem;display:flex;box-shadow:3px 3px #07161c}.pixel-button:hover{color:#14282c;background:#eed0a0}.pixel-button:active{transform:translateY(2px);box-shadow:1px 1px #07161c}.entry-screen .primary{min-height:48px;padding:.65rem .8rem;font-size:.9rem}.dressing-room .primary{margin-top:.85rem}.privacy-note{color:var(--muted);padding-top:.5rem;font-size:.7rem;line-height:1.3}.form-error,.saved-notice{color:#f0b797;padding-top:.75rem;font-size:.9rem;line-height:1.4}.text-button{border:1px solid var(--line);min-height:44px;color:var(--gold);background:#12272c;border-radius:0;padding:.65rem .8rem}.text-button:hover{border-color:var(--gold);background:#293c39}.map-layout{grid-template-columns:minmax(0,2.35fr) minmax(17rem,1fr);align-items:center;gap:1rem;display:grid}.map-frame{width:100%;max-width:calc((100svh - 11rem) * var(--map-aspect));border:1px solid var(--line);justify-self:center;box-shadow:6px 6px #07161c}.map-stage{aspect-ratio:var(--map-aspect);background:#0d2027;position:relative;overflow:hidden}.map-art{width:100%;height:100%;image-rendering:pixelated;display:block}.map-stage:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 35px #051017a0}.district-label{letter-spacing:.08em;color:#bec9b3;white-space:nowrap;background:#0b1b23d9;padding:.25rem .4rem;font-size:clamp(.55rem,.8vw,.85rem);position:absolute;transform:translate(-50%,-50%)}.map-pin{z-index:1;color:#f5d7a8;background:0 0;border:0;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.map-pin:hover .pin-label{background:#32433c}.pin-label{border:1px solid var(--gold);letter-spacing:.12em;white-space:nowrap;background:#10272c;padding:.45rem .55rem;font-size:clamp(.8rem,1.3vw,1.3rem);position:absolute;bottom:100%;left:50%;transform:translate(-50%);box-shadow:3px 3px #07161c}.pin-cross{text-shadow:2px 2px #07161c;font-size:2rem;line-height:1}.map-compass{text-align:center;color:#c8d3be;font-size:.8rem;position:absolute;bottom:.8rem;left:1rem}.map-frame figcaption{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.3rem;padding:.5rem .65rem;font-size:.6rem;display:flex}.key-square{background:var(--gold);width:7px;height:7px;margin-right:.2rem;display:inline-block}.destination{border-top:3px solid var(--gold);background:#172a2e;flex-direction:column;min-width:0;padding:1rem;display:flex}.destination h2{overflow-wrap:anywhere;padding-bottom:.3rem;font-size:2.25rem;font-weight:400}.destination>p{color:var(--muted);font-size:.9rem;line-height:1.35}.map-guest{border-top:1px dashed var(--line);overflow-wrap:anywhere;align-items:center;gap:.6rem;margin-top:.75rem;padding:.65rem 0;display:flex}.guest-color{flex-shrink:0;width:14px;height:25px;box-shadow:3px 3px #081c23}.guest-name{display:block}.guest-look{color:var(--muted);padding-top:.15rem;font-size:.7rem;display:block}.destination .primary{width:100%}.destination .privacy-note{font-size:.7rem}.room-screen{background:#0b1b23;height:100%;position:relative}.room-surface{width:100%;height:100%}.room-toolbar{z-index:2;left:1rem;right:1rem;top:max(1rem, env(safe-area-inset-top));pointer-events:none;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:.5rem;display:grid;position:absolute}.room-title{overflow-wrap:anywhere;text-shadow:1px 1px #0b1b23;pointer-events:auto;background:#0b1b2373;border-left:2px solid #e1b77da6;grid-area:1/1;width:min(100%,22rem);min-width:0;max-width:100%;padding:.65rem .8rem}.room-title h1{letter-spacing:.08em;font-size:1.15rem;font-weight:400;line-height:1.1}.room-title h1 span{display:block}.room-roster{min-width:0;color:var(--moss);gap:.25em;padding-top:.35rem;font-size:.8rem;display:flex}.room-user-count{white-space:nowrap;flex:none}.room-name{color:#a9dafa;white-space:nowrap;min-width:0;overflow:hidden}.room-name-track{width:max-content;display:block}.room-name-scrolling .room-name-track{animation:room-roster-marquee var(--roster-duration) linear infinite alternate}.room-name:hover .room-name-track,.room-name:focus-within .room-name-track{animation-play-state:paused}@keyframes room-roster-marquee{0%,10%{transform:translate(0)}90%,to{transform:translateX(var(--roster-distance))}}@media (prefers-reduced-motion:reduce){.room-name-scrolling .room-name-track{animation:none}}.room-name:focus-visible{outline:1px solid var(--gold);outline-offset:2px}.room-actions{grid-area:1/3;grid-template-columns:auto 44px;gap:.5rem;margin-left:auto;display:grid}.entry-transition{background:#0b1b23;place-items:center;padding:1rem;display:grid;position:absolute;inset:0}.transition-card{border:1px solid var(--line);border-top:4px solid var(--gold);width:100%;max-width:30rem;padding:clamp(1rem,5vw,2.5rem);box-shadow:6px 6px #06151c}.transition-card h1{font-size:2.2rem;font-weight:400;margin:.7rem 0 1rem!important}.load-description{color:var(--muted);line-height:1.5}.loading-track{background:repeating-linear-gradient(90deg, var(--moss) 0 8px, transparent 8px 14px);height:7px;margin:1.5rem 0}.transition-actions{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.scene-surface{background:#030c13;position:relative;overflow:hidden}.scene-canvas{image-rendering:pixelated;display:block;position:absolute;top:0}.scene-overhead{z-index:1;pointer-events:none;color:#ffe5b2;text-align:center;text-shadow:1px 1px #07161c,-1px -1px #07161c,1px -1px #07161c,-1px 1px #07161c;flex-direction:column;align-items:center;gap:4px;width:max-content;font-family:Pixelify Sans,monospace;font-weight:600;line-height:1.2;display:flex;position:absolute}[data-interaction-nearby=true] .scene-overhead-local .scene-name{opacity:0;visibility:hidden;transition-delay:0s,.18s}.scene-name{color:#a9dafa;overflow-wrap:anywhere;opacity:1;max-width:100%;transition:opacity .18s,visibility;position:relative;top:6px}.scene-speech{flex-direction:column;justify-content:flex-end;gap:4px;max-width:100%;display:flex;overflow:hidden}.scene-speech-line{white-space:pre-wrap;overflow-wrap:anywhere;flex:none;max-width:100%}@media (width<=1000px){.arrival{grid-template-columns:minmax(0,1.25fr) minmax(18rem,1fr)}.map-layout{grid-template-columns:minmax(0,1.8fr) minmax(16rem,1fr)}}@media (width<=700px){.entry-screen{padding:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left))}.entry-header{padding-bottom:.4rem}.brand{width:clamp(112px,38vw,160px)}.edition{gap:.2rem;display:grid}.edition-separator{display:none}.edition,.entry-screen .eyebrow{font-size:.65rem}.setup-heading,.map-heading{padding:.75rem 0}.arrival,.map-layout{grid-template-columns:1fr;gap:.75rem}.setup-preview{flex:auto;height:clamp(100px,18svh,160px);min-height:0}.preview-caption{padding:.35rem .6rem;font-size:.6rem}.dressing-room,.destination{padding:.75rem}.destination h2{font-size:1.8rem}.map-frame{max-width:none}.edit-look{padding:.5rem;font-size:.8rem}}@media (width<=700px) and (height<=650px){.entry-screen{padding-top:max(.5rem, env(safe-area-inset-top));padding-bottom:max(.5rem, env(safe-area-inset-bottom))}.setup-heading,.map-heading{padding:.5rem 0}.entry-screen .eyebrow{display:none}.arrival{gap:.3rem}.preview-caption{display:none}.setup-preview{height:120px}.dressing-room{padding:.5rem}.character-options{gap:.25rem}.dressing-room fieldset{margin-top:.5rem}.dressing-room .primary{margin-top:.6rem}.destination{padding:.625rem}.map-guest{margin-top:.5rem;padding:.4rem 0}}@media (width<=700px) and (height<=600px){.setup-preview{height:88px}}@media (width<=360px){.character-option{gap:.2rem;padding:.375rem;font-size:.75rem}}@media (width>=701px) and (height<=500px){.entry-screen{padding-top:max(.5rem, env(safe-area-inset-top));padding-bottom:max(.5rem, env(safe-area-inset-bottom))}.setup-heading,.map-heading{gap:.2rem;padding:.5rem 0}.setup-heading h1,.map-heading h1{font-size:1.5rem}.entry-screen .eyebrow{font-size:.65rem}.arrival{grid-template-columns:minmax(0,1fr) minmax(0,1.8fr)}.setup-preview{min-height:160px}.dressing-room{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem .75rem;padding:.75rem;display:grid}.dressing-room fieldset{margin:0}.dressing-room .primary{grid-area:2/2;align-self:end;margin:0}.dressing-room .form-error,.dressing-room .saved-notice,.dressing-room .privacy-note{grid-column:1/-1;padding-top:0}.map-layout{grid-template-columns:minmax(0,1.8fr) minmax(16rem,1fr)}.destination{padding:.75rem}.destination h2{font-size:1.8rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}textarea{font:inherit}textarea:focus-visible,.local-transcript:focus-visible{outline-offset:-2px;outline:2px solid #e8c594}body:has(.room-screen) #app{overflow:hidden}.room-surface{touch-action:none}.scene-canvas:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}.room-toolbar .text-button{text-shadow:1px 1px #0b1b23;background:#0b1b2373;border-color:#a6b5ae66}.room-nav{pointer-events:auto;place-items:center;width:44px;min-width:44px;height:44px;padding:0;display:grid}.room-menu{justify-content:center;gap:.4rem;width:auto;padding:0 .65rem;display:flex}.room-suspects{grid-column:1/-1;justify-content:center;align-items:center;gap:.45rem;width:100%;padding:0 .65rem;display:flex}.room-actions .dialogue-entries{grid-column:1/-1}.room-menu-panel{inset:max(4.25rem, calc(env(safe-area-inset-top) + 3.25rem)) 1rem auto auto;color:#e7dcc0;border:1px solid var(--gold);pointer-events:auto;background:#10272cf5;width:max-content;max-width:calc(100vw - 2rem);margin:0;padding:.35rem;position:fixed;box-shadow:3px 3px #07161c}.room-menu-panel:popover-open{gap:.15rem;display:grid}.room-menu-panel .text-button{text-align:left;align-items:center;gap:.65rem;min-height:44px;padding:.5rem .75rem;text-decoration:none;display:flex}.room-assignment{color:#a9dafa;margin:-.15rem 0 .25rem;padding:0 .75rem 0 calc(1.4rem + 22px);font-size:.85rem;line-height:1.4}.room-menu-panel .room-music{width:100%}.room-music-label:after{content:"Music: Awesome";visibility:hidden;height:0;display:block}.room-music-toggle{background:#174b71;border:1px solid #a9dafa;border-radius:12px;flex:none;width:42px;height:24px;margin-left:auto;position:relative}.room-music-toggle:after{content:"";background:#a9dafa;border-radius:50%;width:16px;height:16px;transition:transform .12s;position:absolute;top:3px;left:3px}.room-music[aria-checked=true] .room-music-toggle{background:#a9dafa}.room-music[aria-checked=true] .room-music-toggle:after{background:#174b71;transform:translate(18px)}@media (prefers-reduced-motion:reduce){.room-music-toggle:after{transition:none}}.room-menu-panel a:focus-visible{outline-offset:-3px;outline:3px solid #e8c594}.room-menu-panel .text-button:hover{background:#a6b5ae26}.room-leave{border-top:1px solid var(--line)}.room-build-game{color:#c4aaff;pointer-events:auto;grid-area:1/2;justify-self:center;align-items:center;gap:.65rem;min-height:44px;padding:.5rem .75rem;text-decoration:none;display:flex}.room-build-game:focus-visible{outline-offset:3px;outline:3px solid #e8c594}.room-build-game-label{color:#a8d8ff;-webkit-text-fill-color:transparent;text-shadow:none;background:linear-gradient(90deg,#ff927d,#f6d879,#91e0be,#a8d8ff,#c4aaff,#f5a6cd);-webkit-background-clip:text;background-clip:text}.room-action-icon{display:flex}.room-action-icon svg{width:22px;height:22px}.suspects-panel{inset:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));width:calc(100vw - max(.75rem, env(safe-area-inset-left)) - max(.75rem, env(safe-area-inset-right)));height:min(54rem, calc(100dvh - max(.75rem, env(safe-area-inset-top)) - max(.75rem, env(safe-area-inset-bottom))));color:#e7dcc0;border:2px solid var(--gold);pointer-events:auto;background:#0b1b23f5;max-width:78rem;max-height:none;margin:auto;padding:0;line-height:1.4;position:fixed;overflow:hidden;box-shadow:6px 6px #06151c}.suspects-panel[open]{flex-direction:column;display:flex}.suspects-panel::backdrop{background:#030c1373}.suspects-body{flex-direction:column;flex:1;min-height:0;display:flex}.suspects-heading{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.suspects-heading h2{overflow-wrap:anywhere;font-size:1.65rem;font-weight:400}.suspects-close{width:44px;height:44px;color:var(--gold);border:1px solid var(--line);background:#0b1b23;flex:none;place-items:center;padding:0;display:grid}.suspects-close svg{width:22px;height:22px}.suspects-panel button:focus-visible{outline-offset:-4px}.suspects-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding:1rem;overflow:hidden auto}.suspects-intro{color:var(--muted);padding-bottom:1rem}.suspects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.suspect-card{border:1px solid var(--line);overflow-wrap:anywhere;background:#0b1b234d;grid-template-columns:9rem minmax(0,1fr);align-items:start;gap:1rem;min-width:0;padding:.75rem;display:grid}.suspect-portrait{color:#60797b;background:#142b304d;place-items:center;height:144px;margin-bottom:.65rem;display:grid;overflow:hidden}.suspect-portrait>svg{width:80px;height:80px}.suspect-face{image-rendering:pixelated;background-repeat:no-repeat;display:block;transform:scale(2)}.suspect-portrait-status{color:var(--muted);text-align:center;padding:.25rem;font-size:.8rem}.suspect-identity{min-width:0}.suspect-evidence{min-width:0;margin:0}.suspect-evidence dt{color:var(--gold);font-size:.8rem}.suspect-evidence dd{margin:.2rem 0 .75rem}.suspect-evidence dd:last-child{margin-bottom:0}.suspect-evidence dd[data-learned=false]{color:var(--muted)}.suspect-order{color:var(--gold);font-size:.8rem}.suspect-name{margin:.25rem 0 0;font-size:1.3rem;font-weight:400;line-height:1.2}.suspect-card[data-discovered=false] .suspect-name{color:var(--muted)}.suspects-restart,.suspects-confirm-actions .text-button{overflow-wrap:anywhere;justify-content:center;align-items:center;gap:.6rem;display:flex}.suspects-restart{color:#f0b797;width:fit-content;max-width:100%;margin:1.25rem 0 0 auto}.suspects-restart .room-action-icon,.suspects-confirm-actions .room-action-icon{flex:none}.suspects-confirmation{background:#02090d99;place-items:center;padding:.75rem;display:grid;position:absolute;inset:0}.suspects-confirm-popup{color:#e7dcc0;border:2px solid var(--gold);background:#0b1b23eb;width:min(30rem,100%);max-height:100%;padding:clamp(.5rem,4vw,1.25rem);overflow-y:auto;box-shadow:4px 4px #06151c}.suspects-confirmation h3{overflow-wrap:anywhere;margin:0 0 1rem;font-size:1.5rem;font-weight:400}.suspects-confirm-actions{flex-wrap:wrap;gap:.75rem;padding-top:.5rem;display:flex}.suspects-confirm-actions .text-button{padding-inline:clamp(.5rem,3vw,.8rem)}.suspects-confirm-actions .text-button>span:last-child{overflow-wrap:normal}.suspects-confirm{color:#f0b797}.suspects-save-status{color:var(--muted);overflow-wrap:anywhere;padding-top:1rem}@media (width<=1000px){.suspects-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.suspects-heading{gap:.5rem;padding:.6rem}.suspects-scroll{padding:.6rem}.suspects-grid{grid-template-columns:minmax(0,1fr);gap:.65rem}.suspect-card{grid-template-columns:minmax(0,1fr);gap:.75rem}.suspects-confirm-actions .text-button{width:100%}}.room-movement{pointer-events:none;position:absolute;inset:0}.room-keys{bottom:max(.8rem, env(safe-area-inset-bottom));left:max(1rem, env(safe-area-inset-left));pointer-events:none;grid-template-columns:repeat(3,34px) auto;grid-template-areas:".up. .""left down right run""action action action action";gap:4px;display:grid;position:absolute}.room-keys kbd{color:#e7dcc0;text-shadow:1px 1px #0b1b23;background:#0b1b234d;border:1px solid #a6b5ae99;place-items:center;width:34px;min-height:32px;font-family:inherit;font-size:1rem;line-height:1;display:grid}.room-keys kbd[data-active=true]{border-color:var(--gold);color:#fff1cf;background:#e1b77d70}.key-up{grid-area:up}.key-left{grid-area:left}.key-down{grid-area:down}.key-right{grid-area:right}.room-keys .key-run{grid-area:run;gap:.35rem;width:auto;padding:0 .5rem;font-size:.75rem;display:flex}.key-run span{color:var(--muted)}.room-joystick{--joystick-size:112px;--joystick-travel:calc((var(--joystick-size) - 40px) / 2 - 4px);left:max(1rem, env(safe-area-inset-left));bottom:max(5.2rem, calc(env(safe-area-inset-bottom) + 4.4rem));width:var(--joystick-size);height:var(--joystick-size);color:var(--muted);touch-action:none;-webkit-user-select:none;user-select:none;pointer-events:auto;background:0 0;border:0;padding:0;display:none;position:absolute}.joystick-base{stroke:#a6b5ae99;stroke-width:1px;fill:#0b1b234d;width:100%;height:100%;display:block}.joystick-base .joystick-ticks{stroke:#a6b5ae66;fill:none}.joystick-thumb{clip-path:polygon(25% 0,75% 0,75% 10%,90% 10%,90% 25%,100% 25%,100% 75%,90% 75%,90% 90%,75% 90%,75% 100%,25% 100%,25% 90%,10% 90%,10% 75%,0 75%,0 25%,10% 25%,10% 10%,25% 10%);width:40px;height:40px;transform:translate(calc(-50% + var(--stick-x,0) * var(--joystick-travel)), calc(-50% + var(--stick-y,0) * var(--joystick-travel)));background:#a6b5ae66;border:2px solid #a6b5ae;position:absolute;top:50%;left:50%}.room-joystick[data-active=true] .joystick-base{stroke:var(--moss)}.room-joystick[data-active=true] .joystick-thumb{border-color:var(--moss);background:#a3bd9073}.room-joystick[data-running=true] .joystick-base{stroke:var(--gold)}.room-joystick[data-running=true] .joystick-thumb{border-color:var(--gold);background:#e1b77d80}.room-jump-action{color:#e7dcc0;min-height:36px;font:inherit;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;background:#0b1b234d;border:1px solid #a6b5ae99;grid-area:action;justify-content:center;align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.75rem;display:flex}.room-jump-action[data-active=true]{border-color:var(--gold);color:#fff1cf;background:#e1b77d70}.room-jump-action>span:first-child svg{width:1em;height:1em;display:block}.room-jump-action:focus-visible{outline-offset:3px;outline:3px solid #e8c594}@media (pointer:coarse){.room-keys{display:contents}.room-keys kbd,.room-keys .key-run{display:none}.room-joystick{display:block}.room-jump-action{right:max(1rem, env(safe-area-inset-right));bottom:max(5.2rem, calc(env(safe-area-inset-bottom) + 4.4rem));flex-direction:column;width:80px;min-height:80px;position:absolute}.room-jump-action>span:first-child{font-size:1.5rem}.jump-action-label{font-size:0}.jump-action-label:after{content:"Jump";font-size:.75rem}.room-jump-action[data-airborne=true] .jump-action-label:after{content:"Dash"}.room-jump-action{background:#0b1b2380}}.room-interact-action,.interaction-touch-hint{display:none}@media (pointer:coarse){.room-interact-action:not([hidden]){z-index:3;right:max(1rem, env(safe-area-inset-right));bottom:max(calc(5.2rem + 92px), calc(env(safe-area-inset-bottom) + 4.4rem + 92px));color:#a9dafa;width:80px;min-height:72px;font:inherit;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;background:#0b1b23cc;border:1px solid #74bfe5;flex-direction:column;justify-content:center;align-items:center;gap:.3rem;padding:.35rem .15rem;font-size:.7rem;display:flex;position:absolute}.room-interact-action svg{width:26px;height:26px;display:block}.room-interact-action:active{background:#174b71}.room-interact-action:focus-visible{outline-offset:3px;outline:3px solid #a9dafa}.interaction-touch-hint{width:1em;height:1em;display:block}.interaction-touch-hint svg{width:100%;height:100%;display:block}}.room-conversation{--visible-top:0px;--visible-left:0px;--visible-width:100vw;--visible-height:100vh;--log-height:min(32rem, calc(var(--visible-height) * .75));z-index:2;left:var(--visible-left);top:var(--visible-top);width:var(--visible-width);height:var(--visible-height);pointer-events:none;position:fixed}.conversation-log,.chat-mute-options{right:max(1rem, env(safe-area-inset-right));bottom:max(5.2rem, calc(env(safe-area-inset-bottom) + 4.4rem));width:min(24rem,100% - 2rem);max-width:none;height:min(28rem,100% - 7rem);min-height:0;max-height:none;color:inherit;pointer-events:auto;background:#0b1b2380;border:1px solid #a6b5ae88;margin:0;padding:0;position:absolute;top:auto;left:auto}.conversation-log[open]{flex-direction:column;display:flex}.log-heading{border-bottom:1px solid #a6b5ae55;flex:none;justify-content:space-between;align-items:center;gap:.5rem;padding:.25rem .4rem .25rem .75rem;display:flex}.log-heading h2{color:var(--gold);font-size:1rem;font-weight:400}.log-close{place-items:center;min-width:44px;padding:0;display:grid}.log-close svg{width:20px;height:20px}.conversation-log[data-modal=true],.conversation-log[data-modal=true] .chat-mute-options{left:calc(var(--visible-left) + max(.6rem, env(safe-area-inset-left)));right:auto;top:calc(var(--visible-top) + var(--visible-height) - var(--log-height) - max(.6rem, env(safe-area-inset-bottom)));width:calc(var(--visible-width) - max(.6rem, env(safe-area-inset-left)) - max(.6rem, env(safe-area-inset-right)));height:var(--log-height);border-top:2px solid var(--gold);background:#0b1b23eb;position:fixed;bottom:auto}.conversation-log::backdrop{pointer-events:auto;background:#030c1373}.room-toolbar .room-sound[data-enabled=true]{border-color:var(--moss);color:var(--moss)}.local-transcript{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a6b5ae88 transparent;text-shadow:1px 1px #0b1b23;flex:1;width:100%;min-height:0;padding:.75rem;overflow:hidden auto}.transcript-empty{color:#c2cdc2;font-size:1rem;line-height:1.4}.transcript-messages{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.transcript-name{color:#a9dafa;overflow-wrap:anywhere;margin-bottom:.3rem;font-size:1rem;display:block}.transcript-messages p{white-space:pre-wrap;overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:1.05rem;line-height:1.5}.local-composer{bottom:max(.8rem, env(safe-area-inset-bottom));pointer-events:auto;background:#0b1b2380;border:1px solid #a6b5ae88;grid-template-columns:minmax(0,1fr) 48px;align-items:center;width:min(32rem,100% - 2rem);display:grid;position:absolute;left:50%;transform:translate(-50%)}.local-composer:focus-within{border-color:var(--gold)}.local-composer textarea{resize:none;color:#ffedc9;background:0 0;border:0;border-radius:0;width:100%;height:max(48px,3rem);min-height:48px;padding:.65rem .8rem;font-family:ui-monospace,monospace;font-size:max(16px,.9rem);line-height:1.4;display:block}.local-composer textarea::placeholder{color:#d0d8ce}.chat-send{min-width:44px;min-height:44px;color:var(--gold);background:0 0;border:0;place-items:center;padding:0;display:grid}.chat-send svg{width:22px;height:22px}.chat-send:hover{background:#a6b5ae26}.composer-error{color:#f0b797;overflow-wrap:anywhere;grid-column:1/-1;max-height:5rem;padding:0 .8rem .5rem;font-size:.8rem;line-height:1.3;overflow-y:auto}.composer-error:empty{display:none}@media (width<=1100px){.room-keys{bottom:max(5.2rem, calc(env(safe-area-inset-bottom) + 4.4rem))}}@media (width<=700px){.room-toolbar{left:max(.6rem, env(safe-area-inset-left));right:max(.6rem, env(safe-area-inset-right));top:max(.6rem, env(safe-area-inset-top))}.room-title{padding:.45rem .6rem}.room-title h1{font-size:1rem}.room-roster{font-size:.75rem}.room-menu-panel{top:max(3.85rem, calc(env(safe-area-inset-top) + 3.25rem));right:max(.6rem, env(safe-area-inset-right))}.room-actions{gap:.35rem;min-width:0;max-width:100%}.room-keys{left:max(.6rem, env(safe-area-inset-left));grid-template-columns:repeat(3,28px);grid-template-areas:".up.""left down right""run run run""action action action";gap:3px}.room-keys kbd{width:28px;min-height:28px;font-size:16px}.room-keys .key-run{justify-content:center;padding:.3rem;font-size:.7rem}.room-joystick{left:max(.6rem, env(safe-area-inset-left))}.local-transcript{padding:.5rem}.transcript-messages p{font-size:1rem}.local-composer{bottom:max(.6rem, env(safe-area-inset-bottom));width:calc(100% - max(.6rem, env(safe-area-inset-left)) - max(.6rem, env(safe-area-inset-right)))}}@media (width<=360px){.key-run span{display:none}}.npc-prompt{z-index:2;color:#a9dafa;text-align:center;text-shadow:1px 1px #07161c,-1px -1px #07161c,1px -1px #07161c,-1px 1px #07161c;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:center;gap:0;min-height:44px;padding:0 4px;font-family:Pixelify Sans,monospace;font-weight:600;line-height:1.2;display:flex;position:absolute}.npc-prompt-text{overflow-wrap:anywhere;max-width:100%}.npc-prompt kbd{color:#174b71;text-shadow:none;font:inherit;background:#a9dafa;border:1px solid #74bfe5;padding:.08em .35em;font-size:.7em}.npc-prompt:hover{color:#c7e9ff}.npc-prompt{opacity:1;visibility:visible;transition:opacity .18s,visibility}.npc-prompt[hidden]{opacity:0;visibility:hidden;pointer-events:none;transition-delay:0s,.18s;display:flex!important}@media (pointer:coarse){.npc-prompt kbd{display:none}}@media (prefers-reduced-motion:reduce){.npc-prompt,.scene-name{transition:none}}.interaction-prompt-icon{width:1em;height:1em;line-height:0}.interaction-prompt-icon svg{filter:drop-shadow(1px 1px #07161c);width:100%;height:100%}.interaction-prompt-label{justify-content:center;align-items:center;gap:.25em;max-width:100%;display:flex}.interaction-prompt-icon{flex-shrink:0}.scene-typing{color:#ffe5b2;text-shadow:none;background:#07161c;border:2px solid #ffe5b2;border-radius:8px;justify-content:center;align-items:center;gap:3px;padding:0 7px 3px;font-size:20px;line-height:1;display:flex;position:relative}.scene-typing[hidden]{display:none}.scene-typing:after{content:"";background:#07161c;border-bottom:2px solid #ffe5b2;border-right:2px solid #ffe5b2;width:4px;height:4px;position:absolute;bottom:-5px;left:calc(50% - 3px);transform:rotate(45deg)}.scene-typing-dot{animation:1.2s ease-in-out infinite scene-typing-pulse}.scene-typing-dot:nth-child(2){animation-delay:.15s}.scene-typing-dot:nth-child(3){animation-delay:.3s}.scene-typing[data-reduced-motion=true] .scene-typing-dot{animation:none}@keyframes scene-typing-pulse{0%,70%,to{opacity:.5}35%{opacity:1}}@media (prefers-reduced-motion:reduce){.scene-typing-dot{animation:none}}.room-menu-panel{max-height:calc(100dvh - max(4.25rem, calc(env(safe-area-inset-top) + 3.25rem)) - max(1rem, env(safe-area-inset-bottom)));overflow-y:auto}.room-mode[aria-pressed=true]{color:var(--moss)}.room-connection{color:#c2cdc2;overflow-wrap:anywhere;max-width:min(22rem,100vw - 3rem);padding:.4rem .75rem;font-size:.9rem;line-height:1.4}.room-connection:empty,.room-connection[hidden],.room-reconnect[hidden],.room-fresh-join[hidden],.room-owner[hidden]{display:none}.shared-chat-tools{border-bottom:1px solid #a6b5ae55;flex-wrap:wrap;flex:none;align-items:center;gap:.5rem;padding:.4rem .75rem;display:flex}.shared-chat-tools[hidden]{display:none}.chat-history-more{overflow-wrap:anywhere;max-width:100%;min-height:44px;padding:.4rem .65rem}.composer-status{color:#c2cdc2;overflow-wrap:anywhere;grid-column:1/-1;max-height:5rem;padding:0 .8rem .5rem;font-size:.8rem;line-height:1.3;overflow-y:auto}.composer-status:empty{display:none}.chat-send:disabled{opacity:.45}@media (width<=700px){.room-menu-panel{max-height:calc(100dvh - max(3.85rem, calc(env(safe-area-inset-top) + 3.25rem)) - max(.6rem, env(safe-area-inset-bottom)))}.shared-chat-tools{padding:.4rem .5rem}}.owner-controls{width:min(28rem,100vw - 2rem);max-height:calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain;color:var(--gold);border:1px solid var(--gold);pointer-events:auto;background:#10272cf5;margin:auto;padding:0;overflow-y:auto;box-shadow:3px 3px #07161c}.owner-controls::backdrop{pointer-events:auto;background:#030c13a6}.owner-controls .log-heading{background:#10272c;position:sticky;top:0}.owner-close{min-width:44px;min-height:44px;color:var(--gold);background:0 0;border:0;place-items:center;padding:0;display:grid}.owner-close svg{width:20px;height:20px}.owner-close:hover{background:#a6b5ae26}.owner-login,.owner-actions{gap:.65rem;padding:.75rem;display:grid}.owner-controls [hidden]{display:none}.owner-controls label{gap:.4rem;min-width:0;font-size:.95rem;display:grid}.owner-controls input,.owner-controls select{color:#e7dcc0;width:100%;min-width:0;min-height:44px;font:inherit;background:#07161c;border:1px solid #a6b5ae88;border-radius:0;padding:.5rem}.owner-actions button{min-height:44px;color:var(--gold);font:inherit;background:#12272c;border:1px solid #a6b5ae88;border-radius:0;padding:.6rem}.owner-controls select:focus-visible{outline-offset:2px;outline:3px solid #e8c594}.owner-status{color:#c2cdc2;overflow-wrap:anywhere;padding:.5rem .75rem;line-height:1.4}.owner-status:empty{display:none}@media (width<=700px){.owner-controls{width:calc(100vw - 1.2rem);max-height:calc(100dvh - 1.2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}.chat-visitor-mute{margin-left:auto}.chat-visitor-mute[hidden]{display:none}.chat-visitor-mute label{align-items:center;gap:.4rem;min-width:0;display:flex}.chat-mute-menu{align-items:center;gap:.4rem;min-height:44px;display:inline-flex}.chat-mute-menu svg{width:20px;height:20px}.chat-mute-options{background:#0b1b23;position:fixed}.conversation-log[data-modal=true] .chat-mute-options{background:#0b1b23}.chat-mute-options[open]{flex-direction:column;display:flex}.chat-mute-options::backdrop{background:#030c1373}.chat-mute-body{flex-wrap:wrap;align-content:flex-start;align-items:center;gap:.75rem;padding:.75rem;display:flex;overflow-y:auto}.chat-mute-options p{width:100%;font-size:.95rem;line-height:1.5}.shared-chat-tools{max-height:45%;overflow-y:auto}.chat-visitor-mute select{max-width:min(12rem,100%);font:inherit}.chat-visitor-mute select:focus-visible{outline-offset:2px;outline:3px solid #e8c594}@media (width<=1100px){.room-keys,.room-joystick{bottom:max(5.2rem, env(safe-area-inset-bottom) + 4.4rem)}}@media (pointer:coarse){.room-jump-action{bottom:max(5.2rem, env(safe-area-inset-bottom) + 4.4rem)}}.room-menu-panel .room-mode{width:100%}.room-mode-toggle{background:#174b71;border:1px solid #a9dafa;border-radius:12px;flex:none;width:42px;height:24px;margin-left:auto;position:relative}.room-mode-toggle:after{content:"";background:#a9dafa;border-radius:50%;width:16px;height:16px;transition:transform .12s;position:absolute;top:3px;left:3px}.room-mode[aria-checked=true] .room-mode-toggle{background:#a9dafa}.room-mode[aria-checked=true] .room-mode-toggle:after{background:#174b71;transform:translate(18px)}@media (prefers-reduced-motion:reduce){.room-mode-toggle:after{transition:none}}.owner-page{min-height:100dvh;padding:max(2rem, env(safe-area-inset-top)) 1rem max(2rem, env(safe-area-inset-bottom))}.owner-page .owner-controls{width:min(36rem,100%);max-height:none;margin:0 auto;position:static}.owner-page .owner-controls .log-heading{position:static}.owner-page h1{font-size:1.5rem}.owner-page .owner-close[hidden]{display:none}@media (width<=900px){.room-toolbar{grid-template-columns:minmax(0,1fr) auto}.room-build-game{grid-area:1/1/auto/-1}.room-title{grid-row:2}.room-actions{grid-area:2/2}.room-menu-panel{top:max(7.5rem, calc(env(safe-area-inset-top) + 6.5rem));max-height:calc(100dvh - max(7.5rem, calc(env(safe-area-inset-top) + 6.5rem)) - max(1rem, env(safe-area-inset-bottom)))}}@media (width<=700px){.room-build-game{justify-content:center;justify-self:stretch}.room-menu-panel{top:max(7.1rem, calc(env(safe-area-inset-top) + 6.5rem));max-height:calc(100dvh - max(7.1rem, calc(env(safe-area-inset-top) + 6.5rem)) - max(.6rem, env(safe-area-inset-bottom)))}}@media (width>=500px) and (width<=900px) and (height<=450px){.room-toolbar{grid-template-columns:minmax(0,1fr) auto auto}.room-build-game{grid-area:1/2;justify-self:center}.room-title{grid-row:1;padding:.35rem .5rem}.room-title h1{letter-spacing:.04em;font-size:.9rem}.room-title h1 span{display:inline}.room-title h1 span+span:before{content:" "}.room-actions{grid-area:1/3;grid-template-columns:auto 44px auto}.room-suspects{grid-column:auto}.room-menu-panel{top:max(4.25rem, calc(env(safe-area-inset-top) + 3.25rem));max-height:calc(100dvh - max(4.25rem, calc(env(safe-area-inset-top) + 3.25rem)) - max(.6rem, env(safe-area-inset-bottom)))}}@media (width>=500px) and (width<=600px) and (height<=450px){.room-actions .room-menu,.room-actions .room-suspects{gap:0;width:44px;padding:0;font-size:0}}.room-online{white-space:normal;max-width:22rem}.npc-prompt[data-unread=true] .interaction-prompt-icon,.room-interact-action[data-unread=true]>span[aria-hidden]{color:#ffe43b}.case-panel{inset:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));width:calc(100vw - max(.75rem, env(safe-area-inset-left)) - max(.75rem, env(safe-area-inset-right)));max-width:48rem;max-height:calc(100dvh - max(.75rem, env(safe-area-inset-top)) - max(.75rem, env(safe-area-inset-bottom)));color:#e7dcc0;border:2px solid var(--gold);pointer-events:auto;background:#0b1b23eb;margin:auto;padding:0;line-height:1.4;position:fixed;overflow:hidden;box-shadow:6px 6px #06151c}.case-panel[open]{flex-direction:column;display:flex}.case-panel::backdrop{background:#030c1373}.case-heading{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.case-heading h2{overflow-wrap:anywhere;min-width:0;font-size:1.65rem;font-weight:400}.case-close{width:44px;height:44px;color:var(--gold);border:1px solid var(--line);background:#0b1b23;flex:none;place-items:center;padding:0;display:grid}.case-close svg{width:22px;height:22px}.case-panel :is(button,select,a):focus-visible{outline-offset:-4px}.case-scroll{overscroll-behavior:contain;min-height:0;padding:1rem;overflow:hidden auto}.case-content{overflow-wrap:anywhere;min-width:0}.case-step{color:var(--gold);margin-bottom:.75rem}.case-content label{margin-bottom:.75rem;font-size:1.3rem;display:block}.case-content select{border:1px solid var(--gold);width:100%;min-width:0;max-width:100%;min-height:48px;font:inherit;color:#e7dcc0;text-overflow:ellipsis;background:#0b1b23;border-radius:0;padding:.6rem;display:block}.case-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.case-actions .text-button{min-height:44px}.case-actions button:disabled{opacity:.45;cursor:default}.case-status{color:#f0b797;margin-top:1rem}.case-completion-link{min-height:44px;color:var(--gold);margin-top:1rem;text-decoration:underline;display:inline-block}@media (width<=600px){.case-heading{gap:.5rem;padding:.6rem}.case-scroll{padding:.6rem}.case-actions>button{flex:1}}.case-answer-text{color:var(--muted);overflow-wrap:anywhere;margin-top:.6rem}.case-answer-text:empty{display:none}
