@font-face{font-family:Bagel Fat One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bagel-fat-one-latin-400-normal-CB1T13M1.woff2) format("woff2"),url(/assets/bagel-fat-one-latin-400-normal-BFAfIXLM.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:500;src:url(/assets/baloo-2-latin-500-normal-CmLZ27r7.woff2) format("woff2"),url(/assets/baloo-2-latin-500-normal-BSdEhq8m.woff) format("woff")}@font-face{font-family:"Baloo 2";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/baloo-2-latin-700-normal-CqTg7A15.woff2) format("woff2"),url(/assets/baloo-2-latin-700-normal-Ld3Zm3l2.woff) format("woff")}@font-face{font-family:Special Elite;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/special-elite-latin-400-normal-YjDd9tmf.woff2) format("woff2"),url(/assets/special-elite-latin-400-normal-BtSRmyJ6.woff) format("woff")}@font-face{font-family:Nosifer;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nosifer-latin-400-normal-DC0JbRme.woff2) format("woff2"),url(/assets/nosifer-latin-400-normal-DIu8cmES.woff) format("woff")}:root{--font-display: "Bagel Fat One", "Arial Rounded MT Bold", system-ui, sans-serif;--font-body: "Baloo 2", "Trebuchet MS", sans-serif;--font-type: "Special Elite", "Courier New", monospace;--font-horror: "Nosifer", "Special Elite", serif}[data-stage="0"]{--bg: #FFF4DE;--paper: #FFFFFF;--ink: #2B1B3D;--muted: #5E4E6E;--c1: #D62350;--c1s: #FF4F6D;--c2: #FFC93C;--c3: #3FA9EE;--c4: #34C68F;--c5: #8F6BFF;--line: #2B1B3D;--btn: #FFC93C;--btnfg: #2B1B3D;--felt: #34C68F;--cardback: #8F6BFF;--card-face: #FFFFFF;--radius: 24px;--border-w: 3px;--shadow: 0 6px 0 #2B1B3D;--shadow-sm: 0 4px 0 #2B1B3D;--font-title: "Bagel Fat One", "Arial Rounded MT Bold", system-ui, sans-serif;--font-text: "Baloo 2", "Trebuchet MS", sans-serif}[data-stage="1"]{--bg: #EADFC9;--paper: #F5EFE3;--ink: #3A2E36;--muted: #62545C;--c1: #9E4054;--c1s: #C9727F;--c2: #D4B060;--c3: #7A9FB3;--c4: #7FA893;--c5: #9A8CB6;--line: #3A2E36;--btn: #D4B060;--btnfg: #3A2E36;--felt: #7FA893;--cardback: #9A8CB6;--card-face: #F5EFE3;--radius: 20px;--border-w: 3px;--shadow: 0 5px 0 #3A2E36;--shadow-sm: 0 3px 0 #3A2E36;--font-title: "Bagel Fat One", "Arial Rounded MT Bold", system-ui, sans-serif;--font-text: "Baloo 2", "Trebuchet MS", sans-serif}[data-stage="2"]{--bg: #2E2622;--paper: #4A3D35;--ink: #EADBC2;--muted: #B8A890;--c1: #8E2F2F;--c1s: #A8574A;--c2: #9C7A3C;--c3: #4F6E78;--c4: #566F5B;--c5: #6A5670;--line: #120D0B;--btn: #8E2F2F;--btnfg: #F1E4CE;--felt: #3F4F40;--cardback: #5B4A63;--card-face: #D9CBB2;--radius: 10px;--border-w: 2px;--shadow: 0 4px 0 #120D0B;--shadow-sm: 0 3px 0 #120D0B;--font-title: "Bagel Fat One", "Arial Rounded MT Bold", system-ui, sans-serif;--font-text: "Special Elite", "Courier New", monospace}[data-stage="3"]{--bg: #0B0909;--paper: #181212;--ink: #DCD0C0;--muted: #A39486;--c1: #8A0E12;--c1s: #C0181E;--c2: #5A4A2A;--c3: #26353A;--c4: #22302A;--c5: #2E2230;--line: #000000;--btn: #8A0E12;--btnfg: #F1E4D6;--felt: #141A16;--cardback: #181212;--card-face: #BCA98F;--radius: 4px;--border-w: 2px;--shadow: 0 0 28px rgba(192,24,30,.35);--shadow-sm: 0 0 14px rgba(192,24,30,.3);--font-title: "Nosifer", "Special Elite", serif;--font-text: "Special Elite", "Courier New", monospace}[data-stage]{background:var(--bg);color:var(--ink);font-family:var(--font-text)}@keyframes flk{0%,to{opacity:1}41%{opacity:1}42%{opacity:.15}44%{opacity:1}46%{opacity:.3}47%{opacity:1}80%{opacity:1}81%{opacity:0}82%{opacity:1}}.flk{animation:flk 2.6s steps(1) infinite}.flk-fast{animation:flk .9s steps(1) infinite}@keyframes strobe{0%{background-color:#c0181e}50%{background-color:#000}}.strobe{animation:strobe .14s steps(1) infinite}@keyframes redflash{0%,50%,53%,58%,60%,to{opacity:0}51%{opacity:.38}59%{opacity:.25}}.redflash{animation:redflash 3.2s steps(1) infinite}@keyframes jit{0%{transform:translate(0)}25%{transform:translate(-4px,3px)}50%{transform:translate(4px,-3px)}75%{transform:translate(-3px,-4px)}}.jit{animation:jit .12s steps(1) infinite}@keyframes bob{0%,to{translate:0 0}50%{translate:0 -8px}}.bob{animation:bob 2.4s ease-in-out infinite}@keyframes sway{0%,to{rotate:-4deg}50%{rotate:4deg}}.sway{animation:sway 3s ease-in-out infinite}@keyframes sp-walk{0%{left:-90px}to{left:calc(100% + 30px)}}.sp{position:absolute;z-index:7;pointer-events:none;animation-name:sp-walk;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes sp-drop{0%,to{transform:translateY(-120%)}35%,65%{transform:translateY(0)}}.sp-drop{position:absolute;top:0;z-index:7;pointer-events:none;animation:sp-drop 7s ease-in-out infinite}@keyframes sp-leg{0%,to{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}.sp-a{transform-origin:30px 30px;animation:sp-leg .16s linear infinite}.sp-b{transform-origin:30px 30px;animation:sp-leg .16s linear infinite reverse}@keyframes gl-slice{0%,30%,70%,to{transform:translate(0)}10%{transform:translate(-70px)}20%{transform:translate(45px)}55%{transform:translate(110px)}60%{transform:translate(-35px)}}.gl-s{animation:gl-slice 1.6s steps(1) infinite}@keyframes gl-reveal{0%{clip-path:inset(0 0 100% 0)}15%{clip-path:inset(20% 0 60% 0)}25%{clip-path:inset(0 0 70% 0)}35%{clip-path:inset(45% 0 15% 0)}50%{clip-path:inset(0 0 40% 0)}65%{clip-path:inset(10% 0 0 0)}80%,to{clip-path:inset(0 0 0 0)}}.gl-b{animation:gl-reveal 1.6s steps(1) infinite}@keyframes gl-rgb{0%,to{transform:translate(0)}20%{transform:translate(-9px,2px)}40%{transform:translate(11px,-3px)}60%{transform:translate(-4px)}80%{transform:translate(7px,4px)}}.gl-r{animation:gl-rgb .4s steps(1) infinite}.gl-c{animation:gl-rgb .4s steps(1) infinite reverse}@keyframes gl-face{0%,48%,53%,60%,to{opacity:0}50%,56%{opacity:1}}.gl-f{animation:gl-face 1.6s steps(1) infinite}@keyframes gl-scan{0%{background-position:0 0}to{background-position:0 40px}}.gl-scan{animation:gl-scan .5s linear infinite}@keyframes simon-zoom{0%{transform:scale(.3) rotate(-10deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.simon-face{animation:simon-zoom .2s cubic-bezier(.2,1.6,.4,1) both,jit .1s steps(1) .2s infinite}.simon-card{transition:transform .25s ease}.simon-card:hover{transform:translateY(-3px)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;width:100%}body{background:#fff4de}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:44px;border:var(--border-w) solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--paper);padding:12px 22px;box-shadow:var(--shadow-sm);transition:translate .16s,filter .16s}button:hover:not(:disabled){translate:0 -3px;filter:brightness(1.04)}button:active:not(:disabled){translate:0 3px;box-shadow:none}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:4px solid var(--c3);outline-offset:5px}button:disabled:not(.memory-card):not(.game-choice){opacity:.48}a{color:inherit}h1,h2,p{margin:0}h1,h2{font-family:var(--font-title);font-weight:400;line-height:1.2}h1{font-size:clamp(32px,4vw,56px)}h2{font-size:28px}p{line-height:1.5}strong{font-weight:700}img{display:block;max-width:100%}.app{position:relative;min-height:100dvh;isolation:isolate;overflow:hidden}.host{padding:40px 4vw 26px;min-height:720px;height:100dvh;font-size:20px;display:flex;flex-direction:column}.host main{position:relative;z-index:1;width:100%;max-width:1560px;flex:1;margin:0 auto}.decor{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.awning{position:absolute;top:0;width:100%;height:18px;background:repeating-linear-gradient(90deg,var(--c1s) 0 40px,transparent 40px 80px)}.confetti{position:absolute;width:13px;height:6px}.confetti:nth-child(3n){width:8px;height:8px}.hidden-eye{position:absolute;right:5%;bottom:6%;font-size:12px;opacity:.5}.vignette{position:absolute;inset:0;z-index:8;pointer-events:none}.primary{background:var(--btn);color:var(--btnfg);font-family:var(--font-title);font-size:24px;padding:17px 28px;box-shadow:var(--shadow);min-height:66px}.primary span{float:right;margin-left:24px}.secondary{background:var(--paper);font-size:21px}.text-button{padding:8px 16px;background:none;border:0;box-shadow:none;font-size:18px;text-decoration:underline;text-underline-offset:5px}.subtitle{color:var(--muted);font-size:23px;margin:14px 0 30px}.eyebrow{font-size:15px;font-weight:700;letter-spacing:2px}.logo{font-family:var(--font-display);font-size:clamp(62px,6.5vw,98px);line-height:1.2;text-align:center}.logo div+div{font-size:.8em;margin-top:8px}.logo span{display:inline-block;color:var(--letter-color);-webkit-text-stroke:5px var(--line);paint-order:stroke fill;text-shadow:0 6px 0 var(--line);transform:rotate(calc((mod(var(--i),3) - 1)*4deg))}.logo span:nth-child(3n){rotate:4deg;translate:0 -4px}.logo span:nth-child(3n+1){rotate:-4deg}.logo.small{font-size:36px;line-height:1.12}.logo.small span{-webkit-text-stroke:2px var(--line);text-shadow:0 3px 0 var(--line)}.welcome{display:flex;align-items:center;justify-content:center}.welcome-main{margin-left:17%;display:flex;flex-direction:column;align-items:center;gap:20px;padding-bottom:38px}.tagline{font-size:21px;color:var(--muted)}.menu{display:flex;flex-direction:column;gap:18px;min-width:330px;margin-top:15px}.welcome-simon{position:absolute;bottom:75px;left:1%;width:230px}.welcome-simon>img{width:100%}.speech{padding:16px 20px;max-width:265px;background:var(--paper);border:3px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);font-family:var(--font-title);font-size:21px;line-height:1.25;position:relative}.speech:after{content:"";position:absolute;bottom:-12px;left:22px;width:20px;height:20px;transform:rotate(45deg);background:var(--paper);border-right:3px solid var(--line);border-bottom:3px solid var(--line)}.welcome-simon .speech{position:absolute;left:80%;top:4%;width:255px;rotate:-4deg}.welcome footer{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:15px;color:var(--muted)}.welcome footer span{opacity:.55;margin-left:8px}.lobby,.choice{text-align:center;padding-top:12px}.lobby-layout{display:flex;align-items:center;justify-content:center;gap:70px}.ticket{background:var(--paper);border:3px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 30px;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:340px;transform:rotate(-2deg)}.qr{width:220px;height:220px;margin:6px 0}.ticket>span{font-size:16px}.join-url{font-size:17px}.pin{font-family:var(--font-title);font-size:58px;letter-spacing:8px;line-height:1.2}.lobby-players{width:540px;max-width:50%;display:flex;flex-direction:column;gap:24px}.two-players{display:grid;grid-template-columns:1fr 1fr;gap:26px}.player-card{background:var(--paper);border:var(--border-w) solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px 15px;display:flex;align-items:center;flex-direction:column;gap:10px;text-align:center;min-width:150px}.avatar{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:74px;height:74px;border-radius:50%;border:3px solid var(--line);font-family:var(--font-display);font-size:35px;background:var(--c3);color:var(--btnfg)}.avatar.player-1{background:var(--c1s)}.avatar.empty{background:none;border-style:dashed;opacity:.5}.player-card strong{font-family:var(--font-title);font-size:24px;max-width:100%;overflow-wrap:anywhere}.player-card.active{outline:5px solid var(--c3);outline-offset:6px}.player-card:has(.player-1).active{outline-color:var(--c1s)}.score{font-family:var(--font-title);font-size:36px}.score small{font-family:var(--font-text);font-size:16px}.player-state{font-size:16px;color:var(--muted)}.remove{font-size:14px;margin-top:8px}.game-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:40px auto;max-width:1180px}.game-choice{text-align:center;padding:24px 22px;overflow:hidden;min-width:0;border-width:3px}.host .game-choice:disabled{opacity:1}.game-choice:has(.choice-label):disabled{cursor:default}.game-choice h2{font-size:34px;margin:14px 0 10px}.game-choice p{font-size:18px;color:var(--muted);min-height:52px}.choice-art{height:155px;display:flex;align-items:center;justify-content:center;gap:4px}.choice-art img{width:30%;height:100%;object-fit:contain}.choice-art .mini-symbol{width:95px;background:var(--card-face);border:3px solid var(--line);padding:12px;border-radius:12px;height:118px;rotate:12deg}.mini-card{width:95px;height:118px;display:grid;place-items:center;border:3px solid var(--line);border-radius:12px;background:var(--cardback);font-family:var(--font-display);font-size:64px;color:var(--card-face);rotate:-12deg}.choice-label{display:block;margin-top:20px;background:var(--c2);color:var(--btnfg);border-radius:12px;font-weight:700;padding:7px 16px}.game-choice-1 .choice-label{background:var(--c5)}.game-choice-2 .choice-label{background:var(--c4)}.vote-status{display:flex;gap:40px;justify-content:center;align-items:center}.vote-status>span{display:flex;gap:12px;align-items:center}.vote-status .avatar{width:42px;height:42px;font-size:22px}.game-heading{display:flex;align-items:center;justify-content:space-between}.game-heading h1{font-size:44px;margin-top:4px}.round-chip{border:2px solid var(--line);border-radius:30px;background:var(--paper);padding:10px 24px}.game-prompt{display:flex;gap:20px;align-items:center;justify-content:center;margin:10px 0 12px}.timer{font-family:var(--font-title);font-size:30px;min-width:62px;height:62px;border:3px solid var(--line);background:var(--btn);color:var(--btnfg);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}.timer small{font-family:var(--font-text);font-size:16px;margin-left:2px}.play-layout{display:grid;grid-template-columns:175px minmax(0,1fr) 175px;gap:30px;align-items:center}.board-space{position:relative;min-height:420px;display:grid;place-items:center}.scalable{width:100%;transition:transform 4s ease;transform-origin:center}.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;width:min(100%,450px);margin:0 auto}.memory-card{position:relative;aspect-ratio:1;padding:10px;display:grid;place-items:center;background-color:var(--cardback);background-image:radial-gradient(circle,#ffffff40 2px,transparent 2.5px);background-size:14px 14px;border-radius:calc(var(--radius) * .7);border:var(--border-w) solid var(--line);box-shadow:var(--shadow-sm);min-height:0}.memory-card>span{font-family:var(--font-display);font-size:clamp(30px,4vw,53px);color:var(--card-face);-webkit-text-stroke:2px var(--line);paint-order:stroke fill}.memory-card small{position:absolute;right:7px;bottom:1px;font-size:12px;color:var(--card-face)}.memory-card.face{background:var(--card-face)}.memory-card img{width:85%;height:85%;object-fit:contain}.memory-card.matched{outline:4px solid var(--owner);outline-offset:-7px;opacity:.7}.cup-table{height:340px;position:relative}.felt{position:absolute;inset:110px -2% 0;background:var(--felt);border:5px solid var(--line);border-radius:50%;box-shadow:var(--shadow)}.cup{position:absolute;top:0;width:33.333%;height:270px;transition:left .6s cubic-bezier(.45,.05,.55,.95)}.cup img{height:100%;width:100%;object-fit:contain}.cup-numbers{position:absolute;bottom:15px;display:flex;justify-content:space-around;width:100%;font-family:var(--font-title);font-size:27px}.cup-numbers span{border-radius:50%;width:42px;height:42px;display:grid;place-items:center;background:var(--paper);border:2px solid var(--line)}.kim-board{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;background:var(--felt);border:4px solid var(--line);border-radius:var(--radius);padding:25px 20px;min-height:310px;box-shadow:var(--shadow)}.object-plate{background:var(--card-face);border:2px solid var(--line);border-radius:50%;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.object-plate img{width:75%;height:75%;object-fit:contain}.object-plate span{position:absolute;bottom:-22px;font-size:14px;color:var(--ink)}.object-plate.answer-object{outline:5px solid var(--c2);outline-offset:3px;animation:bob 1s infinite}.kim-board.covered{display:grid;place-items:center;background:var(--c5)}.cloth{font-size:110px;color:var(--c2);animation:sway 2s infinite}.closer{position:absolute;bottom:0;left:0;right:0;text-align:center;font-family:var(--font-type);font-size:18px;animation:flk 3s infinite}.game-footer{text-align:center;margin-top:18px;color:var(--muted);font-size:18px}.centered{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center}.centered>.subtitle{margin:0}.result-scores{display:flex;justify-content:center;gap:70px;margin:12px 0}.result-player{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:210px}.result-player strong{font-size:68px;font-family:var(--font-title)}.result-player small{font-size:22px}.result-player>span:last-child{color:var(--muted)}.continue-simon{width:150px}.host-tools{position:fixed;right:18px;bottom:16px;display:flex;gap:10px;z-index:10;opacity:.6}.host-tools button{font-size:23px;padding:4px;width:44px;height:44px;background:var(--paper);border-radius:50%}.simon-visit{position:fixed;bottom:-12px;left:24px;z-index:12;display:flex;flex-direction:column;align-items:center;animation:visit-in .35s ease-out;pointer-events:none}.simon-visit>img{width:155px}.simon-visit .speech{max-width:220px;margin-bottom:15px;font-size:18px}.simon-visit.edge-1{left:auto;right:25px}.simon-visit.edge-2{bottom:auto;top:-10px;flex-direction:column-reverse}.simon-visit.edge-2 img{rotate:180deg}.simon-visit.edge-2 .speech{margin-top:15px}.simon-visit.edge-3{inset:-10px 25px auto auto;flex-direction:column-reverse}.simon-visit.edge-3 img{rotate:180deg}.simon-visit.edge-3 .speech{margin-top:15px}.glitch-overlay{position:fixed;inset:0;background:repeating-linear-gradient(0deg,#000c 0 3px,#0005 3px 7px);z-index:80;pointer-events:none;display:grid;place-items:center}.glitch-overlay>div{position:absolute;inset:25% 0 45%;background:#decec888;mix-blend-mode:difference}.glitch-overlay strong{font:65px var(--font-type);color:#ddd;text-shadow:-8px 0 #c0181e,8px 0 #0fffff}.glitch-overlay img{position:absolute;width:280px}.screamer{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;pointer-events:auto}.screamer img{width:min(90vw,700px);height:78dvh;object-fit:contain}.screamer strong{position:absolute;bottom:6%;font-family:var(--font-horror);font-size:clamp(60px,10vw,150px);color:#f2e5d5;text-shadow:-8px 0 #ff0000,8px 0 #00ffff}.scanlines{position:absolute;inset:0;background:repeating-linear-gradient(0deg,#0005 0 2px,transparent 2px 5px);pointer-events:none}.modal-backdrop,.pause-overlay{position:fixed;inset:0;z-index:100;background:#0008;display:grid;place-items:center;padding:24px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.pause-overlay{z-index:70}.panel{position:relative;background:var(--paper);color:var(--ink);border:3px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:35px;max-width:650px}.panel h1{font-size:35px}.panel p{margin:20px 0}.panel li{margin:15px 0}.panel label{display:flex;flex-direction:column;margin:25px 0}.close{position:absolute;right:10px;top:8px;border:0;box-shadow:none;background:none;font-size:30px;padding:0;width:44px;height:44px}.operator{position:fixed;z-index:200;right:16px;top:16px;width:330px;max-height:95dvh;overflow:auto;background:#17151b;color:#fff;border:1px solid #777;border-radius:12px;padding:24px;font:16px system-ui;box-shadow:0 8px 50px #0008}.operator h2{font:700 23px system-ui}.operator p{margin:16px 0}.operator button{font:15px system-ui;background:#302c36;color:#fff;border:1px solid #75697e;border-radius:8px;box-shadow:none;margin:4px;padding:9px 12px}.operator-stages{display:grid;grid-template-columns:1fr 1fr}.operator label{display:flex;flex-direction:column;margin:12px 0}.connection-banner{position:fixed;z-index:1200;top:0;left:0;right:0;text-align:center;padding:12px;background:#2b1b3d;color:#fff;font:16px system-ui}.toast{position:fixed;bottom:24px;left:50%;translate:-50% 0;z-index:1200;max-width:90%;width:max-content;padding:12px 12px 12px 20px;display:flex;align-items:center;gap:16px;background:#2b1b3d;color:#fff;border:2px solid #fff;border-radius:14px;box-shadow:0 4px 20px #0004;font:17px system-ui}.toast button{background:transparent;border:0;box-shadow:none;color:#fff;font-size:24px;padding:0 8px}.audio-unlock{position:fixed;left:12px;bottom:12px;z-index:30;min-height:44px;font-size:14px;padding:5px 12px}.fine-print{font-size:14px!important;color:var(--muted);line-height:1.6}.phone{width:100%;min-height:100dvh;padding:32px 22px calc(24px + env(safe-area-inset-bottom));font-size:18px}.phone main{position:relative;z-index:1;max-width:480px;margin:0 auto}.phone h1{font-size:32px}.phone h2{font-size:26px}.phone .primary,.phone .secondary{width:100%;font-size:21px}.phone-join{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.join-simon{height:105px;margin:12px 0 4px}.phone form{width:100%;display:flex;flex-direction:column;gap:18px;text-align:left;margin:12px 0}.phone label{display:flex;flex-direction:column;gap:8px;font-weight:700;font-size:17px}.phone input{border:3px solid var(--line);background:var(--paper);color:var(--ink);border-radius:16px;padding:15px 18px;font-size:20px;width:100%;height:64px}.phone input[inputmode=numeric]{font-family:var(--font-title);font-size:32px;text-align:center;letter-spacing:9px}.phone-center{min-height:calc(100dvh - 65px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center}.phone-center .avatar{width:90px;height:90px;font-size:40px}.phone-ticket{border:2px dashed var(--line);background:var(--paper);border-radius:12px;padding:10px 24px;font-size:14px;display:flex;gap:16px;align-items:center}.phone-ticket strong{font-size:28px;letter-spacing:4px}.phone-mascot{height:210px}.phone-choice{text-align:center}.phone-choice>p{margin:12px 0}.phone .game-choices{grid-template-columns:1fr;gap:18px;margin:24px 0}.phone .game-choice{position:relative;min-height:145px;text-align:left;padding:18px 16px 18px 115px}.phone .choice-art{position:absolute;left:8px;top:20px;width:100px;height:80px}.phone .mini-card,.phone .choice-art .mini-symbol{width:43px;height:65px;font-size:35px;border-radius:8px;padding:4px}.phone .game-choice h2{font-size:26px;margin:0 0 8px}.phone .game-choice p{font-size:15px;min-height:0}.phone .choice-label{margin-top:10px;font-size:14px;padding:4px 10px}.phone .game-choice:disabled{opacity:.55}.phone-game{text-align:center}.phone-game header{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin:4px 0 24px}.phone-game>p{margin:14px 0}.phone-game .memory-board{gap:9px;margin:24px 0}.phone-game .memory-card{padding:4px;min-height:58px;border-radius:12px}.phone-game .memory-card span{font-size:40px}.phone-game .memory-card small{font-size:10px}.phone .timer{width:54px;height:54px;font-size:27px}.phone-timer{margin:15px 0}.cup-answers{display:flex;flex-direction:column;gap:20px;margin:24px 0}.cup-answers button{display:flex;align-items:center;justify-content:center;gap:26px;font-family:var(--font-title);font-size:24px;min-height:95px;background:var(--paper)}.cup-answers img{height:72px;width:72px}.object-answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.object-answers button{display:flex;align-items:center;gap:7px;text-align:left;padding:10px 7px;font-size:17px;min-height:76px;border-radius:14px}.object-answers img{width:45px;height:45px}.watch-screen{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.watch-screen img{width:150px}.watch-screen span{font-family:var(--font-title);font-size:24px}.answer-locked{padding:16px;border:2px dashed var(--c4);border-radius:14px;background:var(--paper);font-size:17px;margin:20px 0}.phone-closer{font-size:14px;animation:flk 3s infinite}.phone-final-score{font-family:var(--font-title);font-size:90px}.phone-final-score small{font-size:24px}.phone .screamer strong{font-size:48px;bottom:15%;text-align:center;line-height:1.4}.phone .screamer img{height:70dvh;max-width:120%;width:120%}.phone .panel{padding:30px 24px}.phone .reluctant{font-size:14px;text-decoration:line-through;animation:flk 3s infinite;min-height:48px;width:auto}.sp{width:55px}.spider-one{top:64%;animation-duration:11s;rotate:90deg}.spider-two{top:28%;animation-duration:17s;animation-delay:-9s;rotate:90deg;width:38px}.sp-drop{right:16%;width:45px;display:flex;flex-direction:column;align-items:center}.sp-drop span{height:100px;width:1px;background:var(--ink)}.sp-drop img{width:45px}.cracks{position:absolute;inset:0;background:linear-gradient(140deg,transparent 19.9%,var(--line) 20%,transparent 20.1%),linear-gradient(38deg,transparent 80%,var(--line) 80.1%,transparent 80.3%);opacity:.5}.whispers{font:52px var(--font-horror);position:absolute;inset:20% -10%;rotate:-12deg;color:var(--c1);opacity:.13;line-height:1.8;text-align:center}.decor .redflash{position:absolute;inset:0;background:var(--c1s);z-index:9}[data-stage="1"] .confetti{opacity:.45}[data-stage="1"] .awning{clip-path:polygon(0 0,100% 0,100% 75%,75% 95%,45% 65%,30% 100%,0 85%)}[data-stage="1"] .logo span:nth-child(7){rotate:16deg;translate:0 9px}[data-stage="2"] .awning,[data-stage="3"] .awning{display:none}[data-stage="2"] .confetti{opacity:.13}[data-stage="2"] .vignette{background:radial-gradient(ellipse,transparent 38%,#10080599 100%)}[data-stage="2"] h1,[data-stage="3"] h1{animation:flk 4s infinite}[data-stage="3"] .vignette{background:radial-gradient(ellipse,transparent 28%,#000c 100%)}[data-stage="3"] .confetti{height:70px;width:8px!important;opacity:.2;background:var(--c1)!important;rotate:0deg!important;top:0!important;border-radius:0 0 100% 20%!important}[data-stage="3"] .logo span:nth-child(4n){opacity:.15}[data-stage="3"] .logo span:nth-child(3n){animation:flk .9s infinite}[data-stage="3"] .memory-card:not(.face){background-image:repeating-linear-gradient(75deg,transparent 0 12px,var(--c1) 13px,transparent 14px)}[data-stage="3"] .memory-card>span{color:var(--c1s)}[data-stage="3"] .game-heading h1{font-size:34px}[data-stage="3"] .game-prompt h2{font-size:25px}[data-stage="3"] .choice h1{font-size:42px}[data-stage="3"] .game-choice h2{font-size:26px}@keyframes visit-in{0%{translate:0 100%;opacity:0}to{translate:0 0;opacity:1}}@media(min-height:850px)and (min-width:1000px){.host{padding-top:65px}.lobby-layout{margin-top:50px}.game-choices{margin-top:65px;margin-bottom:50px}.choice-art{height:190px}.play-layout{margin-top:20px}.memory-board{width:540px}.board-space{min-height:530px}.cup-table{height:410px}.cup{height:325px}.felt{top:160px}.kim-board{min-height:370px}.game-footer{margin-top:28px}}@media(max-width:1000px){.host{height:auto;min-height:100dvh;padding:40px 24px}.welcome-main{margin-left:10%}.welcome-simon{width:150px;left:0;bottom:70px}.welcome-simon .speech{font-size:15px;left:45%;top:-10%;width:190px}.logo{font-size:62px}.welcome{min-height:620px}.tagline{font-size:17px}.lobby-layout{gap:24px}.ticket{min-width:280px;padding:20px}.qr{width:180px;height:180px}.lobby-players{max-width:55%}.two-players{gap:18px}.player-card{min-width:115px;padding:18px 9px}.lobby-players .primary{font-size:18px}.game-choices{gap:16px}.game-choice{padding:20px 10px}.game-choice h2{font-size:28px}.game-choice p{font-size:16px}.play-layout{grid-template-columns:120px minmax(0,1fr) 120px;gap:18px}.player-card .avatar{width:60px;height:60px}.player-card strong{font-size:20px}.player-state{font-size:13px}.kim-board{gap:10px;padding:20px 10px}.object-plate span{font-size:11px}.game-prompt h2{font-size:23px}.board-space{min-height:350px}.memory-board{max-width:380px}.host .simon-visit{scale:.8;transform-origin:bottom left}}@media(max-width:650px){.host{padding:35px 18px;min-height:100dvh}.host .welcome-main{margin-left:0;align-self:flex-start;margin-top:35px}.host .logo{font-size:47px}.host .tagline{font-size:14px}.welcome-simon{width:95px;bottom:55px}.welcome-simon .speech{left:90%;top:20%;width:190px}.welcome footer{font-size:12px}.welcome footer span{display:none}.lobby-layout{flex-direction:column}.lobby-players{max-width:100%;width:100%}.host .game-choices{grid-template-columns:1fr;margin-top:20px}.host .choice-art{height:110px}.host .game-choice p{min-height:0}.play-layout{grid-template-columns:1fr 1fr;gap:18px}.play-layout>.board-space{grid-column:1/-1;grid-row:1}.play-layout .player-card{display:grid;grid-template-columns:40px 1fr;padding:12px;gap:6px}.play-layout .avatar{width:40px;height:40px;font-size:22px;grid-row:1/3}.play-layout .score{font-size:24px}.play-layout .player-state{display:none}.game-heading h1{font-size:31px}.game-heading .eyebrow{font-size:11px}.round-chip{font-size:13px;padding:7px 12px}.game-prompt{margin-top:24px}.game-prompt h2{font-size:21px}.game-prompt .timer{flex-shrink:0;width:50px;min-width:50px;height:50px;font-size:24px}.board-space{min-height:320px}.cup-table{height:270px}.cup{height:220px}.felt{top:100px}.memory-board{max-width:320px}.kim-board{min-height:220px}.result-scores{gap:20px}.result-player{min-width:120px}.result-player h2{font-size:23px}.result-player strong{font-size:47px}.result-player small{font-size:17px}.centered{padding:30px 0;gap:24px}.centered h1{font-size:32px}.centered .subtitle{font-size:18px}.vote-status{gap:20px;font-size:15px}.host .simon-visit{display:none}.operator{right:8px;top:8px;width:min(330px,96vw)}}
