html{scroll-behavior:smooth}img,video{max-width:100%;display:block}:root{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--accent:#7c5cfc;--accent-up:#a98aff;--accent-soft:#7c5cfc21;--accent-glow:#7c5cfc4d;--accent-border:#7c5cfc47;--red:#f05060;--red-soft:#f050601f;--blue:#4d8eff;--blue-soft:#4d8eff1f;--correct:#34d399;--correct-soft:#34d3991f;--wrong:#f87171;--wrong-soft:#f871711f;--missed:#fbbf24;--missed-soft:#fbbf241f;--bg:#07081a;--surface:#0b0d1ef5;--surface-soft:#11132aeb;--text:#eeeffe;--muted:#8892b0;--border:#ffffff14;--shadow:0 28px 72px #0000148c;--shadow-sm:0 8px 28px #00001459;--shadow-glow:0 16px 48px #7c5cfc33;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px}.theme-light{--bg:#f1f2fb;--surface:#fffffffa;--surface-soft:#eeeffcf2;--text:#1a1b2e;--muted:#6b7291;--border:#00000017;--shadow:0 28px 72px #0000281c;--shadow-sm:0 8px 28px #00002812;--shadow-glow:0 16px 48px #7c5cfc1f}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--text);background:var(--bg);font-family:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:none}button:disabled{opacity:.4;cursor:not-allowed}.app-game{background:var(--bg);width:100%;min-height:100vh;color:var(--text);isolation:isolate;position:relative}.app-game:before,.app-game:after{content:"";pointer-events:none;z-index:0;border-radius:50%;position:fixed}.app-game:before{background:radial-gradient(circle,#7c5cfc21 0%,#0000 68%);width:80vw;max-width:900px;height:80vw;max-height:900px;animation:18s ease-in-out infinite alternate aurora-1;top:-35%;left:-25%}.app-game:after{background:radial-gradient(circle,#4d8eff17 0%,#0000 68%);width:70vw;max-width:780px;height:70vw;max-height:780px;animation:14s ease-in-out infinite alternate aurora-2;bottom:-30%;right:-20%}.theme-light.app-game:before{background:radial-gradient(circle,#7c5cfc12 0%,#0000 68%)}.theme-light.app-game:after{background:radial-gradient(circle,#4d8eff0d 0%,#0000 68%)}.home-wrapper{z-index:1;justify-content:center;align-items:center;min-height:100vh;padding:2rem 2rem 3.5rem;display:flex;position:relative}.game-main{z-index:1;width:100%;min-height:100dvh;position:relative}.corner-controls{z-index:100;flex-direction:row;align-items:center;gap:.55rem;display:flex;position:fixed;top:1rem;right:1rem}.corner-btn{background:var(--surface);border:1.5px solid var(--border);width:52px;height:52px;color:var(--text);box-shadow:var(--shadow-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.4rem;transition:transform .2s,box-shadow .2s,background .2s;display:flex}.corner-btn:hover{box-shadow:0 10px 28px var(--accent-glow);transform:scale(1.08)}.corner-btn:active{transition-duration:80ms;transform:scale(.94)}.corner-btn-leave{letter-spacing:.04em;width:auto;height:52px;color:var(--muted);border-radius:999px;gap:.3rem;padding:0 1.2rem;font-size:.92rem;font-weight:800}.corner-btn-leave:hover{color:var(--text);border-color:#ff505066;box-shadow:0 6px 20px #ff50502e}.settings-popover{z-index:100;background:var(--surface);border:1px solid var(--border);width:min(240px,100vw - 5.5rem);box-shadow:var(--shadow);border-radius:16px;padding:1rem;animation:.22s both fade-in-up;position:fixed;top:1.25rem;right:4.5rem}.settings-popover-header{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:.9rem;font-size:.82rem;font-weight:700;display:flex}.settings-close{background:var(--surface-soft);width:1.6rem;height:1.6rem;color:var(--muted);border-radius:50%;place-items:center;font-size:.8rem;transition:background .15s;display:grid}.settings-close:hover{background:var(--accent-soft)}.settings-row{justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.settings-row+.settings-row{border-top:1px solid var(--border)}.settings-row label{font-size:.875rem;font-weight:500}.settings-row select{border:1px solid var(--border);background:var(--surface-soft);color:var(--text);cursor:pointer;border-radius:8px;outline:none;padding:.35rem .6rem;font-size:.82rem;transition:border-color .15s}.settings-row select:focus{border-color:var(--accent)}.home-screen{flex-direction:column;gap:2.75rem;width:100%;max-width:900px;display:flex}.home-hero{text-align:center;flex-direction:column;align-items:center;display:flex}.home-eyebrow{background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--accent-up);text-transform:uppercase;letter-spacing:.14em;border-radius:999px;align-items:center;gap:.45rem;margin-bottom:1.35rem;padding:.48rem 1.1rem;font-size:.78rem;font-weight:800;animation:.45s both fade-in-up;display:inline-flex}.home-title{letter-spacing:-.045em;background:linear-gradient(140deg,#d4bbff 0%,#9066f8 38%,#6490ff 100%) 0 0/200% 200%;-webkit-text-fill-color:transparent;text-transform:uppercase;will-change:background-position;-webkit-background-clip:text;background-clip:text;margin:0 0 1.4rem;padding:.08em .04em .12em;font-size:clamp(4.5rem,13vw,10rem);font-weight:900;line-height:1;animation:.65s cubic-bezier(.22,1,.36,1) 80ms both title-entrance,8s ease-in-out 1s infinite gradient-drift;overflow:visible}.home-tagline{color:var(--muted);max-width:38ch;margin:0 0 1.5rem;font-size:clamp(1rem,2.2vw,1.2rem);font-weight:500;line-height:1.55;animation:.5s .18s both fade-in-up}.home-features{flex-wrap:wrap;justify-content:center;gap:.6rem;animation:.5s .26s both fade-in-up;display:flex}.home-feature-pill{border:1px solid var(--border);color:var(--text);background:#ffffff0a;border-radius:999px;align-items:center;gap:.4rem;padding:.52rem 1rem;font-size:.85rem;font-weight:500;line-height:1;transition:background .18s,border-color .18s;display:inline-flex}.home-feature-pill:hover{background:var(--accent-soft);border-color:var(--accent-border)}.home-name-section{width:100%;max-width:520px;margin:0 auto;animation:.5s .34s both fade-in-up}.home-name-section .form-label{color:var(--muted);text-transform:uppercase;letter-spacing:.13em;margin-bottom:.6rem;font-size:.78rem;font-weight:800}.home-name-input{text-align:center;background:var(--surface);border:2px solid var(--border);width:100%;color:var(--text);letter-spacing:.01em;border-radius:18px;outline:none;padding:1.05rem 1.35rem;font-size:1.2rem;font-weight:700;transition:border-color .2s,box-shadow .2s,background .2s;display:block}.home-name-input::placeholder{color:var(--muted);opacity:.55;font-weight:500}.home-name-input:focus{border-color:var(--accent);background:var(--surface-soft);animation:.3s cubic-bezier(.34,1.56,.64,1) both input-focus-pop;box-shadow:0 0 0 4px #7c5cfc1f,0 0 28px #7c5cfc14}.home-actions{grid-template-columns:1fr 1fr;gap:1.25rem;animation:.5s .42s both fade-in-up;display:grid}.home-action-card{background:var(--surface);border:1.5px solid var(--border);border-radius:28px;flex-direction:column;gap:.85rem;padding:2.25rem 2rem 2rem;transition:transform .24s cubic-bezier(.22,1,.36,1),border-color .24s,box-shadow .24s;display:flex;position:relative;overflow:hidden}.home-action-card:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#7c5cfc66,#0000);height:1px;transition:opacity .24s;position:absolute;top:0;left:0;right:0}.home-action-card:hover{box-shadow:var(--shadow-glow);border-color:#7c5cfc52;transform:translateY(-6px)}.home-action-card:hover:before{opacity:1}.home-action-card.join-card:hover{border-color:#4d8eff52;box-shadow:0 16px 48px #4d8eff2e}.home-action-card.join-card:before{background:linear-gradient(90deg,#0000,#4d8eff66,#0000)}.action-card-icon{background:var(--accent-soft);border:1px solid #7c5cfc33;border-radius:14px;flex-shrink:0;place-items:center;width:3rem;height:3rem;font-size:1.3rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:grid}.home-action-card:hover .action-card-icon{transform:scale(1.12)rotate(-4deg)}.join-card .action-card-icon{background:#4d8eff1a;border-color:#4d8eff33}.action-card-title{letter-spacing:-.025em;margin:0;font-size:1.45rem;font-weight:900;line-height:1.1}.action-card-desc{color:var(--muted);flex:1;margin:0;font-size:.875rem;line-height:1.6}.code-input{letter-spacing:.3em;text-align:center;text-transform:uppercase;background:var(--surface-soft);border:2px solid var(--border);width:100%;color:var(--text);border-radius:14px;outline:none;padding:.9rem 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.6rem;font-weight:900;transition:border-color .2s,box-shadow .2s;display:block}.code-input::placeholder{color:var(--muted);opacity:.4;letter-spacing:.2em;font-weight:700}.code-input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #4d8eff1f}.home-error{text-align:center;color:var(--red);background:#f050601a;border:1px solid #f050603d;border-radius:14px;max-width:520px;margin:0 auto;padding:.9rem 1.4rem;font-size:.92rem;font-weight:600;animation:.44s cubic-bezier(.36,.07,.19,.97) both shake}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:20px;padding:1.5rem}.card-label{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-up);margin-bottom:.4rem;font-size:.65rem;font-weight:800;display:inline-block}.card-title{letter-spacing:-.01em;margin:0;font-size:1.05rem;font-weight:700}.card-body{color:var(--muted);margin:.6rem 0 0;font-size:.92rem;line-height:1.7}.btn{letter-spacing:-.01em;border:1.5px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:.4rem;padding:.78rem 1.4rem;font-size:.95rem;font-weight:700;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s,background .18s,border-color .18s,opacity .18s;display:inline-flex}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:active:not(:disabled){transition-duration:60ms;transform:translateY(1px)scale(.97)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 6px 22px var(--accent-glow)}.btn-primary:hover:not(:disabled){background:var(--accent-up);box-shadow:0 10px 32px var(--accent-glow)}.btn-primary:active:not(:disabled){box-shadow:0 2px 8px var(--accent-glow)}.btn-ghost{background:var(--surface-soft);color:var(--muted);border-color:var(--border)}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:#ffffff2e}.btn-danger{background:var(--red-soft);color:var(--red);border-color:#f050603d}.btn-danger:hover:not(:disabled){background:#f0506033;box-shadow:0 6px 18px #f0506033}.btn-cta{letter-spacing:-.02em;border-radius:16px;padding:1rem 2rem;font-size:1.05rem;font-weight:800}.btn-full{width:100%}.btn-sm{border-radius:9px;padding:.48rem .9rem;font-size:.85rem}.input-field{box-sizing:border-box;background:var(--surface-soft);border:1.5px solid var(--border);width:100%;color:var(--text);border-radius:12px;outline:none;padding:.8rem 1rem;font-size:1rem;transition:border-color .18s,box-shadow .18s,background .18s;display:block}.input-field::placeholder{color:var(--muted);opacity:.7}.input-field:focus{background:var(--surface);border-color:#7c5cfc8c;box-shadow:0 0 0 3px #7c5cfc1c,0 0 18px #7c5cfc12}.input-number{text-align:center;width:5.5rem}.phase-banner{background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:16px;padding:1.1rem 1.35rem;animation:.38s both fade-in-up}.phase-banner.team-red{background:var(--red-soft);border-color:#f0506038}.phase-banner.team-blue{background:var(--blue-soft);border-color:#4d8eff38}.phase-chip{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-up);margin-bottom:.3rem;font-size:.63rem;font-weight:800;display:inline-block}.phase-chip.team-red{color:var(--red)}.phase-chip.team-blue{color:var(--blue)}.phase-title{margin:0;font-size:1.15rem;font-weight:700;line-height:1.35}.phase-body{color:var(--muted);margin:.35rem 0 0;font-size:.88rem;line-height:1.55}.hint-display{text-align:center;border-radius:20px;padding:1.75rem 1.5rem;animation:.45s cubic-bezier(.34,1.56,.64,1) both pop-in}.hint-super{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 .35rem;font-size:.67rem;font-weight:800}.hint-word{letter-spacing:.1em;margin:0 0 .5rem;font-size:clamp(2.25rem,7vw,3.75rem);font-weight:900;line-height:1}.hint-for{color:var(--muted);margin:0;font-size:.92rem}.hint-for strong{color:var(--text)}.team-pick-section{margin-bottom:1.25rem}.team-pick-label{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.6rem;font-size:.75rem;font-weight:800;display:block}.team-pick-row{flex-wrap:wrap;gap:.5rem;display:flex}.team-pick-btn{border:1.5px solid var(--border);color:var(--muted);background:0 0;border-radius:999px;padding:.5rem 1.1rem;font-size:.88rem;font-weight:700;transition:all .2s cubic-bezier(.22,1,.36,1)}.team-pick-btn:hover{opacity:.88;transform:translateY(-1px)}.team-pick-btn:active{transition-duration:60ms;transform:scale(.95)}.team-pick-btn.active-none{background:var(--surface-soft);color:var(--text);border-color:#fff3}.team-pick-btn.active-red{background:var(--red-soft);border-color:var(--red);color:var(--red)}.team-pick-btn.active-blue{background:var(--blue-soft);border-color:var(--blue);color:var(--blue)}.team-grid{grid-template-columns:1fr 1fr 1fr;gap:.75rem;margin-bottom:1.5rem;display:grid}.team-panel{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--border);border-radius:16px;min-height:5rem;padding:1rem;transition:border-top-color .3s}.team-panel.red{border-top-color:var(--red)}.team-panel.blue{border-top-color:var(--blue)}.team-panel-title{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 .6rem;font-size:.7rem;font-weight:800}.team-panel.red .team-panel-title{color:var(--red)}.team-panel.blue .team-panel-title{color:var(--blue)}.team-player-list{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.team-player-item{align-items:center;gap:.3rem;font-size:.9rem;display:flex}.team-player-item.offline{opacity:.42}.player-tag{color:var(--muted);font-size:.7rem}.team-empty{color:var(--muted);margin:0;font-size:.82rem;font-style:italic}.captains-row{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.25rem;display:grid}.captain-card{background:var(--surface);border:1.5px solid var(--border);border-radius:16px;padding:1rem 1.2rem;transition:border-color .28s,background .28s,box-shadow .28s}.captain-card.active-red{background:var(--red-soft);border-color:var(--red);box-shadow:0 0 24px #f0506026,inset 0 0 20px #f050600d}.captain-card.active-blue{background:var(--blue-soft);border-color:var(--blue);box-shadow:0 0 24px #4d8eff26,inset 0 0 20px #4d8eff0d}.captain-card.offline{opacity:.52}.captain-team-label{letter-spacing:.14em;text-transform:uppercase;margin:0 0 .25rem;font-size:.63rem;font-weight:800}.captain-team-label.red{color:var(--red)}.captain-team-label.blue{color:var(--blue)}.captain-name{flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;font-size:1rem;font-weight:600;display:flex}.bid-log{flex-direction:column;gap:.3rem;margin:.85rem 0 0;padding:0;list-style:none;display:flex}.bid-row{align-items:center;gap:.5rem;font-size:.9rem;animation:.28s both fade-in-left;display:flex}.bid-dot{border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem}.bid-dot.red{background:var(--red)}.bid-dot.blue{background:var(--blue)}.bid-empty-msg{color:var(--muted);font-size:.88rem;font-style:italic}.action-zone{background:var(--surface);border:1.5px solid var(--border);border-radius:16px;padding:1.25rem 1.35rem;transition:border-color .28s,background .28s}.action-zone.active-red{background:var(--red-soft);border-color:var(--red)}.action-zone.active-blue{background:var(--blue-soft);border-color:var(--blue)}.action-title{margin:0 0 .25rem;font-size:1rem;font-weight:700}.action-row{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:.75rem;display:flex}.action-hint{color:var(--muted);margin:.5rem 0 0;font-size:.8rem;line-height:1.55}.board-section-title{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:2rem 0 .35rem;font-size:.75rem;font-weight:800}.board-section-hint{color:var(--muted);margin:0 0 .75rem;font-size:.82rem;line-height:1.5}.board{grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem;width:100%;display:grid;overflow:hidden}.board-tile{background:var(--surface);border:1.5px solid var(--border);min-height:5rem;color:var(--text);letter-spacing:.04em;text-align:center;text-transform:uppercase;-webkit-user-select:none;user-select:none;cursor:default;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:.22rem;min-width:0;padding:1rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;font-weight:700;transition:transform .15s cubic-bezier(.22,1,.36,1),border-color .15s,background .15s,box-shadow .15s;animation:.38s cubic-bezier(.34,1.56,.64,1) both tile-in;display:flex;overflow:hidden}.board-tile-word{white-space:nowrap;max-width:100%;line-height:1.1;display:block;overflow:hidden}.board-tile:first-child{animation-delay:20ms}.board-tile:nth-child(2){animation-delay:40ms}.board-tile:nth-child(3){animation-delay:60ms}.board-tile:nth-child(4){animation-delay:80ms}.board-tile:nth-child(5){animation-delay:.1s}.board-tile:nth-child(6){animation-delay:.12s}.board-tile:nth-child(7){animation-delay:.14s}.board-tile:nth-child(8){animation-delay:.16s}.board-tile:nth-child(9){animation-delay:.18s}.board-tile:nth-child(10){animation-delay:.2s}.board-tile:nth-child(11){animation-delay:.22s}.board-tile:nth-child(12){animation-delay:.24s}.board-tile:nth-child(13){animation-delay:.26s}.board-tile:nth-child(14){animation-delay:.28s}.board-tile:nth-child(15){animation-delay:.3s}.board-tile:nth-child(16){animation-delay:.32s}.board-tile:nth-child(17){animation-delay:.34s}.board-tile:nth-child(18){animation-delay:.36s}.board-tile:nth-child(19){animation-delay:.38s}.board-tile:nth-child(20){animation-delay:.4s}.board-tile:nth-child(21){animation-delay:.42s}.board-tile:nth-child(22){animation-delay:.44s}.board-tile:nth-child(23){animation-delay:.46s}.board-tile:nth-child(24){animation-delay:.48s}.board-tile:nth-child(25){animation-delay:.5s}.board-tile.clickable{cursor:pointer}.board-tile.clickable:hover{z-index:1;border-color:#7c5cfc73;transform:translateY(-3px)scale(1.03);box-shadow:0 8px 22px #7c5cfc2e}.board-tile.clickable:active{transition-duration:60ms;transform:translateY(0)scale(.97)}.board-tile.at-max:not(.selected){opacity:.35;cursor:not-allowed}.board-tile.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-up);animation:.3s cubic-bezier(.34,1.56,.64,1) both spring-pop;transform:translateY(-1px);box-shadow:0 4px 16px #7c5cfc38}.board-tile.r-correct{background:var(--correct-soft);border-color:var(--correct);color:var(--correct)}.board-tile.r-wrong{background:var(--wrong-soft);border-color:var(--wrong);color:var(--wrong)}.board-tile.r-missed{background:var(--missed-soft);border-color:var(--missed);color:var(--missed)}.board-tile.r-neutral{opacity:.38}.tile-badge{letter-spacing:.1em;opacity:.88;font-size:.5rem;font-weight:800}.result-card{text-align:center;border-radius:22px;margin-bottom:1.5rem;padding:2.25rem 1.75rem;animation:.5s cubic-bezier(.34,1.56,.64,1) both pop-in}.result-card.win{background:var(--correct-soft);border:2px solid var(--correct);box-shadow:0 0 72px #34d3991f}.result-card.lose{background:var(--red-soft);border:2px solid var(--red)}.result-card.neutral{background:var(--surface);border:2px solid var(--border)}.result-outcome{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 .35rem;font-size:.68rem;font-weight:800}.result-winner{letter-spacing:.04em;margin:0 0 .75rem;font-size:clamp(2rem,6vw,2.75rem);font-weight:900}.result-winner.red{color:var(--red)}.result-winner.blue{color:var(--blue)}.result-summary{color:var(--muted);margin:0;font-size:.92rem;line-height:1.65}.result-summary strong{color:var(--text)}.result-hint-chip{color:var(--text);background:var(--surface-soft);border-radius:5px;padding:.1em .4em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}.form-label{color:var(--muted);margin-bottom:.38rem;font-size:.82rem;font-weight:600;display:block}.error-msg{color:var(--red);margin:.75rem 0 0;font-size:.88rem}.waiting-msg{color:var(--muted);margin:1rem 0 0;font-size:.92rem;font-style:italic}.info-line{color:var(--muted);margin:.4rem 0 0;font-size:.8rem;line-height:1.5}.guess-counter{color:var(--muted);margin:.5rem 0;font-size:.95rem}.guess-counter strong{color:var(--text);font-size:1.05rem}.mt-1{margin-top:.75rem}.mt-2{margin-top:1.25rem}.mt-3{margin-top:2rem}@keyframes fade-in-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-left{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@keyframes title-entrance{0%{opacity:0;filter:blur(4px);transform:translateY(28px)scale(.94)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes tile-in{0%{opacity:0;transform:scale(.78)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes spring-pop{0%{transform:scale(.88)translateY(0)}55%{transform:scale(1.08)translateY(-2px)}80%{transform:scale(.97)translateY(0)}to{transform:scale(1)translateY(-1px)}}@keyframes pop-in{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-8px)}30%{transform:translate(8px)}45%{transform:translate(-6px)}60%{transform:translate(6px)}75%{transform:translate(-3px)}90%{transform:translate(3px)}}@keyframes input-focus-pop{0%{transform:scale(1)}40%{transform:scale(1.008)}to{transform:scale(1)}}@keyframes gradient-drift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes aurora-1{0%{transform:translate(0%)scale(1)}to{transform:translate(6%,7%)scale(1.14)}}@keyframes aurora-2{0%{transform:translate(0%)scale(1)}to{transform:translate(-5%,-7%)scale(1.1)}}@keyframes pulse-glow{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:0 0 36px var(--accent-glow)}}.animate-entrance{animation:.42s cubic-bezier(.22,1,.36,1) both fade-in-up}.animate-pop{animation:.42s cubic-bezier(.34,1.56,.64,1) both pop-in}.animate-pulse{animation:2.2s ease-in-out infinite pulse-glow}.a11y-high-contrast{--text:#fff;--muted:#ccc;--bg:#000;--surface:#111;--surface-soft:#1c1c1c;--border:#555;--accent:#c4a8ff;--accent-up:#dbc9ff;--accent-soft:#c4a8ff2e;--accent-border:#c4a8ff59}.a11y-high-contrast.app-game:before,.a11y-high-contrast.app-game:after{display:none}.a11y-reduced-motion *{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.a11y-dyslexia{letter-spacing:.065em;word-spacing:.12em;line-height:1.85}.team-names-row{gap:1rem;margin-bottom:1rem;display:flex}.team-name-field{flex-direction:column;flex:1;gap:.32rem;display:flex}.team-name-field label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:700}.team-name-input{background:var(--surface-soft);border:1.5px solid var(--border);width:100%;color:var(--text);border-radius:10px;padding:.5rem .75rem;font-family:inherit;font-size:.92rem;font-weight:700;transition:border-color .18s,box-shadow .18s}.team-name-input::placeholder{color:var(--muted);opacity:.5}.team-name-input.red-team:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft);outline:none}.team-name-input.blue-team:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft);outline:none}.taunt-composer{background:var(--surface);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:.8rem;margin-bottom:1.25rem;padding:1.25rem 1.4rem;animation:.35s cubic-bezier(.22,1,.36,1) both fade-in-up;display:flex}.taunt-composer-label{color:var(--text);letter-spacing:.02em;font-size:.92rem;font-weight:700}.taunt-input{resize:vertical;background:var(--surface-soft);border:1.5px solid var(--border);width:100%;color:var(--text);border-radius:10px;padding:.65rem .85rem;font-family:inherit;font-size:.95rem;line-height:1.55;transition:border-color .18s,box-shadow .18s}.taunt-input::placeholder{color:var(--muted);opacity:.6}.taunt-input:focus{border-color:#ff6b00;outline:none;box-shadow:0 0 0 3px #ff6b0024}.btn-taunt{color:#fff;letter-spacing:.07em;text-transform:uppercase;background:linear-gradient(135deg,#ff6b00 0%,#e8282d 100%);border:none;border-radius:12px;padding:.8rem 1.5rem;font-size:.95rem;font-weight:900;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 4px 22px #ff500061}.btn-taunt:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #ff50008c}.btn-taunt:active:not(:disabled){transition-duration:60ms;transform:translateY(1px)scale(.97)}.taunt-sent-confirm{color:var(--text);text-align:center;background:linear-gradient(135deg,#ff6b001f 0%,#7c5cfc1a 100%);border:1px solid #ff6b0047;border-radius:14px;margin-bottom:1.25rem;padding:.85rem 1.2rem;font-size:.9rem;font-weight:700;animation:.4s cubic-bezier(.22,1,.36,1) both fade-in-up}.taunt-overlay{z-index:9999;cursor:pointer;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.taunt-overlay.loser-side{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#a00808f7;animation:.45s cubic-bezier(.22,1,.36,1) both taunt-slam,.65s 50ms screen-shake}.taunt-overlay.winner-side{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0e062cf7;animation:.5s cubic-bezier(.22,1,.36,1) both taunt-winner-in}@keyframes taunt-slam{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes taunt-winner-in{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}@keyframes screen-shake{0%,to{transform:translate(0)rotate(0)}10%{transform:translate(-9px,-3px)rotate(-1.2deg)}20%{transform:translate(9px,3px)rotate(1.2deg)}30%{transform:translate(-7px,2px)rotate(-.8deg)}40%{transform:translate(7px,-2px)rotate(.8deg)}50%{transform:translate(-5px)}60%{transform:translate(5px)}70%{transform:translate(-3px)}80%{transform:translate(3px)}90%{transform:translate(-1px)}}.taunt-inner{text-align:center;cursor:default;flex-direction:column;align-items:center;gap:1.1rem;width:100%;max-width:520px;display:flex}.taunt-emoji{filter:drop-shadow(0 4px 24px #00000080);font-size:clamp(3.5rem,10vw,5rem);line-height:1;animation:.6s cubic-bezier(.22,1,.36,1) .2s both taunt-bounce}@keyframes taunt-bounce{0%{opacity:0;transform:scale(0)rotate(-25deg)}65%{transform:scale(1.25)rotate(6deg)}to{opacity:1;transform:scale(1)rotate(0)}}.taunt-header{letter-spacing:.09em;text-transform:uppercase;font-size:clamp(1rem,4vw,1.4rem);font-weight:900;animation:.5s cubic-bezier(.22,1,.36,1) .3s both taunt-slide-up}.loser-side .taunt-header{color:#ffffffbf}.winner-side .taunt-header{background:linear-gradient(130deg,gold 0%,#ff9c00 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.taunt-message{color:#fff;text-shadow:0 2px 28px #0006;word-break:break-word;margin:0;font-size:clamp(1.5rem,5.5vw,2.4rem);font-weight:800;line-height:1.18;animation:.5s cubic-bezier(.22,1,.36,1) .45s both taunt-slide-up}.taunt-from{color:#ffffff80;letter-spacing:.04em;font-size:.88rem;font-weight:600;animation:.5s cubic-bezier(.22,1,.36,1) .6s both taunt-slide-up}@keyframes taunt-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.taunt-dismiss-btn{letter-spacing:.05em;color:#ffffffbf;background:#ffffff14;border:2px solid #ffffff40;border-radius:999px;margin-top:.4rem;padding:.6rem 1.6rem;font-size:.88rem;font-weight:700;transition:background .18s,border-color .18s,color .18s,transform .12s;animation:.5s cubic-bezier(.22,1,.36,1) .8s both taunt-slide-up}.taunt-dismiss-btn:hover{color:#fff;background:#ffffff2e;border-color:#ffffff8c;transform:scale(1.04)}.taunt-dismiss-btn:active{transform:scale(.97)}@media (width<=900px){.game-main{padding:1.75rem 1.5rem 4rem}.home-wrapper{padding:1.5rem 1.5rem 3rem}}@media (width<=640px){.game-main{padding:1.25rem 1rem 4rem}.home-wrapper{align-items:flex-start;padding:1.25rem 1rem 2.5rem}.home-screen{gap:2rem}.home-title{font-size:clamp(3.5rem,18vw,5.5rem)}.home-actions,.home-grid,.team-grid{grid-template-columns:1fr}.board{gap:.4rem}.board-tile{border-radius:10px;min-height:3.5rem;padding:.75rem .2rem;font-size:.78rem}.settings-popover{top:.75rem;right:.75rem}}@media (width<=400px){.action-row{flex-direction:column;align-items:stretch}.captains-row{grid-template-columns:1fr}.board{gap:.3rem}.board-tile{letter-spacing:0;border-radius:8px;min-height:2.8rem;padding:.5rem .15rem;font-size:.62rem}.fs-board-zone .board-tile{min-height:2.5rem;padding:.35rem .15rem;font-size:.6rem}}@keyframes clock-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.3)}}.host-slider{appearance:none;background:var(--surface-soft);border:1px solid var(--border);cursor:pointer;border-radius:999px;outline:none;width:100%;height:8px;margin:0;padding:0;transition:background .18s,border-color .18s}.host-slider:hover{border-color:var(--accent-border)}.host-slider:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #7c5cfc2e}.host-slider::-webkit-slider-runnable-track{background:0 0;border-radius:999px;width:100%;height:8px}.host-slider::-webkit-slider-thumb{appearance:none;background:var(--accent);border:2px solid var(--surface);cursor:grab;border-radius:50%;width:22px;height:22px;margin-top:-8px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s;box-shadow:0 4px 12px #7c5cfc73}.host-slider::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 6px 18px #7c5cfc99}.host-slider:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(.95)}.host-slider::-moz-range-track{background:0 0;border-radius:999px;width:100%;height:8px}.host-slider::-moz-range-thumb{background:var(--accent);border:2px solid var(--surface);cursor:grab;border-radius:50%;width:22px;height:22px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s;box-shadow:0 4px 12px #7c5cfc73}.host-slider::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:0 6px 18px #7c5cfc99}.host-slider:active::-moz-range-thumb{cursor:grabbing;transform:scale(.95)}.host-settings-card{background:var(--surface-soft);border:1px solid var(--border);border-radius:14px;margin-top:1.75rem;padding:1rem 1.1rem}.host-settings-title{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;margin:0 0 .85rem;font-size:.72rem;font-weight:800}.host-setting-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem}.host-setting-label{justify-content:space-between;align-items:baseline;gap:.75rem;margin:0 0 .65rem;display:flex}.host-setting-name{color:var(--text);font-size:.82rem;font-weight:700}.host-setting-value{color:var(--text);font-variant-numeric:tabular-nums;background:#7c5cfc21;border:1px solid #7c5cfc47;border-radius:999px;padding:.25rem .7rem;font-size:.8rem;font-weight:700}.host-setting-marks{color:var(--muted);letter-spacing:.04em;justify-content:space-between;margin:.4rem 0 0;font-size:.7rem;font-weight:600;display:flex}.host-setting-hint{color:var(--muted);margin:.55rem 0 0;font-size:.74rem;line-height:1.45}:root{--lobby-bg-a:#1a0e44;--lobby-bg-b:#0f0828;--bidding-bg-a:#12073e;--bidding-bg-b:#070320;--perform-bg-a:#1c0838;--perform-bg-b:#0d0424;--guess-bg-a:#0d0a3c;--guess-bg-b:#05031a;--board-bg-a:#0b082a;--board-bg-b:#030212;--resolved-bg-a:#200840;--resolved-bg-b:#110428;--panel-bar-bg:#00000038;--panel-bar-border:#ffffff12;--panel-soft-bg:#ffffff0a;--panel-soft-border:#ffffff17;--panel-action-bg:#00000073;--panel-action-border:#ffffff1a;--panel-input-bg:#ffffff12;--panel-input-border:#ffffff2e;--panel-chip-bg:#ffffff0f;--panel-chip-border:#ffffff2e}.theme-light{--lobby-bg-a:#efeafd;--lobby-bg-b:#dfd5fa;--bidding-bg-a:#ebe4fb;--bidding-bg-b:#dcd2f6;--perform-bg-a:#f0e7fb;--perform-bg-b:#e1d4f4;--guess-bg-a:#e7e4fa;--guess-bg-b:#d5d0f5;--board-bg-a:#ece8fb;--board-bg-b:#ddd6f3;--resolved-bg-a:#efe4fa;--resolved-bg-b:#e0d2f3;--panel-bar-bg:#ffffff8c;--panel-bar-border:#00000014;--panel-soft-bg:#fff9;--panel-soft-border:#00000014;--panel-action-bg:#ffffffbf;--panel-action-border:#00000014;--panel-input-bg:#fffc;--panel-input-border:#0000001f;--panel-chip-bg:#ffffffb3;--panel-chip-border:#0000001a}.fs-panel{flex-direction:column;width:100%;min-height:100dvh;animation:.42s cubic-bezier(.22,1,.36,1) both panel-enter;display:flex;position:relative;overflow:hidden}.fs-panel--lobby{background:linear-gradient(155deg, var(--lobby-bg-a) 0%, var(--lobby-bg-b) 100%)}.fs-panel--bidding{background:linear-gradient(155deg, var(--bidding-bg-a) 0%, var(--bidding-bg-b) 100%)}.fs-panel--perform{background:linear-gradient(155deg, var(--perform-bg-a) 0%, var(--perform-bg-b) 100%)}.fs-panel--guess{background:linear-gradient(155deg, var(--guess-bg-a) 0%, var(--guess-bg-b) 100%)}.fs-panel--board{background:linear-gradient(155deg, var(--board-bg-a) 0%, var(--board-bg-b) 100%)}.fs-panel--resolved{background:linear-gradient(155deg, var(--resolved-bg-a) 0%, var(--resolved-bg-b) 100%)}.fs-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#7c5cfc1f 0%,#0000 70%);border-radius:50%;width:70vw;max-width:600px;height:70vw;max-height:600px;animation:18s ease-in-out infinite alternate aurora-1;position:absolute;top:-20%;left:-15%}.fs-top-bar{border-bottom:1px solid var(--panel-bar-border);background:var(--panel-bar-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20;flex-shrink:0;justify-content:flex-start;align-items:center;padding:1.1rem calc(1.5rem + 130px) 1.1rem 1.5rem;display:flex;position:sticky;top:0}.fs-top-bar-left{align-items:center;gap:.85rem;display:flex}.fs-phase-label{letter-spacing:.18em;text-transform:uppercase;color:var(--text);background:var(--panel-chip-bg);border:1px solid var(--panel-chip-border);border-radius:999px;padding:.42rem 1rem;font-size:.78rem;font-weight:800}.fs-room-hero{flex-direction:column;align-items:center;gap:.5rem;padding:.25rem 0 .75rem;animation:.4s cubic-bezier(.22,1,.36,1) both fade-in-up;display:flex}.fs-room-hero-label{letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem;font-weight:800}.fs-room-hero-code{letter-spacing:.25em;color:var(--accent-up);text-shadow:0 0 60px var(--accent-glow);border:2px solid var(--accent-border);background:var(--accent-soft);cursor:pointer;border-radius:22px;margin:0;padding:.55rem 1.6rem .55rem 1.85rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(2.75rem,9vw,4.75rem);font-weight:900;line-height:1;transition:transform .22s cubic-bezier(.22,1,.36,1),background .22s,box-shadow .22s,border-color .22s}.fs-room-hero-code:hover{box-shadow:0 14px 40px var(--accent-glow);background:#7c5cfc38;border-color:#7c5cfc80;transform:translateY(-2px)}.fs-room-hero-code:active{transition-duration:80ms;transform:translateY(0)}.fs-panel-body{z-index:1;flex-direction:column;flex:1;gap:1.5rem;width:100%;max-width:820px;margin:0 auto;padding:1.5rem 1.5rem 2rem;display:flex;position:relative}.fs-panel-center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1.25rem;display:flex}.fs-heading{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:clamp(1.5rem,5vw,2.4rem);font-weight:900;line-height:1.05}.fs-sub{color:var(--muted);margin:0;font-size:.82rem;font-weight:500;line-height:1.55}.fs-board-anchor{justify-content:center;margin-top:auto;padding:1rem 0 .25rem;display:flex}.fs-board-btn{border:1.5px solid var(--panel-chip-border);background:var(--panel-chip-bg);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.45rem;padding:.65rem 1.5rem;font-size:.82rem;font-weight:700;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.fs-board-btn:hover{background:var(--panel-soft-bg);border-color:var(--accent-border);color:var(--text)}.lobby-pick-heading{text-align:center;letter-spacing:.1em;text-transform:uppercase;color:var(--text);margin:.5rem 0 0;font-size:clamp(1.3rem,4.5vw,2.1rem);font-weight:900}.lobby-teams-grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.lobby-team-card{cursor:pointer;text-align:center;border:2.5px solid #0000;border-radius:28px;flex-direction:column;align-items:center;gap:1.15rem;min-height:360px;padding:1.85rem 1.5rem 1.6rem;transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .22s,box-shadow .22s,background .22s;display:flex}.lobby-team-card--red{background:#f0506014;border-color:#f0506047}.lobby-team-card--blue{background:#4d8eff14;border-color:#4d8eff47}.lobby-team-card--red.is-mine{border-color:var(--red);background:#f0506033;transform:scale(1.02);box-shadow:0 0 40px #f0506047,inset 0 0 28px #f0506014}.lobby-team-card--blue.is-mine{border-color:var(--blue);background:#4d8eff33;transform:scale(1.02);box-shadow:0 0 40px #4d8eff47,inset 0 0 28px #4d8eff14}.lobby-team-card--red:hover:not(.is-mine){background:#f0506024;border-color:#f0506080}.lobby-team-card--blue:hover:not(.is-mine){background:#4d8eff24;border-color:#4d8eff80}.lobby-team-name-display{letter-spacing:.04em;text-transform:uppercase;font-size:clamp(1.5rem,4.5vw,2.1rem);font-weight:900;line-height:1}.lobby-team-card--red .lobby-team-name-display{color:var(--red)}.lobby-team-card--blue .lobby-team-name-display{color:var(--blue)}.lobby-team-name-input{color:var(--text);letter-spacing:.04em;text-transform:uppercase;text-align:center;background:#ffffff14;border:1.5px solid #ffffff26;border-radius:12px;width:100%;padding:.55rem .7rem;font-family:inherit;font-size:clamp(1.1rem,3.5vw,1.5rem);font-weight:900;transition:border-color .18s}.lobby-team-card--red .lobby-team-name-input:focus{border-color:var(--red);outline:none}.lobby-team-card--blue .lobby-team-name-input:focus{border-color:var(--blue);outline:none}.lobby-join-pill{letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:2px solid #0000;border-radius:999px;width:100%;margin-top:auto;padding:.85rem 1.5rem;font-size:1rem;font-weight:900;transition:all .16s}.lobby-join-pill:hover:not(.is-mine){transform:translateY(-2px)}.lobby-team-card--red .lobby-join-pill{background:var(--red);color:#fff}.lobby-team-card--blue .lobby-join-pill{background:var(--blue);color:#fff}.lobby-team-card--red.is-mine .lobby-join-pill{border-color:var(--red);color:var(--red);background:0 0}.lobby-team-card--blue.is-mine .lobby-join-pill{border-color:var(--blue);color:var(--blue);background:0 0}.lobby-players-mini{flex-direction:column;gap:.22rem;width:100%;margin:0;padding:0;list-style:none;display:flex}.lobby-player-row{background:#ffffff0f;border-radius:8px;align-items:center;gap:.3rem;padding:.25rem .5rem;font-size:.8rem;font-weight:600;display:flex}.lobby-player-bubbles{flex-wrap:wrap;flex:1;place-content:flex-start center;gap:.5rem;width:100%;min-height:4.5rem;padding:.5rem .25rem;display:flex}.lobby-player-bubble{letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;border:1.5px solid #0000;border-radius:999px;align-items:center;gap:.4rem;max-width:100%;padding:.5rem 1rem;font-size:.95rem;font-weight:800;animation:.42s cubic-bezier(.34,1.56,.64,1) both bubble-pop;display:inline-flex;overflow:hidden}.lobby-team-card--red .lobby-player-bubble{color:#ffe1e4;background:#f0506038;border-color:#f050607a;box-shadow:0 4px 14px #f050602e}.lobby-team-card--blue .lobby-player-bubble{color:#e0ecff;background:#4d8eff38;border-color:#4d8eff7a;box-shadow:0 4px 14px #4d8eff2e}.lobby-player-bubble.is-me{outline-offset:2px;outline:2px solid #ffffff73}.lobby-player-bubble.is-offline{opacity:.42;filter:grayscale(.6)}.lobby-player-bubble-tag{opacity:.7;text-transform:uppercase;letter-spacing:.08em;background:#ffffff29;border-radius:999px;padding:.1rem .35rem;font-size:.62rem;font-weight:900}.lobby-empty-state{color:var(--muted);opacity:.7;text-align:center;padding:1.5rem 0;font-size:.92rem;font-style:italic;font-weight:500}@keyframes bubble-pop{0%{opacity:0;transform:scale(.4)translateY(14px)}60%{opacity:1;transform:scale(1.12)translateY(-3px)}to{transform:scale(1)translateY(0)}}.lobby-unassigned-row{background:var(--panel-soft-bg);border:1px solid var(--panel-soft-border);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.6rem .75rem;display:flex}.lobby-unassigned-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.68rem;font-weight:800}.lobby-unassigned-chip{background:var(--panel-chip-bg);color:var(--muted);border-radius:999px;padding:.18rem .55rem;font-size:.78rem;font-weight:600}.lobby-bottom-bar{border-top:1px solid var(--panel-action-border);background:var(--panel-action-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-wrap:wrap;align-items:center;gap:.75rem;padding:1.25rem 1.75rem;display:flex}.lobby-spectator-btn{color:var(--muted);letter-spacing:.02em;background:0 0;border:1.5px solid #ffffff2e;border-radius:999px;padding:.75rem 1.35rem;font-size:.92rem;font-weight:800;transition:all .18s}.lobby-spectator-btn.is-mine{color:var(--text);background:#ffffff1f;border-color:#ffffff59}.lobby-spectator-btn:hover{color:var(--text);background:#ffffff14;border-color:#ffffff4d}.lobby-start-btn{background:var(--accent);color:#fff;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 8px 28px var(--accent-glow);border-radius:16px;margin-left:auto;padding:.95rem 2rem;font-size:1.05rem;font-weight:900;transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s,background .18s}.lobby-start-btn:hover:not(:disabled){background:var(--accent-up);box-shadow:0 12px 38px var(--accent-glow);transform:translateY(-2px)}.lobby-start-btn:disabled{opacity:.42;cursor:not-allowed;text-transform:none;letter-spacing:.02em;font-size:.9rem;font-weight:700;transform:none}.lobby-settings-toggle{width:48px;height:48px;color:var(--text);background:#ffffff0f;border:1.5px solid #ffffff29;border-radius:14px;place-items:center;font-size:1.25rem;transition:all .18s;display:grid}.lobby-settings-toggle:hover{background:#ffffff1f;border-color:#ffffff4d}.lobby-settings-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000059;border:1px solid #ffffff1a;border-radius:18px;padding:1.1rem 1.25rem;animation:.25s both fade-in-up}.bid-phase-label{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.65rem;font-weight:800}.bid-captains-strip{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.bid-captain-pill{background:var(--panel-soft-bg);border:1.5px solid #0000;border-radius:16px;flex-direction:column;gap:.2rem;padding:.75rem .9rem;transition:border-color .28s,background .28s,box-shadow .28s;display:flex}.bid-captain-pill.active-red{border-color:var(--red);background:#f0506024;box-shadow:0 0 22px #f050602e}.bid-captain-pill.active-blue{border-color:var(--blue);background:#4d8eff24;box-shadow:0 0 22px #4d8eff2e}.bid-captain-team{letter-spacing:.14em;text-transform:uppercase;font-size:.58rem;font-weight:800}.bid-captain-team.red{color:var(--red)}.bid-captain-team.blue{color:var(--blue)}.bid-captain-name{align-items:center;gap:.3rem;font-size:.95rem;font-weight:700;display:flex}.bid-current-display{flex-direction:column;align-items:center;gap:.3rem;display:flex}.bid-current-label{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:.65rem;font-weight:800}.bid-current-number{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:clamp(4.5rem,22vw,10rem);font-weight:900;line-height:.85;transition:color .28s;animation:.28s cubic-bezier(.34,1.56,.64,1) both bid-num-pop}.bid-current-number.c-red{color:var(--red);text-shadow:0 0 60px #f0506059}.bid-current-number.c-blue{color:var(--blue);text-shadow:0 0 60px #4d8eff59}.bid-current-number.c-neutral{color:var(--accent-up);text-shadow:0 0 60px #7c5cfc59}.bid-arrow-section{background:var(--panel-soft-bg);border:1.5px solid var(--panel-soft-border);border-radius:22px;flex-direction:column;align-items:center;gap:1rem;padding:1.25rem 1rem;display:flex}.bid-arrow-row{align-items:center;gap:1.25rem;display:flex}.bid-arrow-btn{border:2.5px solid var(--panel-input-border);background:var(--panel-input-bg);width:5rem;height:5rem;color:var(--text);-webkit-user-select:none;user-select:none;border-radius:50%;place-items:center;font-size:2rem;font-weight:900;line-height:1;transition:transform .13s cubic-bezier(.34,1.56,.64,1),background .15s,border-color .15s;display:grid}.bid-arrow-btn:hover:not(:disabled){background:var(--panel-soft-bg);border-color:var(--accent-border);transform:scale(1.12)}.bid-arrow-btn:active:not(:disabled){transition-duration:60ms;transform:scale(.9)}.bid-arrow-btn:disabled{opacity:.22;cursor:not-allowed}.bid-my-number{font-variant-numeric:tabular-nums;text-align:center;letter-spacing:-.02em;min-width:2.5ch;color:var(--accent-up);text-shadow:0 0 40px #7c5cfc66;font-size:clamp(3rem,14vw,6rem);font-weight:900}.bid-action-row{gap:.65rem;width:100%;display:flex}.bid-raise-btn{background:var(--accent);color:#fff;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 6px 22px var(--accent-glow);border-radius:16px;flex:1;padding:.9rem;font-size:.95rem;font-weight:800;transition:transform .16s,box-shadow .16s,background .16s}.bid-raise-btn:hover:not(:disabled){background:var(--accent-up);box-shadow:0 10px 30px var(--accent-glow);transform:translateY(-2px)}.bid-raise-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.bid-challenge-btn{color:var(--red);letter-spacing:.05em;text-transform:uppercase;background:#f050601f;border:1.5px solid #f050604d;border-radius:16px;flex:1;padding:.9rem;font-size:.95rem;font-weight:800;transition:all .16s}.bid-challenge-btn:hover:not(:disabled){background:#f0506038;transform:translateY(-2px);box-shadow:0 6px 20px #f0506038}.bid-challenge-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.bid-hint-text{color:var(--muted);text-align:center;margin:0;font-size:.76rem;line-height:1.5}.bid-history-strip{background:var(--panel-bar-bg);border:1px solid var(--panel-bar-border);border-radius:14px;padding:.75rem 1rem}.bid-history-title{letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem;font-size:.62rem;font-weight:800}.bid-history-list{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.bid-history-chip{border:1px solid #0000;border-radius:999px;padding:.22rem .65rem;font-size:.8rem;font-weight:700}.bid-history-chip.red{color:var(--red);background:#f050601f;border-color:#f0506040}.bid-history-chip.blue{color:var(--blue);background:#4d8eff1f;border-color:#4d8eff40}.bid-waiting-panel{background:var(--panel-soft-bg);border:1.5px solid var(--panel-soft-border);text-align:center;border-radius:20px;flex-direction:column;gap:.6rem;padding:1.5rem 1rem;display:flex}.bid-waiting-name{color:var(--text);margin:0;font-size:clamp(1.5rem,6vw,2.5rem);font-weight:900}.hint-reveal-panel{text-align:center;background:#ffffff0a;border:1.5px solid #ffffff17;border-radius:24px;flex-direction:column;align-items:center;gap:.6rem;padding:2rem 1.25rem;animation:.45s cubic-bezier(.34,1.56,.64,1) both pop-in;display:flex}.hint-reveal-super{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.62rem;font-weight:800}.hint-reveal-word{letter-spacing:.12em;color:var(--text);text-shadow:0 0 48px #7c5cfc80;margin:0;font-size:clamp(2.75rem,14vw,6rem);font-weight:900;line-height:1}.hint-reveal-for{color:var(--muted);margin:0;font-size:.88rem}.hint-reveal-for strong{color:var(--text)}.perform-card{background:#ffffff0a;border:1.5px solid #ffffff17;border-radius:22px;flex-direction:column;gap:.9rem;padding:1.25rem;display:flex}.perform-step-label{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-up);margin:0;font-size:.62rem;font-weight:800}.perform-step-title{margin:0;font-size:1rem;font-weight:700}.perform-counter{color:var(--muted);font-size:.88rem;font-weight:700}.perform-counter strong{color:var(--text);font-size:1rem}.guess-big-counter{flex-direction:column;align-items:center;gap:.2rem;display:flex}.guess-count-num{letter-spacing:-.04em;color:var(--accent-up);text-shadow:0 0 60px #7c5cfc66;font-size:clamp(4rem,20vw,9rem);font-weight:900;line-height:.85}.guess-count-of{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:800}.board-panel-title{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-align:center;margin:0;font-size:.65rem;font-weight:800}.board-hint-bar{color:var(--muted);text-align:center;background:#ffffff0d;border:1px solid #ffffff17;border-radius:12px;padding:.65rem .85rem;font-size:.82rem;line-height:1.5}.result-fs-card{text-align:center;border-radius:28px;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem 2rem;animation:.5s cubic-bezier(.34,1.56,.64,1) both pop-in;display:flex}.result-fs-card.win{border:2.5px solid var(--correct);background:#34d3991a;box-shadow:0 0 80px #34d39926}.result-fs-card.lose{border:2.5px solid var(--red);background:#f050601a}.result-fs-card.neutral{background:var(--panel-soft-bg);border:2.5px solid var(--panel-soft-border)}.result-fs-outcome{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.68rem;font-weight:800}.result-fs-winner{letter-spacing:.02em;margin:0;font-size:clamp(2.5rem,12vw,5rem);font-weight:900;line-height:1}.result-fs-winner.red{color:var(--red);text-shadow:0 0 60px #f050604d}.result-fs-winner.blue{color:var(--blue);text-shadow:0 0 60px #4d8eff4d}.result-fs-summary{color:var(--muted);margin:0;font-size:.92rem;line-height:1.65}.result-fs-summary strong{color:var(--text)}@keyframes panel-enter{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes bid-num-pop{0%{opacity:0;transform:scale(.75)}65%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@media (width<=640px){.fs-top-bar{padding:.85rem calc(1rem + 110px) .85rem 1rem}.fs-panel-body{gap:1.1rem;padding:1.1rem 1rem 1.5rem}.lobby-teams-grid{gap:.7rem}.lobby-team-card{min-height:260px;padding:1.2rem .9rem}.lobby-player-bubble{padding:.4rem .75rem;font-size:.82rem}.corner-btn{width:44px;height:44px;font-size:1.15rem}.corner-btn-leave{height:44px;padding:0 .95rem;font-size:.82rem}.lobby-bottom-bar{padding:.95rem 1rem}.lobby-start-btn{padding:.78rem 1.35rem;font-size:.95rem}.bid-arrow-btn{width:4.25rem;height:4.25rem;font-size:1.75rem}.bid-my-number{font-size:clamp(2.5rem,12vw,5rem)}}.fs-panel--perform,.fs-panel--guess{height:100dvh;min-height:100dvh;overflow:hidden}.fs-context-strip{background:var(--panel-bar-bg);border-bottom:1px solid var(--panel-bar-border);flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.85rem;padding:.85rem calc(1.25rem + 130px) .85rem 1.25rem;display:flex}.fs-room-tag{letter-spacing:.22em;color:var(--accent-up);background:var(--accent-soft);border:1.5px solid var(--accent-border);cursor:pointer;border-radius:999px;padding:.38rem .95rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;font-weight:900;transition:background .18s,box-shadow .18s}.fs-room-tag:hover{box-shadow:0 4px 14px var(--accent-glow);background:#7c5cfc38}.fs-context-text{color:var(--text);text-align:center;font-size:clamp(.95rem,2.4vw,1.15rem);font-weight:700;line-height:1.35}.fs-context-text strong{font-weight:900}.fs-context-text .team-red{color:var(--red)}.fs-context-text .team-blue{color:var(--blue)}.fs-board-zone{z-index:1;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:.85rem;padding:1rem 1.25rem .85rem;display:flex;position:relative;overflow-y:auto}.fs-board-zone .board{gap:.55rem;width:100%;max-width:680px}.fs-board-zone .board-tile{min-height:4.25rem;padding:.75rem .4rem;font-size:.92rem}@media (width<=640px){.fs-board-zone{padding:.7rem .7rem .5rem}.fs-board-zone .board{gap:.4rem}.fs-board-zone .board-tile{border-radius:9px;min-height:3rem;padding:.45rem .25rem;font-size:.75rem}}.fs-board-zone-meta{color:var(--muted);letter-spacing:.05em;text-align:center;margin:0;font-size:.78rem;font-weight:700}.fs-board-zone-meta strong{color:var(--text);font-size:1rem}.fs-action-zone{background:var(--panel-action-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--panel-action-border);z-index:5;flex-direction:column;flex-shrink:0;gap:.7rem;padding:.95rem 1.25rem 1.1rem;display:flex;position:relative}.fs-action-row{align-items:center;gap:.65rem;width:100%;max-width:680px;margin:0 auto;display:flex}.fs-action-row>.fs-action-flex{flex:1}.fs-action-primary{background:var(--accent);color:#fff;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 6px 22px var(--accent-glow);white-space:nowrap;border-radius:16px;padding:.95rem 1.5rem;font-size:1.02rem;font-weight:900;transition:transform .18s,box-shadow .18s,background .18s}.fs-action-primary:hover:not(:disabled){background:var(--accent-up);box-shadow:0 10px 32px var(--accent-glow);transform:translateY(-2px)}.fs-action-primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.fs-hint-input{border:2px solid var(--panel-input-border);background:var(--panel-input-bg);color:var(--text);letter-spacing:.05em;text-align:center;text-transform:uppercase;border-radius:16px;outline:none;flex:1;padding:.95rem 1.2rem;font-family:inherit;font-size:clamp(1.05rem,3.5vw,1.35rem);font-weight:800;transition:border-color .18s,box-shadow .18s,background .18s}.fs-hint-input:focus{border-color:var(--accent);background:var(--panel-soft-bg);box-shadow:0 0 0 4px #7c5cfc2e}.fs-hint-input::placeholder{color:var(--muted);opacity:.55;text-transform:none;letter-spacing:.02em;font-weight:600}.fs-hint-counter{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:.72rem;font-weight:700}.fs-hint-counter.over{color:var(--wrong)}.hint-banner-prominent{background:#7c5cfc1a;border-bottom:1px solid #7c5cfc38;flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:.85rem;padding:.9rem 1.4rem;animation:.42s cubic-bezier(.34,1.56,.64,1) both pop-in;display:flex}.hint-banner-label{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:800}.hint-banner-word{letter-spacing:.12em;color:var(--text);text-shadow:0 0 38px #7c5cfc8c;margin:0;font-size:clamp(2rem,6vw,3.2rem);font-weight:900;line-height:1}.hint-banner-for{color:var(--muted);font-size:.88rem;font-weight:600}.hint-banner-for strong{color:var(--text);font-size:1.15em;font-weight:900}.hint-banner-watching{background:var(--panel-bar-bg);border-bottom:1px solid var(--panel-bar-border);text-align:center;color:var(--muted);flex-shrink:0;padding:.95rem 1.4rem;font-size:.95rem;font-weight:700}.hint-banner-watching strong{color:var(--text)}.fs-action-counter{color:var(--muted);text-align:center;letter-spacing:.04em;font-size:.95rem;font-weight:700}.fs-action-counter .num{color:var(--accent-up);font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:900}.start-popup-wrapper{pointer-events:none;z-index:80;justify-content:center;padding:0 1rem;animation:.5s cubic-bezier(.34,1.56,.64,1) both start-popup-rise;display:flex;position:fixed;bottom:7rem;left:0;right:0}.start-popup-btn{pointer-events:auto;color:#fff;cursor:pointer;text-align:center;background:linear-gradient(135deg,#7c5cfc 0%,#b09bff 55%,#6490ff 100%) 0 0/200% 200%;border:2px solid #ffffff38;border-radius:24px;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem 3rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;animation:2.4s ease-in-out infinite start-popup-pulse,5s ease-in-out infinite gradient-drift;display:flex;box-shadow:0 22px 60px #7c5cfc8c,0 0 0 8px #7c5cfc29}.start-popup-btn:hover{transform:scale(1.05)}.start-popup-btn:active{transition-duration:80ms;transform:scale(.97)}.start-popup-eyebrow{letter-spacing:.24em;text-transform:uppercase;opacity:.88;font-size:.7rem;font-weight:800}.start-popup-title{letter-spacing:.05em;font-size:clamp(1.5rem,4.5vw,2.1rem);font-weight:900;line-height:1}.start-popup-arrow{opacity:.85;margin-top:.1rem;font-size:1.1rem}@keyframes start-popup-rise{0%{opacity:0;transform:translateY(28px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes start-popup-pulse{0%,to{box-shadow:0 22px 60px #7c5cfc8c,0 0 0 8px #7c5cfc29}50%{box-shadow:0 28px 78px #7c5cfcbf,0 0 0 14px #7c5cfc38}}.lobby-start-btn.is-promoted{display:none}@media (width<=640px){.start-popup-wrapper{bottom:6rem}.start-popup-btn{padding:.95rem 1.85rem}}.series-strip{font-variant-numeric:tabular-nums;background:#00000038;border-bottom:1px solid #ffffff12;flex-shrink:0;justify-content:center;align-items:center;gap:.7rem;padding:.55rem 1rem;display:flex}.theme-light .series-strip{background:#ffffff8c;border-bottom-color:#00000012}.series-strip-team{align-items:baseline;gap:.45rem;min-width:0;display:inline-flex}.series-strip-team-red{justify-content:flex-end}.series-strip-team-blue{justify-content:flex-start}.series-strip-name{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:9rem;font-size:.72rem;font-weight:800;overflow:hidden}.series-strip-team-red .series-strip-name{color:var(--red)}.series-strip-team-blue .series-strip-name{color:var(--blue)}.series-strip-score{color:var(--text);font-size:1.15rem;font-weight:900;line-height:1}.series-strip-team-red .series-strip-score{color:var(--red)}.series-strip-team-blue .series-strip-score{color:var(--blue)}.series-strip-divider{letter-spacing:.22em;text-transform:uppercase;color:var(--muted);opacity:.85;padding:0 .3rem;font-size:.6rem;font-weight:800}.series-scoreboard{background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-sm);border-radius:20px;justify-content:center;align-items:center;gap:0;padding:.85rem 0;animation:.5s cubic-bezier(.34,1.56,.64,1) .3s both series-pop;display:flex;overflow:hidden}.series-team{flex:1;align-items:center;gap:.65rem;padding:0 1.2rem;display:flex}.series-team-red{justify-content:flex-end}.series-team-blue{justify-content:flex-start}.series-team-name{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:800;overflow:hidden}.series-team-red .series-team-name{color:var(--red)}.series-team-blue .series-team-name{color:var(--blue)}.series-team-score{font-variant-numeric:tabular-nums;color:var(--text);font-size:clamp(2rem,6vw,3rem);font-weight:900;line-height:1}.series-team-red .series-team-score{color:var(--red)}.series-team-blue .series-team-score{color:var(--blue)}.series-vs{flex-direction:column;flex-shrink:0;align-items:center;gap:.1rem;padding:0 .75rem;display:flex}.series-vs-label{letter-spacing:.28em;text-transform:uppercase;color:var(--muted);font-size:.55rem;font-weight:900}.series-vs-dash{color:var(--muted);opacity:.5;font-size:1.2rem;font-weight:300}@keyframes series-pop{0%{opacity:0;transform:scale(.85)}70%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.play-again-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c5cfc 0%,#b09bff 55%,#6490ff 100%) 0 0/200% 200%;border:2px solid #ffffff2e;border-radius:20px;flex-direction:column;align-items:center;gap:.3rem;width:100%;padding:1.3rem 2rem;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;animation:.6s cubic-bezier(.34,1.56,.64,1) .5s both play-again-entrance,2.8s ease-in-out infinite play-again-glow,5s ease-in-out infinite gradient-drift;display:flex;box-shadow:0 16px 48px #7c5cfc73,0 0 0 6px #7c5cfc1f}.play-again-btn:hover:not(:disabled){transform:translateY(-3px)scale(1.03);box-shadow:0 22px 60px #7c5cfc99,0 0 0 10px #7c5cfc2e}.play-again-btn:active:not(:disabled){transition-duration:80ms;transform:scale(.97)}.play-again-btn:disabled{opacity:.6;cursor:not-allowed;animation:none}.play-again-text{letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 12px #00000040;font-size:clamp(1.2rem,3.5vw,1.6rem);font-weight:900}.play-again-sub{opacity:.75;letter-spacing:.04em;font-size:.72rem;font-weight:600}@keyframes play-again-entrance{0%{opacity:0;transform:translateY(24px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes play-again-glow{0%,to{box-shadow:0 16px 48px #7c5cfc73,0 0 0 6px #7c5cfc1f}50%{box-shadow:0 22px 64px #7c5cfca6,0 0 0 12px #7c5cfc33}}.play-again-waiting{background:var(--surface-soft);border:1.5px solid var(--border);color:var(--muted);border-radius:16px;justify-content:center;align-items:center;gap:.6rem;padding:1.1rem 1.5rem;font-size:.92rem;font-weight:600;animation:.4s .4s both fade-in-up;display:flex}.play-again-waiting strong{color:var(--text)}.play-again-waiting-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1.6s ease-in-out infinite clock-pulse}@media (width<=640px){.series-scoreboard{border-radius:14px;padding:.65rem 0}.series-team{gap:.4rem;padding:0 .75rem}.series-team-name{font-size:.68rem}.series-team-score{font-size:clamp(1.6rem,5vw,2.2rem)}.play-again-btn{border-radius:16px;padding:1rem 1.5rem}.play-again-text{font-size:1.1rem}}.home-minigame-link{border:1px dashed var(--accent-border);color:var(--accent-up);letter-spacing:.02em;background:0 0;border-radius:999px;margin-top:2rem;padding:.85rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .25s cubic-bezier(.2,.7,.3,1)}.home-minigame-link:hover{background:var(--accent-soft);border-color:var(--accent);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.mg-root{flex-direction:column;align-items:center;gap:1.5rem;width:100%;min-height:100dvh;padding:1.5rem 1rem 3rem;display:flex}.mg-topbar{justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:960px;padding:0 .5rem;display:flex}.mg-back{color:var(--muted);border:1px solid #0000;border-radius:10px;padding:.45rem .85rem;font-size:.9rem;transition:all .2s}.mg-back:hover{color:var(--text);background:var(--surface-soft);border-color:var(--border)}.mg-title-small{color:var(--muted);align-items:center;gap:6px;font-size:1rem;font-weight:600;display:flex}.mg-beta{color:var(--accent-up);background:var(--accent-soft);letter-spacing:.08em;text-transform:uppercase;border-radius:6px;padding:3px 7px;font-size:.65rem}.mg-series{align-items:center;gap:7px;display:flex}.mg-dot{background:var(--border);border-radius:50%;width:11px;height:11px;transition:background .35s,box-shadow .35s,transform .35s}.mg-dot.on.player{background:var(--accent);box-shadow:0 0 12px var(--accent-glow);transform:scale(1.15)}.mg-dot.on.cpu{background:var(--red);transform:scale(1.15);box-shadow:0 0 12px #f0506080}.mg-vs{color:var(--muted);margin:0 4px;font-size:.75rem}.mg-stage{flex:1;justify-content:center;align-items:flex-start;width:100%;padding:1rem 0;display:flex}.mg-panel{background:var(--surface);border:1px solid var(--border);width:100%;max-width:720px;box-shadow:var(--shadow);text-align:center;border-radius:28px;flex-direction:column;align-items:center;gap:1.25rem;padding:2.5rem 2rem;display:flex;position:relative;overflow:hidden}.mg-panel:before{content:"";border-radius:inherit;background:linear-gradient(135deg, transparent, var(--accent-soft) 60%, transparent);opacity:.35;pointer-events:none;z-index:0;position:absolute;inset:-1px}.mg-panel>*{z-index:1;position:relative}@media (width>=768px){.mg-panel{gap:1.5rem;padding:3rem}}.mg-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-up);font-size:.78rem;font-weight:700}.mg-h1{letter-spacing:-.02em;margin:0;font-size:clamp(2rem,6vw,3.2rem);font-weight:800;line-height:1.05}.mg-title-big{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-up) 60%, #fff 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.mg-h1.win{color:var(--correct);-webkit-text-fill-color:var(--correct)}.mg-h1.lose{color:var(--wrong);-webkit-text-fill-color:var(--wrong)}.mg-h2{color:var(--muted);margin:0;font-size:1.3rem;font-weight:500}.mg-tag{color:var(--muted);max-width:520px;margin:0;font-size:1.05rem;line-height:1.55}.mg-cta{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-up) 100%);color:#fff;box-shadow:var(--shadow-glow);border-radius:14px;padding:.9rem 2rem;font-size:1rem;font-weight:700;transition:transform .18s cubic-bezier(.2,.8,.3,1),box-shadow .18s}.mg-cta-big{border-radius:16px;padding:1.15rem 2.8rem;font-size:1.1rem}.mg-cta:hover:not(:disabled){box-shadow:0 20px 56px var(--accent-glow);transform:translateY(-3px)scale(1.02)}.mg-cta:active:not(:disabled){transform:translateY(-1px)scale(.99)}.mg-secondary{background:var(--surface-soft);border:1px solid var(--border);color:var(--text);border-radius:14px;padding:.9rem 1.8rem;font-weight:500;transition:background .2s,border-color .2s}.mg-secondary:hover{background:var(--accent-soft);border-color:var(--accent-border)}.mg-foot{color:var(--muted);margin-top:.25rem;font-size:.85rem}.mg-room-code-block{justify-content:center;align-items:center;gap:.75rem;margin:.5rem 0 1rem;display:flex}.mg-room-code{letter-spacing:.18em;color:var(--accent);font-variant-numeric:tabular-nums;font-size:clamp(3rem,14vw,5rem);font-weight:900;line-height:1}.mg-copy-btn{background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--accent);cursor:pointer;border-radius:8px;padding:.4rem .9rem;font-size:.85rem;font-weight:600;transition:background .15s}.mg-copy-btn:hover{background:var(--accent);color:#000}.mg-waiting-status{color:var(--clr-sub);justify-content:center;align-items:center;gap:.6rem;margin-top:.5rem;font-size:.9rem;display:flex}.mg-http-warning{color:#fbbf24;text-align:center;margin-top:.75rem;background:#fbbf241f;border:1px solid #fbbf244d;border-radius:8px;max-width:320px;margin-inline:auto;padding:.5rem .75rem;font-size:.78rem}.mg-input-pref{text-align:center;border-top:1px solid #ffffff14;margin-top:1rem;padding-top:1rem}.mg-input-pref-label{letter-spacing:.12em;text-transform:uppercase;color:var(--clr-sub);margin-bottom:.5rem;font-size:.7rem}.mg-input-pref-row{justify-content:center;gap:.5rem;display:flex}.mg-pref-btn{color:var(--clr-text);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:8px;min-width:100px;padding:.55rem 1rem;font-size:.9rem;transition:all .15s}.mg-pref-btn:hover{background:#ffffff14}.mg-pref-btn.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.mg-pref-warn{color:#f87171;font-size:.75rem}.mg-pref-hint{color:var(--clr-sub);margin-top:.5rem;font-size:.75rem}.mg-skip-btn{color:var(--clr-sub);cursor:pointer;opacity:.65;letter-spacing:.02em;background:0 0;border:1px solid #ffffff1f;border-radius:6px;margin-top:1.25rem;padding:.3rem .7rem;font-size:.72rem;transition:all .15s;display:inline-block}.mg-skip-btn:hover{opacity:1;color:#fbbf24;background:#fbbf2414;border-color:#fbbf2466}.mg-skip-status{color:#fbbf24;text-align:center;background:#fbbf241a;border:1px solid #fbbf244d;border-radius:10px;margin:.75rem 0;padding:.75rem 1rem;font-size:.92rem}.mg-skip-status.opp{color:#f87171;background:#f871711a;border-color:#f871714d;font-weight:600}.mg-skip-callout{color:#fca5a5;text-align:center;background:linear-gradient(135deg,#f8717126,#fbbf2426);border:1px solid #f8717159;border-radius:10px;margin:0 0 .75rem;padding:.7rem 1rem;font-size:.88rem;animation:1.8s ease-in-out infinite mg-pulse-warn}@keyframes mg-pulse-warn{0%,to{box-shadow:0 0 #f8717166}50%{box-shadow:0 0 0 8px #f8717100}}.mg-skip-waiting{text-align:center;padding:2rem 1rem}.mg-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;justify-content:center;align-items:center;padding:1rem;animation:.2s mg-fade-in;display:flex;position:fixed;inset:0}.mg-modal{text-align:center;background:#1f2937;border:1px solid #ffffff1a;border-radius:16px;width:100%;max-width:400px;padding:1.5rem;animation:.25s cubic-bezier(.34,1.56,.64,1) mg-modal-pop;box-shadow:0 20px 50px #0009}@keyframes mg-fade-in{0%{opacity:0}to{opacity:1}}@keyframes mg-modal-pop{0%{opacity:0;transform:scale(.9)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.mg-cta-danger{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:10px;padding:.7rem 1.4rem;font-weight:600;transition:background .15s}.mg-cta-danger:hover{background:#b91c1c}.mg-input-toggle{justify-content:center;gap:.4rem;margin:.75rem 0;display:flex}.mg-toggle-pill{color:var(--clr-sub);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:999px;padding:.4rem .95rem;font-size:.82rem;transition:all .15s}.mg-toggle-pill.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.mg-toggle-pill:hover:not(.active){background:#ffffff14}.mg-topbar-left{align-items:center;gap:.4rem;display:flex}.mg-sound-toggle{color:var(--clr-text);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:.35rem .55rem;font-size:.95rem;line-height:1;transition:all .15s}.mg-sound-toggle:hover{background:#ffffff1a;transform:scale(1.05)}.mg-skip-eyebrow{letter-spacing:.15em;font-size:.85rem;font-weight:800;animation:.6s ease-out 2 mg-skip-flash;color:#f87171!important}.mg-verdict-warn{color:#fca5a5;font-size:1rem;font-weight:600}.mg-reveal-side.opp .mg-side-bid{color:#f87171}@keyframes mg-skip-flash{0%,to{opacity:.6}50%{opacity:1}}.mg-skip-result{text-align:center;border-radius:10px;margin:.25rem 0 1rem;padding:.65rem 1rem;font-size:.92rem}.mg-skip-result.won{color:#86efac;background:#4ade801f;border:1px solid #4ade8059}.mg-skip-result.lost{color:#fca5a5;background:#f871711a;border:1px solid #f8717140}.mg-skip-result strong{color:#4ade80}.mg-skip-result.lost strong{color:#f87171}.mg-prompt{max-width:600px;line-height:1.2}.mg-countdown.big{color:var(--accent);text-shadow:0 0 48px var(--accent-glow);font-variant-numeric:tabular-nums;font-size:clamp(4rem,12vw,6.5rem);font-weight:800;line-height:1}.mg-bidder{align-items:center;gap:2rem;display:flex}.mg-step{background:var(--surface-soft);border:1px solid var(--border);width:64px;height:64px;color:var(--text);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;transition:all .2s;display:flex}.mg-step:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);transform:scale(1.08)}.mg-bidnum{font-variant-numeric:tabular-nums;min-width:120px;color:var(--text);font-size:clamp(4rem,12vw,6rem);font-weight:800;line-height:1}.mg-bidnum.locked{color:var(--accent);text-shadow:0 0 28px var(--accent-glow)}.mg-locked{color:var(--correct);background:var(--correct-soft);border-radius:999px;padding:.6rem 1.4rem;font-size:1.1rem;font-weight:700}.mg-cpu-status{color:var(--muted);font-size:.9rem}.mg-timer-bar{background:var(--border);border-radius:3px;width:100%;max-width:360px;height:5px;overflow:hidden}.mg-timer-fill{background:linear-gradient(90deg, var(--accent), var(--accent-up));height:100%;transition:width .1s linear}.mg-timer-text{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.mg-timer-text.big{color:var(--text);font-size:1.4rem;font-weight:700}.mg-reveal-row{justify-content:center;align-items:center;gap:1.5rem;width:100%;display:flex}.mg-reveal-side{background:var(--surface-soft);border:2px solid var(--border);border-radius:20px;flex:1;min-width:0;padding:1.75rem 1.25rem;transition:all .4s cubic-bezier(.2,.7,.3,1)}.mg-reveal-side.win{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 14px 48px var(--accent-glow);transform:scale(1.04)}.mg-side-label{color:var(--muted);letter-spacing:.14em;font-size:.8rem;font-weight:700}.mg-side-bid{font-variant-numeric:tabular-nums;margin-top:.4rem;font-size:clamp(2.6rem,8vw,4rem);font-weight:800}.mg-reveal-vs{color:var(--muted);font-size:1rem;font-weight:700}.mg-verdict{color:var(--text);font-size:1.15rem;font-weight:600}.mg-perform{gap:1rem}.mg-perf-head{justify-content:space-between;align-items:baseline;width:100%;padding:0 .25rem;display:flex}.mg-counter{align-items:baseline;gap:.4rem;display:flex}.mg-counter-num{color:var(--correct);font-variant-numeric:tabular-nums;font-size:clamp(2.6rem,9vw,4rem);font-weight:800;display:inline-block}.mg-counter-of{color:var(--muted);font-size:1.3rem;font-weight:600}.mg-mic{background:var(--surface-soft);border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:10px;padding:.85rem 1.5rem;font-size:1rem;font-weight:600;display:inline-flex}.mg-mic-dot{background:var(--muted);border-radius:50%;width:10px;height:10px}.mg-mic-dot.live{background:var(--red);animation:1.1s ease-in-out infinite mg-mic-pulse}.mg-mic.on{border-color:var(--red);color:var(--red);background:var(--red-soft);animation:1.6s ease-in-out infinite mg-glow-pulse}.mg-mic.on .mg-mic-dot{background:var(--red);animation:1.1s ease-in-out infinite mg-mic-pulse}@keyframes mg-mic-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.6)}}@keyframes mg-glow-pulse{0%,to{box-shadow:0 0 #f0506073}50%{box-shadow:0 0 0 14px #f0506000}}.mg-interim{min-height:1.8em;color:var(--muted);background:var(--surface-soft);border-radius:12px;width:100%;max-width:560px;padding:.6rem 1.2rem;font-size:1rem;font-style:italic}.mg-error{color:var(--wrong);background:var(--wrong-soft);border-radius:10px;padding:.5rem 1rem;font-size:.85rem}.mg-switch{color:var(--muted);text-underline-offset:3px;font-size:.85rem;text-decoration:underline}.mg-switch:hover{color:var(--accent-up)}.mg-typed{gap:8px;width:100%;max-width:480px;display:flex}.mg-typed input{background:var(--surface-soft);border:1px solid var(--border);color:var(--text);border-radius:12px;flex:1;padding:.8rem 1.1rem}.mg-typed input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.mg-typed button{background:var(--accent);color:#fff;border-radius:12px;padding:.8rem 1.4rem;font-weight:700}.mg-answers{flex-direction:column;gap:6px;width:100%;max-width:560px;max-height:280px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.mg-answers.small{max-height:200px}.mg-ans{text-align:left;background:var(--surface-soft);border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:9px 14px;font-size:1rem;display:flex}.mg-ans.valid{color:var(--correct);background:var(--correct-soft);border-color:#34d39940}.mg-ans.invalid{color:var(--wrong);background:var(--wrong-soft);border-color:#f8717140;text-decoration:line-through}.mg-ans.duplicate{color:var(--missed);background:var(--missed-soft);border-color:#fbbf2440}.mg-ans-mark{text-align:center;flex-shrink:0;width:22px;font-size:1.1rem;font-weight:800}.mg-ans-empty{color:var(--muted);text-align:center;padding:1rem;font-style:italic}.mg-done{background:var(--surface-soft);border:1px solid var(--border);color:var(--text);border-radius:12px;margin-top:.5rem;padding:.75rem 1.75rem;font-weight:600;transition:all .2s}.mg-done:hover{background:var(--accent-soft);border-color:var(--accent)}.mg-spec-title{color:var(--text);align-items:center;gap:10px;font-size:1.05rem;font-weight:600;display:inline-flex}.mg-result-headline{margin:0;font-size:clamp(1.8rem,5vw,2.4rem);font-weight:800}.mg-result-headline.win{color:var(--correct)}.mg-result-headline.lose{color:var(--wrong)}.mg-result-body{color:var(--muted);font-size:1.05rem}.mg-series-big{color:var(--text);margin-top:.5rem;font-size:1.2rem}.mg-recap{flex-direction:column;gap:6px;width:100%;max-width:540px;margin:.5rem 0;display:flex}.mg-recap-row{background:var(--surface-soft);text-align:left;border-radius:12px;grid-template-columns:44px 1fr auto 60px;align-items:center;gap:10px;padding:10px 14px;font-size:.9rem;display:grid}.mg-recap-row.win{border-left:4px solid var(--correct)}.mg-recap-row.lose{border-left:4px solid var(--wrong)}.mg-row{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}@keyframes mg-panel-enter{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.mg-enter{animation:.45s cubic-bezier(.2,.8,.3,1) both mg-panel-enter}@keyframes mg-num-pop{0%{opacity:0;transform:scale(.55)}60%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.mg-num-pop{animation:.35s cubic-bezier(.2,.8,.3,1) both mg-num-pop}@keyframes mg-countdown-pulse{0%{opacity:0;transform:scale(.7)}40%{opacity:1;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.mg-countdown-pulse{animation:.55s cubic-bezier(.2,.8,.3,1) both mg-countdown-pulse;display:inline-block}@keyframes mg-pop{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.mg-pop{animation:.55s cubic-bezier(.2,.8,.3,1) both mg-pop;display:inline-block}@keyframes mg-slide-in-left{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes mg-slide-in-right{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.mg-slide-in-left{animation:.5s cubic-bezier(.2,.8,.3,1) both mg-slide-in-left}.mg-slide-in-right{animation:.5s cubic-bezier(.2,.8,.3,1) both mg-slide-in-right}@keyframes mg-fade-in-late{0%,50%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.mg-fade-in-late{animation:1s ease-out both mg-fade-in-late}@keyframes mg-ans-slide{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.mg-ans-slide{animation:.28s cubic-bezier(.2,.8,.3,1) both mg-ans-slide}@media (width<=640px){.mg-root{gap:1rem;padding:1rem .75rem 2rem}.mg-panel{border-radius:22px;padding:1.75rem 1.25rem}.mg-bidder{gap:1.25rem}.mg-step{width:56px;height:56px;font-size:1.7rem}.mg-reveal-row{gap:.75rem}.mg-reveal-side{border-radius:16px;padding:1.25rem .75rem}.mg-cta-big{padding:1rem 2rem;font-size:1rem}}@media (width>=1024px){.mg-panel{max-width:820px}.mg-stage{padding:2rem 0}.mg-tag{font-size:1.15rem}}@media (width<=540px){.mg-title-small{flex-shrink:0;font-size:.8rem}.mg-title-small .mg-beta{display:none}.mg-back{padding:.35rem .6rem;font-size:.8rem}.mg-topbar{gap:.5rem;padding:0 .25rem}.mg-dot{width:9px;height:9px}.mg-vs{margin:0 2px;font-size:.65rem}}.mg-topbar{padding-right:4.5rem}@media (width<=540px){.mg-topbar{padding-right:4rem}}.mg-tabs{background:var(--surface-soft);border:1px solid var(--border);border-radius:14px;gap:6px;width:100%;max-width:420px;margin-top:.5rem;padding:5px;display:flex}.mg-tab{color:var(--muted);border-radius:10px;flex:1;padding:.7rem 1rem;font-size:.95rem;font-weight:600;transition:all .2s}.mg-tab.active{background:var(--accent);color:#fff;box-shadow:0 6px 18px var(--accent-glow)}.mg-tab:not(.active):hover{color:var(--text);background:#ffffff0a}.mg-diff-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:.5rem;font-size:.85rem;font-weight:600}.mg-diff-row{gap:8px;width:100%;max-width:420px;display:flex}.mg-diff-btn{background:var(--surface-soft);border:1.5px solid var(--border);color:var(--text);border-radius:12px;flex:1;padding:.85rem .5rem;font-weight:600;transition:all .2s}.mg-diff-btn:hover{border-color:var(--accent-border);background:var(--accent-soft)}.mg-diff-btn.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-up);box-shadow:0 4px 14px var(--accent-glow)}.mg-online-form{flex-direction:column;gap:.85rem;width:100%;max-width:420px;display:flex}.mg-form-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;font-size:.78rem;font-weight:600}.mg-input{background:var(--surface-soft);border:1.5px solid var(--border);color:var(--text);border-radius:12px;width:100%;padding:.85rem 1.1rem;font-family:inherit;font-size:1rem}.mg-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.mg-online-actions{flex-direction:column;gap:.85rem;display:flex}.mg-divider{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;font-size:.75rem;display:flex}.mg-divider:before,.mg-divider:after{content:"";background:var(--border);flex:1;height:1px}.mg-join-row{gap:8px;display:flex}.mg-code-input{text-align:center;letter-spacing:.2em;text-transform:uppercase;flex:1;font-size:1.05rem;font-weight:700}.mg-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:48px;height:48px;margin:.5rem auto;animation:.9s linear infinite mg-spin}@keyframes mg-spin{to{transform:rotate(360deg)}}.mg-topbar-score{background:var(--surface);border-bottom:1px solid var(--border);border-radius:22px;flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem 1rem .5rem}.mg-topbar-score>.mg-back{align-self:flex-start}.mg-topbar-score>.mg-series{align-self:center}.mg-scoreboard{justify-content:space-between;align-items:center;gap:.5rem;width:100%;display:flex}.mg-score-side{border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:.5rem .75rem;transition:background .3s,box-shadow .3s;display:flex}.mg-score-side.leading{background:var(--accent-soft);box-shadow:0 0 24px var(--accent-glow)}.mg-score-side.opp.leading{background:#f0506014;box-shadow:0 0 24px #f0506040}.mg-score-name{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:700}.mg-score-num{font-variant-numeric:tabular-nums;color:var(--text);font-size:clamp(2.2rem,7vw,3.2rem);font-weight:900;line-height:1;transition:transform .1s}.mg-score-side.leading .mg-score-num{color:var(--accent-up)}.mg-score-side.opp.leading .mg-score-num{color:var(--red)}@keyframes mg-score-flash{0%{transform:scale(1)}20%{transform:scale(1.55)}40%{transform:scale(.9)}60%{transform:scale(1.2)}to{transform:scale(1)}}.mg-score-flash{animation:.7s cubic-bezier(.2,.8,.3,1) both mg-score-flash}.mg-leading-pip{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-up);background:var(--accent-soft);border-radius:999px;padding:2px 7px;font-size:.58rem;font-weight:800;animation:.35s cubic-bezier(.2,.8,.3,1) both mg-pip-in}.mg-leading-pip.opp{color:var(--red);background:#f050601f}@keyframes mg-pip-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.mg-score-center{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;display:flex}.mg-score-round-info{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}.mg-score-divider{color:var(--border);font-size:1.6rem;font-weight:800;line-height:1}.mg-code-chip,.mg-diff-chip{letter-spacing:.1em;text-transform:uppercase;color:var(--accent-up);background:var(--accent-soft);border-radius:6px;padding:2px 8px;font-size:.65rem;font-weight:700}.mg-diff-chip{color:var(--muted);background:var(--surface-soft)}.mg-dual-perf-bar{background:var(--surface-soft);border:1px solid var(--border);border-radius:18px;justify-content:space-between;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;display:flex}.mg-dual-slot{flex:1;align-items:center;gap:6px;display:flex}.mg-dual-slot.opp{flex-direction:row-reverse}.mg-dual-slot.done{opacity:.6}.mg-dual-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.65rem;font-weight:700}.mg-dual-count{font-variant-numeric:tabular-nums;color:var(--correct);font-size:1.9rem;font-weight:800;display:inline-block}.mg-dual-slot.opp .mg-dual-count{color:var(--red)}.mg-dual-of{color:var(--muted);font-size:.95rem;font-weight:600}.mg-dual-done{text-transform:uppercase;letter-spacing:.12em;color:var(--correct);background:var(--correct-soft);border-radius:6px;padding:2px 7px;font-size:.6rem;font-weight:700}.mg-dual-divider{color:var(--muted);text-align:center;letter-spacing:.04em;text-transform:uppercase;min-width:60px;font-size:.65rem}.mg-perf-timer{color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.mg-pct-compare{align-items:stretch;gap:1rem;width:100%;max-width:520px;display:flex}.mg-pct-side{background:var(--surface-soft);border:2px solid var(--border);border-radius:16px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:1rem .75rem;transition:all .3s cubic-bezier(.2,.8,.3,1);display:flex}.mg-pct-side.win{border-color:var(--correct);background:var(--correct-soft);transform:scale(1.04);box-shadow:0 8px 32px #34d3992e}.mg-pct-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:700}.mg-pct-score{font-variant-numeric:tabular-nums;color:var(--text);font-size:1.4rem;font-weight:800}.mg-pct-num{font-variant-numeric:tabular-nums;color:var(--accent-up);font-size:2rem;font-weight:900;animation:.5s cubic-bezier(.2,.8,.3,1) both mg-num-pop}.mg-pct-side.win .mg-pct-num{color:var(--correct)}.mg-pct-vs{color:var(--muted);flex-shrink:0;align-items:center;font-size:.8rem;font-weight:700;display:flex}.mg-result-dual{align-items:flex-start;gap:.75rem;width:100%;max-width:620px;display:flex}.mg-result-col{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.mg-result-col-head{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0 2px 4px;font-size:.72rem;font-weight:700}.mg-voice-section,.mg-text-section{flex-direction:column;align-items:center;gap:.6rem;width:100%;max-width:560px;display:flex}.mg-typed-big{gap:8px;width:100%;display:flex}.mg-typed-input{background:var(--surface-soft);border:2px solid var(--border);color:var(--text);border-radius:14px;flex:1;padding:1rem 1.25rem;font-family:inherit;font-size:1.05rem;transition:border-color .2s,box-shadow .2s}.mg-typed-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.mg-typed-input.preview-match{border-color:var(--correct);box-shadow:0 0 0 3px var(--correct-soft)}.mg-typed-input.preview-nomatch{border-color:var(--missed);box-shadow:0 0 0 3px var(--missed-soft)}.mg-typed-btn{background:linear-gradient(135deg, var(--accent), var(--accent-up));color:#fff;box-shadow:0 6px 18px var(--accent-glow);white-space:nowrap;border-radius:14px;padding:1rem 1.5rem;font-size:1rem;font-weight:700;transition:transform .15s,box-shadow .15s}.mg-typed-btn:hover{box-shadow:0 10px 28px var(--accent-glow);transform:translateY(-2px)}.mg-typed-btn:active{transform:translateY(0)}.mg-type-preview{border-radius:8px;align-self:flex-start;padding:4px 12px;font-size:.82rem;font-weight:600;animation:.2s both mg-fade-in-up}.mg-type-preview.match{color:var(--correct);background:var(--correct-soft)}.mg-type-preview.no-match{color:var(--missed);background:var(--missed-soft)}.mg-waiting-done{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}.mg-cpu-live{background:var(--surface-soft);border:1px solid var(--border);border-radius:14px;width:100%;max-width:560px;margin-top:.25rem;padding:.75rem 1rem}.mg-cpu-live-head{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin-bottom:.5rem;font-size:.72rem;font-weight:700;display:flex}.mg-cpu-live .mg-answers{max-height:140px}@keyframes mg-fade-in-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.mg-prompt-small{color:var(--clr-sub);text-align:center;margin:-.25rem 0 .75rem;max-width:340px;margin-inline:auto;font-size:.95rem;line-height:1.4}.mg-prompt-performing{color:var(--clr-sub);text-align:center;opacity:.85;margin:0 0 .5rem;font-size:.88rem;line-height:1.4}.mg-match-recap{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;width:100%;max-width:400px;margin:1rem auto 1.25rem;overflow:hidden}.mg-recap-title{letter-spacing:.1em;text-transform:uppercase;color:var(--clr-sub);border-bottom:1px solid #ffffff0f;padding:.5rem .75rem .25rem;font-size:.68rem}.mg-match-recap .mg-recap-row{background:0 0;border-bottom:1px solid #ffffff0a;border-radius:0;grid-template-columns:1.2rem 1fr auto auto;align-items:center;gap:.5rem;padding:.45rem .75rem;font-size:.82rem;display:grid}.mg-match-recap .mg-recap-row:last-child{border-bottom:none}.mg-recap-round{color:var(--clr-sub);font-size:.72rem}.mg-recap-cat{color:var(--clr-fg);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mg-recap-result.win{color:#4ade80;font-weight:600}.mg-recap-result.lose{color:#f87171}.mg-recap-pcts{color:var(--clr-sub);white-space:nowrap;font-size:.75rem}@media (width<=540px){.mg-topbar-score{padding:.6rem .75rem .4rem}.mg-score-num{font-size:2rem}.mg-score-name{font-size:.62rem}.mg-pct-compare{gap:.5rem}.mg-result-dual{flex-direction:column}.mg-dual-perf-bar{padding:.5rem .75rem}.mg-dual-count{font-size:1.5rem}.mg-match-recap .mg-recap-row{grid-template-columns:1.2rem 1fr auto}.mg-recap-pcts{display:none}}
