@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{color:#f8f5ed;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--bg:#171615;--panel:#201f1d;--panel-light:#282724;--paper:#f8f5ed;--muted:#918f89;--line:#35332f;--lime:#c5ed45;--mono:"DM Mono", monospace;--display:"Space Grotesk", sans-serif;background:#171615;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:3px}::selection{color:#171615;background:var(--lime)}.app-shell{flex-direction:column;width:min(100%,1440px);min-height:100vh;margin:auto;padding:0 7.1%;display:flex}.topbar{border-bottom:1px solid #302e2a;justify-content:space-between;align-items:center;height:82px;display:flex}.brand{color:var(--paper);font:700 20px var(--display);letter-spacing:-1px;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:inline-flex}.brand-mark{background:var(--lime);color:#191a12;border-radius:9px;place-items:center;width:28px;height:28px;font-size:20px;display:grid}.brand-pop{color:var(--lime)}.topbar-right{color:#aaa79e;font:10px var(--mono);letter-spacing:1px;align-items:center;gap:9px;display:flex}.online-dot,.mini-live i,.waiting i,.status-pulse{background:var(--lime);border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 11px #c5ed4580}.topbar-divider{background:var(--line);width:1px;height:22px;margin:0 7px}.avatar{width:32px;height:32px;color:var(--lime);background:#303026;border:1px solid #4b493e;border-radius:50%;place-items:center;font-weight:700;display:grid}.landing{flex:1;grid-template-columns:1.1fr .9fr;align-items:center;gap:5%;min-height:620px;padding:62px 0 48px;display:grid}.landing-copy{max-width:620px}.eyebrow{color:var(--lime);font:10px var(--mono);letter-spacing:1.4px;align-items:center;gap:8px;display:flex}.sparkle{font-size:15px}h1,h2,h3,p{margin-top:0}.landing h1,.room-heading h1{color:var(--paper);font:700 clamp(44px, 5.4vw, 73px)/.99 var(--display);letter-spacing:-4.8px;margin:23px 0 16px}.landing h1 span,.room-heading h1>span{color:var(--lime)}.landing-desc{color:#a19e96;max-width:440px;margin-bottom:31px;font-size:15px;line-height:1.7}.name-field{gap:9px;max-width:420px;display:grid}.name-field label,.room-code-box>span,.how-label{color:#a19e96;font:10px var(--mono);letter-spacing:1.2px}.name-field input,.join-field input{width:100%;color:var(--paper);background:#201f1d;border:1px solid #41403a;border-radius:8px;outline:none;padding:14px 15px}.name-field input:focus,.join-field input:focus{border-color:#c5ed4580}.name-field input::placeholder,.join-field input::placeholder{color:#6f6c65}.action-row{align-items:center;gap:13px;margin-top:15px;display:flex}.button{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:13px;min-height:47px;padding:0 18px;font-size:13px;font-weight:700;transition:transform .18s,background .18s,opacity .18s;display:inline-flex}.button:not(:disabled):hover{transform:translateY(-2px)}.button:disabled{cursor:not-allowed;opacity:.55}.button-primary{background:var(--lime);color:#1d2014}.button-primary:hover:not(:disabled){background:#d2f56a}.button-primary span{font-size:17px}.or-label{color:#77736d;font:9px var(--mono);letter-spacing:.9px}.join-field{background:#201f1d;border:1px solid #41403a;border-radius:7px;height:47px;display:flex;overflow:hidden}.join-field input{width:114px;font:11px var(--mono);letter-spacing:1px;border:0;border-radius:0;padding:0 12px}.join-field button{width:43px;color:var(--lime);cursor:pointer;background:0 0;border:0;border-left:1px solid #41403a;font-size:20px}.feedback{color:var(--lime);margin:12px 0 0;font-size:12px}.feedback.error{color:#ff8f7c}.text-link{color:var(--lime);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.text-link:hover{color:#defb8c}.landing-copy>.text-link{margin-top:15px}.game-facts{color:#79766f;font:9px var(--mono);letter-spacing:.5px;align-items:center;gap:16px;margin-top:39px;display:flex}.game-facts b{color:#e5e1d8;margin-right:4px;font-size:11px;font-weight:500}.game-facts i{background:#615e57;border-radius:50%;width:3px;height:3px}.art-side{isolation:isolate;place-items:center;min-height:430px;display:grid;position:relative}.art-side:before{content:"";z-index:-2;aspect-ratio:1;background:radial-gradient(circle,#c4ed4514,#c4ed4500 68%);border-radius:50%;width:min(93%,430px);position:absolute}.art-orbit{z-index:-1;border:1px solid #5a594933;border-radius:50%;position:absolute;transform:rotate(-24deg)}.orbit-one{width:410px;height:250px}.orbit-two{width:340px;height:430px;transform:rotate(35deg)}.game-card{background:#242320;border:1px solid #45433d;border-radius:14px;width:min(100%,390px);padding:24px 25px 18px;transform:rotate(-3deg);box-shadow:0 22px 75px #0008}.card-top{color:#aaa79e;font:9px var(--mono);letter-spacing:.8px;justify-content:space-between;align-items:center;display:flex}.mini-live{color:var(--lime);align-items:center;gap:5px;font-size:8px;display:flex}.mini-live i{width:5px;height:5px}.card-prompt{color:#a7a39a;margin-top:39px;font-size:13px}.target-name{color:var(--paper);font:700 31px var(--display);letter-spacing:-1px;margin:1px 0 25px}.swatches{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.swatch{background:var(--swatch);border:2px solid #0000;border-radius:8px;height:65px;box-shadow:inset 0 -9px 18px #00000014}.swatch-1{outline:2px solid var(--lime);outline-offset:3px;transform:scale(.94)}.card-footer{color:#9a978f;font:9px var(--mono);justify-content:space-between;margin-top:19px;display:flex}.card-footer b{color:var(--lime);font-weight:500}.art-sticker{z-index:2;text-align:center;color:#1c1c17;background:var(--lime);width:86px;height:86px;font:700 10px/1.4 var(--mono);border-radius:50%;place-content:center;display:grid;position:absolute;transform:rotate(11deg);box-shadow:0 8px 25px #0006}.sticker-top{top:45px;right:0}.sticker-bottom{background:#ff7c5b;width:96px;height:96px;font-size:9px;bottom:28px;left:2px;transform:rotate(-13deg)}.art-confetti{color:var(--lime);font-size:25px;position:absolute}.confetti-a{color:#ff7c5b;font-size:34px;top:65px;left:17%}.confetti-b{color:#8a64f7;font-size:28px;bottom:90px;right:7%}.confetti-c{color:#41d5ca;font-size:20px;top:37%;right:5%}.landing-footer{color:#716e67;min-height:60px;font:9px var(--mono);letter-spacing:.8px;border-top:1px solid #302e2a;justify-content:space-between;align-items:center;display:flex}.landing-footer i,.room-bottom i{color:var(--lime);font-style:normal}.landing-footer a{color:#8d8980;text-decoration:none}.room-view{flex:1;width:100%;max-width:1030px;margin:0 auto;padding:47px 0 20px}.room-heading{justify-content:space-between;align-items:end;margin-bottom:28px;display:flex}.room-heading h1{letter-spacing:-3px;margin:17px 0 0;font-size:clamp(38px,5vw,58px)}.room-heading h1 small{color:#77746d;letter-spacing:-1px;font-size:.55em}.room-code-box{border:1px solid #3c3a34;border-radius:8px;grid-template-columns:auto auto;align-items:center;gap:2px 12px;padding:11px 13px;display:grid}.room-code-box>span{grid-column:1/3;font-size:8px}.room-code-box strong{font:600 20px var(--mono);letter-spacing:3px}.room-code-box button{color:var(--lime);cursor:pointer;background:0 0;border:0;grid-area:2/2;font-size:18px}.lobby-grid{grid-template-columns:1.55fr .95fr;gap:20px;display:grid}.lobby-main,.how-card,.play-panel,.score-panel,.finish-card{background:#201f1d;border:1px solid #393731;border-radius:12px}.lobby-main{padding:22px}.lobby-banner{background:#282820;border:1px solid #424237;border-radius:8px;align-items:center;gap:15px;padding:17px;display:flex}.banner-spark{width:40px;height:40px;color:var(--lime);background:#c5ed451c;border-radius:11px;flex:0 0 40px;place-items:center;font-size:23px;display:grid}.lobby-banner strong{color:var(--paper);font-size:13px}.lobby-banner p{color:#9c9990;margin:4px 0 0;font-size:11px}.player-list-heading{justify-content:space-between;align-items:center;margin:26px 1px 12px;display:flex}.player-list-heading h2,.score-heading h2{color:var(--paper);font:600 15px var(--display);margin:0}.player-list-heading h2 span{color:#87847c;font:10px var(--mono);margin-left:4px}.waiting{color:#96938a;font:8px var(--mono);letter-spacing:.5px;align-items:center;gap:6px;display:flex}.waiting i{width:6px;height:6px}.players-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.player-tile{background:#242320;border:1px solid #37352f;border-radius:7px;align-items:center;gap:10px;min-width:0;padding:10px;display:flex}.player-avatar,.score-avatar{color:#201f1d;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.tint-0{background:#c5ed45}.tint-1{background:#ff784f}.tint-2{color:#fff;background:#4e7bff}.tint-3{background:#ff68b5}.tint-4{background:#42d5ce}.tint-5{color:#fff;background:#a17aff}.player-tile>div:nth-child(2){gap:2px;min-width:0;display:grid}.player-tile strong,.score-row strong{color:#f0ede5;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.player-tile small{color:#89867d;font:8px var(--mono);letter-spacing:.5px}.player-tile em,.score-row em{color:var(--lime);font:8px var(--mono);margin-left:5px;font-style:normal}.ready-check{width:19px;height:19px;color:var(--lime);background:#c5ed4521;border-radius:50%;place-items:center;margin-left:auto;font-size:11px;display:grid}.lobby-actions{gap:9px;margin-top:21px;display:flex}.button-quiet{color:#d3d0c7;background:0 0;border:1px solid #48463e}.how-card{padding:23px 22px}.how-label{color:var(--lime);font-size:8px}.how-card h3{color:var(--paper);font:600 21px/1.18 var(--display);letter-spacing:-.7px;margin:12px 0 21px}.how-card ol{margin:0;padding:0;list-style:none}.how-card li{border-top:1px solid #37352f;gap:12px;padding:12px 0;display:flex}.how-card li>span{color:var(--lime);font:10px var(--mono);padding-top:2px}.how-card li b{color:#eeebe3;font-size:11px}.how-card li p{color:#949188;margin:3px 0 0;font-size:10px}.how-foot{color:#a09d90;font:8px var(--mono);letter-spacing:.3px;margin-top:11px}.room-bottom{color:#77746d;font:9px var(--mono);letter-spacing:.5px;justify-content:space-between;align-items:center;margin-top:23px;display:flex}.room-bottom .text-link{font-size:10px}.game-layout{grid-template-columns:1fr 290px;gap:18px;display:grid}.play-panel{padding:22px 26px}.round-meta{color:#a7a399;font:9px var(--mono);letter-spacing:1px;justify-content:space-between;align-items:center;display:flex}.round-meta>span i{color:#5f5c54;padding:0 5px;font-style:normal}.timer{color:#97948b;font:8px var(--mono);align-items:center;gap:6px;display:flex}.timer>span{width:31px;height:31px;color:var(--lime);font:12px var(--mono);border:1px solid #46443a;border-radius:50%;place-items:center;display:grid}.timer>span.timer-urgent{color:#ff7c5b;border-color:#ff7c5b}.prompt-area{text-align:center;padding:30px 0 19px}.prompt-caption{color:#9a978e;font:9px var(--mono);letter-spacing:1px}.prompt-area h2{color:var(--paper);font:700 clamp(26px, 4vw, 40px) var(--display);letter-spacing:-1.5px;margin:8px 0}.prompt-area h2 span{color:var(--lime)}.prompt-area p{color:#918e86;margin:0;font-size:11px}.color-options{grid-template-columns:repeat(3,1fr);gap:10px;max-width:500px;margin:0 auto;display:grid}.color-option{aspect-ratio:1.7;cursor:pointer;animation:.3s both pop-in;animation-delay:var(--delay);background:0 0;border:2px solid #0000;border-radius:9px;padding:0;transition:transform .18s,border-color .18s,opacity .18s;position:relative;overflow:hidden}.color-option span{background:var(--swatch);width:100%;height:100%;display:block;box-shadow:inset 0 -11px 18px #00000013}.color-guess-label{color:#fff;font:8px var(--mono);letter-spacing:1px;background:#171615c9;padding:4px;position:absolute;inset:auto 0 0}.color-option:not(:disabled):hover{border-color:var(--paper);transform:scale(1.035)}.color-option.option-disabled{opacity:.68}.color-option:disabled{cursor:default}.play-status{color:#918e86;justify-content:center;align-items:center;gap:8px;margin-top:18px;font-size:10px;display:flex}.status-good{color:var(--lime);font-weight:700}.status-bad{color:#ff927e;font-weight:700}.status-pulse{width:6px;height:6px;animation:1.4s infinite pulse}.score-panel{padding:20px 18px}.score-heading{border-bottom:1px solid #393731;justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.score-heading span{color:var(--lime)}.score-row{border-bottom:1px solid #35332e;grid-template-columns:22px 28px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:47px;display:grid}.score-row.score-me{background:#c5ed450c;border-radius:5px;margin:0 -6px;padding:0 6px}.rank{color:#77746d;font:9px var(--mono)}.score-avatar{width:25px;height:25px;font-size:10px}.score-row strong{font-size:10px}.score-row>b{color:var(--lime);font:600 12px var(--mono)}.score-row>b small{color:#89867d;font-size:8px;font-weight:400}.score-note{color:#8c8981;font:8px/1.8 var(--mono);letter-spacing:.2px;padding-top:14px}.finish-card{text-align:center;max-width:560px;margin:25px auto 0;padding:34px}.finish-star{color:var(--lime);margin-bottom:12px;font-size:33px}.finish-card h2{color:var(--paper);font:700 36px var(--display);letter-spacing:-1.5px;margin:11px 0}.finish-card h2 span{color:var(--lime)}.finish-card>p{color:#a09d94;font-size:12px}.finish-scores{text-align:left;margin:24px 0}.finish-scores>div{border-top:1px solid #38362f;grid-template-columns:35px 1fr auto;padding:10px 6px;font-size:12px;display:grid}.finish-scores span{color:var(--lime);font:10px var(--mono)}.finish-scores strong{color:var(--lime);font-family:var(--mono)}@keyframes pop-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{opacity:.35;box-shadow:0 0 0 5px #c5ed4518}}@media (width>=1200px){.app-shell{padding-inline:8.5%}}@media (width<=900px){.app-shell{padding-inline:5%}.landing{gap:2%}.landing h1{letter-spacing:-3.5px}.art-side{transform:scale(.9)}.lobby-grid{grid-template-columns:1.2fr .9fr}.game-layout{grid-template-columns:1fr 255px}}@media (width<=700px){.app-shell{padding-inline:22px}.topbar{height:66px}.topbar-right{font-size:8px}.landing{flex-direction:column;align-items:stretch;gap:16px;padding:44px 0 25px;display:flex}.landing-copy{order:0}.landing h1{letter-spacing:-3.5px;font-size:clamp(45px,11vw,67px)}.landing-desc{font-size:13px}.art-side{order:1;min-height:325px;transform:none}.game-card{width:min(88%,350px);padding:19px}.card-prompt{margin-top:26px}.target-name{font-size:26px}.swatch{height:52px}.orbit-one{width:340px;height:220px}.orbit-two{width:290px;height:360px}.sticker-top{width:72px;height:72px;font-size:8px;top:10px;right:2%}.sticker-bottom{width:80px;height:80px;font-size:8px;bottom:3px;left:2%}.action-row{flex-wrap:wrap}.button-primary{flex:1}.or-label{margin-left:4px}.join-field{flex:1}.join-field input{width:100%}.game-facts{gap:10px;margin-top:25px;font-size:8px}.landing-footer{min-height:55px;font-size:7px}.room-view{padding-top:31px}.room-heading{align-items:flex-start;gap:12px}.room-heading h1{font-size:clamp(35px,9vw,49px)}.room-code-box{padding:9px}.room-code-box strong{font-size:16px}.lobby-grid,.game-layout{grid-template-columns:1fr}.how-card{order:2}.lobby-main{padding:15px}.lobby-banner{padding:13px}.players-grid{gap:6px}.player-tile{gap:7px;padding:8px}.player-avatar{width:30px;height:30px}.lobby-actions{flex-direction:column}.how-card{padding:18px}.room-bottom{margin:20px 0;font-size:7px}.play-panel{padding:18px 15px}.prompt-area{padding-top:25px}.score-panel{padding:16px}.color-options{gap:7px}.color-option{aspect-ratio:1.45}.finish-card{padding:26px 18px}.finish-card h2{font-size:29px}}@media (width<=390px){.app-shell{padding-inline:16px}.action-row{gap:8px}.button{padding-inline:12px}.game-facts{letter-spacing:0;gap:7px}.player-tile strong{font-size:10px}.room-heading h1{letter-spacing:-2px}}
