:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--surface:#f8f9fa;--border:#e2e5e9;--text:#1a1a2e;--text2:#5a6270;--text3:#8b939e;--accent:#2c3e8f;--accent2:#1a6b4a;--red:#9b2c2c}.app{background:var(--bg);min-height:100vh;color:var(--text);font-family:Inter,Georgia,Times New Roman,serif;font-size:15px;line-height:1.65}.header{border-bottom:2px solid var(--text);justify-content:space-between;align-items:center;padding:14px 40px;display:flex}.header-left{align-items:baseline;gap:14px;display:flex}.logo{letter-spacing:2px;color:var(--text);text-transform:uppercase;font-family:Inter,sans-serif;font-size:16px;font-weight:700}.logo-sub{color:var(--text2);font-size:13px;font-style:italic;font-weight:400}.header-nav{gap:2px;display:flex}.nav-btn{color:var(--text2);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:6px 16px;font-family:inherit;font-size:14px;transition:color .15s}.nav-btn:hover{color:var(--text)}.nav-btn.active{color:var(--text);border-bottom-color:var(--text);font-weight:600}.rank-bar{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;align-items:center;gap:24px;padding:10px 40px;display:flex}.rank-label{color:var(--text3);text-transform:uppercase;letter-spacing:1px;white-space:nowrap;font-size:11px;font-weight:600}.rank-items{flex-wrap:wrap;gap:18px;display:flex}.rank-item{color:var(--text2);align-items:center;gap:5px;font-size:13px;display:flex}.rank-challenger .rank-name{color:var(--accent);font-weight:700}.rank-dot{border-radius:2px;width:8px;height:8px}.rank-name{font-family:Inter,sans-serif;font-weight:500}.rank-desc{color:var(--text3);font-size:11px}.controls{flex-wrap:wrap;align-items:flex-end;gap:14px;padding:28px 40px 12px;display:flex}.control-group{flex:1;min-width:200px}.control-group label{color:var(--text3);text-transform:uppercase;letter-spacing:.8px;margin-bottom:4px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;display:block}.control-group select{border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;background:#fff;border-radius:4px;outline:none;padding:10px 14px;font-family:inherit;font-size:15px}.control-group select:focus{border-color:var(--accent)}.run-btn{background:var(--text);color:#fff;cursor:pointer;white-space:nowrap;letter-spacing:.3px;border:none;border-radius:4px;padding:10px 28px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;transition:background .15s}.run-btn:hover{background:#333}.run-btn:disabled{color:#888;cursor:not-allowed;background:#ccc}.task-desc{color:var(--text2);padding:4px 40px 20px;font-size:14px;font-style:italic}.error-msg{color:var(--red);padding:4px 40px 14px;font-size:14px}.results-grid{background:var(--bg);grid-template-columns:repeat(5,1fr);gap:1px;padding:0 40px 28px;display:grid}@media (width<=1200px){.results-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.results-grid{grid-template-columns:1fr 1fr}}@media (width<=500px){.results-grid{grid-template-columns:1fr}}.result-card{border:1px solid var(--border);background:#fff;position:relative;overflow:hidden}.result-card.winner{border-color:var(--accent);border-width:2px}.result-card.codong-card{background:#fafaff}.winner-badge{background:var(--accent);color:#fff;letter-spacing:1px;padding:3px 10px;font-family:Inter,sans-serif;font-size:9px;font-weight:700;position:absolute;top:0;right:0}.card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:14px 16px 8px;display:flex}.card-name{color:var(--text);font-family:Inter,sans-serif;font-size:16px;font-weight:700}.card-rank{color:var(--text3);margin-top:1px;font-size:11px}.card-status{padding-top:4px}.status-generating{background:#d4a017;border-radius:50%;width:8px;height:8px;animation:1.2s infinite pulse;display:inline-block}.status-done{background:var(--accent2);border-radius:50%;width:8px;height:8px;display:inline-block}.status-idle{background:#ccc;border-radius:50%;width:8px;height:8px;display:inline-block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.card-metrics{padding:8px 16px 14px}.metric{justify-content:space-between;align-items:center;padding:5px 0;display:flex}.metric-sm{padding:3px 0}.metric-label{color:var(--text2);font-size:13px}.metric-sm .metric-label{color:var(--text3);font-size:12px}.metric-value{color:var(--text);font-family:JetBrains Mono,Courier New,monospace;font-size:16px;font-weight:600}.metric-sm .metric-value{color:var(--text2);font-size:13px;font-weight:400}.metric-best{color:var(--accent);font-weight:700}.metric-suffix{color:var(--text3);margin-left:2px;font-size:11px;font-weight:400}.metric-empty{color:#ccc;font-family:monospace;font-size:14px}.metric-divider{background:var(--border);height:1px;margin:6px 0 4px}.card-code-toggle{border-top:1px solid var(--border)}.card-code-toggle button{width:100%;color:var(--text2);cursor:pointer;text-align:left;background:0 0;border:none;padding:8px 16px;font-family:inherit;font-size:13px;transition:color .15s}.card-code-toggle button:hover{color:var(--text);background:var(--surface)}.code-panel{border:1px solid var(--border);margin:0 40px 24px;overflow:hidden}.code-header{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;padding:10px 16px;font-family:Inter,sans-serif;font-size:14px;font-weight:600;display:flex}.code-meta{color:var(--text3);font-size:13px;font-weight:400}.code-body{color:var(--text);white-space:pre-wrap;word-break:break-all;background:#fdfdfd;max-height:480px;margin:0;padding:16px;font-family:JetBrains Mono,Courier New,monospace;font-size:13px;line-height:1.7;overflow:auto}.summary-section{border:1px solid var(--border);background:#fff;margin:0 40px 36px;padding:28px}.summary-title{color:var(--text);margin-bottom:2px;font-family:Inter,sans-serif;font-size:16px;font-weight:700}.summary-sub{color:var(--text3);margin-bottom:22px;font-size:13px;font-style:italic}.chart-bars{flex-direction:column;gap:8px;margin-bottom:28px;display:flex}.chart-row{align-items:center;gap:12px;display:flex}.chart-label{text-align:right;width:90px;color:var(--text);font-family:Inter,sans-serif;font-size:14px;font-weight:600}.chart-track{background:var(--surface);border:1px solid var(--border);flex:1;height:28px;position:relative;overflow:hidden}.chart-fill{opacity:.65;height:100%;transition:width .6s}.chart-value{color:var(--text);font-family:JetBrains Mono,monospace;font-size:13px;font-weight:600;position:absolute;top:4px;right:10px}.summary-stats{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}@media (width<=700px){.summary-stats{grid-template-columns:1fr}}.stat-card{text-align:center;background:#fff;padding:20px}.stat-value{letter-spacing:-1px;font-family:JetBrains Mono,monospace;font-size:30px;font-weight:700}.stat-positive{color:var(--accent2)}.stat-negative{color:var(--red)}.stat-label{color:var(--text2);margin-top:4px;font-size:13px}.footer{border-top:1px solid var(--border);color:var(--text3);justify-content:space-between;align-items:center;padding:16px 40px;font-size:12px;display:flex}.footer-links{gap:18px;display:flex}.footer-links a{color:var(--text2);text-decoration:none}.footer-links a:hover{color:var(--text);text-decoration:underline}.rules-content{max-width:720px;margin:0 auto;padding:48px 32px 64px}.rules-content h1{color:var(--text);letter-spacing:-.3px;margin-bottom:8px;font-family:Inter,sans-serif;font-size:28px;font-weight:700}.rules-content section{margin-bottom:32px}.rules-content h2{color:var(--text);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;padding-bottom:8px;font-family:Inter,sans-serif;font-size:16px;font-weight:700}.rules-content p{color:var(--text);margin-bottom:12px;font-size:15px;line-height:1.8}.rules-content ul,.rules-content ol{margin-bottom:12px;padding-left:20px}.rules-content li{color:var(--text);margin-bottom:6px;font-size:15px;line-height:1.8}.rules-content a{color:var(--accent);text-decoration:none}.rules-content a:hover{text-decoration:underline}.rules-table{border-collapse:collapse;width:100%;font-size:14px}.rules-table th{text-align:left;background:var(--surface);color:var(--text2);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.5px;padding:10px 12px;font-family:Inter,sans-serif;font-size:12px;font-weight:600}.rules-table td{border:1px solid var(--border);color:var(--text);padding:10px 12px}.rules-table strong{color:var(--text)}
