@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Fredoka:wght@500;600;700&display=swap');
:root{font-family:'DM Sans',system-ui,sans-serif;color:#f7f5ff;background:#101326;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% 10%,#27224b 0,#101326 55%);overflow-x:hidden}.ambient{position:fixed;pointer-events:none;border-radius:50%;filter:blur(95px);opacity:.19}.ambient.a{width:360px;height:360px;background:#ee66bd;top:-120px;left:-140px}.ambient.b{width:420px;height:420px;background:#724bdf;bottom:0;right:-150px}.app-shell{max-width:1080px;margin:0 auto;padding:28px 22px;position:relative}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.logo{font-weight:800;letter-spacing:1.1px;font-size:19px}.logo-mark{color:#ffca67;font-size:31px;vertical-align:middle}.amp{color:#f19cd3}.logo small{display:block;color:#aa9ac4;font-size:9px;letter-spacing:2.2px;margin-left:37px;margin-top:-3px}.pill{color:#d8cdec;border:1px solid #45405d;padding:8px 12px;border-radius:24px;font-size:12px}.hero{text-align:center;padding:54px 0 30px}.eyebrow,.tiny-title,label{color:#bcb0d9;font-size:11px;font-weight:800;letter-spacing:2px}.hero h1{font:700 clamp(46px,8vw,82px)/1.05 'Fredoka',sans-serif;margin:13px 0}.hero h1 em{font-style:normal;color:#ffa9d5}.hero p{color:#b9b4cb;font-size:16px;margin-top:12px}.panel{background:#1d2039;border:1px solid #393653;border-radius:24px;box-shadow:0 18px 50px #06081244}.setup{max-width:780px;margin:0 auto;padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.puffer-wrap{display:grid;place-items:center;min-height:270px}.puffer{position:relative;width:218px;height:218px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#ffeabc 0%,#ffbd71 50%,#f47b9b 100%);box-shadow:0 20px 0 #c75c8680,0 0 70px #f29cc949;animation:float 3s ease-in-out infinite}.puffer:before,.puffer:after{content:'✦';position:absolute;font-size:33px;color:#ffb76b}.puffer:before{top:30px;left:-22px}.puffer:after{right:-19px;bottom:45px}.spike{position:absolute;color:#ffd18b;font-size:40px}.s1{top:-30px;left:90px}.s2{left:23px;bottom:-20px}.s3{right:25px;top:-18px}.eye{position:absolute;background:#352643;width:20px;height:26px;border-radius:50%;top:83px}.eye.l{left:63px}.eye.r{right:63px}.eye:before{content:'';position:absolute;width:7px;height:8px;background:#fff;border-radius:50%;top:4px;left:5px}.mouth{position:absolute;width:28px;height:23px;bottom:67px;left:95px;border-radius:50%;background:#783b67;box-shadow:inset 0 -8px #dd6690}@keyframes float{50%{transform:translateY(-12px)}}.setup-actions{display:grid;gap:13px}.field{display:grid;gap:8px}input{width:100%;background:#13172c;color:#fff;border:1px solid #514d71;border-radius:13px;padding:15px 16px;outline:none;font:600 15px 'DM Sans',sans-serif}input:focus{border-color:#ffabd6;box-shadow:0 0 0 3px #ffabd61e}input::placeholder{color:#74718c}.btn{border:0;border-radius:13px;padding:15px 18px;font:800 14px 'DM Sans',sans-serif;cursor:pointer;transition:transform .15s,filter .15s}.btn:hover{transform:translateY(-1px);filter:brightness(1.07)}.btn:disabled{opacity:.5;cursor:wait}.btn-primary{background:linear-gradient(115deg,#ffb8c9,#ffaa75);color:#332239}.btn-secondary{background:#36314f;color:#fff;border:1px solid #514b71}.btn span{float:right}.or{display:flex;align-items:center;gap:15px;color:#928ba9;font-size:11px;letter-spacing:1.2px}.or:before,.or:after{content:'';height:1px;background:#45405d;flex:1}.join-row{display:flex;gap:9px}.join-row input{flex:1;min-width:0}.join-row .btn{white-space:nowrap}.subtle{font-size:12px;color:#9690b0;line-height:1.6}.status-strip{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:17px}.tag{background:#30304b;color:#c7bfdc;border-radius:40px;padding:9px 13px;font-weight:800;font-size:11px;letter-spacing:1px}.tag.alt{background:#45334e;color:#ffd2ae}.columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:18px}.game-panel{text-align:center;padding:35px 29px;min-height:340px}.game-panel h2{font:600 clamp(27px,4vw,39px)/1.17 'Fredoka',sans-serif;margin:20px 0 14px}.game-panel p{color:#b5b0c9;line-height:1.6}.room-code{font:700 48px 'Fredoka',sans-serif;letter-spacing:12px;color:#ffb9d1;margin:12px 0}.host-controls{display:grid;gap:10px;max-width:350px;margin:25px auto 0}.host-controls small{color:#9c96b6}.host-crown{font-size:12px;color:#ffd5ab;font-weight:700}.scoreboard{padding:22px}.score-head{display:flex;justify-content:space-between;font-size:11px;font-weight:800;color:#d9d0f2;letter-spacing:1px;gap:8px;border-bottom:1px solid #3b3853;padding-bottom:19px}.score-head span:last-child{color:#ffcd91}.player-list{display:grid;gap:6px;margin-top:13px;max-height:500px;overflow:auto}.person{display:flex;align-items:center;gap:9px;padding:11px 9px;background:#292943;border-radius:11px;min-width:0}.person.me{border:1px solid #b989c9}.person.out{opacity:.45}.avatar{background:#544267;color:#ffe9cb;display:grid;place-items:center;flex:0 0 29px;height:29px;border-radius:50%;font-weight:800}.person-name{font-size:13px;font-weight:700;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hearts{white-space:nowrap;color:#fd8fa8;font-size:15px}.fuse-line{margin:23px auto;color:#ffbb94;border:1px solid #6d4f69;border-radius:40px;padding:10px 14px;display:inline-flex;gap:9px;align-items:center;font-weight:800;font-size:11px;letter-spacing:1px}.fuse-glow{animation:blink 1s infinite}@keyframes blink{50%{opacity:.2}}.holder{background:#322b50;border-radius:15px;padding:15px;color:#ffd9ba;font:600 22px 'Fredoka';margin:0 0 24px}#answerForm{text-align:left;display:grid;gap:11px}#spectator{color:#b0a8d0;font-size:14px}.used{margin-top:20px;color:#a99fbc;font-size:12px;line-height:1.7}.event-banner{background:#302643;border:1px solid #4b3862;color:#ffdfec;text-align:center;border-radius:15px;padding:16px;margin-top:15px;font-size:14px}.confetti{font-size:50px}.footer{display:flex;justify-content:space-between;color:#85809c;margin:20px 0}.quiet{background:none;border:0;color:#d9abda;cursor:pointer}.notice{background:#553247;border:1px solid #ae637d;padding:14px 16px;border-radius:12px;margin:0 0 15px;color:#ffe4e9}.hidden{display:none!important}@media(max-width:740px){.setup{grid-template-columns:1fr;gap:10px;padding:22px}.puffer-wrap{min-height:210px}.puffer{transform:scale(.7);animation:none;margin:-35px}.columns{grid-template-columns:1fr}.hero{padding:45px 0 25px}.hero p{font-size:14px}.game-panel{padding:27px 18px}.topbar{align-items:flex-start}.pill{font-size:10px}.scoreboard{padding:18px}.room-code{font-size:39px;letter-spacing:8px}}
