*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#101510;min-width:320px}body{color:#e6eadf;-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:12px}button,input{font:inherit}button{color:inherit;cursor:pointer}.app-layout{grid-template-columns:300px minmax(0,1fr);min-height:100dvh;display:grid}.app-layout--collapsed{grid-template-columns:minmax(0,1fr)}.app-layout--collapsed .sidebar{display:none}.brand-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.collapse-button{color:#8b957f;background:0 0;border:1px solid #30392d;border-radius:4px;padding:2px 8px;font-size:12px}.collapse-button:hover{color:#9eb882;border-color:#526244}.expand-button{z-index:10;color:#8b957f;background:#151a15;border:1px solid #30392d;border-radius:4px;padding:4px 10px;font-size:14px;position:fixed;top:12px;left:12px}.expand-button:hover{color:#9eb882;border-color:#526244}.sidebar{background:#151a15;border-right:1px solid #273026;min-width:0;padding:22px 18px}.brand{letter-spacing:-.4px;margin:0;font-size:18px;font-weight:700}.brand-sub{color:#8b957f;margin:4px 0 0;font-size:10px;line-height:1.6}.sidebar section{border-bottom:1px solid #273026;padding:16px 0}.section-kicker{color:#727f71;letter-spacing:1.4px;margin-bottom:12px;font-size:9px;font-weight:700;display:block}.setup-panel{flex-direction:column;gap:14px;display:flex}.setup-field{flex-direction:column;gap:8px;display:flex}.setup-label{color:#8b957f;font-size:10px;font-weight:600}.setup-hint{color:#6f7e65;margin:0;font-size:9px;line-height:1.6}.setup-input{color:#e6eadf;background:#0e120e;border:1px solid #30392d;border-radius:4px;width:100%;min-width:0;padding:8px;font-size:11px}.setup-input:focus{border-color:#9eb882;outline:none}.setup-row{align-items:center;gap:8px;display:flex}.setup-actions{gap:8px;margin-left:auto;display:flex}.link-button{color:#9eb882;background:0 0;border:0;padding:0;font-size:10px}.link-button:disabled{opacity:.4;cursor:default}.primary-button{color:#9eb882;background:#263022;border:1px solid #526244;border-radius:4px;padding:8px 12px;font-size:11px}.primary-button:disabled{opacity:.4;cursor:default}.danger-button{color:#d98a7d;background:#291b17;border:1px solid #7b5445;border-radius:4px;padding:8px 12px;font-size:11px}.secondary-button{color:#8b957f;background:0 0;border:1px solid #30392d;border-radius:4px;padding:8px 12px;font-size:11px}.secondary-button:hover:not(:disabled){color:#9eb882;border-color:#526244}.primary-button:disabled,.danger-button:disabled,.secondary-button:disabled{opacity:.4;cursor:default}.model-list{border:1px solid #273026;border-radius:4px;flex-direction:column;gap:4px;max-height:320px;padding:8px;display:flex;overflow-y:auto}.model-option{cursor:pointer;align-items:baseline;gap:8px;font-size:10px;display:flex}.model-option--unavailable{opacity:.55}.model-name{font-weight:600}.model-meta{color:#8b957f;text-overflow:ellipsis;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;overflow:hidden}.tournament-controls{gap:8px;display:flex}.setup-range{accent-color:#9eb882;width:100%}.sidebar section.tournament-section{border-bottom:0}.sidebar section.setup-panel{border-bottom:0;padding:0}.sidebar-notice{color:#8b957f;margin:0;font-size:10px;line-height:1.6}.sidebar-notice--error{color:#d98a7d}.arena{flex-direction:column;gap:20px;min-width:0;padding:22px 28px 40px;display:flex}.stats-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.stat{background:#151b14;border:1px solid #35422e;border-radius:5px;padding:10px 12px}.stat dt{color:#8b957f;letter-spacing:1px;font-size:9px}.stat dd{font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:16px}.stat-failed{color:#d98a7d;font-size:11px}.fallback-badge{color:#d5ba7d}.panel{background:#151b14;border:1px solid #35422e;border-radius:5px;padding:14px}.panel h2{color:#a1b18f;margin:0 0 4px;font-size:12px;font-weight:600}.panel-progress{color:#8b957f;font-variant-numeric:tabular-nums;margin:0 0 12px;font-size:10px}.games-grid{grid-template-columns:repeat(auto-fill,170px);justify-content:start;gap:12px;display:grid}.game-card{background:#151b14;border:1px solid #35422e;border-radius:5px;min-width:0;overflow:hidden}.game-card--finished{border-color:#78945b}.game-card-heading{border-bottom:1px solid #303b2a;align-items:center;gap:6px;padding:6px;display:flex}.game-number{color:#a4b296;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.game-type{text-overflow:ellipsis;white-space:nowrap;color:#8b957f;flex:1;min-width:0;font-size:9px;overflow:hidden}.game-status{color:#819275;font-size:9px}.player-row{align-items:center;gap:6px;padding:4px 6px;display:flex}.player-color{border-radius:50%;flex-shrink:0;width:7px;height:7px}.player-color--white{background:#e9edcc}.player-color--black{background:#2b3126;border:1px solid #6d795f}.player-identity{min-width:0}.player-name{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.board-area{gap:4px;margin:0 6px;display:flex}.board-wrap{flex:1;min-width:0;position:relative}.chessboard{aspect-ratio:1;border-radius:2px;grid-template-columns:repeat(8,1fr);display:grid;overflow:hidden}.board-square{aspect-ratio:1;justify-content:center;align-items:center;display:flex;position:relative}.board-square--light{color:#779954;background:#e9edcc}.board-square--dark{color:#e9edcc;background:#779954}.board-square--light.board-square--last{background:#f4f666}.board-square--dark.board-square--last{background:#bbcc2a}.board-coordinate{pointer-events:none;font-size:8px;font-weight:700;position:absolute}.board-coordinate--rank{top:2px;left:3px}.board-coordinate--file{bottom:1px;right:3px}.chess-piece{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.eval-bar{background:#403d39;border-radius:2px;flex-shrink:0;width:18px;position:relative;overflow:hidden}.eval-track{width:100%;height:100%;display:block;position:absolute;inset:0}.eval-black{fill:#403d39}.eval-white{fill:#fff}.eval-score{text-align:center;width:100%;font-size:8px;font-weight:700;position:absolute}.eval-score--bottom{bottom:7px}.eval-score--white{color:#333}.eval-score--black{color:#fff}.game-footer{border-top:1px solid #303b2a;justify-content:space-between;gap:6px;padding:6px;display:flex}.move-count{color:#6f7e65;font-size:8px}.result-overlay{background:#10170fbb;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.result-panel{text-align:center;background:#182216;border:1px solid #5c704a;border-radius:5px;padding:16px}.result-kicker{color:#8b957f;letter-spacing:1.5px;font-size:8px;display:block}.result-panel strong{color:#9eb882;font-size:22px}.table-wrap{overflow-x:auto}.standings,.matrix{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:10px}.standings th,.standings td,.matrix th,.matrix td{text-align:left;border-bottom:1px solid #273026;padding:6px 8px}.standings th,.matrix th{color:#8b957f;font-weight:600}.standings-model{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.matrix-self{color:#4a5548}.empty-state{color:#849578;text-align:center;margin:0;padding:20px 0;font-size:11px}.analysis-list{flex-direction:column;gap:12px;display:flex}.analysis-card{background:#111611;border:1px solid #303b2a;border-radius:4px;padding:10px}.analysis-heading{justify-content:space-between;gap:8px;font-size:10px;display:flex}.analysis-body{color:#8b957f;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:10px;display:flex}.analysis-pgn{color:#bbc7af;margin:8px 0 0;font-size:10px;line-height:1.6}.history-strip{max-height:600px;padding-bottom:4px;overflow-y:auto}.games-grid--history{grid-template-columns:repeat(auto-fill,140px);justify-content:start;gap:10px;display:grid}.games-grid--history .game-card-heading{gap:4px;padding:4px 6px}.games-grid--history .game-number,.games-grid--history .game-type,.games-grid--history .game-status{font-size:8px}.games-grid--history .player-row{gap:4px;padding:3px 6px}.games-grid--history .player-name{font-size:9px}.games-grid--history .board-area{gap:3px;margin:0 4px}.games-grid--history .eval-bar{width:12px}.games-grid--history .eval-score,.games-grid--history .board-coordinate{font-size:6px}.games-grid--history .game-footer{gap:4px;padding:4px 6px}.games-grid--history .move-count{font-size:7px}.games-grid--history .result-panel{padding:10px 8px}.games-grid--history .result-panel strong{font-size:16px}@media (width<=900px){.app-layout{flex-direction:column;display:flex}.sidebar{border-bottom:1px solid #273026;border-right:0}.arena{padding:18px 14px 30px}.stats-bar{grid-template-columns:repeat(2,minmax(0,1fr))}}
