:root{--brand:#00587c;--brand-700:#00435e;--brand-800:#003349;--brand-50:#e7f2f7;--brand-100:#cfe5ef;--green:#00a650;--green-700:#00803d;--green-50:#e5f7ed;--orange:#f29f05;--orange-700:#b97600;--orange-50:#fff4dd;--cyan:#00a8cc;--cyan-700:#007f9c;--cyan-50:#e0f6fb;--red:#d64545;--red-700:#a92f2f;--red-50:#fdecec;--pink:#db2777;--pink-700:#be185d;--pink-50:#fdf0f6;--ink:#0e2833;--ink-2:#33505d;--muted:#61798a;--line:#dbe6eb;--line-2:#eaf0f3;--bg:#f1f6f8;--card:#fff;--surface-2:#f9fbfc;--surface-hover:#f5f9fb;--input-bg:#fff;--topbar-bg:#ffffffeb;--play-bar-bg:#f1f6f8f5;--timer-bg:#0e2833;--toast-bg:#0e2833;--brand-ink:#00587c;--green-100:#b9e9cf;--orange-100:#fbe0a6;--orange-800:#7a4d00;--red-100:#f6c9c9;--green-btn-hover:#00803d;--orange-btn-hover:#b97600;--red-btn-hover:#a92f2f;--radius:16px;--radius-sm:10px;--shadow-sm:0 1px 2px #0e28330f;--shadow:0 1px 2px #0e28330d, 0 8px 24px #0e28330f;--shadow-lg:0 20px 50px #0e28332e;--font:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:"Exo 2", "Inter", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand:#0a76a0;--brand-700:#0b88b8;--brand-800:#cdeef9;--brand-50:#00a8cc21;--brand-100:#00a8cc57;--brand-ink:#6ccbea;--green-700:#52d495;--green-50:#00a65029;--green-100:#00a65066;--orange-700:#f7bb4d;--orange-50:#f29f0526;--orange-100:#f29f0566;--orange-800:#fbd38a;--cyan-700:#56d3ee;--cyan-50:#00a8cc26;--red:#e25c5c;--red-700:#ff9393;--red-50:#d645452b;--red-100:#d645456b;--pink-700:#f472b6;--pink-50:#db277729;--green-btn-hover:#00913f;--orange-btn-hover:#d98c00;--red-btn-hover:#c94848;--ink:#e4eef2;--ink-2:#b7c9d1;--muted:#869eaa;--line:#24404c;--line-2:#1a313b;--bg:#0a171d;--card:#10232b;--surface-2:#0d1e25;--surface-hover:#152c36;--input-bg:#0c1c23;--topbar-bg:#10232be6;--play-bar-bg:#0a171df0;--timer-bg:#0b5d7f;--toast-bg:#1d3843;--shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 2px #0000004d, 0 8px 24px #00000040;--shadow-lg:0 20px 50px #0000008c}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5;transition:background-color .2s,color .2s}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);margin:0;line-height:1.2}h1{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800}h2{font-size:1.35rem;font-weight:700}h3{font-size:1.1rem;font-weight:700}p{margin:0}a{color:var(--brand-ink)}button{font:inherit}img{max-width:100%}.muted{color:var(--muted)}.small{font-size:.85rem}.tiny{font-size:.75rem}.strong{font-weight:600}.mono{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.center{text-align:center}.right{text-align:right}.show-mobile{display:none!important}@media (width<=720px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}.container{width:100%;max-width:1140px;margin:0 auto;padding:0 16px}.admin-shell .container{max-width:1360px}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1;padding:28px 0 48px}.stack{flex-direction:column;gap:16px;display:flex}.stack-sm{flex-direction:column;gap:8px;display:flex}.stack-lg{flex-direction:column;gap:28px;display:flex}.row{align-items:center;gap:12px;display:flex}.row-wrap{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.spacer{flex:1}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=960px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.grid-2,.grid-3,.grid-4{grid-template-columns:minmax(0,1fr)}.grid-4.keep-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.page-header p{color:var(--muted);margin-top:4px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--brand-ink);font-size:.75rem;font-weight:700}.topbar{z-index:40;background:var(--topbar-bg);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.topbar-inner{align-items:center;gap:16px;height:64px;display:flex;overflow:hidden}.brand{color:inherit;flex-shrink:0;align-items:center;gap:12px;min-width:0;text-decoration:none;display:flex}.brand img{width:auto;height:34px;display:block}.brand-divider{background:var(--line);width:1px;height:30px}.brand-text{flex-direction:column;min-width:0;line-height:1.1;display:flex}.brand-text strong{font-family:var(--font-display);color:var(--brand-ink);white-space:nowrap;font-size:.95rem}.brand-text span{color:var(--muted);white-space:nowrap;font-size:.75rem}.nav{flex-shrink:0;gap:4px;margin-left:8px;display:flex}.nav a{color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.nav a:hover{background:var(--line-2)}.nav a.active{background:var(--brand-50);color:var(--brand-ink);font-weight:600}.user-chip{flex-shrink:0;align-items:center;gap:10px;display:flex}.user-chip .who{text-align:right;flex-direction:column;line-height:1.15;display:flex}.user-chip .who strong{white-space:nowrap;font-size:.88rem}.user-chip .who span{color:var(--muted);font-size:.75rem}.avatar{color:#fff;background:linear-gradient(135deg, var(--brand), var(--cyan));border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:.8rem;font-weight:700;display:inline-grid}.avatar.sm{width:30px;height:30px;font-size:.72rem}.bottom-nav{z-index:40;background:var(--card);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));justify-content:space-around;display:none;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:var(--muted);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:4px 0;font-size:.68rem;text-decoration:none;display:flex}.bottom-nav a.active{color:var(--brand-ink);font-weight:600}@media (width<=720px){.topbar .nav{display:none}.bottom-nav{display:flex}.has-bottom-nav .app-main{padding-bottom:96px}.has-bottom-nav .footer{padding-bottom:84px}}.topbar-actions{flex-shrink:0;align-items:center;gap:12px;margin-left:auto;display:flex}.logo-dark,:root[data-theme=dark] .logo-light{display:none!important}:root[data-theme=dark] .logo-dark{display:block!important}.fit-1 .brand-divider,.fit-1 .brand-text,.fit-2 .user-chip .who,.fit-2 .focus-badge,.fit-3 .nav .nav-label{display:none}.fit-3 .nav a{padding:8px 10px}.fit-4 .topbar .nav{display:none}.fit-4 .bottom-nav{display:flex}.fit-4.has-bottom-nav .app-main{padding-bottom:96px}.fit-4.has-bottom-nav .footer{padding-bottom:84px}.theme-switch{border:1px solid var(--line);background:var(--surface-2);width:60px;height:32px;color:var(--muted);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 8px;transition:background .2s,border-color .2s;display:inline-flex;position:relative}.theme-switch:hover{border-color:var(--brand-100)}.theme-switch:focus-visible{outline:3px solid var(--brand-100);outline-offset:1px}.theme-switch .knob{background:var(--card);border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.theme-switch[aria-checked=true] .knob{background:var(--brand);transform:translate(28px)}.theme-switch svg{z-index:1;transition:color .2s;position:relative}.theme-switch[aria-checked=false] .icon-sun{color:var(--orange-700)}.theme-switch[aria-checked=true] .icon-moon{color:#fff}.auth-theme{z-index:50;box-shadow:var(--shadow-sm);position:fixed;top:16px;right:16px}.footer{border-top:1px solid var(--line);color:var(--muted);background:var(--card);padding:18px 0;font-size:.8rem}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:20px}.card-pad-lg{padding:28px}@media (width<=620px){.card-pad-lg{padding:20px}}.card-header{border-bottom:1px solid var(--line-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.card-title{font-family:var(--font-display);align-items:center;gap:10px;font-size:1.05rem;font-weight:700;display:flex}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.92rem;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,border-color .15s,transform 50ms,box-shadow .15s;display:inline-flex}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:focus-visible{outline:3px solid var(--brand-100);outline-offset:1px}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-700)}.btn-success{background:var(--green);color:#fff}.btn-success:hover:not(:disabled){background:var(--green-btn-hover)}.btn-warning{background:var(--orange);color:#fff}.btn-warning:hover:not(:disabled){background:var(--orange-btn-hover)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover:not(:disabled){background:var(--red-btn-hover)}.btn-secondary{background:var(--card);color:var(--ink);border-color:var(--line)}.btn-secondary:hover:not(:disabled){background:var(--line-2)}.btn-ghost{color:var(--ink-2);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--line-2)}.btn-ghost-danger{color:var(--red);background:0 0}.btn-ghost-danger:hover:not(:disabled){background:var(--red-50)}.btn-lg{border-radius:14px;padding:14px 22px;font-size:1rem}.btn-sm{border-radius:9px;padding:6px 10px;font-size:.82rem}.btn-icon{border-radius:10px;padding:8px}.btn-block{width:100%}.badge{white-space:nowrap;background:var(--line-2);color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-green{background:var(--green-50);color:var(--green-700)}.badge-orange{background:var(--orange-50);color:var(--orange-700)}.badge-cyan{background:var(--cyan-50);color:var(--cyan-700)}.badge-blue{background:var(--brand-50);color:var(--brand-ink)}.badge-red{background:var(--red-50);color:var(--red-700)}.badge-dot:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.badge-live:before{animation:1.4s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.field{flex-direction:column;gap:6px;display:flex}.label{color:var(--ink-2);font-size:.85rem;font-weight:600}.input,.select,.textarea{border:1px solid var(--line);background:var(--input-bg);width:100%;color:var(--ink);font:inherit;border-radius:11px;padding:11px 13px;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;min-height:70px}.input:focus,.select:focus,.textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-100);outline:none}.input.invalid{border-color:var(--red)}.input-group{position:relative}.input-group .input{padding-right:44px}.input-group .input-addon{position:absolute;top:50%;right:6px;transform:translateY(-50%)}.help{color:var(--muted);font-size:.78rem}.error-text{color:var(--red);font-size:.8rem}.switch{cursor:pointer;align-items:flex-start;gap:12px;display:inline-flex}.switch input{appearance:none;background:var(--line);cursor:pointer;border-radius:999px;flex-shrink:0;width:42px;height:24px;margin:0;transition:background .15s;position:relative}.switch input:after{content:"";width:18px;height:18px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked{background:var(--green)}.switch input:checked:after{transform:translate(18px)}.alert{text-align:left;border:1px solid #0000;border-radius:12px;align-items:flex-start;gap:12px;padding:12px 14px;font-size:.9rem;display:flex}.alert svg{flex-shrink:0;margin-top:2px}.alert-info{background:var(--brand-50);border-color:var(--brand-100);color:var(--brand-800)}.alert-warn{background:var(--orange-50);border-color:var(--orange-100);color:var(--orange-800)}.alert-error{background:var(--red-50);border-color:var(--red-100);color:var(--red-700)}.alert-success{background:var(--green-50);border-color:var(--green-100);color:var(--green-700)}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.9rem}.table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap;padding:10px 14px;font-size:.75rem;font-weight:600}.table th.right,.table td.right{text-align:right}.table th.center,.table td.center{text-align:center}.table .col-pos{width:64px}.rank-prize{margin-left:6px}.table td{border-bottom:1px solid var(--line-2);vertical-align:middle;padding:12px 14px}.table tr:last-child td{border-bottom:none}.tabs{scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.tab{border:1px solid var(--line);background:var(--card);color:var(--ink-2);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;font-weight:600;display:inline-flex}.tab:hover{background:var(--line-2)}.tab.active{background:var(--brand);border-color:var(--brand);color:#fff}.modal-backdrop{z-index:100;background:#081c268c;place-items:center;padding:16px;animation:.15s ease-out fade;display:grid;position:fixed;inset:0}.modal{background:var(--card);width:100%;max-width:480px;max-height:calc(100vh - 32px);box-shadow:var(--shadow-lg);border-radius:20px;animation:.18s ease-out pop;overflow-y:auto}.modal.wide{max-width:760px}.modal-body{padding:24px}.modal-icon{border-radius:16px;place-items:center;width:52px;height:52px;margin-bottom:14px;display:grid}.modal-footer{border-top:1px solid var(--line-2);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.98)}}.toast-stack{z-index:200;flex-direction:column;gap:10px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}@media (width<=720px){.toast-stack{bottom:84px}}.toast{background:var(--toast-bg);color:#fff;box-shadow:var(--shadow-lg);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;animation:.2s ease-out pop;display:flex}.toast.success svg{color:#6ee7a8}.toast.error svg{color:#ff9c9c}.progress{background:var(--line-2);border-radius:999px;height:8px;display:flex;overflow:hidden}.progress>span{height:100%;display:block}.progress .p-green{background:var(--green)}.progress .p-orange{background:var(--orange)}.progress .p-blue{background:var(--brand)}.progress .p-cyan{background:var(--cyan)}.kpi{align-items:center;gap:14px;padding:18px 20px;display:flex}.kpi-icon{border-radius:14px;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.kpi-value{font-family:var(--font-display);font-size:1.6rem;font-weight:800;line-height:1.1}.kpi-label{color:var(--muted);font-size:.8rem}.tone-green{background:var(--green-50);color:var(--green-700)}.tone-orange{background:var(--orange-50);color:var(--orange-700)}.tone-cyan{background:var(--cyan-50);color:var(--cyan-700)}.tone-blue{background:var(--brand-50);color:var(--brand-ink)}.tone-red{background:var(--red-50);color:var(--red-700)}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;font-size:.8rem;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.auth-page{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}@media (width<=900px){.auth-page{grid-template-columns:1fr}}.auth-hero{color:#fff;background:radial-gradient(circle at 20% 20%,#0b7fa8 0%,#0000 55%),radial-gradient(circle at 85% 90%,#0a8f63 0%,#0000 50%),linear-gradient(150deg,#00587c,#003349);flex-direction:column;justify-content:flex-start;gap:32px;padding:40px;display:flex;position:relative;overflow:hidden}@media (width<=900px){.auth-hero{gap:20px;padding:24px 20px 28px}}.auth-hero-body{flex-direction:column;flex:1;justify-content:center;display:flex}.auth-hero .event-title{color:#fff;font-family:var(--font-display);letter-spacing:.01em;text-transform:uppercase;font-size:clamp(2.6rem,5.2vw,4.4rem);font-weight:800;line-height:1}.logo-plate{background:#fff;border-radius:14px;padding:10px 16px;display:inline-flex;box-shadow:0 6px 20px #00000026}.logo-plate img{width:auto;height:40px;display:block}.hero-pills{flex-wrap:wrap;gap:8px;display:flex}.hero-pill{background:#ffffff1f;border:1px solid #fff3;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;display:inline-flex}@media (width<=900px){.hero-pills{display:none}}.auth-panel{place-items:center;padding:32px 16px;display:grid}.auth-card{width:100%;max-width:420px}.demo-box{border:1px dashed var(--brand-100);background:var(--brand-50);border-radius:12px;padding:12px 14px;font-size:.84rem}.demo-box button{color:var(--brand-ink);cursor:pointer;background:0 0;border:none;margin:-10px 0;padding:10px 4px;font-weight:600;text-decoration:underline}.hero{color:#fff;box-shadow:var(--shadow);background:radial-gradient(circle at 90% 10%,#00a8cc8c,#0000 45%),radial-gradient(circle at 10% 110%,#00a65080,#0000 45%),linear-gradient(135deg,#00587c,#003349);border-radius:22px;padding:28px;position:relative;overflow:hidden}@media (width<=620px){.hero{padding:22px 18px}}.hero h1,.hero h2{color:#fff}.hero .eyebrow{color:#9fe3f5}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.hero-stat{background:#ffffff1a;border:1px solid #ffffff29;border-radius:14px;padding:12px 14px}.hero-stat b{font-family:var(--font-display);font-size:1.5rem;line-height:1.1;display:block}.hero-stat span{opacity:.85;font-size:.78rem}.mission-card{flex-direction:column;gap:14px;padding:20px;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.mission-card:before{content:"";background:var(--accent,var(--brand));height:5px;position:absolute;top:0;left:0;right:0}.mission-card.is-open{box-shadow:0 0 0 2px var(--accent), var(--shadow)}.mission-card.is-locked{background:var(--surface-2)}.mission-card.is-locked .mission-icon{filter:grayscale();opacity:.55}.mission-icon{background:var(--accent-50);width:48px;height:48px;color:var(--accent-700);border-radius:14px;place-items:center;display:grid}.mission-card h3{font-size:1.05rem}.mission-card .mission-foot{margin-top:auto}.accent-green{--accent:var(--green);--accent-50:var(--green-50);--accent-700:var(--green-700)}.accent-orange{--accent:var(--orange);--accent-50:var(--orange-50);--accent-700:var(--orange-700)}.accent-cyan{--accent:var(--cyan);--accent-50:var(--cyan-50);--accent-700:var(--cyan-700)}.accent-pink{--accent:var(--pink);--accent-50:var(--pink-50);--accent-700:var(--pink-700)}.accent-blue{--accent:var(--brand);--accent-50:var(--brand-50);--accent-700:var(--brand-ink)}.rules{gap:12px;margin:0;padding:0;list-style:none;display:grid}.rules li{align-items:flex-start;gap:12px;font-size:.92rem;display:flex}.rules li .rule-icon{border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.phase-banner{background:linear-gradient(135deg, var(--accent-50), var(--card) 70%);border:1px solid var(--line);border-radius:20px;align-items:center;gap:18px;padding:24px;display:flex}@media (width<=620px){.phase-banner{flex-direction:column;align-items:flex-start;padding:20px}}.phase-banner .mission-icon{border-radius:18px;width:64px;height:64px}.preview-list{-webkit-user-select:none;user-select:none;gap:10px;margin:0;padding:0;list-style:none;display:grid}.preview-item{border:1px solid var(--line);background:var(--card);border-radius:14px;gap:12px;padding:14px 16px;display:flex}.preview-num{background:var(--line-2);width:28px;height:28px;color:var(--ink-2);border-radius:9px;flex-shrink:0;place-items:center;font-size:.82rem;font-weight:700;display:grid}.preview-options{gap:6px;margin-top:10px;display:grid}.preview-options span{background:var(--line-2);color:var(--muted);border-radius:9px;padding:7px 10px;font-size:.85rem;display:block}.play-shell{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.play-bar{z-index:30;background:var(--play-bar-bg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);margin-bottom:8px;padding:12px 0;position:sticky;top:64px}.play-bar-inner{justify-content:space-between;align-items:center;gap:16px;display:flex}.timer{background:var(--timer-bg);color:#fff;font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:.02em;box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:10px;padding:8px 16px;font-size:1.45rem;font-weight:800;display:inline-flex}.timer small{font-family:var(--font);opacity:.7;text-transform:uppercase;letter-spacing:.06em;font-size:.68rem;font-weight:600}.timer.warn{background:var(--orange-700)}.timer.danger{background:var(--red);animation:1s infinite pulse}.qnav{flex-wrap:wrap;gap:6px;display:flex}.qnav button{border:1px solid var(--line);background:var(--card);width:34px;height:34px;color:var(--ink-2);cursor:pointer;border-radius:10px;font-size:.85rem;font-weight:700}.qnav button.answered{background:var(--brand-50);border-color:var(--brand-100);color:var(--brand-ink)}.qnav button.current{background:var(--brand);color:#fff;border-color:var(--brand)}.question-card{padding:28px}@media (width<=620px){.question-card{padding:20px 16px}}.question-text{font-family:var(--font-display);margin:8px 0 20px;font-size:clamp(1.15rem,2.4vw,1.4rem);font-weight:700;line-height:1.3}.options{gap:10px;display:grid}.option{text-align:left;border:2px solid var(--line);background:var(--card);cursor:pointer;width:100%;color:var(--ink);border-radius:14px;align-items:center;gap:14px;padding:14px 16px;font-size:.98rem;transition:border-color .12s,background .12s;display:flex}.option .letter{background:var(--line-2);width:32px;height:32px;color:var(--ink-2);border-radius:10px;flex-shrink:0;place-items:center;font-weight:800;display:grid}.option.selected{border-color:var(--brand);background:var(--brand-50)}.option.selected .letter{background:var(--brand);color:#fff}.option.correct{border-color:var(--green);background:var(--green-50)}.option.correct .letter{background:var(--green);color:#fff}.option.wrong{border-color:var(--red);background:var(--red-50)}.option.wrong .letter{background:var(--red);color:#fff}.option:disabled{cursor:default}.option .option-tag{margin-left:auto}.review-row{border-bottom:1px solid var(--line-2);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.review-row:last-child{border-bottom:none}.lock-overlay{z-index:90;background:#081c26bf;place-items:center;padding:16px;display:grid;position:fixed;inset:0}@media (hover:hover){.option:not(.selected):not(:disabled):hover{border-color:var(--brand-100);background:var(--surface-hover)}.table tbody tr:hover td{background:var(--surface-hover)}.table tr.highlight:hover td{background:var(--brand-50)}.phase-tile:hover{border-color:var(--brand-100)}}.play-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.play-timer{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.option .option-tag{white-space:nowrap}.score-ring{--pct:0;background:conic-gradient(var(--green) calc(var(--pct) * 1%), var(--line-2) 0);border-radius:50%;flex-shrink:0;place-items:center;width:132px;height:132px;display:grid}.score-ring>div{background:var(--card);text-align:center;border-radius:50%;place-items:center;width:104px;height:104px;display:grid}.score-ring b{font-family:var(--font-display);font-size:2rem;line-height:1}.score-ring span{color:var(--muted);font-size:.75rem}.big-icon{border-radius:24px;place-items:center;width:76px;height:76px;margin:0 auto 16px;display:grid}.pos{background:var(--line-2);width:34px;height:34px;color:var(--ink-2);border-radius:10px;place-items:center;font-size:.9rem;font-weight:800;display:inline-grid}.pos.p1{color:#8a5a00;background:#ffe8a3}.pos.p2{color:#4a5d68;background:#e3e9ee}.pos.p3{color:#8a4b16;background:#f6d5b8}.empty{text-align:center;color:var(--muted);padding:40px 20px}.empty .big-icon{background:var(--line-2);color:var(--muted)}.admin-badge{background:var(--orange-50);color:var(--orange-700);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.phase-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (width<=960px){.phase-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.phase-strip{grid-template-columns:minmax(0,1fr)}}.phase-tile{cursor:pointer;border:1px solid var(--line);background:var(--card);text-align:left;border-radius:16px;flex-direction:column;gap:10px;padding:16px;transition:box-shadow .15s,border-color .15s;display:flex}.phase-tile.selected{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-100)}.status-cell{white-space:nowrap;align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.person-list{margin:0;padding:0;list-style:none}.person-list li{border-bottom:1px solid var(--line-2);align-items:center;gap:10px;padding:10px 0;display:flex}.person-list li:last-child{border-bottom:none}.q-editor{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;padding:16px}.q-option-row{align-items:center;gap:10px;display:flex}.q-option-row input[type=radio]{width:18px;height:18px;accent-color:var(--green);flex-shrink:0}.bar-row{grid-template-columns:1fr 70px;align-items:center;gap:12px;display:grid}.dist{align-items:flex-end;gap:8px;height:120px;padding-top:8px;display:flex}.dist .col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.dist .col .bar{background:var(--cyan);border-radius:8px 8px 3px 3px;width:100%;max-width:46px;min-height:3px}.dist .col small{color:var(--muted);font-size:.72rem}.results-grid{align-items:stretch}.results-col{flex-direction:column;gap:16px;min-width:0;display:flex}.dist-card{flex-direction:column;flex:1;display:flex}.dist-card .dist{flex:1;height:auto;min-height:120px}.per-question-card{flex-direction:column;display:flex}.per-question-list{flex-direction:column;flex:1;justify-content:space-around;gap:16px;display:flex}.podium-mini{gap:8px;margin:0;padding:0;list-style:none;display:grid}.podium-mini li{background:var(--surface-2);border:1px solid var(--line-2);border-radius:12px;align-items:center;gap:12px;padding:8px 12px 8px 8px;display:flex}.podium-mini-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.insights{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.insight{border:1px solid var(--line-2);border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.insight-icon{border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.insight-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.stage{color:#fff;background:radial-gradient(circle at 15% 0,#00a8cc73,#0000 40%),radial-gradient(circle at 90% 100%,#00a65066,#0000 45%),linear-gradient(160deg,#00435e,#001f2d);flex-direction:column;gap:28px;min-height:100vh;padding:28px clamp(16px,4vw,56px) 40px;display:flex}.stage h1{color:#fff;font-size:clamp(1.8rem,3.6vw,3rem)}.stage-controls{flex-wrap:wrap;gap:8px;display:flex}.stage-controls .tab{color:#fff;background:#ffffff1a;border-color:#fff3}.stage-controls .tab.active{color:#00587c;background:#fff}.podium{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:clamp(10px,2vw,24px);width:100%;max-width:980px;margin:0 auto;display:grid}.podium-slot{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.podium-slot .name{font-family:var(--font-display);font-size:clamp(1rem,2vw,1.5rem);font-weight:700}.podium-slot .meta{opacity:.85;font-size:clamp(.8rem,1.3vw,1rem)}.podium-block{width:100%;font-family:var(--font-display);border-radius:18px 18px 6px 6px;place-items:center;font-size:clamp(2rem,5vw,4rem);font-weight:800;display:grid}.podium-block.b1{color:#6b4300;background:linear-gradient(#ffd25a,#f29f05);height:clamp(130px,22vh,220px)}.podium-block.b2{color:#3b4c56;background:linear-gradient(#e8eef2,#b8c6cf);height:clamp(100px,16vh,160px)}.podium-block.b3{color:#5d2f0c;background:linear-gradient(#f6c79e,#d98a4a);height:clamp(80px,12vh,120px)}.stage-list{gap:8px;width:100%;max-width:980px;margin:0 auto;display:grid}.stage-row{background:#ffffff14;border:1px solid #ffffff1f;border-radius:14px;grid-template-columns:56px 1fr auto auto;align-items:center;gap:16px;padding:12px 18px;font-size:clamp(.95rem,1.5vw,1.2rem);display:grid}.stage-row .p{font-family:var(--font-display);opacity:.8;font-weight:800}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.w-full{width:100%}.divider{background:var(--line-2);height:1px;margin:4px 0}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{min-height:50vh;color:var(--muted);place-items:center;display:grid}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}button,a,input,select,textarea,label{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.option:active:not(:disabled),.btn:active:not(:disabled){transform:scale(.985)}html.no-overscroll,html.no-overscroll body{overscroll-behavior-y:none}.app-shell,.auth-page,.stage{min-height:100dvh}@media (width>=721px){.only-mobile{display:none!important}}@media (pointer:coarse){.btn{min-height:44px}.btn-sm{min-height:40px;padding:8px 12px}.btn-icon{min-width:42px;min-height:42px}.tab{min-height:40px}.nav a{justify-content:center;min-width:42px;min-height:42px}.brand{min-height:44px}.qnav button{width:40px;height:40px}.theme-switch{width:68px;height:38px;padding:0 10px}.theme-switch .knob{width:30px;height:30px}.theme-switch[aria-checked=true] .knob{transform:translate(30px)}.switch input{width:48px;height:28px}.switch input:after{width:22px;height:22px}.switch input:checked:after{transform:translate(20px)}.q-option-row input[type=radio]{width:22px;height:22px}}@media (width<=720px),(pointer:coarse){.input,.select,.textarea{font-size:16px}}@media (width<=720px){.app-main{padding-top:20px}.card-pad-lg{padding:18px}.page-header{margin-bottom:14px}.focus-shell .topbar{position:static}.play-bar{border-bottom:1px solid var(--line-2);margin:0 -16px 10px;padding:10px 16px;top:0}.play-bar-inner{gap:12px}.timer{padding:6px 12px;font-size:1.25rem}.qnav-mobile{scrollbar-width:none;flex-wrap:nowrap;gap:6px;margin-top:10px;padding-bottom:2px;display:flex;overflow-x:auto}.qnav-mobile::-webkit-scrollbar{display:none}.qnav-mobile button{flex:none;width:40px;height:40px}.qnav-mobile .qnav-review{place-items:center;margin-left:auto;display:grid}.play-shell{padding-bottom:calc(92px + env(safe-area-inset-bottom))}.play-actions{z-index:35;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #0e28331a;margin:0!important}.play-actions .play-prev{flex:0 0 54px;min-height:52px}.play-actions .play-next{flex:1;min-height:52px;font-size:1rem}.question-card{padding:18px 16px}.question-text{margin:8px 0 16px}.option{min-height:58px;padding:12px 14px;font-size:1rem}.review-row{padding:12px 14px}.mobile-cta{bottom:calc(70px + env(safe-area-inset-bottom));z-index:20;position:sticky}.mobile-cta .btn{min-height:54px;box-shadow:0 10px 28px #00783c59}.phase-banner .mission-icon{border-radius:14px;width:48px;height:48px}.rank-avatar{display:none!important}.table .col-pos{width:44px}.rank-prize{white-space:normal;width:fit-content;margin:4px 0 0;display:flex}.table th,.table td{padding:10px 8px}.table th:first-child,.table td:first-child{padding-left:14px}.table th:last-child,.table td:last-child{padding-right:14px}.modal-backdrop,.lock-overlay{align-items:end;padding:0}.modal{border-radius:22px 22px 0 0;max-width:none;max-height:92dvh;animation:.22s ease-out sheet}.modal.wide{max-width:none}.modal-body{padding:22px 18px 16px}.modal-footer{padding:12px 18px calc(14px + env(safe-area-inset-bottom))}.modal-footer .btn{flex:auto}.toast-stack{max-width:none;left:16px;right:16px;bottom:calc(96px + env(safe-area-inset-bottom))}}@keyframes sheet{0%{opacity:.4;transform:translateY(40px)}}@media (width<=380px){.container{padding:0 12px}.play-bar{margin:0 -12px 10px;padding:10px 12px}.play-actions{padding-left:12px;padding-right:12px}.timer{font-size:1.1rem}.hero-stats{gap:8px}.hero-stat{padding:10px}.hero-stat b{font-size:1.25rem}.kpi{gap:10px;padding:14px}.kpi-icon{border-radius:12px;width:38px;height:38px}.kpi-value{font-size:1.3rem}.qnav-mobile button{width:38px;height:38px}}@media (width<=720px) and (height<=700px){.play-bar .eyebrow,.play-bar .play-title-name{display:none}.play-bar{padding-top:8px;padding-bottom:8px}.qnav-mobile{margin-top:8px}.qnav-mobile button{width:36px;height:36px}.question-card{padding:14px}.question-text{margin:6px 0 12px;font-size:1.1rem}.option{min-height:52px;padding:10px 12px}}@media (height<=500px) and (orientation:landscape){.topbar{position:static}.play-bar{padding:6px 0;top:0}.play-bar .eyebrow,.play-bar .play-title-name{display:none}.play-bar .progress{margin-top:6px!important}.timer{padding:4px 12px;font-size:1.1rem}.play-timer{flex-direction:row-reverse;align-items:center;gap:10px}.question-card{padding:16px 20px}.question-text{margin:6px 0 12px;font-size:1.1rem}.option{padding:10px 14px}.modal{max-height:calc(100dvh - 16px)}}.person-cards{margin:0;padding:0;list-style:none}.person-card{text-align:left;border:0;border-bottom:1px solid var(--line-2);width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.person-cards li:last-child .person-card{border-bottom:0}.person-card-name,.person-card-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.person-card-days{grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:6px;display:grid}.day-chip{background:var(--surface-2);border:1px solid var(--line-2);border-radius:10px;flex-direction:column;gap:2px;padding:6px 8px;display:flex}.day-chip .status-cell{white-space:normal;font-size:.78rem}.footer-link{padding:12px 8px;display:inline-block}.test-banner{text-align:center;background:var(--orange-50);color:var(--orange-800);border-bottom:1px solid var(--orange-100);padding:8px 16px;font-size:.85rem}.schedule{gap:8px;max-width:500px;margin:22px 0 0;padding:0;list-style:none;display:grid}.schedule-item{background:#ffffff14;border:1px solid #ffffff24;border-radius:12px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px;font-size:.9rem;display:grid}.schedule-item.is-today{background:#fff3;border-color:#ffffff73}.schedule-date{font-family:var(--font-display);font-weight:700}.schedule-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.schedule-state{letter-spacing:.05em;text-transform:uppercase;opacity:.85;font-size:.7rem;font-weight:700}.phase-picker{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.phase-picker legend{margin-bottom:8px;padding:0}.phase-option{border:2px solid var(--line);background:var(--card);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex;position:relative}.phase-option input{opacity:0;pointer-events:none;position:absolute}.phase-option .mission-icon{border-radius:12px;flex-shrink:0;width:40px;height:40px}.phase-option .eyebrow{font-size:.68rem;display:block}.phase-option.checked{border-color:var(--accent);background:var(--accent-50)}.phase-option.is-static{cursor:default}.phase-option:has(input:focus-visible){outline:3px solid var(--brand-100);outline-offset:1px}.day-card{text-align:left;color:inherit;font:inherit;cursor:pointer;border-top:4px solid var(--accent);flex-direction:column;align-items:flex-start;gap:6px;padding:16px;transition:box-shadow .15s;display:flex}.day-card.selected{box-shadow:0 0 0 2px var(--accent), var(--shadow)}.day-card .mission-icon{border-radius:12px;width:40px;height:40px}.day-card-title{font-size:.92rem;line-height:1.3}.day-card-count{color:var(--muted);margin-top:auto;padding-top:6px;font-size:.85rem}.day-card-count b{font-family:var(--font-display);color:var(--ink);margin-right:4px;font-size:1.9rem;line-height:1}@media (width<=420px){.day-card{padding:12px}.day-card .badge{padding:2px 8px;font-size:.68rem}}.btn-xl{border-radius:16px;padding:18px 30px;font-size:1.15rem}.lobby-card{padding-top:36px;padding-bottom:36px}.lobby-pulse{background:var(--brand-50);width:84px;height:84px;color:var(--brand-ink);border-radius:50%;place-items:center;margin:0 auto;animation:1.8s ease-in-out infinite lobby-pulse;display:grid}@keyframes lobby-pulse{0%,to{box-shadow:0 0 0 0 var(--brand-100)}50%{box-shadow:0 0 0 16px #0000}}.lobby-notice{background:var(--orange-50);color:var(--orange-800);border:1px solid var(--orange-100);text-align:left;border-radius:14px;align-items:center;gap:10px;padding:14px 18px;font-size:1.05rem;display:inline-flex}.lobby-notice svg{flex-shrink:0}.countdown-number{font-family:var(--font-display);color:var(--brand-ink);font-variant-numeric:tabular-nums;margin:12px 0;font-size:clamp(5rem,18vw,8rem);font-weight:800;line-height:1;animation:.3s ease-out pop}.steps{gap:6px;display:flex}.steps span{background:var(--line-2);border-radius:999px;flex:1;height:8px}.steps span.done{background:var(--brand)}.steps span.current{background:var(--cyan)}.play-actions.single{justify-content:flex-end}@media (width>=721px){.play-actions.single .play-next{min-width:260px}}div.option{cursor:default}.round-control.is-live{border-color:var(--orange-100);box-shadow:0 0 0 3px var(--orange-50), var(--shadow)}.big-timer{font-family:var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink);align-items:center;gap:14px;font-size:clamp(3rem,9vw,5rem);font-weight:800;line-height:1;display:flex}.chips{flex-wrap:wrap;gap:8px;max-height:180px;display:flex;overflow-y:auto}.chip{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.85rem}.top3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.top3-card{align-items:center;gap:12px;padding:16px;display:flex}.top3-card .pos{flex-shrink:0;width:44px;height:44px;font-size:1rem}.top3-winner{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=720px){.top3{grid-template-columns:minmax(0,1fr)}.round-control .btn-xl{width:100%}.big-timer svg{width:34px;height:34px}}.phase-track-wrap{max-width:560px;margin-top:28px}.hero-test{color:#ffdf9e;background:#f29f0529;border:1px solid #f29f0573;border-radius:999px;align-items:center;gap:6px;margin-bottom:14px;padding:5px 12px;font-size:.78rem;font-weight:600;display:inline-flex}.phase-track{gap:10px;margin:0;padding:0;list-style:none;display:grid}.track-item{border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px;display:grid}.track-body{flex-direction:column;min-width:0;display:flex}.track-item.is-open{background:var(--card);color:var(--ink);border:2px solid var(--accent);grid-template-columns:auto minmax(0,1fr);align-items:start;padding:18px 20px;box-shadow:0 18px 40px #00142359}.track-item.is-open .mission-icon{border-radius:16px;width:56px;height:56px}.track-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;display:flex}.track-top .eyebrow{color:var(--accent-700)}.track-item.is-open .track-title{font-family:var(--font-display);margin-top:4px;font-size:1.45rem;font-weight:800;line-height:1.15}.track-desc{color:var(--muted);margin-top:2px;font-size:.88rem}.track-prize{color:var(--accent-700);background:var(--accent-50);border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin-top:10px;padding:4px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.track-item.is-locked{color:#ffffffc7;background:0 0;border:1.5px dashed #ffffff61}.track-lock{color:#fff;border:1.5px solid #ffffff73;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.track-date{letter-spacing:.06em;text-transform:uppercase;opacity:.8;font-size:.72rem;font-weight:700}.track-item.is-locked .track-title{color:#fff;opacity:.88;text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;font-weight:600;overflow:hidden}.track-status{text-align:right;flex-direction:column;align-items:flex-end;line-height:1.25;display:flex}.track-status strong{letter-spacing:.06em;text-transform:uppercase;color:#fff;font-size:.72rem;font-weight:800}.track-status small{opacity:.8;white-space:nowrap;font-size:.78rem}.entry-tabs{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;grid-template-columns:1fr 1fr;gap:6px;padding:6px;display:grid}.entry-tab{min-height:50px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:1rem;font-weight:700;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.entry-tab:hover{color:var(--ink)}.entry-tab.active{background:var(--card);color:var(--brand-700);box-shadow:var(--shadow-sm)}.entry-tab:focus-visible{outline:3px solid var(--brand-100);outline-offset:1px}@media (width<=900px){.auth-hero .event-title{padding-right:96px;font-size:2.3rem}.phase-track-wrap{margin-top:18px}.track-item.is-open{gap:12px;padding:14px 16px}.track-item.is-open .mission-icon{width:46px;height:46px}.track-item.is-open .track-title{font-size:1.25rem}.track-item.is-locked{gap:10px;padding:8px 12px}.track-lock{width:28px;height:28px}.track-desc{display:none}.track-status strong{font-size:.66rem}.track-status small{font-size:.72rem}}@media (width>=901px){.auth-card{min-height:440px}}@media (width<=720px){.tabs{flex-wrap:wrap;overflow:visible}.tabs .tab{flex:auto;justify-content:center}}.round-finished{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.round-finished.is-published{border-color:var(--green-100);background:linear-gradient(90deg, var(--green-50), var(--card) 60%)}.you-tag{color:var(--brand-700);text-transform:uppercase;letter-spacing:.06em;font-size:.65rem}.table tr.highlight td{background:var(--brand-50)}.table tr.highlight .strong{color:var(--brand-700)}
