:root{font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.4}body{color:#1b2430;background:#f4f7fb;margin:0}.page{max-width:760px;margin:0 auto;padding:3rem 1rem}.card{background:#fff;border:1px solid #d8dfeb;border-radius:.75rem;margin:1rem 0;padding:1rem}.simulation-card>h3{margin-top:0}.card.ok{border-color:#84cc16}.card.loading{border-color:#60a5fa}.error{color:#dc2626}form{gap:1rem;display:grid}label{gap:.35rem;font-weight:600;display:grid}input,button{font:inherit;padding:.6rem}input,select{box-sizing:border-box;width:100%}.actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.planning-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.planning-list li{flex-wrap:wrap;gap:.75rem;display:flex}.role-login-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:1rem;display:grid}.role-login-card{background:#fff;border:1px solid #d8dfeb;border-radius:.6rem;flex-direction:column;min-width:0;padding:1rem;display:flex}.role-login-card form{margin-top:auto}.role-login-card h3{margin-top:0}.player-input-actions{margin-top:1rem}.button{color:#fff;cursor:pointer;background:#1d4ed8;border:1px solid #1d4ed8;border-radius:.4rem;width:fit-content;padding:.6rem;text-decoration:none;display:inline-block}.button:hover{background:#1e40af;border-color:#1e40af}.button.secondary{color:#1d4ed8;background:#fff}.button.secondary:hover{background:#eff6ff}.button:focus-visible{outline-offset:2px;outline:3px solid #93c5fd}.button:disabled{cursor:wait;opacity:.65}.icon-button{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #dc2626;border-radius:.4rem;place-items:center;width:2.25rem;height:2.25rem;padding:.45rem;display:inline-grid}.icon-button:hover{background:#fef2f2}.icon-button.neutral{color:#475569;border-color:#94a3b8}.icon-button.neutral:hover{background:#f1f5f9}.icon-button:focus-visible{outline-offset:2px;outline:3px solid #93c5fd}.icon-button:disabled{cursor:wait;opacity:.65}.icon-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.2rem;height:1.2rem}.success{color:#15803d;overflow-wrap:anywhere}.lineup{gap:1rem;display:grid}.lineup h3{margin:.5rem 0 0}.settings-panel{gap:1rem;display:grid}.settings-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.settings-heading h3,.settings-heading p{margin:0}.settings-team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}.settings-team-grid label{min-width:0}.settings-teams{gap:1rem;display:grid}.settings-team{border:1px solid #d8dfeb;border-radius:.6rem;gap:1rem;min-width:0;padding:1rem;display:grid}.settings-team legend{color:#1d4ed8;padding:0 .35rem;font-weight:700}.settings-team-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}select{font:inherit;background:#fff;padding:.6rem}.team-card{background:#fff;border:1px solid #d8dfeb;border-radius:.75rem;overflow:hidden;box-shadow:0 4px 14px #1e40af12}.team-card-header{background:linear-gradient(120deg,#eff6ff,#f8fafc);border-bottom:1px solid #d8dfeb;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;display:flex}.team-card-header h4,.team-number,.team-meta{margin:0}.team-card-header h4{font-size:1.05rem}.team-card-actions{align-items:center;gap:.5rem;display:flex}.team-number{color:#1d4ed8;letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.team-meta{color:#64748b;margin-top:.3rem;font-size:.82rem}.league-badge,.status-badge{border-radius:999px;align-items:center;font-size:.78rem;font-weight:700;line-height:1;display:inline-flex}.league-badge{color:#1e40af;white-space:nowrap;background:#dbeafe;padding:.45rem .65rem}.table-scroll{overflow-x:auto}.players-table{border-collapse:collapse;width:100%;min-width:540px}.players-table th,.players-table td{text-align:left;vertical-align:middle;padding:.75rem 1.1rem}.players-table th{color:#64748b;letter-spacing:.05em;text-transform:uppercase;background:#f8fafc;font-size:.75rem}.players-table tbody tr{border-top:1px solid #eef2f7}.players-table tbody tr:hover{background:#f8fbff}.input-status{white-space:nowrap;border-radius:999px;padding:.1rem .35rem;font-size:.75rem;display:inline-block}.input-status.complete{color:#166534;background:#dcfce7}.input-status.missing{color:#92400e;background:#fef3c7}.player-input-summary{color:#64748b;flex-wrap:wrap;align-items:center;gap:.2rem .45rem;margin-top:.3rem;font-size:.8rem;display:flex}.position-column,.position-cell,.qttr-cell{text-align:center!important}.position-cell{color:#1d4ed8;font-weight:800}.external-id{color:#94a3b8;margin-top:.15rem;font-size:.72rem;display:block}.qttr-cell{color:#334155;font-variant-numeric:tabular-nums;font-weight:700}.status-list{flex-wrap:wrap;gap:.35rem;display:flex}.status-badge{color:#92400e;background:#fef3c7;padding:.35rem .5rem}.player-input-fieldset{border:1px solid #d8dfeb;border-radius:.6rem;gap:.75rem;min-width:0;padding:1rem;display:grid}.player-input-fieldset legend{color:#1d4ed8;padding:0 .35rem;font-weight:700}.weekday-options{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.6rem;display:grid}.checkbox-label{align-items:center;gap:.5rem;font-weight:400;display:flex}.checkbox-label input[type=checkbox]{width:auto;margin:0}.player-preference-row{grid-template-columns:2rem minmax(0,1fr) repeat(3,2.5rem);align-items:center;gap:.5rem;display:grid}.player-preference-row>button{box-sizing:border-box;place-items:center;width:2.5rem;height:2.5rem;padding:0;display:grid}.preference-rank{font-weight:700}.muted{color:#94a3b8;font-size:.85rem}@media (width<=600px){.role-login-grid{grid-template-columns:1fr}.team-card-header{flex-direction:column;align-items:flex-start;gap:.6rem}.settings-heading{flex-direction:column;align-items:flex-start}.settings-team-grid{grid-template-columns:1fr}.player-preference-row{grid-template-columns:2rem minmax(0,1fr) repeat(3,2.5rem)}.player-preference-row .icon-button:last-child{grid-column:2/-1}}@media (width>=601px) and (width<=700px){.settings-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.not-found{text-align:center}.not-found-status{color:#dc2626;margin:0;font-size:4rem;font-weight:700;line-height:1}
