*,:before,:after{box-sizing:border-box;margin:0;padding:0}.tag-main.tag-fs,:root{--clr-ice:#e8f4fd;--clr-dark:#0d1b2a;--clr-mid:#1b2e45;--clr-accent:#0d9488;--clr-accent2:#14b8a6;--clr-accent-fill:#0f766e;--clr-accent-text:#14b8a6;--clr-danger:#fc8181;--clr-red:#e53e3e;--clr-green:#38a169;--clr-gold:#d69e2e;--clr-text:#e2e8f0;--clr-muted:#94a3b8;--clr-ink-rgb:255, 255, 255;--clr-border:rgba(var(--clr-ink-rgb), .08);--clr-surface:#162236;--clr-btn-bg:#22324a;--clr-btn-border:rgba(var(--clr-ink-rgb), .18);--clr-field-bg:#0f2033;--clr-teal-soft:#38b2ac;--clr-purple-soft:#b794f4;--clr-red-soft:#fc8181;--clr-green-soft:#68d391;--clr-amber:#f59e0b;--clr-green-strong:#16a34a;--clr-green-bright:#22c55e;--clr-emerald:#10b981;--clr-blue:#3b82f6;--clr-red-strong:#ef4444;--clr-rose:#f43f5e;--clr-teal-bright:#2dd4bf;--clr-yellow:#e5d35a;--clr-grey-1:#888;--clr-grey-2:#999;--clr-code-bg:#0f172a;--clr-error-bg:#2d1b1b;--clr-ex-on-border:#5d8;--clr-ex-on-bg:#1f4030;--clr-ex-on-text:#dfe;--clr-ex-off-border:#555;--clr-ex-off-text:#999;--clr-ex-link:#88c;--clr-ex-head-bg:#182030;--clr-ex-line:#333;--clr-ex-line-soft:#222;--clr-ex-badge-bg:#334;--clr-ex-badge-text:#abd;--clr-data:#6b8cae;--radius:10px;--shadow:0 4px 24px #0006}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--clr-ice:#0f2a44;--clr-dark:#f3f5f8;--clr-mid:#fff;--clr-accent:#0f766e;--clr-accent2:#0f766e;--clr-accent-fill:#0f766e;--clr-accent-text:#0b5a54;--clr-danger:#9b1c1c;--clr-red:#c53030;--clr-green:#2f7d4f;--clr-gold:#9a6110;--clr-text:#172233;--clr-muted:#586274;--clr-ink-rgb:15, 23, 42;--clr-border:rgba(var(--clr-ink-rgb), .12);--clr-surface:#fff;--clr-data:#4f6f91;--shadow:0 1px 2px #0f172a0f, 0 2px 8px #0f172a0d;--clr-btn-bg:#fff;--clr-btn-border:rgba(var(--clr-ink-rgb), .24);--clr-field-bg:#fff;--clr-teal-soft:#0f766e;--clr-purple-soft:#7e3fbf;--clr-red-soft:#c53030;--clr-green-soft:#2f7d4f;--clr-amber:#a15c07;--clr-green-strong:#15803d;--clr-green-bright:#15803d;--clr-emerald:#047857;--clr-blue:#1d4ed8;--clr-red-strong:#b91c1c;--clr-rose:#be123c;--clr-teal-bright:#0f766e;--clr-yellow:#7a5b00;--clr-grey-1:#5b6575;--clr-grey-2:#5b6575;--clr-code-bg:#f1f5f9;--clr-error-bg:#fde8e8;--clr-ex-on-border:#15803d;--clr-ex-on-bg:#e7f6ec;--clr-ex-on-text:#14532d;--clr-ex-off-border:#c3cad5;--clr-ex-off-text:#5b6575;--clr-ex-link:#4c4c9c;--clr-ex-head-bg:#e8edf3;--clr-ex-line:#d5dbe3;--clr-ex-line-soft:#e5e9ef;--clr-ex-badge-bg:#e3e8f4;--clr-ex-badge-text:#33447a;--ev-game:#2563eb;--ev-tournament:#8b3fd9;--ev-scrimmage:#a15c07;--ev-practice:#15803d;--ev-tryout:#5b6b80;--ev-event:#475569;--ev-on:#fff}body{background:var(--clr-dark);color:var(--clr-text);min-height:100vh;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5}:where(a:not([class])),:where(a:not([class]):visited){color:var(--clr-accent-text)}.app-header{background:var(--clr-mid);border-bottom:1px solid var(--clr-border);z-index:100;box-shadow:var(--shadow);position:sticky;top:0}.header-inner{align-items:center;gap:2rem;max-width:1280px;height:60px;margin:0 auto;padding:0 1.5rem;display:flex}.logo{color:var(--clr-text);white-space:nowrap;align-items:center;gap:.5rem;font-size:1.1rem;display:flex}.header-logo-img{width:auto;height:36px}.main-nav{gap:.25rem;display:flex}.nav-btn{color:var(--clr-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:.4rem .9rem;font-size:.875rem;font-weight:500;transition:all .15s}.nav-btn:hover{color:var(--clr-text);border-color:var(--clr-border)}.nav-btn.active{background:var(--clr-accent-fill);border-color:var(--clr-accent);color:#fff}.nav-dropdown-menu{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:200;min-width:160px;display:none;position:absolute;top:100%;left:0;overflow:hidden}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:block}.nav-dropdown-item{width:100%;color:var(--clr-muted);text-align:left;cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-size:.85rem;transition:all .15s;display:block}.nav-dropdown-item:hover{background:rgba(var(--clr-ink-rgb), .06);color:var(--clr-text)}.nav-dropdown-item.active{color:var(--clr-accent);font-weight:600}.app-main{max-width:1280px;margin:0 auto;padding:2rem 1.5rem}.view{display:none}.view.active{display:block}.section-header{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.section-header h2{font-size:1.4rem;font-weight:700}.badge{background:var(--clr-accent-fill);color:#fff;letter-spacing:.04em;border-radius:99px;padding:.15rem .55rem;font-size:.7rem;font-weight:700}.badge-ok{background:#16a34a}.badge-danger{background:#dc2626}.btn-sm{padding:.25rem .65rem;font-size:.75rem}.btn-xs{background:var(--clr-surface,#1e293b);color:var(--clr-muted,#94a3b8);border:1px solid var(--clr-border,#334155);cursor:pointer;border-radius:4px;padding:.15rem .5rem;font-size:.7rem}.btn-xs:hover{color:var(--clr-text);border-color:#64748b}.btn-danger{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:6px}.btn-success{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:6px}.btn-success:hover{background:#15803d}.shift-player-row:hover{background:#1e90ff14}.shift-player-row.selected-row{border-left:3px solid var(--clr-accent);background:#1e90ff26}.scoreboard-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.game-card{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem 1.25rem;transition:transform .1s}.game-card:hover{transform:translateY(-2px)}.game-card-header{color:var(--clr-muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.75rem;display:flex}.status-badge{border-radius:99px;padding:.2rem .6rem;font-size:.7rem;font-weight:700}.status-live{background:var(--clr-red);color:#fff}.status-scheduled{background:rgba(var(--clr-ink-rgb), .1);color:var(--clr-muted)}.status-completed{color:var(--clr-green);background:#38a16933}.matchup{grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;display:grid}.team-side{text-align:center}.team-abbr{color:var(--clr-text);font-size:1.5rem;font-weight:800}.team-name{color:var(--clr-muted);margin-top:.15rem;font-size:.75rem}.score-divider{flex-direction:column;align-items:center;gap:.1rem;display:flex}.score-display{color:var(--clr-accent2);letter-spacing:-.02em;font-size:2rem;font-weight:900}.period-info{color:var(--clr-muted);text-align:center;font-size:.65rem}.filter-group{gap:.25rem;margin-left:auto;display:flex}.filter-btn{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:6px;padding:.3rem .7rem;font-size:.8rem;font-weight:500;transition:all .15s}.filter-btn:hover{color:var(--clr-text)}.filter-btn.active{background:var(--clr-accent-fill);border-color:var(--clr-accent);color:#fff}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.875rem}thead th{background:var(--clr-mid);color:var(--clr-muted);text-transform:capitalize;text-align:left;border-bottom:1px solid var(--clr-border);white-space:nowrap;padding:.65rem 1rem;font-size:.8rem;font-weight:600}thead th.num{text-align:right}.th-lc{text-transform:none}tbody tr{border-bottom:1px solid var(--clr-border);transition:background .1s}tbody tr:hover{background:rgba(var(--clr-ink-rgb), .04)}tbody td{color:var(--clr-text);padding:.65rem 1rem}tbody td.num{text-align:right;color:var(--clr-muted)}tbody td.highlight{color:var(--clr-accent2);font-weight:700}.rank-col{color:var(--clr-muted);font-size:.75rem}.loading-state{text-align:center;color:var(--clr-muted);padding:3rem 1rem;font-size:.9rem}.empty-state{text-align:center;color:var(--clr-muted);padding:4rem 1rem}.empty-state .emoji{margin-bottom:.5rem;font-size:3rem}.empty-state p{margin-top:.5rem;font-size:.9rem}.empty-state code{background:rgba(var(--clr-ink-rgb), .06);border-radius:4px;padding:.15rem .4rem;font-family:Courier New,monospace;font-size:.8rem}.header-right{align-items:center;gap:.75rem;margin-left:auto;display:flex}.user-pill{color:var(--clr-muted);font-size:.8rem;font-weight:500}.login-overlay{z-index:9999;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));background:#e2e7ec url(/assets/login-bg-DeNWWvHV.webp) 50%/cover no-repeat;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.login-card{z-index:1;background:color-mix(in srgb, var(--clr-dark) 92%, transparent);color:var(--clr-text);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(var(--clr-ink-rgb), .12);border-radius:14px;width:100%;max-width:380px;padding:2.5rem 2rem;position:relative;box-shadow:0 8px 40px #00000059,0 2px 8px #0003}.login-logo{text-align:center;margin-bottom:1.75rem}.login-logo-img{width:auto;height:80px}.login-card form{flex-direction:column;gap:1rem;display:flex}.login-card label{color:var(--clr-muted);flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500;display:flex}.login-card input{background:var(--clr-field-bg);border:1px solid var(--clr-muted);color:var(--clr-text);border-radius:6px;padding:.55rem .85rem;font-size:.95rem}.login-card input:focus{border-color:var(--clr-accent);box-shadow:0 0 0 2px var(--clr-accent);outline:none}.login-error{color:var(--clr-danger);background:#e53e3e26;border:1px solid #e53e3e4d;border-radius:6px;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.825rem}.btn-primary{background:var(--clr-accent-fill);color:#fff;cursor:pointer;border:none;border-radius:7px;margin-top:.5rem;padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;transition:opacity .15s}.btn-primary:hover{opacity:.88}.card{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem}.form-row{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.form-grid-2{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;display:grid}.form-row label,.form-grid-2 label{color:var(--clr-muted);flex-direction:column;gap:.3rem;font-size:.825rem;font-weight:500;display:flex}.form-row input,.form-row select,.form-grid-2 input,.form-grid-2 select{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.form-row input:focus,.form-grid-2 select:focus{border-color:var(--clr-accent);outline:none}.hint{color:var(--clr-muted);font-size:.75rem;font-weight:400}.form-error{color:var(--clr-red);background:#e53e3e1f;border:1px solid #e53e3e4d;border-radius:6px;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.825rem}.form-success{color:var(--clr-green);background:#38a1691f;border:1px solid #38a1694d;border-radius:6px;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.825rem}.upload-zone{border:2px dashed rgba(var(--clr-ink-rgb), .15);text-align:center;cursor:pointer;border-radius:10px;padding:1.5rem;transition:border-color .2s,background .2s;position:relative}.upload-zone:hover{border-color:rgba(var(--clr-ink-rgb), .25)}.upload-zone.drag-over{border-color:var(--clr-accent);background:#1e90ff14}.upload-zone.has-file{border-color:var(--clr-green);background:#38a1690f;border-style:solid}.upload-zone-content{flex-direction:column;align-items:center;gap:.35rem;display:flex}.upload-icon{opacity:.6;font-size:1.8rem}.upload-text{color:var(--clr-muted);font-size:.85rem}.upload-hint{color:var(--clr-muted);font-size:.78rem}.link-btn{color:var(--clr-accent);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.upload-zone-selected{justify-content:center;align-items:center;gap:.75rem;display:flex}.file-name{color:var(--clr-text);font-size:.875rem;font-weight:500}.file-size{color:var(--clr-muted);font-size:.78rem}.file-remove{color:var(--clr-red);cursor:pointer;background:#e53e3e26;border:1px solid #e53e3e4d;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:.9rem;line-height:1;display:flex}.file-remove:hover{background:#e53e3e4d}.progress-bar-wrap{background:rgba(var(--clr-ink-rgb), .08);border-radius:99px;width:100px;height:6px;overflow:hidden}.progress-bar.transfer-bar{background:var(--clr-gold)}.job-status-badge{text-transform:uppercase;letter-spacing:.03em;font-size:.825rem;font-weight:600}.progress-cell{min-width:120px}.pct-label{color:var(--clr-muted);font-size:.7rem}.pct-label.dim{opacity:.4}.mono-sm{font-family:monospace;font-size:.78rem}.meta-sm{color:var(--clr-muted);font-size:.75rem}.msg-col{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.job-log-pre{background:var(--clr-code-bg);color:var(--clr-text);white-space:pre-wrap;word-break:break-all;border-radius:6px;max-height:200px;margin:0;padding:12px;font-family:SF Mono,Fira Code,monospace;font-size:.75rem;line-height:1.4;overflow-y:auto}.calendar-controls{flex-wrap:wrap;align-items:center;gap:.75rem;margin-left:auto;display:flex}.calendar-nav{align-items:center;gap:.4rem;display:flex}.cal-select{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.35rem .6rem;font-size:.8rem}.multi-select{display:inline-block;position:relative}.multi-select-btn{cursor:pointer;text-align:left;align-items:center;gap:.35rem;min-width:90px;display:flex}.multi-select-btn:after{content:"▾";opacity:.6;margin-left:auto;font-size:.65rem}.multi-select-btn .ms-count{background:var(--clr-accent-fill);color:#fff;border-radius:99px;padding:.05rem .4rem;font-size:.65rem;font-weight:600}.multi-select-dropdown{z-index:100;background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:8px;min-width:200px;max-height:240px;margin-top:4px;padding:.35rem 0;display:none;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 8px 24px #00000080}.multi-select.open .multi-select-dropdown{display:block}.multi-select-dropdown label{cursor:pointer;color:var(--clr-text);align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.8rem;transition:background .1s;display:flex}.multi-select-dropdown label:hover{background:var(--clr-mid)}.multi-select-dropdown input[type=checkbox]{accent-color:var(--clr-accent);flex-shrink:0;width:14px;height:14px}.sync-panel{margin-top:.5rem}.calendar-grid{background:var(--clr-border);border:1px solid var(--clr-border);border-radius:var(--radius);grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cal-header-cell{background:var(--clr-mid);text-align:center;color:var(--clr-muted);text-transform:uppercase;letter-spacing:.05em;padding:.5rem;font-size:.75rem;font-weight:600}.cal-day{background:var(--clr-dark);min-height:80px;padding:.4rem;position:relative}.cal-day.today{background:color-mix(in srgb, var(--clr-accent) 8%, var(--clr-dark))}.can-add-game .cal-day{cursor:pointer}.cal-day:after{content:"+";color:var(--clr-accent);opacity:0;pointer-events:none;font-size:.85rem;font-weight:700;transition:opacity .15s;position:absolute;top:.35rem;right:.4rem}.can-add-game .cal-day:hover:after{opacity:.5}.cal-day.outside:after{display:none}.cal-day.outside{opacity:.35}.cal-day-num{color:var(--clr-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-bottom:.25rem;font-size:.75rem;font-weight:500;transition:background .15s;display:flex}.cal-day-num:hover{background:var(--clr-accent-fill);color:#fff}.cal-day.today .cal-day-num{color:var(--clr-accent-text);font-weight:700}.cal-day.today .cal-day-num:hover{color:#fff}.cal-game-chip{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;margin-bottom:2px;padding:.15rem 1.4rem .15rem .35rem;font-size:.68rem;transition:opacity .15s;position:relative;overflow:hidden}.cal-game-chip:hover{opacity:.75}.chip-delete-btn{color:#fff;cursor:pointer;background:#e53e3eb3;border:none;border-radius:3px;align-items:center;padding:0 4px;font-size:.65rem;line-height:1;display:flex;position:absolute;top:1px;bottom:1px;right:2px}.chip-delete-btn:hover{background:#e53e3e}.cal-game-chip.status-live{color:var(--clr-red);background:#e53e3e40;font-weight:600}.cal-game-chip.status-completed{color:var(--clr-green);background:#38a16926}.cal-game-chip.status-scheduled{background:rgba(var(--clr-ink-rgb), .08);color:var(--clr-muted)}.cal-game-chip.status-postponed{color:var(--clr-gold);background:#d69e2e26}.cal-game-chip.analysis-none{color:var(--clr-teal-soft);background:#38b2ac33}.cal-game-chip.analysis-progress{color:var(--clr-purple-soft);background:#805ad540;position:relative;overflow:hidden}.cal-game-chip.analysis-review{color:var(--clr-gold);background:#d69e2e40}.cal-game-chip.analysis-failed{color:var(--clr-red-soft);background:#e53e3e40}.cal-game-chip.analysis-approved{color:var(--clr-green-soft);background:#38a16933}.cal-game-chip.analysis-progress:before{content:"";width:var(--progress,0%);z-index:0;background:#805ad54d;transition:width .4s;position:absolute;inset:0}.cal-game-chip.analysis-progress>*{z-index:1;position:relative}.cal-legend{color:var(--clr-muted);flex-wrap:wrap;justify-content:center;gap:.6rem 1.2rem;padding:.6rem 0 .2rem;font-size:.72rem;display:flex}.cal-legend-item{align-items:center;gap:.3rem;display:flex}.cal-legend-dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}.cal-legend-dot.analysis-none{background:#38b2ac73}.cal-legend-dot.analysis-progress{background:#805ad580}.cal-legend-dot.analysis-review{background:#d69e2e80}.cal-legend-dot.analysis-failed{background:#e53e3e80}.cal-legend-dot.analysis-approved{background:#38a16973}.calendar-grid.week-view .cal-day{min-height:140px}.chip-time{color:var(--clr-muted);font-size:.65rem}.chip-matchup{font-size:.78rem;font-weight:500}.chip-type{opacity:.6;font-size:.6rem;font-style:italic}@media (width<=768px){.calendar-controls{gap:.4rem}.cal-label{min-width:130px;font-size:.82rem}.cal-day{min-height:60px;padding:.25rem}.cal-game-chip{padding:.1rem .25rem;font-size:.6rem}.cal-header-cell{padding:.35rem;font-size:.65rem}}.sub-nav{border-bottom:1px solid var(--clr-border);flex-wrap:wrap;gap:.25rem;margin-bottom:1.25rem;padding-bottom:.5rem;display:flex}.sub-nav-btn{color:var(--clr-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px 6px 0 0;padding:.35rem .75rem;font-size:.8rem;font-weight:500;transition:all .15s}.sub-nav-btn:hover{color:var(--clr-text)}.sub-nav-btn.active{color:var(--clr-accent);border-color:var(--clr-border);border-bottom-color:var(--clr-dark);background:var(--clr-dark)}.sub-view{display:none}.sub-view.active{display:block}.sub-section-header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.sub-section-header h3{font-size:1.1rem;font-weight:600}.form-modal-overlay{z-index:900;-webkit-backdrop-filter:blur(4px);background:#0000008c;justify-content:center;align-items:center;padding:2rem;animation:.15s fadeIn;display:none;position:fixed;inset:0}.form-modal-overlay.open{display:flex}.form-modal-overlay .card{width:100%;max-width:700px;max-height:90vh;margin:0;animation:.2s modalSlideIn;overflow-y:auto;box-shadow:0 12px 40px #00000080}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.game-detail-panel{width:100%;max-width:780px!important}.gdp-header{border-bottom:1px solid var(--clr-border);justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.gdp-header-left{flex:1;min-width:0}.gdp-title{margin:0;font-size:1.25rem;font-weight:700}.gdp-subtitle{color:var(--clr-muted);margin-top:.25rem;font-size:.85rem}.gdp-header-right{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.gdp-state-badge{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:99px;padding:.2rem .6rem;font-size:.72rem;font-weight:600}.gdp-state-badge.state-scheduled{background:rgba(var(--clr-ink-rgb), .08);color:var(--clr-muted)}.gdp-state-badge.state-assets{color:var(--clr-teal-soft);background:#38b2ac26}.gdp-state-badge.state-processing{color:var(--clr-purple-soft);background:#805ad533}.gdp-state-badge.state-complete{color:var(--clr-green-soft);background:#38a16926}.gdp-state-badge.state-failed{color:var(--clr-red-soft);background:#e53e3e26}.gdp-close-btn{color:var(--clr-muted);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.5rem;line-height:1}.gdp-close-btn:hover{color:var(--clr-text)}.gdp-section{margin-bottom:1.25rem}.gdp-section h4{text-transform:uppercase;letter-spacing:.04em;color:var(--clr-muted);border-bottom:1px solid var(--clr-border);margin:0 0 .75rem;padding-bottom:.35rem;font-size:.85rem;font-weight:600}.gdp-info-actions{align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.gdp-asset-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.gdp-asset-existing{color:var(--clr-muted);background:rgba(var(--clr-ink-rgb), .03);border:1px solid var(--clr-border);border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.825rem}.gdp-asset-existing .asset-file{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.gdp-asset-existing .asset-file:last-child{margin-bottom:0}.gdp-asset-existing .asset-label{color:var(--clr-text);min-width:70px;font-weight:600}.gdp-asset-actions{margin-top:.75rem}.gdp-analysis-status{margin-bottom:.75rem}.gdp-analysis-row{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.gdp-job-message{color:var(--clr-muted);font-size:.825rem}.gdp-analysis-stats{color:var(--clr-muted);margin-top:.5rem;font-size:.825rem}.gdp-analysis-actions{flex-wrap:wrap;gap:.5rem;display:flex}.gdp-review-preview{border:1px solid var(--clr-border);background:rgba(var(--clr-ink-rgb), .02);border-radius:6px;margin-top:.75rem;overflow:hidden}.gdp-review-header{cursor:pointer;background:rgba(var(--clr-ink-rgb), .04);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:.5rem .75rem;display:flex}.gdp-review-header:hover{background:rgba(var(--clr-ink-rgb), .06)}.gdp-review-title{text-transform:uppercase;letter-spacing:.04em;color:var(--clr-muted);font-size:.78rem;font-weight:600}.gdp-review-chevron{color:var(--clr-muted);font-size:.7rem;transition:transform .15s}.gdp-review-preview.collapsed .gdp-review-chevron{transform:rotate(-90deg)}.gdp-review-preview.collapsed .gdp-review-body{display:none}.gdp-review-body{padding:.75rem}.gdp-review-loading{color:var(--clr-muted);font-size:.8rem}.gdp-review-quality{margin-bottom:.75rem}.gdp-quality-item{border-radius:4px;align-items:center;gap:.35rem;margin:0 .35rem .35rem 0;padding:.2rem .5rem;font-size:.75rem;display:inline-flex}.gdp-quality-item.warn{color:var(--clr-amber);background:#f59e0b26}.gdp-quality-item.ok{color:var(--clr-green-soft);background:#38a1691f}.gdp-quality-item.error{color:var(--clr-red-soft);background:#e53e3e26}.gdp-review-stats table{border-collapse:collapse;width:100%;font-size:.75rem}.gdp-review-stats th{text-align:left;color:var(--clr-muted);border-bottom:1px solid var(--clr-border);text-transform:capitalize;padding:.25rem .35rem;font-size:.75rem;font-weight:600}.gdp-review-stats td{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);padding:.2rem .35rem}.gdp-review-stats td.num,.gdp-review-stats th.num{text-align:right}.gdp-review-stats tr.flagged{background:#f59e0b14}.gdp-review-sub-title{text-transform:uppercase;letter-spacing:.03em;color:var(--clr-muted);border-top:1px solid var(--clr-border);margin:.75rem 0 .35rem;padding-top:.5rem;font-size:.72rem;font-weight:600}.gdp-review-shifts,.gdp-review-events{font-size:.8rem}.gdp-review-metric{color:var(--clr-text);justify-content:space-between;padding:.15rem 0;display:flex}.gdp-review-metric .label{color:var(--clr-muted)}.gdp-review-metric .value{font-weight:600}.gdp-event-bar-row{align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.75rem;display:flex}.gdp-event-bar-label{min-width:80px;color:var(--clr-muted);text-align:right}.gdp-event-bar-track{background:rgba(var(--clr-ink-rgb), .05);border-radius:3px;flex:1;height:14px;overflow:hidden}.gdp-event-bar-fill{background:var(--clr-accent-fill);border-radius:3px;min-width:2px;height:100%}.gdp-event-bar-count{min-width:30px;color:var(--clr-muted);font-size:.7rem}.progress-bar-wrap{background:rgba(var(--clr-ink-rgb), .08);border-radius:3px;height:6px;overflow:hidden}.progress-bar{background:var(--clr-accent-fill);border-radius:3px;height:100%;transition:width .4s}.gdp-notes-list{flex-direction:column;gap:.6rem;max-height:300px;margin-bottom:.75rem;padding-right:.25rem;display:flex;overflow-y:auto}.gdp-note{background:rgba(var(--clr-ink-rgb), .03);border:1px solid var(--clr-border);border-radius:8px;padding:.5rem .75rem}.gdp-note-system{border-left:3px solid var(--clr-accent);opacity:.7;font-style:italic}.gdp-note-header{color:var(--clr-muted);align-items:baseline;gap:.5rem;margin-bottom:.25rem;font-size:.75rem;display:flex}.gdp-note-author{color:var(--clr-text);font-weight:600}.gdp-note-body{white-space:pre-wrap;font-size:.85rem;line-height:1.45}.gdp-note-reply-btn{color:var(--clr-accent);cursor:pointer;background:0 0;border:none;margin-top:.25rem;padding:.15rem 0;font-size:.72rem}.gdp-note-reply-btn:hover{text-decoration:underline}.gdp-note-replies{border-left:2px solid var(--clr-border);flex-direction:column;gap:.4rem;margin-top:.4rem;margin-left:1rem;padding-left:.75rem;display:flex}.gdp-note-compose{align-items:flex-end;gap:.5rem;display:flex}.gdp-note-compose textarea{resize:vertical;background:var(--clr-dark);border:1px solid var(--clr-border);min-height:40px;max-height:120px;color:var(--clr-text);border-radius:6px;flex:1;padding:.5rem .75rem;font-family:inherit;font-size:.85rem}.gdp-note-compose textarea:focus{border-color:var(--clr-accent);outline:none}.gdp-note-empty{color:var(--clr-muted);font-size:.825rem;font-style:italic}.gdp-actions-flat{flex-wrap:wrap;gap:.5rem;display:flex}.gdp-actions-flat .action-btn{position:relative}.gdp-actions-flat .action-btn[data-tooltip]:hover:after{content:attr(data-tooltip);background:var(--clr-bg);color:var(--clr-text);border:1px solid var(--clr-border);white-space:nowrap;z-index:10;pointer-events:none;border-radius:6px;padding:.4rem .6rem;font-size:.72rem;font-weight:400;line-height:1.3;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0006}.gdp-actions-flat .action-btn[data-tooltip]:hover:before{content:"";border:5px solid #0000;border-top-color:var(--clr-border);z-index:10;position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%)}.gdp-confirm-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gdp-confirm-dialog{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:10px;width:90%;max-width:420px;padding:1.5rem}.gdp-confirm-message{color:var(--clr-text);margin-bottom:1rem;font-size:.9rem;line-height:1.5}.gdp-confirm-input-row{margin-bottom:1rem}.gdp-confirm-input-row label{color:var(--clr-muted);font-size:.78rem;font-family:var(--font-mono);margin-bottom:.4rem;display:block}.gdp-confirm-input-row input{background:var(--clr-bg);border:1px solid var(--clr-border);width:100%;color:var(--clr-text);font-family:var(--font-mono);border-radius:6px;padding:.5rem .7rem;font-size:.85rem}.gdp-confirm-input-row input:focus{border-color:var(--clr-accent);outline:none}.gdp-confirm-buttons{justify-content:flex-end;gap:.5rem;display:flex}.gdp-info input:disabled,.gdp-info select:disabled{opacity:.5;cursor:not-allowed}@media (width<=600px){.gdp-asset-row{grid-template-columns:1fr}.game-detail-panel{max-width:100%!important}}.action-cell{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.action-btn{border:1px solid var(--clr-accent);color:var(--clr-accent);cursor:pointer;letter-spacing:.02em;white-space:nowrap;background:0 0;border-radius:6px;align-items:center;gap:.3rem;padding:.3rem .7rem;font-size:.72rem;font-weight:600;transition:all .15s;display:inline-flex}.action-btn:hover{background:var(--clr-accent-fill);color:#fff}.action-btn.delete-btn{border-color:var(--clr-red);color:var(--clr-red)}.action-btn.delete-btn:hover{background:var(--clr-red);color:#fff}.action-btn.approve-btn{color:var(--clr-green-strong);border-color:#16a34a}.action-btn.approve-btn:hover{color:#fff;background:#16a34a}.role-restricted .action-cell{display:none}.multi-select{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.4rem;font-size:.825rem}.admin-stats-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;display:grid}.admin-stat-card{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow);padding:1.25rem 1rem}.stat-value{color:var(--clr-accent2);font-size:2rem;font-weight:800;line-height:1.1}.stat-label{color:var(--clr-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.35rem;font-size:.78rem}.home-search-hero{text-align:center;padding:2rem 1rem 1.5rem}.home-title{color:var(--clr-text);margin-bottom:1rem;font-size:1.5rem;font-weight:700}.home-search-bar{max-width:600px;margin:0 auto;position:relative}.home-search-input{background:var(--clr-mid);border:1px solid var(--clr-border);width:100%;color:var(--clr-text);border-radius:8px;padding:.65rem 2.5rem .65rem 1rem;font-size:.95rem}.home-search-input:focus{border-color:var(--clr-accent);outline:none}.home-search-clear{color:var(--clr-muted);cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1.2rem;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.home-columns{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1rem;display:grid}.home-card{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.home-card-title{text-transform:uppercase;letter-spacing:.06em;color:var(--clr-accent);margin-bottom:.75rem;font-size:1rem;font-weight:700}.home-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--clr-muted);margin-top:.75rem;margin-bottom:.35rem;font-size:.78rem;font-weight:600}.home-list-item{border-radius:4px;align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.875rem;transition:background .1s;display:flex}.home-list-item:hover{background:rgba(var(--clr-ink-rgb), .06)}.fav-star{color:var(--clr-muted);font-size:1rem;transition:color .15s}.fav-star.active,.fav-star:hover{color:var(--clr-gold)}.player-browse-layout{grid-template-columns:240px 1fr;gap:1.5rem;display:grid}.player-sidebar{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);padding:1rem}.profile-mode-toggle{gap:.25rem;margin-bottom:1rem;display:flex}.profile-filter-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.player-tab-content{display:none}.player-tab-content.active{display:block}.profile-layout{grid-template-columns:1fr 280px;align-items:start;gap:1rem;display:grid}.player-profile-card{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.profile-photo-area{flex-direction:column;align-items:center;margin-bottom:.75rem;display:flex}.profile-photo{object-fit:cover;border:2px solid var(--clr-accent);border-radius:50%;width:80px;height:80px}.profile-photo-placeholder{background:var(--clr-surface);border:2px dashed var(--clr-border);width:80px;height:80px;color:var(--clr-muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.profile-photo-upload-btn{background:var(--clr-surface);color:var(--clr-text);border:1px solid var(--clr-border);cursor:pointer;border-radius:6px;margin-top:.5rem;padding:.25rem .6rem;font-size:.7rem}.profile-photo-upload-btn:hover{background:var(--clr-mid)}.profile-meta{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.profile-pos-badge{background:var(--clr-accent-fill);color:#fff;border-radius:99px;padding:.2rem .6rem;font-size:.75rem;font-weight:700}.profile-fav-btn{cursor:pointer;color:var(--clr-gold);background:0 0;border:none;font-size:1.3rem}.profile-name{margin-bottom:.5rem;font-size:1.2rem;font-weight:700}.profile-detail{color:var(--clr-muted);margin-bottom:.15rem;font-size:.8rem}.profile-season-summary{border-top:1px solid var(--clr-border);grid-template-columns:repeat(2,1fr);gap:.5rem;margin-top:.75rem;padding-top:.75rem;display:grid}.summary-stat{text-align:center}.summary-val{color:var(--clr-accent2);font-size:1.1rem;font-weight:700;display:block}.summary-label{color:var(--clr-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.65rem;display:block}.video-wrapper{border-radius:var(--radius);aspect-ratio:16/9;background:#000;position:relative;overflow:hidden}.film-video{object-fit:contain;width:100%;height:100%;display:block}.telestration-overlay{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;inset:0}.telestration-overlay.drawing{pointer-events:auto;cursor:crosshair}.video-overlay-text{color:rgba(var(--clr-ink-rgb), .7);text-shadow:0 1px 3px #000000b3;z-index:5;font-size:.78rem;position:absolute;top:.5rem;left:.75rem}.video-controls{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:0 0 var(--radius) var(--radius);border-top:none;padding:.5rem .75rem}.video-timeline{cursor:pointer;align-items:center;height:24px;margin-bottom:.25rem;display:flex;position:relative}.timeline-track{background:rgba(var(--clr-ink-rgb), .12);border-radius:2px;height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.timeline-playhead{background:var(--clr-accent-fill);z-index:2;border-radius:50%;width:10px;height:10px;transition:left .1s linear;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.timeline-markers{z-index:1;position:absolute;inset:0}.video-buttons{align-items:center;gap:.5rem;display:flex}.video-btn{border:1px solid var(--clr-border);color:var(--clr-text);cursor:pointer;background:0 0;border-radius:4px;padding:.3rem .6rem;font-size:.85rem;transition:all .15s}.video-btn:hover{border-color:var(--clr-accent);color:var(--clr-accent)}.video-time{color:var(--clr-muted);font-family:monospace;font-size:.78rem}.spacer{flex:1}.telestration-toolbar{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:0 0 var(--radius) var(--radius);border-top:none;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.5rem .75rem;display:flex}.tool-btn{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:4px;padding:.25rem .5rem;font-size:.78rem;transition:all .15s}.tool-btn:hover{color:var(--clr-text)}.tool-btn.active{background:var(--clr-accent-fill);border-color:var(--clr-accent);color:#fff}.game-carousel{scrollbar-width:thin;margin-top:.75rem;overflow-x:auto}.game-carousel-track{gap:.5rem;padding:.25rem 0;display:flex}.game-carousel-item{background:var(--clr-mid);border:1px solid var(--clr-border);cursor:pointer;text-align:center;border-radius:6px;flex:none;min-width:110px;padding:.5rem .75rem;transition:all .15s}.game-carousel-item:hover{border-color:var(--clr-accent)}.game-carousel-item.active{border-color:var(--clr-accent);background:#1e90ff1a}.carousel-matchup{color:var(--clr-muted);font-size:.75rem}.carousel-score{color:var(--clr-text);font-size:1rem;font-weight:700}.carousel-date{color:var(--clr-muted);font-size:.65rem}.profile-clip-panel{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);max-height:600px;padding:.75rem;overflow-y:auto}.clip-panel-tabs{gap:.25rem;margin-bottom:.75rem;display:flex}.clip-tab{display:none}.clip-tab.active{display:block}.clip-actions{gap:.25rem;margin-bottom:.5rem;display:flex}.clip-category-item{border-bottom:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;justify-content:space-between;align-items:center;padding:.4rem .6rem;font-size:.78rem;transition:background .1s;display:flex}.clip-category-item:hover{background:rgba(var(--clr-ink-rgb), .04)}.clip-category-item.has-clips{color:var(--clr-text)}.clip-count{background:rgba(var(--clr-ink-rgb), .08);color:var(--clr-muted);border-radius:99px;padding:.1rem .4rem;font-size:.7rem}.has-clips .clip-count{color:var(--clr-accent);background:#1e90ff33}.clip-back{color:var(--clr-muted);font-size:.72rem}.clip-back:hover{color:var(--clr-text)}.clip-game-header{font-size:.75rem;font-weight:600}.clip-shift-item{border-bottom:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;justify-content:space-between;align-items:center;padding:.35rem .6rem .35rem 1.2rem;font-size:.72rem;transition:background .1s;display:flex}.clip-shift-item:hover{background:rgba(var(--clr-ink-rgb), .04);color:var(--clr-text)}.clip-shift-item.active{color:var(--clr-accent);background:#1e90ff1f}.playlist-tree{font-size:.85rem}.playlist-node{margin-left:.5rem}.playlist-label{border-radius:4px;justify-content:space-between;align-items:center;padding:.3rem .4rem;transition:background .1s;display:flex}.playlist-label:hover{background:rgba(var(--clr-ink-rgb), .06)}.playlist-children{margin-left:.75rem}.filmroom-layout{grid-template-columns:260px 1fr;align-items:start;gap:1.25rem;display:grid}.filmroom-sidebar{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);max-height:calc(100vh - 120px);padding:1rem;overflow-y:auto}.sidebar-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.sidebar-header h3{font-size:1rem;font-weight:600}.sidebar-filters{flex-direction:column;gap:.35rem;margin-bottom:.75rem;display:flex}.clip-list-container{margin-top:.75rem}.clip-list-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.clip-list-header h3{font-size:.95rem;font-weight:600}.clip-list-item{border-bottom:1px solid var(--clr-border);cursor:pointer;padding:.5rem .6rem;transition:background .1s}.clip-list-item:hover{background:rgba(var(--clr-ink-rgb), .04)}.clip-list-item.active{border-left:3px solid var(--clr-accent);background:#1e90ff1a}.clip-title{font-size:.85rem;font-weight:500}.clip-meta{color:var(--clr-muted);font-size:.72rem}.team-dashboard-header{align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.team-logo-area{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.team-logo{border-radius:var(--radius);object-fit:contain;border:1px solid var(--clr-border);background:var(--clr-mid);width:56px;height:56px}.team-logo-placeholder{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);width:56px;height:56px;color:var(--clr-muted);justify-content:center;align-items:center;font-size:1.5rem;display:flex}.team-logo-sm{object-fit:contain;vertical-align:middle;border-radius:4px;width:24px;height:24px}.td-tab-bar{border-bottom:3px solid #2563eb;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;margin-bottom:0;padding:.6rem 0;display:flex}.td-tab{color:var(--clr-muted);letter-spacing:.06em;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:.3rem .5rem;font-family:inherit;font-size:.78rem;font-weight:600;transition:color .15s}.td-tab:hover{color:var(--clr-text)}.td-tab.active{color:var(--clr-blue);text-underline-offset:4px;text-decoration:underline}.td-tab-sep{color:var(--clr-muted);opacity:.4;-webkit-user-select:none;user-select:none;font-size:.7rem}.team-tab-content{display:none}.team-tab-content.active{display:block}.td-filter-bar{background:var(--clr-surface);border-bottom:1px solid var(--clr-border);flex-wrap:wrap;align-items:center;gap:.4rem;padding:.6rem 1rem;display:flex}.td-filter-select{color:#fff;cursor:pointer;appearance:auto;background:#2563eb;border:none;border-radius:4px;padding:.35rem .7rem;font-size:.72rem;font-weight:600}.td-filter-select option{background:var(--clr-dark);color:var(--clr-text)}.td-filter-bar input[type=date].td-filter-select{background:var(--clr-mid);color:var(--clr-text);border:1px solid var(--clr-border)}.td-filter-apply{color:#fff;letter-spacing:.04em;cursor:pointer;background:#2563eb;border:none;border-radius:4px;padding:.35rem .8rem;font-size:.72rem;font-weight:700;transition:background .15s}.td-filter-apply:hover{background:#1d4ed8}.td-filter-clear{color:var(--clr-muted);border:1px solid var(--clr-border);cursor:pointer;background:0 0;border-radius:4px;padding:.35rem .7rem;font-size:.72rem;font-weight:600}.td-filter-clear:hover{color:var(--clr-text);border-color:var(--clr-text)}.td-header-compact{border-bottom:1px solid var(--clr-border);align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex}.td-header-compact .team-logo-area{align-items:center;gap:.5rem;display:flex}.td-header-compact .team-logo,.td-header-compact .team-logo-placeholder{border-radius:4px;width:32px;height:32px}.td-team-name{font-size:.95rem;font-weight:700}.td-team-meta{color:var(--clr-muted);margin-left:.5rem;font-size:.75rem}.td-back-btn{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;margin-left:auto;font-size:.8rem;display:flex}.td-back-btn:hover{color:var(--clr-text);border-color:var(--clr-text)}.td-main-top{grid-template-columns:280px 1fr;gap:1rem;margin:1rem 0;display:grid}.td-team-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;padding:1rem}.td-card-section h4{text-transform:uppercase;letter-spacing:.08em;color:var(--clr-muted);border-bottom:1px solid var(--clr-border);margin-bottom:.6rem;padding-bottom:.4rem;font-size:.7rem}.td-stat-area{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;padding:1rem}.td-stat-area h4{text-transform:uppercase;letter-spacing:.08em;color:var(--clr-muted);margin-bottom:.75rem;font-size:.7rem}.td-stat-tiles,.stat-tiles-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.5rem;display:grid}.stat-tile{background:var(--clr-mid);border:2px solid var(--clr-border);text-align:center;border-radius:8px;padding:.6rem .4rem}.stat-tile-val{color:var(--clr-blue);font-size:1.5rem;font-weight:700;line-height:1.1}.stat-tile-val.red{color:var(--clr-red-strong)}.stat-tile-label{color:var(--clr-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:.3rem;font-size:.65rem;font-weight:600}.td-main-bottom{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;display:grid}.td-roster-panel,.td-games-panel{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;flex-direction:column;max-height:500px;padding:1rem;display:flex}.td-panel-header{justify-content:space-between;align-items:center;margin-bottom:.6rem;display:flex}.td-panel-header h4{text-transform:uppercase;letter-spacing:.08em;color:var(--clr-muted);font-size:.7rem;font-weight:700}.td-table-scroll{flex:1;min-height:0;overflow-y:auto}.td-table-scroll::-webkit-scrollbar{width:4px}.td-table-scroll::-webkit-scrollbar-thumb{background:var(--clr-border);border-radius:2px}.td-roster-filter{gap:2px;display:flex}.td-pos-btn{background:var(--clr-mid);border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;letter-spacing:.04em;border-radius:3px;padding:.2rem .5rem;font-size:.65rem;font-weight:700}.td-pos-btn.active{color:#fff;background:#2563eb;border-color:#2563eb}.td-toggle-bar{border:2px solid #2563eb;border-radius:6px;grid-template-columns:1fr 1fr;gap:0;max-width:500px;margin-bottom:1rem;display:grid;overflow:hidden}.td-toggle-bar.td-toggle-4{grid-template-columns:repeat(4,1fr);max-width:700px}.td-toggle-btn{color:var(--clr-muted);letter-spacing:.04em;cursor:pointer;background:0 0;border:none;padding:.55rem 1rem;font-size:.78rem;font-weight:700;transition:all .15s}.td-toggle-btn.active{color:#fff;background:#2563eb}.td-toggle-btn:not(.active):hover{color:var(--clr-text)}.td-config-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.td-config-header h4{text-transform:uppercase;letter-spacing:.06em;color:var(--clr-text);font-size:.85rem;font-weight:700}.td-config-actions{align-items:center;gap:.5rem;display:flex}.td-summary-matchup{border-bottom:1px solid var(--clr-border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.td-matchup-team{text-align:center;flex:1}.td-matchup-team.highlight .td-matchup-score{color:var(--clr-blue)}.td-matchup-name{margin-bottom:.3rem;font-size:.78rem;font-weight:600}.td-matchup-score{font-size:2rem;font-weight:700;line-height:1}.td-matchup-vs{color:var(--clr-muted);text-align:center;font-size:.7rem}.td-summary-stats{flex-direction:column;gap:0;display:flex}.td-summary-stat{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.8rem;display:flex}.td-summary-label{text-align:center;color:var(--clr-muted);letter-spacing:.04em;text-transform:uppercase;flex:1;font-size:.65rem;font-weight:600}.td-summary-val{text-align:center;width:60px;color:var(--clr-text);font-weight:700}.td-team-data{margin-top:.5rem}.td-data-row{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);justify-content:space-between;padding:.25rem 0;font-size:.78rem;display:flex}.td-data-row span:first-child{color:var(--clr-muted);letter-spacing:.04em;font-size:.7rem;font-weight:600}.td-data-row span:last-child{color:var(--clr-text);font-weight:700}.td-leader-row{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);justify-content:space-between;padding:.2rem 0;font-size:.75rem;display:flex}.td-leader-name{color:var(--clr-blue);cursor:pointer;font-weight:600}.td-leader-name:hover{text-decoration:underline}.td-leader-stat{color:var(--clr-muted);font-weight:500}.td-team-link{color:var(--clr-blue);font-weight:600;text-decoration:none}.td-team-link:hover{text-decoration:underline}.td-game-links{gap:.4rem;display:flex}.td-game-links a{color:var(--clr-blue);letter-spacing:.03em;font-size:.65rem;font-weight:700;text-decoration:none}.td-game-links a:hover{text-decoration:underline}.rink-viz-tabs{gap:.25rem;margin-bottom:.75rem;display:flex}.rink-player-filter{margin-bottom:.75rem}.rink-container{max-width:800px;position:relative}.rink-svg{background:rgba(var(--clr-ink-rgb), .02);border:1px solid var(--clr-border);border-radius:var(--radius);width:100%;height:auto}.insights-page{grid-template-columns:280px 1fr;align-items:stretch;gap:1rem;height:calc(100vh - 120px);display:grid}.insights-sidebar{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;padding:1rem;display:flex;overflow-y:auto}.insights-context-controls{flex-direction:column;gap:.4rem;display:flex}.insights-context-controls label{text-transform:uppercase;letter-spacing:.05em;opacity:.6;margin-top:.3rem;font-size:.7rem}.insights-context-summary{flex:1;margin-top:.75rem;font-size:.75rem;line-height:1.4;overflow-y:auto}.insights-chat{border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.insights-msg{border-radius:8px;max-width:85%;padding:.75rem 1rem;font-size:.85rem;line-height:1.5}.insights-msg.user{background:var(--clr-accent-fill);color:#fff;align-self:flex-end}.insights-msg.assistant{background:var(--clr-mid);align-self:flex-start}.insights-msg.system{background:var(--clr-surface);border:1px solid var(--clr-border);text-align:center;align-self:center;max-width:100%}.insights-msg.error{background:var(--clr-error-bg);border:1px solid var(--clr-danger);color:var(--clr-danger)}.insights-msg pre{background:var(--clr-dark);border-radius:4px;margin:.5rem 0;padding:.5rem;font-size:.75rem;overflow-x:auto}.insights-input-bar{border-top:1px solid var(--clr-border);background:var(--clr-surface);gap:.5rem;padding:.75rem;display:flex}.insights-textarea{resize:none;background:var(--clr-mid);color:var(--clr-text);border:1px solid var(--clr-border);border-radius:6px;flex:1;padding:.5rem .75rem;font-family:inherit;font-size:.85rem}.insights-textarea:focus{border-color:var(--clr-accent);outline:none}.insights-input-bar .btn-primary{align-self:flex-end;padding:.5rem 1.25rem}@media (width<=900px){.insights-page{grid-template-columns:1fr;height:auto}.insights-sidebar{max-height:200px}}.insights-config-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;display:grid}.insights-provider-card{background:var(--clr-mid);border:2px solid var(--clr-border);border-radius:8px;padding:1rem;transition:border-color .2s}.insights-provider-card.enabled{border-color:var(--clr-accent)}.ipc-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.ipc-toggle{cursor:pointer;align-items:center;gap:.5rem;display:flex}.ipc-toggle input{cursor:pointer;width:18px;height:18px}.ipc-label{font-size:.95rem;font-weight:600}.ipc-active-badge{background:var(--clr-accent-fill);color:#fff;letter-spacing:.05em;border-radius:3px;margin-left:auto;padding:.15rem .4rem;font-size:.6rem;font-weight:700}.ipc-fields{flex-direction:column;gap:.3rem;display:flex}.ipc-fields label{text-transform:uppercase;letter-spacing:.04em;opacity:.6;margin-top:.3rem;font-size:.7rem}.skills-grid-panel{min-width:0}.skills-block{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem}.skills-block h3{text-transform:uppercase;letter-spacing:.05em;color:var(--clr-accent);margin-bottom:.5rem;font-size:.9rem;font-weight:700}.skills-stat-row{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);justify-content:space-between;padding:.25rem 0;font-size:.825rem;display:flex}.skills-label{color:var(--clr-muted)}.skills-value{color:var(--clr-text);font-weight:600}@media (width<=1024px){.td-main-top,.td-main-bottom{grid-template-columns:1fr}}@media (width<=640px){.td-tab{padding:.2rem .3rem;font-size:.65rem}.td-filter-bar{padding:.4rem .5rem}}.profile-video-panel{min-width:0}.team-toggle button{font-size:.75rem}.services-panel{grid-column:1/-1;margin-top:1.5rem}.qa-scorecard-row{grid-template-columns:repeat(5,1fr);gap:.75rem;margin-bottom:1.25rem;display:grid}.qa-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;padding:1rem .8rem;position:relative;overflow:hidden}.qa-card:before{content:"";border-radius:8px 8px 0 0;height:2px;position:absolute;top:0;left:0;right:0}.qa-card.qa-red:before{background:linear-gradient(90deg,#f43f5e,#9f1239)}.qa-card.qa-amber:before{background:linear-gradient(90deg,#f59e0b,#92400e)}.qa-card.qa-green:before{background:linear-gradient(90deg,#10b981,#065f46)}.qa-label{text-transform:uppercase;letter-spacing:.07em;color:var(--clr-muted);margin-bottom:.4rem;font-size:.65rem;font-weight:600}.qa-value{font-family:JetBrains Mono,monospace;font-size:1.7rem;font-weight:700;line-height:1}.qa-card.qa-red .qa-value{color:var(--clr-rose)}.qa-card.qa-amber .qa-value{color:var(--clr-amber)}.qa-card.qa-green .qa-value{color:var(--clr-emerald)}.qa-detail{color:var(--clr-muted);margin-top:.3rem;font-family:JetBrains Mono,monospace;font-size:.68rem}.qa-delta{border-radius:3px;margin-top:.25rem;padding:.1rem .35rem;font-family:JetBrains Mono,monospace;font-size:.65rem;display:inline-block}.qa-up{color:var(--clr-emerald);background:#10b9811f}.qa-down{color:var(--clr-rose);background:#f43f5e1f}.qa-chart-title{text-transform:uppercase;letter-spacing:.05em;color:var(--clr-muted);border-bottom:1px solid var(--clr-border);margin-bottom:.75rem;padding-bottom:.5rem;font-size:.75rem;font-weight:600}.qa-chart-title span{color:var(--clr-teal-bright);margin-left:.3rem;font-family:JetBrains Mono,monospace;font-weight:400}.qa-chart-wrap{height:220px;position:relative}.qa-timeline-title{text-transform:uppercase;letter-spacing:.05em;color:var(--clr-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:600}.qa-timeline{gap:.75rem;padding-bottom:.75rem;display:flex;overflow-x:auto}.qa-timeline-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;flex-shrink:0;min-width:280px;max-width:360px;padding:1rem}.qa-tl-label{color:var(--clr-teal-bright);margin-bottom:.15rem;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:600}.qa-tl-date{color:var(--clr-muted);margin-bottom:.6rem;font-family:JetBrains Mono,monospace;font-size:.6rem}.qa-tl-items{flex-direction:column;gap:.3rem;display:flex}.qa-diag-item{color:var(--clr-muted);border-left:2px solid var(--clr-border);padding-left:.5rem;font-size:.68rem;line-height:1.35}.qa-diag-item strong{color:var(--clr-text)}.qa-detail-stat{border-bottom:1px solid var(--clr-border);color:var(--clr-muted);padding:.35rem 0;font-size:.8rem}.qa-detail-stat strong{color:var(--clr-text);float:right}.qa-detail-stat:last-child{border-bottom:none}.qa-mode-toggle{gap:0;display:flex}.qa-mode-toggle .filter-btn{border-radius:0;padding:.3rem .7rem;font-size:.7rem}.qa-mode-toggle .filter-btn:first-child{border-radius:4px 0 0 4px}.qa-mode-toggle .filter-btn:last-child{border-radius:0 4px 4px 0}@media (width<=1024px){.qa-scorecard-row{grid-template-columns:repeat(3,1fr)}.qa-chart-grid{grid-template-columns:1fr}}.service-header{color:var(--clr-text);margin-bottom:.6rem;font-size:.95rem;font-weight:600}.service-detail{color:var(--clr-muted);justify-content:space-between;padding:.2rem 0;font-size:.82rem;display:flex}.service-detail .svc-label{color:var(--clr-muted)}.service-detail span:last-child{color:var(--clr-text);text-align:right}.service-detail .mono{font-family:monospace;font-size:.78rem}.admin-job-item{border-bottom:1px solid var(--clr-border);cursor:pointer;border-radius:4px;align-items:center;gap:.6rem;padding:.6rem .4rem;transition:background .15s;display:flex}.admin-job-item:last-child{border-bottom:none}.job-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.admin-job-game{color:var(--clr-text);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.admin-job-game a{color:var(--clr-accent-text);text-decoration:none}.admin-job-meta{color:var(--clr-muted);margin-top:.15rem;font-size:.75rem}.hamburger{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;gap:4px;padding:6px;display:none}.hamburger span{background:var(--clr-text);border-radius:2px;width:22px;height:2px;transition:transform .2s,opacity .2s;display:block}.hamburger.open span:first-child{transform:translateY(6px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}@media (width<=1100px){.main-nav{flex-wrap:wrap;gap:.15rem}.nav-btn{padding:.3rem .6rem;font-size:.78rem}}@media (width<=900px){.profile-layout{grid-template-columns:1fr}.profile-clip-panel{max-height:none}.home-columns,.player-browse-layout,.filmroom-layout{grid-template-columns:1fr}}@media (width<=768px){.hamburger{display:flex}.main-nav{background:var(--clr-surface);z-index:1000;border-top:1px solid var(--clr-border);flex-direction:column;gap:.25rem;padding:1rem;display:none;position:fixed;inset:60px 0 0;overflow-y:auto}.main-nav.open{display:flex}.nav-btn{text-align:left;width:100%;padding:.6rem .9rem;font-size:.95rem}.nav-dropdown-menu{box-shadow:none;background:0 0;border:none;margin-top:0;padding-left:1rem;display:none;position:static}.nav-dropdown.open .nav-dropdown-menu{flex-direction:column;display:flex}.nav-dropdown-item{padding:.5rem .9rem;font-size:.9rem}.header-right{margin-left:auto}.header-right .nav-btn#logoutBtn{display:none}.home-search-hero{padding:1rem .5rem}.home-title{font-size:1.2rem}.game-carousel-item{min-width:90px;padding:.4rem .5rem}.crop-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.crop-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;padding:4px 0;display:grid}.crop-card{background:var(--bg-secondary,#1e1e24);border:1px solid var(--border,#2d2d35);cursor:pointer;border-radius:8px;transition:border-color .15s;position:relative;overflow:hidden}.crop-card:hover{border-color:var(--accent,#4a9eff)}.crop-card img{aspect-ratio:3/4;object-fit:cover;background:#111;width:100%;display:block}.crop-card .crop-meta{flex-direction:column;gap:2px;padding:6px 8px;font-size:.75rem;display:flex}.crop-card .crop-duration{color:#fff;background:#000000bf;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:600;position:absolute;top:6px;right:6px}.crop-card .crop-side{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.crop-side.home{background:#4a9eff}.crop-side.away{background:#ff6b6b}.crop-side.unknown{background:#888}.crop-card .crop-ocr{color:var(--text-secondary,#999);font-size:.7rem}.crop-card .crop-actions{gap:4px;padding:4px 8px 8px;display:flex}.crop-card .crop-actions button{border:1px solid var(--border,#2d2d35);color:var(--text,#e0e0e0);cursor:pointer;background:0 0;border-radius:4px;flex:1;padding:4px 0;font-size:.7rem}.crop-card .crop-actions button:hover{background:var(--bg-hover,#2a2a32)}.crop-card .crop-actions .btn-assign{border-color:var(--accent,#4a9eff);color:var(--accent,#4a9eff)}.crop-card .crop-actions .btn-nonplayer{color:var(--clr-grey-1);border-color:#888}.crop-card .crop-status{text-transform:uppercase;border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:600;position:absolute;top:6px;left:6px}.crop-status.assigned{color:#fff;background:#28a745}.crop-status.non_player{color:#fff;background:#6c757d}.crop-status.auto_matched{color:#fff;background:#fd7e14}.crop-status.skipped{color:#fff;background:#6c757d}.crop-assigned{color:var(--accent,#4db8a4);font-size:.75rem;font-weight:600}.crop-skip-reason{color:var(--clr-grey-2);font-size:.65rem;font-style:italic}.crop-event-label{text-transform:uppercase;color:var(--clr-accent);background:#0d948840;border-radius:3px;margin-top:2px;padding:1px 6px;font-size:.65rem;font-weight:600;display:inline-block}.crop-card .crop-checkbox{z-index:1;width:18px;height:18px;position:absolute;top:6px;left:6px}.crop-card:not(.resolved){cursor:pointer}.crop-card.selected{border-color:var(--accent,#4db8a4);box-shadow:0 0 0 2px var(--accent,#4db8a4)}.crop-thumbs{gap:4px;padding:4px 6px;display:flex}.crop-thumbs img{aspect-ratio:3/4;object-fit:cover;cursor:pointer;opacity:.7;border:1px solid #0000;border-radius:3px;width:40px;transition:opacity .15s,border-color .15s}.crop-thumbs img.primary{opacity:1;border:2px solid #4a9eff}.crop-thumbs img:not(.primary){opacity:.45}.crop-thumbs img:hover{opacity:1;border-color:var(--accent,#4db8a4)}.bulk-action-bar{z-index:800;background:var(--bg-secondary,#1e1e24);border-top:2px solid var(--accent,#4db8a4);justify-content:center;align-items:center;gap:12px;padding:12px 24px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0006}.bulk-action-bar span{color:var(--accent,#4db8a4);margin-right:8px;font-weight:600}.stat-bar{background:var(--bg-secondary,#1e1e24);border-radius:6px;gap:16px;margin-bottom:12px;padding:8px 12px;font-size:.8rem;display:flex}.stat-bar .stat-item{align-items:center;gap:4px;display:flex}.stat-bar .stat-count{font-weight:700}.shift-chart-container{overflow-x:auto}.sc-header-row{color:var(--text-secondary,#94a3b8);text-transform:uppercase;border-bottom:1px solid var(--border,#2a2a32);align-items:center;margin-bottom:2px;padding-bottom:4px;font-size:.7rem;font-weight:600;display:flex}.sc-player-row{cursor:pointer;border-radius:4px;align-items:center;height:30px;transition:background .15s;display:flex}.sc-player-row:hover{background:#1e90ff14}.sc-player-row.sc-selected{background:#facc1526;border-left:3px solid #facc15}.sc-player-row:nth-child(2n){background:rgba(var(--clr-ink-rgb), .02)}.sc-player-row.sc-selected:nth-child(2n){background:#facc1526}.sc-player-info{white-space:nowrap;text-overflow:ellipsis;flex:0 0 160px;align-items:center;gap:6px;padding-left:6px;font-size:.8rem;display:flex;overflow:hidden}.sc-player-info .sc-jersey{color:var(--text-secondary,#94a3b8);text-align:right;min-width:22px;font-weight:600}.sc-timeline{flex:1;min-width:300px;display:flex}.sc-period-col{border-right:1px solid var(--border,#2a2a32);box-sizing:border-box;height:100%;position:relative}.sc-period-col:last-child{border-right:none}.sc-shift-bar{opacity:.85;background:#3b82f6;border-radius:2px;min-width:2px;height:60%;position:absolute;top:20%}.sc-shift-bar:hover{opacity:1}.sc-goal-line{opacity:.7;pointer-events:none;z-index:2;background:#ef4444;width:2px;height:100%;position:absolute;top:0}.sc-stat-cols{flex:none;align-items:center;display:flex}.sc-stat-cell{text-align:right;white-space:nowrap;width:50px;padding-right:4px;font-size:.75rem}.sc-stat-cell.sc-stat-header{color:var(--text-secondary,#94a3b8);text-transform:uppercase;font-size:.65rem;font-weight:600}.sc-period-label{text-align:center;color:var(--text-secondary,#94a3b8);font-size:.65rem}.sc-review-banner{color:#92400e;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;margin-bottom:8px;padding:8px 12px;font-size:.85rem}.login-success{color:var(--clr-green-bright);background:#22c55e26;border:1px solid #22c55e4d;border-radius:6px;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.825rem}.forgot-password-link{text-align:center;color:var(--clr-muted);margin-top:.25rem;font-size:.825rem;text-decoration:none;display:block}.forgot-password-link:hover{color:var(--clr-accent)}.modal-backdrop{z-index:200;background:#0009;justify-content:center;align-items:center;padding:1.5rem;animation:.15s ease-out modal-fade-in;display:flex;position:fixed;inset:0}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-panel{background:var(--clr-mid);border:1px solid var(--clr-border);border-radius:10px;flex-direction:column;width:100%;max-width:min(560px,100vw - 32px);max-height:calc(100vh - 3rem);animation:.15s ease-out modal-slide-up;display:flex}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid var(--clr-border);justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.modal-header h2{margin:0;font-size:1.05rem}.modal-close{color:var(--clr-muted);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.4rem;line-height:1}.modal-close:hover{color:var(--clr-text)}.modal-body{padding:1.25rem;overflow-y:auto}.modal-panel:focus{outline:none}.modal-close{place-items:center;min-width:44px;min-height:44px;display:inline-grid}.modal-body{scroll-padding-bottom:5.5rem}.modal-body .form-actions{background:var(--clr-mid);border-top:1px solid var(--clr-border);z-index:1;margin-top:.75rem;padding:.6rem 0 1.25rem;position:sticky;bottom:-1.25rem}@media (width<=600px){.modal-backdrop{align-items:stretch;padding:0}.modal-panel{border:0;border-radius:0;height:100dvh;max-height:none;max-width:none!important}.modal-body{flex:1;min-height:0;padding-bottom:0}.modal-body .form-actions{padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0px));bottom:0}}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--clr-mid);border-bottom:1px solid var(--clr-border);z-index:100;align-items:center;gap:2rem;height:60px;padding:0 1.5rem;display:flex;position:sticky;top:0}.app-logo{color:var(--clr-text);font-size:1.1rem;font-weight:700;text-decoration:none}.app-nav{gap:.25rem;display:flex}.app-nav a{color:var(--clr-muted);background:0 0;border:1px solid #0000;border-radius:6px;padding:.4rem .9rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s}.app-nav a:hover{color:var(--clr-text);border-color:var(--clr-border)}.app-nav a.active{background:var(--clr-accent-fill);border-color:var(--clr-accent);color:#fff}.nav-dropdown{position:relative}.nav-caret{opacity:.5;margin-left:.1rem;font-size:.55rem}.nav-flyout{z-index:200;background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:8px;min-width:180px;margin-top:2px;padding:.3rem 0;display:none;position:absolute;top:100%;left:0;box-shadow:0 8px 24px #00000080}.nav-dropdown.open .nav-flyout{display:block}.nav-flyout-item{text-align:left;width:100%;color:var(--clr-text);cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:.45rem .85rem;font-size:.82rem;transition:background .1s;display:flex}.nav-flyout-item:hover{background:var(--clr-mid);color:var(--clr-accent2)}.nav-flyout-parent{font-weight:500}.nav-sub-caret{opacity:.5;font-size:.55rem}.nav-sub-dropdown{position:relative}.nav-sub-flyout{z-index:210;background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:8px;min-width:180px;padding:.3rem 0;display:none;position:absolute;top:-.3rem;left:100%;box-shadow:0 8px 24px #00000080}.nav-sub-dropdown.open .nav-sub-flyout{display:block}@media (width<=1200px){.nav-sub-flyout{left:auto;right:100%}}.app-user{color:var(--clr-muted);align-items:center;gap:.75rem;margin-left:auto;font-size:.85rem;display:flex}.btn-logout{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:6px;padding:.3rem .75rem;font-size:.8rem}.btn-logout:hover{color:var(--clr-text);border-color:var(--clr-muted)}.mobile-menu-toggle{color:var(--clr-text);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.5rem;line-height:1;display:none}@media (width<=940px){.mobile-menu-toggle{margin-left:auto;display:block}.app-header{flex-wrap:wrap;gap:.5rem;height:auto;padding:.5rem 1rem}.app-nav{flex-direction:column;order:10;gap:0;width:100%;display:none}.app-nav.mobile-open{display:flex}.app-nav a{border-bottom:1px solid var(--clr-border);border-radius:0;padding:.65rem .75rem;font-size:.9rem}.app-nav a:first-child{border-top:1px solid var(--clr-border);margin-top:.5rem}.app-user{display:none}.app-nav.mobile-open~.app-user{order:11;width:100%;padding:.5rem 0;display:flex}.nav-flyout.nav-mega{width:100%;box-shadow:none;border:none;border-top:1px solid var(--clr-border);position:static}.nav-sub-flyout{box-shadow:none;border:none;padding-left:1rem;position:static}}.app-main{width:100%;max-width:1280px;margin:0 auto;padding:1.5rem}.page-loading,.page-error,.page-empty{text-align:center;color:var(--clr-muted);padding:3rem 1rem;font-size:.95rem}.page-error{color:var(--clr-red)}.games-list header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.games-list h1{font-size:1.4rem}.btn-new-game{background:var(--clr-accent-fill);color:#fff;border-radius:6px;padding:.4rem .9rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:opacity .15s}.btn-new-game:hover{opacity:.85}.games-list ul{flex-direction:column;gap:.5rem;list-style:none;display:flex}.games-list li a{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);color:var(--clr-text);align-items:center;gap:1rem;padding:.75rem 1rem;text-decoration:none;transition:border-color .15s;display:flex}.games-list li a:hover{border-color:var(--clr-accent)}.game-date{color:var(--clr-muted);min-width:6rem;font-size:.85rem}.game-opponent{font-weight:600}.game-score{color:var(--clr-accent2);margin-left:auto;font-weight:700}.game-detail header{margin-bottom:1.5rem}.game-detail header a{color:var(--clr-muted);font-size:.85rem;text-decoration:none}.game-detail header a:hover{color:var(--clr-text)}.game-detail h1{margin-top:.25rem;font-size:1.4rem}.game-detail .game-score{color:var(--clr-accent2);font-size:1.2rem;font-weight:700}.game-tabs{border-bottom:1px solid var(--clr-border);gap:.25rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.game-tabs button,.team-subnav>button:not(.team-subnav-action),.tag-modes button:not(.tag-fs-exit),.tag-tabs button{color:var(--clr-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:.4rem .9rem;font-size:.875rem;font-weight:500}.game-tabs button:not(.active):hover,.team-subnav>button:not(.team-subnav-action):not(.active):hover,.tag-modes button:not(.tag-fs-exit):not(.active):hover,.tag-tabs button:not(.active):hover{color:var(--clr-text)}.game-tabs button.active,.team-subnav>button.active,.tag-modes button.active,.tag-tabs button.active{background:var(--clr-accent-fill);color:#fff}.game-tabs button:disabled{opacity:.4;cursor:not-allowed}@media (width<=600px),(pointer:coarse){.game-tabs button,.team-subnav>button:not(.team-subnav-action),.tag-modes button:not(.tag-fs-exit),.tag-tabs button{min-height:44px}}.game-tabs-spacer{flex:1}.game-tabs{flex-wrap:wrap}.game-tabs .team-subnav-action{white-space:nowrap;text-decoration:none}.game-summary a{color:var(--clr-accent-text);text-decoration:none}.game-summary a:hover{text-decoration:underline}.team-subnav{border-bottom:1px solid var(--clr-border);flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}@media (width<=600px){.team-subnav .game-tabs-spacer{flex-basis:100%}}.team-subnav-action{opacity:.85;border-radius:4px;margin-left:.25rem;text-transform:none!important;color:var(--clr-accent)!important;border:1px solid var(--clr-border)!important;padding:.3rem .6rem!important;font-size:.75rem!important}.team-subnav-action:hover{opacity:1;background:#2563eb1a}.team-filter-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.team-filter-select{background:var(--clr-accent-fill);color:#fff;cursor:pointer;border:none;border-radius:20px;padding:.4rem .7rem;font-size:.8rem;font-weight:600}.team-filter-select option{background:var(--clr-mid);color:var(--clr-text)}.team-filter-clear{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:20px;padding:.35rem .75rem;font-size:.8rem}.team-filter-clear:hover{color:var(--clr-text);border-color:var(--clr-text)}.team-main-grid{grid-template-columns:240px 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}@media (width<=768px){.team-main-grid{grid-template-columns:minmax(0,1fr)}}.team-leaders h3{margin-bottom:.75rem;font-size:.9rem}.leader-section{margin-bottom:.75rem}.leader-source{color:var(--clr-muted);margin:-.1rem 0 .25rem;font-size:.7rem;display:block}.games-switch{border:1px solid var(--clr-border);border-radius:8px;width:100%;margin:.5rem 0 .25rem;display:flex;overflow:hidden}.games-switch button{min-height:44px;color:var(--clr-muted);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .75rem;font-weight:600;display:inline-flex}.games-switch button+button{border-left:1px solid var(--clr-border)}.games-switch button.active{background:var(--clr-accent-fill);color:#fff}.games-side{align-items:center;gap:.4rem;margin:.5rem 0 .25rem;font-weight:600;display:flex}.tryout-source{margin:0 0 .75rem;font-size:.8rem}.admin-badge{letter-spacing:.02em;text-transform:none;background:var(--clr-border);color:var(--clr-text);border-radius:999px;padding:.05rem .4rem;font-size:.65rem;font-weight:600;display:inline-block}.leader-category{text-transform:uppercase;color:var(--clr-muted);letter-spacing:.03em;margin-bottom:.25rem;font-size:.7rem;font-weight:600;display:block}.leader-row{justify-content:space-between;align-items:center;padding:.2rem 0;font-size:.85rem;display:flex}.leader-row a{color:var(--clr-accent-text);text-decoration:none}.leader-row a:hover{text-decoration:underline}.leader-row span:last-child{font-weight:700}.team-recent-games h3{margin-bottom:.5rem;font-size:.9rem}.game-quick-links{flex-wrap:wrap;gap:.5rem;display:flex}.game-quick-links a{color:var(--clr-accent);text-transform:uppercase;letter-spacing:.02em;font-size:.75rem;font-weight:600;text-decoration:none}.game-quick-links a:hover{text-decoration:underline}.team-roster-section h3,.team-shifts-section h3,.team-skater-section h3{margin-bottom:.5rem;font-size:.9rem}.configurator-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.configurator-header h3{margin:0;font-size:.9rem}.configurator-picker{background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:8px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:1rem;padding:1rem;display:grid}.configurator-category h4{text-transform:uppercase;color:var(--clr-muted);letter-spacing:.03em;margin:0 0 .4rem;font-size:.75rem}.configurator-option{cursor:pointer;align-items:center;gap:.4rem;padding:.15rem 0;font-size:.8rem;display:flex}.configurator-option input{margin:0}.game-form{flex-direction:column;gap:1rem;max-width:600px;display:flex}.form-row{gap:1rem;display:flex}.form-row>.form-field{flex:1}.form-field{flex-direction:column;gap:.3rem;display:flex}.form-field label{color:var(--clr-muted);font-size:.8rem;font-weight:500}.form-field input,.form-field select{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.5rem .7rem;font-size:.9rem}.form-field input:focus,.form-field select:focus{border-color:var(--clr-accent);outline:none}.form-field .check-label{color:var(--clr-text);flex-direction:row;align-items:center;gap:.5rem;display:flex}.form-field .check-label input[type=checkbox]{width:auto;margin:0;padding:0}.form-field input:disabled,.form-field select:disabled{opacity:.5}.game-form .form-field :is(input:not([type=checkbox]),select),.game-form .form-submit{box-sizing:border-box;min-height:44px}.form-row .past-toggle{flex-direction:row;align-self:flex-start;align-items:center}.form-field-scores .score-inputs{align-items:center;gap:.4rem;display:flex}.form-field-scores .score-inputs input{text-align:center;width:60px}.score-dash{color:var(--clr-muted);font-weight:600}.form-error{color:var(--clr-red);font-size:.85rem}.form-success{color:var(--clr-green);font-size:.85rem}.form-submit{background:var(--clr-accent-fill);color:#fff;cursor:pointer;border:none;border-radius:7px;align-self:flex-start;padding:.6rem 1.2rem;font-size:.95rem;font-weight:600}.form-submit:disabled{opacity:.5;cursor:not-allowed}.game-detail-subtitle{color:var(--clr-muted);font-size:.9rem}.game-upload{flex-direction:column;gap:1rem;max-width:500px;display:flex}.upload-field{flex-direction:column;gap:.35rem;display:flex}.upload-field label{color:var(--clr-muted);font-size:.85rem;font-weight:500}.upload-field input[type=file]{color:var(--clr-text);font-size:.85rem}.upload-existing{color:var(--clr-green);font-size:.8rem}.game-upload button{background:var(--clr-accent-fill);color:#fff;cursor:pointer;border:none;border-radius:7px;padding:.6rem 1.2rem;font-size:.95rem;font-weight:600}.game-upload button:disabled{opacity:.5;cursor:not-allowed}.gamesheet-result{flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.gamesheet-result ul{flex-direction:column;gap:.2rem;margin:0;padding-left:1.1rem;display:flex}.gamesheet-result .upload-warn{color:var(--clr-amber);font-weight:600}.gamesheet-result .upload-success{color:var(--clr-green-soft)}.who-played{border-top:1px solid var(--clr-border);flex-direction:column;gap:.8rem;padding-top:.9rem;display:flex}.who-played h3{margin:0;font-size:.95rem}.who-group{flex-direction:column;gap:.35rem;display:flex}.who-head{text-transform:uppercase;letter-spacing:.05em;color:var(--clr-muted);font-size:.78rem;font-weight:600}.who-note{margin:0;font-size:.82rem}.who-rows{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.35rem .75rem;margin:0;padding:0;list-style:none;display:grid}.who-row{flex-wrap:wrap;align-items:center;gap:.5rem;min-width:0;display:flex}.who-num{font-variant-numeric:tabular-nums;min-width:2.6rem;font-weight:700}.who-num small{color:var(--clr-amber);font-weight:600}.who-played .who-mark{white-space:nowrap;background:var(--clr-btn-bg);border:1px solid var(--clr-btn-border);min-height:44px;color:var(--clr-text);border-radius:8px;padding:0 .75rem;font-size:.8rem;font-weight:400}.who-played .who-mark[aria-pressed=true]{background:var(--clr-accent-fill);border-color:var(--clr-accent-fill);color:#fff;font-weight:600}.who-played .who-mark[aria-disabled=true]{opacity:.6;cursor:progress}.who-played .upload-warn{color:var(--clr-amber);font-weight:600}.who-saved{color:var(--clr-green-soft);font-size:.8rem;font-weight:600}.sheet-length{flex-direction:column;align-items:flex-start;gap:.35rem;margin-top:.5rem;display:flex}.sheet-length button{min-height:44px}.gamesheet-open{flex-flow:wrap;align-items:center;gap:.5rem;margin:.25rem 0;font-size:.875rem;display:flex}.gamesheet-open button,.gamesheet-open a{border:1px solid var(--clr-border);min-height:44px;color:var(--clr-accent);cursor:pointer;background:0 0;border-radius:6px;align-items:center;padding:0 .9rem;font-size:.875rem;text-decoration:none;display:inline-flex}.gamesheet-open button[aria-disabled=true]{opacity:.6;cursor:progress}@media (width<=480px){.gamesheet-open{flex-direction:column;align-items:flex-start}}.who-alert{color:var(--clr-amber);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:.4rem;margin:0;font-size:.82rem;font-weight:600;display:flex}.who-played .who-alert button{background:var(--clr-btn-bg);border:1px solid var(--clr-btn-border);min-height:44px;color:var(--clr-text);padding:0 .7rem;font-size:.8rem;font-weight:400}.who-plain{flex-wrap:wrap;gap:.35rem .6rem;margin:0;padding:0;list-style:none;display:flex}.who-plain li{font-variant-numeric:tabular-nums;background:rgba(var(--clr-ink-rgb), .05);border-radius:6px;padding:.2rem .5rem;font-weight:700}.who-lines{flex-direction:column;gap:.2rem;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.goalie-periods{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.goalie-row{flex-wrap:wrap;align-items:center;gap:.35rem .6rem;display:flex}.goalie-src{color:var(--clr-muted);font-size:.8rem}.who-seg{border:1px solid var(--clr-btn-border);border-radius:8px;flex-wrap:wrap;max-width:100%;display:inline-flex;overflow:hidden}.who-played .who-seg button{background:var(--clr-btn-bg);min-height:44px;color:var(--clr-text);border:0;border-radius:0;padding:0 .75rem;font-size:.8rem;font-weight:400}.who-played .who-seg button+button{border-left:1px solid var(--clr-btn-border)}.who-played .who-seg button[aria-pressed=true]{background:var(--clr-accent-fill);color:#fff;font-weight:600}.who-played .who-seg button[aria-disabled=true]{opacity:.6;cursor:progress}.goalie-switch{border:1px solid var(--clr-btn-border);border-radius:8px;flex-direction:column;gap:.5rem;min-width:0;margin:.35rem 0 0;padding:.5rem .7rem;display:flex}.goalie-switch legend{padding:0 .25rem;font-size:.85rem;font-weight:600}.goalie-line{flex-wrap:wrap;align-items:center;gap:.35rem .6rem;font-size:.85rem;display:flex}.who-played .goalie-line>button{background:var(--clr-btn-bg);border:1px solid var(--clr-btn-border);min-height:44px;color:var(--clr-text);border-radius:8px;padding:0 .75rem;font-size:.8rem;font-weight:400}.goalie-switch input{width:7ch;min-height:44px;font-size:.9rem}.upload-progress{background:var(--clr-border);border-radius:3px;height:6px;overflow:hidden}.upload-progress-bar{background:var(--clr-accent-fill);height:100%;transition:width .3s}.upload-error{color:var(--clr-red);font-size:.85rem}.upload-success{color:var(--clr-green);font-size:.85rem}.upload-dropzone{border:2px dashed var(--clr-border);border-radius:var(--radius);text-align:center;cursor:pointer;padding:1.5rem;transition:border-color .15s,background .15s}.upload-dropzone:hover,.upload-dropzone.drag-over{border-color:var(--clr-accent);background:#0d94880d}.dropzone-empty{color:var(--clr-muted);font-size:.9rem}.dropzone-selected{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.dropzone-filename{font-size:.9rem;font-weight:600}.dropzone-filesize{color:var(--clr-muted);font-size:.8rem}.dropzone-remove{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:4px;margin-left:auto;padding:.2rem .5rem;font-size:.75rem}.dropzone-remove:hover{color:var(--clr-red);border-color:var(--clr-red)}.livebarn-fields{flex-direction:column;gap:.75rem;display:flex}.analysis-options{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;gap:.75rem;padding:.75rem;display:flex}.vlm-advanced{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem;display:grid}.vlm-field input{width:100%}.upload-field select{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.5rem .7rem;font-size:.9rem}.upload-field select:focus{border-color:var(--clr-accent);outline:none}.job-progress{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:1rem}.job-status-badge{text-transform:uppercase;border-radius:4px;padding:.2rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}.job-status-badge[data-status=running]{color:var(--clr-purple-soft);background:#805ad540}.job-status-badge[data-status=queued],.job-status-badge[data-status=in_review]{color:var(--clr-gold);background:#d69e2e40}.job-status-badge[data-status=complete],.job-status-badge[data-status=approved]{color:var(--clr-green-soft);background:#38a16933}.job-status-badge[data-status=failed]{color:var(--clr-red-soft);background:#e53e3e40}.job-message{color:var(--clr-muted);margin-top:.5rem;font-size:.85rem}.job-progress-bar{background:var(--clr-border);border-radius:3px;height:6px;margin-top:.75rem;overflow:hidden}.job-progress-fill{background:var(--clr-accent-fill);height:100%;transition:width .5s}.job-error-detail{color:var(--clr-red);margin-top:.5rem;font-size:.85rem}.job-loading{color:var(--clr-muted)}.analysis-view{flex-direction:column;gap:1.5rem;display:flex}.analysis-section{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:1rem}.analysis-section h3{color:var(--clr-accent2);margin-bottom:.75rem;font-size:1rem}.analysis-empty{color:var(--clr-muted);font-size:.9rem}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.metric-card{background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:8px;flex-direction:column;align-items:center;padding:.75rem;display:flex}.metric-value{color:var(--clr-text);font-size:1.4rem;font-weight:700}.metric-label{color:var(--clr-muted);margin-top:.25rem;font-size:.75rem}.analysis-table{border-collapse:collapse;width:100%;font-size:.85rem}.analysis-table th{text-align:left;color:var(--clr-muted);border-bottom:1px solid var(--clr-border);padding:.4rem .6rem;font-weight:600}.analysis-table td{border-bottom:1px solid var(--clr-border);padding:.4rem .6rem}.analysis-table tr:hover{background:rgba(var(--clr-ink-rgb), .03)}.tryout-stats .cell-name{max-width:8.5rem;display:inline-block}.event-bar-row{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.event-bar-label{min-width:100px;color:var(--clr-muted);font-size:.8rem}.event-bar-track{background:var(--clr-border);border-radius:4px;flex:1;height:8px;overflow:hidden}.event-bar-fill{background:var(--clr-accent-fill);border-radius:4px;height:100%}.event-bar-count{text-align:right;min-width:30px;font-size:.8rem;font-weight:600}.admin-dashboard h1{margin-bottom:.5rem;font-size:1.4rem}.admin-dashboard h2{color:var(--clr-muted);margin:1.5rem 0 .75rem;font-size:1.1rem}.admin-dashboard h3{margin-bottom:.5rem;font-size:1rem}.admin-section-header{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.admin-section-actions{gap:.4rem;display:flex}.admin-form{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);margin-bottom:1rem;padding:1rem}.admin-form h3{margin-bottom:.75rem;font-size:1rem}.form-actions{gap:.5rem;margin-top:.75rem;display:flex}.form-hint{color:var(--clr-muted);margin-bottom:.5rem;font-size:.8rem}.btn-primary{background:var(--clr-accent-fill);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.4rem .85rem;font-size:.85rem;font-weight:600}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:6px;padding:.4rem .85rem;font-size:.85rem}.btn-secondary:hover{color:var(--clr-text);border-color:var(--clr-muted)}.btn-danger{color:var(--clr-danger);cursor:pointer;background:#e53e3e33;border:none;border-radius:5px;padding:.3rem .65rem;font-size:.8rem}.btn-danger:hover{background:#e53e3e59}.config-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.config-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;gap:.6rem;padding:1rem;display:flex}.config-card.enabled{border-color:var(--clr-accent)}.config-card-header{justify-content:space-between;align-items:center;display:flex}.config-toggle{cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.config-toggle input{accent-color:var(--clr-accent)}.config-badge{color:var(--clr-green);background:#38a16926;border-radius:4px;padding:.15rem .45rem;font-size:.65rem;font-weight:700}.bulk-actions-bar{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.bulk-list{background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:6px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.25rem;max-height:240px;margin-bottom:.5rem;padding:.5rem;display:grid;overflow-y:auto}.bulk-item{cursor:pointer;border-radius:4px;align-items:center;gap:.5rem;padding:.2rem .4rem;font-size:.85rem;display:flex}.bulk-item:hover{background:var(--clr-mid)}.bulk-item input{accent-color:var(--clr-accent)}.services-panel{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);margin-top:1rem;padding:1rem}.services-panel h3{margin-bottom:.75rem;font-size:1rem}.service-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;display:grid}.service-card{background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:8px;padding:.75rem}.service-header{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:flex}.svc-row{justify-content:space-between;padding:.15rem 0;font-size:.8rem;display:flex}.svc-label{color:var(--clr-muted)}.svc-error{color:var(--clr-red)}.svc-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.svc-online{background:var(--clr-green)}.svc-offline{background:var(--clr-red)}.svc-unconfigured{background:var(--clr-muted);opacity:.4}.mono{font-family:monospace;font-size:.75rem}.admin-jobs-list{flex-direction:column;gap:2px;display:flex}.admin-job-item{border-radius:6px;align-items:center;gap:.6rem;padding:.5rem .6rem;transition:background .1s;display:flex}.admin-job-item:hover{background:rgba(var(--clr-ink-rgb), .03)}.admin-job-info{flex:1;min-width:0}.admin-job-game{white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.admin-job-meta{color:var(--clr-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.admin-job-progress{flex-shrink:0}.job-dot-running,.job-dot-ingesting,.job-dot-uploading,.job-dot-transferring{background:#b794f4}.job-dot-queued,.job-dot-pending{background:var(--clr-gold)}.job-dot-complete,.job-dot-approved{background:var(--clr-green)}.job-dot-failed,.job-dot-rejected,.job-dot-cancelled{background:var(--clr-red)}.job-dot-in_review{background:var(--clr-gold)}.job-log-pre{color:var(--clr-muted);background:var(--clr-dark);border:1px solid var(--clr-border);white-space:pre-wrap;word-break:break-all;border-radius:6px;max-height:200px;margin:.25rem .6rem .5rem;padding:.5rem;font-family:monospace;font-size:.7rem;overflow-y:auto}.job-actions{flex-shrink:0;gap:.4rem;display:flex}.job-actions button{cursor:pointer;border:none;border-radius:5px;padding:.3rem .65rem;font-size:.8rem}.qa-scorecard-row{flex-wrap:wrap;gap:.6rem;margin-bottom:1rem;display:flex}.qa-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;flex:1;min-width:140px;padding:.6rem .75rem;position:relative}.qa-card.qa-green{border-left:3px solid var(--clr-green)}.qa-card.qa-amber{border-left:3px solid var(--clr-gold)}.qa-card.qa-red{border-left:3px solid var(--clr-red)}.qa-label{color:var(--clr-muted);font-size:.7rem;font-weight:500}.qa-value{margin:.15rem 0;font-size:1.3rem;font-weight:700}.qa-detail{color:var(--clr-muted);font-size:.65rem}.qa-delta{font-size:.65rem;font-weight:600;position:absolute;top:.5rem;right:.6rem}.qa-up{color:var(--clr-green)}.qa-down{color:var(--clr-red)}.qa-flat{color:var(--clr-muted)}.qa-green{color:var(--clr-green)}.qa-amber{color:var(--clr-gold)}.qa-red{color:var(--clr-red)}.qa-chart-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.qa-chart-panel{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;padding:.75rem}.qa-chart-title{margin-bottom:.5rem;font-size:.85rem;font-weight:600}.qa-chart-title span{color:var(--clr-muted);font-size:.7rem;font-weight:400}.qa-chart-wrap{height:200px}.qa-detail-stat{padding:.15rem 0;font-size:.8rem}.qa-timeline-title{color:var(--clr-muted);margin:1rem 0 .5rem;font-size:.9rem;font-weight:600}.qa-timeline{flex-direction:column;gap:.4rem;display:flex}.qa-timeline-card{background:var(--clr-surface);border:1px solid var(--clr-border);cursor:pointer;border-radius:8px;padding:.6rem .75rem;transition:border-color .15s}.qa-timeline-card:hover{border-color:var(--clr-accent)}.qa-tl-label{font-size:.85rem;font-weight:600}.qa-tl-date{color:var(--clr-muted);font-size:.7rem}.qa-tl-metrics{gap:1rem;margin:.3rem 0;font-size:.8rem;display:flex}.qa-notes{color:var(--clr-muted);white-space:pre-wrap;margin-top:.25rem;font-size:.7rem}.qa-diag-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.5rem;margin-bottom:1rem;display:grid}.qa-diag-item{background:#f59e0b14;border:1px solid #f59e0b;border-radius:6px;padding:.4rem .6rem;font-size:.75rem}.qa-diag-item.qa-diag-crit{background:#f43f5e14;border-color:#f43f5e}.track-review{flex-direction:column;gap:.75rem;display:flex}.tr-summary{flex-wrap:wrap;gap:.25rem;display:flex}.tr-filter-btn{background:var(--clr-surface);border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;border-radius:6px;align-items:center;gap:.4rem;padding:.3rem .7rem;font-size:.8rem;display:flex}.tr-filter-btn:hover{color:var(--clr-text)}.tr-filter-btn.active{background:var(--clr-accent-fill);border-color:var(--clr-accent);color:#fff}.tr-filter-count{background:rgba(var(--clr-ink-rgb), .15);border-radius:99px;padding:.1rem .35rem;font-size:.7rem;font-weight:700}.tr-bulk-bar{background:var(--clr-mid);border:1px solid var(--clr-accent);border-radius:var(--radius);align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.tr-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.6rem;display:grid}.tr-card{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,box-shadow .15s;overflow:hidden}.tr-card:hover{border-color:var(--clr-muted)}.tr-card.selected{border-color:var(--clr-accent);box-shadow:0 0 0 2px #0d94884d}.tr-card.assigned{border-left:3px solid var(--clr-green)}.tr-card.non_player{border-left:3px solid var(--clr-muted);opacity:.6}.tr-card.skipped{border-left:3px solid var(--clr-gold);opacity:.6}.tr-crop{cursor:pointer;aspect-ratio:1;background:#000;position:relative;overflow:hidden}.tr-crop img{object-fit:cover;width:100%;height:100%}.tr-no-crop{height:100%;color:var(--clr-muted);justify-content:center;align-items:center;font-size:.75rem;display:flex}.tr-duration{color:#fff;background:#000000b3;border-radius:3px;padding:.1rem .3rem;font-size:.65rem;position:absolute;bottom:4px;right:4px}.tr-thumbs{gap:2px;padding:2px;display:flex}.tr-thumbs img{object-fit:cover;cursor:pointer;border-radius:3px;width:32px;height:32px}.tr-info{flex-wrap:wrap;gap:.25rem;padding:.4rem .5rem;font-size:.7rem;display:flex}.tr-status{text-transform:uppercase;border-radius:3px;padding:.1rem .3rem;font-size:.6rem;font-weight:600}.tr-status.pending{color:var(--clr-gold);background:#d69e2e33}.tr-status.assigned{color:var(--clr-green);background:#38a16933}.tr-status.non_player{background:rgba(var(--clr-ink-rgb), .08);color:var(--clr-muted)}.tr-status.skipped{color:var(--clr-gold);background:#d69e2e26}.tr-status.auto_matched{color:var(--clr-accent2);background:#0d948833}.tr-side{border-radius:3px;padding:.1rem .3rem;font-size:.6rem}.tr-side.home{color:var(--clr-teal-soft);background:#38b2ac26}.tr-side.away{color:var(--clr-red-soft);background:#e53e3e26}.tr-ocr{color:var(--clr-muted)}.tr-assigned{color:var(--clr-green);font-weight:500}.tr-skip-reason{color:var(--clr-gold);font-style:italic}.tr-event{color:var(--clr-accent2)}.tr-actions{gap:.25rem;padding:.25rem .5rem .4rem;display:flex}.tr-actions button{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:4px;padding:.2rem .4rem;font-size:.65rem}.tr-actions button:hover{color:var(--clr-text);border-color:var(--clr-muted)}.tr-modal-overlay{z-index:200;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.tr-modal{background:var(--clr-dark);border:1px solid var(--clr-border);border-radius:var(--radius);min-width:320px;max-width:500px;padding:1.25rem}.tr-modal h3{margin-bottom:.75rem;font-size:1rem}.tr-modal-video{width:90vw;max-width:640px}.card-list{flex-direction:column;gap:.5rem;list-style:none;display:flex}.card-link{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);color:var(--clr-text);align-items:center;gap:1rem;padding:.75rem 1rem;text-decoration:none;transition:border-color .15s;display:flex}.card-link:hover{border-color:var(--clr-accent)}.card-title{font-weight:600}.card-sub{color:var(--clr-muted);font-size:.85rem}.search-input{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;width:100%;max-width:300px;margin-bottom:1rem;padding:.55rem .85rem;font-size:.9rem}.search-input:focus{border-color:var(--clr-accent);outline:none}.home-page{max-width:800px;margin:0 auto}.home-columns{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=640px){.home-columns{grid-template-columns:1fr}}.home-column,.home-results{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:.75rem}.home-section{margin-bottom:1rem}.home-section:last-child{margin-bottom:0}.home-section h2{text-transform:uppercase;color:var(--clr-muted);margin-bottom:.4rem;font-size:.85rem;font-weight:700}.home-item{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);align-items:center;gap:.5rem;padding:.35rem .2rem;display:flex}.home-item-name{color:var(--clr-accent2);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.85rem;font-weight:500;text-decoration:none;overflow:hidden}.home-item-name:hover{text-decoration:underline}.home-item-meta{color:var(--clr-muted);font-size:.7rem}.home-empty{color:var(--clr-muted);font-size:.8rem}.home-empty a{color:var(--clr-accent2)}.team-detail h1,.player-detail h1{margin-top:.25rem;font-size:1.4rem}.team-detail h2,.player-detail h2{color:var(--clr-muted);margin:1.5rem 0 .75rem;font-size:1.1rem}.team-meta{color:var(--clr-muted);font-size:.9rem}.team-detail a,.player-detail a{color:var(--clr-accent2);text-decoration:none}.players-title{text-align:center;color:var(--clr-accent2);margin-bottom:1rem;font-size:1.2rem}.players-search-wrap{max-width:500px;margin:0 auto 1.5rem;position:relative}.players-search{background:var(--clr-surface);border:1px solid var(--clr-border);width:100%;color:var(--clr-text);border-radius:8px;padding:.6rem 2rem .6rem .85rem;font-size:.95rem}.players-search:focus{border-color:var(--clr-accent);outline:none}.players-search-clear{color:var(--clr-muted);cursor:pointer;background:0 0;border:none;font-size:1.2rem;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.players-panels{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:1rem;display:grid}@media (width<=768px){.players-panels{grid-template-columns:minmax(0,1fr)}}.players-sidebar{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:.75rem}.players-sidebar h3{text-transform:uppercase;color:var(--clr-muted);margin-bottom:.5rem;font-size:.85rem;font-weight:700}.players-sidebar h4{color:var(--clr-muted);text-align:center;margin:.75rem 0 .35rem;font-size:.75rem}.player-sidebar-item{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);align-items:center;gap:.5rem;padding:.4rem .3rem;display:flex}.player-sidebar-name{color:var(--clr-accent2);white-space:nowrap;font-size:.85rem;font-weight:500;text-decoration:none}.player-sidebar-name:hover{text-decoration:underline}.player-sidebar-team{color:var(--clr-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.7rem;overflow:hidden}.player-sidebar-empty{color:var(--clr-muted);text-align:center;padding:1rem 0;font-size:.8rem}.player-avatar-sm{background:var(--clr-dark) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23718096' stroke-width='1.5'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E") center/20px no-repeat;border:1px solid var(--clr-border);border-radius:50%;flex-shrink:0;width:32px;height:32px}.fav-btn{color:var(--clr-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.1rem .3rem;font-size:1rem;line-height:1}.fav-btn:hover,.fav-btn.fav-active{color:var(--clr-gold)}.players-main{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:.75rem}.players-main h3{text-transform:uppercase;color:var(--clr-muted);margin-bottom:.5rem;font-size:.85rem;font-weight:700}.player-rows{flex-direction:column;display:flex}.player-row{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);align-items:center;gap:.75rem;padding:.5rem .3rem;display:flex}.player-row:hover{background:rgba(var(--clr-ink-rgb), .02)}.player-row-info{flex-shrink:0;align-items:center;gap:.5rem;min-width:200px;display:flex}.player-row-name-team{min-width:0}.player-row-name{color:var(--clr-accent2);white-space:nowrap;font-size:.85rem;font-weight:600;text-decoration:none;display:block}.player-row-name:hover{text-decoration:underline}.player-row-team{color:var(--clr-muted);white-space:nowrap;text-overflow:ellipsis;max-width:180px;font-size:.7rem;display:block;overflow:hidden}.player-row-games{flex:1;gap:.4rem;min-width:0;display:flex;overflow-x:auto}.player-row-no-games{color:var(--clr-muted);font-size:.75rem;font-style:italic}.player-game-chip{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);white-space:nowrap;border-radius:6px;flex-shrink:0;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.7rem;text-decoration:none;transition:border-color .15s;display:flex}.player-game-chip:hover{border-color:var(--clr-accent)}.pgc-opp{color:var(--clr-accent2);font-weight:600}.pgc-score{font-weight:700}.pgc-type,.pgc-date{color:var(--clr-muted);font-size:.6rem}.player-bio{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);align-items:flex-start;gap:1rem;margin:1rem 0;padding:1rem;display:flex}.player-bio-avatar{background:var(--clr-dark);border:2px solid var(--clr-accent);width:64px;height:64px;color:var(--clr-accent2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;display:flex}.player-bio-info{flex:1}.player-bio-pos{color:var(--clr-muted);font-size:1rem;font-weight:400}.player-bio-meta{color:var(--clr-muted);flex-wrap:wrap;gap:1rem;margin-top:.25rem;font-size:.8rem;display:flex}.player-bio-team{color:var(--clr-accent2);margin-top:.25rem;font-size:.85rem}.player-bio-team.current{font-weight:600}.player-skills{flex-direction:column;display:flex}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;display:grid}.skills-table{flex-direction:column;display:flex}.skill-row{border-bottom:1px solid var(--clr-border);justify-content:space-between;padding:.3rem 0;font-size:.8rem;display:flex}.skill-row span:first-child{color:var(--clr-muted)}.skill-row span:last-child{font-weight:600}.player-shifts{flex-direction:column;gap:.75rem;display:flex}.shift-game-group{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:.6rem .75rem}.shift-game-header{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.shift-game-header a{font-size:.85rem;font-weight:600}.shift-game-count{color:var(--clr-muted);font-size:.75rem}.shift-list{flex-direction:column;gap:.15rem;display:flex}.shift-item{border-bottom:1px solid rgba(var(--clr-ink-rgb), .03);gap:.6rem;padding:.15rem 0;font-size:.8rem;display:flex}.shift-period{color:var(--clr-accent2);min-width:24px;font-weight:600}.shift-time{color:var(--clr-muted)}.shift-dur{margin-left:auto;font-weight:500}.calendar-page{flex-direction:column;gap:1rem;display:flex}.calendar-page .calendar-controls{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.cal-nav{align-items:center;gap:.25rem;display:flex}.cal-nav-btn{background:var(--clr-surface);border:1px solid var(--clr-border);color:var(--clr-text);cursor:pointer;border-radius:6px;padding:.35rem .65rem;font-size:1rem;line-height:1}.cal-nav-btn:hover{border-color:var(--clr-accent)}.cal-today-btn{padding:.35rem .7rem;font-size:.8rem}.cal-label{text-align:center;min-width:170px;font-size:.95rem;font-weight:600}.cal-view-toggle{gap:.2rem;display:flex}.cal-view-toggle button{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:6px;padding:.3rem .7rem;font-size:.8rem}.cal-view-toggle button.active{background:var(--clr-accent-fill);border-color:var(--clr-accent);color:#fff}.cal-filter{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.35rem .6rem;font-size:.8rem}.cal-filter:focus{border-color:var(--clr-accent);outline:none}.film-room h1{margin-bottom:.5rem;font-size:1.4rem}.fr-layout{grid-template-columns:280px 1fr;align-items:start;gap:1rem;margin-top:1rem;display:grid}@media (width<=768px){.fr-layout{grid-template-columns:1fr}}.fr-sidebar{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);max-height:70vh;overflow-y:auto}.fr-playlist-item{cursor:pointer;border-bottom:1px solid rgba(var(--clr-ink-rgb), .03);align-items:center;gap:.4rem;padding:.45rem .6rem;font-size:.8rem;transition:background .1s;display:flex}.fr-playlist-item:hover{background:rgba(var(--clr-ink-rgb), .03)}.fr-playlist-item.active{border-left:3px solid var(--clr-accent);background:#0d94881a}.fr-expand{color:var(--clr-muted);flex-shrink:0;width:12px;font-size:.65rem}.fr-playlist-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.fr-clip-count{color:var(--clr-muted);background:var(--clr-dark);border-radius:99px;padding:.1rem .35rem;font-size:.65rem}.fr-main{flex-direction:column;gap:1rem;display:flex}.fr-player{border-radius:var(--radius);background:#000;overflow:hidden}.fr-video{cursor:pointer;width:100%;max-height:500px;display:block}.fr-controls{background:var(--clr-mid);align-items:center;gap:.6rem;padding:.4rem .6rem;display:flex}.fr-play-btn{color:var(--clr-text);cursor:pointer;background:0 0;border:none;padding:.2rem .4rem;font-size:1rem}.fr-time{color:var(--clr-muted);font-family:monospace;font-size:.8rem}.fr-empty{text-align:center;color:var(--clr-muted);background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:3rem}.fr-clips h3{color:var(--clr-muted);margin-bottom:.4rem;font-size:.9rem}.fr-clip-item{cursor:pointer;border-bottom:1px solid rgba(var(--clr-ink-rgb), .03);border-radius:4px;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.8rem;transition:background .1s;display:flex}.fr-clip-item:hover{background:rgba(var(--clr-ink-rgb), .03)}.fr-clip-item.active{background:#0d94881a}.fr-clip-title{flex:1;font-weight:500}.fr-clip-range{color:var(--clr-muted);font-family:monospace;font-size:.75rem}.fr-clip-dur{color:var(--clr-accent2);font-size:.75rem;font-weight:600}.fr-shared-tag{color:var(--clr-accent);border:1px solid var(--clr-accent);white-space:nowrap;border-radius:99px;padding:.05rem .35rem;font-size:.65rem}.fr-share-bar{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.fr-share-state{color:var(--clr-muted);font-size:.8rem}.fr-share-btn{padding:.2rem .6rem;font-size:.75rem}.fr-share-panel{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;gap:.6rem;padding:.8rem;display:flex}.fr-share-sees{margin:0;font-size:.85rem}.fr-share-choice,.fr-share-actions{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.fr-share-players{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.3rem .8rem;font-size:.85rem;display:grid}.fr-share-players label,.fr-share-choice label{align-items:center;gap:.35rem;min-width:0;display:flex}@media (pointer:coarse){.fr-share-btn,.fr-share-actions button,.fr-share-players label,.fr-share-choice label,.fr-playlist-item,.fr-clip-item{min-height:44px}}.glossary-page h1{margin-bottom:.25rem;font-size:1.4rem}.glossary-intro{color:var(--clr-muted);margin-bottom:1rem;font-size:.9rem}.glossary-filters{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.glossary-section{margin-bottom:1.5rem}.glossary-section h2{color:var(--clr-accent2);border-bottom:1px solid var(--clr-border);margin-bottom:.5rem;padding-bottom:.25rem;font-size:1rem}.glossary-terms{flex-direction:column;gap:.4rem;display:flex}.glossary-term{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:8px;padding:.6rem .75rem}.glossary-term-header{align-items:center;gap:.5rem;margin-bottom:.2rem;display:flex}.glossary-term-name{font-size:.9rem;font-weight:600}.glossary-term-abbr{color:var(--clr-accent);background:#0d94881a;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:700}.glossary-term-def{color:var(--clr-muted);font-size:.8rem;line-height:1.5}.insights-page h1{margin-bottom:.5rem;font-size:1.4rem}.insights-page{flex-direction:column;height:calc(100vh - 120px);display:flex}.insights-status{margin-bottom:.5rem}.insights-provider{color:var(--clr-accent2);background:#0d94881a;border-radius:4px;padding:.2rem .5rem;font-size:.8rem}.insights-unconfigured{color:var(--clr-gold);font-size:.8rem}.insights-context-bar{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.5rem .75rem;display:flex}.insights-context-summary{color:var(--clr-muted);font-size:.75rem}.insights-model{align-items:center;gap:.35rem;min-width:0;font-size:.85rem;display:flex}.insights-model select{min-width:0;max-width:20rem}@media (width<=600px){.insights-context-summary{flex:1 0 100%}}.insights-hint{margin:.25rem 0;padding:0 .75rem}.insights-filter-bar{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-wrap:wrap;flex-shrink:0;align-items:flex-start;gap:.4rem;margin-bottom:.5rem;padding:.5rem .75rem;display:flex}.insights-type-chip{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;border-radius:999px;padding:.25rem .6rem;font-size:.7rem;text-decoration:line-through;transition:border-color .15s,color .15s}.insights-type-chip:hover{border-color:var(--clr-accent)}.insights-type-chip.chip-on{color:var(--clr-text);border-color:var(--clr-accent);background:#0d94881f;text-decoration:none}.insights-game-picker{font-size:.75rem;position:relative}.insights-game-picker summary{cursor:pointer;color:var(--clr-accent2);border:1px solid var(--clr-border);background:var(--clr-dark);white-space:nowrap;border-radius:6px;padding:.25rem .5rem;list-style:none}.insights-game-picker[open] summary{border-color:var(--clr-accent)}.insights-game-picker-list{z-index:20;background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;gap:.3rem;min-width:280px;max-height:260px;margin-top:.25rem;padding:.5rem;display:flex;position:absolute;overflow-y:auto;box-shadow:0 6px 18px #0006}.insights-game-picker-list label{color:var(--clr-text);cursor:pointer;white-space:nowrap;align-items:center;gap:.4rem;font-size:.75rem;display:flex}.insights-picker-clear{border:1px solid var(--clr-border);color:var(--clr-muted);cursor:pointer;background:0 0;border-radius:6px;margin-top:.25rem;padding:.25rem .5rem;font-size:.7rem}.insights-picker-clear:hover{border-color:var(--clr-accent);color:var(--clr-text)}.insights-chat{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;flex:1;min-height:0;display:flex}.insights-messages{flex-direction:column;flex:1;gap:.5rem;padding:.75rem;display:flex;overflow-y:auto}.chat-msg{max-width:85%}.chat-user{align-self:flex-end}.chat-assistant{align-self:flex-start}.chat-system{align-self:center}.chat-msg-role{color:var(--clr-muted);text-transform:uppercase;margin-bottom:.15rem;font-size:.65rem;font-weight:600}.chat-user .chat-msg-role{text-align:right}.chat-msg-content{border-radius:10px;padding:.5rem .75rem;font-size:.85rem;line-height:1.6}.chat-user .chat-msg-content{background:var(--clr-accent-fill);color:#fff;border-bottom-right-radius:2px}.chat-assistant .chat-msg-content{background:var(--clr-dark);border:1px solid var(--clr-border);border-bottom-left-radius:2px}.chat-system .chat-msg-content{color:var(--clr-muted);text-align:center;background:0 0;font-size:.8rem;font-style:italic}.chat-thinking{opacity:.6}.chat-msg-content h2,.chat-msg-content h3,.chat-msg-content h4{margin:.5rem 0 .25rem;font-size:.9rem}.chat-msg-content li{margin-left:1rem}.chat-msg-content code{background:rgba(var(--clr-ink-rgb), .1);border-radius:3px;padding:.1rem .3rem;font-size:.8rem}.chat-code{background:var(--clr-mid);white-space:pre-wrap;border-radius:6px;margin:.5rem 0;padding:.5rem;font-size:.75rem;overflow-x:auto}.insights-input-bar{border-top:1px solid var(--clr-border);gap:.5rem;padding:.5rem .75rem;display:flex}.insights-input-bar textarea{resize:none;background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:8px;flex:1;padding:.45rem .65rem;font-family:inherit;font-size:.85rem}.insights-input-bar textarea:focus{border-color:var(--clr-accent);outline:none}.insights-input-bar textarea:disabled{opacity:.5}.placeholder{color:var(--clr-muted);text-align:center;padding:2rem}.placeholder h1{color:var(--clr-text);margin-bottom:.5rem;font-size:1.4rem}.section-hint{color:var(--clr-muted);margin-bottom:.75rem;font-size:.85rem;line-height:1.5}.field-hint{color:var(--clr-muted);margin-top:.25rem;font-size:.75rem;line-height:1.4;display:block}.text-error{color:var(--clr-red)}.alert{border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.825rem}.alert-success{color:var(--clr-green);background:#38a16926;border:1px solid #38a16959}.alert-error{color:var(--clr-red);background:#e53e3e26;border:1px solid #e53e3e59}.alert-warning{color:var(--clr-amber);background:#f59e0b26;border:1px solid #f59e0b66}.card-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.card-body{flex-direction:column;gap:.4rem;display:flex}.card-actions{flex-wrap:wrap;gap:.4rem;margin-top:.75rem;display:flex}.kv{align-items:baseline;gap:.75rem;font-size:.825rem;display:flex}.kv>span:first-child{color:var(--clr-muted);flex-shrink:0;min-width:5.5rem}.kv code{color:var(--clr-text);word-break:break-all;font-size:.75rem}.badge-muted{background:var(--clr-border);color:var(--clr-muted)}.game-day{flex-direction:column;gap:1rem;display:flex}.game-day-head h3{margin-bottom:.25rem;font-size:1.05rem}.game-day-head .section-hint{margin-bottom:0}.stage-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.stage{gap:.9rem;padding:0 0 1.15rem;display:flex;position:relative}.stage:before{content:"";background:var(--clr-border);width:1px;position:absolute;top:1.35rem;bottom:0;left:.48rem}.stage:last-child{padding-bottom:0}.stage:last-child:before{display:none}.stage-mark{z-index:1;text-align:center;background:var(--clr-dark);flex-shrink:0;width:1rem;font-size:.8rem;line-height:1.35rem;position:relative}.mark-ok{color:var(--clr-green)}.mark-partial{color:var(--clr-gold)}.mark-missing{color:var(--clr-muted)}.stage-body{flex-direction:column;flex:1;gap:.35rem;min-width:0;display:flex}.stage-head{flex-wrap:wrap;align-items:baseline;gap:.6rem;display:flex}.stage-head strong{font-size:.9rem}.stage-detail{color:var(--clr-muted);font-size:.825rem}.stage-missing .stage-head strong{color:var(--clr-muted)}.stage-next{color:var(--clr-gold);margin:0;font-size:.8rem}.stage-actions{flex-wrap:wrap;gap:.4rem;margin-top:.2rem;display:flex}.stage-actions label.btn-primary{cursor:pointer;align-items:center;display:inline-flex}.stage-table{border-collapse:collapse;width:100%;margin-top:.2rem;font-size:.78rem}.stage-table td{border-bottom:1px solid var(--clr-border);color:var(--clr-muted);white-space:nowrap;padding:.28rem .6rem .28rem 0}.stage-table td:first-child{color:var(--clr-text);white-space:normal;word-break:break-all}.stage-code{color:var(--clr-muted);word-break:break-all;margin-top:.4rem;font-size:.72rem;display:block}@media (width<=640px){.stage-table{display:block;overflow-x:auto}.kv{flex-direction:column;gap:.1rem}}.tagging-page{gap:.75rem;display:grid}.tryout-layer{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}.tag-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.tag-row label{color:var(--clr-muted);align-items:center;gap:.35rem;font-size:.85rem;display:flex}.tag-setup{min-width:0}.tag-setup .tag-row label{flex-wrap:wrap;min-width:0;max-width:100%}.tag-setup .tag-row select{text-overflow:ellipsis;min-width:0;max-width:20rem}.tag-gamepos{white-space:nowrap}.tag-gamepos small{color:var(--clr-muted)}@media (pointer:coarse){.tag-gamepos select{min-height:44px}}.tag-warn{color:var(--clr-gold);font-weight:600}.tag-series a,.tag-setup a{color:var(--clr-accent-text)}.tag-status{margin:.4rem 0;font-size:.9rem}.tag-row>.tag-status{flex-basis:100%;margin:0}.tag-input-bad{outline:1px solid var(--clr-amber);border-color:var(--clr-amber)!important}.tag-card{border:1px solid var(--clr-border);background:var(--clr-surface);border-radius:8px;margin:.5rem 0;padding:.6rem .8rem}.tag-roster,.tag-export{width:100%;font-family:ui-monospace,monospace;font-size:.85rem}.tag-cliplist{max-height:16rem;padding:0;list-style:none;overflow:auto}.tag-save{color:var(--clr-muted);font-size:.85rem}.tag-save-error,.tag-save-conflict{color:var(--clr-red);font-weight:600}.tag-main{grid-template-columns:minmax(0,3fr) minmax(18rem,2fr);align-items:start;gap:1rem;display:grid}@media (width<=900px){.tag-main{grid-template-columns:1fr}}.tag-main{position:relative}.tag-keyline{z-index:3;border:1px solid var(--clr-amber);background:var(--clr-dark);max-width:min(36rem,100% - 1rem);color:var(--clr-amber);pointer-events:none;border-radius:6px;margin:0;padding:.3rem .6rem;font-size:.85rem;line-height:1.3;position:absolute;top:.5rem;left:.5rem}.tag-clock{margin-top:.3rem;font-family:ui-monospace,monospace}.tag-banner{text-align:center;background:rgba(var(--clr-ink-rgb), .04);color:var(--clr-muted);border-radius:6px;margin-top:.4rem;padding:.35rem .6rem;font-size:.9rem;font-weight:600}.tag-banner.stopped{background:var(--clr-accent-fill);color:#fff}.tag-banner.running.dead{color:var(--clr-yellow);background:#e5d35a29;box-shadow:inset 0 0 0 1px #e5d35a}.tag-banner.tag-flash{animation:.7s ease-out tag-flash}@keyframes tag-flash{0%{box-shadow:0 0 0 3px #fff}to{box-shadow:0 0 #0000}}.tag-run-note{text-align:center;margin:.2rem 0 0}.tag-switchq{border:1px solid var(--clr-border);border-radius:6px;margin:.4rem 0;padding:.35rem .6rem;font-size:.9rem}.tag-switchq.dead{border-color:#e5d35a}.tag-switchq button{margin-left:.25rem}.tag-gap{border:2px solid var(--clr-gold);border-radius:8px;margin-top:.5rem;padding:.5rem .7rem}.tag-modes,.tag-tabs{border-bottom:1px solid var(--clr-border);flex-wrap:wrap;gap:.25rem;margin-bottom:.5rem;padding-bottom:.4rem;display:flex}.tag-statebtns{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.4rem;display:grid}.tag-statebtns button{border:2px solid var(--clr-border);align-content:center;justify-items:center;gap:1px;min-height:3.2rem;display:grid}.tag-statebtns small,.tag-pbtn .nm{color:var(--clr-muted);font-size:.75rem}.tag-statebtns kbd{color:var(--clr-muted);font-size:.7rem}.tag-statebtns .tag-clockbtn{border-color:var(--clr-accent);grid-column:span 2}.tag-statebtns .tag-penbtn{border-color:var(--clr-gold)}.tag-statebtns .tag-against{border-color:var(--clr-red)}.tag-group{margin-bottom:.6rem}.tag-group-h{margin-bottom:.3rem;font-size:.85rem;font-weight:600}.tag-players{grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:.4rem;display:grid}.tag-pbtn{border:2px solid var(--clr-border);border-radius:8px;justify-items:center;min-height:4rem;padding:.35rem .2rem;display:grid}.tag-group-D .tag-pbtn{border-color:#3b82f6}.tag-group-F .tag-pbtn{border-color:#a855f7}.tag-pbtn.on{background:var(--clr-green);color:#fff}.tag-pbtn.on .nm{color:#fff}.tag-pbtn .num{font-size:1.2rem;font-weight:700}.tag-pbtn .act{text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.tag-pbtn .ghost{color:var(--clr-gold);text-transform:uppercase;min-height:.7rem;font-size:.6rem}.tag-pbtn.hel-near{outline:2px dashed var(--clr-gold);outline-offset:2px}.tag-pbtn.hel-now{outline-width:3px;outline-style:solid}.tag-pick{border:1px solid var(--clr-border);border-radius:8px;gap:.4rem;margin-top:.5rem;padding:.5rem;display:grid}.tag-chips{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.tag-chips button small{color:var(--clr-muted);font-size:.7rem;display:block}.tag-tab{overflow-x:auto}.tag-shiftlist{white-space:nowrap;font-family:ui-monospace,monospace;font-size:.8rem}.tag-done{opacity:.6}.tag-hp-list{flex-direction:column;gap:.35rem;margin:.4rem 0 0;padding:0;list-style:none;display:flex}.tag-hp-row{border:1px solid var(--clr-border);border-radius:8px;flex-direction:column;gap:.35rem;padding:0 .6rem;display:flex}.tag-hp-row[aria-current=true]{border-color:var(--clr-accent);box-shadow:inset 3px 0 0 var(--clr-accent);padding-bottom:.4rem}.tag-hp-head{font-variant-numeric:tabular-nums;text-align:left;flex-wrap:wrap;align-items:center;gap:.15rem .7rem;min-height:44px;display:flex}button.tag-hp-head{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.tag-hp-num{min-width:3.2ch;color:var(--clr-accent-text);font-weight:700}.tag-hp-src{color:var(--clr-muted);font-size:.8rem}.tag-hp-near{color:var(--clr-gold);font-size:.78rem;font-weight:600}.tag-hp-acts{flex-wrap:wrap;gap:.35rem;padding-bottom:.4rem;display:flex}.tag-hp-acts button,.tag-hp-bar button,.tag-hp-chips button,.tag-hp-fold button,.tag-hp-list>li>button,.tag-hp-done button,.tag-hp-pick{min-height:44px}.tag-hp-done .tag-hp-head{color:var(--clr-muted)}.tag-hp-chips{flex-wrap:wrap;gap:.35rem;margin:.4rem 0;display:flex}.tag-hp-chips button[aria-pressed=true]{border-color:var(--clr-accent);box-shadow:inset 0 0 0 1px var(--clr-accent);font-weight:600}.tag-hp-chips small{color:var(--clr-muted);font-weight:400}.tag-hp-pick{max-width:100%;margin:.4rem 0;display:none}@media (width<=640px){.tag-hp-chips{display:none}.tag-hp-pick{display:block}}.tag-hp-bar,.tag-hp-fold{flex-wrap:wrap;align-items:center;gap:.35rem .7rem;margin:.4rem 0;display:flex}.tag-hp-bar>.tag-status{flex-basis:100%;margin:0}.tag-hp-keys{color:var(--clr-muted);font-size:.78rem;display:none}@media (hover:hover) and (pointer:fine){.tag-hp-keys{display:inline}}.tag-hp-solo{font-variant-numeric:tabular-nums;margin:.4rem 0}.tag-total td{border-top:2px solid var(--clr-border);font-weight:700}.tag-posgrid{flex-wrap:wrap;gap:.35rem;display:flex}.tag-posgrid button[data-pos=D]{border:2px solid #3b82f6}.tag-posgrid button[data-pos=F]{border:2px solid #a855f7}.linkbtn{color:var(--clr-accent);cursor:pointer;background:0 0;border:none;padding:0 .2rem}.tag-drops{gap:.3rem;margin-left:.5rem;display:inline-flex}.tag-resume{margin:.2rem 0 0}.tag-main.tag-fs{z-index:100;color:var(--clr-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#000;flex-direction:column;align-items:stretch;gap:0;display:flex;position:fixed;inset:0}.tag-main.tag-fs .tag-video{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.tag-main.tag-fs .tag-video>*{flex:none}.tag-main.tag-fs .tag-video>:first-child{flex:1 1 0;min-height:0}.tag-main.tag-fs .tag-clock,.tag-main.tag-fs .tag-banner{border-radius:0;margin:0;padding:.15rem .6rem}.tag-main.tag-fs .tag-clock{flex-wrap:wrap;align-items:baseline;gap:0 1rem;display:flex}.tag-main.tag-fs .tag-controls{background:var(--clr-dark,#0d1b2a);border-top:3px solid var(--clr-accent);flex-wrap:wrap;flex:none;align-items:flex-start;column-gap:1.5rem;max-height:48vh;padding:.4rem .75rem .6rem;display:flex;overflow:auto}.tag-main.tag-fs .tag-fs-exit{margin-left:auto}.tag-main.tag-fs .tag-controls>*,.tag-main.tag-fs .tag-lockset>*{flex:1 0 100%}.tag-main.tag-fs .tag-controls>.tag-group,.tag-main.tag-fs .tag-lockset>.tag-group{flex:1 1 0;min-width:12rem}.tag-main.tag-fs .tag-help{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (width>=701px){.tag-main.tag-fs .tag-video{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:auto auto minmax(0,1fr);align-items:center;column-gap:.75rem;display:grid}.tag-main.tag-fs .tag-video>:first-child{display:contents!important}.tag-main.tag-fs .tag-video>:first-child>div:first-of-type{grid-area:1/1/auto/-1;align-self:stretch;min-width:0;height:100%}.tag-main.tag-fs .tag-video>:first-child>div:nth-of-type(2){grid-area:2/1;margin:0!important;padding:.2rem 0 .2rem .4rem!important}.tag-main.tag-fs .tag-video .tag-clock{grid-area:2/2}.tag-main.tag-fs .tag-video .tag-banner{border-radius:6px;grid-area:2/3;margin:.2rem .4rem .2rem 0;padding:.2rem .6rem}.tag-main.tag-fs .tag-video>:not(:first-child):not(.tag-clock):not(.tag-banner){grid-column:1/-1;margin:0;padding:.1rem .6rem}.tag-main.tag-fs .tag-controls{align-items:center;gap:.25rem .75rem;max-height:40vh;padding:.3rem .5rem}.tag-main.tag-fs .tag-modes{display:contents}.tag-main.tag-fs .tag-controls:after{content:"";flex:1 0 100%;order:2;height:0}.tag-main.tag-fs .tag-modes button{flex:none;order:3;min-height:0;padding:.15rem .6rem;font-size:.8rem}.tag-main.tag-fs .tag-modes .tag-fs-exit{order:6;margin-left:auto}.tag-main.tag-fs .tag-help,.tag-main.tag-fs .tag-keys{display:none}.tag-main.tag-fs .tag-lockset>.tag-statebtns{order:1;grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:.3rem}.tag-main.tag-fs .tag-statebtns button{flex-wrap:wrap;place-content:center;column-gap:.3rem;min-height:44px;padding:.15rem .25rem;font-size:.8rem;line-height:1.15;display:flex}.tag-main.tag-fs .tag-statebtns small{display:none}.tag-main.tag-fs .tag-statebtns kbd{font-size:.65rem}.tag-main.tag-fs .tag-lockset>.tag-group{order:1;align-items:center;gap:.4rem;margin:0;display:flex}.tag-main.tag-fs .tag-group-h{white-space:nowrap;margin:0;font-size:.75rem}.tag-main.tag-fs .tag-players{flex:1 1 0;gap:.3rem;min-width:0;display:flex}.tag-main.tag-fs .tag-pbtn{flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;min-width:2.6rem;min-height:44px;padding:.1rem;line-height:1.1;display:flex}.tag-main.tag-fs .tag-pbtn .num{font-size:1rem}.tag-main.tag-fs .tag-pbtn .nm,.tag-main.tag-fs .tag-pbtn .ghost:empty{display:none}.tag-main.tag-fs .tag-lockset>.tag-status,.tag-main.tag-fs .tag-lockset>p.field-hint,.tag-main.tag-fs .tag-lockset>p.tag-warn,.tag-main.tag-fs .tag-controls>.tag-fs-lock{flex:0 auto;order:4;margin:0;font-size:.8rem}.tag-main.tag-fs .tag-lockset>.tag-row{flex:none;order:5}.tag-main.tag-fs .tag-lockset>.tag-row button{padding:.15rem .5rem;font-size:.8rem}}body.tag-bigmode{overflow:hidden}.cal-day-name{color:var(--clr-muted);font-weight:600}.cal-game-chip .chip-upload{border:1px solid var(--clr-accent);color:var(--clr-accent);cursor:pointer;background:0 0;border-radius:6px;margin-top:.25rem;padding:.1rem .4rem;font-size:.75rem;display:inline-block}@media (width<=600px){.calendar-grid.week-view{grid-template-columns:minmax(0,1fr)}.calendar-grid.week-view .cal-header-cell{display:none}.calendar-grid.week-view .cal-day{min-height:0}.calendar-grid.week-view .cal-game-chip{white-space:normal}.calendar-grid.week-view .cal-day-num{border-radius:6px;width:auto;height:auto;margin-left:0;padding:.1rem .4rem;display:inline-block}.calendar-grid.week-view .cal-day-name{margin-right:.3rem}}.shifts-player{margin-bottom:1rem;scroll-margin-top:4.5rem}.shifts-now{margin:0 0 .4rem}.shift-play{border:1px solid var(--clr-accent);color:var(--clr-accent-text);cursor:pointer;background:0 0;border-radius:6px;min-width:2.25rem;min-height:2.25rem;margin-right:.5rem}.shift-item.active{background:#0d94881f;border-radius:6px}.shifts-tab .shift-item{align-items:center}.user-form .form-row{flex-wrap:wrap}.user-form .form-row>.form-field{min-width:12rem}.link-section{border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;gap:.45rem;min-width:0;margin:.75rem 0 0;padding:.6rem .75rem .75rem;display:flex}.link-section legend{color:var(--clr-text);padding:0 .3rem;font-size:.8rem;font-weight:600}.link-section .page-empty{text-align:left;margin:0;padding:.25rem 0}.link-list,.link-results{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.link-item{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.link-item>span{flex:10rem;min-width:0}.link-item select{background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.3rem .5rem;font-size:.8rem}.link-item select:focus{border-color:var(--clr-accent);outline:none}.link-sub{color:var(--clr-muted);font-size:.75rem}.link-results button{text-align:left;background:var(--clr-surface);width:100%;color:var(--clr-text);border:1px solid var(--clr-border);cursor:pointer;border-radius:6px;padding:.35rem .55rem;font-size:.85rem}.link-results button:hover{border-color:var(--clr-accent)}.view-as-bar{z-index:101;background:var(--clr-gold);height:36px;color:var(--clr-dark);align-items:center;gap:.75rem;padding:0 1rem;font-size:.85rem;display:flex;position:sticky;top:0}.view-as-text{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.view-as-exit{background:var(--clr-dark);color:var(--clr-gold);cursor:pointer;border:none;border-radius:6px;flex:none;padding:.25rem .8rem;font-size:.8rem;font-weight:600}.viewing-as .app-header{top:36px}.analysis-table tr.row-focus td{background:#d69e2e1f}.admin-subhead{margin:1.5rem 0 .5rem;font-size:1rem}.lines-section{margin-bottom:1.5rem}.lines-section h4{margin:0 0 .5rem}.lines-boxes{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));align-items:start;gap:.75rem;margin-top:.75rem;display:grid}.lines-box{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);gap:.75rem;min-width:0;padding:.6rem .75rem;display:grid}.lines-box>.lines-box{background:0 0;border:0;padding:0}.lines-box h5{margin:0 0 .4rem;font-size:.85rem}.mxw{max-height:70vh;overflow:auto}.mx{border-collapse:separate;border-spacing:0;font-size:.75rem}.mx th,.mx td{white-space:nowrap;padding:0}.mx thead th{z-index:2;background:var(--clr-surface);color:var(--clr-muted);text-align:center;padding:2px 4px;font-weight:500;position:sticky;top:0}.mx th[scope=row]{z-index:1;background:var(--clr-surface);text-align:left;padding:0 .5rem 0 0;font-weight:500;position:sticky;left:0}.mx thead .mx-corner{z-index:3;text-align:left;left:0}.mx td{text-align:center;font-variant-numeric:tabular-nums;border:1px solid var(--clr-border);background:color-mix(in srgb, var(--clr-data) var(--v,0%), var(--clr-surface));min-width:3.2em;height:1.9em}.mx td.self{background:var(--clr-border)}.mx td.hi{color:var(--clr-dark);font-weight:600}.mx tr.mx-focus>th,.mx td.mx-focus,.mx tr.mx-focus>td{box-shadow:inset 0 0 0 2px var(--clr-accent)}.lines-player label{flex-wrap:wrap;max-width:100%}.lines-player select{min-width:0;max-width:20rem}.lines-sum{margin-top:.5rem}.mx-cell{all:unset;cursor:pointer;width:100%;height:100%;min-height:1.9em;color:inherit;text-align:center;display:block}.mx-cell:focus-visible{outline:2px solid var(--clr-accent);outline-offset:-2px}.lines-list{gap:.15rem;display:grid}.lines-row{border-bottom:1px solid rgba(var(--clr-ink-rgb), .04);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .75rem;padding:.35rem 0;font-size:.8rem;display:grid}.lines-open{all:unset;border:1px solid var(--clr-border);cursor:pointer;box-sizing:border-box;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .75rem;min-height:2.75rem;padding:.35rem .5rem;font-size:.8rem;display:grid}.lines-open:hover,.lines-open:focus-visible{background:rgba(var(--clr-ink-rgb), .04);border-color:var(--clr-accent);outline:none}.lines-list{gap:.3rem}.lines-part{margin:0;display:block}.lines-part b{min-width:1.1em;color:var(--clr-muted);font-weight:600;display:inline-block}.lines-under{color:var(--clr-muted);margin:.5rem 0 .1rem;font-size:.75rem;font-weight:500}.lines-drill-head p{margin:0 0 .2rem}.source-line{color:var(--clr-muted);margin:0 0 .4rem;font-size:.75rem}.source-line-btn{all:unset;cursor:help;color:inherit;margin-block:-.85rem;padding-block:.85rem;display:inline-block}.source-line-btn:focus-visible{outline:none}.source-line-btn:focus-visible .source-line-words{outline:2px solid var(--clr-accent);outline-offset:1px}.source-line-why{margin-top:.15rem;display:block}.lines-section .lines-views{display:none}.lines-names{overflow-wrap:anywhere;min-width:0}.lines-names a{color:var(--clr-accent-text);text-decoration:none}.lines-time{white-space:nowrap}.lines-drill{background:var(--clr-surface);border:1px solid var(--clr-accent);border-radius:var(--radius);margin:.75rem 0;padding:.6rem .75rem;scroll-margin-top:4.5rem}.lines-drill-head{margin:0 0 .4rem}.lines-drill-game h5{margin:.6rem 0 .3rem;font-size:.85rem}.lines-drill .shift-item{flex-wrap:wrap;align-items:center}@media (width<=600px){.mx-cell{min-width:2.75rem;min-height:2.75rem}.mx td{min-width:2.75rem;height:2.75rem}.lines-section .lines-views{margin:.5rem 0 0;display:flex}.lines-section[data-view=lines] [data-v]:not([data-v=lines]),.lines-section[data-view=units] [data-v]:not([data-v=units]),.lines-section[data-view=pairs] [data-v]:not([data-v=pairs]),.lines-section:not([data-view=pairs]) .lines-boxes>.lines-box[data-v=pairs]{display:none}}.team-filter{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;display:flex}.tagged-plays-table .tagged-plays-group th{text-align:left;background:var(--clr-mid);font-weight:600}.tagged-plays-table .tagged-plays-watch{width:2.75rem;padding-right:0}.tagged-plays-table .tagged-plays-watch .shift-play{min-width:2.75rem;min-height:2.75rem;margin-right:0}.tagged-plays-table .tagged-plays-with{margin-top:.15rem}.tryout-source .tag-count>button:not(.link-button){border:1px solid var(--clr-accent);color:var(--clr-accent);min-height:44px;font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.4rem .85rem;font-weight:600}.tryout-source .tag-count>button:disabled{opacity:.5;cursor:not-allowed}.team-chip{border:1px solid var(--clr-border);background:var(--clr-dark);min-height:2.75rem;color:var(--clr-muted);cursor:pointer;border-radius:999px;padding:.35rem 1rem;font-size:.85rem}.team-chip:hover{border-color:var(--clr-accent)}.team-chip.on{color:var(--clr-text);border-color:var(--clr-accent);background:#0d948826;font-weight:600}.team-filter-inline .team-chip{min-height:2.25rem;margin-left:.35rem}.by-team{margin:.75rem 0 1rem}.by-team .linkbtn{min-height:2.75rem}.by-team-total td{border-top:1px solid var(--clr-border)}.game-plays{margin-top:1rem}.shift-goals{margin-top:.5rem}.shift-item .play-title{flex:auto;min-width:0}.angle-switch{flex-wrap:wrap;gap:.4rem;margin:.25rem 0 .5rem;display:flex}.form-ask{border:1px solid var(--clr-gold);border-radius:var(--radius);margin:.5rem 0;padding:.6rem .75rem}.form-ask p{margin:0 0 .25rem;font-size:.9rem}.form-ask .form-actions{flex-wrap:wrap;margin-top:.4rem}.gf-which{flex-wrap:wrap;align-items:center;gap:.25rem .5rem;margin-top:.3rem;font-size:.85rem;display:flex}.gf-which>span{overflow-wrap:anywhere;flex:12rem;min-width:0}.gf-which button,.form-ask .form-actions button{min-height:44px}.app-nav a.nav-flyout-item{color:var(--clr-text);border:none;border-radius:0;margin:0;padding:.45rem .85rem;font-size:.82rem;font-weight:400}.app-nav a.nav-flyout-item:hover{background:var(--clr-mid);color:var(--clr-accent2)}.tag-count{flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.8rem;display:inline-flex}.link-button{min-height:44px;color:var(--clr-accent);cursor:pointer;font:inherit;background:0 0;border:0;padding:.5rem .25rem;text-decoration:underline}.modal-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.period-strips{margin:.35rem 0 .5rem}.period-strip{grid-template-columns:1.75rem minmax(0,1fr);align-items:center;gap:.5rem;margin:.2rem 0;display:grid}.ps-n{color:var(--clr-muted);font-size:.75rem}.ps-bar{background:rgba(var(--clr-ink-rgb), .06);border-right:2px solid var(--clr-muted);border-radius:3px;min-width:0;height:14px;position:relative}.ps-seg{all:unset;background:var(--clr-accent-fill);cursor:pointer;box-sizing:border-box;border-radius:2px;min-width:2px;position:absolute;top:1px;bottom:1px}.ps-seg.ps-horn{box-shadow:inset -2px 0 #fff}.ps-seg.on,.ps-seg:focus-visible{outline-offset:1px;z-index:1;outline:2px solid #fff}.ps-pick{margin:.2rem 0 0}.lines-lineup{margin-top:1rem}.lines-lineup-key{flex-wrap:wrap;gap:.25rem 1rem;margin:.25rem 0 .75rem;padding:0;font-size:.8rem;list-style:none;display:flex}.lu-dot{vertical-align:-1px;border-radius:2px;width:.7rem;height:.7rem;margin-right:.35rem;display:inline-block}.lu-0{background:#4e9af1}.lu-1{background:#f1a94e}.lu-2{background:#5ec98f}.lu-3{background:#d66bd1}.lu-4{background:#e5d35a}.lu-5{background:#6fd3e0}.ps-seg.lu-x,.lu-dot.lu-x{background:#8a8f98}.tryout-groups tr.bubble-name th{color:var(--clr-text);padding-top:.75rem}.tryout-groups tr.bubble-all td{font-weight:600}.tryout-groups tr.bubble-as td:first-child{padding-left:1.5rem}.tryout-groups td.bubble-game{max-width:8.5rem}.tryout-groups .bubble-table th{white-space:normal}.placement-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:.5rem;display:flex}.placement-summary{margin:0}.placement-actions{flex-wrap:wrap;gap:.5rem;display:flex}.placement-jersey{width:4.5rem}.placement-live{font-size:.75rem;display:block}.placement-confirm{margin:0 0 .75rem;padding-left:1.25rem}.placement-edit tr.row-error td{background:#e53e3e14}.placement-edit select,.placement-edit input{min-height:2.25rem}.admin-lab-list{flex-direction:column;gap:.75rem;margin:1rem 0;padding:0;list-style:none;display:flex}.admin-lab-list .field-hint{display:block}.admin-teams-line,.teams-switches{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.teams-switches label{align-items:center;gap:.35rem;min-height:44px;display:inline-flex}.teams-season-group{color:var(--clr-muted);margin:.75rem 0 .25rem}.season-chip{border:1px solid var(--clr-border);color:var(--clr-muted);border-radius:999px;margin-left:.5rem;padding:.05rem .45rem;font-size:.7rem;display:inline-block}.season-why{display:block}.past-toggle{align-items:center;gap:.35rem;min-height:44px;font-size:.85rem;display:inline-flex}.angle-sync .angle-grid{grid-template-columns:minmax(0,1fr);gap:.75rem;display:grid}@media (width>=1024px){.angle-sync .angle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.angle-sync .angle-moments h4{margin:.5rem 0 .25rem;font-size:.9rem}.angle-sync .angle-anchors{margin:.25rem 0;padding-left:1.1rem;font-size:.9rem}.angle-sync .angle-now{margin:.25rem 0 0;font-family:ui-monospace,monospace;font-size:.95rem;font-weight:600}.angle-sync .angle-bar{z-index:2;background:var(--clr-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;display:flex;position:sticky;bottom:0}@media (width<=1023px){.angle-sync button{min-width:44px;min-height:44px}.tag-netpick .tag-chips button,.tag-sa-switch button{min-height:44px}}.confirm-row{border:1px solid var(--clr-border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:.35rem 1rem;margin:.5rem 0;padding:.5rem .75rem;display:flex}.confirm-row legend{padding:0 .25rem}.confirm-row>p{flex-basis:100%;margin:0}.confirm-us{flex-wrap:wrap;align-items:center;gap:.35rem 1rem;display:inline-flex}.line-teams{flex-direction:column;gap:.5rem;margin:.5rem 0;padding:0;list-style:none;display:flex}.line-team{border:1px solid var(--clr-border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:.35rem .75rem;min-width:0;padding:.5rem .75rem;display:flex}.line-team .cell-name{overflow-wrap:anywhere}.line-preview{background:var(--clr-surface);border-radius:var(--radius);flex-basis:100%;padding:.5rem .75rem}.line-preview p{margin:0 0 .5rem}.line-settled{margin-top:.5rem}.line-settled summary{cursor:pointer;color:var(--clr-muted)}@media (pointer:coarse){.line-act,.line-preview button,.confirm-us label{min-height:44px}}.confirm-row label{align-items:center;gap:.35rem;min-height:44px;display:inline-flex}.confirm-search{flex-wrap:wrap;gap:.5rem;display:inline-flex}.confirm-pick{color:var(--clr-text);font-weight:600}.confirm-games-few{display:none}@media (width<=600px){.confirm-games-all{display:none}.confirm-games-few{display:inline}}.cal-game-chip.cal-cancelled{opacity:.75}.cal-game-chip .chip-changed{background:var(--clr-gold);color:#111;border-radius:.3rem;padding:0 .3rem;font-size:.7rem;font-weight:600;display:inline-block}:root{--ev-game:#60a5fa;--ev-tournament:#c084fc;--ev-scrimmage:#fbbf24;--ev-practice:#4ade80;--ev-tryout:#94a3b8;--ev-event:#e2e8f0;--ev-on:var(--clr-dark)}.ev-game{--ev:var(--ev-game)}.ev-tournament{--ev:var(--ev-tournament)}.ev-scrimmage{--ev:var(--ev-scrimmage)}.ev-practice{--ev:var(--ev-practice)}.ev-tryout{--ev:var(--ev-tryout)}.ev-event{--ev:var(--ev-event)}.cal-game-chip.fill-event,.cal-game-chip.fill-upcoming,.cal-game-chip.fill-cancelled,.cal-game-chip.fill-postponed{border:1px solid var(--ev);color:var(--clr-text);background:0 0}.cal-game-chip.fill-cancelled,.cal-game-chip.fill-postponed{border-style:dashed}.cal-game-chip.fill-played{border:1px solid var(--clr-border);border-left:4px solid var(--ev);color:var(--clr-text);background:0 0}.cal-game-chip.fill-done{background:var(--ev);border:1px solid var(--ev);color:var(--ev-on)}.cal-game-chip .chip-time{color:var(--clr-text)}.cal-game-chip.fill-done .chip-time,.cal-game-chip.fill-done .chip-upload,.cal-game-chip.fill-done .chip-next{color:inherit;border-color:currentColor}.cal-game-chip .chip-kind{font-weight:700}.cal-game-chip .chip-status{white-space:normal;font-size:.72rem}.cal-game-chip .chip-next{border:1px solid var(--clr-text);color:var(--clr-text);cursor:pointer;background:0 0;border-radius:6px;padding:.1rem .4rem;font-size:.72rem;display:inline-block}.cal-game-chip .chip-changed{margin-right:.3rem}.cal-legend{color:var(--clr-text);justify-content:flex-start;padding:0 0 .5rem}.cal-legend-dot.ev-game,.cal-legend-dot.ev-tournament,.cal-legend-dot.ev-scrimmage,.cal-legend-dot.ev-practice,.cal-legend-dot.ev-tryout,.cal-legend-dot.ev-event{background:var(--ev)}.cal-legend-fill{border:1px solid var(--clr-text);border-radius:3px;flex-shrink:0;width:18px;height:10px}.cal-legend-fill.fill-played{border-left-width:4px;border-color:var(--clr-border) var(--clr-border) var(--clr-border) var(--clr-text)}.cal-legend-fill.fill-done{background:var(--clr-text)}.cal-work-filter button{min-height:36px}@media (width<=600px){.cal-work-filter button,.cal-game-chip .chip-next,.cal-game-chip .chip-upload{min-height:44px}}.cal-team-filter{gap:.3rem;margin:0 0 .6rem;display:grid}.team-filter-chips{flex-wrap:wrap;gap:.35rem;display:flex}.team-filter-chips button{border:1px solid var(--clr-border);color:var(--clr-text);font:inherit;cursor:pointer;background:0 0;border-radius:999px;min-height:36px;padding:.3rem .9rem;font-weight:600}.team-filter-chips button.active{background:var(--clr-text);color:var(--clr-dark);border-color:var(--clr-text)}.team-filter-note{color:var(--clr-text);margin:0;font-size:.85rem}.team-filter-note .link-button{min-height:0;padding:0 .2rem}.team-badge{letter-spacing:.02em;border:1px solid;border-radius:4px;margin-right:.3rem;padding:0 .3rem;font-size:.68rem;font-weight:700;display:inline-block}.tag-team-chip{color:#fff;border-radius:999px;padding:.3rem .8rem;font-size:1rem;font-weight:700;display:inline-block}.tag-lockbar{flex-wrap:wrap;align-items:center;gap:.5rem}.tag-lockchip{border:1px solid var(--clr-gold);color:var(--clr-gold);border-radius:999px;padding:.3rem .8rem;font-weight:700;display:inline-block}.tag-lockchip-open{border-color:var(--clr-accent);color:var(--clr-accent)}fieldset.tag-lockset{border:0;min-width:0;margin:0;padding:0;display:contents}.tag-backups h4{margin:1rem 0 .4rem}.tag-backup-list{margin:0;padding:0;list-style:none}.tag-backup-list li{border-bottom:1px solid var(--clr-border);justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem 0;display:flex}@media (width<=600px){.tag-lockbar button,.tag-backup-list button{min-height:44px}}.replay-top{flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;display:flex}.replay-top p{margin:.25rem 0}.replay-clock b{font-size:1.25rem}.replay-main{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.replay-video{flex:999 560px;min-width:0}.replay-side{flex-direction:column;flex:260px;gap:.75rem;min-width:0;display:flex}.replay-timeline{background:rgba(var(--clr-ink-rgb), .1);cursor:pointer;border-radius:4px;height:22px;margin-top:.6rem;position:relative}.replay-period{background:rgba(var(--clr-ink-rgb), .16);border-left:2px solid var(--clr-muted);position:absolute;top:0;bottom:0}.replay-goal{background:var(--clr-accent-fill);border-radius:2px;width:4px;margin-left:-2px;position:absolute;top:-4px;bottom:-4px}.replay-goal-ga{background:var(--clr-gold)}.replay-now{background:var(--clr-text);border:3px solid var(--clr-surface);box-sizing:border-box;border-radius:50%;width:16px;height:16px;margin-left:-8px;position:absolute;top:3px}.replay-periods{height:1.2rem;color:var(--clr-muted);font-size:.75rem;position:relative}.replay-periods span{position:absolute}.replay-jumps,.replay-follow{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.5rem;display:flex}.replay-onice,.replay-bench,.replay-plays{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);padding:.6rem .75rem}.replay-onice h4{margin:0 0 .4rem}.replay-pos{letter-spacing:.04em;color:var(--clr-muted);text-transform:uppercase;margin:.4rem 0 .2rem;font-size:.75rem;font-weight:700}.replay-row{font-variant-numeric:tabular-nums;border-radius:6px;justify-content:space-between;gap:.5rem;padding:.3rem .5rem;display:flex}.replay-onice .replay-row{background:rgba(var(--clr-ink-rgb), .06);margin-bottom:.25rem;font-weight:600}.replay-follow-on{outline:2px solid var(--clr-accent)}.replay-bench summary,.replay-plays summary{cursor:pointer;font-weight:600}.replay-play{text-align:left;width:100%;margin-top:.25rem;display:block}@media (width<=600px){.replay-jumps button,.replay-follow button,.replay-follow select,.replay-top .angle-switch button,.replay-play{min-height:44px}}.tele-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.tele-overlay.tele-drawing{pointer-events:auto;touch-action:none;cursor:crosshair}.tele-anim .tele-draw{stroke-dasharray:1;stroke-dashoffset:1px;animation:.6s ease-out forwards tele-draw-on}.tele-anim .tele-pulse{animation:1.4s ease-in-out infinite tele-pulse}@keyframes tele-draw-on{to{stroke-dashoffset:0}}@keyframes tele-pulse{50%{opacity:.75;transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.tele-anim .tele-draw,.tele-anim .tele-pulse{stroke-dashoffset:0;animation:none}}.replay-drawmark{background:var(--clr-accent-fill);pointer-events:none;width:10px;height:10px;margin-left:-5px;position:absolute;top:-6px;transform:rotate(45deg)}.tele-pill{background:rgba(var(--clr-ink-rgb), .08);border-radius:999px;padding:.2rem .6rem;font-size:.8rem;font-weight:600}.tele-panel,.tele-list{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);flex-direction:column;gap:.5rem;padding:.6rem .75rem;display:flex}.tele-panel h4{margin:0}.tele-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;display:grid}.tele-tools button{min-height:44px}.tele-tools button.on{background:var(--clr-accent-fill);border-color:var(--clr-accent-fill);color:#fff;font-weight:600}.tele-field{flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.tele-field select{min-height:40px}.tele-colours{align-items:center;gap:.5rem;display:flex}.tele-colours button{border:1px solid var(--clr-border);border-radius:50%;width:40px;height:40px;padding:0}.tele-colours button.on{outline:3px solid var(--clr-text);outline-offset:2px}.tele-how{margin:0}.tele-check{align-items:center;gap:.5rem;display:flex}.tele-actions{gap:.4rem;display:flex}.tele-actions button{flex:1;min-height:44px;margin-top:0}.tele-list summary{cursor:pointer;font-weight:600}.tele-row{border-bottom:1px solid var(--clr-border);flex-wrap:wrap;align-items:center;gap:.25rem .5rem;padding:.2rem 0;display:flex}.tele-row:last-child{border-bottom:0}.tele-row.on .tele-jump{font-weight:600}.tele-jump{text-align:left;background:0 0;border:0;flex:12rem;justify-content:space-between;gap:.5rem;min-height:40px;padding:.4rem 0;display:flex}.tele-jump .field-hint{white-space:nowrap}.tele-own{gap:.3rem;display:flex}@media (width<=600px){.replay-draw-btn{display:none}.tele-own button{min-height:44px}}@media (pointer:coarse){.replay-draw-btn{min-height:44px}}@media (width<=600px){.team-filter-chips button,.team-filter-note .link-button{min-height:44px}}.calendar-page .calendar-controls:has(.team-filter-chips){width:100%;margin-left:0}.calendar-controls .team-filter-chips{flex-wrap:nowrap;gap:.2rem;margin-right:auto}.calendar-controls .team-filter-chips button{min-height:0;color:var(--clr-muted);border-radius:6px;padding:.3rem .7rem;font-size:.8rem;font-weight:400}.calendar-controls .team-filter-chips button.active{background:var(--clr-accent-fill);border-color:var(--clr-accent);color:#fff}@media (width<=600px){.calendar-controls .team-filter-chips button{min-height:44px}}.cal-list{gap:.2rem;max-width:56rem;display:grid}.cal-list-day h3{color:var(--clr-muted);margin:.7rem 0 .3rem;font-size:.85rem;font-weight:600}.cal-list-past{margin:1.2rem 0 0;font-size:1rem}.cal-list-feeds{flex-wrap:wrap;gap:.3rem 1.2rem;margin:0 0 .3rem;font-size:.85rem;display:flex}.cal-list-feeds a{color:var(--clr-accent-text)}.cal-game-chip.cal-list-row{white-space:normal;grid-template-columns:4.6rem minmax(0,1fr);align-items:baseline;gap:.2rem .6rem;margin-bottom:.35rem;padding:.45rem .6rem;font-size:.85rem;display:grid;overflow:visible}.cal-list-time{font-variant-numeric:tabular-nums;font-weight:600}.cal-list-line{overflow-wrap:anywhere}.cal-list-sub{flex-wrap:wrap;align-items:center;gap:.25rem .4rem;margin-top:.15rem;font-size:.8rem;display:flex}.cal-list-sub .chip-upload{margin-top:0}.cal-list-mark{border:1px solid var(--clr-border);border-radius:4px;padding:0 .35rem;font-size:.72rem}.cal-list-more{background:var(--clr-surface);border:1px solid var(--clr-border);color:var(--clr-text);cursor:pointer;border-radius:6px;justify-self:start;min-height:40px;margin:.3rem 0;padding:.35rem .9rem}@media (width<=600px){.cal-game-chip.cal-list-row{grid-template-columns:3.9rem minmax(0,1fr);gap:.15rem .4rem}.cal-list-time{font-size:.78rem}.cal-list-more,.cal-list-feeds a{align-items:center;min-height:44px;display:inline-flex}.rink-use{min-width:44px;min-height:44px}}.team-feeds h4{margin:1rem 0 .4rem}.team-feeds .card{margin-bottom:.6rem}.team-feeds .card-header,.team-feed-rename{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.team-feed-changes,.team-feed-copies-list{margin:0;padding:0;font-size:.85rem;list-style:none}.team-feed-copies-list li{border-bottom:1px solid var(--clr-border);padding:.3rem 0}@media (width<=600px){.team-feed-copies button{min-height:44px}}.team-also-called-list{flex-wrap:wrap;gap:.4rem;margin:0 0 .5rem;padding:0;list-style:none;display:flex}.team-also-called-list li{border:1px solid var(--clr-border);border-radius:6px;align-items:center;gap:.3rem;padding:.15rem .2rem .15rem .6rem;display:inline-flex}.team-also-called-add{flex-wrap:wrap;align-items:flex-end;gap:.4rem;display:flex}.team-also-called-add .form-field{flex:12rem;min-width:0;max-width:20rem}@media (width<=600px){.team-also-called button,.team-also-called-add input{min-width:44px;min-height:44px}}.team-feed-changes li{border-bottom:1px solid var(--clr-border);padding:.3rem 0}.cal-mark{flex-wrap:wrap;align-items:center;gap:.4rem;margin-left:.4rem;display:inline-flex}.cal-mark-btn{border:1px solid var(--clr-border);background:var(--clr-surface,transparent);color:inherit;cursor:pointer;border-radius:6px;padding:.15rem .55rem;font-size:.8rem}.cal-mark-done{color:var(--clr-success,var(--clr-text));font-size:.8rem}.cal-mark-bar{top:env(safe-area-inset-top,0px);z-index:2;border:1px solid var(--clr-border);background:var(--clr-surface);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.5rem .6rem;display:flex;position:sticky}.cal-legend-note{color:var(--clr-muted);font-size:.8rem}@media (width<=600px){.cal-mark-btn,.cal-mark-bar button,.cal-mark-pick{min-width:44px;min-height:44px}.cal-mark-pick{justify-content:center;align-items:center;display:inline-flex}.team-feeds .card-actions button,.team-feed-rename button,.team-feed-rename input{min-height:44px}}:where(button:not([class]),.tagging-page button){font:inherit;color:var(--clr-text);background:var(--clr-btn-bg);border:1px solid var(--clr-btn-border);cursor:pointer;border-radius:6px;padding:.2rem .55rem;font-size:.85rem}:where(button:not([class]),.tagging-page button):hover{border-color:var(--clr-accent)}:where(button:not([class]),.tagging-page button):disabled{opacity:.5;cursor:not-allowed}:where(.tagging-page) :where(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){font:inherit;color:var(--clr-text);background:var(--clr-field-bg);border:1px solid var(--clr-btn-border);border-radius:4px;padding:.15rem .35rem}.tagging-page>*,.tagger,.tag-main>*{min-width:0}@media (width<=700px){.tagging-page button,.tagging-page select,.tagging-page input:not([type=checkbox]):not([type=radio]){min-height:44px}}.theme-pick select{background:var(--clr-btn-bg);color:var(--clr-text);border:1px solid var(--clr-btn-border);font:inherit;border-radius:6px;padding:.2rem .4rem;font-size:.8rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=600px){.theme-pick select,.unused-actions button{min-height:44px}}.tag-row a{color:var(--clr-accent-text)}@media (width<=600px){.modal-panel .analysis-table select{min-height:44px}}.tag-back{color:var(--clr-accent-text);margin-bottom:.25rem;display:inline-block}.tag-title{margin:.2rem 0 .4rem;font-size:1.35rem;line-height:1.25}.tag-meta{margin-bottom:.5rem}.tag-keys{color:var(--clr-muted);margin-top:.5rem;font-size:.85rem}.tag-keys summary{cursor:pointer;align-items:center;min-height:2.75rem;display:flex}.tag-keys dl{grid-template-columns:max-content 1fr;gap:.3rem .75rem;margin:.25rem 0 0;display:grid}.tag-keys dt{color:var(--clr-text);font-weight:600}.tag-keys dd{margin:0}.tag-keys kbd{border:1px solid var(--clr-btn-border);background:var(--clr-btn-bg);min-width:1.4em;color:var(--clr-text);font:inherit;text-align:center;border-radius:4px;padding:0 .3em;font-size:.8rem;display:inline-block}@media (width<=600px){.tag-back{align-items:center;min-height:44px;display:inline-flex}.tag-keys dl{grid-template-columns:1fr}.tag-keys dt{margin-top:.3rem}}.games-picker{margin:0 0 .5rem;position:relative}.games-picker-button{border:1px solid var(--clr-accent);background:var(--clr-surface);min-height:44px;color:var(--clr-text);font:inherit;cursor:pointer;text-align:left;border-radius:999px;flex-direction:column;align-items:flex-start;max-width:100%;padding:.35rem 1rem;font-weight:600;display:inline-flex}.games-picker-sub{color:var(--clr-muted);font-size:.75rem;font-weight:400}.games-picker-group{margin:0 0 .5rem}.games-picker-grouptick{min-height:36px;color:var(--clr-text);align-items:center;gap:.5rem;font-weight:600;display:flex}.games-picker-types{flex-wrap:wrap;gap:.25rem 1rem;margin:0 0 .35rem 1.5rem;display:flex}.games-picker-typetick{min-height:36px;color:var(--clr-text);align-items:center;gap:.35rem;display:inline-flex}.games-picker-grouptick input,.games-picker-typetick input{width:1.1rem;height:1.1rem}.one-picker-list{margin:0;padding:0;list-style:none}.one-picker-option{border-radius:6px;padding:0 .5rem}.one-picker-option[aria-selected=true]{font-weight:600}.one-picker-option[aria-selected=true]:before{content:"✓ "}.one-picker-option:focus,.one-picker-option:hover{background:color-mix(in srgb, var(--clr-accent-fill) 15%, transparent);outline:2px solid var(--clr-accent);outline-offset:-2px}.games-picker-backdrop{display:none}.games-picker-panel{z-index:150;border:1px solid var(--clr-border);background:var(--clr-surface);border-radius:10px;flex-direction:column;gap:.5rem;width:min(34rem,100vw - 2rem);max-height:min(60vh,30rem);padding:.75rem;display:flex;position:absolute;top:calc(100% + .35rem);left:0;box-shadow:0 8px 24px #00000059}.games-picker-quick{flex-wrap:wrap;gap:.35rem;display:flex}.games-picker-quick button,.games-picker-actions button:not(.btn-primary){border:1px solid var(--clr-border);min-height:36px;color:var(--clr-text);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:.3rem .8rem}.games-picker-search{border:1px solid var(--clr-border);background:var(--clr-dark);min-height:36px;color:var(--clr-text);font:inherit;border-radius:6px;padding:.3rem .6rem}.games-picker-list{min-height:0;overflow-y:auto}.games-picker-day{border:0;min-width:0;margin:0 0 .5rem;padding:0}.games-picker-day legend{color:var(--clr-muted);margin-bottom:.2rem;padding:0;font-size:.8rem;font-weight:600}.games-picker-row{min-height:36px;color:var(--clr-text);cursor:pointer;align-items:center;gap:.5rem;display:flex}.games-picker-row input{flex-shrink:0;width:1.1rem;height:1.1rem}.games-picker-row small{color:var(--clr-muted);white-space:nowrap;margin-left:auto}.games-picker-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.games-picker-actions .btn-primary{min-height:36px;margin-top:0}.games-picker-why{color:var(--clr-text);margin-right:auto;font-size:.85rem}@media (width<=600px){.games-picker-backdrop{z-index:299;background:#0000008c;display:block;position:fixed;inset:0}.games-picker-panel{z-index:300;width:auto;max-height:80vh;padding-bottom:calc(.75rem + env(safe-area-inset-bottom));border-radius:14px 14px 0 0;position:fixed;inset:auto 0 0}.games-picker-row,.games-picker-quick button,.games-picker-actions button:not(.btn-primary),.games-picker-actions .btn-primary,.games-picker-search,.games-picker-grouptick,.games-picker-typetick{min-height:44px}}@media (pointer:coarse){.games-picker-row,.games-picker-quick button,.games-picker-actions button:not(.btn-primary),.games-picker-actions .btn-primary,.games-picker-search,.games-picker-grouptick,.games-picker-typetick{min-height:44px}.games-picker-row input{width:1.5rem;height:1.5rem}}.tryout-more{display:inline}.tryout-more summary{cursor:pointer;color:var(--clr-accent-text);text-decoration:underline;display:inline}.tryout-more-mark:after{content:" ▸";text-decoration:none;display:inline-block}.tryout-more[open] .tryout-more-mark:after{content:" ▾"}.tryout-more[open]{margin-top:.25rem;display:block}.games-single{margin:0 0 1rem}.games-single select{max-width:100%;min-height:44px}.practice-list{gap:.25rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.practice-row{border-bottom:1px solid var(--clr-border);flex-wrap:wrap;align-items:center;gap:.25rem .75rem;min-width:0;padding:.5rem 0;display:flex}.practice-row>a{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.practice-venue,.practice-why{color:var(--clr-muted);font-size:.85rem}.practice-kept-what{overflow-wrap:anywhere;font-weight:600}.practice-plan{margin-left:auto;font-size:.9rem}.practice-unplanned{color:var(--clr-muted)}.practice-ask{flex-wrap:wrap;align-items:center;gap:.5rem;display:inline-flex}.practice-row button{min-height:44px}.practice-past{margin:0 0 1rem}.practice-past>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.drill-chips{margin-bottom:.5rem}.drill-cards{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.75rem;margin:.5rem 0 1rem;padding:0;list-style:none;display:grid}.drill-card{border:1px solid var(--clr-border);border-radius:8px;align-content:start;gap:.35rem;min-width:0;padding:.5rem;display:grid}.drill-card-name{overflow-wrap:anywhere;font-weight:700}.drill-card-meta{color:var(--clr-muted);flex-wrap:wrap;gap:.25rem .75rem;font-size:.85rem;display:flex}.drill-card-words{overflow-wrap:anywhere;margin:0;font-size:.85rem}.rink-drawing{border-radius:6px;width:100%;max-width:100%;position:relative;overflow:hidden}.rink-sheet{width:100%;height:100%;display:block}.rink-mark{color:var(--clr-text);align-items:center;gap:.35rem;display:inline-flex}.rink-icon{flex:none;height:1em}@media (width<=600px){.practice-plan{flex-basis:100%;margin-left:0}.drill-chips button{min-height:44px}}.drill-library-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.drill-library-head .btn-primary,.drill-card-edit{min-height:44px}.drill-card-edit{justify-self:start}.drill-card-actions{flex-wrap:wrap;gap:.4rem;display:flex}.drill-card-show,.plan-line-show,.plan-show-all{min-height:44px}.plan-show-all{place-self:flex-start start}.drill-show{--show-bg:#070b12;--show-fg:#e8f6ff;--show-muted:#c9d7e3;--show-line:#5c7184;--show-btn:#0b1622;--show-cyan:#22e3ff;--show-amber:#ffb020;z-index:1100;background:var(--show-bg);color:var(--show-fg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;touch-action:pan-y pinch-zoom;padding:max(12px, env(safe-area-inset-top,0px)) max(16px, env(safe-area-inset-right,0px)) max(12px, env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.drill-show:focus{outline:none}.drill-show-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.drill-show-title{min-width:0}.drill-show-title h2{overflow-wrap:anywhere;text-wrap:balance;margin:0;font-size:clamp(1.2rem,min(4vw,6vh),2.4rem);line-height:1.15}.drill-show-title p{color:var(--show-muted);margin:.25rem 0 0;font-size:clamp(1rem,2.2vw,1.25rem)}.drill-show button{border:1px solid var(--show-line);background:var(--show-btn);min-width:44px;min-height:44px;color:var(--show-fg);cursor:pointer;border-radius:8px;padding:0 1rem;font:600 1rem/1 system-ui,sans-serif}.drill-show button:disabled{opacity:.45;cursor:default}.drill-show button:focus-visible{outline:3px solid var(--show-cyan);outline-offset:2px}.drill-show .link-button{color:var(--show-cyan);background:0 0;border:0;min-width:0;padding:0}.drill-show-close{flex:none}.drill-show-rink{flex:1;place-items:center;min-height:0;display:grid}.drill-show-gone{color:var(--show-muted);font-size:1.15rem}.drill-show-foot{gap:.5rem;max-width:70ch;display:grid}.drill-show-words{overflow-wrap:anywhere;margin:0;font-size:clamp(1.05rem,2.4vw,1.4rem);line-height:1.4}.drill-show-words.folded{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.drill-show-hint{color:var(--show-amber);margin:0;font-weight:600}.drill-show-steps{gap:.5rem;display:flex}.drill-show-steps button{flex:1}.drill-show.side{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) clamp(220px,30vw,360px);column-gap:16px;display:grid}.drill-show.side .drill-show-head{grid-column:1/-1}.drill-show.side .drill-show-rink{grid-area:2/1}.drill-show.side .drill-show-foot{grid-area:2/2;align-self:center;max-height:100%;overflow-y:auto}.drill-editor{gap:.75rem;display:grid}.drill-editor h3{overflow-wrap:anywhere;margin:0}.drill-editor-body{grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);align-items:start;gap:.75rem;display:grid}.drill-editor-rink{gap:.25rem;min-width:0;display:grid}.drill-editor-fields{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.5rem;display:grid}.drill-editor-fields input,.drill-editor-fields select,.drill-editor-fields textarea,.plan-ice input,.plan-line-note{min-height:44px;font:inherit;background:var(--clr-dark);border:1px solid var(--clr-border);color:var(--clr-text);border-radius:6px;padding:.5rem .7rem}.drill-editor-fields :is(input,select,textarea):focus,.plan-ice input:focus,.plan-line-note:focus{border-color:var(--clr-accent);outline:none}.drill-colours{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;display:grid}.drill-colours>.field-hint{grid-column:1/-1}.drill-editor-tools>.field-hint,.drill-colours>.field-hint{letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:600}.drill-keep{align-self:flex-start;align-items:center;gap:.5rem;min-height:44px;padding:0 .75rem;font-weight:600;display:inline-flex}.drill-keep,.drill-parts-list button{font-family:inherit;font-size:inherit;color:var(--clr-text);background:var(--clr-btn-bg);border:1px solid var(--clr-btn-border);cursor:pointer;border-radius:6px}.drill-keep:hover,.drill-parts-list button:hover{border-color:var(--clr-accent)}.drill-keep.on,.drill-parts-list li.on .drill-part{background:var(--clr-accent-fill);border-color:var(--clr-accent-fill);color:#fff;font-weight:600}.drill-editor-stage:focus{outline:none}.drill-editor-stage:focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}.drill-keep-box{border:2px solid;border-radius:4px;place-items:center;width:1.1rem;height:1.1rem;font-size:.8rem;line-height:1;display:inline-grid}.drill-editor-stage{position:relative}.drill-editor-stage.can-pan .tele-overlay.tele-drawing{touch-action:pan-y;cursor:pointer}.drill-picked{pointer-events:none;box-sizing:content-box;border:2px dashed #fff;border-radius:6px;margin:-6px 0 0 -6px;padding:6px;position:absolute;box-shadow:0 0 0 2px #0009}.drill-selected{flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;display:flex}.drill-selected>span{flex:10rem;min-width:0;font-weight:600}.drill-selected button{min-height:44px;margin:0}.drill-parts summary{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;min-height:44px;color:var(--clr-text);align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;display:flex}.drill-parts summary:before{content:"▸";letter-spacing:0;font-size:.9rem}.drill-parts[open] summary:before{content:"▾"}.drill-parts summary::-webkit-details-marker{display:none}.drill-parts-list{gap:.3rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.drill-parts-list li{gap:.3rem;display:flex}.drill-parts-list button{min-height:44px;margin:0;padding:0 .75rem}.drill-parts-list .drill-part-remove{min-width:44px;color:var(--clr-muted);background:0 0;border-color:#0000}.drill-parts-list .drill-part-remove:hover{border-color:var(--clr-accent);color:var(--clr-text)}.drill-parts-list .drill-part-remove:focus-visible{outline:2px solid var(--clr-accent);outline-offset:-2px;color:var(--clr-text)}@media (width>=801px){.drill-parts-list{overscroll-behavior:contain;max-height:16rem;padding:2px;overflow-y:auto}}.drill-part{text-align:left;overflow-wrap:anywhere;flex:1;min-width:0}.drill-handles{pointer-events:none;position:absolute;inset:0}.drill-handle{pointer-events:auto;touch-action:none;cursor:grab;width:44px;height:44px;position:absolute}.drill-handle-dot{background:#fff;border:2px solid #0b1622;border-radius:50%;width:14px;height:14px;margin:-9px 0 0 -9px;position:absolute;box-shadow:0 0 0 2px #22e3ff}.drill-handle-turn .drill-handle-dot{box-shadow:0 0 0 2px #ffb020}.drill-colours .drill-colour{background:var(--clr-btn-bg);border:1px solid var(--clr-btn-border);width:auto;min-width:44px;height:auto;min-height:44px;color:var(--clr-text);border-radius:6px;justify-content:center;align-items:center;gap:.4rem;padding:0 .5rem;font-weight:600;display:inline-flex}.drill-colours .drill-colour.on{background:var(--clr-accent-fill);border-color:var(--clr-accent-fill);color:#fff;outline:none}.drill-colours .drill-colour:focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}.drill-swatch{border:1px solid var(--clr-border);border-radius:50%;flex:none;width:18px;height:18px}.drill-restored{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}@media (width>=640px){.drill-card-full{grid-column:span 2}}.drill-editor-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.drill-editor-actions button,.drill-editor .tele-actions button,.drill-editor .team-filter-chips button{min-height:44px}@media (width<=800px){.drill-editor-body{grid-template-columns:minmax(0,1fr)}}a.practice-plan{align-items:center;min-height:44px;display:inline-flex}.plan-page h3{overflow-wrap:anywhere}.plan-ice{gap:.25rem;max-width:22rem;font-size:.9rem;display:grid}.plan-ice input{min-height:44px;font:inherit;max-width:8rem}.plan-totals{margin:.75rem 0 .35rem}.plan-bar{background:var(--clr-border);border-radius:7px;height:14px;margin-bottom:.75rem;display:flex;position:relative;overflow:hidden}.plan-bar-part{border-right:2px solid var(--clr-dark);height:100%}.plan-bar-full{background:var(--clr-accent-fill)}.plan-bar-half{background:#4d8dff}.plan-bar-zone{background:#f0a53e}.plan-bar-ice{background:var(--clr-text);width:3px;position:absolute;top:0;bottom:0}.plan-lines{gap:.5rem;margin:0 0 .75rem;padding:0;list-style:none;display:grid}.plan-line{border:1px solid var(--clr-border);border-radius:8px;gap:.35rem;min-width:0;padding:.5rem;display:grid}.plan-line-head{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.plan-line-name{overflow-wrap:anywhere;font-weight:700}.plan-line-tools{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.plan-line-tools button{min-width:44px;min-height:44px}.plan-line-min{text-align:center;min-width:4.5rem;font-weight:600}.plan-line-note{min-height:44px;font:inherit;box-sizing:border-box;width:100%}.plan-add{margin:.5rem 0}.plan-add>summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.plan-add-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.plan-add-list button{text-align:left;width:100%;min-height:44px}.plan-actions{flex-wrap:wrap;align-items:center;margin-top:.75rem}.new-version{z-index:90;padding:.5rem max(1rem, env(safe-area-inset-right,0px)) calc(.5rem + env(safe-area-inset-bottom,0px)) max(1rem, env(safe-area-inset-left,0px));background:var(--clr-surface);border-top:2px solid var(--clr-accent);color:var(--clr-text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #00000059}.new-version>span:first-child{flex:16rem;min-width:0}.new-version-actions{gap:.5rem;display:flex}.new-version-actions button{min-height:44px;margin:0}.has-new-version .app-main{padding-bottom:calc(8rem + env(safe-area-inset-bottom,0px))}.admin-list-tools{flex-wrap:wrap;align-items:flex-end;gap:.5rem 1rem;margin:.5rem 0;display:flex}.admin-search{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.admin-search label{color:var(--clr-muted);flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.admin-search input{box-sizing:border-box;border:1px solid var(--clr-btn-border);background:var(--clr-field-bg);min-width:min(18rem,80vw);min-height:44px;color:var(--clr-text);font:inherit;border-radius:8px;padding:0 .75rem}.admin-search input:focus{border-color:var(--clr-accent);outline:none}.admin-list-tools .team-filter-chips button{min-height:44px}.admin-saved{color:var(--clr-green);white-space:nowrap;font-weight:600}.admin-dialog-form{background:0 0;border:0;margin:0;padding:0}.admin-dialog-form .form-actions button,.modal-body .form-ask button,.job-actions button,.modal-body .form-actions button{min-height:44px}.modal-body .game-form .form-submit{z-index:1;box-shadow:0 0 0 100vmax var(--clr-mid);clip-path:inset(-.75rem -100vmax);position:sticky;bottom:0}.admin-delete{margin-left:auto}.admin-said{color:var(--clr-text);margin:.25rem 0}.admin-dialog-form .form-field :is(input:not([type=checkbox]),select){box-sizing:border-box;min-height:44px}.shift-map,.shift-helios,.shift-both{--map-s:#1f8fb0;--map-o:#ffb27a;--map-n:#8a9bb8;--map-edge:#0d1b2a;gap:.75rem;display:grid}:root[data-theme=light] .shift-map,:root[data-theme=light] .shift-helios,:root[data-theme=light] .shift-both{--map-s:#3a90b0;--map-o:#9a3412;--map-n:#5b6575;--map-edge:#fff}.shift-map h3{margin-bottom:0}.shift-map .source-line{margin-top:.15rem}.shift-map h4{margin:0;font-size:.9rem}.map-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.map-game{color:var(--clr-muted);align-items:center;gap:.5rem;margin:0;font-size:.85rem;display:flex}.map-game select{max-width:100%;min-height:44px}.map-totals{background:var(--clr-border);border:1px solid var(--clr-border);border-radius:8px;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.map-totals>div{background:var(--clr-surface);align-content:start;gap:.15rem;min-width:0;padding:.5rem .6rem;display:grid}.map-totals dt{letter-spacing:.06em;text-transform:uppercase;color:var(--clr-muted);font-size:.7rem}.map-totals dd{margin:0}.map-total{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.map-how{color:var(--clr-muted);font-size:.7rem}.map-src{letter-spacing:.04em;white-space:nowrap;vertical-align:middle;border-radius:4px;padding:.05rem .35rem;font-size:.65rem;font-weight:600;display:inline-block}.map-src-helios{background:var(--clr-text);color:var(--clr-surface)}.map-src-worked{border:1px solid var(--clr-muted);color:var(--clr-muted)}.map-main{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.map-list,.map-readout,.map-block{align-content:start;gap:.5rem;min-width:0;display:grid}.map-bar-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.map-sort{border:1px solid var(--clr-btn-border);border-radius:6px;flex-wrap:wrap;display:inline-flex;overflow:hidden}.map-sort button{background:var(--clr-btn-bg);min-height:44px;color:var(--clr-text);font:inherit;cursor:pointer;border:0;padding:0 .75rem;font-size:.8rem}.map-sort button+button{border-left:1px solid var(--clr-btn-border)}.map-sort button[aria-pressed=true]{background:var(--clr-accent-fill);color:#fff;font-weight:600}.map-legend{color:var(--clr-muted);flex-wrap:wrap;gap:.25rem 1rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.map-legend li{align-items:center;gap:.4rem;display:flex}.map-sw{border-radius:2px;width:16px;height:12px;display:inline-block}.map-s{background:var(--map-s);fill:var(--map-s)}.map-o{background:var(--map-o);fill:var(--map-o);box-shadow:inset 0 0 0 1.5px var(--map-edge);stroke:var(--map-edge);stroke-width:1.5px}.map-n{background:repeating-linear-gradient(135deg, var(--map-n) 0 2px, transparent 2px 6px);box-shadow:inset 0 0 0 1px var(--map-n)}.map-rows{gap:2px;margin:0;padding:0;list-style:none;display:grid}.map-row{width:100%;min-height:44px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:2rem minmax(0,1fr) 3.25rem;align-items:center;gap:.5rem;padding:.25rem .4rem;display:grid}.map-row:hover{background:var(--clr-mid)}.map-row[aria-pressed=true]{border-color:var(--clr-accent2);background:var(--clr-mid)}.map-row:focus-visible,.map-sort button:focus-visible{outline:2px solid var(--clr-accent2);outline-offset:2px}.map-num{color:var(--clr-muted);font-variant-numeric:tabular-nums;font-weight:700}.map-track{gap:2px;min-width:0;height:18px;display:flex}.map-part{border-radius:2px;min-width:2px;height:100%}.map-t{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.map-flag{letter-spacing:.04em;text-transform:uppercase;color:var(--clr-text);grid-column:2/4;font-size:.7rem;font-weight:700}.map-ro-top{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.map-big{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700}.map-kv{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem .75rem;margin:0;display:grid}.map-kv dt{letter-spacing:.05em;text-transform:uppercase;color:var(--clr-muted);flex-wrap:wrap;align-items:center;gap:.3rem;font-size:.7rem;display:flex}.map-kv dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.2rem;font-weight:700}.map-stride,.map-over{color:var(--clr-text)}.map-chart{width:100%;height:auto;display:block}.map-chart text{fill:var(--clr-muted);font-variant-numeric:tabular-nums;font-size:11px}.map-grid{stroke:var(--clr-border)}.map-twelve{stroke:var(--clr-text);stroke-dasharray:4 3}.map-chart .map-twelve-label{fill:var(--clr-text);font-weight:600}.map-efforts ol,.map-insights{margin:.25rem 0 0;padding-left:1.25rem;font-size:.85rem}.map-insights{gap:.5rem;padding:0;list-style:none;display:grid}.map-insights li{border-left:2px solid var(--clr-border);justify-items:start;gap:.2rem;padding-left:.6rem;display:grid}.map-insights p{margin:0}.map-table-wrap{overflow-x:auto}.map-typical{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.85rem}.map-typical th,.map-typical td{border-bottom:1px solid var(--clr-border);text-align:right;white-space:nowrap;padding:.4rem .5rem}.map-typical th:first-child,.map-typical td:first-child{text-align:left;white-space:normal}.map-typical th{letter-spacing:.05em;text-transform:uppercase;color:var(--clr-muted);font-size:.7rem;font-weight:600}.map-this{font-weight:700}.map-words summary,.map-efforts summary{cursor:pointer;min-height:44px;padding-top:.75rem;font-size:.85rem;font-weight:600;display:list-item}.map-words dl{gap:.35rem;margin:.25rem 0 0;font-size:.85rem;display:grid}.map-words dt{font-weight:600}.map-words dd{color:var(--clr-muted);margin:0 0 .25rem}@media (width<=860px){.map-main{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.map-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.map-total{font-size:1.1rem}}.shift-helios{min-width:0;color:var(--clr-muted);border-bottom:1px solid rgba(var(--clr-ink-rgb), .03);flex-wrap:wrap;align-items:center;gap:.25rem .6rem;padding:0 0 .3rem 2.75rem;font-size:.78rem;display:flex}.shift-helios-words{min-width:0}.shift-helios.shift-outside{padding-left:0;font-style:italic}.shift-helios-head{gap:.15rem;margin:.25rem 0;display:grid}.shift-both>summary{cursor:pointer;min-height:44px;list-style:none}.shift-both>summary:before{content:"▸";color:var(--clr-text);font-size:.9rem}.shift-both[open]>summary:before{content:"▾"}.shift-both>summary::-webkit-details-marker{display:none}.shift-nest{flex:0 14rem;min-width:6rem;height:18px;position:relative}.shift-ice{background:rgba(var(--clr-ink-rgb), .1);box-shadow:inset 0 0 0 1px rgba(var(--clr-ink-rgb), .35);border-radius:4px;position:absolute;top:0;bottom:0;left:0}.shift-in{border-radius:2px;gap:1px;display:flex;position:absolute;top:4px;bottom:4px;overflow:hidden}.shift-in .map-part{min-width:1px}.shift-nest:not(.synced) .shift-in{outline:1.5px dashed var(--clr-text);outline-offset:1px}.shift-nest.synced .shift-in{outline:1.5px solid var(--clr-text);outline-offset:1px}.shift-in.cut-start{border-left:3px solid var(--clr-text)}.shift-in.cut-end{border-right:3px solid var(--clr-text)}.shift-skate{box-sizing:border-box;border:1.5px dotted var(--clr-text);border-radius:1px;min-width:4px;position:absolute;top:3px;bottom:3px}.shift-outside .shift-nest{flex-basis:6rem}.shift-both-detail{grid-template-columns:minmax(0,1fr);gap:.6rem;padding:.3rem 0 .8rem 2.75rem;display:grid}@media (width>=700px){.shift-both-detail{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}}.shift-side{border:1px solid rgba(var(--clr-ink-rgb), .12);border-radius:8px;align-content:start;gap:.4rem;min-width:0;padding:.6rem .75rem;display:grid}.shift-side h4{flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;font-size:.85rem;display:flex}.shift-watch{justify-self:start;min-height:44px}.plan-show-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.plan-print-button{min-height:44px}.plan-print{display:none}.practice-lede{margin:.25rem 0 .75rem;font-size:1rem}.practice-tile .metric-value small{color:var(--clr-muted);font-size:.75rem;font-weight:500}.practice-cmp{color:var(--clr-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.practice-cmp.practice-more,.practice-cmp.practice-less{color:var(--clr-accent-text);font-weight:600}.practice-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-top:1rem;display:flex}.practice-head h3{margin:0}.practice-sort{flex-wrap:wrap;gap:.35rem;display:flex}.practice-sort button{font:inherit;border:1px solid var(--clr-btn-border);background:var(--clr-btn-bg);color:var(--clr-text);cursor:pointer;border-radius:999px;padding:.25rem .65rem;font-size:.8rem}.practice-sort button.active{background:var(--clr-accent-fill);border-color:var(--clr-accent-fill);color:#fff}.practice-sort button:focus-visible,.practice-pick:focus-visible{outline:2px solid var(--clr-accent);outline-offset:2px}.practice-pick{font:inherit;color:var(--clr-accent-text);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.practice-table tbody tr{cursor:pointer}.practice-table tbody tr.practice-picked td{background:rgba(var(--clr-ink-rgb), .06)}.practice-table tbody tr.practice-picked td:first-child{box-shadow:inset 3px 0 0 var(--clr-accent)}.practice-bar{background:var(--clr-accent-fill);vertical-align:middle;border-radius:4px;height:8px;margin-right:.5rem;display:inline-block}.practice-apart ul{margin:.25rem 0 0;padding-left:1.2rem}.team-hidden td:not(.job-actions){opacity:.6}.teammate-note{margin:1rem 0;line-height:1.5}.home-rinks ul{margin:.25rem 0;padding-left:1.2rem}.home-rinks li{margin:.2rem 0}.home-rink-add{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.home-rink-add select{min-width:0;max-width:100%}.rink-none{color:var(--clr-red)}@media print{@page{margin:12mm}html,body{background:#fff!important}#app,.drill-show,.new-version{display:none!important}.plan-print{color:#000;background:#fff;font:11pt/1.35 system-ui,-apple-system,Segoe UI,sans-serif;display:block}.plan-print-head{border-bottom:2px solid #000;margin-bottom:4mm;padding-bottom:3mm}.plan-print-head h1{margin:0;font-size:18pt}.plan-print-head p{margin:1mm 0 0}.plan-print-drill{break-inside:avoid;page-break-inside:avoid;border-bottom:1px solid #000;gap:3mm;padding:2.5mm 0;display:grid}.plan-print-full,.plan-print-half,.plan-print-zone{grid-template-columns:minmax(0,1fr) auto;align-items:start}.plan-print-full .plan-print-rink{width:130mm}.plan-print-half .plan-print-rink{width:77.6mm}.plan-print-zone .plan-print-rink{width:58.2mm}.plan-print-text{overflow-wrap:break-word}.plan-print-text h2{margin:0;font-size:13pt}.plan-print-text p{margin:1mm 0 0}.plan-print-meta{font-weight:600}.plan-print-note{font-style:italic}.plan-print-rink .rink-drawing{border:1px solid #000}}.hud-chip{--hud-on:#22e3ff;--hud-warn:#ffb020;--hud-rest:#c9d7e3;--hud-plate:#070b12e0;--hud-text:#e8f6ff;z-index:2;pointer-events:none;border:1.5px solid var(--hud-on);background:var(--hud-plate);color:var(--hud-text);font-variant-numeric:tabular-nums;border-radius:8px;align-items:center;gap:6px;padding:4px 10px 4px 4px;font:700 1rem/1 system-ui,sans-serif;display:flex;position:absolute;bottom:76px;left:8px}.hud-ring-track{fill:none;stroke:#1d3346;stroke-width:6px}.hud-ring-fill{fill:none;stroke:var(--hud-on);stroke-width:6px;stroke-linecap:round}.hud-ring-tick{stroke:var(--hud-text);stroke-width:2.5px}.hud-ring text{fill:var(--hud-text);font:700 20px system-ui,sans-serif}.hud-time{color:var(--hud-on);font-size:1.25rem}.hud-words{letter-spacing:.04em;text-transform:uppercase;color:var(--hud-text);font:600 .8rem/1.2 system-ui,sans-serif}.hud-warn,.hud-over{border-color:var(--hud-warn)}.hud-warn .hud-ring-fill,.hud-over .hud-ring-fill{stroke:var(--hud-warn)}.hud-warn .hud-time,.hud-over .hud-time,.hud-over .hud-words{color:var(--hud-warn)}.hud-rest,.hud-bench{border-color:var(--hud-rest)}.hud-rest .hud-time,.hud-bench .hud-words{color:var(--hud-rest)}.hud-short{letter-spacing:.06em;font:700 .7rem/1 system-ui,sans-serif;display:none}.hud-warn .hud-short,.hud-over .hud-short{color:var(--hud-warn)}@media (width<=600px){.hud-chip .hud-words{display:none}.hud-chip .hud-short{display:inline}.hud-chip{bottom:64px}}.hud-controls{--hud-on:#22e3ff;--hud-warn:#ffb020;--hud-line:#5c7184;--hud-plate:#070b12e0;--hud-text:#e8f6ff;z-index:3;pointer-events:none;flex-wrap:wrap;gap:6px;display:flex;position:absolute;top:8px;left:8px;right:8px}.hud-ctl{pointer-events:auto;border:1px solid var(--hud-line);background:var(--hud-plate);min-width:44px;min-height:44px;color:var(--hud-text);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font:600 .9rem/1 system-ui,sans-serif;display:inline-flex}.hud-ctl:disabled{color:#e8f6ff73;cursor:default;border-color:#5c718480}.hud-ctl:focus-visible,.hud-follow:focus-within{outline:3px solid var(--hud-on);outline-offset:2px}.hud-follow{border-color:var(--hud-on)}.hud-follow svg{color:var(--hud-on)}.hud-follow{padding-right:0}.hud-follow select{min-height:44px;color:var(--hud-text);font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;cursor:pointer;background:0 0;border:0;align-self:stretch;padding:0 8px 0 2px}.hud-go{border-color:var(--hud-warn);color:var(--hud-warn)}@media (width<=600px){.hud-controls{display:none}}.hud-change{--hud-on:#22e3ff;--hud-warn:#ffb020;--hud-plate:#070b12e6;--hud-text:#e8f6ff;color:var(--hud-text)}.hud-change-pic{z-index:2;border:1px solid var(--hud-on);background:var(--hud-plate);border-radius:8px;max-width:min(26rem,60%);position:absolute;bottom:76px;right:8px}.hud-change-strip{border:1px solid var(--hud-on);background:var(--hud-plate);border-radius:8px;margin:.5rem 0 0;display:none}.hud-change-head{width:100%;min-height:44px;color:var(--hud-on);letter-spacing:.06em;text-transform:uppercase;text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:.25rem .6rem;padding:.3rem .7rem;font:700 .85rem/1.2 system-ui,sans-serif;display:flex}.hud-change-fold{color:var(--hud-text);text-transform:none;letter-spacing:0;font-weight:600}.hud-change-body{gap:.2rem;padding:0 .7rem .5rem;font:600 .95rem/1.3 system-ui,sans-serif;display:grid}.hud-change-on{color:var(--hud-on)}.hud-change-off{color:var(--hud-warn)}.hud-change-note{color:var(--hud-text);opacity:.8;font-size:.75rem;font-weight:400}.hud-change-pic.open{animation:.2s ease-out hud-change-in}@keyframes hud-change-in{0%{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.hud-change-pic.open{animation:none}}@media (width<=600px){.hud-change-pic{display:none}.hud-change-strip{display:block}}.replay-long-row{align-items:center;gap:.5rem}.replay-long-row button{flex:none;min-height:44px}.replay-reached{margin:.25rem 0 0;font-weight:600}.differ-list{margin:.25rem 0 .75rem;padding-left:1.5rem}.your-players{margin-top:.75rem}.shift-notes,.lines-groups{display:contents}@media (width>=1024px){.shifts-tab .shift-item,.lines-drill .shift-item{grid-template-columns:2.75rem 2rem 8rem 7rem 4rem minmax(0,1fr);align-items:center;column-gap:.5rem;display:grid}.shifts-tab .shift-play,.lines-drill .shift-play{grid-column:1;margin-right:0}.shifts-tab .shift-period{grid-column:2}.shifts-tab .shift-time,.lines-drill .shift-time{grid-column:3}.shifts-tab .shift-item .play-title{grid-column:2/4}.shifts-tab .shift-filmed,.lines-drill .shift-filmed{grid-column:4}.shifts-tab .shift-dur,.lines-drill .shift-dur{grid-column:5;margin-left:0}.lines-drill .shift-notes{flex-wrap:wrap;grid-column:6;gap:0 .6rem;min-width:0;display:flex}}@media (width<=1023.98px){.lines-row-head,.lt-one{display:none}}@media (width>=1024px){.lines-boxes{grid-template-columns:max-content minmax(0,1fr);grid-template-areas:"h1 h1""d f""legend legend""h2 h2""g g"}.lines-boxes>.lines-row-head[data-row=pairs]{grid-area:h1}.lines-boxes>.lines-row-head[data-row=groups]{grid-area:h2}.lines-row-head{margin:.25rem 0 0;font-size:.85rem}.lines-boxes>.lines-box[data-v=pairs]{grid-area:d}.lines-boxes>.lines-fwd{display:contents}.lines-fwd>.lines-box[data-v=pairs]{grid-area:f}.lines-fwd>.lines-groups{grid-area:g;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:.75rem;display:grid}.lines-boxes>p[data-v=pairs]{grid-area:legend;margin:0}.lines-section:not(.open) .lines-groups>.lines-list[data-v=lines]{max-height:calc(100vh - 5rem);position:sticky;top:4.5rem;overflow:auto}.lines-fwd>.lines-box,.lines-groups>.lines-list{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);align-self:start;min-width:0;padding:.6rem .75rem}.lines-open{grid-template-columns:minmax(0,1fr) 5rem 5rem 4rem}.lines-open .lines-time{display:contents}.lines-open .lt-sep,.lines-open .lt-go{display:none}.lines-open .lt-time,.lines-open .lt-n,.lines-open .lt-games{text-align:right}.lines-open .lt-games{grid-column:4}.shifts-games-table{width:auto;min-width:min(100%,40rem)}.shifts-games-table col.c-date{width:9rem}.shifts-games-table col.c-score{width:5rem}.shifts-games-table col.c-links{width:7rem}.shifts-games-table col.c-tags{width:12rem}.shifts-games-table col.c-length{width:16rem}.shifts-games-table col.c-avg{width:10rem}}@media (width<=1023.98px){.shifts-tab>.shift-games{display:contents}}@media (width<=1279.98px){.shifts-tab>.watch-panel{display:contents}.shifts-tab .watch-only{display:none}}@media (width>=1024px){.shifts-tab>.shift-games{grid-template-columns:repeat(auto-fill,minmax(24rem,1fr));align-items:start;gap:.75rem;min-width:0;display:grid}}@media (width>=1280px){.shifts-tab.can-watch{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);grid-auto-flow:dense;align-items:start;gap:.75rem 1rem;display:grid}.shifts-tab.can-watch>*{grid-column:1/-1}.shifts-tab.can-watch>.shift-games{grid-column:1;grid-template-columns:minmax(0,1fr)}.shifts-tab.can-watch>.watch-panel{grid-column:2}.watch-panel{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius);align-content:start;gap:.6rem;min-width:0;max-height:calc(100vh - 5rem);padding:.6rem .75rem;display:grid;position:sticky;top:4.5rem;overflow:auto}.watch-panel .shifts-player{margin-bottom:0}.watch-hint{background:rgba(var(--clr-ink-rgb), .04);border-radius:6px;margin:0;padding:.6rem}.watch-games{font-variant-numeric:tabular-nums;gap:.4rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:grid}.watch-games b{font-weight:600;display:block}.lines-section.open{grid-template-columns:minmax(0,1fr) 30rem;grid-auto-flow:dense;align-items:start;column-gap:1rem;display:grid}.lines-section.open>*{grid-column:1/-1}.lines-section.open>.lines-drill{grid-column:2;margin:.75rem 0 0}.lines-section.open>.lines-boxes{grid-column:1;min-width:0}.lines-section.open .lines-boxes{grid-template-columns:minmax(0,1fr);grid-template-areas:"h1""d""f""legend""h2""g"}.lines-section.open .lines-boxes>.lines-box[data-v=pairs]{justify-self:start}.lines-section.open .lines-fwd>.lines-groups{grid-template-columns:minmax(0,1fr)}.lines-drill.watch-panel{border-color:var(--clr-accent)}.lines-drill.watch-panel .shift-notes{grid-column:2/-1}}
