:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#fff7e8;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);background:#171124;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none;-webkit-user-select:none;user-select:none;touch-action:none;-webkit-tap-highlight-color:transparent}#app{background:#171124;position:fixed;top:0;bottom:0;left:0;right:0}#game{inset:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);width:calc(100% - var(--safe-left) - var(--safe-right));height:calc(100% - var(--safe-top) - var(--safe-bottom));touch-action:none;display:block;position:fixed}button,input{color:inherit;letter-spacing:.04em;text-transform:uppercase;background:#38284f;border:2px solid #f5be62;border-radius:999px;padding:10px 16px;font:800 .9rem/1 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.45;cursor:default}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:fixed;overflow:hidden}.menu{z-index:3;inset:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);text-align:center;background:radial-gradient(circle at 50% -20%,#5b397b 0,#2b1f3d 48%,#171124 100%);align-content:center;width:auto;padding:clamp(10px,3vh,28px);display:grid;position:fixed;overflow:hidden}.menu-brand{text-align:left;justify-content:center;align-items:center;gap:12px;margin:4px auto 8px;display:flex}.brand-mark{color:#f5be62;border:3px solid #f5be62;border-radius:50%;place-items:center;width:46px;height:46px;font-size:1.7rem;font-weight:950;line-height:1;display:grid;box-shadow:inset 0 0 0 4px #38284f}.menu-brand h2{color:#fff7e8;letter-spacing:.08em;margin:0;font-size:clamp(1.5rem,6vw,2.35rem);line-height:1}.menu-kicker{color:#f5be62;letter-spacing:.1em;margin:4px 0;font-weight:900}.menu-content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:12px;width:min(760px,100%);margin-inline-start:auto;margin-inline-end:auto;display:grid}.menu-actions{min-width:0}.menu-subtitle{color:#ded1ee;margin:4px 0 10px}.mode-buttons,.lobby-step{justify-items:stretch;gap:9px;margin-top:10px;display:grid}.mode-buttons button,.lobby-step button{min-width:min(100%,330px)}.rules-card,.lobby{background:#21172fcc;border:1px solid #9476ac;border-radius:18px;margin:0;padding:12px;box-shadow:0 10px 30px #0005}.rules-card{text-align:left;color:#eee4f8}.rules-card>strong{color:#f5be62;text-align:center;letter-spacing:.08em;display:block}.rules-card ol{margin:8px 0;padding-left:1.4rem}.rules-card li+li{margin-top:4px}.rules-card b{color:#ffc86b}.rules-card p{color:#d6c5e8;margin:8px 0 0;font-size:.85rem}.lobby{grid-column:1/-1;width:100%}.lobby-step>p,.lobby-help{color:#ded1ee;margin:0;font-size:.88rem}.room-label{color:#f5be62;letter-spacing:.14em;font-size:.82rem;font-weight:900}#room-code{color:#fff7e8;letter-spacing:.22em;font-size:clamp(2rem,11vw,3.5rem);font-weight:900;line-height:1}#lobby-status,#join-status{color:#f5be62;min-height:1.2em;font-weight:700}.share-button{color:#f4fff1;background:#215539;border-color:#7de09a}#join-code{text-align:center;letter-spacing:.2em;width:100%;font-size:1.5rem}.menu-content:has(.lobby:not([hidden])) .menu-actions{display:none}.menu-content:has(.lobby:not([hidden])) .rules-card{display:none}.menu-content:has(.lobby:not([hidden])){display:block}.rotate-device,[hidden]{display:none}@media (orientation:portrait) and (pointer:coarse){#game{visibility:hidden;pointer-events:none}.menu{display:none}.rotate-device{z-index:4;color:#fff7e8;text-align:center;background:radial-gradient(circle at 50% -20%,#5b397b 0,#2b1f3d 48%,#171124 100%);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.rotate-device strong{color:#f5be62;letter-spacing:.1em;font-size:1.05rem}.rotate-device>span:last-child{color:#ded1ee}.phone-glyph{border:3px solid #f5be62;border-radius:8px;width:42px;height:70px;display:block;position:relative;box-shadow:inset 0 0 0 3px #38284f}.phone-glyph:after{content:"";background:#f5be62;border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}}@media (orientation:portrait) and (pointer:coarse) and (prefers-reduced-motion:no-preference){.phone-glyph{animation:2.4s ease-in-out infinite rotate-phone}}@keyframes rotate-phone{0%,35%{transform:rotate(0)}65%,to{transform:rotate(90deg)}}@media (orientation:landscape) and (max-height:480px){.menu{padding:6px max(8px, var(--safe-right)) 6px max(8px, var(--safe-left))}.menu-brand{gap:8px;margin:1px auto 4px}.brand-mark{border-width:2px;width:34px;height:34px;font-size:1.25rem;box-shadow:inset 0 0 0 3px #38284f}.menu-brand h2{font-size:clamp(1.15rem,5vw,1.7rem)}.menu-kicker{margin:2px 0;font-size:.62rem}.menu-content{gap:7px}.menu-subtitle{margin:2px 0 5px;font-size:.72rem}.mode-buttons,.lobby-step{gap:5px;margin-top:4px}button,input{padding:6px 9px;font-size:.73rem}.rules-card,.lobby{border-radius:12px;padding:7px 9px;font-size:.73rem}.rules-card ol{margin:4px 0;padding-left:1.15rem}.rules-card li+li{margin-top:2px}.rules-card p{margin-top:4px;font-size:.68rem}.lobby-step>p,.lobby-help{font-size:.72rem}#room-code{font-size:2rem}}
