:root{--cream: #eef6f4;--ink: #2b3a34;--green: #34b98a;--green-2: #2aa078;--orange: #ff6f57;--orange-2: #ff856f;--sky: #8edce6;--shadow: 0 5px 0 rgba(38, 92, 74, .18);--radius: 20px;--pill: 9999px;--font: "Nunito", "Segoe UI", "Trebuchet MS", system-ui, sans-serif}*{box-sizing:border-box;margin:0;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{font-family:var(--font);color:var(--ink);background:var(--cream);overscroll-behavior:none;overflow-x:hidden;max-width:100vw}button{font-family:inherit;cursor:pointer;border:none}.gs-btn-primary{background:var(--green);color:#fff;font-weight:800;padding:12px 22px;border-radius:var(--pill);box-shadow:var(--shadow);transition:transform .06s ease}.gs-btn-primary:active{transform:translateY(3px);box-shadow:0 2px #265c4a2e}.gs-btn-primary:disabled{background:#bcd6ce;box-shadow:none}.gs-btn-lg{width:100%;font-size:1.15rem;padding:16px}.gs-btn-ghost{background:#fff;color:var(--green-2);border:2px solid var(--green);font-weight:800;padding:12px 18px;border-radius:var(--pill)}.gs-link{background:none;color:var(--green-2);text-decoration:underline;font-size:.95rem;padding:8px}.gs-lobby{min-height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px;background:radial-gradient(120% 80% at 50% 0%,#d6ecec 0%,var(--cream) 55%);text-align:center}.gs-brand{max-width:calc(100vw - 48px)}.gs-brand .gs-logo{font-size:2.6rem}.gs-brand h1{font-size:2.9rem;color:var(--ink);font-weight:900;letter-spacing:-1.5px}.gs-brand p{color:var(--green-2);font-weight:700;margin-top:2px}.gs-card{width:100%;max-width:min(360px,calc(100vw - 48px));background:#fff;border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:12px;box-shadow:0 10px 28px #0000001a}.gs-input{width:100%;padding:13px 16px;border:2px solid #e3dccb;border-radius:14px;font-size:1rem;background:#fbf9f3}.gs-input:focus{outline:none;border-color:var(--orange)}.gs-join{display:flex;gap:8px}.gs-join .gs-input{text-align:center;letter-spacing:3px;font-weight:800}.gs-warn{color:#b23;font-size:.85rem}.gs-foot{color:#8a8577;font-size:.8rem;max-width:calc(100vw - 48px)}.gs-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#141c168c;display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.gs-howto,.gs-standings,.gs-paint{background:var(--cream);border-radius:var(--radius);padding:20px;width:100%;max-width:380px;box-shadow:0 12px 30px #0000004d}.gs-howto h3,.gs-standings h2{color:var(--green);margin-bottom:12px}.gs-howto ol,.gs-standings ol{padding-left:4px;list-style:none;display:flex;flex-direction:column;gap:10px}.gs-howto li{line-height:1.4}.gs-standings li{display:flex;justify-content:space-between;padding:8px 10px;background:#fff;border-radius:10px}.gs-standings .gs-hint{text-align:center;color:#8a8577;margin:12px 0}.gs-room{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#10140f}.gs-stage{display:block;width:100%;height:100%}.gs-leave{position:fixed;top:10px;right:10px;width:38px;height:38px;border-radius:50%;background:#0006;color:#fff;font-size:1.1rem;z-index:40}.gs-banner{position:fixed;top:20%;left:50%;transform:translate(-50%);padding:14px 34px;border-radius:var(--pill);font-size:2rem;font-weight:900;color:#fff;text-align:center;z-index:30;animation:gs-pop .4s ease;pointer-events:none}.gs-banner small{display:block;font-size:.9rem;font-weight:700;opacity:.9}.gs-banner-hiding{background:var(--green)}.gs-banner-seeking{background:var(--orange)}@keyframes gs-pop{0%{transform:translate(-50%) scale(.6);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}.gs-hud{position:fixed;top:0;left:0;right:0;padding:12px;z-index:20;pointer-events:none}.gs-hud-top{display:flex;justify-content:center;gap:10px}.gs-timer{background:#00000080;color:#fff;font-weight:800;padding:6px 16px;border-radius:var(--pill)}.gs-danger{background:var(--orange);color:#fff;font-weight:800;padding:6px 14px;border-radius:var(--pill);animation:gs-flash .7s infinite alternate}@keyframes gs-flash{to{opacity:.55}}.gs-taps{display:flex;justify-content:center;gap:6px;margin-top:10px}.gs-pip{width:14px;height:14px;border-radius:50%;background:#ffffff4d;border:2px solid rgba(0,0,0,.3)}.gs-pip.on{background:var(--green)}.gs-hidebar{position:fixed;left:0;right:0;bottom:0;padding:12px 14px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(to top,#141c16eb,#141c1600);display:flex;flex-direction:column;gap:10px;z-index:25}.gs-poses{display:flex;gap:6px;overflow-x:auto}.gs-pose{flex:0 0 auto;background:#ffffffe6;color:var(--ink);font-weight:700;padding:8px 14px;border-radius:var(--pill);text-transform:capitalize}.gs-pose.on{background:var(--green);color:#fff}.gs-locked{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--green);color:#fff;font-weight:800;padding:10px 24px;border-radius:var(--pill);z-index:25}.gs-paint{max-width:340px;display:flex;flex-direction:column;gap:12px}.gs-paint-head{display:flex;flex-direction:column}.gs-paint-head strong{color:var(--green);font-size:1.1rem}.gs-hint{color:#8a8577;font-size:.82rem}.gs-paint-stage{position:relative;width:100%;max-height:46vh;background:#ddd;border-radius:14px;overflow:hidden;border:3px solid #fff}.gs-paint-guide,.gs-paint-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.gs-paint-guide{opacity:.45}.gs-swatches{display:flex;gap:8px;flex-wrap:wrap}.gs-swatch{width:34px;height:34px;border-radius:50%;border:3px solid #fff;box-shadow:0 1px 4px #0003}.gs-swatch-pick{position:relative;display:grid;place-items:center;overflow:hidden}.gs-swatch-pick input{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;opacity:0;width:150%;height:150%}.gs-tools,.gs-brushrow{display:flex;gap:8px}.gs-tool{flex:1;background:#fff;padding:10px 0;border-radius:12px;font-size:1.1rem}.gs-tool.on{background:var(--green);color:#fff}.gs-brushrow{justify-content:flex-start}.gs-brushdot{background:#fff;border-radius:12px;width:44px;height:40px;display:grid;place-items:center}.gs-brushdot.on{background:var(--green)}.gs-brushdot span{display:block;background:currentColor;border-radius:50%;color:var(--ink)}.gs-brushdot.on span{color:#fff}.gs-paint-actions{display:flex;gap:10px}.gs-paint-actions .gs-btn-ghost,.gs-paint-actions .gs-btn-primary{flex:1}.gs-reveal{position:fixed;top:0;right:0;bottom:0;left:0;background:#141c16d1;z-index:45;display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 18px calc(18px + env(safe-area-inset-bottom));overflow-y:auto}.gs-reveal h2{color:#fff}.gs-reveal-list{width:100%;max-width:360px;display:flex;flex-direction:column;gap:8px}.gs-reveal-row{display:flex;justify-content:space-between;align-items:center;background:var(--cream);padding:12px 16px;border-radius:12px;font-weight:700;color:var(--ink);width:100%}.gs-reveal-row.votable{border:2px solid var(--orange)}.gs-reveal-row.winner{background:#fff2cc}.gs-reveal-row:disabled{opacity:.85}.gs-reveal-tag{font-size:.8rem;padding:3px 10px;border-radius:var(--pill)}.gs-reveal-tag.safe{background:#d4edda;color:#1e6b34}.gs-reveal-tag.caught{background:#f6d3cd;color:#a5341f}.gs-emote-rain{display:flex;gap:6px;font-size:1.8rem;min-height:2rem}.gs-emote-bar{display:flex;gap:6px}.gs-emote-bar button{background:#ffffffe6;border-radius:12px;font-size:1.4rem;padding:6px 10px}.gs-share-btn{margin-top:6px}.gs-share-done{display:flex;gap:8px;width:100%;max-width:360px}.gs-share-done input{flex:1;padding:10px;border-radius:10px;border:none;font-size:.85rem}.gs-disconnected{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#fff;padding:12px 18px;border-radius:12px;z-index:60;font-weight:700}.gs-disconnected button{color:var(--orange);background:none;text-decoration:underline;margin-left:6px}.gs-challenge{min-height:100%;display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 16px;text-align:center;background:radial-gradient(120% 80% at 50% 0%,#d6ecec 0%,var(--cream) 55%)}.gs-challenge h2{color:var(--green)}.gs-challenge-stage{border-radius:14px;border:3px solid #fff;box-shadow:0 8px 24px #00000026;touch-action:none}.gs-win{color:#1e6b34;font-weight:800;font-size:1.2rem}.gs-lose{color:#a5341f;font-weight:800;font-size:1.2rem}a.gs-btn-primary{text-decoration:none;display:inline-block}
