.match-list-page{max-width:720px}.match-list{list-style:none;padding:0;margin:0}.match-list-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;margin-bottom:.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.match-list-item:hover{border-color:var(--color-link)}.match-link{font-weight:500;color:var(--color-text);text-decoration:none}.match-link:hover{color:var(--color-link)}.match-meta{color:var(--color-muted);font-size:.9rem}.badge{margin-left:.5rem;padding:.15rem .4rem;background:#3b82f633;color:var(--color-link);border-radius:4px;font-size:.75rem}.load-more{margin-top:1rem}.match-detail-page{max-width:960px;margin:0 auto}.breadcrumb{margin-bottom:1rem}.breadcrumb a{color:var(--color-link);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.match-detail-header{margin-bottom:1.5rem}.match-detail-header h1{margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.match-meta{margin:0;color:var(--color-muted);font-size:.95rem}.match-video-section,.match-chart-section{margin-bottom:2rem}.match-video-section h2,.match-chart-section h2{margin:0 0 .75rem;font-size:1.1rem;font-weight:600;color:var(--color-muted)}.video-wrapper{border-radius:8px;overflow:hidden;background:#0f172a;border:1px solid var(--color-border)}.match-video{display:block;width:100%;max-height:480px}.video-time-display{margin:0;padding:.35rem .5rem;font-size:.85rem;color:var(--color-muted);font-variant-numeric:tabular-nums}.chart-wrapper{border-radius:8px;padding:1rem;background:#0f172a;border:1px solid var(--color-border)}.hint{color:var(--color-muted);font-size:.9rem;margin:.5rem 0}.error{color:var(--color-error, #ef4444)}.archetype-stats-page{max-width:720px}.table-wrapper{overflow-x:auto;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface)}.stats-table{border-collapse:collapse;width:100%;min-width:400px}.stats-table th,.stats-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--color-border)}.stats-table th{font-weight:600;color:var(--color-muted);font-size:.9rem}.stats-table th.num,.stats-table td.num{text-align:right}.stats-table tbody tr:last-child td{border-bottom:none}.stats-table tbody tr:hover{background:#ffffff08}.hint{color:var(--color-muted);margin-top:1rem}.tournaments-list-page{max-width:720px}.tournaments-list{list-style:none;padding:0;margin:0}.tournaments-list-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;margin-bottom:.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.tournaments-list-item:hover{border-color:var(--color-link)}.tournament-link{font-weight:500;color:var(--color-text);text-decoration:none}.tournament-link:hover{color:var(--color-link)}.tournament-meta{color:var(--color-muted);font-size:.9rem}.muted{color:var(--color-muted);margin-top:1rem}.loading,.error{margin:1rem 0}.create-tournament-page{max-width:480px}.create-tournament-form label{display:block;margin-bottom:1rem}.create-tournament-form label span{display:block;margin-bottom:.25rem;font-weight:500}.create-tournament-form input[type=text],.create-tournament-form select{width:100%;padding:.5rem;border:1px solid var(--color-border);border-radius:6px}.checkbox-label{display:flex;align-items:center;gap:.5rem}.checkbox-label input{width:auto}.seeds-fieldset{margin:1rem 0;padding:1rem;border:1px solid var(--color-border);border-radius:8px}.seeds-fieldset label{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.seeds-fieldset label span{min-width:5rem}.seeds-fieldset select{width:auto;min-width:120px}.form-actions{margin-top:1.5rem;display:flex;gap:.75rem}.form-actions button.secondary{background:var(--color-surface);color:var(--color-text)}.error{color:var(--color-error);margin:.5rem 0}.tournament-detail-page{max-width:720px}.tournament-meta{color:var(--color-muted);margin-bottom:.5rem}.tournament-meta .badge.fully-published{margin-left:.5rem;padding:.2rem .5rem;font-size:.8rem;background:var(--color-link);color:var(--color-surface);border-radius:4px}.tournament-progress{color:var(--color-muted);font-size:.95rem;margin-bottom:1.5rem}.bracket-state,.next-match,.content-library{margin-bottom:2rem}.results-table .published-badge{font-size:.85rem;color:var(--color-muted)}.results-table .match-actions{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap}.results-table .publish-btn,.results-table .download-btn{white-space:nowrap}.results-table .download-btn{font-size:.9rem;padding:.25rem .5rem;color:var(--color-link);background:transparent;border:1px solid var(--color-border);border-radius:4px;cursor:pointer}.results-table .download-btn:hover{background:#ffffff0f;border-color:var(--color-link)}.results-table .published-at{font-size:.9rem;color:var(--color-muted);white-space:nowrap}.bracket-state h2,.next-match h2,.content-library h2{font-size:1.1rem;margin-bottom:.5rem}.results-table{width:100%;border-collapse:collapse;margin-top:.5rem}.results-table th,.results-table td{padding:.5rem;text-align:left;border-bottom:1px solid var(--color-border)}.next-match-label{font-weight:500}.slot-id{color:var(--color-muted);font-weight:400}.hint,.muted{color:var(--color-muted);font-size:.9rem;margin-top:.5rem}.tournament-complete{font-size:1.1rem}.content-list{list-style:none;padding:0;margin:0}.content-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;margin-bottom:.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.content-match{flex:1;font-size:.95rem}.content-created{color:var(--color-muted);font-size:.9em}.content-item button{flex-shrink:0}.back-link{margin-top:2rem}.back-link a{color:var(--color-link);text-decoration:none}.loading,.error{margin:.5rem 0}.error{color:var(--color-error)}.admin-page .admin-intro{margin-bottom:1rem;color:var(--text-muted, #666);max-width:56rem}.admin-actions{margin-bottom:1.5rem}.admin-table .num{text-align:right}.admin-table code{font-size:.9em}.status-ok{color:var(--success, #0a0)}.status-behind{color:var(--warn, #c60)}.btn-sm{padding:.25rem .5rem;font-size:.875rem}.app-layout{min-height:100vh;display:flex;flex-direction:column}.site-header{display:flex;align-items:center;gap:2rem;padding:.75rem 1.5rem;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.site-logo{font-weight:700;font-size:1.15rem;color:var(--color-text);text-decoration:none}.site-logo:hover{color:var(--color-link)}.site-nav{display:flex;gap:1rem}.site-nav a{color:var(--color-muted);text-decoration:none;padding:.35rem .6rem;border-radius:6px;font-size:.95rem}.site-nav a:hover{color:var(--color-text);background:#ffffff0f}.site-nav a.active{color:var(--color-link);background:#3b82f626}.site-main{flex:1;padding:1.5rem}.page{max-width:960px;margin:0 auto}.character-elo-section{margin:1.5rem 0}.character-elo-section h2{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--color-text)}.elo-card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;max-width:560px}.elo-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;background:var(--color-surface);border-radius:14px;border:1px solid transparent;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.elo-card:hover{background:var(--color-surface-elevated)}.elo-card-primary{display:flex;flex-direction:column;gap:2px;min-width:0}.elo-card-name{font-weight:500;font-size:.95rem;color:var(--color-text)}.elo-card-meta{font-size:.8rem;color:var(--color-muted)}.elo-pref-buttons{display:flex;align-items:center;gap:8px;flex-shrink:0}.elo-pref-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-border);border-radius:8px;background:transparent;color:var(--color-muted);font-size:.875rem;font-weight:500;cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.elo-pref-btn:hover:not(:disabled){color:var(--color-text);background:#ffffff0f}.elo-pref-btn-like:hover:not(:disabled){color:var(--color-like);background:var(--color-like-soft);border-color:transparent}.elo-pref-btn-like:focus-visible:not(:disabled){color:var(--color-like);background:var(--color-like-soft);border-color:var(--color-like)}.elo-pref-btn-dislike:hover:not(:disabled){color:var(--color-dislike);background:var(--color-dislike-soft);border-color:transparent}.elo-pref-btn-dislike:focus-visible:not(:disabled){color:var(--color-dislike);background:var(--color-dislike-soft);border-color:var(--color-dislike)}.elo-pref-btn.is-pressed,.elo-pref-btn:disabled{cursor:default}.elo-pref-btn:disabled:not(.is-pressed){opacity:.5}.elo-pref-btn-like.is-pressed,.elo-pref-btn-like:disabled.is-pressed{color:var(--color-like);background:var(--color-like-soft);border-color:transparent}.elo-pref-btn-dislike.is-pressed,.elo-pref-btn-dislike:disabled.is-pressed{color:var(--color-dislike);background:var(--color-dislike-soft);border-color:transparent}.elo-pref-btn svg{flex-shrink:0}.home-page .lead{color:var(--color-muted);margin-bottom:1rem}.home-page .status{color:var(--color-success, #22c55e);margin:.5rem 0}.home-page .error{color:var(--color-error, #ef4444);margin:.5rem 0}.home-page .loading{color:var(--color-muted);margin:1rem 0}.home-page .muted{color:var(--color-muted)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.quick-links{display:flex;gap:1rem;margin-top:1.5rem}.card-link{display:inline-block;padding:.75rem 1.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-link);text-decoration:none;font-weight:500}.card-link:hover{background:#ffffff0f;border-color:var(--color-link)}:root{--color-bg: #0f0f12;--color-surface: #18181b;--color-surface-elevated: #1f1f23;--color-border: #27272a;--color-text: #e4e4e7;--color-muted: #a1a1aa;--color-link: #60a5fa;--color-success: #22c55e;--color-error: #ef4444;--color-like: #f87171;--color-like-soft: rgba(248, 113, 113, .15);--color-dislike: #a16207;--color-dislike-soft: rgba(161, 98, 7, .2);--transition-fast: .15s ease}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);min-height:100vh;line-height:1.5}a{color:var(--color-link)}h1{margin:0 0 1rem;font-size:1.5rem;font-weight:600}button{padding:.5rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text);cursor:pointer;font-size:.95rem}button:hover:not(:disabled){background:#ffffff0f}button:disabled{opacity:.6;cursor:not-allowed}
