:root{--bg:#eef1f6;--card:#fff;--ink:#1e293b;--muted:#64748b;--line:#e2e8f0;--primary:#16a34a;--primary-dark:#15803d;--primary-soft:#dcfce7;--blue:#2563eb;--blue-soft:#dbeafe;--amber:#d97706;--amber-soft:#fef3c7;--danger:#dc2626;--danger-soft:#fef2f2;--radius:16px;--shadow:0 1px 3px rgba(15,23,42,.06),0 8px 24px rgba(15,23,42,.05);--appbar-h:56px;--bottomnav-h:62px;--maxw:720px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5}body,button{color:var(--ink)}button{background:var(--card);border:1px solid var(--line);border-radius:10px;cursor:pointer;font-family:inherit;font-size:.92em;font-weight:600;padding:9px 15px;transition:all .12s ease}button:hover{box-shadow:0 2px 8px rgba(15,23,42,.1);transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{background:var(--card);border:1px solid var(--line);border-radius:11px;color:var(--ink);font-family:inherit;font-size:.95em;padding:10px 13px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);outline:none}h2,h3,h4{margin:0}.lucide{display:inline-block;flex-shrink:0;height:20px;vertical-align:middle;width:20px}.login-screen{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:24px;text-align:center}.login-brand{color:var(--primary-dark);font-size:2.4em;font-weight:800;letter-spacing:-.02em}.login-tag{color:var(--muted);font-size:1.1em;margin:6px 0 28px}.login-box{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);max-width:360px;padding:28px 26px;width:100%}.forgot-form,.login-form,.reset-form{display:flex;flex-direction:column;gap:10px}.forgot-form input,.login-form input,.reset-form input{width:100%}.forgot-form button[type=submit],.login-form button[type=submit],.reset-form button[type=submit]{background:var(--primary);border-color:var(--primary);color:#fff;margin-top:4px}.forgot-form button[type=submit]:hover,.login-form button[type=submit]:hover,.reset-form button[type=submit]:hover{background:var(--primary-dark)}.btn-google{background:#fff;border:1px solid var(--line);color:#3c4043;font-weight:600;width:100%}.btn-google:hover{background:#f7f8f8;box-shadow:none;transform:none}.login-or{align-items:center;color:var(--muted);display:flex;font-size:.9em;gap:10px;margin:14px 0}.login-or:after,.login-or:before{background:var(--line);content:"";flex:1;height:1px}.link-btn{background:transparent;border:0;color:var(--primary-dark);cursor:pointer;font-size:.95em;padding:6px 0}.link-btn:hover{background:transparent;box-shadow:none;text-decoration:underline;transform:none}.login-switch{color:var(--muted);font-size:.95em;margin-top:10px}.login-error{color:var(--danger,#dc2626)}.login-error,.login-msg{font-size:.9em;margin-top:12px}.login-msg{color:var(--primary-dark,#15803d)}.login-section-title{color:var(--primary-dark);font-size:1.1em;font-weight:700;margin:0 0 14px}.appbar{background:var(--card);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top);position:sticky;top:0;z-index:100}.appbar-inner{align-items:center;display:flex;gap:14px;height:var(--appbar-h);margin:0 auto;max-width:var(--maxw);padding:0 16px}.brand{color:var(--primary-dark);font-size:1.25em;font-weight:800;letter-spacing:-.02em;white-space:nowrap}.appbar-group{color:var(--muted);font-size:.95em;font-weight:600;max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}select.appbar-group{border:1px solid var(--line);border-radius:9px;color:var(--ink);padding:6px 10px}.appbar-group-name{background:var(--bg);border-radius:999px;color:var(--ink);padding:5px 13px}.nav-top{display:flex;gap:4px;margin-left:auto}.nav-top .nav-item{align-items:center;background:none;border:none;border-radius:10px;box-shadow:none;color:var(--muted);display:flex;font-size:.95em;font-weight:600;gap:7px;padding:8px 14px}.nav-top .nav-item .nav-ico{display:inline-flex}.nav-top .nav-ico .lucide{height:18px;width:18px}.nav-top .nav-item:hover{background:var(--bg);box-shadow:none;color:var(--ink);transform:none}.nav-top .nav-item.active{background:var(--primary-soft);color:var(--primary-dark)}.nav-bottom{background:var(--card);border-top:1px solid var(--line);bottom:0;box-shadow:0 -2px 12px rgba(15,23,42,.05);display:none;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:100}.nav-bottom .nav-item{align-items:center;background:none;border:none;border-radius:0;box-shadow:none;color:var(--muted);display:flex;flex:1;flex-direction:column;gap:3px;height:var(--bottomnav-h);min-width:0;padding:9px 0 8px}.nav-bottom .nav-item:hover{box-shadow:none;transform:none}.nav-bottom .nav-item:active{background:var(--bg)}.nav-bottom .nav-item .nav-ico{display:inline-flex;line-height:1}.nav-bottom .nav-ico .lucide{height:24px;width:24px}.nav-bottom .nav-item .nav-label{font-size:.7em;font-weight:600;white-space:nowrap}.nav-bottom .nav-item.active{color:var(--primary)}.nav-bottom .nav-item.active .nav-ico{transform:translateY(-1px)}.screen{margin:0 auto;max-width:var(--maxw);padding:20px 16px 40px}.wrap{display:flex;flex-direction:column;gap:16px}.screen-title{font-size:1.5em;font-weight:800;letter-spacing:-.02em;margin-bottom:2px}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px}.card h3{color:var(--muted);font-size:.82em;letter-spacing:.06em;margin-bottom:12px;text-transform:uppercase}.match-card{background:var(--card);border-left:5px solid var(--amber);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px}.match-card.is-confirmed{border-left-color:var(--primary)}.match-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.match-date{font-size:1.15em;font-weight:800;text-transform:capitalize}.match-title{font-size:1.05em;font-weight:700}.match-location,.match-location a,.match-notes{color:var(--muted);font-size:.85em}.match-notes{background:#f8fafc;border-left:3px solid var(--line);border-radius:6px;margin-top:6px;padding:8px 10px;white-space:pre-wrap}.match-meta{color:var(--muted);font-size:.9em;margin-top:3px}.chip{border-radius:999px;display:inline-block;font-size:.72em;font-weight:700;letter-spacing:.04em;padding:3px 11px;text-transform:uppercase;white-space:nowrap}.chip-green{background:var(--primary-soft);color:var(--primary-dark)}.chip-amber{background:var(--amber-soft);color:var(--amber)}.rsvp{margin-top:16px}.rsvp-q{font-weight:700;margin-bottom:9px}.rsvp-btns{display:flex;gap:10px}.respond{align-items:center;border-radius:12px;display:inline-flex;flex:1;font-size:1em;font-weight:700;gap:7px;justify-content:center;padding:12px}.respond .lucide{height:18px;width:18px}.respond.yes.on{background:var(--primary);border-color:var(--primary);color:#fff}.respond.no.on{background:var(--danger);border-color:var(--danger);color:#fff}.status{border-radius:10px;font-size:.92em;font-weight:700;margin:12px 0 0;padding:9px 13px}.status.ok{background:var(--primary-soft);color:var(--primary-dark)}.status.wait{background:var(--amber-soft);color:var(--amber)}.status.no{background:var(--danger-soft);color:var(--danger)}.teams{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.team{border-radius:12px;flex:1;line-height:1.6;min-width:200px;padding:14px 16px}.team-a{background:var(--blue-soft)}.team-b{background:var(--amber-soft)}.team-tag{display:block;font-size:.72em;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.team .tstat{color:var(--muted);font-size:.76em;font-weight:600}.team .names{margin-top:6px}.table-card{overflow:hidden;padding:4px}.member-list{display:flex;flex-direction:column}.member-row{border-bottom:1px solid var(--line);padding:11px 14px}.member-row:last-child{border-bottom:0}.member-row.is-convoked{box-shadow:inset 3px 0 0 var(--primary)}.member-main{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.rate-hint{color:var(--muted);font-size:.85em;margin:-6px 0 0}.player-name-btn{align-items:center;background:none;border:none;box-shadow:none;display:inline-flex;font-size:inherit;gap:4px;min-width:0;padding:0;text-align:left}.player-name-btn:hover{box-shadow:none;transform:none}.pn-caret{color:var(--muted);flex:none;font-size:1.15em;line-height:1;transition:transform .18s ease}.player-name-btn.open .pn-caret{transform:rotate(90deg)}.stat-chips{display:inline-flex;flex:none;gap:6px}.stat-chip{align-items:center;background:#f1f5f9;border-radius:12px;color:var(--muted);display:inline-flex;flex-direction:column;font-size:1.05em;font-weight:800;justify-content:center;line-height:1.15;min-height:46px;min-width:48px;padding:3px 6px}.stat-chip .stat-label{color:var(--muted);font-size:.58em;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.stat-chip.tappable{background:var(--primary-soft);color:var(--primary-dark);cursor:pointer}.stat-chip.tappable:active{background:var(--primary);color:#fff;transform:scale(.96)}.stat-chip.off{opacity:.6}.player-profile{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.pp-stat{background:var(--bg);border-radius:999px;font-size:.82em;font-weight:600;padding:3px 11px}.pp-stat.muted{color:var(--muted);font-weight:500}.player-cell{align-items:center;display:flex;flex:1 1 0;flex-wrap:wrap;gap:6px;min-width:0}.player-name{font-size:1.08em;font-weight:600;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alias{color:var(--muted);font-weight:500}.me{font-size:.7em;font-weight:800;letter-spacing:.03em;padding:2px 7px}.badge,.me{background:var(--primary-soft);border-radius:999px;color:var(--primary-dark);text-transform:uppercase}.badge{display:inline-block;font-size:.68em;font-weight:700;letter-spacing:.04em;padding:2px 8px}.badge.wait{background:var(--amber-soft);color:var(--amber)}tr.waiting{opacity:.65}.sheet-backdrop{background:rgba(15,23,42,.45);inset:0;position:fixed;z-index:300}.sheet{animation:sheetUp .18s ease-out;background:var(--card);border-radius:20px 20px 0 0;bottom:0;box-shadow:0 -8px 32px rgba(15,23,42,.18);left:0;margin:0 auto;max-width:var(--maxw);padding:18px 22px calc(20px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:301}@keyframes sheetUp{0%{opacity:.6;transform:translateY(30%)}to{opacity:1;transform:none}}.sheet-head{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.sheet-name{font-size:1.15em;font-weight:800}.sheet-field{color:var(--muted);font-size:.88em}.sheet-close{background:none;border:none;box-shadow:none;color:var(--muted);padding:8px}.sheet-close:hover{box-shadow:none;color:var(--ink);transform:none}.sheet-value{color:var(--primary-dark);font-size:2.4em;font-variant-numeric:tabular-nums;font-weight:800;margin:6px 0 2px;text-align:center}.rating-slider{accent-color:var(--primary);height:34px;margin:8px 0 14px;width:100%}.quick-rates{display:flex;gap:8px}.quick-rates .quick-rate{flex:1;font-size:1em;font-weight:800;padding:11px 0}.sheet-avg{margin:12px 0 0;text-align:center}.edit-alias{align-items:center;background:none;border:none;box-shadow:none;color:var(--muted);display:inline-flex;padding:2px 5px}.edit-alias .lucide{height:16px;width:16px}.edit-alias:hover{box-shadow:none;color:var(--ink);transform:none}.invite-virtual{background:none;border:none;box-shadow:none;color:var(--blue);cursor:pointer;font-size:.8em;font-weight:600;padding:0 4px;text-decoration:underline}.invite-virtual:hover{background:none;box-shadow:none;color:#1d4ed8;transform:none}.virtual-wrap{align-items:center;display:inline-flex;position:relative}.virtual-info{color:var(--blue);cursor:default;display:inline-flex}.virtual-info .lucide{height:16px;width:16px}.virtual-tip{background:#1e293b;border-radius:7px;color:#fff;display:none;font-size:.72em;line-height:1.4;max-width:220px;padding:5px 10px;pointer-events:none;position:fixed;text-align:left;width:max-content;z-index:9999}.inline-panel{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.inline-panel input{flex:1;font-size:.85em;min-width:130px;padding:6px 10px}.inline-panel .alias-save,.inline-panel .invite-send{background:var(--primary);border:none;border-radius:9px;color:#fff;font-size:.82em;padding:6px 12px;white-space:nowrap}.inline-panel .alias-save:hover,.inline-panel .invite-send:hover{background:var(--primary-dark);box-shadow:none;transform:none}.inline-panel .alias-remove{background:var(--danger-soft);border-color:#fecaca;border-radius:9px;color:var(--danger);font-size:.82em;padding:6px 12px;white-space:nowrap}.inline-panel .alias-remove:hover{background:#fee2e2;box-shadow:none;transform:none}.inline-panel .alias-cancel,.inline-panel .invite-cancel{align-items:center;background:none;border:none;box-shadow:none;color:var(--muted);display:inline-flex;padding:4px}.inline-panel .alias-cancel .lucide,.inline-panel .invite-cancel .lucide{height:16px;width:16px}.inline-panel .alias-cancel:hover,.inline-panel .invite-cancel:hover{box-shadow:none;color:var(--ink);transform:none}.match-admin{border-top:4px solid var(--primary)}@keyframes matchHighlight{0%{box-shadow:0 0 0 3px var(--primary),0 4px 24px rgba(22,163,74,.25);transform:scale(1.018)}55%{box-shadow:0 0 0 3px var(--primary),0 4px 24px rgba(22,163,74,.25);transform:scale(1.018)}to{box-shadow:none;transform:scale(1)}}.match-new{animation:matchHighlight 1.8s ease-out forwards;scroll-margin-top:72px}.schedule-error{color:var(--danger,#dc2626);font-size:.88em;margin-top:6px}.online-panel{align-items:center;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;padding:10px 0 14px}.online-title{color:var(--muted);font-size:.88em;width:100%}.pill{background:var(--primary-soft);border-radius:12px;color:var(--primary-dark);font-size:.8em;padding:3px 10px}.pos-badge{border-radius:10px;display:inline-block;font-size:.7em;font-weight:700;line-height:1.6;margin-left:4px;padding:1px 5px;vertical-align:middle}.pos-in{background:var(--primary-soft);color:var(--primary-dark)}.pos-wait{background:var(--amber-soft);color:var(--amber)}.avg-label{color:var(--muted);display:block;font-size:.72em;margin-top:2px;text-align:center}.meta-edit{background:none;border:none;box-shadow:none;color:var(--muted);font-size:.78em;min-width:0;padding:2px 5px}.meta-edit:hover{box-shadow:none;color:var(--ink);transform:none}.meta-edit-row{align-items:center;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;padding:10px 0}.meta-edit-row input[type=datetime-local]{flex:2;font-size:.88em;min-width:160px;padding:7px 10px}.meta-edit-row input[type=number]{font-size:.88em;padding:7px 10px;text-align:center;width:70px}.meta-edit-row input[type=text]{flex:2;font-size:.88em;min-width:140px;padding:7px 10px}.meta-edit-row textarea{flex:1 0 100%;font-family:inherit;font-size:.88em;padding:7px 10px;resize:vertical}.meta-edit-row button{font-size:.88em;padding:7px 13px}.match-admin .hint{color:var(--muted);font-size:.86em;margin:8px 0 12px}table.roster{border-collapse:collapse;margin:4px 0;width:100%}table.roster thead th{background:#f8fafc;border-bottom:1px solid var(--line);color:var(--muted);font-size:.72em;letter-spacing:.05em;padding:8px 10px;text-align:left;text-transform:uppercase}table.roster td.center,table.roster th.center{text-align:center}table.roster tbody td{border-bottom:1px solid var(--line);padding:8px 10px}table.roster tbody tr:last-child td{border-bottom:0}.roster .conv{accent-color:var(--primary);height:18px;width:18px}.roster .gk-conv,.roster .prio-conv{accent-color:var(--amber);height:18px;width:18px}.att{font-size:.8em;margin:0 2px;padding:4px 10px}.att.yes.on{background:var(--primary);border-color:var(--primary);color:#fff}.att.no.on{background:var(--danger);border-color:var(--danger);color:#fff}.match-actions{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}.send-roster{background:var(--primary);border-color:var(--primary);color:#fff}.send-roster:hover:not(:disabled){background:var(--primary-dark)}.send-mix{background:var(--primary);border-color:var(--primary);color:#fff}.send-mix:hover:not(:disabled){background:var(--primary-dark)}.cancel-match{background:var(--danger-soft);border-color:#fecaca;color:var(--danger)}.match-opt{font-size:.9em;margin:0 0 10px}.match-opt input{accent-color:var(--amber)}.manual-editor{background:#f8fafc;border:1px dashed var(--line);border-radius:10px;margin:10px 0 4px;padding:12px}.manual-counts{color:var(--muted);display:flex;flex-direction:column;font-size:.9em;gap:3px;margin:0 0 8px}.manual-counts .mc{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.mc-dot{border-radius:50%;display:inline-block;height:10px;width:10px}.mc-dot-1{background:var(--blue)}.mc-dot-2{background:var(--amber)}.mc-stat{font-size:.85em}.manual-row{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:10px;justify-content:space-between;padding:5px 0}.manual-row:last-of-type{border-bottom:0}.manual-name{font-weight:600}.seg{display:inline-flex;gap:4px}.seg .mteam{font-size:.82em;min-height:40px;min-width:44px;padding:8px 12px}.seg .mteam:first-child.on{background:var(--blue);border-color:var(--blue);color:#fff}.seg .mteam:nth-child(2).on{background:var(--amber);border-color:var(--amber);color:#fff}.seg .mteam:nth-child(3).on{background:var(--muted);border-color:var(--muted);color:#fff}.manual-confirm{background:var(--primary);border-color:var(--primary);color:#fff}.manual-confirm:hover:not(:disabled){background:var(--primary-dark)}.archive-title{color:var(--muted);font-size:1em;margin:22px 0 10px}.invite-banner{align-items:center;background:var(--primary-soft);border:1px solid var(--primary);border-radius:var(--radius);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:14px;padding:12px 14px}.invite-banner-text{color:var(--primary-dark)}.invite-banner-actions{display:inline-flex;gap:8px}.invite-banner .membership-accept{background:var(--primary);border-color:var(--primary);color:#fff}.invite-banner .membership-accept:hover{background:var(--primary-dark)}.invite-banner .membership-decline{background:transparent;color:var(--muted)}.history{margin-top:22px}.history-toggle{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:1em;margin:22px 0 10px;padding:8px 2px;text-align:left;width:100%}.history-toggle:hover{background:transparent;box-shadow:none;color:var(--text);transform:none}.arch-head-right{align-items:center;display:inline-flex;gap:8px}.arch-head,.hide-match{cursor:pointer}.hide-match{background:transparent;border:0;color:var(--muted);line-height:0;padding:4px}.hide-match:hover{background:transparent;box-shadow:none;color:var(--danger,#dc2626);transform:none}.hide-match .lucide{height:15px;width:15px}.match-admin.archived,.match-card.archived{opacity:.82}.match-admin.archived .match-head{margin-bottom:6px}.pair-pill{align-items:center;display:inline-flex;gap:6px;margin:0 6px 8px 0}.pair-pill button{line-height:1;padding:2px 6px}.pair-pill button .lucide{height:13px;width:13px}.pair-form select{flex:1;min-width:130px}.notify-toggle{align-items:center;cursor:pointer;display:flex;font-weight:600;gap:10px}.notify-toggle input{accent-color:var(--primary);height:18px;width:18px}.notify-toggle+.notify-toggle{margin-top:10px}.group-options{flex-basis:100%;text-align:left}.group-options .hint{margin:8px 0 0}.card form{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}.card form:last-child{margin-bottom:0}.card form input[type=email],.card form input[type=text],.fp-input{flex:1;min-width:180px}.fp-input{cursor:pointer}.inline-num{align-items:center;color:var(--muted);display:inline-flex;font-size:.9em;gap:6px}.inline-num input{width:72px}.flatpickr-day.endRange,.flatpickr-day.selected,.flatpickr-day.selected:hover,.flatpickr-day.startRange{background:var(--primary);border-color:var(--primary)}.flatpickr-day:hover:not(.selected){background:#dbeafe;border-color:transparent}.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-months .flatpickr-month,.flatpickr-weekdays{background:var(--primary)}.flatpickr-current-month,.flatpickr-weekday{color:#fff}.flatpickr-time .flatpickr-am-pm:focus,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time input:hover{background:#dbeafe}.numInputWrapper:hover{background:#eff6ff}.flatpickr-calendar{border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12)}.flatpickr-calendar.arrowTop:after,.flatpickr-calendar.arrowTop:before{border-bottom-color:var(--primary)}.card form button{background:var(--primary);border-color:var(--primary);color:#fff}.card form button:hover{background:var(--primary-dark)}.pending{color:var(--muted);font-size:.88em;margin:10px 0 0}.pill{background:#f1f5f9;border-radius:999px;display:inline-block;font-size:.82em;font-weight:600;margin:2px;padding:3px 11px}.account-card{gap:14px}.account-card,.avatar{align-items:center;display:flex}.avatar{background:var(--primary);border-radius:50%;color:#fff;flex-shrink:0;font-size:1.4em;font-weight:800;height:52px;justify-content:center;width:52px}.account-info{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.account-info .display-name-input{font-size:1.05em;font-weight:600;width:100%}.account-user{color:var(--muted);font-size:.85em}.account-session{display:flex}.account-session .logout{background:transparent;border-color:var(--line);color:var(--danger,#dc2626);width:100%}.account-session .logout:hover{background:#fef2f2;box-shadow:none;transform:none}.change-pass{display:flex;flex-direction:column;gap:8px}.super-admin{border-top:4px solid var(--amber)}.super-admin .create-group{align-items:stretch;flex-direction:column}.sa-group{border-top:1px solid var(--line);padding:12px 0}.sa-group:first-of-type{border-top:0}.sa-group-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.sa-notify{color:var(--muted);font-size:.8em}.delete-group{background:none;border:none;box-shadow:none;color:var(--danger);font-size:.85em;font-weight:700;margin-left:auto;padding:2px 6px}.delete-group:hover{box-shadow:none;text-decoration:underline;transform:none}.sa-members{align-items:center;display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.sa-members .pill button{align-items:center;background:none;border:none;box-shadow:none;color:var(--danger);display:inline-flex;margin-left:3px;padding:0 2px;vertical-align:middle}.sa-members .pill button .lucide{height:13px;width:13px}.sa-members .pill button:hover{box-shadow:none;transform:none}.sa-adduser-form{margin:4px 0 0}.sa-adduser-form input{min-width:140px}.virtual-section{margin-top:10px}.virtual-section summary{color:var(--primary);cursor:pointer;font-size:.88em;padding:2px 0}.virtual-section summary::-webkit-details-marker{display:none}.virtual-section .create-virtual-form{margin-top:6px}.roster-counter{color:var(--ink);font-weight:600}.pending-list{margin-top:12px}.pending-title{color:var(--muted);font-size:.82em;letter-spacing:.04em;margin:0 0 6px;text-transform:uppercase}.pending-pill{align-items:center;display:inline-flex;gap:5px;margin:2px 4px 2px 0}.pending-label{color:var(--muted);font-size:.78em;font-style:italic}.cancel-pending-member{background:none;border:none;box-shadow:none;color:var(--muted);cursor:pointer;line-height:1;padding:0 1px;transform:none}.cancel-pending-member:hover{box-shadow:none;color:var(--danger);transform:none}.cancel-pending-member .lucide{height:12px;width:12px}.empty-state{padding:60px 24px;text-align:center}.empty-icon{color:var(--muted);margin-bottom:12px}.empty-icon .lucide{height:46px;opacity:.85;width:46px}.empty-title{font-size:1.15em;font-weight:700;margin:0 0 6px}.empty-sub{color:var(--muted);margin:0}@media (max-width:767px){.nav-top{display:none}.nav-bottom{display:flex}body{padding-bottom:calc(var(--bottomnav-h) + env(safe-area-inset-bottom))}.teams{flex-direction:column}.team{min-width:0}}@media (min-width:768px){.nav-bottom{display:none}.screen{padding-top:26px}}.screen-head{align-items:center;display:flex;gap:10px;justify-content:space-between}.screen-head .screen-title{margin-bottom:0}.new-match-toggle{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:700;min-height:42px;padding:9px 15px}.new-match-toggle:hover{background:var(--primary-dark)}.stepper{gap:4px;margin:12px 0 4px}.step,.stepper{align-items:center;display:flex}.step{flex:1;flex-direction:column;gap:3px;position:relative}.step:not(:first-child):before{background:var(--line);content:"";height:2px;position:absolute;right:50%;top:12px;transform:translateX(-14px);width:100%;z-index:0}.step.current:not(:first-child):before,.step.done:not(:first-child):before{background:var(--primary)}.step-dot{align-items:center;background:var(--card);border-radius:50%;box-shadow:inset 0 0 0 2px var(--line);color:var(--muted);display:flex;font-size:.72em;font-weight:800;height:25px;justify-content:center;width:25px;z-index:1}.step.done .step-dot{background:var(--primary);box-shadow:none;color:#fff}.step.current .step-dot{background:var(--card);box-shadow:inset 0 0 0 2px var(--primary);color:var(--primary-dark)}.step-label{color:var(--muted);font-size:.66em;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.step-hint,.step.current .step-label,.step.done .step-label{color:var(--primary-dark)}.step-hint{font-size:.88em;font-weight:600;margin:6px 0 4px}.roster-details{border-top:1px solid var(--line);margin-top:12px}.roster-details summary{color:var(--muted);cursor:pointer;font-size:.92em;font-weight:600;list-style:none;padding:12px 2px}.roster-details summary::-webkit-details-marker{display:none}.roster-details summary:before{content:"▸ "}.roster-details[open] summary:before{content:"▾ "}.team-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.team-tools .share-teams{flex:1;min-height:44px}.team-tools .team-names-edit{align-items:center;display:inline-flex;gap:5px;min-height:44px}.team-tools .team-names-edit .lucide{height:15px;width:15px}.share-roster{min-height:44px}.th-ico .th-sub{display:block;font-size:.82em;letter-spacing:.03em}.history-month{color:var(--muted);font-size:.8em;font-weight:700;letter-spacing:.05em;margin:14px 0 6px;text-transform:uppercase}.history-card{padding:4px}.hist-row-wrap{border-bottom:1px solid var(--line)}.hist-row-wrap:last-child{border-bottom:0}.hist-row{align-items:center;background:none;border:none;border-radius:0;box-shadow:none;display:flex;font-size:1em;gap:8px;justify-content:space-between;min-height:46px;padding:12px;text-align:left;width:100%}.hist-row:hover{background:var(--bg);box-shadow:none;transform:none}.hist-date{font-weight:600;text-transform:capitalize}.hist-title{color:var(--muted);font-weight:500}.hist-score{background:var(--primary-soft);border-radius:999px;color:var(--primary-dark);font-size:1.05em;font-variant-numeric:tabular-nums;font-weight:800;padding:2px 11px}.hist-detail{padding:0 12px 12px}.hist-detail .hide-match{align-items:center;color:var(--muted);display:inline-flex;font-size:.85em;gap:5px;margin-top:10px}.toast{background:#1e293b;border-radius:999px;bottom:calc(var(--bottomnav-h) + 18px + env(safe-area-inset-bottom));box-shadow:0 8px 24px rgba(15,23,42,.3);color:#fff;font-size:.92em;font-weight:600;left:50%;max-width:calc(100vw - 40px);opacity:0;overflow:hidden;padding:11px 20px;pointer-events:none;position:fixed;text-overflow:ellipsis;transform:translateX(-50%) translateY(12px);transition:all .25s ease;white-space:nowrap;z-index:400}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}@media (min-width:768px){.toast{bottom:26px}}.edit-alias,.hide-match,.meta-edit{align-items:center;display:inline-flex;justify-content:center;min-height:40px;min-width:40px}.att{min-height:38px;min-width:52px}.team-head{align-items:center;display:flex;gap:10px;justify-content:space-between;min-height:28px}.tgoals{border-radius:999px;color:#fff;flex:none;font-size:1.25em;font-weight:800;line-height:1.2;min-width:34px;padding:3px 10px;text-align:center}.team-a .tgoals{background:var(--blue)}.team-b .tgoals{background:var(--amber)}.tgoals.lost{background:transparent;box-shadow:inset 0 0 0 2px var(--line);color:var(--muted)}.result-row{padding-top:6px}.result-edit-box{border-top:1px solid var(--line);margin-top:6px}.result-edit-box .hint{margin:6px 0 2px}.rs-label{color:var(--muted);font-size:.88em}.rs-goals{display:flex;flex-direction:column;gap:4px;padding-bottom:6px}.rs-goal-row{align-items:center;display:flex;font-size:.9em;gap:8px;justify-content:space-between}.rs-goal-row input[type=number]{font-size:.9em;padding:5px 8px;text-align:center;width:62px}.my-record{color:var(--muted);font-size:.85em;margin:4px 0 8px}.summary-grid{display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.sum-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2px;padding:12px 4px;text-align:center}.sum-num{color:var(--primary-dark);font-size:1.35em;font-weight:800;line-height:1.1}.sum-lbl{color:var(--muted);font-size:.62em;letter-spacing:.03em;text-transform:uppercase}.st-card{padding:16px 0 6px}.st-card h3{margin-bottom:8px;padding:0 16px}.st-head,.st-row{align-items:center;display:grid;gap:4px;grid-template-columns:20px 1fr 26px 22px 22px 22px 42px;padding:9px 14px}.st-head{color:var(--muted);font-size:.66em;letter-spacing:.04em;padding-bottom:4px;padding-top:0;text-transform:uppercase}.st-row{border-top:1px solid var(--line)}.st-row.is-first{background:var(--primary-soft)}.st-row.is-me .st-name{font-weight:800}.st-pos{color:var(--muted);font-size:.82em;font-weight:700;text-align:center}.st-name{font-size:.93em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-num{font-size:.9em;font-variant-numeric:tabular-nums;text-align:center}.st-w{color:var(--primary-dark);font-weight:700}.st-l{color:var(--danger)}.st-pct{font-size:.93em;font-variant-numeric:tabular-nums;font-weight:800;text-align:right}.st-streak{background:var(--line);border-radius:999px;color:var(--muted);display:inline-block;font-size:.7em;font-weight:800;padding:1px 6px;vertical-align:middle}.st-streak.s-win{background:var(--primary-soft);color:var(--primary-dark)}.st-streak.s-loss{background:var(--danger-soft);color:var(--danger)}.sc-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:8px;grid-template-columns:20px 1fr auto;padding:9px 14px}.sc-goals,.sc-row.is-me .st-name{font-weight:800}.sc-goals{background:var(--primary-soft);border-radius:999px;color:var(--primary-dark);font-size:.9em;font-variant-numeric:tabular-nums;padding:2px 10px}