:root{--bg:#080b16;--bg2:#0d1224;--panel:#141a30;--panel2:#1b2340;--line:#ffffff17;--text:#e9edfb;--muted:#939dc0;--accent:#5ee7ff;--accent2:#a78bfa;--gold:#fbbf24;--green:#34d399;--red:#fb7185;--orange:#fb923c;--radius:16px;--shadow:0 18px 50px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{background:radial-gradient(1100px 700px at 12% -10%, #1d2a5c 0%, transparent 60%), radial-gradient(900px 600px at 105% 0%, #3a1f5e 0%, transparent 55%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100dvh;font:15px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif}h1,h2,h3{letter-spacing:-.02em;margin:0;line-height:1.2}p{margin:0}button{font:inherit;color:inherit}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{max-width:1320px;margin:0 auto;padding:20px 16px 64px}.shell--narrow{max-width:560px}.shell--wide{max-width:1600px}.topbar{border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#ffffff0f,#ffffff05);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:20px;padding:14px 18px;display:flex}.topbar__title{font-size:19px;font-weight:700}.topbar__sub{color:var(--muted);font-size:13px}.topbar__spacer{flex:auto}.panel{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(#ffffff0b,#ffffff04);padding:18px}.panel+.panel{margin-top:16px}.panel__head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.panel__head h2{font-size:16px;font-weight:700}.panel__head .topbar__spacer{flex:auto}.grid-2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn{border:1px solid var(--line);cursor:pointer;white-space:nowrap;background:#ffffff0f;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-weight:650;text-decoration:none;transition:transform .12s,background .18s,border-color .18s,opacity .18s;display:inline-flex}.btn:hover:not(:disabled){background:#ffffff1f;transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#07101f;border-color:#0000;box-shadow:0 10px 28px #5ee7ff47}.btn--primary:hover:not(:disabled){background:linear-gradient(135deg,#7defff,#b79cff)}.btn--danger{color:#ffd9e0;background:#fb718529;border-color:#fb718566}.btn--good{color:#c8ffe9;background:#34d39929;border-color:#34d39966}.btn--gold{color:#2a1a00;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-color:#0000}.btn--lg{border-radius:14px;padding:16px 30px;font-size:17px}.btn--sm{border-radius:9px;padding:7px 12px;font-size:13px}.btn--block{width:100%}.field{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;display:flex}.field>input,.field>select,.field>textarea{border:1px solid var(--line);color:var(--text);font:inherit;background:#00000047;border-radius:11px;width:100%;padding:11px 13px}.field>input:focus,.field>select:focus{outline-offset:1px;outline:2px solid #5ee7ff8c}.switch{cursor:pointer;align-items:flex-start;gap:10px;padding:9px 0;font-size:14px;display:flex}.switch input{width:17px;height:17px;accent-color:var(--accent);margin-top:3px}.switch small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.msg{border-radius:11px;padding:10px 13px;font-size:13px}.msg--err{color:#ffd2da;background:#fb718524;border:1px solid #fb718559}.msg--ok{color:#c9ffec;background:#34d39924;border:1px solid #34d39959}.msg--warn{color:#ffe9b8;background:#fbbf2424;border:1px solid #fbbf2459}.pill{border:1px solid var(--line);background:#ffffff14;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:12px;font-weight:650;display:inline-flex}.pill--live{color:#b4ffe3;background:#34d39929;border-color:#34d39966}.pill--open{color:#c4f5ff;background:#5ee7ff29;border-color:#5ee7ff66}.pill--closed{color:var(--muted);background:#ffffff0f}.pill--out{color:#ffd2da;background:#fb718529;border-color:#fb718559}.pill--gold{color:#ffe6ab;background:#fbbf242e;border-color:#fbbf2473}.dot{background:var(--green);border-radius:50%;width:8px;height:8px}.dot--live{animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}.stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;display:grid}.stat{border:1px solid var(--line);background:#0000003d;border-radius:13px;padding:13px 15px}.stat__k{text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-size:11px;display:block}.stat__v{font-variant-numeric:tabular-nums;margin-top:3px;font-size:25px;font-weight:750;display:block}.stat__v--accent{color:var(--accent)}.stat__v--gold{color:var(--gold)}.stat__v--green{color:var(--green)}.stat__v--red{color:var(--red)}.game{flex-direction:column;align-items:center;gap:14px;display:flex}.hud{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:460px;display:grid}.hud__stat{border:1px solid var(--line);text-align:center;background:#0000004d;border-radius:12px;padding:9px 12px}.hud__k{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px;display:block}.hud__v{font-variant-numeric:tabular-nums;font-size:21px;font-weight:750;display:block}.hud__stat--warn{background:#fb923c21;border-color:#fb923c80}.hud__stat--danger{background:#fb718526;border-color:#fb71858c;animation:1s steps(2,end) infinite urgent}@keyframes urgent{50%{background:#fb718547}}.board-wrap{width:100%;max-width:460px;position:relative}.board{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;display:grid}.card{aspect-ratio:1;cursor:pointer;perspective:900px;background:0 0;border:0;border-radius:14px;padding:0;position:relative}.card:disabled{cursor:default}.card:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:16px}.card__inner{transform-style:preserve-3d;border-radius:14px;transition:transform .32s cubic-bezier(.3,.8,.4,1);position:absolute;inset:0}.card[data-state=up] .card__inner,.card[data-state=matched] .card__inner{transform:rotateY(180deg)}.card__face{backface-visibility:hidden;border-radius:14px;justify-content:center;align-items:center;font-size:clamp(28px,12vw,46px);display:flex;position:absolute;inset:0;overflow:hidden}.card__face img{object-fit:contain;width:78%;height:78%}.card__back{color:#ffffff80;background:linear-gradient(150deg,#2a3566,#1a2145);border:1px solid #ffffff24}.card__front{color:#101830;background:linear-gradient(150deg,#f7f9ff,#dbe4ff);border:1px solid #ffffff80;transform:rotateY(180deg)}.card[data-state=matched] .card__front{background:linear-gradient(150deg,#bbf7d0,#86efac);box-shadow:0 0 0 2px #34d399b3,0 0 26px #34d3996b}.card[data-state=matched]{animation:.34s pop}@keyframes pop{40%{transform:scale(1.07)}to{transform:scale(1)}}.preview{text-align:center;position:absolute;inset:auto 0 -58px}.preview__num{color:var(--accent);font-variant-numeric:tabular-nums;font-size:34px;font-weight:800}.preview__bar{background:#ffffff1f;border-radius:3px;max-width:260px;height:6px;margin:6px auto;overflow:hidden}.preview__bar i{background:linear-gradient(90deg, var(--accent), var(--accent2));height:100%;display:block}.preview__label{color:var(--muted);font-size:13px}.track{--lane-h:46px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(#00000059,#0000002e);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid;position:relative;overflow:hidden}.track__col{min-width:0;padding:34px 0 12px;position:relative}.track__col+.track__col{border-left:1px solid var(--line)}.track__line{z-index:1;width:3px;position:absolute;top:0;bottom:0}.track__line--start{background:#ffffff47;left:120px}.track__line--finish{opacity:.85;background-image:linear-gradient(45deg,#fff 25%,#0000 25% 75%,#fff 75%),linear-gradient(45deg,#fff 25%,#111 25% 75%,#fff 75%);background-position:0 0,7px 7px;background-size:14px 14px;width:14px;right:62px}.track__label{z-index:2;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:750;position:absolute;top:10px}.track__label--start{left:14px}.track__label--finish{color:var(--gold);right:14px}.lane{height:var(--lane-h,46px);border-top:1px dashed #ffffff12;align-items:center;display:flex;position:relative}.lane:first-of-type{border-top:0}.lane__name{width:116px;font-size:clamp(10px, calc(var(--lane-h,46px) * .3), 12.5px);white-space:nowrap;text-overflow:ellipsis;z-index:3;text-align:right;padding-right:10px;font-weight:650;position:absolute;left:0;overflow:hidden}.lane__rail{height:100%;position:absolute;left:120px;right:62px}.runner{align-items:center;gap:clamp(3px, calc(var(--lane-h,46px) * .15), 7px);padding:clamp(1px, calc(var(--lane-h,46px) * .1), 5px) clamp(5px, calc(var(--lane-h,46px) * .24), 11px) clamp(1px, calc(var(--lane-h,46px) * .1), 5px) clamp(2px, calc(var(--lane-h,46px) * .1), 5px);font-size:clamp(9.5px, calc(var(--lane-h,46px) * .29), 12px);white-space:nowrap;z-index:4;background:linear-gradient(135deg,#5ee7ff38,#a78bfa38);border:1px solid #ffffff38;border-radius:999px;font-weight:700;transition:left .65s cubic-bezier(.34,1.2,.5,1),transform .65s cubic-bezier(.34,1.2,.5,1);display:flex;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.runner__avatar{width:clamp(15px, calc(var(--lane-h,46px) * .55), 24px);height:clamp(15px, calc(var(--lane-h,46px) * .55), 24px);font-size:clamp(8.5px, calc(var(--lane-h,46px) * .28), 12px);background:linear-gradient(135deg, var(--accent), var(--accent2));color:#08101f;border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.runner--done{background:linear-gradient(135deg,#fbbf2457,#f59e0b47);border-color:#fbbf2499;animation:1.1s ease-in-out infinite winnerPulse}.runner--done .runner__avatar{background:linear-gradient(135deg,#fde68a,#f59e0b)}.runner--out{opacity:.5;filter:grayscale(.7);background:#ffffff0d;border-color:#fb71854d}@keyframes winnerPulse{0%,to{box-shadow:0 0 #fbbf2480}50%{box-shadow:0 0 0 10px #fbbf2400}}.runner__trail{z-index:2;background:linear-gradient(90deg,#5ee7ff00,#5ee7ff80);border-radius:2px;height:4px;transition:width .65s cubic-bezier(.34,1.2,.5,1);position:absolute;top:50%;left:0;transform:translateY(-50%)}.lane__slot{text-align:center;width:56px;color:var(--gold);z-index:3;font-size:11px;font-weight:800;position:absolute;right:0}.track__empty{text-align:center;color:var(--muted);padding:34px 20px}.track__empty--foot{grid-column:1/-1;padding:10px 20px;font-size:12px}.lb-row{border:1px solid var(--line);background:#00000038;border-radius:12px;grid-template-columns:46px 1fr auto auto;align-items:center;gap:12px;padding:11px 14px;transition:background .25s,border-color .25s,transform .25s;display:grid}.lb-row+.lb-row{margin-top:8px}.lb-row--live{background:#5ee7ff14;border-color:#5ee7ff66}.lb-row--win{background:#fbbf2417;border-color:#fbbf2473}.lb-row--out{opacity:.5}.lb-row__pos{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;font-size:19px;font-weight:800}.lb-row__name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.lb-row__meta{color:var(--muted);font-size:12px;font-weight:500}.lb-row__time{font-variant-numeric:tabular-nums;font-size:15px;font-weight:750}.lb-progress{background:#ffffff1a;border-radius:3px;height:6px;margin-top:5px;overflow:hidden}.lb-progress i{background:linear-gradient(90deg, var(--accent), var(--accent2));height:100%;transition:width .5s;display:block}.podium{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:14px;padding:20px 0 0;display:flex}.podium__col{flex-direction:column;align-items:center;gap:8px;min-width:96px;display:flex}.podium__badge{font-size:30px}.podium__name{text-align:center;max-width:130px;font-size:14px;font-weight:750}.podium__time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.podium__block{border:1px solid var(--line);width:100%;color:var(--muted);background:linear-gradient(#ffffff29,#ffffff0a);border-bottom:0;border-radius:12px 12px 0 0;place-items:center;font-size:24px;font-weight:800;animation:.7s cubic-bezier(.2,.9,.3,1) both rise;display:grid}@keyframes rise{0%{opacity:0;height:0!important}}.podium__col--1 .podium__block{color:#ffe9b0;background:linear-gradient(#fbbf2466,#fbbf2414);height:128px}.podium__col--2 .podium__block{color:#e8eefc;background:linear-gradient(#cbd5e157,#cbd5e10f);height:98px}.podium__col--3 .podium__block{color:#ffd9a8;background:linear-gradient(#d9770657,#d977060f);height:76px}.burst{pointer-events:none;z-index:60;position:fixed;inset:0;overflow:hidden}.burst i{border-radius:2px;width:9px;height:15px;animation:linear forwards fall;position:absolute;top:-12px}@keyframes fall{0%{opacity:1;transform:translateY(-20px)rotate(0)}to{opacity:.15;transform:translateY(105vh)rotate(720deg)}}.overlay{z-index:50;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#040710d1;place-items:center;padding:20px;animation:.24s fadeIn;display:grid;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}}.result{text-align:center;background:linear-gradient(180deg, var(--panel2), var(--panel));border:1px solid var(--line);width:min(440px,100%);box-shadow:var(--shadow);border-radius:22px;padding:30px 26px;animation:.34s cubic-bezier(.2,1.1,.4,1) popIn}@keyframes popIn{0%{opacity:0;transform:scale(.86)translateY(14px)}}.result__icon{font-size:58px;line-height:1}.result__title{margin:12px 0 6px;font-size:26px;font-weight:800}.result__sub{color:var(--muted);font-size:14px}.result__stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0;display:grid}.result__actions{flex-direction:column;gap:10px;display:flex}.result--win .result__title{color:var(--green)}.result--lose .result__title{color:var(--red)}.result--champ .result__title{color:var(--gold)}.hero{text-align:center;padding:26px 0 20px}.hero__logo{font-size:60px;line-height:1}.hero__title{margin:10px 0 6px;font-size:32px;font-weight:820}.hero__tag{color:var(--muted);font-size:14.5px}.rules{gap:10px;margin:18px 0;display:grid}.rule{border:1px solid var(--line);background:#0000003d;border-radius:13px;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.rule--now{background:#5ee7ff17;border-color:#5ee7ff73}.rule--done{opacity:.55}.rule__n{background:#ffffff14;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.rule--now .rule__n{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#08101f}.rule__t{font-size:14px;font-weight:680}.rule__d{color:var(--muted);font-size:12px}.waiting{text-align:center;padding:26px 14px}.waiting__spin{border:3px solid #ffffff24;border-top-color:var(--accent);border-radius:50%;width:46px;height:46px;margin:0 auto 14px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.qr-wrap{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.qr-card{background:#fff;border-radius:16px;padding:14px;line-height:0;box-shadow:0 14px 40px #0006}.qr-card img,.qr-card canvas{width:210px;height:210px;display:block}.qr-url{word-break:break-all;color:var(--accent);border:1px solid var(--line);background:#0000004d;border-radius:10px;padding:9px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.tbl{border-collapse:collapse;width:100%;font-size:13.5px}.tbl th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:1px solid var(--line);padding:9px 10px;font-size:11px;font-weight:650}.tbl td{border-bottom:1px solid #ffffff0d;padding:9px 10px}.tbl tr:hover td{background:#ffffff09}.tbl__scroll{overflow-x:auto}.tabs{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.tab{border:1px solid var(--line);cursor:pointer;background:#ffffff0a;border-radius:11px;padding:9px 16px;font-size:14px;font-weight:650}.tab--on{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#08101f;border-color:#0000}.slot-edit{border:1px solid var(--line);background:#00000038;border-radius:12px;grid-template-columns:58px 1fr;align-items:center;gap:10px;padding:10px;display:grid}.slot-prev{aspect-ratio:1;color:#101830;background:linear-gradient(150deg,#f7f9ff,#dbe4ff);border-radius:10px;place-items:center;font-size:26px;display:grid;overflow:hidden}.slot-prev img{object-fit:contain;width:80%;height:80%}@media (max-width:640px){.shell{padding:14px 12px 48px}.track__line--start{left:88px}.lane__name{width:84px;font-size:11.5px}.lane__rail{left:88px;right:46px}.track__line--finish{right:46px}.lane__slot{width:42px}.runner{padding:4px 8px 4px 4px;font-size:11px}.runner__avatar{width:20px;height:20px;font-size:10px}.hero__title{font-size:26px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.announce{z-index:70;color:#07101f;pointer-events:none;background:linear-gradient(135deg,#5ee7fff2,#a78bfaf2);border-radius:999px;align-items:center;gap:14px;max-width:min(92vw,560px);padding:13px 22px 13px 13px;animation:.5s cubic-bezier(.2,1.3,.4,1) both announceIn,.5s 3.7s both announceOut;display:flex;position:fixed;top:18px;left:50%;box-shadow:0 18px 44px #00000080}.announce--champ{background:linear-gradient(135deg,#fde68a,#f59e0b)}.announce__avatar{color:#fff;background:#07101fd1;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:14px;font-weight:800;display:grid}.announce__name{font-size:17px;font-weight:800;line-height:1.2;display:block}.announce__meta{opacity:.82;font-size:12.5px;font-weight:620;display:block}.announce__badge{font-size:26px}@keyframes announceIn{0%{opacity:0;transform:translate(-50%,-90px)scale(.85)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes announceOut{0%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-80px)scale(.9)}}.curtain{z-index:55;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(700px 500px at 50% 40%,#5ee7ff2e,#0000 70%),#040710f0;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.curtain__label{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-size:13px;font-weight:700}.curtain__num{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#0000;font-variant-numeric:tabular-nums;-webkit-background-clip:text;background-clip:text;font-size:clamp(96px,34vw,190px);font-weight:850;line-height:1;animation:.45s cubic-bezier(.2,1.4,.4,1) tickIn}.curtain__hint{color:var(--muted);max-width:320px;font-size:13.5px}@keyframes tickIn{0%{opacity:0;transform:scale(1.55)}55%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(1)}}
