*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--green:#16a34a;--green-light:#dcfce7;--green-mid:#4ade80;--amber:#d97706;--amber-light:#fef3c7;--red:#dc2626;--red-light:#fee2e2;--bg:#0f172a;--surface:#1e293b;--surface2:#334155;--border:#334155;--border-light:#475569;--text:#f1f5f9;--text-muted:#94a3b8;--text-dim:#64748b;--accent:#38bdf8;--accent-bg:#0c4a6e;--radius:10px;--radius-sm:6px}html{font-size:16px}body{-webkit-font-smoothing:antialiased;background:#0f172a;background:var(--bg);color:#f1f5f9;color:var(--text);font-family:Inter,system-ui,sans-serif}.app,body{min-height:100vh}.app{display:flex;flex-direction:column}.modal-overlay{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:100}.modal{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);max-height:80vh;max-width:380px;overflow-y:auto;padding:20px;width:100%}.modal-title{font-size:16px;font-weight:600;margin-bottom:14px}.modal-list{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.modal-item{align-items:center;background:none;border:1px solid #0000;border-radius:6px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text);cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:10px 12px;text-align:left;transition:all .1s}.modal-item:hover{background:#334155;background:var(--surface2)}.modal-item-active{background:#0c4a6e;background:var(--accent-bg);border-color:#38bdf8;border-color:var(--accent);color:#38bdf8;color:var(--accent)}.modal-divider{border-top:1px solid #334155;border-top:1px solid var(--border);color:#64748b;color:var(--text-dim);font-size:12px;margin:10px 0;padding-top:10px;text-align:center}.modal-custom{display:flex;gap:8px}.modal-input{background:#334155;background:var(--surface2);border:1px solid #334155;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text);flex:1 1;font-size:14px;padding:8px 10px}.modal-input:focus{border-color:#38bdf8;border-color:var(--accent);outline:none}.modal-confirm{background:#38bdf8;background:var(--accent);border:none;border-radius:6px;border-radius:var(--radius-sm);color:#0f172a;color:var(--bg);cursor:pointer;font-size:14px;font-weight:600;padding:8px 14px}.modal-confirm:disabled{cursor:not-allowed;opacity:.4}.app-header{background:#1e293b;background:var(--surface);border-bottom:1px solid #334155;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}.header-inner{align-items:center;display:flex;justify-content:space-between;padding:12px 16px}.header-eyebrow{color:#94a3b8;color:var(--text-muted);display:block;font-size:10px;font-weight:500;letter-spacing:.1em;margin-bottom:2px;text-transform:uppercase}.header-h1{font-family:Barlow Condensed,sans-serif;font-size:26px;font-weight:700;letter-spacing:.02em;line-height:1}.header-actions{gap:8px}.header-actions,.player-badge{align-items:center;display:flex}.player-badge{background:#0c4a6e;background:var(--accent-bg);border:1px solid #38bdf8;border:1px solid var(--accent);border-radius:20px;color:#38bdf8;color:var(--accent);cursor:pointer;font-size:13px;font-weight:500;gap:6px;max-width:140px;overflow:hidden;padding:6px 10px;text-overflow:ellipsis;white-space:nowrap}.player-badge:hover{background:#0e5a80}.refresh-btn{align-items:center;background:none;border:1px solid #334155;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#94a3b8;color:var(--text-muted);cursor:pointer;display:flex;font-size:12px;gap:6px;padding:6px 10px}.refresh-btn:hover{border-color:#475569;border-color:var(--border-light);color:#f1f5f9;color:var(--text)}.refresh-time{font-size:11px}.tabs{background:#1e293b;background:var(--surface);border-bottom:1px solid #334155;border-bottom:1px solid var(--border);gap:2px;padding:0 12px}.tab,.tabs{display:flex}.tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:500;gap:5px;margin-bottom:-1px;padding:10px 12px;transition:color .15s;white-space:nowrap}.tab:hover{color:#f1f5f9;color:var(--text)}.tab-active{border-bottom-color:#38bdf8;border-bottom-color:var(--accent);color:#38bdf8;color:var(--accent)}.main-content{flex:1 1;margin:0 auto;max-width:1200px;padding:16px;width:100%}.desktop-layout{align-items:flex-start;display:flex;gap:20px}.desktop-main{flex:1 1;min-width:0}.desktop-side{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);display:none;flex-shrink:0;padding:14px;position:-webkit-sticky;position:sticky;top:100px;width:280px}.side-title{color:#64748b;color:var(--text-dim);font-size:11px;font-weight:600;letter-spacing:.08em;margin-bottom:12px;text-transform:uppercase}@media (min-width:900px){.desktop-side{display:block}.tab-label{display:inline}}@media (max-width:899px){.tab-label{display:none}.tab{padding:10px 14px}}@media (min-width:1100px){.desktop-side{width:320px}}.chips-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.chip{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:20px;color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:500;padding:5px 11px;transition:all .15s}.chip:hover{border-color:#475569;border-color:var(--border-light);color:#f1f5f9;color:var(--text)}.chip-active{background:#38bdf8;background:var(--accent);border-color:#38bdf8;border-color:var(--accent);color:#0f172a;color:var(--bg)}.match-section{margin-bottom:8px}.section-header{align-items:center;background:#334155;background:var(--surface2);border:1px solid #334155;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#94a3b8;color:var(--text-muted);cursor:pointer;display:flex;font-size:12px;font-weight:600;justify-content:space-between;letter-spacing:.06em;margin-bottom:4px;padding:8px 12px;text-transform:uppercase;width:100%}.section-header:hover{color:#f1f5f9;color:var(--text)}.match-list{display:flex;flex-direction:column;gap:6px}.match-card{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);padding:12px 14px}.match-card:hover{border-color:#475569;border-color:var(--border-light)}.match-done{opacity:.7}.match-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.match-date{color:#64748b;color:var(--text-dim);font-size:11px}.match-tag{border-radius:20px;font-size:11px;font-weight:500;padding:2px 7px}.tag-upcoming{background:#0c4a6e;background:var(--accent-bg);color:#38bdf8;color:var(--accent)}.tag-done{background:#334155;background:var(--surface2);color:#94a3b8;color:var(--text-muted)}.teams-row{grid-gap:6px;align-items:center;display:grid;gap:6px;grid-template-columns:1fr auto 1fr;margin-bottom:10px}.team-name{font-size:13px;font-weight:600;line-height:1.3}.team-away{text-align:right}.vs-sep{color:#64748b;color:var(--text-dim);font-size:12px;text-align:center}.pred-input-area{display:flex;flex-direction:column;gap:6px}.score-inputs{align-items:center;display:flex;gap:6px}.goal-input{-webkit-appearance:textfield;appearance:textfield;background:#334155;background:var(--surface2);border:1px solid #334155;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text);flex-shrink:0;font-size:18px;font-weight:600;padding:7px 4px;text-align:center;width:44px}.goal-input::-webkit-inner-spin-button,.goal-input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none}.goal-input:focus{border-color:#38bdf8;border-color:var(--accent);outline:none}.score-dash{color:#64748b;color:var(--text-dim);flex-shrink:0;font-size:18px;font-weight:600}.nep-select-inline{flex-shrink:0;padding:7px 6px}.nep-select-inline,.save-btn-inline{background:#334155;background:var(--surface2);border:1px solid #334155;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text);cursor:pointer;font-size:12px}.save-btn-inline{align-items:center;display:flex;font-weight:500;gap:4px;margin-left:auto;padding:7px 14px;transition:all .15s;white-space:nowrap}.save-btn-inline:hover{border-color:#475569;border-color:var(--border-light)}.save-btn-inline.saved{background:#dcfce7;background:var(--green-light);border-color:#4ade80;border-color:var(--green-mid);color:#15803d}.input-error{color:#dc2626;color:var(--red);font-size:11px}.pred-done-row{align-items:center;display:flex;justify-content:space-between}.pred-score{color:#94a3b8;color:var(--text-muted);font-size:15px;font-weight:600}.pts-badge{border-radius:20px;font-size:12px;font-weight:600;padding:2px 9px}.pts-good,.pts-max{background:#dcfce7;background:var(--green-light);color:#15803d}.pts-partial{background:#fef3c7;background:var(--amber-light);color:#92400e}.pts-zero{background:#fee2e2;background:var(--red-light);color:#991b1b}.admin-notice{background:#1c1000;border:1px solid #92400e;border-radius:6px;border-radius:var(--radius-sm);color:#d97706;color:var(--amber);font-size:13px;margin-bottom:14px;padding:10px 12px}.admin-notice,.result-input-row{align-items:center;display:flex;gap:8px}.result-input{background:#052e16;border:1px solid #166534;border-radius:6px;border-radius:var(--radius-sm);color:#4ade80;flex:1 1;font-size:14px;font-weight:600;padding:7px 10px;text-align:center}.result-input:focus{border-color:#4ade80;border-color:var(--green-mid);outline:none}.result-input::placeholder{color:#166534;font-weight:400}.nep-select{padding:7px 8px}.confirm-btn,.nep-select{background:#334155;background:var(--surface2);border:1px solid #334155;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text);cursor:pointer;font-size:13px}.confirm-btn{align-items:center;display:flex;gap:4px;padding:7px 12px;white-space:nowrap}.confirm-btn:hover{color:#4ade80;color:var(--green-mid)}.confirm-btn-saved,.confirm-btn:hover{border-color:#4ade80;border-color:var(--green-mid)}.confirm-btn-saved{background:#dcfce7;background:var(--green-light);color:#15803d}.standings-wrap{overflow-x:auto}.standings-table{border-collapse:collapse;font-size:13px;width:100%}.standings-table th{border-bottom:1px solid #334155;border-bottom:1px solid var(--border);color:#64748b;color:var(--text-dim);font-size:11px;font-weight:600;letter-spacing:.08em;padding:7px 10px;text-align:left;text-transform:uppercase}.standings-table td{border-bottom:1px solid #334155;border-bottom:1px solid var(--surface2);padding:9px 10px}.standings-table tr:last-child td{border-bottom:none}.standings-table tr.top-1 td{background:#eab3080f}.standings-table tr.top-2 td{background:#94a3b80d}.standings-table tr.top-3 td{background:#b4783c0d}.rank-cell{font-size:15px;width:28px}.num-col{color:#94a3b8;color:var(--text-muted);text-align:right;width:44px}.total-col{color:#f1f5f9!important;color:var(--text)!important;font-weight:600}.name-bar-wrap{align-items:center;display:flex;gap:8px}.player-name{font-size:13px;font-weight:500;min-width:70px}.bar-track{background:#334155;background:var(--surface2);border-radius:2px;flex:1 1;height:3px}.bar-fill{background:#38bdf8;background:var(--accent);border-radius:2px;height:100%;transition:width .5s ease}.summary-card{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);margin-bottom:6px;overflow:hidden}.summary-header{align-items:center;background:none;border:none;color:#f1f5f9;color:var(--text);cursor:pointer;display:flex;gap:10px;justify-content:space-between;padding:12px 14px;text-align:left;width:100%}.summary-header:hover{background:#334155;background:var(--surface2)}.summary-match-info{display:flex;flex-direction:column;gap:2px}.summary-teams{font-size:13px;font-weight:600}.summary-right{align-items:center;display:flex;flex-shrink:0;gap:10px}.summary-result{color:#38bdf8;color:var(--accent);font-size:13px;font-weight:600}.summary-chevron{color:#64748b;color:var(--text-dim);font-size:10px}.summary-body{border-top:1px solid #334155;border-top:1px solid var(--border);overflow-x:auto}.summary-table{border-collapse:collapse;font-size:12px;width:100%}.summary-table th{border-bottom:1px solid #334155;border-bottom:1px solid var(--border);color:#64748b;color:var(--text-dim);font-size:11px;font-weight:600;letter-spacing:.06em;padding:7px 12px;text-align:left;text-transform:uppercase}.summary-table td{border-bottom:1px solid #334155;border-bottom:1px solid var(--surface2);padding:8px 12px}.summary-table tr:last-child td{border-bottom:none}.summary-player{font-weight:500}.empty-state,.no-pred{color:#64748b;color:var(--text-dim)}.empty-state{align-items:center;display:flex;flex-direction:column;font-size:14px;gap:10px;padding:3rem 1rem;text-align:center}.empty-icon{font-size:32px}.cta-btn{background:#38bdf8;background:var(--accent);border:none;border-radius:6px;border-radius:var(--radius-sm);color:#0f172a;color:var(--bg);cursor:pointer;font-size:14px;font-weight:600;padding:8px 18px}.loading{color:#94a3b8;color:var(--text-muted);font-size:14px;padding:2rem;text-align:center}.auto-status{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:12px;height:24px;justify-content:center;width:24px}.auto-status.saving{animation:spin 1s linear infinite;color:#64748b;color:var(--text-dim)}.auto-status.saved{color:#16a34a;color:var(--green)}.auto-status.error{color:#dc2626;color:var(--red);font-weight:700}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.modal-section{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.modal-current{align-items:center;background:#0c4a6e;background:var(--accent-bg);border:1px solid #38bdf8;border:1px solid var(--accent);border-radius:6px;border-radius:var(--radius-sm);color:#38bdf8;color:var(--accent);cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:12px 14px}.modal-change-btn{background:none;border:1px solid #334155;border:1px solid var(--border);border-radius:6px;border-radius:var(--radius-sm);color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:13px;padding:8px 12px}.modal-change-btn:hover{border-color:#475569;border-color:var(--border-light);color:#f1f5f9;color:var(--text)}.modal-new-btn{background:#334155;background:var(--surface2);border:1px dashed #475569;border:1px dashed var(--border-light);border-radius:6px;border-radius:var(--radius-sm);color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:14px;padding:10px;width:100%}.modal-new-btn:hover{border-color:#38bdf8;border-color:var(--accent);color:#f1f5f9;color:var(--text)}.modal-hint{color:#94a3b8;color:var(--text-muted);font-size:13px;margin-bottom:8px}.modal-error{color:#dc2626;color:var(--red);font-size:12px;margin-top:6px}.modal-back{background:none;border:none;color:#94a3b8;color:var(--text-muted);cursor:pointer;font-size:13px;margin-top:10px;padding:4px 0}.modal-back:hover{color:#f1f5f9;color:var(--text)}.player-badge-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.summary-legend{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.legend-item{border-radius:20px;font-size:11px;font-weight:500;padding:3px 9px}.legend-perfect{background:#4ade8026;border:1px solid #4ade804d;color:#4ade80}.legend-good{background:#4ade8014;border:1px solid #4ade8033;color:#86efac}.legend-partial{background:#fbbf241a;border:1px solid #fbbf2440;color:#fbbf24}.legend-zero{background:#ef444414;border:1px solid #ef444433;color:#f87171}.summary-avg{background:#334155;background:var(--surface2);color:#94a3b8;color:var(--text-muted)}.summary-avg,.summary-perfect{border-radius:20px;font-size:11px;padding:2px 7px}.summary-perfect{background:#4ade801a;color:#4ade80;font-weight:600}.summary-table tr.row-perfect{background:#4ade8014}.summary-table tr.row-good{background:#4ade800a}.summary-table tr.row-partial{background:#fbbf240d}.summary-table tr.row-zero{background:#ef44440d}.nep-correct,.summary-score.exact-score{color:#4ade80;font-weight:700}.pts-col{text-align:right;width:52px}.winner-card{background:linear-gradient(135deg,#eab3081a,#eab3080a);border:1px solid #eab30859;border-radius:10px;border-radius:var(--radius);margin-bottom:14px;padding:14px 16px}.winner-label{align-items:center;display:flex;gap:10px;margin-bottom:10px}.winner-trophy{font-size:24px;line-height:1}.winner-title{color:#fbbf24;font-size:14px;font-weight:600}.winner-hint{color:#64748b;color:var(--text-dim);font-size:11px;margin-top:2px}.winner-input-row{align-items:center;display:flex;gap:8px}.winner-input{background:#00000040;border:1px solid #eab3084d;border-radius:6px;border-radius:var(--radius-sm);color:#f1f5f9;color:var(--text);flex:1 1;font-size:14px;font-weight:500;padding:8px 12px}.winner-input:focus{border-color:#fbbf24;outline:none}.winner-input::placeholder{color:#64748b;color:var(--text-dim);font-weight:400}.dashboard{display:flex;flex-direction:column;gap:16px}.dash-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.dash-card{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);padding:14px 12px;text-align:center}.dash-label{color:#64748b;color:var(--text-dim);font-size:11px;font-weight:600;letter-spacing:.08em;margin-bottom:6px;text-transform:uppercase}.dash-big{font-size:28px;font-weight:700;line-height:1.1;margin-bottom:4px}.dash-sub{color:#94a3b8;color:var(--text-muted);font-size:11px}.dash-rank{border-color:#eab3084d}.dash-pts{border-color:#38bdf84d}.dash-winner{border-color:#4ade804d}.dash-section{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);overflow:hidden}.dash-section-title{align-items:center;border-bottom:1px solid #334155;border-bottom:1px solid var(--border);color:#64748b;color:var(--text-dim);display:flex;font-size:12px;font-weight:600;justify-content:space-between;letter-spacing:.06em;padding:10px 14px;text-transform:uppercase}.dash-link{background:none;border:none;color:#38bdf8;color:var(--accent);cursor:pointer;font-size:12px;font-weight:500}.dash-match{align-items:center;border-bottom:1px solid #334155;border-bottom:1px solid var(--surface2);display:flex;gap:10px;justify-content:space-between;padding:10px 14px}.dash-match:last-child{border-bottom:none}.dash-match-teams{font-size:13px;font-weight:500}.dash-match-sub{color:#94a3b8;color:var(--text-muted);font-size:11px;margin-top:2px}.dash-match-right{align-items:center;display:flex;flex-shrink:0;gap:8px}.dash-match-time{color:#64748b;color:var(--text-dim);font-size:11px}.dash-no-pred{color:#38bdf8;color:var(--accent);cursor:pointer;font-size:12px;white-space:nowrap}.stats-section{background:#1e293b;background:var(--surface);border:1px solid #334155;border:1px solid var(--border);border-radius:10px;border-radius:var(--radius);margin-bottom:12px;overflow:hidden}.stats-title{border-bottom:1px solid #334155;border-bottom:1px solid var(--border);color:#f1f5f9;color:var(--text);font-size:13px;font-weight:600;padding:10px 14px}.stat-row{align-items:center;border-bottom:1px solid #334155;border-bottom:1px solid var(--surface2);display:flex;gap:10px;padding:9px 14px}.stat-row:last-child{border-bottom:none}.stat-rank{flex-shrink:0;font-size:14px;text-align:center;width:24px}.stat-name-bar{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.stat-name{font-size:13px;font-weight:500;min-width:70px}.stat-value-wrap{flex-shrink:0;text-align:right}.stat-value{display:block;font-size:14px;font-weight:600}.stat-sub{color:#94a3b8;color:var(--text-muted);font-size:11px}.winner-summary-card{background:linear-gradient(135deg,#eab30814,#eab30808);border:1px solid #eab3084d;border-radius:10px;border-radius:var(--radius);margin-bottom:14px;padding:14px}.winner-summary-title{color:#fbbf24;font-size:13px;font-weight:600;margin-bottom:12px}.winner-summary-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.winner-summary-item{background:#0003;border-radius:6px;border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:2px;padding:8px 10px}.winner-summary-item.has-pick{border:1px solid #eab30833}.winner-summary-item.no-pick{border:1px solid #334155;border:1px solid var(--border);opacity:.5}.winner-summary-name{color:#94a3b8;color:var(--text-muted);font-size:11px}.winner-summary-pick{color:#f1f5f9;color:var(--text);font-size:13px;font-weight:600}
/*# sourceMappingURL=main.d0f2c0ae.css.map*/