:root{--ink: #1e1a4d;--ink-2: #4a4672;--ink-3: #807ca3;--line: #e7e5f2;--paper: #ffffff;--paper-2: #f7f6fc;--pink: #f22c99;--cyan: #24c4f9;--purple: #8b5cf6;--amber: #f5a524;--green: #12b76a;--red: #f04438;--grad: linear-gradient(120deg, var(--cyan) 0%, var(--purple) 50%, var(--pink) 100%);--grad-soft: linear-gradient(120deg, #e6f8fe 0%, #f1ebff 50%, #ffe8f4 100%);--stage: #17113f;--stage-2: #241a5c;--opt-0: #7442e8;--opt-1: #c27a00;--opt-2: #0e8a87;--opt-3: #e5267f;--radius: 18px;--radius-sm: 12px;--shadow: 0 10px 30px -12px rgba(30, 26, 77, .25);--shadow-lg: 0 30px 60px -20px rgba(30, 26, 77, .35);--ease: cubic-bezier(.2, .8, .2, 1);--pop: cubic-bezier(.34, 1.56, .64, 1);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:Outfit,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper);line-height:1.5;-webkit-font-smoothing:antialiased}img,video,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,h4{line-height:1.1;margin:0 0 .5em;letter-spacing:-.02em}p{margin:0 0 1em}:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}[hidden]{display:none!important}.container{width:min(1180px,100% - 32px);margin-inline:auto}.narrow{width:min(720px,100% - 32px);margin-inline:auto}.stack>*+*{margin-top:var(--gap, 16px)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}.muted{color:var(--ink-3)}.center{text-align:center}.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--purple)}.site-header{position:sticky;top:0;z-index:50;background:#ffffffdb;-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line)}.site-header:after{content:"";position:absolute;inset:auto 0 -1px 0;height:2px;background:var(--grad);opacity:.7}.site-header .bar{display:flex;align-items:center;gap:18px;height:68px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand img{height:34px;width:auto}.nav{display:flex;gap:4px;margin-left:12px}.nav a{text-decoration:none;font-weight:600;font-size:15px;color:var(--ink-2);padding:8px 12px;border-radius:10px;transition:background .2s}.nav a:hover,.nav a[aria-current=page]{background:var(--paper-2);color:var(--ink)}.mode-badge{font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px;background:#fff7e6;color:#9a5b00;border:1px solid #ffe2a8;white-space:nowrap}.mode-badge.online{background:#e8fbf1;color:#067647;border-color:#abefc6}.user-chip{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;padding:4px 12px 4px 4px;border-radius:999px;background:var(--paper-2);border:1px solid var(--line);text-decoration:none}.user-chip .av{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fff;font-size:18px}.menu-btn{display:none;background:none;border:0;font-size:24px;padding:6px}@media (max-width: 860px){.nav{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;background:#fff;padding:12px 16px 18px;border-bottom:1px solid var(--line);box-shadow:var(--shadow);margin:0}.nav.open{display:flex}.menu-btn{display:block}.hide-sm{display:none!important}}.btn{--bg: var(--ink);--fg: #fff;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 22px;border-radius:14px;border:0;background:var(--bg);color:var(--fg);font-weight:800;font-size:15px;text-decoration:none;white-space:nowrap;transition:transform .15s var(--ease),box-shadow .2s,opacity .2s,filter .2s;box-shadow:0 4px #0000002e}.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}.btn:active{transform:translateY(2px);box-shadow:0 1px #0000002e}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn.grad{background:var(--grad)}.btn.pink{--bg: var(--pink)}.btn.ghost{--bg: transparent;--fg: var(--ink);box-shadow:inset 0 0 0 2px var(--line)}.btn.ghost:hover{box-shadow:inset 0 0 0 2px var(--ink-3)}.btn.light{--bg: #fff;--fg: var(--ink)}.btn.danger{--bg: var(--red)}.btn.sm{min-height:36px;padding:0 14px;font-size:13px;border-radius:10px}.btn.lg{min-height:58px;padding:0 30px;font-size:18px;border-radius:16px}.btn.block{width:100%}.icon-btn{width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:#fff;display:inline-grid;place-items:center;font-size:16px}.field{display:grid;gap:6px}.field label,.label{font-size:13px;font-weight:700;color:var(--ink-2)}.input,select.input,textarea.input{width:100%;min-height:48px;padding:12px 14px;border-radius:12px;border:2px solid var(--line);background:#fff;transition:border-color .2s,box-shadow .2s}textarea.input{resize:vertical;min-height:90px}.input:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 4px #8b5cf626}.input.big{min-height:64px;font-size:24px;font-weight:800;text-align:center;letter-spacing:.08em}.check{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:600}.check input{width:18px;height:18px;accent-color:var(--purple)}.hint{font-size:13px;color:var(--ink-3)}.error-text{color:var(--red);font-size:14px;font-weight:600}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.quiz-card{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:var(--radius);background:#fff;border:1px solid var(--line);transition:transform .25s var(--ease),box-shadow .25s,border-color .25s}.quiz-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:#d8d2f5}.quiz-card .cover{height:92px;border-radius:12px;background:var(--grad-soft);display:grid;place-items:center;font-size:44px}.quiz-card h3{font-size:18px;margin:0}.quiz-card .meta{font-size:13px;color:var(--ink-3)}.quiz-card .actions{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--paper-2);color:var(--ink-2)}.tabs{display:flex;gap:6px;padding:5px;background:var(--paper-2);border-radius:14px;width:fit-content;flex-wrap:wrap}.tabs button{border:0;background:none;padding:9px 16px;border-radius:10px;font-weight:700;color:var(--ink-2)}.tabs button[aria-selected=true]{background:#fff;color:var(--ink);box-shadow:0 2px 8px #1e1a4d1a}.toasts{position:fixed;z-index:1000;bottom:20px;left:50%;transform:translate(-50%);display:grid;gap:8px;width:min(420px,calc(100% - 32px))}.toast{padding:14px 18px;border-radius:14px;background:var(--ink);color:#fff;font-weight:600;box-shadow:var(--shadow-lg);animation:toastIn .35s var(--pop)}.toast.error{background:var(--red)}.toast.success{background:var(--green)}@keyframes toastIn{0%{opacity:0;transform:translateY(16px) scale(.96)}}dialog.modal{border:0;border-radius:22px;padding:0;width:min(560px,calc(100% - 24px));box-shadow:var(--shadow-lg);color:var(--ink)}dialog.modal::backdrop{background:#17113f8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog.modal .modal-body{padding:26px}.site-footer{margin-top:80px;border-top:1px solid var(--line);padding:40px 0;font-size:14px;color:var(--ink-3)}.site-footer .row a{text-decoration:none;font-weight:600}.site-footer .row a:hover{color:var(--ink)}body.stage{background:radial-gradient(1200px 600px at 10% -10%,#3a2a9c 0%,transparent 60%),radial-gradient(900px 500px at 110% 110%,#8a1f66 0%,transparent 55%),var(--stage);color:#fff;min-height:100dvh;overflow-x:hidden}.stage .muted{color:#ffffffa6}.stage .card{background:#ffffff0f;border-color:#ffffff1f;color:#fff;box-shadow:none}.stage .input{background:#fff;color:var(--ink);border-color:transparent}.stage-top{display:flex;align-items:center;gap:14px;padding:14px 20px}.stage-top .brand img{height:30px}.stage-main{min-height:calc(100dvh - 68px);display:flex;flex-direction:column}.screen{flex:1;display:flex;flex-direction:column;animation:screenIn .45s var(--ease)}@keyframes screenIn{0%{opacity:0;transform:translateY(14px)}}.big-title{font-size:clamp(28px,4.6vw,60px);font-weight:900;text-align:center;line-height:1.05}.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#ffffff1f;font-weight:700;font-size:14px}.pin-banner{display:flex;align-items:stretch;gap:18px;flex-wrap:wrap;justify-content:center;margin:10px auto 0}.pin-box{background:#fff;color:var(--ink);border-radius:22px;padding:16px 28px;display:flex;flex-direction:column;justify-content:center}.pin-box .label{font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3)}.pin-box .url{font-weight:800;font-size:clamp(16px,2vw,22px)}.pin-box .pin{font-size:clamp(48px,8vw,96px);font-weight:900;letter-spacing:.06em;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.qr-box{background:#fff;border-radius:22px;padding:10px;display:grid;place-items:center}.qr-box canvas{width:150px!important;height:150px!important}.lobby-players{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-content:flex-start;padding:10px 20px 30px}.player-tag{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:14px;background:#fffffff2;color:var(--ink);font-weight:800;font-size:18px;animation:popIn .45s var(--pop);border:0}button.player-tag:hover{background:#ffe1e1;text-decoration:line-through}@keyframes popIn{0%{opacity:0;transform:scale(.4)}}.q-head{display:flex;align-items:center;gap:12px;padding:0 20px}.q-text{background:#fff;color:var(--ink);margin:16px 20px;padding:clamp(16px,3vw,30px);border-radius:22px;font-size:clamp(22px,3.4vw,44px);font-weight:800;text-align:center;line-height:1.15;box-shadow:0 10px #0000002e}.q-mid{flex:1;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:0 24px}.timer{--p: 1;width:clamp(90px,12vw,150px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;font-size:clamp(34px,5vw,60px);font-weight:900;background:conic-gradient(var(--cyan) calc(var(--p) * 360deg),rgba(255,255,255,.12) 0);position:relative}.timer:before{content:"";position:absolute;top:9px;right:9px;bottom:9px;left:9px;border-radius:50%;background:var(--stage-2)}.timer span{position:relative}.timer.hurry{background:conic-gradient(var(--pink) calc(var(--p) * 360deg),rgba(255,255,255,.12) 0);animation:pulse 1s ease-in-out infinite alternate}@keyframes pulse{to{transform:scale(1.03)}}.stat-big{text-align:center;font-weight:900;font-size:clamp(32px,5vw,64px);line-height:1}.stat-big small{display:block;font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.7;margin-top:6px}.intro-bar{height:10px;border-radius:99px;background:#ffffff26;overflow:hidden;margin:18px auto;width:min(520px,80%)}.intro-bar i{display:block;height:100%;background:var(--grad);animation:fill var(--d, 4s) linear forwards}@keyframes fill{0%{width:0}to{width:100%}}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 20px 20px}.opt{--c: var(--opt-0);display:flex;align-items:center;gap:14px;min-height:clamp(70px,11vh,120px);padding:14px 18px;border-radius:16px;border:0;background:var(--c);color:#fff;font-weight:800;font-size:clamp(17px,2.2vw,28px);text-align:left;box-shadow:0 6px #00000040;transition:transform .15s var(--ease),opacity .3s,filter .3s}.opt:nth-child(2){--c: var(--opt-1)}.opt:nth-child(3){--c: var(--opt-2)}.opt:nth-child(4){--c: var(--opt-3)}.opt .shape{flex:none;width:clamp(30px,3.6vw,46px);height:clamp(30px,3.6vw,46px)}.opt .count{margin-left:auto;font-size:.9em;opacity:.9}button.opt:hover{transform:translateY(-2px);filter:brightness(1.08)}button.opt:active{transform:translateY(3px);box-shadow:0 2px #00000040}.opt.dim{opacity:.28;filter:grayscale(.4)}.opt.right{outline:4px solid #fff;outline-offset:-4px}.opt.right:after{content:"✔";margin-left:auto;font-size:1.1em}.options.tf{grid-template-columns:1fr 1fr}.dist{display:flex;justify-content:center;align-items:flex-end;gap:clamp(10px,3vw,36px);height:220px;padding:10px 20px}.dist .col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;height:100%;width:clamp(54px,9vw,110px)}.dist .bar{width:100%;border-radius:12px 12px 4px 4px;min-height:8px;background:var(--c);transition:height .9s var(--pop);display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px}.dist .shape-chip{width:100%;display:grid;place-items:center;padding:6px 0;border-radius:8px;background:var(--c)}.dist .shape-chip svg{width:22px;height:22px}.dist .n{font-weight:900;font-size:26px}.dist .col.wrong{opacity:.35}.board{width:min(760px,calc(100% - 32px));margin:0 auto;display:grid;gap:10px}.board-row{display:flex;align-items:center;gap:14px;padding:14px 20px;border-radius:16px;background:#fffffff2;color:var(--ink);font-weight:800;font-size:clamp(16px,2vw,24px);animation:slideIn .5s var(--ease) both}.board-row:nth-child(2){animation-delay:.08s}.board-row:nth-child(3){animation-delay:.16s}.board-row:nth-child(4){animation-delay:.24s}.board-row:nth-child(5){animation-delay:.32s}.board-row .pos{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--paper-2);font-size:16px}.board-row:first-child .pos{background:var(--grad);color:#fff}.board-row .score{margin-left:auto;font-variant-numeric:tabular-nums}@keyframes slideIn{0%{opacity:0;transform:translate(-30px)}}.podium{display:flex;align-items:flex-end;justify-content:center;gap:clamp(8px,2vw,22px);margin-top:auto;padding:0 16px}.podium .place{display:flex;flex-direction:column;align-items:center;width:clamp(100px,22vw,230px)}.podium .who{text-align:center;font-weight:900;font-size:clamp(16px,2.2vw,28px);margin-bottom:10px;animation:popIn .6s var(--pop) both}.podium .who .av{font-size:clamp(36px,5vw,64px);display:block}.podium .who small{display:block;font-size:.65em;opacity:.8}.podium .block{width:100%;border-radius:16px 16px 0 0;display:grid;place-items:start center;padding-top:14px;font-size:clamp(36px,6vw,72px);font-weight:900;animation:grow .9s var(--ease) both;transform-origin:bottom}.podium .p1 .block{height:clamp(170px,30vh,300px);background:linear-gradient(180deg,#ffcf4d,#e09b00);animation-delay:1.4s}.podium .p1 .who{animation-delay:2s}.podium .p2 .block{height:clamp(130px,22vh,220px);background:linear-gradient(180deg,#e6e8f0,#a7adc2);color:var(--ink);animation-delay:.7s}.podium .p2 .who{animation-delay:1.2s}.podium .p3 .block{height:clamp(100px,16vh,160px);background:linear-gradient(180deg,#f0a774,#b9652f);animation-delay:.1s}.podium .p3 .who{animation-delay:.6s}@keyframes grow{0%{transform:scaleY(0)}}.host-bar{display:flex;gap:10px;align-items:center;padding:12px 20px;flex-wrap:wrap}.player-shell{min-height:100dvh;display:flex;flex-direction:column}.player-top{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#0000002e;font-weight:800}.player-top .score{margin-left:auto;background:#ffffff24;padding:6px 12px;border-radius:10px;font-variant-numeric:tabular-nums}.player-body{flex:1;display:flex;flex-direction:column;justify-content:center;padding:20px;text-align:center;gap:16px}.player-options{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px}.player-options .opt{min-height:0;justify-content:center;flex-direction:column;text-align:center;font-size:18px}.player-options .opt .shape{width:56px;height:56px}.player-options.tf{grid-template-columns:1fr}.result-panel{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;text-align:center}.result-panel.ok{background:linear-gradient(180deg,rgba(18,183,106,.35),transparent 70%)}.result-panel.bad{background:linear-gradient(180deg,rgba(240,68,56,.35),transparent 70%)}.result-icon{width:110px;height:110px;border-radius:50%;display:grid;place-items:center;font-size:56px;background:#fff;animation:popIn .5s var(--pop)}.result-panel.ok .result-icon{color:var(--green)}.result-panel.bad .result-icon{color:var(--red)}.points-pop{font-size:40px;font-weight:900;animation:popIn .6s var(--pop) .15s both}.avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.avatar-grid button{aspect-ratio:1;border-radius:14px;border:2px solid transparent;background:#ffffff1a;font-size:26px}.avatar-grid button[aria-pressed=true]{border-color:#fff;background:#ffffff40;transform:scale(1.06)}.light .avatar-grid button{background:var(--paper-2)}.light .avatar-grid button[aria-pressed=true]{border-color:var(--purple);background:#f1ebff}.spinner{width:44px;height:44px;border-radius:50%;border:4px solid rgba(255,255,255,.2);border-top-color:#fff;animation:spin .8s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 700px){.options{grid-template-columns:1fr}.q-mid{grid-template-columns:1fr auto 1fr;padding:0 12px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}}html.big-text{font-size:118%}html.big-text body{font-size:1.12rem}html.big-text .opt{font-size:clamp(20px,2.6vw,32px)}html.hc{--ink: #000;--ink-2: #111;--ink-3: #333;--line: #000;--opt-0: #4b1fb0;--opt-1: #8a5300;--opt-2: #00605e;--opt-3: #b0005a}html.hc .card,html.hc .input,html.hc .quiz-card{border-width:2px;border-color:#000}html.hc body.stage{background:#000}html.hc .stage .card{border-color:#fff}html.hc .opt{outline:3px solid #fff;outline-offset:-3px}html.hc .muted,html.hc .hint{color:inherit;opacity:.9}html.reduce-motion *,html.reduce-motion *:before,html.reduce-motion *:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}.a11y-btn{position:fixed;left:16px;bottom:16px;z-index:60;width:48px;height:48px;border-radius:50%;border:0;background:var(--ink);color:#fff;font-size:22px;box-shadow:var(--shadow-lg)}.stage .a11y-btn{background:#fff;color:var(--ink)}.speak-btn{border:0;background:#1e1a4d14;border-radius:10px;padding:4px 10px;font-size:18px;vertical-align:middle}.stage .speak-btn{background:#ffffff26;color:#fff}.study-stage{min-height:calc(100dvh - 68px);color:#fff;background:radial-gradient(900px 500px at 10% -10%,#3a2a9c 0%,transparent 60%),radial-gradient(700px 400px at 110% 110%,#8a1f66 0%,transparent 55%),var(--stage)}.study-stage .q-text{margin-inline:0}.dots{display:flex;gap:6px;justify-content:center;margin-top:14px}.dots i{width:28px;height:6px;border-radius:6px;background:#fff3}.dots i.now{background:#fff}.dots i.ok{background:var(--green)}.dots i.bad{background:var(--red)}@media print{.site-header,.site-footer,.a11y-btn,.btn{display:none!important}}.alt{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;padding:12px 14px;border-radius:12px;border:2px solid var(--line);background:#fff;color:var(--ink);transition:border-color .15s,background .15s}.alt>b{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--paper-2)}.alt p{margin:0!important}.alt:hover:not(:disabled){border-color:var(--purple)}.alt.chosen{border-color:var(--purple);background:#f6f2ff}.alt.chosen>b{background:var(--purple);color:#fff}.alt.right{border-color:var(--green);background:#e8fbf1}.alt.right>b{background:var(--green);color:#fff}.alt.wrong{border-color:var(--red);background:#ffeceb}.q-context{font-size:15px;color:var(--ink-2);border-left:4px solid var(--line);padding-left:12px;margin-bottom:12px;max-height:50vh;overflow:auto}@media (max-width: 800px){.auth-shell{padding-top:20px!important}.auth-intro{order:2}.auth-intro img{display:none}}.react-bar{position:sticky;bottom:0;display:flex;gap:6px;overflow-x:auto;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#0a0623d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);scrollbar-width:none}.react-bar button{flex:none;border:0;border-radius:999px;background:#ffffff1f;color:#fff;font-size:22px;min-width:44px;height:44px}.react-bar .phrase{font-size:14px;font-weight:700;padding:0 14px}.react-bar .sep{width:1px;flex:none;background:#fff3;margin:6px 4px}.react-bar button:active{transform:scale(.92)}#bubbles{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:40}.bubble{position:absolute;bottom:80px;display:grid;justify-items:center;animation:rise 3.2s ease-out forwards}.bubble span{font-size:40px}.bubble.phrase span{font-size:16px;font-weight:800;background:#fff;color:var(--ink);padding:6px 12px;border-radius:14px}.bubble small{font-size:11px;font-weight:700;background:#00000073;padding:2px 8px;border-radius:8px;margin-top:4px}@keyframes rise{to{transform:translateY(-55vh);opacity:0}}.peer-chip{border:0;border-radius:999px;padding:6px 12px;background:#ffffff1a;color:#fff;font-weight:700;font-size:13px;cursor:pointer}.peer-chip:disabled{background:#8b5cf673;cursor:default}.rank-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.rank-row{display:grid;grid-template-columns:44px 44px 1fr auto;gap:12px;align-items:center;padding:12px 16px;border-radius:16px;background:#fff;border:1px solid var(--line)}.rank-row.top{background:var(--grad-soft);border:0}.rank-row .pos{font-weight:900;font-size:20px;text-align:center}.rank-row .av{font-size:30px;text-align:center}.rank-row .who{display:grid;min-width:0}.rank-row .who small{color:var(--ink-3);font-size:12px}.rank-row .pts{font-weight:900;font-size:20px;font-variant-numeric:tabular-nums}.rank-row .pts small{font-size:12px;margin-left:3px;color:var(--ink-3)}dialog.modal .card{background:#fff;color:var(--ink);border-color:var(--line)}dialog.modal .muted,dialog.modal .hint{color:var(--ink-3)}.brand-mascot{width:40px!important;height:40px!important;border-radius:12px;animation:mascotFloat 6s ease-in-out infinite;will-change:transform;backface-visibility:hidden}.brand:hover .brand-mascot{animation-duration:2.4s}@keyframes mascotFloat{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-2px,0)}}@keyframes mascotBob{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-3px,0)}}:root{--live: #12b76a;--live-ink: #067647;--live-soft: #e8fbf1}.live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--live);box-shadow:0 0 #12b76a8c;animation:livePulse 2.4s ease-out infinite;vertical-align:middle;flex:none}@keyframes livePulse{0%{box-shadow:0 0 #12b76a80}70%,to{box-shadow:0 0 0 8px #12b76a00}}.live-text{color:var(--live-ink);font-weight:800}.stage .live-text{color:#7ef0b5}.nav a.live-link{color:var(--live-ink);display:inline-flex;align-items:center;gap:7px}.btn.live-btn{--bg: var(--live-soft);--fg: var(--live-ink);background:var(--live-soft);color:var(--live-ink);box-shadow:inset 0 0 0 2px #12b76a59;display:inline-flex;align-items:center;gap:9px}.btn.live-btn:hover{box-shadow:inset 0 0 0 2px var(--live)}.online-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;background:var(--live-soft);color:var(--live-ink);font-weight:800;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}.stage .online-chip{background:#12b76a2e;color:#7ef0b5}.online-chip[hidden]{display:none}.user-slot{display:flex;gap:8px;align-items:center}@media (max-width: 420px){.hide-xs{display:none!important}}dialog.auth-modal{width:min(440px,calc(100% - 20px));border-radius:24px}.auth-modal .modal-body{position:relative;padding:24px}.auth-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:var(--paper-2);font-size:16px}.auth-head{display:flex;gap:12px;align-items:center;padding-right:36px}.auth-head img{border-radius:16px;flex:none}.auth-head b{display:block;font-size:22px;line-height:1.15}.auth-head span{color:var(--ink-3);font-size:14px}.google-btn{--bg: #fff;--fg: var(--ink);min-height:52px;font-size:16px;box-shadow:inset 0 0 0 2px var(--line),0 3px #0000000f}.google-btn:hover{box-shadow:inset 0 0 0 2px #4285f4,0 3px #0000000f}.or{display:flex;align-items:center;gap:10px;color:var(--ink-3);font-size:13px}.or:before,.or:after{content:"";flex:1;border-top:1px solid var(--line)}.pass-wrap{position:relative}.pass-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:none;font-size:18px;padding:6px}.linkish{border:0;background:none;color:var(--purple);font-weight:700;padding:4px;text-decoration:underline;text-underline-offset:3px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}.role-opt{position:relative}.role-opt input{position:absolute;opacity:0}.role-opt span{display:block;padding:10px;border-radius:12px;border:2px solid var(--line);font-size:14px;font-weight:700;cursor:pointer}.role-opt input:checked+span{border-color:var(--purple);background:#f6f2ff}.role-opt input:focus-visible+span{outline:3px solid var(--cyan)}dialog.onb{width:min(600px,calc(100% - 16px));border-radius:24px;max-height:calc(100dvh - 16px)}.onb-body{position:relative;padding:22px;display:grid;gap:14px}.onb-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding-right:36px}.onb-progress span{display:grid;justify-items:center;gap:4px;font-size:11px;color:var(--ink-3);text-align:center}.onb-progress i{font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:800;background:var(--paper-2)}.onb-progress .now i{background:var(--grad);color:#fff}.onb-progress .done i{background:var(--green);color:#fff}.onb-progress .now b{color:var(--ink)}.onb-head{display:flex;gap:12px;align-items:center}.onb-head img{border-radius:14px;flex:none}.onb-head h2{margin:0;font-size:22px}.onb-head p{margin:2px 0 0;color:var(--ink-3);font-size:14px}.onb-fields{display:grid;gap:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.onb-nav{display:flex;justify-content:space-between;gap:10px;align-items:center}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.chip-opt input,.role-card input{position:absolute;opacity:0}.chip-opt span{display:inline-block;padding:8px 14px;border-radius:999px;border:2px solid var(--line);font-weight:700;font-size:14px;cursor:pointer}.chip-opt input:checked+span,.role-card input:checked+span{border-color:var(--purple);background:#f6f2ff}.chip-opt input:focus-visible+span,.role-card input:focus-visible+span{outline:3px solid var(--cyan)}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.role-card{position:relative}.role-card span{display:grid;gap:2px;padding:12px;border-radius:14px;border:2px solid var(--line);cursor:pointer;height:100%}.role-card i{font-style:normal;font-size:24px}.role-card small{color:var(--ink-3);font-size:12px}.kid-row{display:flex;gap:10px;align-items:center;padding:8px 12px;border-radius:12px;background:var(--paper-2)}.kid-row .linkish{margin-left:auto}.kid-add{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-top:8px}.onb-plans{display:grid;gap:10px}.onb-plan{position:relative;display:grid;gap:10px;padding:14px;border-radius:16px;border:2px solid var(--line)}.onb-plan.rec{border-color:var(--purple);padding-top:20px;box-shadow:0 10px 30px -14px #8b5cf699}.onb-plan.alt{grid-template-columns:1fr auto;align-items:center;padding:10px 14px}.onb-plan .badge{position:absolute;top:-11px;left:12px;background:var(--grad);color:#fff;font-size:11px;font-weight:800;padding:3px 10px;border-radius:999px}.onb-plan-top{display:flex;align-items:center;gap:10px}.onb-plan-top .ic{font-size:28px}.onb-plan-top .nm{display:grid;flex:1;min-width:0}.onb-plan-top .pr{text-align:right;white-space:nowrap}.onb-plan-top .pr b{font-size:20px;font-weight:900}.onb-plan-top .pr span,.onb-plan-top .pr small{color:var(--ink-3);font-size:12px;font-weight:700}.onb-plan.rec .pr b{font-size:26px}.onb-plan ul{margin:0;padding-left:18px;font-size:14px;color:var(--ink-2);display:grid;gap:4px}@media (max-width: 520px){.grid2,.kid-add,.role-cards{grid-template-columns:1fr}.onb-progress b{display:none}}.reg-grid{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin-top:10px;font-size:14px}.reg-grid span{color:var(--ink-3)}.sure-row{display:flex;justify-content:center;padding:8px 16px 0}.sure-btn{display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:8px 18px;border-radius:999px;border:2px dashed rgba(255,255,255,.55);background:#ffffff14;color:#fff;font:inherit;font-weight:800;cursor:pointer;transition:transform .12s ease,background .12s ease}.sure-btn small{font-weight:600;opacity:.85;font-size:12px}.sure-btn[aria-pressed=true]{border-style:solid;border-color:#ffd23f;background:linear-gradient(135deg,#ffb703,#fb5607);transform:scale(1.04);box-shadow:0 6px 18px #fb560759}.sure-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}.nav a.nav-code{display:none}.code-cta{white-space:nowrap}@media (max-width: 860px){.nav a{padding:12px 14px;font-size:16px}.nav a.nav-code{display:block;margin-top:6px;border-top:1px solid var(--line);border-radius:0 0 10px 10px}}.user-menu{position:relative}.user-chip{cursor:pointer;font:inherit;font-weight:700;color:inherit}.user-pop{position:absolute;right:0;top:calc(100% + 8px);min-width:200px;display:grid;padding:8px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);z-index:30}.user-pop[hidden]{display:none}.user-pop a{padding:9px 12px;border-radius:9px;text-decoration:none;font-weight:600;color:var(--ink-2)}.user-pop a:hover{background:var(--paper-2);color:var(--ink)}.foot-grid{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:28px}.foot-brand img{border-radius:9px}.foot-brand p{margin:10px 0 0;max-width:320px;line-height:1.55}.foot-col{display:grid;align-content:start;gap:8px}.foot-col h2{margin:0 0 4px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink)}.foot-col a{text-decoration:none;font-weight:600;color:var(--ink-3)}.foot-col a:hover{color:var(--ink)}.foot-base{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}@media (max-width: 860px){.foot-grid{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1 / -1}}
