@import url("https://fonts.googleapis.com/css2?family=Lilita+One&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Space+Mono:wght@400;700&display=swap");:root{--cream:#F5EFE0;--cream-2:#EFE6D2;--cream-edge:#E2D5B8;--plum:#3D1F3A;--plum-deep:#2A1428;--plum-soft:#5A3057;--mustard:#E8B845;--mustard-deep:#C99826;--teal:#4A8A8C;--teal-deep:#2F6062;--coral:#FF4F3C;--coral-deep:#D43020;--ink:#1A1614;--ink-soft:#3A322D;--paper-line:rgba(58,50,45,0.12);--font-display:"Lilita One","Bowlby One",system-ui,sans-serif;--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"Space Mono",ui-monospace,monospace}[data-theme=high-contrast]{--cream:#FFF8E0;--cream-2:#FFEDB0;--cream-edge:#1A1614;--plum:#1A1614;--plum-deep:#000000;--plum-soft:#3A322D;--mustard:#FFD400;--mustard-deep:#E5BD00;--ink:#000000;--ink-soft:#1A1614;--paper-line:rgba(0,0,0,0.4)}[data-theme=cozy]{--cream:#2A1428;--cream-2:#3D1F3A;--cream-edge:#4A2545;--plum:#1A0A1A;--plum-deep:#0F060F;--plum-soft:#5A3057;--mustard:#E8B845;--teal:#6FA8AB;--coral:#FF6B5A;--ink:#F5EFE0;--ink-soft:rgba(245,239,224,0.7);--paper-line:rgba(245,239,224,0.15)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;font-family:var(--font-body);background:#1A1614;color:var(--ink);overscroll-behavior:none}body{background:var(--cream);overflow:hidden}.app-shell,body{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:0}.app-shell{width:100%;box-sizing:border-box}.app-stage{position:relative;width:100vw;height:100vh;height:100dvh;background:var(--cream);overflow:hidden}@media (min-width:720px) and (max-width:1023.98px){.app-shell{padding:24px}.app-stage{width:min(100vw - 48px,440px);height:min(100vh - 48px,900px);height:min(100dvh - 48px,900px);border-radius:28px;box-shadow:0 20px 60px rgba(26,22,20,.25)}}@media (min-width:1024px){body{background:radial-gradient(ellipse at top right,rgba(232,184,69,.22),transparent 55%),radial-gradient(ellipse at bottom left,rgba(74,138,140,.18),transparent 60%),var(--cream)}.app-shell{padding:32px}.app-stage{width:min(100vw - 64px,1180px);height:min(100vh - 64px,920px);height:min(100dvh - 64px,920px);border-radius:36px;box-shadow:0 30px 80px rgba(26,22,20,.22),0 4px 0 rgba(26,22,20,.06)}.lobby-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"hint roster" "code roster" "rules start";grid-gap:14px 28px;gap:14px 28px;padding:0 28px 18px;align-items:start}.lobby-hint{grid-area:hint}.lobby-code,.lobby-hint{padding-left:0!important;padding-right:0!important}.lobby-code{grid-area:code}.lobby-rules{grid-area:rules}.lobby-roster,.lobby-rules{padding-left:0!important;padding-right:0!important}.lobby-roster{grid-area:roster}.lobby-start{grid-area:start;padding-left:0!important;padding-right:0!important;padding-bottom:0!important;align-self:end}.vote-grid{grid-template-columns:repeat(3,1fr)!important}.home-screen{padding-top:36px!important}.rules-screen,.settings-screen{display:grid!important;grid-template-columns:1fr 1fr;grid-column-gap:28px;column-gap:28px;align-items:start}.rules-screen>.rules-hero,.settings-screen>.settings-hero{grid-column:1/-1}.home-logo{font-size:120px!important;text-shadow:6px 6px 0 var(--mustard)!important}}button{cursor:pointer;border:none;background:none}button,input{font-family:inherit}.chunky-shadow{box-shadow:0 6px 0 var(--ink)}.chunky-shadow-plum{box-shadow:0 6px 0 var(--plum-deep)}.chunky-shadow-coral{box-shadow:0 6px 0 var(--coral-deep)}.display{font-family:var(--font-display);letter-spacing:.5px}.mono{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.dots{background-image:radial-gradient(currentColor 1.2px,transparent 1.5px);background-size:14px 14px}.paper{background-image:radial-gradient(rgba(58,50,45,.05) 1px,transparent 1.5px),radial-gradient(rgba(58,50,45,.04) 1px,transparent 1.5px);background-size:18px 18px,7px 7px;background-position:0 0,4px 4px}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.05)}}@keyframes lookAround{0%,to{transform:translateX(0)}25%{transform:translateX(-3px)}60%{transform:translateX(3px)}}@keyframes wobble{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes pulse-ring{0%{transform:scale(1);opacity:1}to{transform:scale(1.6);opacity:0}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}@keyframes float-up{0%{transform:translateY(0) rotate(var(--r,0deg));opacity:1}to{transform:translateY(-120vh) rotate(calc(var(--r, 0deg) + 1turn));opacity:0}}@keyframes pop-in{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@keyframes slide-from-right{0%{transform:translateX(100%) rotate(8deg);opacity:0}to{transform:translateX(0) rotate(0);opacity:1}}@keyframes slide-to-left{0%{transform:translateX(0);opacity:1}to{transform:translateX(-100%) rotate(-8deg);opacity:0}}@keyframes flip-reveal{0%{transform:rotateY(180deg)}to{transform:rotateY(0deg)}}@keyframes danger-flash{0%,to{background:var(--coral)}50%{background:var(--coral-deep)}}@keyframes spotlight-sweep{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.screen{position:absolute;inset:0;overflow:hidden}.screen-enter{animation:slide-from-right .45s cubic-bezier(.34,1.36,.64,1)}[data-reduce-motion=true],[data-reduce-motion=true] *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none}