@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#131209;--surface:#181818;--surface-2:#1f1f1f;--surface-3:#272727;--surface-4:#313131;--text:#f2f0ea;--muted:#a5a29a;--accent:#ff8a3d;--accent-strong:#ffa366;--accent-text:#1a0e05;--danger:#ff6b6b;--success:#6fd38f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:48px;--space-9:64px;--space-10:80px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--ease:cubic-bezier(.32, .72, 0, 1);--font:"Geist Variable", system-ui, sans-serif;--mono:"Geist Mono Variable", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:24px}h1,h2,h3{margin:0 0 var(--space-3);text-wrap:balance;font-weight:600}h1{font-size:30px;line-height:36px}h2{font-size:20px;line-height:28px}h3{font-size:16px;line-height:24px}p{margin:0 0 var(--space-3);text-wrap:pretty}a{color:var(--accent-strong);transition:color .3s var(--ease);text-decoration:none}a:hover{color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-md)}small{font-size:12px;line-height:16px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.skip-link{left:var(--space-4);padding:var(--space-2) var(--space-3);background:var(--accent);color:var(--accent-text);border-radius:var(--radius-lg);z-index:100;position:absolute;top:-48px}.skip-link:focus{top:var(--space-4)}.shell{flex-direction:column;min-height:100vh;display:flex;overflow-x:clip}.nav-wrap{z-index:20;padding:var(--space-4) var(--space-4) 0;justify-content:center;display:flex;position:sticky;top:0}.nav{align-items:center;gap:var(--space-5);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--surface-3);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#181818d1;border-radius:9999px;display:flex}.brand{align-items:center;gap:var(--space-2);color:var(--text);image-rendering:pixelated;font-weight:600;display:inline-flex}.nav-links{gap:var(--space-1);display:flex}.nav-links a,.mobile-menu a{padding:var(--space-2) var(--space-3);color:var(--muted);transition:background .3s var(--ease), color .3s var(--ease);border-radius:9999px;font-size:14px;font-weight:500;line-height:20px}.nav-links a:hover,.mobile-menu a:hover{color:var(--text);background:var(--surface-3)}.nav-links a[aria-current=page],.mobile-menu a[aria-current=page]{color:var(--text);background:var(--surface-4)}.nav-toggle,.mobile-menu{display:none}.main{width:100%;max-width:1280px;padding:var(--space-6) var(--space-5) var(--space-9);flex:1;margin:0 auto}.footer{justify-content:space-between;gap:var(--space-3);padding:var(--space-5);border-top:1px solid var(--surface-3);color:var(--muted);flex-wrap:wrap;font-size:14px;line-height:20px;display:flex}.footer span{gap:var(--space-4);display:flex}@media (width<=760px){.nav-links{display:none}.nav-toggle{background:var(--surface-3);width:40px;height:40px;color:var(--text);cursor:pointer;transition:transform .7s var(--ease);border:0;border-radius:9999px;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.nav-toggle.is-open{transform:rotate(90deg)}.mobile-menu.is-open{z-index:15;gap:var(--space-2);padding:var(--space-10) var(--space-5);-webkit-backdrop-filter:blur(64px);backdrop-filter:blur(64px);background:#000c;flex-direction:column;display:flex;position:fixed;inset:0}.mobile-menu.is-open a{animation:rise .7s var(--ease) both;font-size:20px;line-height:28px}.mobile-menu.is-open a:nth-child(2){animation-delay:.1s}.mobile-menu.is-open a:nth-child(3){animation-delay:.15s}.mobile-menu.is-open a:nth-child(4){animation-delay:.2s}.main{padding:var(--space-5) var(--space-4) var(--space-8)}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.card{min-width:0;padding:var(--space-4)}}@keyframes rise{0%{opacity:0;transform:translateY(48px)}to{opacity:1;transform:translateY(0)}}.button{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font:inherit;cursor:pointer;white-space:nowrap;transition:background .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease), opacity .3s var(--ease);border:1px solid #0000;font-size:16px;font-weight:600;line-height:24px;display:inline-flex}.button:active:not(:disabled){transform:scale(.98)}.button:disabled{opacity:.45;cursor:not-allowed}.button[aria-busy=true]{cursor:progress}.button-primary{background:var(--accent);color:var(--accent-text)}.button-primary:hover:not(:disabled){background:var(--accent-strong)}.button-secondary{background:var(--surface-3);border-color:var(--surface-4);color:var(--text)}.button-secondary:hover:not(:disabled){background:var(--surface-4)}.button-ghost{color:var(--text);background:0 0}.button-ghost:hover:not(:disabled){background:var(--surface-3)}.button-danger{border-color:var(--surface-4);color:var(--danger);background:0 0}.button-danger:hover:not(:disabled){background:#ff6b6b1a}.button-block{width:100%}.icon-button{border-radius:var(--radius-lg);width:32px;height:32px;color:var(--muted);cursor:pointer;transition:background .3s var(--ease), color .3s var(--ease);background:0 0;border:0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.icon-button:hover,.icon-button[aria-pressed=true]{background:var(--surface-3);color:var(--text)}.field{gap:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;display:flex}.field label,.select-field{font-size:14px;font-weight:500;line-height:20px}.field input,.select-field select,.select-field input,.rename-form input,.template-select,.replay-controls select{padding:var(--space-2) var(--space-3);border:1px solid var(--surface-4);border-radius:var(--radius-lg);background:var(--surface-2);color:var(--text);font:inherit;transition:border-color .3s var(--ease)}.field input:hover,.select-field select:hover{border-color:var(--muted)}.field input[aria-invalid=true]{border-color:var(--danger)}.select-field{gap:var(--space-1);flex-direction:column;display:flex}.field-error,.error-message{color:var(--danger);margin:0;font-size:14px;line-height:20px}.error-message{margin:var(--space-3) 0}.field-hint{color:var(--muted);margin:0;font-size:14px;line-height:20px}.notice{margin:var(--space-3) 0;color:var(--success);font-size:14px;line-height:20px}.checkbox{align-items:center;gap:var(--space-2);color:var(--muted);font-size:14px;line-height:20px;display:inline-flex}.checkbox input{accent-color:var(--accent)}.inline-form{align-items:flex-end;gap:var(--space-3);margin-top:var(--space-4);display:flex}.inline-form .field{flex:1;margin-bottom:0}.toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.stack{gap:var(--space-4);flex-direction:column;display:flex}.plain-list{margin:0;padding:0;list-style:none}.badge{margin-left:var(--space-2);padding:0 var(--space-2);background:var(--surface-4);color:var(--muted);border-radius:9999px;align-items:center;font-size:12px;font-weight:500;line-height:20px;display:inline-flex}.badge-live{color:var(--accent-strong);background:#ff8a3d26}.card{padding:var(--space-5);border:1px solid var(--surface-3);border-radius:var(--radius-2xl);background:var(--surface)}.card+.card{margin-top:var(--space-4)}.card-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.card-header h2{margin:0}.skeleton-group{gap:var(--space-3);flex-direction:column;display:flex}.skeleton{border-radius:var(--radius-lg);background:var(--surface-3);animation:pulse 1.6s var(--ease) infinite alternate}@keyframes pulse{0%{opacity:.5}to{opacity:1}}.empty-state{align-items:center;gap:var(--space-2);padding:var(--space-7) var(--space-4);text-align:center;color:var(--muted);flex-direction:column;display:flex}.empty-state h3{color:var(--text);margin:0}.empty-state p{max-width:360px}.empty-icon{padding:var(--space-3);border-radius:var(--radius-xl);background:var(--surface-3);color:var(--accent);font-size:24px;display:inline-flex}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.page-header p{margin:0}.narrow{max-width:560px;margin:0 auto}.dashboard-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(340px,1fr));align-items:start;display:grid}.dashboard-grid .card+.card{margin-top:0}.bot-list,.match-list,.version-list{margin:0 0 var(--space-3);padding:0;list-style:none}.bot-row,.match-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);color:var(--text);transition:background .3s var(--ease);display:flex}a.bot-row:hover,a.match-row:hover{background:var(--surface-3);color:var(--text)}.bot-row>span:first-child{flex-direction:column;display:flex}.bot-row-meta{color:var(--muted);font-size:14px;line-height:20px}.match-row{align-items:flex-start;gap:var(--space-1);flex-direction:column}.match-row-head{font-size:12px;line-height:16px}.match-row-head .badge{margin-left:0}.match-row-players{gap:var(--space-2) var(--space-4);flex-wrap:wrap;font-size:14px;line-height:20px;display:flex}.match-row-players span{gap:var(--space-1);display:inline-flex}.match-row-players .is-mine{color:var(--accent-strong)}.delta.up{color:var(--success)}.delta.down{color:var(--danger)}.version-list li{padding:var(--space-1) 0;justify-content:space-between;align-items:center;display:flex}.pager{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);font-size:14px;line-height:20px;display:flex}.table{border-collapse:collapse;width:100%;font-size:14px;line-height:20px}.table-scroll{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}.table-scroll:focus-visible{outline-offset:2px}.table th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--surface-3);color:var(--muted);text-align:left;font-weight:500}.table td{padding:var(--space-3);border-bottom:1px solid var(--surface-2)}.table tr.is-mine td{background:#ff8a3d12}.mobile-table-meta{display:none}@media (width<=600px){.leaderboard,.match-result{table-layout:fixed}.leaderboard th,.leaderboard td,.match-result th,.match-result td{padding-inline:var(--space-2)}.leaderboard th:first-child{width:42px}.leaderboard th:nth-child(4){width:60px}.leaderboard th:nth-child(5),.leaderboard th:nth-child(6),.leaderboard td:nth-child(5),.leaderboard td:nth-child(6),.match-result th:nth-child(3),.match-result th:nth-child(4),.match-result td:nth-child(3),.match-result td:nth-child(4){display:none}.leaderboard a,.match-result a{overflow-wrap:anywhere}.leaderboard .badge{margin-left:0}.match-result th:first-child{width:50px}.match-result th:nth-child(5){width:86px}.mobile-table-meta{color:var(--muted);font-family:var(--font);margin-top:2px;font-size:11px;line-height:16px;display:block}}.auth-page{padding-top:var(--space-6);justify-content:center;display:flex}.auth-card{width:100%;max-width:420px}.auth-switch{margin:var(--space-4) 0 0;text-align:center}.hero{gap:var(--space-8);padding:var(--space-7) 0 var(--space-9);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;display:grid}.hero-title{letter-spacing:-.02em;background:linear-gradient(90deg,#fff,#9b9b9b);color:#0000;-webkit-background-clip:text;background-clip:text;max-width:680px;font-size:48px;line-height:1.05}.hero-subtitle{max-width:680px;color:var(--muted);font-size:18px;line-height:28px}.hero-actions{margin:var(--space-5) 0 var(--space-3)}.hero-proof{color:var(--muted);font-size:14px;line-height:20px}.demo-arena{gap:var(--space-3);animation:reveal .9s var(--ease) both;flex-direction:column;display:flex}@keyframes reveal{0%{filter:blur(12px);opacity:0;transform:translateY(64px)}to{filter:blur();opacity:1;transform:translateY(0)}}.steps{padding:var(--space-9) 0;border-top:1px solid var(--surface-3)}.steps-grid{gap:var(--space-4);margin:var(--space-5) 0 0;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;display:grid}.steps-grid li{padding:var(--space-5);border:1px solid var(--surface-3);border-radius:var(--radius-2xl);background:var(--surface)}.steps-grid svg{margin-bottom:var(--space-3);color:var(--accent);font-size:24px}.steps-grid p{color:var(--muted);margin:0}.tagline{padding:var(--space-10) 0}.tagline p{text-align:center;text-wrap:balance;max-width:680px;margin:0 auto;font-size:36px;font-weight:600;line-height:40px}.tagline span{color:#f2f0ea47;transition:color .7s var(--ease)}.tagline span.is-lit{color:var(--text)}.final-cta{align-items:center;gap:var(--space-3);padding:var(--space-9) 0;border-top:1px solid var(--surface-3);color:var(--accent);flex-direction:column;display:flex}.final-cta h2{color:var(--text)}@media (width<=900px){.hero{grid-template-columns:minmax(0,1fr)}.hero-title{font-size:36px;line-height:40px}.steps-grid{grid-template-columns:1fr}.tagline p{font-size:30px;line-height:36px}}.arena-frame{border:1px solid var(--surface-3);border-radius:var(--radius-2xl);background:#000;position:relative;overflow:hidden}.arena-canvas{aspect-ratio:240/208;border-radius:var(--radius-2xl);background:#000;width:100%;height:auto;max-height:none;overflow:hidden}.demo-arena .arena-canvas{outline:1px solid var(--surface-3);outline-offset:-1px}.arena-canvas canvas{image-rendering:pixelated;display:block}.arena-sound{top:var(--space-2);right:var(--space-2);background:#0000008c;position:absolute}.arena-overlay{padding:var(--space-4);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.arena-countdown{font-family:var(--mono);color:var(--text);text-shadow:0 4px #000,0 0 24px #000c;font-size:120px;font-weight:700;line-height:1;animation:1s ease-out both countdown}@keyframes countdown{0%{opacity:0;transform:scale(1.6)}30%{opacity:1;transform:scale(1)}to{opacity:.6;transform:scale(.9)}}.match-end{pointer-events:auto;gap:var(--space-2);max-width:360px;padding:var(--space-5) var(--space-6);border:1px solid var(--surface-3);border-radius:var(--radius-2xl);text-align:center;background:#0a0a0ad9;justify-items:center;animation:.3s ease-out both rise;display:grid}.match-end p{margin:0}.match-end-title{font-size:32px;font-weight:700;line-height:36px}.match-end-winner{color:var(--accent-strong);font-size:18px}.match-end-actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.scoreboard{padding:var(--space-3) var(--space-4);border:1px solid var(--surface-3);border-radius:var(--radius-2xl);background:var(--surface)}.scoreboard-header{margin-bottom:var(--space-2);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;font-size:12px;line-height:16px;display:flex}.scoreboard-list{margin:0;padding:0;list-style:none}.scoreboard-list li{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;transition:opacity .7s var(--ease);display:flex}.scoreboard-list li.is-dead{opacity:.45}.swatch{border-radius:9999px;flex:none;width:12px;height:12px}.scoreboard-name{flex-direction:column;flex:1;min-width:0;font-size:14px;line-height:20px;display:flex}.scoreboard-name strong,.scoreboard-name small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scoreboard-name small{color:var(--muted)}.scoreboard-stats{align-items:center;gap:var(--space-3);color:var(--muted);font-size:12px;line-height:16px;display:flex}.scoreboard-stats span{align-items:center;gap:2px;display:inline-flex}.placement{color:var(--accent-strong)}.editor-page{gap:var(--space-4);flex-direction:column;display:flex}.editor-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.editor-header h1{margin:0}.editor-title{align-items:center;gap:var(--space-2);display:flex}.rename-form{align-items:center;gap:var(--space-2);margin-top:var(--space-1);display:flex}.rename-form input{width:260px;max-width:100%;font-size:20px;font-weight:600}.modal{width:min(440px, calc(100vw - 2 * var(--space-4)));border:1px solid var(--surface-4);border-radius:var(--radius-lg);background:var(--surface-2);color:var(--text);padding:0}.modal::backdrop{background:#0009}.modal-body{padding:var(--space-5)}.modal-body h2{margin:0 0 var(--space-4);font-size:20px}.modal-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.version-label{overflow-wrap:anywhere}.button-icon{width:42px;padding-inline:0;font-size:18px}.template-select{cursor:pointer;flex:0 180px;min-width:0;max-width:180px;height:42px;padding-block:0;font-size:14px}.version-private{align-items:center;gap:var(--space-1);font-size:14px;display:inline-flex}.source-card{margin-top:var(--space-5);scroll-margin-top:96px}.editor-header-meta{min-height:var(--toolbar-height);justify-content:flex-end;align-items:center;gap:var(--space-3);color:var(--muted);flex-wrap:wrap;font-size:14px;line-height:20px;display:flex}.editor-layout{gap:var(--space-4);grid-template-columns:minmax(0,1.25fr) minmax(320px,1fr);align-items:start;display:grid}.editor-column,.arena-column{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.editor-toolbar{align-items:center;gap:var(--space-2);min-height:var(--toolbar-height);display:flex}.editor-layout{--toolbar-height:42px}.toolbar-spacer{flex:1}.code-editor{height:var(--editor-height,520px);border:1px solid var(--surface-3);border-radius:var(--radius-2xl);overflow:hidden}.editor-page.is-expanded{width:calc(100vw - 2 * var(--space-5));margin-inline:calc(50% - 50vw + var(--space-5))}.editor-page.is-expanded .editor-layout{grid-template-columns:minmax(0,1fr)}.editor-page.is-expanded .code-editor{height:max(520px,100vh - 280px)}.editor-page.is-expanded .arena-column{justify-self:center;width:100%;max-width:720px}.code-editor .cm-editor{height:100%;font-family:var(--mono);font-size:14px}.code-editor .cm-scroller{font-family:var(--mono)}.console{border:1px solid var(--surface-3);border-radius:var(--radius-2xl);background:var(--surface)}.console-header{padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-bottom:1px solid var(--surface-3);justify-content:space-between;align-items:center;display:flex}.console-header h3{margin:0;font-size:14px;line-height:20px}.console-lines{height:180px;padding:var(--space-2) var(--space-4);margin:0;font-size:12px;line-height:16px;list-style:none;overflow:auto}.console-lines li{gap:var(--space-2);white-space:pre-wrap;word-break:break-word;padding:2px 0;display:flex}.console-empty{color:var(--muted)}.console-tick{color:var(--muted);flex:none}.console-warn{color:#f2c14e}.console-error{color:var(--danger)}.console-system{color:var(--accent-strong)}.tabs{gap:var(--space-1);padding:var(--space-1);border:1px solid var(--surface-3);border-radius:var(--radius-xl);background:var(--surface);display:flex}.tab{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-lg);color:var(--muted);font:inherit;cursor:pointer;transition:background .3s var(--ease), color .3s var(--ease);background:0 0;border:0;flex:1;font-size:14px;font-weight:500;line-height:20px;display:inline-flex}.tab:hover{color:var(--text)}.tab[aria-selected=true]{background:var(--surface-4);color:var(--text)}.panel{gap:var(--space-3);flex-direction:column;display:flex}.panel h3{margin:var(--space-2) 0 0}.panel .card+.card{margin-top:0}@media (width<=1000px){.editor-layout{grid-template-columns:1fr}.code-editor{height:420px}}.match-layout{gap:var(--space-4);grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);align-items:start;display:grid}.replay-controls{align-items:center;gap:var(--space-3);margin-top:var(--space-3);display:flex}.replay-controls input[type=range]{accent-color:var(--accent);flex:1}.verify{align-items:center;gap:var(--space-2);margin:0;font-size:14px;line-height:20px;display:inline-flex}.verify.ok{color:var(--success)}.verify.bad{color:var(--danger)}.card-grid,.stat-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.stat-value{font-size:32px;display:block}.achievement-list,.admin-list,.audit-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.achievement-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.achievement-list li,.admin-list li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--surface-3);border-radius:var(--radius-lg);display:flex}.achievement-list li{justify-content:flex-start}.achievement-list small,.audit-list span{display:block}.audit-list li{padding-block:var(--space-2);border-bottom:1px solid var(--surface-3)}.form-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.table-scroll{overflow-x:auto}.table-scroll table{border-collapse:collapse;width:100%}.table-scroll th,.table-scroll td{padding:var(--space-3);border-bottom:1px solid var(--surface-3);text-align:left}.badge-active{color:var(--success)}.badge-cancelled{color:var(--danger)}@media (width<=900px){.match-layout,.form-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}
