*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--blue: #1e40af;--blue-h: #1d4ed8;--blue-lt: #dbeafe;--surface: #f1f5f9;--card: #ffffff;--border: #cbd5e1;--text: #0f172a;--muted: #64748b;--danger: #dc2626;--danger-lt: #fee2e2;--green: #16a34a;--green-lt: #dcfce7;--purple: #7c3aed;--purple-lt: #ede9fe;--amber: #d97706;--amber-lt: #fef3c7;--util-empty: #f0fdf4;--util-partial: #fefce8;--util-full: #fff7ed;--util-over: #fef2f2;--util-closed: #f1f5f9;--my-event: #0d9488;--cyan: #0891b2;--cyan-lt: #cffafe;--team-travel: #0d9488;--team-intown: #0d9488;--radius: 6px;--shadow: 0 1px 3px rgba(0,0,0,.12);--header-h: 52px;--chip-shadow: 0 1px 0 rgba(255,255,255,.07) inset, 0 3px 9px rgba(0,0,0,.18), 0 1px 2px rgba(0,0,0,.12);--chip-shadow-hover: 0 1px 0 rgba(255,255,255,.12) inset, 0 6px 14px rgba(0,0,0,.28), 0 2px 4px rgba(0,0,0,.16);--ftl-invert-bg:#0f172a;--ftl-invert-ink:#f8fafc}[data-theme=dark]{--blue: #3b82f6;--blue-h: #60a5fa;--blue-lt: #3266cc;--surface: #111118;--card: #1a1a22;--border: #2a2a36;--text: #e8e8f0;--muted: #8888a0;--danger: #fb7185;--danger-lt: #451a1a;--green: #4ade80;--green-lt: #22884e;--purple: #a78bfa;--purple-lt: #6b3ab8;--amber: #fbbf24;--amber-lt: #a87b14;--util-empty: #1a1a22;--util-partial: #222220;--util-full: #28261e;--util-over: #2e1c1c;--util-closed: #1a1a22;--my-event: #2dd4bf;--cyan: #22d3ee;--cyan-lt: rgba(34,211,238,.14);--team-travel: #2dd4bf;--team-intown: #2dd4bf;--shadow: 0 1px 3px rgba(0,0,0,.4);--chip-shadow: 0 1px 0 rgba(255,255,255,.07) inset, 0 3px 9px rgba(0,0,0,.55), 0 1px 2px rgba(0,0,0,.45);--chip-shadow-hover: 0 1px 0 rgba(255,255,255,.12) inset, 0 6px 14px rgba(0,0,0,.7), 0 2px 4px rgba(0,0,0,.55);--ftl-invert-bg:#f4f4f8;--ftl-invert-ink:#0f172a;color-scheme:dark}[data-theme=dark] .app-header{background:#1a2248}[data-theme=dark] .app-header.role-coach{background:#14422a}[data-theme=dark] .app-header.role-ref{background:#18181e}[data-theme=dark] .app-header.role-division{background:#3e2808}@media(max-width:900px){[data-theme=dark] .app-nav{background:#1a2248}[data-theme=dark] .app-header.role-coach .app-nav{background:#14422a}[data-theme=dark] .app-header.role-ref .app-nav{background:#18181e}[data-theme=dark] .app-header.role-division .app-nav{background:#3e2808}}[data-theme=dark] .login-page{background:linear-gradient(135deg,#111118,#1a2248)}[data-theme=dark] .oauth-btn-google{background:#131314;border-color:#8e918f;color:#e3e3e3}[data-theme=dark] .oauth-btn-google:hover:not(:disabled){background:#1f1f1f}[data-theme=dark] .oauth-btn-apple{background:#fff;border-color:#fff;color:#000}[data-theme=dark] .oauth-btn-apple:hover:not(:disabled){background:#e8e8e8;border-color:#e8e8e8}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{box-shadow:0 0 0 3px #3b82f640}[data-theme=dark] .tp-ui-modal[data-theme=custom],[data-theme=dark] .tp-ui-modal[data-theme=custom] .tp-ui-wrapper{--tp-shadow: 0 8px 30px rgba(0,0,0,.4);--tp-text-type-time: var(--text);--tp-on-primary-container: #dbeafe;--tp-am-pm-text-selected: #dbeafe}[data-theme=dark] .modal,[data-theme=dark] .tl-popover{border:1px solid var(--border)}[data-theme=dark] .cal-popover{border-color:var(--border);box-shadow:0 4px 16px #0006}[data-theme=dark] .nav-dropdown-panel{box-shadow:0 4px 16px #0006}[data-theme=dark] .entry-row.entry-closing-affected,[data-theme=dark] .cal-pill-closed{opacity:.65;filter:grayscale(.3)}[data-theme=dark] .fd-alert-danger{color:#fecaca}[data-theme=dark] .req-rec-banner.danger{color:#fca5a5}[data-theme=dark] .fd-summary-row:hover{background:var(--surface)}[data-theme=dark] .fd-summary-label{color:var(--text)}[data-theme=dark] .dc-card-header:hover{background:var(--card)}[data-theme=dark] .urgency-high{color:var(--danger)}[data-theme=dark] .app-header.role-ref{background:#1e1e28;border-bottom:1px solid var(--border)}@media(max-width:900px){[data-theme=dark] .app-header.role-ref .app-nav{background:#1e1e28}}[data-theme=dark] .btn-success,[data-theme=dark] .game-urgency-high,[data-theme=dark] .fs-pill-open{color:#052e16}[data-theme=dark] .fs-pill-partial,[data-theme=dark] .filter-chip-pending.active{color:#422006}[data-theme=dark] .req-rec-banner.success{color:#dcfce7}[data-theme=dark] select option{background:var(--card);color:var(--text)}[data-theme=dark] .chip-practice,[data-theme=dark] .role-badge-sm.role-fd,[data-theme=dark] .status-setup,[data-theme=dark] .coach-team-type,[data-theme=dark] .badge-practice,[data-theme=dark] .req-badge-alt,[data-theme=dark] .req-type-field-change,[data-theme=dark] .change-updated,[data-theme=dark] .annc-scope-badge,[data-theme=dark] .preview-type-practice,[data-theme=dark] .sync-diff,[data-theme=dark] .badge-assigned,[data-theme=dark] .bays-notice,[data-theme=dark] .settings-nav-item.active,[data-theme=dark] .role-chip,[data-theme=dark] .coach-role-badge-head_coach,[data-theme=dark] .coach-sched-badge,[data-theme=dark] .sc-picker-current-tag,[data-theme=dark] .fd-action-badge-practice,[data-theme=dark] .fd-strip-dot-practice,[data-theme=dark] .hierarchy-copy-item:hover,[data-theme=dark] .theme-option.active,[data-theme=dark] .ra-game-badge-confirmed,[data-theme=dark] .ra-req-assigned,[data-theme=dark] .ra-conflict-req-id,[data-theme=dark] .maint-open,[data-theme=dark] .maint-tab.active .maint-tab-badge,[data-theme=dark] .reservation-date-ref-initials,[data-theme=dark] .notif-preset.active .notif-preset-name,[data-theme=dark] .notif-preset.active .notif-preset-desc,[data-theme=dark] .notif-custom-chip.active{color:#dbeafe}[data-theme=dark] .chip-game,[data-theme=dark] .role-badge-sm.role-coach,[data-theme=dark] .status-active,[data-theme=dark] .badge-game,[data-theme=dark] .req-badge-approved,[data-theme=dark] .req-validate-status.ok,[data-theme=dark] .change-created,[data-theme=dark] .req-rec-banner.success,[data-theme=dark] .fee-met,[data-theme=dark] .coach-role-badge-scheduling_contact,[data-theme=dark] .fd-action-badge-game,[data-theme=dark] .ra-game-badge,[data-theme=dark] .ra-req-confirmed,[data-theme=dark] .maint-resolved,[data-theme=dark] .badge-confirmed,[data-theme=dark] .role-request-status.status-approved,[data-theme=dark] .bays-sync-chip-ok,[data-theme=dark] .fd-strip-dot-game{color:#dcfce7}[data-theme=dark] .chip-adhoc,[data-theme=dark] .badge-adhoc,[data-theme=dark] .change-bumped,[data-theme=dark] .req-type-regular,[data-theme=dark] .coach-role-badge-team_manager,[data-theme=dark] .fd-action-badge-adhoc,[data-theme=dark] .ra-req-awaiting{color:#ede9fe}[data-theme=dark] .chip-special,[data-theme=dark] .chip-tentative,[data-theme=dark] .role-badge-sm.role-division,[data-theme=dark] .badge-tentative,[data-theme=dark] .req-badge-pending,[data-theme=dark] .req-cat-count,[data-theme=dark] .change-coach-cancelled,[data-theme=dark] .req-rec-banner.warning,[data-theme=dark] .annc-channel-hard,[data-theme=dark] .fee-warn-chip,[data-theme=dark] .dc-no-alt-chip,[data-theme=dark] .beta-badge,[data-theme=dark] .login-logo .beta-badge,[data-theme=dark] .fd-action-badge-assoc,[data-theme=dark] .fd-alert-warn,[data-theme=dark] .ra-req-pending,[data-theme=dark] .urgency-med,[data-theme=dark] .badge-exclusive,[data-theme=dark] .role-request-status.status-pending,[data-theme=dark] .bays-sync-chip-diff,[data-theme=dark] .breadcrumb-meta,[data-theme=dark] .sunset-badge,[data-theme=dark] .cell-equip-badge,[data-theme=dark] .fd-strip-dot-reservation{color:#fef3c7}[data-theme=dark] .weather-warm{color:#fbbf24}[data-theme=dark] .weather-warm:hover{color:#f59e0b}[data-theme=dark] .weather-cool{color:#38bdf8}[data-theme=dark] .weather-cool:hover{color:#0ea5e9}[data-theme=dark] .weather-gray{color:#94a3b8}[data-theme=dark] .weather-gray:hover{color:#cbd5e1}[data-theme=dark] .weather-danger{color:#a78bfa}[data-theme=dark] .weather-danger:hover{color:#8b5cf6}[data-theme=dark] .game-picker-card.selected .game-picker-card-sub,[data-theme=dark] .game-picker-card:hover .game-picker-card-sub{color:#ffffffb3}[data-theme=dark] .avail-slot.selected .bump-impact{color:#ffffffa6}[data-theme=dark] .breadcrumb .weather-cool,[data-theme=dark] .fd-home-today-header .weather-cool{color:#dbeafe}[data-theme=dark] .fd-strip-today .fd-strip-day{color:#fffc}[data-theme=dark] .fd-strip-today .fd-strip-sunset{color:#ffffffb3}[data-theme=dark] .fd-strip-today .fd-strip-wx,[data-theme=dark] .fd-strip-today .weather-warm,[data-theme=dark] .fd-strip-today .weather-cool,[data-theme=dark] .fd-strip-today .weather-gray,[data-theme=dark] .fd-strip-today .weather-danger{color:#ffffffd9}.about-card-logo{padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;background:var(--surface);color:var(--text);line-height:1.5}.btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s;white-space:nowrap;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover:not(:disabled){background:var(--blue-h)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-outline{background:var(--card);border-color:var(--border);color:var(--text)}.btn-outline:hover:not(:disabled){background:var(--surface)}.btn-secondary{background:var(--card);border-color:var(--border);color:var(--text)}.btn-secondary:hover:not(:disabled){background:var(--surface)}.btn-ghost{background:transparent;color:var(--muted)}.btn-ghost:hover:not(:disabled){background:var(--surface);color:var(--text)}.btn-ghost.btn-danger{color:var(--danger)}.btn-ghost.btn-danger:hover:not(:disabled){background:var(--danger-lt);color:var(--danger)}.btn-sm{padding:4px 10px;font-size:12px}.btn-full{width:100%;justify-content:center}.form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.form-group label{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-check label{flex-direction:row;align-items:center;gap:8px;font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--text)}.form-check label input[type=checkbox]{width:16px;height:16px}.form-error{color:var(--danger);font-size:12px;min-height:18px}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=date],input[type=number],select,textarea{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;background:var(--card);color:var(--text);transition:border-color .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #3b82f626}.cs-wrap{position:relative;width:100%}.cs-btn{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;background:var(--card);color:var(--text);cursor:pointer;text-align:left;font-family:inherit;transition:border-color .15s}.cs-btn:hover{border-color:var(--blue)}.cs-btn:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #3b82f626}.cs-btn.open{border-color:var(--blue);box-shadow:0 0 0 3px #3b82f626}.cs-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-placeholder{color:var(--muted)}.cs-caret{font-size:10px;color:var(--muted);flex-shrink:0;transition:transform .15s}.cs-btn.open .cs-caret{transform:rotate(180deg)}.cs-disabled .cs-btn{opacity:.5;cursor:not-allowed;pointer-events:none}.cs-panel{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:220px;overflow-y:auto;z-index:200;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 16px #00000024;padding:4px 0}.cs-panel.open{display:block}.cs-opt{padding:7px 12px;font-size:13px;cursor:pointer;color:var(--text);transition:background .08s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cs-opt:hover,.cs-opt.highlighted{background:var(--surface)}.cs-opt.selected{color:var(--blue);font-weight:600}.cs-opt.disabled{opacity:.4;cursor:not-allowed}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--blue) 0%,#3b82f6 100%)}.login-card{background:var(--card);border-radius:12px;padding:40px;width:100%;max-width:400px;box-shadow:0 20px 60px #0003}.login-logo{text-align:center;margin-bottom:28px}.login-logo-img{width:100px;height:100px;object-fit:contain;margin-bottom:10px;border-radius:22px}.login-logo h1{font-size:26px;font-weight:700;color:var(--blue)}.login-logo p{color:var(--muted);font-size:13px;margin-top:2px}.oauth-divider{display:flex;align-items:center;gap:12px;margin:20px 0 14px;color:var(--muted);font-size:12px}.oauth-divider:before,.oauth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.oauth-buttons{display:flex;flex-direction:column;gap:8px}.oauth-btn-google{background:#fff;border:1px solid #747775;color:#1f1f1f;font-family:Roboto,Arial,sans-serif;font-size:14px;font-weight:500;padding:10px 12px;gap:10px}.oauth-btn-google:hover:not(:disabled){background:#f2f2f2;border-color:#747775}.oauth-btn-google:focus-visible{outline:2px solid #4285f4;outline-offset:2px}.oauth-btn-apple{background:#000;border:1px solid #000;color:#fff;font-family:-apple-system,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:14px;font-weight:500;padding:10px 12px;gap:10px}.oauth-btn-apple:hover:not(:disabled){background:#333;border-color:#333}.oauth-btn-apple:focus-visible{outline:2px solid #fff;outline-offset:2px}.oauth-highlight .oauth-buttons{animation:oauth-pulse .6s ease-in-out 2}@keyframes oauth-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.oauth-highlight .oauth-btn{box-shadow:0 0 0 2px var(--blue)}.forgot-link{font-size:11px;color:var(--muted);text-decoration:none}.forgot-link:hover{text-decoration:underline}.login-footer{margin-top:20px;text-align:center;font-size:12px;color:var(--muted)}.login-footer a{color:var(--blue);text-decoration:none}.login-footer a:hover{text-decoration:underline}.login-copyright{padding:16px 0;text-align:center;font-size:11px;color:#ffffff8c}.app-store-link{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:20px;text-decoration:none;transition:transform .15s ease,opacity .15s ease}.app-store-link:hover{transform:translateY(-1px)}.app-store-link:active{transform:translateY(0);opacity:.85}.app-store-link-label{font-size:12px;color:#ffffffbf;letter-spacing:.2px}.app-store-badge-img{display:block;height:40px;width:auto}.app-store-badge-dark,[data-theme=dark] .app-store-badge-light{display:none}[data-theme=dark] .app-store-badge-dark{display:block}.reg-title{font-size:16px;font-weight:600;margin-bottom:20px}.reg-success{padding:8px 0}.reg-success p{color:var(--text);line-height:1.6;font-size:14px}.pw-input-wrap{position:relative}.pw-input-wrap input{padding-right:34px}.pw-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);background:none;border:none;padding:2px;cursor:pointer;color:var(--muted);display:flex;align-items:center;line-height:0}.pw-toggle:hover{color:var(--text)}.pw-toggle .icon svg{width:16px;height:16px}.app-layout{display:flex;flex-direction:column;min-height:100dvh}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:52px;background:var(--blue);color:#fff;box-shadow:var(--shadow);flex-shrink:0;position:sticky;top:0;z-index:1050}.app-header.role-coach{background:#15803d}.app-header.role-ref{background:#1f2937}.app-header.role-division{background:#b45309}.app-title{font-size:17px;font-weight:700;letter-spacing:-.3px;display:flex;align-items:center;gap:8px}.header-logo{width:28px;height:28px;object-fit:contain}.season-select{width:auto}.season-select .cs-btn{padding:4px 10px;font-size:13px;font-weight:500;background:#ffffff26;border:1px solid rgba(255,255,255,.3);color:#fff}.season-select .cs-btn:hover{border-color:#ffffff80}.season-select .cs-btn:focus,.season-select .cs-btn.open{border-color:#fff9;box-shadow:none}.season-select .cs-caret{color:#ffffffb3}.season-select .cs-placeholder{color:#fff9}.season-select .cs-panel{min-width:180px}.season-state-label{font-size:13px;font-weight:500;color:#ffffffe6;padding:4px 12px;border-radius:var(--radius);background:#ffffff26;border:1px solid rgba(255,255,255,.2);white-space:nowrap}.header-left{display:flex;align-items:center;gap:12px}.header-right{display:flex;align-items:center;gap:8px}.header-right .btn-ghost{color:#fffc}.header-right .btn-ghost:hover{background:#ffffff26;color:#fff}.app-main{flex:1;padding:20px;overflow:auto}.loading{text-align:center;padding:60px;color:var(--muted);font-size:15px}.error-msg{padding:20px;color:var(--danger);text-align:center}.fw-loader{--fw-bounce: -44px;display:flex;flex-direction:column;align-items:center;gap:18px;padding:56px 0}.fw-loader-compact{--fw-bounce: -28px;gap:11px;padding:22px 0}.fw-loader-compact .fw-loader-stage{width:60px;height:54px}.fw-loader-compact .fw-loader-ball{width:40px;height:40px;margin-left:-20px;bottom:6px}.fw-loader-compact .fw-loader-shadow{width:36px;height:9px;margin-left:-18px}.fw-loader-compact .fw-loader-text{font-size:13px}.fw-loader-stage{position:relative;width:90px;height:78px}.fw-loader-ball{position:absolute;left:50%;bottom:8px;width:64px;height:64px;margin-left:-32px;transform-origin:center bottom;animation:fw-ball-bounce .85s infinite}.fw-loader-ball .icon{display:block;width:100%;height:100%;animation:fw-ball-spin 1.7s linear infinite}.fw-loader-ball .icon svg{display:block;width:100%;height:100%}.fw-loader-shadow{position:absolute;left:50%;bottom:2px;width:58px;height:11px;margin-left:-29px;border-radius:50%;background:radial-gradient(ellipse at center,#0000004d,#0000 72%);animation:fw-ball-shadow .85s infinite}.fw-loader-text{color:var(--muted);font-size:14px;letter-spacing:.01em}@keyframes fw-ball-bounce{0%{transform:translateY(0) scale(1.1,.9);animation-timing-function:cubic-bezier(.28,0,.4,1)}12%{transform:translateY(-4px) scale(1)}50%{transform:translateY(var(--fw-bounce, -44px)) scale(.98,1.02);animation-timing-function:cubic-bezier(.6,0,.72,1)}88%{transform:translateY(-4px) scale(1)}to{transform:translateY(0) scale(1.1,.9)}}@keyframes fw-ball-spin{to{transform:rotate(360deg)}}@keyframes fw-ball-shadow{0%{transform:scaleX(1.12);opacity:.5;animation-timing-function:cubic-bezier(.28,0,.4,1)}50%{transform:scaleX(.5);opacity:.14;animation-timing-function:cubic-bezier(.6,0,.72,1)}to{transform:scaleX(1.12);opacity:.5}}@media(prefers-reduced-motion:reduce){.fw-loader-ball,.fw-loader-ball .icon,.fw-loader-shadow{animation:none}.fw-loader-ball{transform:none}}.week-nav{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.week-label{font-size:15px;font-weight:600;color:var(--text);padding:0 12px;min-width:180px;text-align:center}.view-toggle{display:inline-flex;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border)}.view-toggle .btn{border-radius:0;border:none;border-right:1px solid var(--border);margin:0}.view-toggle .btn:last-child{border-right:none}.schedule-view{display:flex;flex-direction:column}.grid-container{overflow-x:auto;border-radius:var(--radius);box-shadow:var(--shadow)}.schedule-grid{border-collapse:collapse;background:var(--card);min-width:800px;width:100%}.schedule-grid th,.schedule-grid td{border:1px solid var(--border);vertical-align:top}.field-header{background:var(--surface);padding:8px 12px;font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;min-width:120px;position:sticky;left:0;z-index:1}.field-header-sort{cursor:pointer;user-select:none;transition:color .12s}.field-header-sort:hover{color:var(--blue)}.field-header-sort:hover .field-sort-hint{color:var(--blue);opacity:1}.field-sort-hint{display:block;font-size:10px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--muted);opacity:.65;margin-top:1px}.field-name-cell{background:var(--surface);padding:8px 12px;min-width:120px;max-width:150px;position:sticky;left:0;z-index:1;border-right:2px solid var(--border)}.field-name{font-weight:600;font-size:13px;color:var(--text)}.field-formats{font-size:11px;color:var(--blue);font-weight:600;margin-top:2px}.field-capacity{font-size:10px;color:var(--muted);margin-top:1px}.day-header{padding:8px 10px;text-align:center;min-width:110px;cursor:pointer;background:var(--surface);transition:background .12s}.day-header:hover{background:var(--surface)}.day-name{font-weight:700;font-size:12px;text-transform:uppercase;color:var(--muted);letter-spacing:.5px}.day-date{font-size:14px;font-weight:600;color:var(--text);margin:2px 0}.day-sunset{font-size:11px;color:var(--muted)}.weather-badge{display:inline-flex;align-items:center;gap:2px;font-size:11px;font-weight:600;color:var(--muted);text-decoration:none;white-space:nowrap;cursor:pointer}.weather-badge .icon svg{width:16px;height:16px}.weather-warm{color:#b45309}.weather-cool{color:#0369a1}.weather-gray{color:#64748b}.weather-danger{color:#7c3aed}.weather-warm:hover{color:var(--amber)}.weather-cool:hover{color:#075985}.weather-gray:hover{color:#475569}.weather-danger:hover{color:#6d28d9}.breadcrumb .weather-badge,.fd-home-today-header .weather-badge{padding:1px 8px;border-radius:10px;font-size:12px}.breadcrumb .weather-badge{margin-left:6px}.fd-home-today-header .weather-badge{margin-left:8px;vertical-align:middle}.breadcrumb .weather-warm,.fd-home-today-header .weather-warm{background:var(--amber-lt);color:var(--amber)}.breadcrumb .weather-warm:hover,.fd-home-today-header .weather-warm:hover{background:var(--amber-lt);filter:brightness(.92)}.breadcrumb .weather-cool,.fd-home-today-header .weather-cool{background:var(--blue-lt);color:var(--blue)}.breadcrumb .weather-cool:hover,.fd-home-today-header .weather-cool:hover{background:var(--blue-lt);filter:brightness(.92)}.breadcrumb .weather-gray,.fd-home-today-header .weather-gray{background:var(--surface);color:var(--muted)}.breadcrumb .weather-gray:hover,.fd-home-today-header .weather-gray:hover{background:var(--surface);filter:brightness(.92)}.breadcrumb .weather-danger,.fd-home-today-header .weather-danger{background:var(--purple-lt);color:var(--purple)}.breadcrumb .weather-danger:hover,.fd-home-today-header .weather-danger:hover{background:var(--purple-lt);filter:brightness(.92)}.day-milestone{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.03em;color:#fff;border-radius:4px;padding:1px 5px;margin-top:3px;line-height:1.4;white-space:nowrap}.schedule-grid-wrap{position:relative}.today-col-overlay{position:absolute;pointer-events:none;border:2px solid var(--cyan);border-radius:6px;box-shadow:0 0 0 1px color-mix(in srgb,var(--cyan) 25%,transparent),0 0 14px 2px color-mix(in srgb,var(--cyan) 45%,transparent);z-index:2}.day-header.today:hover{filter:brightness(.95)}.day-header.today .day-name,.day-header.today .day-date{color:var(--cyan)}.day-header.today .day-date{font-size:16px}.day-header.past .day-name,.day-header.past .day-date,.day-header.past .day-sunset{opacity:.65}.schedule-cell.past-day{opacity:.72}.schedule-cell.past-day .cell-chips .entry-chip,.schedule-cell.past-day .cell-chips .entry-chip:hover{box-shadow:none}.btn-icon-label{display:inline-flex;align-items:center;gap:5px}.btn-icon{padding:6px 9px;justify-content:center}.btn-sm.btn-icon{padding:4px 6px}.cal-popover{position:fixed;z-index:2500;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 16px #0000001f;padding:10px;width:224px;font-size:13px}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-month-label{font-weight:600;color:var(--text);font-size:13px}.cal-nav{padding:2px 7px!important;font-size:11px!important;min-width:0!important;line-height:1.6!important}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-dow{text-align:center;font-size:11px;font-weight:600;color:var(--muted);padding:2px 0}.cal-day{display:flex;flex-direction:column;align-items:center;padding:3px 0;border-radius:4px;cursor:pointer;color:var(--text);font-size:12px;line-height:1.4;transition:background .1s}.cal-day:hover{background:var(--surface)}.cal-day-empty{cursor:default}.cal-day-empty:hover{background:transparent}.cal-day-in-week{background:var(--blue-lt)}.cal-day-in-week:hover{background:var(--blue-lt);filter:brightness(.92)}.cal-day-today{background:var(--danger)!important;color:#fff!important;font-weight:700;border-radius:4px}.cal-day-today:hover{background:#b91c1c!important}.cal-dot{width:4px;height:4px;border-radius:50%;background:var(--blue);margin-top:1px}.cal-day-today .cal-dot{background:#fff}.cal-day-disabled{opacity:.3;cursor:default;pointer-events:none}.date-input-btn,.time-input-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);font-size:14px;color:var(--muted);cursor:pointer;line-height:1.4;text-align:left;min-width:0;transition:border-color .15s,box-shadow .15s;font-family:inherit}.date-input-btn:hover,.time-input-btn:hover{border-color:var(--blue)}.date-input-btn:focus,.time-input-btn:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 2px #3b82f626}.date-input-btn.date-input-has-value,.time-input-btn.time-input-has-value{color:var(--text)}.date-input-btn.date-input-disabled,.time-input-btn.time-input-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.date-input-btn .icon-inline,.time-input-btn .icon-inline{width:14px;height:14px;flex-shrink:0;color:var(--muted)}.date-input-text,.time-input-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tp-ui-modal[data-theme=custom],.tp-ui-modal[data-theme=custom] .tp-ui-wrapper{--tp-bg: var(--card);--tp-text: var(--text);--tp-text-secondary: var(--muted);--tp-text-disabled: rgba(100, 116, 139, .4);--tp-text-type-time: var(--muted);--tp-text-icon: var(--muted);--tp-on-surface: var(--text);--tp-primary: var(--blue);--tp-on-primary: #ffffff;--tp-primary-container: var(--blue-lt);--tp-on-primary-container: var(--blue);--tp-tertiary-container: var(--blue-lt);--tp-on-tertiary-container: var(--blue);--tp-am-pm-text-selected: var(--blue);--tp-am-pm-text-unselected: var(--muted);--tp-am-pm-active: var(--blue-lt);--tp-surface: var(--surface);--tp-surface-hover: var(--blue-lt);--tp-input-bg: var(--surface);--tp-border: var(--border);--tp-hover-bg: var(--blue-lt);--tp-shadow: 0 8px 30px rgba(0,0,0,.18);--tp-border-radius: var(--radius);--tp-font-family: inherit}.tp-ui-modal[data-theme=custom] .tp-ui-hour,.tp-ui-modal[data-theme=custom] .tp-ui-minutes{font-size:var(--tp-font-size-xl);border:2px solid transparent;padding:0}.tp-ui-modal[data-theme=custom] .tp-ui-value-tips.active{color:var(--tp-on-primary)!important;transition:none}.time-range-btn{display:flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);font-size:14px;color:var(--text);cursor:pointer;line-height:1.4;text-align:left;min-width:0;width:100%;transition:border-color .15s,box-shadow .15s;font-family:inherit}.time-range-btn:hover{border-color:var(--blue)}.time-range-btn:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 2px #3b82f626}.time-range-btn .icon-inline{width:14px;height:14px;flex-shrink:0;color:var(--muted)}.time-range-btn .time-range-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time-range-btn .time-range-arrow{color:var(--muted);font-size:12px;flex-shrink:0}.time-range-btn .time-range-duration{margin-left:auto;font-size:12px;color:var(--blue);background:#3b82f61f;padding:1px 8px;border-radius:10px;white-space:nowrap;flex-shrink:0;font-weight:600}[data-theme=dark] .time-range-btn .time-range-duration{color:#93c5fd;background:#93c5fd24}.time-range-btn.time-range-disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.field-name-cell-link{cursor:pointer;border-left:3px solid transparent;transition:border-color .12s,background .12s}.field-name-cell-link:hover{background:var(--surface);border-left-color:var(--blue)}.field-name-cell-link:hover .field-name{color:var(--blue)}.field-name-link{display:flex;align-items:center;gap:4px}.field-info-chevron{color:var(--muted);font-size:16px;font-weight:700;line-height:1;transition:color .12s;flex-shrink:0}.field-name-cell-link:hover .field-info-chevron{color:var(--blue)}.schedule-grid tbody td{transition:opacity .14s ease}.schedule-grid tbody:has(td:hover) td{opacity:.34}.schedule-grid tbody tr:has(td:hover) td{opacity:1}.schedule-grid tbody:has(td:nth-child(2):hover) td:nth-child(2),.schedule-grid tbody:has(td:nth-child(3):hover) td:nth-child(3),.schedule-grid tbody:has(td:nth-child(4):hover) td:nth-child(4),.schedule-grid tbody:has(td:nth-child(5):hover) td:nth-child(5),.schedule-grid tbody:has(td:nth-child(6):hover) td:nth-child(6),.schedule-grid tbody:has(td:nth-child(7):hover) td:nth-child(7),.schedule-grid tbody:has(td:nth-child(8):hover) td:nth-child(8){opacity:1}.schedule-grid tbody tr:has(td:hover) .field-name-cell{background:color-mix(in srgb,var(--cyan) 14%,var(--surface));border-left-color:var(--cyan)}.schedule-grid:has(tbody td:nth-child(2):hover) thead th:nth-child(2),.schedule-grid:has(tbody td:nth-child(3):hover) thead th:nth-child(3),.schedule-grid:has(tbody td:nth-child(4):hover) thead th:nth-child(4),.schedule-grid:has(tbody td:nth-child(5):hover) thead th:nth-child(5),.schedule-grid:has(tbody td:nth-child(6):hover) thead th:nth-child(6),.schedule-grid:has(tbody td:nth-child(7):hover) thead th:nth-child(7),.schedule-grid:has(tbody td:nth-child(8):hover) thead th:nth-child(8){background:color-mix(in srgb,var(--cyan) 14%,var(--surface))}.schedule-cell{padding:4px;min-height:52px;min-width:110px;cursor:pointer;transition:filter .12s}.schedule-cell:hover{filter:brightness(.96);box-shadow:inset 0 0 0 2px var(--cyan);position:relative;z-index:1}.cell-chips{display:flex;flex-direction:column;gap:3px}.cell-equip-badge{display:flex;align-items:center;gap:3px;margin-top:3px;padding:1px 5px;border-radius:4px;background:var(--amber-lt);color:var(--amber);font-size:10px;font-weight:600}.cell-equip-badge .icon-inline{width:12px;height:12px}.util-empty{background:var(--util-empty)}.util-partial{background:var(--util-partial)}.util-full{background:var(--util-full)}.util-over{background:var(--util-over)}.util-closed{background:var(--util-closed)}.cell-closed-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);padding:4px 0;text-align:center}.cell-closed-entries{display:flex;flex-direction:column;gap:3px;opacity:.25;filter:grayscale(1);pointer-events:none}.entry-chip{border-radius:4px;padding:3px 6px;font-size:11px;line-height:1.3;cursor:default}.chip-header{display:flex;align-items:center;gap:3px;overflow:hidden}.chip-icon{display:flex;align-items:center;flex-shrink:0}.chip-icon svg{width:10px;height:10px;display:block}.chip-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.chip-time{font-size:10px;opacity:.8}.chip-practice{background:var(--blue-lt);color:var(--blue)}.chip-adhoc{background:var(--purple-lt);color:var(--purple)}.chip-game{background:var(--green-lt);color:var(--green)}.chip-tentative{background:var(--amber-lt);color:var(--amber);border:1.5px dashed var(--amber)}.chip-ghost{background:var(--surface);color:var(--muted);border:1.5px dashed var(--border);opacity:.7}.chip-ghost .chip-name,.chip-ghost .chip-time{opacity:.8}.chip-warmup{background:repeating-linear-gradient(135deg,var(--green-lt),var(--green-lt) 4px,var(--card) 4px,var(--card) 8px);color:var(--green);opacity:.7}.chip-closing-affected{opacity:.45;filter:grayscale(.6)}.chip-special{background:var(--amber-lt);color:var(--amber)}.entry-chip.my-event,.entry-row.my-event{border-left:3px solid var(--my-event)}.tl-block.my-event{border-left:4px solid var(--my-event)}.tl-block.my-event .tl-block-name{padding-right:12px}.tl-block.my-event:after{content:"";position:absolute;top:4px;right:4px;width:7px;height:7px;border-radius:50%;background:var(--my-event);box-shadow:0 0 0 1.5px #0003;z-index:1}[data-theme=dark] .tl-block.my-event:after{box-shadow:0 0 0 1.5px #00000073}.cell-chips .entry-chip,.patterns-td .entry-chip{position:relative;border-radius:6px;padding:4px 7px;font-size:10.5px;line-height:1.22;color:#fff;border:1px solid rgba(0,0,0,.3);box-shadow:var(--chip-shadow);overflow:hidden;cursor:pointer;transition:box-shadow .15s,transform .15s,filter .15s}.cell-chips .entry-chip:hover,.patterns-td .entry-chip:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:var(--chip-shadow-hover);z-index:2}[data-theme=dark] .cell-chips .entry-chip:hover,[data-theme=dark] .patterns-td .entry-chip:hover{filter:brightness(1.14)}.cell-chips .entry-chip:active,.patterns-td .entry-chip:active{transform:translateY(0);filter:brightness(.96)}.cell-chips .entry-chip .chip-icon svg,.patterns-td .entry-chip .chip-icon svg{width:9px;height:9px}.cell-chips .entry-chip .chip-name,.patterns-td .entry-chip .chip-name{font-weight:700}.cell-chips .entry-chip .chip-time,.patterns-td .entry-chip .chip-time{font-size:9.5px;color:#ffffffa6;margin-top:2px;font-variant-numeric:tabular-nums;opacity:1}.cell-chips .entry-chip.chip-practice,.patterns-td .entry-chip.chip-practice{background:linear-gradient(180deg,#2d61c2,#234da3);color:#fff}.cell-chips .entry-chip.chip-game,.patterns-td .entry-chip.chip-game{background:linear-gradient(180deg,#1e9551,#137240);color:#fff}.cell-chips .entry-chip.chip-adhoc,.patterns-td .entry-chip.chip-adhoc{background:linear-gradient(180deg,#6b3fc8,#5832a4);color:#fff}.cell-chips .entry-chip.chip-special,.patterns-td .entry-chip.chip-special{background:linear-gradient(180deg,#c97a0b,#a76306);color:#fff}.cell-chips .entry-chip.chip-tentative,.patterns-td .entry-chip.chip-tentative{background:#d9770629;border:1.5px dashed rgba(217,119,6,.85);box-shadow:none;color:#78350f}.cell-chips .entry-chip.chip-tentative .chip-time,.patterns-td .entry-chip.chip-tentative .chip-time{color:#78350fb3}[data-theme=dark] .cell-chips .entry-chip.chip-tentative,[data-theme=dark] .patterns-td .entry-chip.chip-tentative{background:#fbbf242e;border-color:#fbbf24bf;color:#fde68a}[data-theme=dark] .cell-chips .entry-chip.chip-tentative .chip-time,[data-theme=dark] .patterns-td .entry-chip.chip-tentative .chip-time{color:#fde68ac7}.cell-chips .entry-chip.chip-ghost,.patterns-td .entry-chip.chip-ghost{background:#64748b1a;border:1.5px dashed rgba(100,116,139,.55);box-shadow:none;color:#334155;opacity:1}.cell-chips .entry-chip.chip-ghost .chip-name,.patterns-td .entry-chip.chip-ghost .chip-name{opacity:1}.cell-chips .entry-chip.chip-ghost .chip-time,.patterns-td .entry-chip.chip-ghost .chip-time{color:#334155a6;font-style:italic;opacity:1}[data-theme=dark] .cell-chips .entry-chip.chip-ghost,[data-theme=dark] .patterns-td .entry-chip.chip-ghost{background:#ffffff0f;border-color:#ffffff4d;color:#ffffffc7}[data-theme=dark] .cell-chips .entry-chip.chip-ghost .chip-time,[data-theme=dark] .patterns-td .entry-chip.chip-ghost .chip-time{color:#ffffff8c}.cell-chips .entry-chip.chip-cancelled,.patterns-td .entry-chip.chip-cancelled{background:var(--surface);border:1px dashed var(--border);box-shadow:none;color:var(--muted);opacity:.85}.cell-chips .entry-chip.chip-cancelled .chip-name,.cell-chips .entry-chip.chip-cancelled .chip-name-cancelled,.patterns-td .entry-chip.chip-cancelled .chip-name,.patterns-td .entry-chip.chip-cancelled .chip-name-cancelled{text-decoration:line-through;color:var(--text);opacity:.75}.cell-chips .entry-chip.chip-cancelled .chip-time,.cell-chips .entry-chip.chip-cancelled .chip-time-cancelled,.patterns-td .entry-chip.chip-cancelled .chip-time,.patterns-td .entry-chip.chip-cancelled .chip-time-cancelled{color:var(--muted)}.cell-chips .entry-chip.chip-tentative:hover,.cell-chips .entry-chip.chip-ghost:hover,.cell-chips .entry-chip.chip-cancelled:hover,.patterns-td .entry-chip.chip-tentative:hover,.patterns-td .entry-chip.chip-ghost:hover,.patterns-td .entry-chip.chip-cancelled:hover{box-shadow:0 4px 10px #0000002e,0 1px 3px #0000001a}[data-theme=dark] .cell-chips .entry-chip.chip-tentative:hover,[data-theme=dark] .cell-chips .entry-chip.chip-ghost:hover,[data-theme=dark] .cell-chips .entry-chip.chip-cancelled:hover,[data-theme=dark] .patterns-td .entry-chip.chip-tentative:hover,[data-theme=dark] .patterns-td .entry-chip.chip-ghost:hover,[data-theme=dark] .patterns-td .entry-chip.chip-cancelled:hover{box-shadow:0 4px 10px #0000008c,0 1px 3px #0006}.cell-chips .entry-chip.chip-cancelled:hover,.patterns-td .entry-chip.chip-cancelled:hover{opacity:1}.cell-chips .entry-chip.my-event,.patterns-td .entry-chip.my-event,.schedule-cell.past-day .cell-chips .entry-chip.my-event{border-left:4px solid var(--my-event);box-shadow:0 0 0 2px var(--my-event),var(--chip-shadow)}.cell-chips .entry-chip.my-event:hover,.patterns-td .entry-chip.my-event:hover,.schedule-cell.past-day .cell-chips .entry-chip.my-event:hover{box-shadow:0 0 0 2px var(--my-event),var(--chip-shadow-hover)}.cell-chips .entry-chip.my-event .chip-header,.patterns-td .entry-chip.my-event .chip-header{padding-right:12px}.cell-chips .entry-chip.my-event:after,.patterns-td .entry-chip.my-event:after{content:"";position:absolute;top:4px;right:4px;width:7px;height:7px;border-radius:50%;background:var(--my-event);box-shadow:0 0 0 1.5px #0003}[data-theme=dark] .cell-chips .entry-chip.my-event:after,[data-theme=dark] .patterns-td .entry-chip.my-event:after{box-shadow:0 0 0 1.5px #00000073}.day-view{max-width:none}.day-view-header{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:20px}.day-view-header .week-nav{margin-bottom:0}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:4px;flex:1;min-width:0}.breadcrumb-link{color:var(--primary);text-decoration:none;font-size:14px;white-space:nowrap}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-sep{color:var(--muted);font-size:14px;user-select:none}.breadcrumb-current{font-size:14px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}button.breadcrumb-current-picker{border:none;background:none;padding:0;cursor:pointer;font:inherit;display:inline-flex;align-items:center;gap:4px}button.breadcrumb-current-picker:after{content:"\25be";font-size:11px;color:var(--muted);font-weight:500}button.breadcrumb-current-picker:hover{color:var(--blue)}button.breadcrumb-current-picker:hover:after{color:var(--blue)}.breadcrumb-meta,.sunset-badge{display:inline-flex;align-items:center;gap:3px;background:var(--amber-lt);color:var(--amber);padding:1px 8px;border-radius:10px;font-size:12px;font-weight:600;white-space:nowrap}.breadcrumb-meta{margin-left:6px}.day-fields{display:flex;flex-direction:column;gap:12px}.field-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.field-card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border)}.field-card-name{font-weight:700;font-size:14px}.field-card-name-link{cursor:pointer;transition:color .12s}.field-card-name-link:hover{color:var(--blue)}.field-card-name-row{display:flex;align-items:center;gap:5px}.field-card-meta{display:flex;align-items:center;gap:10px}.field-card-formats{font-size:12px;color:var(--blue);font-weight:600}.field-card-capacity{font-size:11px;color:var(--muted)}.field-card-capacity-full{color:var(--red);font-weight:600}.field-card-capacity-conflict{color:var(--danger, #ef4444);font-weight:600}.field-card-entries{padding:8px 12px;display:flex;flex-direction:column;gap:6px}.no-entries{color:var(--muted);font-size:13px;padding:6px 4px;font-style:italic}.field-card-coach-request{padding:8px 12px;border-top:1px solid var(--border)}.field-card-no-match{padding:8px 12px;border-top:1px solid var(--border);font-size:12px;color:var(--muted);font-style:italic}.day-closing-banner{padding:10px 16px;font-size:13px;font-weight:600;background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:8px;margin-bottom:12px}.field-card-closing-banner{padding:7px 14px;font-size:12px;font-weight:600;background:var(--surface);color:var(--muted);border-bottom:1px solid var(--border)}.field-card-closing-banner.closing-full-day{background:var(--surface);color:var(--muted)}.field-card-equip-banner{padding:8px 14px;border-top:1px dashed var(--amber);background:var(--amber-lt)}.field-card-info-footer{padding:8px 16px;border-top:1px solid var(--border);font-size:12px;font-weight:600;color:var(--blue);cursor:pointer;transition:background .12s}.field-card-info-footer:hover{background:var(--surface)}.map-panel-field-link{color:var(--text)}.map-panel-field-link:hover{color:var(--blue)}.entry-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:var(--radius);gap:8px}.entry-row.chip-practice{background:var(--blue-lt)}.entry-row.chip-adhoc{background:var(--purple-lt)}.entry-row.chip-game{background:var(--green-lt)}.entry-row.chip-tentative{background:var(--amber-lt);border:1.5px dashed var(--amber)}.entry-row.chip-ghost{background:var(--surface);border:1.5px dashed var(--border);opacity:.7}.entry-row.chip-special{background:var(--amber-lt)}.entry-row.entry-closing-affected{opacity:.5;filter:grayscale(.5)}.entry-closing-badge{flex-shrink:0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 6px;border-radius:4px;background:var(--surface);color:var(--muted);border:1px solid var(--border)}.entry-row-info{display:flex;align-items:center;gap:10px;flex:1;flex-wrap:wrap}.entry-type-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:2px 7px;border-radius:10px;background:#0000001a;white-space:nowrap}.entry-type-icon{display:flex;align-items:center}.entry-type-icon svg{width:10px;height:10px;display:block}.entry-team{font-weight:600;font-size:13px}.team-link{color:inherit;text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:2px;cursor:pointer}.team-link:hover{color:var(--primary);text-decoration-color:var(--primary)}.entry-time{font-size:12px;color:inherit;opacity:.8;white-space:nowrap}.entry-exclusive{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:#0000001f;padding:2px 6px;border-radius:10px}.entry-notes{font-size:11px;opacity:.7;font-style:italic}.entry-actions{display:flex;gap:6px;flex-shrink:0}.entry-edited-badge{font-size:10px;font-weight:600;font-style:italic;padding:2px 6px;border-radius:10px;background:#00000014;color:inherit;opacity:.75}.chip-time-edited{font-style:italic}.entry-chip.chip-cancelled{background:var(--surface);border:1px dashed var(--border);opacity:.65}.chip-name-cancelled{text-decoration:line-through;color:var(--muted)}.chip-time-cancelled{color:var(--muted);font-style:italic}.entry-row-cancelled{background:var(--surface);border:1px dashed var(--border);opacity:.65;padding:6px 12px;border-radius:var(--radius);display:flex;align-items:center}.entry-cancelled-badge{font-size:10px;font-weight:600;font-style:italic;padding:2px 6px;border-radius:10px;background:var(--surface);color:var(--muted);border:1px solid var(--border)}.entry-team-cancelled{text-decoration:line-through;color:var(--muted)}.entry-time-cancelled{color:var(--muted);font-style:italic}.entry-coach-cancel{display:flex;align-items:center;gap:6px;flex-shrink:0}.entry-coach-cancel-hint{font-size:10px;color:var(--muted);font-style:italic;white-space:nowrap}.btn-cancel-practice{color:var(--red, #dc2626)!important;border-color:var(--red, #dc2626)!important}.btn-cancel-practice:hover{background:#dc262612!important}.field-card-cross-field{font-size:12px;color:var(--muted);margin-bottom:2px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tl-container{padding:8px 12px;border-bottom:1px solid var(--border)}.tl-area{position:relative;margin-left:64px;border-left:1px solid var(--border)}.tl-hour{position:absolute;left:-64px;right:0;border-top:1px solid var(--border);pointer-events:none}.tl-hour-label{position:absolute;left:0;top:-8px;font-size:11px;color:var(--muted);width:56px;text-align:right;padding-right:8px;line-height:1;white-space:nowrap}.tl-half{position:absolute;left:0;right:0;border-top:1px dashed rgba(0,0,0,.06);pointer-events:none}.tl-now{position:absolute;left:-64px;right:0;border-top:2px dashed var(--danger);z-index:4;pointer-events:none}.tl-now-lbl{position:absolute;left:0;top:-8px;font-size:9px;font-weight:800;color:var(--danger);background:var(--card);padding:0 4px;line-height:1.4;white-space:nowrap}.tl-lane{position:absolute;top:0;bottom:0;z-index:0;pointer-events:none}.tl-lane-stripe{background:#00000006}[data-theme=dark] .tl-lane-stripe{background:#ffffff05}.tl-block{position:absolute;border-radius:8px;padding:7px 10px 6px;cursor:default;min-height:18px;border:1px solid rgba(0,0,0,.3);box-shadow:0 1px #ffffff12 inset,0 3px 9px #0000002e,0 1px 2px #0000001f;z-index:2;display:flex;flex-direction:column;overflow:hidden;color:#fff}[data-theme=dark] .tl-block{box-shadow:0 1px #ffffff12 inset,0 3px 9px #0000008c,0 1px 2px #00000073}.tl-block-name{font-size:13px;font-weight:700;line-height:1.22;word-break:break-word}.tl-block-meta{font-size:11.5px;line-height:1.25;color:#ffffffc7;margin-top:2px;word-break:break-word}.tl-block-baysnum{font-weight:600;font-variant-numeric:tabular-nums}.tl-block-time{font-size:10.5px;color:#ffffff9e;margin-top:3px;font-variant-numeric:tabular-nums}.tl-block-badge{display:inline-block;font-size:9.5px;font-weight:800;padding:1px 5px;border-radius:4px;background:#ffffff2e;color:#fffffff2;text-transform:uppercase;letter-spacing:.04em;margin-left:4px;vertical-align:middle}.tl-block-ghost-note{font-size:10px;font-style:italic;color:#ffc850c7;margin-top:3px}.tl-block .chip-icon{display:inline-flex;align-items:center;vertical-align:middle;margin-right:4px}.tl-block .chip-icon svg{width:11px;height:11px}.tl-block.tl-density-1 .tl-block-meta,.tl-block.tl-density-1 .tl-block-time,.tl-block.tl-density-2 .tl-block-meta{display:none}.tl-block.tl-density-1{padding:4px 8px}.tl-block.tl-density-1 .tl-block-name{font-size:11.5px;font-weight:700}.tl-block.chip-practice{background:linear-gradient(180deg,#2d61c2,#234da3)}.tl-block.chip-adhoc{background:linear-gradient(180deg,#6b3fc8,#5832a4)}.tl-block.chip-game{background:linear-gradient(180deg,#1e9551,#137240)}.tl-block.chip-special{background:linear-gradient(180deg,#c97a0b,#a76306)}.tl-block.chip-warmup{background:repeating-linear-gradient(135deg,rgba(255,255,255,.1) 0 5px,transparent 5px 10px),linear-gradient(180deg,#1f7a44,#155a31);border:1px solid rgba(0,0,0,.3);border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:0 1px #ffffff12 inset;color:#fff}.tl-block.chip-warmup .tl-block-name{font-size:11.5px;font-weight:700;color:#fff}.tl-block.chip-warmup .tl-block-time{color:#ffffffc7}.tl-block.tl-has-warmup{border-top-left-radius:0;border-top-right-radius:0;box-shadow:0 3px 9px #0000002e,0 1px 2px #0000001f}[data-theme=dark] .tl-block.tl-has-warmup{box-shadow:0 3px 9px #0000008c,0 1px 2px #00000073}.tl-block.chip-tentative{background:#f59e0b2e;border:1.5px dashed rgba(245,158,11,.7);color:#ffd591}[data-theme=dark] .tl-block.chip-tentative{color:#ffd591}.tl-block.chip-tentative .tl-block-meta{color:#ffd591c7}.tl-block.chip-tentative .tl-block-time{color:#ffd59199}.tl-block.chip-tentative .tl-block-badge{background:#f59e0b4d;color:#ffe7b8}.tl-block.chip-ghost{background:#78788c1a;border:1.5px dashed rgba(140,140,160,.45);box-shadow:none;color:#3c3c50a6}[data-theme=dark] .tl-block.chip-ghost{background:#ffffff0a;border-color:#fff3;color:#ffffff9e}.tl-block.chip-ghost .tl-block-name{font-weight:600}.tl-block.chip-ghost .tl-block-meta{color:#3c3c508c}.tl-block.chip-ghost .tl-block-time{color:#3c3c5073}[data-theme=dark] .tl-block.chip-ghost .tl-block-meta{color:#ffffff73}[data-theme=dark] .tl-block.chip-ghost .tl-block-time{color:#ffffff59}.tl-block.chip-closing-affected{opacity:.55;filter:grayscale(.5)}.tl-cap-over{font-size:11px;font-weight:600;color:var(--danger);margin-bottom:6px}.tl-ghost{position:absolute;left:0;right:0;z-index:0;border:2px dashed var(--green);border-radius:4px;background:#22c55e14}.tl-ghost-conflict{border-color:var(--danger);background:#ef444414}.tl-ghost-label{position:absolute;top:2px;left:6px;font-size:10px;font-weight:600;color:var(--green);pointer-events:none}.tl-ghost-conflict .tl-ghost-label{color:var(--danger)}.tl-closing{position:absolute;left:0;right:0;z-index:3;background:repeating-linear-gradient(-45deg,#ef44441a,#ef44441a 5px,#ef444433 5px 10px);border-left:4px solid rgba(239,68,68,.55);pointer-events:none}.tl-closing-label{position:absolute;top:6px;left:12px;font-size:11px;font-weight:800;background:#c63030;color:#fff;padding:3px 9px;border-radius:999px;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 2px 6px #0006}.tl-block-interactive{cursor:pointer;transition:filter .12s,box-shadow .12s}.tl-block-interactive:hover{filter:brightness(.93);box-shadow:0 1px 6px #0000002e}.tl-block-interactive.tl-block-active{box-shadow:0 0 0 2px var(--primary);filter:brightness(.9);z-index:2}.tl-popover{position:fixed;z-index:1500;background:var(--card);border-radius:10px;box-shadow:0 8px 30px #0000002e,0 1px 4px #0000001a;width:280px;max-width:calc(100vw - 32px);overflow:hidden;animation:tl-pop-in .15s ease-out}@keyframes tl-pop-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tl-popover-header{display:flex;align-items:flex-start;justify-content:space-between;padding:12px 14px 10px;gap:8px}.tl-popover-close{background:none;border:none;cursor:pointer;color:var(--muted);font-size:20px;line-height:1;padding:0 2px;flex-shrink:0}.tl-popover-close:hover{color:var(--text)}.tl-popover-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:4px}.tl-popover-team{font-weight:600;font-size:14px;margin-bottom:2px}.tl-popover-time{font-size:12px;color:var(--muted)}.tl-popover-notes{font-size:11px;color:var(--muted);font-style:italic;margin-top:4px}.tl-popover-body{padding:0 14px 10px}.tl-popover-body .entry-contact{margin-top:0;padding-top:8px;border-top:1px solid var(--border)}.tl-popover-actions{display:flex;justify-content:flex-end;gap:6px;padding:10px 14px;border-top:1px solid var(--border);background:var(--surface)}.ep-scope-list{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}.ep-scope-label{display:flex;align-items:center;font-size:14px;cursor:pointer}.modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:60px 16px;z-index:2000;overflow-y:auto}.modal{background:var(--card);border-radius:10px;box-shadow:0 20px 60px #0003;width:100%;max-width:500px}.modal-wide{max-width:720px}.modal-map-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:16px;z-index:3000}.modal-map{background:var(--card);border-radius:10px;box-shadow:0 20px 60px #0000004d;width:calc(100vw - 32px);height:calc(100vh - 32px);max-width:1200px;max-height:900px;display:flex;flex-direction:column;overflow:hidden}.modal-map .modal-header{flex-shrink:0}.modal-map .map-annotation-container{flex:1;min-height:0}.modal-map .modal-footer{flex-shrink:0}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);border-radius:10px 10px 0 0}.modal-header h3{font-size:16px;font-weight:700}.modal-header-titles{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.modal-header-summary{margin:0;font-size:13px;color:var(--muted);line-height:1.4}.modal-close{background:none;border:none;cursor:pointer;padding:4px;color:var(--muted);border-radius:4px;display:inline-flex;align-items:center;justify-content:center}.modal-close svg{width:16px;height:16px;display:block}.modal-close:hover{background:var(--surface);color:var(--text)}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border);background:var(--surface);border-radius:0 0 10px 10px}.form-readonly{padding:4px 0;color:var(--text);font-size:14px;font-weight:600;line-height:1.3}.form-group-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-group-row>div{display:flex;flex-direction:column;gap:4px}.form-group-row label{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.series-context-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;margin-bottom:14px;background:var(--surface);border-radius:var(--radius);border-left:3px solid var(--blue)}.series-context-label{display:inline-flex;align-items:center;gap:8px;flex:1 1 220px;min-width:0;font-size:13px;color:var(--text);line-height:1.35}.series-context-label svg{width:14px;height:14px;flex-shrink:0;color:var(--blue)}.series-context-label>span:last-child{word-break:break-word}.btn-manage-slot{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius);border:1px solid var(--border);background:var(--card);color:var(--text);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}.btn-manage-slot:hover{background:#3b82f61f;border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 3px #3b82f61a}[data-theme=dark] .btn-manage-slot:hover{color:#93c5fd}.danger-zone-sep{height:1px;background:var(--border);margin:8px 0 12px}.modal-action-row{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;padding:14px;margin-bottom:8px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text);cursor:pointer;font-family:inherit;transition:border-color .12s,box-shadow .12s,background .12s}.modal-action-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;border-radius:6px}.modal-action-icon svg{width:16px;height:16px}.modal-action-text{flex:1;min-width:0}.modal-action-label{display:block;font-weight:600;font-size:14px;line-height:1.25}.modal-action-sub{display:block;font-size:12px;color:var(--muted);margin-top:2px}.modal-action-blue .modal-action-icon{background:#3b82f61f;color:var(--blue)}.modal-action-blue:hover{border-color:var(--blue);box-shadow:0 0 0 3px #3b82f61f;background:#3b82f60a}.modal-action-red{border-color:#dc262673}.modal-action-red .modal-action-icon{background:#dc26261f;color:var(--danger)}.modal-action-red .modal-action-label{color:var(--danger)}.modal-action-red .modal-action-sub{color:var(--danger);opacity:.8}.modal-action-red:hover{border-color:var(--danger);box-shadow:0 0 0 3px #dc26261f;background:#dc26260a}[data-theme=dark] .modal-action-red .modal-action-label,[data-theme=dark] .modal-action-red .modal-action-sub{color:#fca5a5}.confirm-modal{max-width:400px}.confirm-modal-msg{margin:0;font-size:14px;line-height:1.6;color:var(--text)}.app-flash{position:fixed;top:72px;right:16px;z-index:9998;background:var(--card);border-radius:var(--radius);box-shadow:0 4px 20px #00000026;border-left:4px solid;padding:11px 40px 11px 14px;max-width:340px;width:calc(100vw - 32px);opacity:0;transform:translateY(-6px);transition:opacity .2s,transform .2s}.app-flash--show{opacity:1;transform:translateY(0)}.app-flash--error{border-color:var(--danger);background:var(--danger-lt)}.app-flash--success{border-color:var(--green);background:var(--green-lt)}.app-flash--info{border-color:var(--blue);background:var(--blue-lt)}.app-flash-msg{font-size:13px;line-height:1.5;color:var(--text);display:block}.app-flash-close{position:absolute;top:6px;right:8px;background:none;border:none;cursor:pointer;color:var(--muted);font-size:18px;line-height:1;padding:0 4px;opacity:.7}.app-flash-close:hover{opacity:1}.practice-form .modal-header+*{padding:16px 20px}.manage-scope-options{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.manage-scope-label{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text);border-bottom:1px solid var(--border);transition:background .1s;text-transform:none;letter-spacing:normal}.manage-scope-label:last-child{border-bottom:none}.manage-scope-label:hover{background:var(--surface)}.manage-scope-label input[type=radio]{flex-shrink:0;accent-color:var(--primary)}.type-tabs{display:flex;gap:4px}.type-tab{flex:1;padding:7px 12px;border-radius:var(--radius);font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--muted);transition:background .12s,color .12s}.type-tab.active{background:var(--blue);color:#fff;border-color:var(--blue)}.type-tab.active-alt{background:#374151;color:#fff;border-color:#374151}.type-tab.active-reject{background:var(--danger);color:#fff;border-color:var(--danger)}.delete-confirm-text{padding:20px;font-size:14px;line-height:1.6;color:var(--text)}.app-nav{display:flex;align-items:center;gap:2px;margin-left:8px}.nav-link{display:inline-flex;align-items:center;gap:.35em;padding:5px 12px;border-radius:var(--radius);font-size:13px;font-weight:500;color:#ffffffbf;text-decoration:none;transition:background .12s,color .12s;white-space:nowrap}.nav-link .icon svg{width:14px;height:14px;opacity:.85}.nav-link:hover{background:#ffffff26;color:#fff}.nav-link.active{background:#fff3;color:#fff}.nav-dd-wrap{position:relative}.nav-dd-btn{background:transparent;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:3px}.nav-dd-caret{font-size:9px;opacity:.75}.nav-dropdown-panel{display:none;position:absolute;top:calc(100% + 6px);left:0;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 16px #00000024;z-index:200;min-width:148px;padding:4px 0}.nav-dropdown-panel.open{display:block}.nav-dd-item{display:flex;align-items:center;gap:.5em;padding:8px 16px;font-size:13px;color:var(--text);text-decoration:none;background:none;border:none;width:100%;text-align:left;cursor:pointer;transition:background .1s;white-space:nowrap}.nav-dd-item .icon svg{width:14px;height:14px;opacity:.6;flex-shrink:0}.nav-dd-item:hover{background:var(--surface)}.nav-dd-item.active{color:var(--blue);font-weight:600}.nav-dd-badge{margin-left:auto;padding:1px 6px;font-size:11px;font-weight:600;border-radius:10px;background:var(--danger, #ef4444);color:#fff;line-height:1.4}.nav-dd-total-badge{margin-left:2px;padding:0 5px;font-size:10px;font-weight:700;border-radius:8px;background:var(--danger, #ef4444);color:#fff;line-height:1.5}.nav-dd-divider{height:1px;background:var(--border);margin:4px 0}.nav-dd-signout{color:var(--danger)!important}.nav-dd-signout:hover{background:var(--danger-lt)!important}.user-menu-wrap .nav-dropdown-panel{left:auto;right:0;min-width:180px}.user-menu-btn{display:flex;align-items:center;gap:7px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:3px 8px 3px 4px;cursor:pointer;color:#fff;font-size:13px;transition:background .12s}.user-menu-btn:hover,.user-menu-btn.active{background:#ffffff38}.user-avatar{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#ffffff40;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}.user-menu-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dd-identity{padding:10px 16px 8px;display:flex;flex-direction:column;gap:5px}.user-dd-name{font-size:13px;font-weight:600;color:var(--text)}.role-badge-sm{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;width:fit-content}.role-badge-sm.role-fd{background:var(--blue-lt);color:var(--blue)}.role-badge-sm.role-coach{background:var(--green-lt);color:var(--green)}.role-badge-sm.role-ref{background:var(--surface);color:var(--text)}.role-badge-sm.role-division{background:var(--amber-lt);color:var(--amber)}.user-dd-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.hamburger-btn{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:transparent;border:none;cursor:pointer;padding:6px;border-radius:var(--radius);flex-shrink:0;min-width:44px;min-height:44px}.hamburger-btn span{display:block;width:20px;height:2px;background:#ffffffd9;border-radius:2px;transition:transform .2s,opacity .2s}.hamburger-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger-btn.open span:nth-child(2){opacity:0}.hamburger-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:900px){.hamburger-btn{display:flex}.app-nav{display:none;position:absolute;top:52px;left:0;right:0;flex-direction:column;align-items:stretch;padding:6px 0;background:var(--blue);z-index:100;border-top:1px solid rgba(255,255,255,.15);box-shadow:0 6px 16px #0003}.app-header.role-coach .app-nav{background:#15803d}.app-header.role-ref .app-nav{background:#1f2937}.app-header.role-division .app-nav{background:#b45309}.app-nav.nav-open{display:flex}.app-nav .nav-link,.app-nav .nav-dd-btn{padding:12px 20px;border-radius:0;width:100%;justify-content:flex-start;gap:12px}.app-nav .nav-dd-wrap{position:static}.app-nav .nav-dropdown-panel{position:static;box-shadow:none;border:none;border-radius:0;padding:0;background:#00000026}.app-nav .nav-dd-item{padding:9px 20px 9px 34px;color:#ffffffe0}.app-nav .nav-dd-item:hover{background:#ffffff1a}.app-nav .nav-dd-item.active{color:#fff;font-weight:600}.app-nav .nav-dd-signout{color:#fca5a5!important}.header-left>.beta-badge,.season-select,.season-state-label,.user-menu-name,.user-menu-btn .nav-dd-caret{display:none}.app-title{font-size:16px}.app-title-text{white-space:nowrap}.app-header{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.header-left{gap:8px}.header-right{gap:10px}.user-menu-btn{padding:3px;gap:0}}.seasons-view{max-width:100%}.row-dimmed{opacity:.55}.seasons-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.seasons-header h2{font-size:20px;font-weight:700;display:flex;align-items:center;gap:.4em}.seasons-header h2 .icon svg{width:20px;height:20px;opacity:.65}.season-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 20px;margin-bottom:12px}.season-card-dimmed{opacity:.55}.season-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.season-card-title{display:flex;align-items:center;gap:10px}.season-card-title strong{font-size:15px}.season-card-type{font-size:12px;color:var(--muted)}.season-card-right{display:flex;align-items:center;gap:8px}.season-empty{text-align:center;color:var(--muted);padding:40px 20px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.stl{display:flex;align-items:flex-start;justify-content:space-between;position:relative;padding:16px 8px 0;min-height:56px}.stl-track{position:absolute;top:22px;left:24px;right:24px;height:2px;background:var(--border)}.stl-point{display:flex;flex-direction:column;align-items:center;z-index:1;min-width:60px}.stl-dot{width:10px;height:10px;border-radius:50%;background:var(--blue);border:2px solid var(--blue)}.stl-label{font-size:10px;color:var(--muted);margin-top:4px;white-space:nowrap;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.stl-date{font-size:11px;color:var(--text);margin-top:1px;white-space:nowrap}.sm-date-section{display:flex;flex-direction:column;gap:2px}.sm-date-row{display:flex;align-items:center;gap:12px;padding:8px 0}.sm-date-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sm-dot-set{background:var(--blue)}.sm-dot-unset{background:var(--border)}.sm-date-label{font-size:13px;font-weight:600;color:var(--text);min-width:140px}.sm-date-value{flex:1}.sm-date-divider{height:1px;background:var(--border);margin:4px 0;opacity:.5}.sm-impact-item{padding:12px 0;border-bottom:1px solid var(--border)}.sm-impact-item:last-child{border-bottom:none}.sm-impact-label{font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px}.sm-impact-label .icon svg{width:16px;height:16px}.sm-impact-change{display:flex;align-items:center;gap:8px;margin-top:8px}.sm-arrow{color:var(--muted);font-size:16px}.sm-impact-error .sm-impact-label{color:var(--danger)}.sm-impact-error .sm-impact-detail{font-size:12px;color:var(--danger);margin-top:6px}.sm-impact-warn .sm-impact-label{color:var(--amber)}.sm-practice-list{margin-top:8px;max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.sm-practice-item{font-size:12px;padding:6px 10px;border-bottom:1px solid var(--border);color:var(--text)}.sm-practice-item:last-child{border-bottom:none}.sm-no-impact{color:var(--green)}.btn-disabled{opacity:.5;cursor:not-allowed}.season-archive-panel{border:1px dashed var(--border);border-radius:var(--radius);padding:14px 16px;margin-top:16px;background:var(--util-partial, #fefce8)}.season-archive-panel h4{margin:0 0 6px;font-size:14px}.season-archive-panel p{color:var(--muted);font-size:13px;margin:0 0 12px}.season-archive-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.season-archive-actions .link{color:var(--blue);font-size:13px;text-decoration:none}.season-archive-actions .link:hover{text-decoration:underline}.table-container{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{background:var(--surface);padding:9px 14px;text-align:left;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap}.data-table td{padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--surface)}.td-actions{text-align:right;white-space:nowrap}.td-actions .btn+.btn{margin-left:4px}.data-table .td-actions .btn{vertical-align:middle}.btn-row-action{justify-content:center;background:#3b82f614;color:var(--blue);border-color:#3b82f64d;font-weight:600;vertical-align:middle}.btn-row-action .icon svg{width:14px;height:14px}.btn-row-action:hover{background:var(--blue);color:#fff;border-color:var(--blue)}[data-theme=dark] .btn-row-action{background:#3b82f624;color:#93c5fd;border-color:#3b82f666}[data-theme=dark] .btn-row-action:hover{background:var(--blue);color:#fff;border-color:var(--blue)}.status-badge{display:inline-block;padding:2px 9px;border-radius:10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.status-setup{background:var(--blue-lt);color:var(--blue)}.status-active{background:var(--green-lt);color:var(--green)}.status-completed{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.schedule-filters{display:flex;flex-wrap:wrap;align-items:stretch;gap:6px 10px;margin-bottom:12px;padding:8px 12px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.schedule-filters-chips{display:contents}.schedule-filters-toggle{display:none}.games-filters{flex-direction:column;gap:8px}.games-filters .schedule-filters-chips{display:flex;flex-direction:column;gap:8px}.games-filters-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:6px 10px}.gv-expand-toggle .gv-expand-icon{transition:transform .15s}.gv-expand-toggle.is-active .gv-expand-icon{transform:rotate(180deg)}.filter-group{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap}.filter-group-right{margin-left:auto}.filter-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);white-space:nowrap;padding-right:2px;display:flex;align-items:center}.filter-chip{display:inline-flex;align-items:center;justify-content:center;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--muted);transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.filter-chip:hover{border-color:var(--blue);color:var(--blue)}.filter-chip.active{background:var(--blue);color:#fff;border-color:var(--blue)}.filter-chip-clear{border-color:transparent;color:var(--danger)}.filter-chip-clear:hover{border-color:var(--danger);background:var(--danger-lt);color:var(--danger)}.seg-toggle{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.seg-btn{padding:3px 10px;font-size:12px;font-weight:500;border:none;cursor:pointer;background:var(--card);color:var(--muted);border-right:1px solid var(--border)}.seg-btn:last-child{border-right:none}.seg-btn:hover{background:var(--surface)}.seg-btn-active{background:var(--blue);color:#fff}.seg-btn-active:hover{background:var(--blue)}.filter-divider{display:block;width:1px;background:var(--border);flex-shrink:0;margin:0 2px}.filter-select{padding:3px 6px;font-size:12px;border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--text);cursor:pointer;max-width:160px;height:26px;box-sizing:border-box}.filter-select:focus{outline:none;border-color:var(--blue)}.filter-ms{position:relative;display:inline-flex}.filter-ms-btn{padding:3px 8px;font-size:12px;border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--text);cursor:pointer;height:26px;box-sizing:border-box;white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.filter-ms-btn:hover{border-color:var(--blue)}.filter-ms-btn:after{content:"\25be";font-size:9px;color:var(--muted)}.filter-ms-btn.has-selection{border-color:var(--blue);color:var(--blue);font-weight:600}.filter-ms-panel{position:absolute;top:100%;left:0;z-index:100;background:var(--card);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 12px #0000001f;padding:4px 0;min-width:180px;max-height:240px;overflow-y:auto;margin-top:4px}.filter-ms-item{display:flex;align-items:center;gap:6px;padding:5px 12px;font-size:12px;cursor:pointer;white-space:nowrap}.filter-ms-item:hover{background:var(--surface, #f8f9fa)}.filter-ms-item input[type=checkbox]{margin:0;accent-color:var(--blue)}.filter-ms-sep{height:1px;background:var(--border);margin:4px 0}.annc-modal{max-width:560px;overflow:visible}.annc-ms-wrap{display:flex;flex-direction:column;width:100%;position:relative}.annc-ms-btn{text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;background:var(--card);color:var(--text);transition:border-color .15s}.annc-ms-btn:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #1e40af1f}.annc-ms-btn:after{content:"\25be";font-size:11px;color:var(--muted);margin-left:8px}.annc-ms-btn.annc-ms-active{border-color:var(--blue);color:var(--blue)}.annc-ms-panel.annc-ms-panel{position:static;margin-top:4px;max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:6px;background:var(--card);box-shadow:0 2px 8px #00000014;padding:4px 0}.filter-chip-pending{border-color:var(--amber, #f59e0b);color:var(--amber, #f59e0b);font-weight:600}.filter-chip-pending:hover{background:color-mix(in srgb,var(--amber, #f59e0b) 10%,transparent)}.filter-chip-pending.active{background:var(--amber, #f59e0b);color:#fff;border-color:var(--amber, #f59e0b)}.filter-chip-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;font-size:10px;font-weight:700;background:var(--amber, #f59e0b);color:#fff;margin-left:4px}.filter-chip-pending.active .filter-chip-badge{background:var(--card);color:var(--amber, #f59e0b)}.filter-search-input{width:100%;box-sizing:border-box;padding:5px 10px;font-size:13px;border:1px solid var(--border);border-radius:6px;background:var(--card);color:var(--text)}.filter-search-input:focus{outline:none;border-color:var(--blue)}.filter-chip-combo{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 12px;border-radius:var(--radius);line-height:1.2}.chip-fmt{font-size:13px;font-weight:700}.chip-grades{font-size:10px;opacity:.75;margin-top:1px}.field-row-maintenance .field-name-cell,.field-row-maintenance .field-name{color:var(--danger)}.field-card-maintenance{border-left:3px solid var(--danger)}.field-card-maintenance .field-card-name{color:var(--danger)}.hidden{display:none!important}.coach-schedule{max-width:760px}.coach-schedule-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:8px}.coach-schedule-header h2{font-size:20px;font-weight:700;display:flex;align-items:center;gap:.4em}.coach-schedule-header h2 .icon svg{width:20px;height:20px;opacity:.65}.coach-team-section{margin-bottom:28px}.coach-team-heading{font-size:16px;font-weight:700;color:var(--text);justify-content:space-between;padding:0 0 8px;margin-bottom:10px;border-bottom:2px solid var(--blue-lt);display:flex;align-items:center;gap:8px}.coach-team-type{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;background:var(--blue-lt);color:var(--blue);padding:2px 8px;border-radius:10px}.practice-list{display:flex;flex-direction:column;gap:6px}.practice-row{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;box-shadow:var(--shadow)}.practice-row.past{opacity:.55}.practice-row.cancelled{opacity:.6;background:var(--surface)}.practice-row.cancelled .practice-info-primary{text-decoration:line-through}.practice-date-col{flex-shrink:0;width:80px;text-align:center}.practice-date-day{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.practice-date-num{font-size:22px;font-weight:800;color:var(--text);line-height:1.1}.practice-date-mon{font-size:11px;font-weight:600;color:var(--muted)}.practice-info{flex:1;min-width:0}.practice-info-primary{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-info-secondary{font-size:12px;color:var(--muted);margin-top:2px}.practice-badge{flex-shrink:0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 8px;border-radius:10px}.practice-badge.badge-with-check{display:inline-flex;align-items:center;padding-left:6px}.practice-badge.badge-with-check .icon svg{width:11px;height:11px}.badge-practice{background:var(--blue-lt);color:var(--blue)}.badge-adhoc{background:var(--purple-lt);color:var(--purple)}.badge-game{background:var(--green-lt);color:var(--green)}.badge-tentative{background:var(--amber-lt);color:var(--amber);border:1px dashed var(--amber)}.badge-ghost{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.badge-away{background:var(--surface);color:var(--muted)}.badge-cancelled{background:var(--danger-lt);color:var(--danger)}.badge-resched-pending{background:var(--amber-lt);color:var(--amber)}.badge-resched-confirmed{background:var(--green-lt);color:var(--green)}.badge-resched-rejected,.badge-cancel-pending{background:var(--danger-lt);color:var(--danger);border:1px dashed var(--danger)}[data-theme=dark] .badge-practice,[data-theme=dark] .badge-assigned{background:color-mix(in srgb,var(--blue) 15%,var(--card))}[data-theme=dark] .badge-game,[data-theme=dark] .badge-confirmed{background:color-mix(in srgb,var(--green) 15%,var(--card))}[data-theme=dark] .badge-tentative,[data-theme=dark] .badge-resched-pending{background:color-mix(in srgb,var(--amber) 15%,var(--card))}[data-theme=dark] .badge-cancelled,[data-theme=dark] .badge-cancel-pending{background:color-mix(in srgb,var(--danger) 15%,var(--card))}[data-theme=dark] .badge-resched-confirmed{background:color-mix(in srgb,var(--green) 15%,var(--card))}[data-theme=dark] .badge-resched-rejected{background:color-mix(in srgb,var(--danger) 15%,var(--card))}.resched-sub-badge{display:inline-block;font-size:10px;line-height:1.3;margin-top:4px;font-weight:600;padding:1px 8px;border-radius:10px;letter-spacing:.3px;white-space:nowrap}.games-tbl .resched-sub-badge{display:block;margin-top:4px;width:fit-content;max-width:100%}.diff-chips{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;line-height:1}.diff-chip{display:inline-flex;align-items:center;gap:4px;background:color-mix(in srgb,var(--blue) 8%,var(--card));border:1px solid color-mix(in srgb,var(--blue) 20%,var(--card));padding:3px 8px;border-radius:6px;font-size:11px;line-height:1;white-space:nowrap}[data-theme=dark] .diff-chip{background:color-mix(in srgb,var(--blue) 12%,var(--card));border-color:color-mix(in srgb,var(--blue) 22%,var(--card))}.diff-chip-label{color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:600;letter-spacing:.02em}.diff-chip-old{text-decoration:line-through;color:color-mix(in srgb,var(--muted) 70%,transparent)}.diff-chip-arrow{color:var(--muted);font-size:10px}.diff-chip-new{color:var(--blue);font-weight:600}.badge-field-closed{background:var(--surface);color:var(--muted)}.practice-row.closing-affected{opacity:.5;filter:grayscale(.5)}.practice-row-away{opacity:.9;border-left:4px dashed var(--purple);padding-left:11px;background:color-mix(in srgb,var(--purple) 5%,var(--card))}.practice-row-away .practice-info-primary{font-style:italic}.practice-actions{flex-shrink:0}.no-practices{text-align:center;padding:32px;color:var(--muted);font-size:14px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);font-style:italic}.no-teams-msg{text-align:center;padding:60px 20px;color:var(--muted)}.req-list{display:flex;flex-direction:column;gap:6px}.req-row{display:flex;align-items:flex-start;gap:12px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;box-shadow:var(--shadow)}.req-row-info{flex:1;display:flex;flex-direction:column;gap:2px}.req-team{font-size:13px;font-weight:600;color:var(--text)}.req-details{font-size:12px;color:var(--muted)}.req-response{font-size:12px;color:var(--text);margin-top:4px;padding:4px 8px;background:var(--surface);border-radius:4px;border-left:3px solid var(--blue)}.req-badge{flex-shrink:0;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 8px;border-radius:10px;white-space:nowrap}.req-badge-pending{background:var(--amber-lt);color:var(--amber)}.req-badge-approved{background:var(--green-lt);color:var(--green)}.req-badge-alt{background:var(--blue-lt);color:var(--blue)}.req-badge-rejected,.req-badge-withdrawn{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.req-type-badge{flex-shrink:0;font-size:10px;font-weight:600;padding:2px 7px;border-radius:10px;white-space:nowrap}.req-type-regular{background:var(--purple-lt);color:var(--purple)}.req-type-adhoc{background:var(--purple-lt);color:var(--danger)}.req-type-field-change{background:var(--blue-lt);color:var(--blue)}.req-fd-categories{display:flex;flex-direction:column;gap:24px;padding:16px}.req-fd-cat-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.req-fd-cat-title{font-size:14px;font-weight:700;color:var(--text);margin:0}.req-cat-count{background:var(--amber-lt);color:var(--amber);font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px}.req-row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.req-fd-list{display:flex;flex-direction:column;gap:12px}.req-fd-row{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.req-fd-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.req-fd-info .req-team{font-weight:600;color:var(--text)}.req-coach-link{font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.req-coach-link:hover{color:var(--text)}.request-requester{font-size:12px;color:var(--muted)}.req-fd-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.req-ctx-pane{background:var(--surface);border-radius:var(--radius);padding:12px 14px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px;font-size:13px}.req-ctx-meta{color:var(--muted);font-size:12px}.req-ctx-coach{display:flex;flex-direction:column;gap:3px}.req-ctx-coach-name{font-weight:600;color:var(--text)}.req-ctx-coach-name a{color:var(--blue);text-decoration:none}.req-ctx-coach-name a:hover{text-decoration:underline}.req-ctx-coach-contacts{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--muted)}.req-ctx-coach-contacts a{color:var(--blue);text-decoration:none}.req-ctx-coach-contacts a:hover{text-decoration:underline}.req-ctx-fields{display:flex;flex-direction:column;gap:8px}.req-ctx-field-block{border-left:3px solid var(--border);padding-left:10px}.req-ctx-field-block.preferred{border-color:var(--blue)}.req-ctx-field-name{font-weight:600;font-size:12px;color:var(--text);margin-bottom:4px}.req-ctx-field-name .pref-tag{font-weight:400;color:var(--blue);font-size:11px;margin-left:6px}.req-ctx-entry{font-size:12px;color:var(--muted);padding:2px 0}.req-ctx-entry-team{color:var(--text);font-weight:500}.req-ctx-empty{font-size:12px;color:var(--muted);font-style:italic}.req-ctx-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:4px}.req-ctx-loading{color:var(--muted);font-style:italic;font-size:12px}.req-rec-banner{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:var(--radius);font-size:13px;line-height:1.4;margin-bottom:14px}.req-rec-banner.success{background:var(--green-lt);color:var(--green)}.req-rec-banner.warning{background:var(--amber-lt);color:var(--amber)}.req-rec-banner.danger{background:var(--danger-lt);color:var(--danger)}.req-rec-banner.neutral{background:var(--surface);color:var(--muted)}.req-rec-icon{font-weight:700;font-size:15px;flex-shrink:0;line-height:1;margin-top:1px}.req-field-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.req-field-pill{display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:16px;font-size:12px;font-weight:500;border:1.5px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;transition:border-color .15s,background .15s}.req-field-pill:hover{border-color:var(--blue)}.req-field-pill.selected{border-color:var(--blue);background:#3b82f614}.req-pill-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.req-field-pill.avail .req-pill-dot{background:var(--green)}.req-field-pill.conflict .req-pill-dot{background:var(--danger)}.req-pill-pref{font-size:10px;font-weight:600;color:var(--blue);background:#3b82f61a;padding:1px 5px;border-radius:8px}.req-mismatch-pills{margin-top:6px}.req-field-pill.mismatch{border-style:dashed}.req-tl-field-label{font-size:12px;font-weight:600;color:var(--text);margin-bottom:6px}.req-validate-status{display:flex;align-items:center;gap:6px;font-size:12px;padding:8px 12px;border-radius:var(--radius);margin-top:10px}.req-validate-status.ok{background:var(--green-lt);color:var(--green)}.req-validate-status.fail{background:var(--danger-lt);color:var(--danger)}.req-validate-status.loading{background:var(--surface);color:var(--muted)}.icon{display:inline-flex;align-items:center;vertical-align:middle}.icon svg{display:block;width:1em;height:1em}.icon-inline{margin-right:.3em}.day-sunset .icon svg,.sunset-badge .icon svg{width:14px;height:14px}.notif-bell{position:relative;background:transparent;border:none;cursor:pointer;color:#fffc;padding:4px 8px;border-radius:var(--radius);display:inline-flex;align-items:center}.notif-bell .icon svg{width:20px;height:20px}.notif-bell:hover{background:#ffffff26;color:#fff}.notif-badge{position:absolute;top:-2px;right:-4px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px;pointer-events:none}.notif-list{display:flex;flex-direction:column;gap:8px}.notif-item{background:var(--card);border-radius:var(--radius);padding:12px 16px;border:1px solid var(--border);cursor:pointer;transition:background .12s}.notif-item.unread{border-left:3px solid var(--blue)}.notif-item:hover{background:var(--surface)}.notif-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px}.notif-title{font-weight:600;font-size:14px}.notif-urgency-high{color:var(--danger)}.notif-time{font-size:11px;color:var(--muted);white-space:nowrap;flex-shrink:0}.notif-body{font-size:13px;color:var(--muted);line-height:1.4}.notif-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.notif-header-actions{display:flex;align-items:center;gap:4px}.notif-header-actions .btn{padding:8px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.notif-header-actions .btn:hover:not(:disabled){background:var(--surface);color:var(--text)}.notif-header-actions .btn .icon{display:inline-flex}.notif-header-actions .btn .icon svg{width:20px;height:20px}.notif-filter-bar{display:flex;gap:6px;padding:8px 0 12px;flex-wrap:wrap}.notif-chip{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:14px;padding:4px 12px;font-size:12px;font-weight:500;cursor:pointer}.notif-chip:hover:not(.active){border-color:var(--blue)}.notif-chip.active{background:var(--blue);color:#fff;border-color:var(--blue)}.notif-action-bar{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:12px;min-height:44px}.notif-action-bar .sel-count{font-weight:600;font-size:13px;color:var(--text)}.notif-action-bar .sel-count.muted{color:var(--muted);font-weight:400}.notif-action-bar .btn-push{margin-left:auto}.notif-action-bar .btn{font-size:12px;padding:6px 12px}.notif-action-bar .btn:disabled{opacity:.4;cursor:default}.notif-action-bar .btn.icon-inline{width:32px;height:32px;padding:0}.notif-action-bar .btn.icon-inline .icon svg{width:18px;height:18px}.notif-action-bar .btn-clear-sel{font-size:12px}.notif-view.in-management .notif-item{cursor:pointer}.notif-view.in-management .notif-item:hover{background:#3b82f60f}.notif-view .notif-checkbox{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1.5px solid var(--border);border-radius:4px;flex-shrink:0;margin-right:12px;align-self:flex-start;margin-top:2px;cursor:pointer;background:var(--card);transition:background .12s ease,border-color .12s ease}.notif-view .notif-checkbox:hover{border-color:var(--blue)}.notif-view .notif-checkbox .icon{display:inline-flex}.notif-view .notif-checkbox .icon svg{width:14px;height:14px;color:#fff;opacity:0;transform:scale(.6);transition:opacity .12s ease,transform .12s ease}.notif-view .notif-checkbox.selected{background:var(--blue);border-color:var(--blue)}.notif-view .notif-checkbox.selected .icon svg{opacity:1;transform:scale(1)}.notif-view .notif-item{display:flex;align-items:flex-start}.notif-view .notif-item.selected{background:#3b82f61f}.notif-view .notif-item.selected:hover{background:#3b82f62e}.notif-view .notif-body-wrap{flex:1;min-width:0}.notif-header-actions{gap:8px}.popover-menu{position:fixed;z-index:1000;min-width:220px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:4px 0}.popover-item{display:block;width:100%;text-align:left;padding:8px 14px;background:transparent;border:0;color:var(--text);cursor:pointer;font-size:13px}.popover-item:hover{background:var(--surface)}.activity-log{display:flex;flex-direction:column;gap:6px}.change-item{background:var(--card);border-radius:var(--radius);padding:10px 14px;border:1px solid var(--border);display:flex;gap:12px;align-items:flex-start}.change-type-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap;flex-shrink:0}.change-created{background:var(--green-lt);color:var(--green)}.change-cancelled{background:var(--danger-lt);color:var(--danger)}.change-coach-cancelled{background:var(--amber-lt);color:var(--amber)}.change-deleted{background:var(--danger-lt);color:var(--danger)}.change-updated{background:var(--blue-lt);color:var(--blue)}.change-bumped{background:var(--purple-lt);color:var(--purple)}.change-body{flex:1;font-size:13px;min-width:0}.change-reason{font-size:12px;color:var(--muted);margin-top:2px}.change-meta{font-size:11px;color:var(--muted);margin-top:3px}.change-entry-type{font-weight:500;color:var(--muted)}.change-date-link{color:var(--blue);text-decoration:none}.change-date-link:hover{text-decoration:underline}.activity-section{margin-bottom:28px}.activity-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.activity-section-header h3{font-size:15px;font-weight:600;color:var(--text);margin:0}.announcement-item{background:var(--card);border-radius:var(--radius);padding:12px 16px;border:1px solid var(--border);border-left:3px solid var(--blue);display:flex;flex-direction:column;gap:6px}.annc-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.annc-title{font-weight:600;font-size:14px;flex:1}.annc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.annc-body{font-size:13px;color:var(--muted);line-height:1.5;white-space:pre-wrap}.annc-empty{color:var(--muted);font-size:14px;padding:20px 0}.annc-scope-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--blue-lt);color:var(--blue)}.annc-channel-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.annc-channel-soft{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.annc-channel-hard{background:var(--amber-lt);color:var(--amber)}.annc-recipient-count{font-size:11px;color:var(--muted)}.annc-progress-track{width:100%;height:6px;border-radius:3px;background:var(--surface);overflow:hidden}.annc-progress-bar{height:100%;width:0;border-radius:3px;background:var(--blue);transition:width .15s ease}.notif-read-more{font-size:11px;color:var(--blue);margin-top:2px}.seasons-view .activity-chip-bar{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 12px}.annc-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:10px;cursor:pointer}.annc-card:hover{border-color:var(--blue)}.annc-card-head{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}.annc-card-head .annc-recipients{font-size:11px;color:var(--green);background:var(--green-lt);padding:2px 7px;border-radius:3px}.annc-card-head .annc-time{margin-left:auto;font-size:11px;color:var(--muted)}.annc-alert-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:24px 16px;z-index:3000}.annc-alert-card{background:var(--card);border-radius:12px;box-shadow:0 24px 64px #00000040;width:100%;max-width:440px;padding:28px 24px;text-align:center;animation:annc-alert-in .25s ease-out}@keyframes annc-alert-in{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.annc-alert-icon{margin-bottom:8px}.annc-alert-icon .icon svg{width:32px;height:32px;color:var(--blue)}.annc-alert-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}.annc-alert-title{font-size:18px;font-weight:700;margin:0 0 12px;color:var(--text)}.annc-alert-body{font-size:14px;line-height:1.6;color:var(--text);white-space:pre-wrap;max-height:240px;overflow-y:auto;margin-bottom:20px}.annc-alert-dismiss{min-width:120px;display:inline-flex;align-items:center;gap:6px;justify-content:center}.notif-toast{position:fixed;bottom:24px;right:24px;z-index:9999;background:#1e293b;color:#f1f5f9;border-radius:var(--radius);box-shadow:0 4px 16px #00000040;padding:12px 40px 12px 14px;max-width:320px;width:calc(100vw - 48px);cursor:pointer;opacity:0;transform:translateY(8px);transition:opacity .2s,transform .2s}[data-theme=dark] .notif-toast{background:#334155}.notif-toast--show{opacity:1;transform:translateY(0)}.notif-toast-title{font-weight:600;font-size:13px;margin-bottom:3px}.notif-toast-body{font-size:12px;opacity:.8;line-height:1.4}.notif-toast-close{position:absolute;top:6px;right:8px;background:none;border:none;color:#fff;font-size:18px;line-height:1;padding:0 4px;cursor:pointer;opacity:.6}.notif-toast-close:hover{opacity:1}.stale-banner{position:fixed;top:56px;left:50%;transform:translate(-50%) translateY(-8px);z-index:9997;display:flex;align-items:center;gap:10px;background:var(--blue-lt);border:1px solid var(--blue);border-radius:var(--radius);box-shadow:0 2px 12px #0000001a;padding:7px 12px 7px 14px;font-size:13px;color:var(--text);opacity:0;transition:opacity .2s,transform .2s;white-space:nowrap}.stale-banner--show{opacity:1;transform:translate(-50%) translateY(0)}.stale-banner-msg{color:var(--blue)}.stale-banner-action{background:var(--blue);color:#fff;border:none;border-radius:4px;padding:3px 10px;font-size:12px;font-weight:600;cursor:pointer}.stale-banner-action:hover{opacity:.85}.stale-banner-close{background:none;border:none;color:#64748b;font-size:16px;line-height:1;padding:0 2px;cursor:pointer;opacity:.6}.stale-banner-close:hover{opacity:1}[data-theme=dark] .stale-banner-msg{color:#e0e7ff}[data-theme=dark] .stale-banner-close{color:#94a3b8}.closings-list{display:flex;flex-direction:column;gap:8px}.closing-item{background:var(--card);border-radius:var(--radius);padding:12px 16px;border:1px solid var(--border);display:flex;gap:16px;align-items:center;justify-content:space-between}.closing-info{flex:1}.closing-title{font-weight:600;font-size:14px}.closing-meta{font-size:12px;color:var(--muted);margin-top:3px}.closing-preview{margin-top:12px}.preview-header{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}.preview-list{max-height:180px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:6px 10px}.preview-item{font-size:12px;color:var(--text);padding:4px 0;border-bottom:1px solid var(--border)}.preview-item:last-child{border-bottom:none}.preview-type-badge{display:inline-block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;padding:1px 5px;border-radius:3px;margin-right:4px}.preview-type-practice{background:var(--blue-lt);color:var(--blue)}.preview-type-game{background:var(--purple-lt);color:var(--danger)}.preview-item-danger{background:var(--danger-lt);border-left:3px solid #dc2626;padding-left:8px}.closing-item.closing-past{opacity:.55}.closing-tab-bar{display:flex;border-bottom:1px solid var(--border);margin-bottom:16px}.closing-tab{flex:1;padding:10px;background:transparent;border:0;border-bottom:2px solid transparent;cursor:pointer;color:var(--muted);font-weight:600;font-size:14px}.closing-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.closing-tab:hover{color:var(--text)}.closing-list-slot{min-height:120px}.closing-past{opacity:.8}.games-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:8px}.games-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.games-header h2{font-size:20px;font-weight:700;display:flex;align-items:center;gap:.4em}.games-header h2 .icon svg{width:20px;height:20px;opacity:.65}.games-section{background:var(--card);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:16px}.games-section-header{padding:10px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}.games-section-header h3{font-size:14px;font-weight:600}.section-count{font-size:12px;color:var(--muted)}.request-list{display:flex;flex-direction:column}.request-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}.request-row:last-child{border-bottom:none}.request-row-away{opacity:.55}.request-row-main{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.request-bays{font-size:14px;font-weight:700;color:var(--blue)}.request-teams{font-size:13px}.request-datetime{font-size:12px;color:var(--muted)}.request-field-assigned{font-size:12px;font-weight:600;color:var(--blue);display:flex;align-items:center;gap:3px;margin-top:1px}.request-field-assigned .icon svg{width:12px;height:12px}.request-row-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.fee-warn-chip{display:inline-flex;align-items:center;padding:1px 7px;border-radius:4px;font-size:11px;font-weight:600;width:fit-content;background:var(--amber-lt);color:var(--amber)}.game-conflicts-alert{background:color-mix(in srgb,var(--danger, #ef4444) 8%,transparent);border:1.5px solid color-mix(in srgb,var(--danger, #ef4444) 30%,transparent);border-radius:10px;padding:14px 16px;margin-bottom:12px}.game-conflicts-alert .games-section-header h3{color:var(--danger, #ef4444)}.conflict-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.conflict-pair{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--text);line-height:1.4}.conflict-icon{color:var(--danger, #ef4444);flex-shrink:0}.game-conflict-row{border-left:3px solid var(--danger, #ef4444);background:color-mix(in srgb,var(--danger, #ef4444) 5%,transparent)}.game-conflict-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:4px;font-size:11px;font-weight:600;width:fit-content;background:color-mix(in srgb,var(--danger, #ef4444) 12%,transparent);color:var(--danger, #ef4444);margin-top:2px}.sync-diff{display:inline-block;font-size:11px;color:var(--blue);background:var(--blue-lt);padding:1px 6px;border-radius:3px;margin-top:2px}.sync-conflict{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--amber);margin-top:2px}.sync-warning-chip{display:inline-block;font-size:11px;font-weight:600;color:var(--amber);margin-top:2px}.badge-pending{background:var(--amber-lt);color:var(--amber)}.badge-assigned{background:var(--blue-lt);color:var(--blue)}.badge-confirmed{background:var(--green-lt);color:var(--green)}.request-summary{padding:8px 12px;background:var(--surface);border-radius:var(--radius);margin-bottom:12px;font-size:13px}.fee-warning{padding:8px 12px;background:var(--amber-lt);color:var(--amber);border-radius:var(--radius);font-size:12px;font-weight:600;margin-bottom:12px}.avail-section{margin-bottom:16px}.avail-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:6px}.avail-slots-list{display:flex;flex-direction:column;gap:8px}.avail-slot{text-align:left;padding:10px 14px;border:2px solid var(--border);border-radius:var(--radius);background:var(--card);cursor:pointer;font-size:13px;transition:border-color .15s,background .15s;width:100%}.avail-slot:hover{border-color:var(--blue)}.avail-slot.selected{border-color:var(--blue);background:var(--blue-lt)}.avail-slot-open{border-color:var(--green)}.avail-slot-open:hover,.avail-slot-open.selected{background:var(--green-lt);border-color:var(--green)}.avail-slot-bump{border-color:var(--amber)}.avail-slot-bump:hover,.avail-slot-bump.selected{background:var(--amber-lt);border-color:var(--amber)}.bump-field-name{font-weight:600}.bump-impact{font-size:11px;color:var(--muted);margin-top:4px}.bump-practice{font-size:12px;color:var(--text);padding-left:8px}.avail-slot-blocked{border-color:var(--border);background:var(--surface);color:var(--muted);cursor:default;opacity:.75}.assign-field-body{padding:16px 20px;max-height:70vh;overflow-y:auto}.assign-context{background:var(--surface);border-radius:var(--radius);padding:12px 14px;margin-bottom:12px}.assign-context-title{font-size:14px;margin-bottom:4px}.assign-context-datetime{font-size:12px;color:var(--muted);margin-bottom:2px}.assign-context-row{font-size:12px;color:var(--muted);margin-top:2px}.assign-context-pref{color:var(--blue)}.tl-section{margin-bottom:14px}.dc-card{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}.dc-card-header{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;background:var(--surface);user-select:none}.dc-card-header:hover{background:var(--surface)}.dc-toggle{font-size:10px;color:var(--muted);width:12px;flex-shrink:0}.dc-card-title{flex:1;min-width:0}.dc-practice-name{font-weight:600;font-size:13px;display:block}.dc-practice-time{font-size:12px;color:var(--muted)}.dc-card-idx{font-size:11px;color:var(--muted);flex-shrink:0}.dc-no-alt-chip{display:inline-flex;align-items:center;gap:2px;font-size:10px;color:var(--amber);background:var(--amber-lt, #fef3c7);padding:2px 6px;border-radius:8px;flex-shrink:0}.dc-card-body{padding:0 12px 12px}.dc-radio-header{display:flex;align-items:center;gap:8px;padding:8px 0;cursor:pointer;user-select:none}.dc-radio-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;position:relative}.dc-radio-dot.dc-radio-selected{border-color:var(--blue)}.dc-radio-dot.dc-radio-selected:after{content:"";position:absolute;top:2px;left:2px;width:6px;height:6px;border-radius:50%;background:var(--blue)}.dc-radio-label{font-size:13px;font-weight:500}.dc-fields-list{padding-left:22px}.dc-mismatch-section{padding-left:22px;margin-top:4px}.dc-mismatch-toggle{display:flex;align-items:center;gap:6px;padding:6px 0;cursor:pointer;user-select:none;font-size:12px;color:var(--muted)}.dc-mismatch-toggle:hover{color:var(--text)}.dc-mismatch-list{padding-left:0}.dc-mismatch-note{font-size:11px;color:var(--muted);line-height:1.4;margin-bottom:6px}.badge--mismatch{display:inline-block;padding:1px 7px;margin-left:6px;font-size:11px;font-weight:600;line-height:1.4;border-radius:10px;background:#e11d481f;color:var(--red, #e11d48);vertical-align:middle;white-space:nowrap;border:1px solid rgba(225,29,72,.32)}[data-theme=dark] .badge--mismatch{background:#fb718529;color:#fb7185;border-color:#fb718557}.badge--format{display:inline-block;padding:1px 7px;margin-left:6px;font-size:11px;font-weight:600;line-height:1.4;border-radius:10px;background:#64748b26;color:var(--muted);vertical-align:middle;white-space:nowrap;border:1px solid rgba(100,116,139,.3)}[data-theme=dark] .badge--format{background:#ffffff12;color:#b8b8c8;border-color:#ffffff2e}.fc-field-cards{display:flex;flex-direction:column;gap:4px}.fc-field-row{margin-bottom:0}.fc-role-pill{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:2px 8px;border-radius:10px;white-space:nowrap;margin-left:4px}.fc-role-current{background:#64748b26;color:var(--muted);border:1px solid rgba(100,116,139,.3)}.fc-role-requested{background:#3b82f626;color:var(--blue);border:1px solid rgba(59,130,246,.35)}[data-theme=dark] .fc-role-current{background:#ffffff12;color:#b8b8c8;border-color:#ffffff2e}[data-theme=dark] .fc-role-requested{background:#3b82f62e;color:#93c5fd;border-color:#3b82f66b}.dc-separator{border-top:1px solid var(--border);margin:4px 0}.dc-msg-section{padding:8px 0 0}.dc-msg-standalone{background:var(--surface);border-radius:var(--radius);padding:10px 12px;margin-top:4px}.dc-msg-label{font-size:12px;font-weight:600;color:var(--text);margin-bottom:6px;display:flex;align-items:center;gap:4px}.deconflict-msg{width:100%;min-height:48px;resize:vertical;font-size:12px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius);font-family:inherit}.game-picker-list{display:flex;flex-direction:column;gap:8px}.game-picker-card{display:block;width:100%;text-align:left;padding:12px 14px;border:1.5px solid var(--border);border-radius:8px;background:var(--card);cursor:pointer;transition:border-color .15s,background .15s}.game-picker-card:hover,.game-picker-card.selected{border-color:var(--blue);background:var(--blue-lt)}.game-picker-card.disabled{cursor:not-allowed;opacity:.6}.game-picker-card.disabled:hover{border-color:var(--border);background:var(--card)}.game-picker-card-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap}.game-picker-card-title{font-size:13px;font-weight:600;color:var(--text)}.game-picker-card-sub{font-size:12px;color:var(--muted);margin-top:2px}.practice-badge.badge-pending-request{background:#d9770626;color:#b45309;border:1px solid rgba(217,119,6,.35)}[data-theme=dark] .practice-badge.badge-pending-request{color:#fcd34d;border-color:#d9770680}.games-filter-bar{padding:10px 16px;border-bottom:1px solid var(--border)}.games-status-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.games-status-chip{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;background:transparent;color:var(--muted);border:1px solid var(--border);cursor:pointer;transition:all .15s;line-height:1.4}.games-status-chip:hover{border-color:var(--blue);color:var(--text)}.games-status-chip.active{background:var(--blue);color:#fff;border-color:var(--blue)}.games-filter-selects{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.games-filter-selects select{font-size:12px;padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--card)}.games-count{font-size:12px;color:var(--muted)}.games-tbl-wrap{overflow-x:auto}.games-tbl{width:100%;border-collapse:collapse;font-size:13px}.games-tbl th{text-align:left;padding:8px 12px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);border-bottom:2px solid var(--border);cursor:pointer;user-select:none;white-space:nowrap}.games-tbl th:hover{color:var(--text)}.games-tbl th.sorted{color:var(--blue)}.sort-arrow{font-size:10px}.games-tbl td{padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.games-tbl-row{cursor:pointer;transition:background .1s}.games-tbl-row:hover{background:var(--surface, #f8fafc)}.games-tbl-conflict{border-left:3px solid var(--danger, #ef4444);background:color-mix(in srgb,var(--danger, #ef4444) 5%,transparent)}.games-tbl-away{cursor:default;opacity:.55}.games-tbl-away:hover{opacity:.7}.away-badge{display:inline-block;margin-left:6px;padding:1px 5px;font-size:10px;font-weight:600;letter-spacing:.5px;background:var(--surface);color:var(--muted);border-radius:3px;vertical-align:middle}.games-tbl-bays{font-weight:700;color:var(--blue)}.games-tbl-bays-muted{font-weight:500;color:var(--muted)}.games-tbl-has-request,.games-tbl-sub-row{background:color-mix(in srgb,var(--blue, #3b82f6) 5%,transparent);box-shadow:inset 3px 0 0 var(--blue, #3b82f6)}.games-tbl-has-request td{border-bottom-color:transparent}.games-tbl-has-request+.games-tbl-has-request td{border-top:2px solid var(--border)}.games-tbl-sub-row td{padding-top:2px;padding-bottom:8px;border-top:none;white-space:normal}.games-sub-stack{padding-left:24px;display:flex;flex-direction:column;gap:4px}.games-sub-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.games-sub-label{font-size:10px;text-transform:uppercase;font-weight:600;letter-spacing:.5px;color:var(--muted);min-width:64px;flex-shrink:0}.games-sub-empty{font-size:12px;color:var(--muted)}.req-stepper{display:inline-flex;align-items:center;gap:2px;font-size:11px;white-space:nowrap}.req-stepper-full{display:inline-flex;align-items:center;gap:2px}.req-stepper-compact{display:none;align-items:center;gap:6px;padding:2px 8px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.req-stepper-compact-sep{color:var(--muted)}.req-stepper-compact-count{color:var(--muted);font-weight:500}@media(max-width:640px){.req-stepper{white-space:normal}.req-stepper-full{display:none}.req-stepper-compact{display:inline-flex}}.req-step{display:inline-flex;align-items:center;gap:3px}.req-step-dot{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;font-size:9px;font-weight:700;border:1.5px solid var(--muted, #94a3b8);color:var(--muted, #94a3b8);background:transparent}.req-step-dot.done{background:var(--green, #22c55e);border-color:var(--green, #22c55e);color:#fff}.req-step-dot.current{background:var(--amber, #f59e0b);border-color:var(--amber, #f59e0b);color:#fff}.req-step-dot.rejected{background:var(--red, #ef4444);border-color:var(--red, #ef4444);color:#fff}.req-step-label{color:var(--muted, #94a3b8)}.req-step-label.current{color:var(--text, #1e293b);font-weight:600}.req-step-label.rejected{color:var(--red, #ef4444);font-weight:600}.req-step-line{width:12px;height:1.5px;background:var(--muted, #94a3b8);margin:0 1px}.req-step-line.done{background:var(--green, #22c55e)}.games-week-header td{background:var(--surface, #f8fafc);padding:10px 12px;border-bottom:1px solid var(--border)}.games-week-label{font-weight:700;font-size:13px;color:var(--text)}.games-week-count{margin-left:8px;font-size:11px;color:var(--muted);font-weight:400}.attention-strip{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin:0 0 14px;padding:10px 0;border-top:1px dashed var(--border);border-bottom:1px dashed var(--border)}.attention-strip-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-right:4px}.attention-bucket{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:14px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--muted);transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.attention-bucket:hover{background:var(--surface)}.attention-bucket-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;font-size:11px;font-weight:700;background:var(--surface);color:var(--text)}.attention-bucket-urgent{border-color:var(--danger);color:var(--danger)}.attention-bucket-urgent .attention-bucket-count,.attention-bucket-urgent.active{background:var(--danger);color:#fff}.attention-bucket-urgent.active .attention-bucket-count{background:var(--card);color:var(--danger)}.attention-bucket-warn{border-color:var(--amber);color:var(--amber)}.attention-bucket-warn .attention-bucket-count,.attention-bucket-warn.active{background:var(--amber);color:#fff}.attention-bucket-warn.active .attention-bucket-count{background:var(--card);color:var(--amber)}.attention-bucket-info{border-color:var(--blue);color:var(--blue)}.attention-bucket-info .attention-bucket-count,.attention-bucket-info.active{background:var(--blue);color:#fff}.attention-bucket-info.active .attention-bucket-count{background:var(--card);color:var(--blue)}.attention-caught-up{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--green);font-weight:600}.practice-badge.b-stale{background:transparent;color:var(--danger);border:1px solid var(--danger);display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.gv-zone-label{display:flex;align-items:center;gap:10px;margin:16px 0 8px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.gv-zone-line{flex:1;height:1px;background:var(--border)}.gv-zone-count{color:var(--muted);font-weight:500;font-size:11px;text-transform:none;letter-spacing:0}.gv-zone{margin-bottom:4px}.gv-zone-current{border:1px solid var(--green);border-radius:10px;background:color-mix(in srgb,var(--green) 4%,transparent);padding:4px 0}.gv-zone-current .gv-week{border:none}.gv-week{border:1px solid var(--border);border-radius:10px;background:var(--card);margin-bottom:8px;overflow:hidden}.gv-zone-current>.gv-week{background:transparent;border:none;margin-bottom:0}.gv-week-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;cursor:pointer;user-select:none;font-size:13px;color:var(--text)}.gv-week-header:hover{background:var(--surface)}.gv-zone-current .gv-week-header:hover{background:transparent}.gv-week-header.collapsed{color:var(--muted)}.gv-week-header.open{border-bottom:1px solid var(--border)}.gv-zone-current .gv-week-header.open{border-bottom-color:var(--green)}.gv-chevron{display:inline-block;width:14px;font-size:11px;color:var(--muted);transition:transform .12s}.gv-week-header.open .gv-chevron{transform:rotate(0)}.gv-week-header.collapsed .gv-chevron{transform:rotate(-90deg)}.gv-current-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);margin-right:6px;box-shadow:0 0 color-mix(in srgb,var(--green) 60%,transparent);animation:gv-pulse 2s infinite}@keyframes gv-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--green) 60%,transparent)}70%{box-shadow:0 0 0 6px transparent}to{box-shadow:0 0 0 0 transparent}}.gv-week-title{font-weight:600;white-space:nowrap}.gv-week-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.gv-week-count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:56px;text-align:right}@media(max-width:640px){.gv-week-header{flex-direction:column;align-items:stretch;gap:6px;padding:10px 12px}.gv-week-right{justify-content:flex-start;gap:6px}.gv-week-count{min-width:0;text-align:left}}.chip-week{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;border:1px solid var(--border)}.chip-all-done{color:var(--green);border-color:var(--green)}.chip-warn{color:var(--danger);border-color:var(--danger)}.chip-info{color:var(--blue);border-color:var(--blue)}.gv-week-header.open .chip-week{display:none}.gv-week .games-tbl{border:none;border-radius:0;table-layout:fixed}.gv-week-tbl td,.gv-week-tbl th{overflow:hidden;text-overflow:ellipsis}.gv-week-tbl td.games-tbl-bays{white-space:nowrap}.gv-col-bays{width:170px}.gv-col-teams{width:auto}.gv-col-date{width:90px}.gv-col-time{width:150px}.gv-col-field{width:160px}.gv-col-status{width:180px}@media(max-width:900px){.gv-col-bays{width:140px}.gv-col-field{width:130px}.gv-col-status{width:150px}}@media(max-width:640px){.games-tbl-field,.games-tbl-time{display:none}.games-tbl th:nth-child(4){display:none}.games-tbl th:nth-child(5){display:none}.gv-week .games-tbl{table-layout:auto;min-width:0;width:100%}.gv-col-bays{width:92px}.gv-col-teams{width:auto}.gv-col-date{width:56px}.gv-col-time,.gv-col-field{width:0}.gv-col-status{width:84px}.games-tbl{font-size:12px}.games-tbl td{padding:8px 5px;white-space:normal}.games-tbl th{padding:8px 5px}.games-tbl-bays{overflow:hidden;text-overflow:ellipsis;max-width:92px;white-space:nowrap}.gv-week-tbl td:nth-child(2){max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.games-tbl-sub-row td{white-space:normal;overflow:visible;text-overflow:clip}.games-sub-stack{padding-left:6px}.games-sub-line{gap:6px}}.label-narrow{display:none}@media(max-width:640px){.label-wide{display:none}.label-narrow{display:inline}}@media(max-width:640px){.mobile-hide{display:none!important}.day-view-header .week-nav{gap:6px}.schedule-filters{display:block;padding:6px 8px}.schedule-filters-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:border-color .12s,background .12s}.schedule-filters-toggle:hover{border-color:var(--blue)}.schedule-filters-toggle.has-active{border-color:var(--blue);color:var(--blue)}.schedule-filters-toggle-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--blue);color:#fff;font-size:11px;font-weight:700}.schedule-filters-toggle-chevron{font-size:11px;color:var(--muted);margin-left:2px;transition:transform .15s}.schedule-filters.is-open .schedule-filters-toggle-chevron{transform:rotate(180deg)}.schedule-filters-chips{display:none;flex-direction:column;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.schedule-filters.is-open .schedule-filters-chips{display:flex}.schedule-filters-chips .filter-group{flex-wrap:wrap}.schedule-filters-chips .filter-divider{display:none}.schedule-filters-chips .filter-group-right{margin-left:0}.games-filters .schedule-filters-chips{display:none}.games-filters.is-open .schedule-filters-chips{display:flex}.games-filters-row{flex-direction:column;align-items:stretch}.games-filters-row .filter-group{flex-wrap:wrap}.app-layout{min-height:0}.app-main{flex:0 0 auto;overflow:visible;padding-bottom:16px}body{min-height:0}}.conflict-cards-list{display:flex;flex-direction:column;gap:12px;margin-top:10px}.conflict-card{background:var(--card);border:1px solid var(--border);border-radius:8px;overflow:hidden}.conflict-card-header{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;color:var(--danger, #ef4444);background:color-mix(in srgb,var(--danger, #ef4444) 5%,transparent);border-bottom:1px solid var(--border)}.conflict-card-games{display:grid;grid-template-columns:1fr 1fr}.conflict-card-game{padding:10px 14px}.conflict-card-game+.conflict-card-game{border-left:1px solid var(--border)}.conflict-card-team{font-weight:600;font-size:13px;margin-top:2px}.conflict-card-time{font-size:12px;color:var(--muted);margin-top:2px}.conflict-card-actions{display:flex;gap:6px;padding:8px 14px;border-top:1px solid var(--border)}.practice-conflicts-alert{background:color-mix(in srgb,var(--amber, #f59e0b) 8%,transparent);border:1.5px solid color-mix(in srgb,var(--amber, #f59e0b) 30%,transparent);border-radius:10px;padding:14px 16px;margin-bottom:12px}.practice-conflicts-alert .games-section-header h3{color:var(--amber, #f59e0b)}.practice-conflict-header{color:var(--amber, #f59e0b)!important;background:color-mix(in srgb,var(--amber, #f59e0b) 5%,transparent)!important}.tentative-conflict-header{color:var(--muted)!important;background:color-mix(in srgb,var(--muted) 5%,transparent)!important}.conflict-card.tentative-conflict{border-style:dashed;opacity:.8}.btn-xs{padding:2px 8px;font-size:11px;border-radius:4px}@media(max-width:600px){.conflict-card-games{grid-template-columns:1fr}.conflict-card-game+.conflict-card-game{border-left:none;border-top:1px solid var(--border)}}.conflict-banner{margin-bottom:16px}.conflict-banner-summary{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;border-radius:var(--radius);background:color-mix(in srgb,var(--danger, #ef4444) 8%,transparent);cursor:pointer;font-size:13px;font-weight:600;color:var(--danger, #ef4444);transition:background .12s}.conflict-banner-summary:hover{background:color-mix(in srgb,var(--danger, #ef4444) 12%,transparent)}.banner-chevron{margin-left:auto;transition:transform .2s}.banner-chevron svg{width:14px;height:14px}.banner-chevron-collapsed{transform:rotate(-90deg)}.conflict-banner-content{margin-top:12px}.conflict-banner-content.collapsed{display:none}.games-tab-bar{display:flex;border-bottom:2px solid var(--border)}.games-tab{display:flex;align-items:center;gap:4px;padding:10px 20px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .12s,border-color .12s}.games-tab:hover:not(.active){color:var(--text)}.games-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.games-tab-count{font-size:11px;font-weight:600;color:var(--muted)}.games-tab.active .games-tab-count{color:var(--blue)}.games-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:10px;padding:0 5px;font-size:11px;font-weight:700;background:var(--amber);color:#fff}.modal:has(>.game-modal){max-width:720px}.game-modal-body{padding:20px}.game-schedule-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px;margin-top:4px}.game-schedule-title{font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.05em;margin-bottom:10px;color:var(--muted)}.game-compare{display:flex;align-items:stretch;margin-top:4px}.game-compare-col{flex:1;padding:14px;border-radius:8px}.game-compare-col.original{background:var(--surface);border:1px solid var(--border);border-radius:8px 0 0 8px}.game-compare-col.requested{background:color-mix(in srgb,var(--blue) 6%,var(--card));border:1px solid color-mix(in srgb,var(--blue) 25%,var(--border));border-radius:0 8px 8px 0}[data-theme=dark] .game-compare-col.requested{background:color-mix(in srgb,var(--blue) 8%,var(--card))}.game-compare-col-title{font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:.05em;margin-bottom:10px}.game-compare-col.original .game-compare-col-title{color:var(--muted)}.game-compare-col.requested .game-compare-col-title{color:var(--blue)}.game-compare-arrow{display:flex;align-items:center;justify-content:center;width:36px;flex-shrink:0;color:var(--muted);background:linear-gradient(to right,var(--surface),color-mix(in srgb,var(--blue) 6%,var(--card)))}[data-theme=dark] .game-compare-arrow{background:linear-gradient(to right,var(--surface),color-mix(in srgb,var(--blue) 8%,var(--card)))}.game-compare-arrow svg{width:20px;height:20px}.game-detail-row{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13px}.game-detail-row .icon{color:var(--muted)}.game-detail-row .icon svg{width:15px;height:15px}.away-game-body{padding:16px 20px}.away-game-headline{display:flex;align-items:center;gap:8px;margin-bottom:4px}.away-game-tag{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:4px;background:color-mix(in srgb,var(--purple) 15%,transparent);color:var(--purple);border:1px dashed var(--purple)}.away-game-opponent{font-size:18px;font-weight:700;color:var(--text)}.away-game-team{font-size:12px;color:var(--muted);margin-bottom:12px}.away-game-rows{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:8px;padding:8px 12px;background:var(--surface)}.away-game-rows .game-detail-row{padding:6px 0}.away-game-note{margin:14px 0 0;font-size:12px;color:var(--muted);line-height:1.5}.game-modal-conflicts{display:flex;flex-direction:column;gap:6px;margin-top:16px}.game-modal-conflict{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--danger);padding:8px 10px;border-radius:6px;background:color-mix(in srgb,var(--danger) 8%,transparent)}.game-modal-conflict.practice{color:var(--amber);background:color-mix(in srgb,var(--amber) 8%,transparent)}.game-modal-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:16px 20px;margin:0 -20px -20px;border-top:1px solid var(--border)}.game-modal-actions .btn-spacer{flex:1;min-width:16px}@media(max-width:767px){.game-compare{flex-direction:column}.game-compare-col.original{border-radius:8px 8px 0 0}.game-compare-col.requested{border-radius:0 0 8px 8px}.game-compare-arrow{width:100%;height:28px;background:linear-gradient(to bottom,var(--surface),color-mix(in srgb,var(--blue) 6%,var(--card)))}.game-compare-arrow svg{transform:rotate(90deg)}}.cancel-result-box{padding:12px 16px;border-radius:var(--radius);font-size:13px;font-weight:500;line-height:1.4}.fee-met{background:var(--green-lt);color:var(--green)}.fee-missed{background:var(--danger-lt);color:var(--danger)}.bays-notice{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:var(--radius);background:var(--blue-lt);color:var(--blue);font-size:12px;line-height:1.4;margin-bottom:12px}.bays-notice .icon{flex-shrink:0;margin-top:1px}.beta-badge{display:inline-flex;align-items:center;padding:3px 7px;border-radius:10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:var(--amber-lt);color:var(--amber);vertical-align:middle}.app-title .beta-badge{background:#ffffff40;color:#fff}.login-logo .beta-badge{background:var(--amber-lt);color:var(--amber);font-size:11px}a.app-title{color:#fff;text-decoration:none;display:flex;align-items:center;gap:8px}a.app-title:hover{opacity:.9}button.beta-badge--clickable{border:none;cursor:pointer;position:relative;display:inline-flex;align-items:center;gap:3px;transition:background .15s,transform .15s;background:#ffffff40;color:#fff;padding:3px 7px;border-radius:10px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;vertical-align:middle;line-height:1}button.beta-badge--clickable:hover{background:#fff6;transform:scale(1.05)}button.beta-badge--clickable:active{transform:scale(.97)}button.beta-badge--clickable .fb-icon{display:flex}button.beta-badge--clickable .fb-icon svg{width:11px;height:11px}.fb-tooltip{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e293b;color:#fff;font-size:11px;font-weight:500;padding:4px 10px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .25s;text-transform:none;letter-spacing:normal;z-index:3000}.fb-tooltip:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-bottom-color:#1e293b}.fb-tooltip--show{opacity:1}.fb-context{font-size:12px;color:var(--muted);margin-bottom:12px}.fb-pills{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.fb-pill{border:1.5px solid var(--border);background:var(--card);color:var(--text);padding:5px 14px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.fb-pill:hover{border-color:var(--blue);color:var(--blue)}.fb-pill--active{background:var(--blue);color:#fff;border-color:var(--blue)}.fb-textarea{width:100%;min-height:120px;border:1.5px solid var(--border);border-radius:8px;padding:10px 12px;font-size:14px;font-family:inherit;resize:vertical;box-sizing:border-box}.fb-textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #1e40af1a}.settings-layout{display:flex;gap:32px;align-items:flex-start}.settings-nav{flex-shrink:0;width:172px}.settings-nav-item{display:block;width:100%;padding:8px 12px;margin-bottom:2px;text-align:left;font-size:13px;font-weight:500;color:var(--text);background:transparent;border:none;border-radius:var(--radius);cursor:pointer;transition:background .12s,color .12s}.settings-nav-item:hover:not(.active){background:var(--surface)}.settings-nav-item.active{background:var(--blue-lt);color:var(--blue);font-weight:600}.settings-content{flex:1;min-width:0;max-width:960px;margin:0 auto}.settings-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.settings-section-header{padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--border);font-size:13px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:8px}.settings-section-body{padding:16px 20px}.theme-options{display:flex;gap:6px}.theme-option{flex:1;padding:8px 14px;border-radius:var(--radius);font-size:13px;font-weight:500;cursor:pointer;border:2px solid var(--border);background:var(--card);color:var(--text);transition:border-color .15s,background .15s}.theme-option:hover{border-color:var(--blue)}.theme-option.active{border-color:var(--blue);background:var(--blue-lt);color:var(--blue);font-weight:600}.notif-presets{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 4px}.notif-preset{flex:1;min-width:150px;text-align:left;cursor:pointer;border:2px solid var(--border);border-radius:var(--radius);background:var(--card);padding:11px 13px;transition:border-color .12s}.notif-preset:hover{border-color:var(--blue)}.notif-preset.active{border-color:var(--blue);background:var(--blue-lt)}.notif-preset-name{font-weight:700;font-size:13px;color:var(--text)}.notif-preset.active .notif-preset-name{color:var(--blue)}.notif-preset-desc{font-size:11px;color:var(--muted);margin-top:2px}.notif-custom-chip{display:inline-block;margin-top:8px;padding:3px 9px;font-size:11px;font-weight:600;border-radius:999px;background:var(--surface);color:var(--muted)}.notif-custom-chip.active{background:var(--blue-lt);color:var(--blue)}.notif-acc-headrow{display:flex;align-items:center;font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;padding:14px 0 6px}.notif-acc-headrow .notif-acc-spacer{flex:1}.notif-acc-headrow .notif-acc-col{width:64px;text-align:center}.notif-cat{border-top:1px solid var(--border)}.notif-cat-head{display:flex;align-items:center}.notif-cat-toggle{flex:1;display:flex;align-items:center;gap:8px;padding:11px 0;background:transparent;border:none;cursor:pointer;font-size:13px;font-weight:600;color:var(--text);text-align:left}.notif-cat-chevron{transition:transform .15s;display:inline-block;width:12px}.notif-cat.open .notif-cat-chevron{transform:rotate(90deg)}.notif-cat-count{color:var(--muted);font-weight:400}.notif-cat-master{width:64px;display:flex;justify-content:center}.notif-cat-master input{width:16px;height:16px;cursor:pointer}.notif-cat-body{display:none;padding:0 0 8px 26px}.notif-cat.open .notif-cat-body{display:block}.notif-type-row{display:flex;align-items:center;padding:6px 8px;margin:0 -8px;font-size:12px;color:var(--text);border-radius:6px;transition:background .1s}.notif-type-row:hover{background:var(--surface)}.notif-type-label{flex:1}.notif-type-cb{width:64px;display:flex;justify-content:center}.notif-type-cb input{width:15px;height:15px;cursor:pointer}.settings-ttl-section .settings-section-header{font-size:15px}.settings-ttl-help{color:var(--muted);font-size:13px;margin-bottom:14px}.settings-radio{display:flex;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px;cursor:pointer;background:var(--card);align-items:flex-start}.settings-radio:has(input:checked){border-color:var(--blue);background:var(--blue-lt)}.settings-radio input[type=radio]{margin-top:2px;flex-shrink:0;cursor:pointer}.settings-radio-label{font-weight:600;font-size:13px;color:var(--text)}.settings-radio-help{font-size:11px;color:var(--muted);margin-top:2px}.settings-ttl-status{font-size:12px;color:var(--muted);margin-top:6px;min-height:1em}@media(max-width:600px){.settings-layout{flex-direction:column;align-items:stretch}.settings-content{width:100%}.settings-nav{width:100%;display:flex;flex-wrap:nowrap;gap:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.settings-nav::-webkit-scrollbar{display:none}.settings-nav-item{flex:0 0 auto;width:auto;min-width:max-content;margin-bottom:0;border-radius:0;padding:10px 14px;text-align:center;border-bottom:2px solid transparent}.settings-nav-item.active{background:transparent;border-bottom-color:var(--blue)}}.role-request-form-row{display:flex;gap:8px;align-items:center}@media(max-width:600px){.role-request-form-row{flex-direction:column;align-items:stretch}.role-request-form-row .btn{width:100%;justify-content:center}}.maint-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}@media(max-width:600px){.maint-form-grid{grid-template-columns:1fr}}.role-chip-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.role-chip{padding:3px 12px;border-radius:10px;font-size:12px;font-weight:600;background:var(--blue-lt);color:var(--blue)}.team-name-link{font-weight:600;color:var(--blue);text-decoration:none}.team-name-link:hover{text-decoration:underline}.team-name-preview{padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:15px;font-weight:700;color:var(--text);min-height:38px;display:flex;align-items:center}.team-name-preview.placeholder{color:var(--muted);font-weight:400;font-size:13px}.td-coaches{vertical-align:top}.td-coaches-empty{color:var(--muted)}.coach-chip{display:flex;align-items:center;gap:5px;padding:2px 0;white-space:nowrap}.coach-chip-link{font-size:13px;color:var(--blue);text-decoration:none;padding:1px 8px;border-radius:10px;border:1px solid var(--blue);transition:background .15s,color .15s}.coach-chip-link:hover{background:var(--blue);color:#fff}.coach-role-badge{display:inline-flex;align-items:center;padding:1px 6px;border-radius:10px;font-size:11px;font-weight:600}.coach-role-badge-head_coach{background:var(--blue-lt);color:var(--blue)}.coach-role-badge-assistant{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.coach-role-badge-team_manager{background:var(--purple-lt);color:var(--purple)}.coach-role-badge-scheduling_contact{background:var(--green-lt);color:var(--green)}.coaches-section{margin-bottom:20px}.coaches-divider{border:none;border-top:1px solid var(--border);margin:16px 0 12px}.coach-section-header{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.coach-list{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.coach-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap}.coach-name{font-weight:600;font-size:13px;flex:1;min-width:100px}.coach-name-link{color:var(--blue);text-decoration:none}.coach-name-link:hover{text-decoration:underline}.coach-row-controls{display:inline-flex;gap:6px}.coach-role-label{font-size:12px;color:var(--muted)}.coach-sched-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;background:var(--blue-lt);color:var(--blue)}.coach-edit-form{flex-basis:100%;margin-top:6px}.coach-edit-form.hidden{display:none}.coach-edit-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.coach-edit-row select{flex:1;min-width:120px}.coach-section-actions{display:flex;gap:8px;margin-top:4px;flex-wrap:wrap}.coach-add-form{margin-top:10px}.coach-add-form.hidden{display:none}.coach-add-row{display:flex;gap:6px;align-items:stretch;flex-wrap:wrap}.coach-add-row select{flex:1;min-width:140px}.coach-add-row .btn{white-space:nowrap}.sc-picker-note{font-size:13px;margin-bottom:14px;line-height:1.45}.sc-picker-list{display:flex;flex-direction:column;gap:4px}.sc-picker-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font-size:13px;background:var(--surface);transition:border-color .15s}.sc-picker-row:hover{border-color:var(--blue)}.sc-picker-row input[type=radio]{width:auto;margin:0;cursor:pointer;accent-color:var(--blue)}.sc-picker-name{font-weight:600;flex:1}.sc-picker-role{color:var(--muted);font-size:12px}.sc-picker-current{border-color:var(--blue-lt);background:color-mix(in srgb,var(--blue-lt) 30%,var(--surface))}.sc-picker-current-tag{font-size:10px;font-weight:600;text-transform:uppercase;color:var(--blue);background:var(--blue-lt);padding:1px 6px;border-radius:8px}.sc-request-section{margin-top:2px}.sc-info-label{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius);background:color-mix(in srgb,var(--blue-lt) 40%,var(--surface));font-size:13px;line-height:1.4}.sc-info-icon{font-size:16px;flex-shrink:0}.sc-current-note{font-size:13px;color:var(--fg);margin-bottom:6px;line-height:1.4}.sc-request-check{display:flex;align-items:center;cursor:pointer;font-size:13px;margin:0}.sc-request-check input[type=checkbox]{width:auto;margin:0;cursor:pointer}.sc-explain{font-size:12px;margin-top:8px;line-height:1.4}.settings-field-row{display:flex;align-items:center;gap:10px}.settings-field-row input[type=tel],.settings-field-row input[type=email]{flex:1;min-width:0}.settings-contact-note{font-size:12px;color:var(--muted);margin:4px 0 8px}.about-page{max-width:1060px;margin:0 auto;padding-top:24px}.about-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 1px 3px #0000000a}.about-card-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.about-card-left{display:flex;align-items:center;gap:14px}.about-card-logo{border-radius:10px}.about-card-name{font-size:18px;font-weight:700}.about-card-version{font-size:13px;color:var(--muted);margin-top:2px}.about-card-right{text-align:right}.about-card-author{font-size:13px;font-weight:600}.about-card-email{display:block;font-size:12px;color:var(--blue);text-decoration:none;margin-top:2px}.about-card-email:hover{text-decoration:underline}.about-card-footer{margin-top:16px;padding-top:14px;border-top:1px solid var(--border);font-size:11px;color:var(--muted);line-height:1.5;text-align:center}.about-section-title{font-size:15px;font-weight:700;margin-bottom:16px}.about-whats-new{margin-bottom:24px}.about-show-older{background:none;border:none;color:var(--muted);font-size:13px;cursor:pointer;padding:8px 0;display:block;width:100%;text-align:center}.about-show-older:hover{color:var(--blue)}.whats-new-release{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px;box-shadow:0 1px 3px #0000000a}.whats-new-release:last-child{margin-bottom:0}.whats-new-header{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.whats-new-version{font-size:15px;font-weight:700}.whats-new-date{font-size:12px;color:var(--muted)}.whats-new-section{margin-bottom:12px}.whats-new-section:last-child{margin-bottom:0}.whats-new-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;display:flex;align-items:center;gap:4px}.whats-new-section-icon{font-weight:700;font-size:12px}.whats-new-label-new{color:var(--blue)}.whats-new-label-improved{color:var(--green, #10b981)}.whats-new-label-fixed{color:var(--muted)}.whats-new-notes{list-style:none;padding:0;margin:0}.whats-new-notes li{font-size:13px;line-height:1.5;padding:3px 0 3px 16px;position:relative}.whats-new-notes li:before{content:"\2022";position:absolute;left:0;color:var(--border-dark, #999);font-size:10px;top:5px}.whats-new-label-new+.whats-new-notes li:before{color:var(--blue)}.whats-new-label-improved+.whats-new-notes li:before{color:var(--green, #10b981)}.whats-new-latest .whats-new-version{color:var(--blue)}.role-request-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--border)}.role-request-row:last-child{border-bottom:none}.role-request-role{font-size:13px;font-weight:600;flex:1}.role-request-status{font-size:11px;font-weight:600;text-transform:uppercase;padding:2px 8px;border-radius:8px}.role-request-status.status-pending{background:var(--amber-lt);color:var(--amber)}.role-request-status.status-approved{background:var(--green-lt, #ecfdf5);color:var(--green, #10b981)}.role-request-status.status-rejected{background:var(--red-lt, #fef2f2);color:var(--red, #ef4444)}.role-request-note{font-size:12px;color:var(--muted);width:100%;font-style:italic}.settings-autosave-status{font-size:12px;color:var(--green);opacity:0;transition:opacity .3s;white-space:nowrap}.settings-autosave-status.visible{opacity:1}.settings-autosave-status.error{color:var(--red)}.toggle-switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:0;font-weight:400;font-size:13px;color:var(--muted);white-space:nowrap;user-select:none}.toggle-switch input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.toggle-track{position:relative;width:36px;height:20px;flex-shrink:0;background:var(--border);border-radius:10px;transition:background .2s}.toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--card);border-radius:50%;box-shadow:0 1px 3px #0003;transition:transform .2s}.toggle-switch input:checked+.toggle-track{background:var(--blue)}.toggle-switch input:checked+.toggle-track:after{transform:translate(16px)}.email-change-pending{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:10px;padding:8px 12px;background:var(--yellow-bg, #fef9c3);border:1px solid var(--yellow-border, #fde047);border-radius:6px;font-size:13px;color:var(--fg)}.confirm-email-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}.confirm-email-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:32px 40px;max-width:420px;width:100%;text-align:center}.confirm-email-title{font-size:20px;font-weight:600;color:var(--fg);margin-bottom:12px}.entry-contact{font-size:12px;color:var(--muted);margin-top:4px}.entry-contact-label{display:block}.entry-contact-details{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}.entry-contact a{color:var(--blue);text-decoration:none}.entry-contact a:hover{text-decoration:underline}.coach-home{padding:20px 32px;max-width:1440px;margin:0 auto}.coach-home-row{display:flex;flex-direction:row;gap:20px;align-items:flex-start}.coach-home-sidebar{width:210px;flex-shrink:0;position:sticky;top:calc(var(--header-h) + 20px)}.coach-home-main{flex:1;min-width:0}.coach-home-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin-bottom:16px}.coach-home-section h2{font-size:14px;font-weight:600;margin-bottom:10px;color:var(--text)}.coach-home-section .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.coach-home-section .section-header h2{margin-bottom:0;display:flex;align-items:center;gap:.4em}.coach-home-section .section-header h2 .icon svg{width:18px;height:18px;opacity:.65}.coach-home-empty{font-size:13px;color:var(--muted)}.off-season-banner{display:flex;align-items:center;gap:8px;background:var(--amber-lt);border:1px solid #f59e0b;border-radius:var(--radius);padding:10px 16px;margin-bottom:16px;font-size:13px;color:var(--amber);width:100%}.off-season-banner .icon svg{width:16px;height:16px;flex-shrink:0}@media(max-width:640px){.coach-home-row{flex-direction:column;gap:0}.coach-home-sidebar{width:100%;position:static}}.coach-cmd-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.coach-cmd-title{font-size:20px;font-weight:700;color:var(--text);margin:0}.coach-cmd-actions{display:flex;align-items:center;gap:8px}.coach-cmd-actions .btn{white-space:nowrap}.coach-cmd-actions .btn .icon{margin-right:2px}.coach-cmd-actions .btn .icon svg{width:14px;height:14px}.coach-cmd-actions .btn-lbl-short{display:none}.coach-action-report{color:var(--amber);border-color:var(--amber)}.coach-action-report .icon svg{color:var(--amber)}.coach-action-report:hover{background:#d9770614}.coach-team-cards{margin-bottom:14px}.coach-team-cards .coach-team-card-pill{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:1px 7px;flex-shrink:0;background:var(--card)}.coach-team-card-clickable{cursor:pointer;transition:background .12s}.coach-team-card-clickable:hover{background:color-mix(in srgb,var(--team-color, var(--blue)) 8%,var(--card))}[data-theme=dark] .coach-team-card-clickable:hover{background:color-mix(in srgb,var(--team-color, var(--blue)) 14%,var(--card))}.coach-solo-card{container-type:inline-size;width:100%;border:1px solid color-mix(in srgb,var(--team-color, var(--blue)) 35%,var(--border));border-radius:14px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--team-color, var(--blue)) 8%,var(--card)),var(--card) 100%)}[data-theme=dark] .coach-solo-card{border-color:color-mix(in srgb,var(--team-color, var(--blue)) 45%,var(--border));background:linear-gradient(180deg,color-mix(in srgb,var(--team-color, var(--blue)) 12%,var(--card)),var(--card) 100%)}.coach-solo-tabs{display:flex;gap:4px;padding-left:6px;margin-bottom:-1px;overflow-x:auto;position:relative;z-index:1;scrollbar-width:none}.coach-solo-tabs::-webkit-scrollbar{display:none}.coach-solo-tab{flex-shrink:0;display:flex;align-items:center;gap:7px;padding:8px 14px 9px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;border:1px solid transparent;border-bottom:none;border-radius:9px 9px 0 0}.coach-solo-tab:hover{color:var(--text)}.coach-solo-tab-dot{width:7px;height:7px;border-radius:50%;background:var(--team-color, var(--blue));opacity:.5;flex-shrink:0}.coach-solo-tab-name{overflow:hidden;text-overflow:ellipsis}.coach-solo-tab-next{font-size:11px;color:var(--muted);font-weight:500}.coach-solo-tab.active{color:var(--text);background:color-mix(in srgb,var(--team-color, var(--blue)) 14%,var(--card));border-color:color-mix(in srgb,var(--team-color, var(--blue)) 45%,var(--border));border-bottom-color:color-mix(in srgb,var(--team-color, var(--blue)) 14%,var(--card))}[data-theme=dark] .coach-solo-tab.active{background:color-mix(in srgb,var(--team-color, var(--blue)) 22%,var(--card));border-color:color-mix(in srgb,var(--team-color, var(--blue)) 50%,var(--border));border-bottom-color:color-mix(in srgb,var(--team-color, var(--blue)) 22%,var(--card))}.coach-solo-tab.active .coach-solo-tab-dot{opacity:1}.coach-solo-card.has-tabs{border-top-left-radius:0}.coach-solo-hdr{display:flex;align-items:center;gap:10px;padding:10px 16px;background:color-mix(in srgb,var(--team-color, var(--blue)) 22%,var(--card));border-bottom:1px solid color-mix(in srgb,var(--team-color, var(--blue)) 40%,var(--border))}[data-theme=dark] .coach-solo-hdr{background:color-mix(in srgb,var(--team-color, var(--blue)) 30%,var(--card))}.coach-solo-dot{width:8px;height:8px;border-radius:50%;background:var(--team-color, var(--blue));flex-shrink:0}.coach-solo-name{flex:1;min-width:0;font-size:15px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coach-solo-sc{margin-left:8px;font-size:11px;color:var(--muted);flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coach-solo-sc.coach-solo-sc-grow{margin-left:auto}.coach-solo-body{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.coach-solo-pane{padding:18px 22px;display:flex;flex-direction:column}.coach-solo-pane-bottom{margin-top:auto}.coach-solo-pane+.coach-solo-pane{border-left:1px solid var(--border)}@container (max-width: 760px){.coach-solo-body{grid-template-columns:1fr}.coach-solo-pane+.coach-solo-pane{border-left:none;border-top:1px solid var(--border)}}.coach-solo-kicker{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.coach-solo-kicker .coach-solo-kicker-label{display:inline-flex;align-items:center;gap:4px}.coach-solo-kicker .coach-solo-kicker-date{margin-left:auto;color:var(--muted);font-weight:600}.coach-solo-kicker-practice{color:#2d61c2}.coach-solo-kicker-game{color:#137240}[data-theme=dark] .coach-solo-kicker-practice{color:#93c5fd}[data-theme=dark] .coach-solo-kicker-game{color:#6ee7b7}.coach-solo-when{font-size:30px;font-weight:800;line-height:1.05;margin-bottom:8px}.coach-solo-when.today{color:var(--green)}.coach-solo-when.tomorrow{color:var(--blue)}.coach-solo-when.future{color:var(--text)}.coach-solo-when .when-small{font-size:14px;color:var(--muted);font-weight:600}.coach-solo-time{font-size:18px;font-weight:600;color:var(--text);margin-bottom:6px}.coach-solo-opp{font-size:17px;font-weight:700;color:var(--text);margin-bottom:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.coach-solo-home-pill,.coach-solo-away-pill{padding:2px 7px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.coach-solo-home-pill{background:#3b82f62e;color:var(--blue)}.coach-solo-away-pill{background:#f59e0b2e;color:var(--amber)}[data-theme=dark] .coach-solo-home-pill{background:#3b82f638;color:#bfdbfe}[data-theme=dark] .coach-solo-away-pill{background:#f59e0b38;color:#fcd34d}.coach-solo-bays{font-size:11px;color:var(--muted);margin-bottom:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.coach-solo-facts{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0;padding:10px 12px;background:#ffffff08;border-radius:8px;font-size:12px}[data-theme=dark] .coach-solo-facts{background:#ffffff0a}.coach-solo-fact{display:flex;align-items:center;gap:6px;color:var(--text)}.coach-solo-fact-lbl{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:11px}.coach-solo-fact-lbl svg{width:13px;height:13px}.coach-solo-fact-refs-pending{color:var(--amber);font-weight:600}.coach-solo-fact-light-good{color:var(--green);font-weight:600}.coach-solo-fact-light-tight{color:var(--amber);font-weight:600}.coach-solo-wx{display:flex;gap:14px;align-items:stretch;padding:10px 12px;background:#ffffff08;border-radius:8px}[data-theme=dark] .coach-solo-wx{background:#ffffff0a}.coach-solo-wx-now{display:flex;align-items:center;gap:10px;flex-shrink:0}.coach-solo-wx-now-icon svg{width:38px;height:38px}.coach-solo-wx-now-temp{font-size:22px;font-weight:800;line-height:1}.coach-solo-wx-now-cond{font-size:11px;color:var(--muted)}.coach-solo-wx-hourly{flex:1;display:flex;gap:0;align-items:flex-end;min-width:0;border-left:1px solid var(--border);padding-left:14px}.coach-solo-wx-hour{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 2px}.coach-solo-wx-hour-time{font-size:10px;color:var(--muted)}.coach-solo-wx-hour-icon svg{width:18px;height:18px}.coach-solo-wx-hour-temp{font-size:12px;font-weight:700;color:var(--text)}.coach-solo-wx-hour.in-window{background:color-mix(in srgb,var(--team-color, var(--blue)) 12%,transparent);border-radius:4px}@container (max-width: 500px){.coach-solo-sc,.coach-solo-card .coach-team-card-pill-wide{display:none}}.coach-solo-empty{font-size:13px;color:var(--muted);font-style:italic;padding:12px 0}.coach-stats-section{margin-bottom:16px}.coach-stats-section .coach-stats-hero{margin-bottom:0}.coach-stats-strip{display:none;gap:6px;margin-bottom:8px}.coach-stats-strip .stats-chip{flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:3px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;cursor:pointer;text-align:left;font-family:inherit;border-left:3px solid var(--blue)}.coach-stats-strip .stats-chip:hover{background:var(--surface)}.coach-stats-strip .stats-chip-amber{border-left-color:var(--amber)}.coach-stats-strip .stats-chip-green{border-left-color:var(--green)}.coach-stats-strip .chip-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coach-stats-strip .chip-value{font-size:14px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.coach-stats-strip .chip-bar{display:block;height:3px;background:var(--surface);border-radius:2px;overflow:hidden}.coach-stats-strip .chip-bar i{display:block;height:100%;background:var(--blue)}.coach-stats-strip .stats-chip-amber .chip-bar i{background:var(--amber)}.coach-stats-strip .stats-chip-green .chip-bar i{background:var(--green)}.coach-stats-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:16px}.coach-stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;border-left:3px solid var(--blue)}.coach-stat-card-progress{border-left-color:var(--blue)}.coach-stat-card-activity{border-left-color:var(--green)}.coach-stat-amber{border-left-color:var(--amber)}.coach-stat-game{border-left-color:var(--green)}.coach-stat-today{border-left-color:var(--danger)}.coach-stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);display:flex;align-items:center;gap:4px;margin-bottom:6px}.coach-stat-bays-row{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.coach-stat-bays-row .coach-stat-label .icon svg{color:var(--amber)}.coach-stat-label .icon svg{width:13px;height:13px}.coach-stat-value{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px}.coach-stat-progress{height:4px;background:var(--surface);border-radius:2px;margin-bottom:6px;overflow:hidden}.coach-stat-bar{height:100%;background:var(--blue);border-radius:2px;transition:width .3s ease}.coach-stat-bar-amber{background:var(--amber)}.coach-stat-sub{font-size:11px;color:var(--muted)}.coach-stat-team-label{font-size:11px;color:var(--blue);margin-top:2px}.coach-stat-tallies{display:flex;gap:20px}.coach-tally{text-align:center}.coach-tally-num{font-size:22px;font-weight:700;color:var(--text);line-height:1.2}.coach-tally-cancel{color:var(--danger)}.coach-tally-lbl{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px}.coach-tally-detail{font-size:9px;color:var(--muted);margin-top:1px}.coach-game-breakdown{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.coach-game-split{font-size:11px;color:var(--text);font-weight:600;margin-bottom:6px}.coach-game-progress{margin-bottom:4px}.coach-game-bar-label{font-size:10px;color:var(--muted);margin-top:3px}.coach-stat-bar-green{background:var(--green)}.coach-game-status{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:4px}.coach-game-has-pending{color:var(--amber)}.coach-game-status .icon svg{width:11px;height:11px}.coach-alert-banner{display:flex;align-items:center;gap:8px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.4);border-radius:var(--radius);padding:10px 16px;margin-bottom:16px;font-size:13px;color:var(--text)}[data-theme=dark] .coach-alert-banner{background:#f59e0b29;border-color:#f59e0b80}.coach-alert-banner .icon svg{width:16px;height:16px;flex-shrink:0;color:#d97706}[data-theme=dark] .coach-alert-banner .icon svg{color:#fbbf24}.coach-alert-msg{flex:1;color:var(--text)}.coach-alert-review{background:#92400e;color:#fff;border-color:var(--amber);white-space:nowrap}.coach-alert-review:hover:not(:disabled){background:#78350f}.coach-cal{margin-bottom:16px}.coach-cal-desktop{display:block}.coach-mobile-list{display:none}.coach-cal-week{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.coach-cal-wh{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--border);gap:12px}.coach-cal-wt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--text)}.coach-cal-wh-right{display:flex;align-items:center;gap:14px}.coach-cal-wr{font-size:11px;color:var(--muted)}.week-count-toggle{display:inline-flex;background:var(--card);border:1px solid var(--border);border-radius:6px;overflow:hidden}.week-count-btn{padding:3px 9px;background:transparent;border:none;border-right:1px solid var(--border);font-size:11px;font-weight:600;color:var(--muted);cursor:pointer;transition:background .1s,color .1s}.week-count-btn:last-child{border-right:none}.week-count-btn:hover:not(.active){color:var(--text);background:var(--surface)}.week-count-btn.active{background:var(--cyan);color:#fff}[data-theme=dark] .week-count-btn.active{color:#0a1416}.coach-cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.coach-cal-day{border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:130px}.coach-cal-day:last-child{border-right:none}.coach-cal-day.past{opacity:.55}.coach-cal-day.is-today{border:2px solid var(--cyan);border-radius:6px;box-shadow:0 0 0 1px color-mix(in srgb,var(--cyan) 25%,transparent),0 0 14px 2px color-mix(in srgb,var(--cyan) 45%,transparent);position:relative;z-index:1}.coach-cal-day.is-closed,.coach-cal-day.is-closed.is-today{background:repeating-linear-gradient(135deg,transparent,transparent 4px,var(--border) 4px,var(--border) 5px)}.coach-cal-closed{display:flex;align-items:center;justify-content:center;gap:3px;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--danger);padding:2px 4px}.coach-cal-closed .icon svg{width:10px;height:10px}.coach-cal-milestones{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;padding:0 2px 2px}.coach-cal-milestones .day-milestone{font-size:8px;padding:0 4px;line-height:1.5}.coach-cal-dh{display:flex;flex-direction:column;gap:5px;padding:7px 8px;min-height:58px;cursor:pointer;transition:background .1s;background:color-mix(in srgb,var(--surface) 55%,transparent);border-bottom:1px solid var(--border)}.coach-cal-dh:hover{background:var(--surface)}.coach-cal-day.is-today .coach-cal-dh{background:transparent}.coach-cal-dh-row1{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.coach-cal-dh-left{display:flex;align-items:baseline;gap:5px}.coach-cal-dh-row2{display:flex;justify-content:center}.coach-cal-dn{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.coach-cal-dd{font-size:22px;font-weight:700;color:var(--text);line-height:1;letter-spacing:-.3px}.coach-cal-day.is-today .coach-cal-dn,.coach-cal-day.is-today .coach-cal-dd{color:var(--cyan)}.coach-cal-day.is-today .coach-cal-dd{font-size:26px}.coach-cal-sunset{display:inline-flex;align-items:center;gap:3px;font-size:10px;color:var(--muted);white-space:nowrap;line-height:1}.coach-cal-sunset .icon svg{width:11px;height:11px;opacity:.75}.coach-cal-dh .weather-badge,.day-header .weather-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border:1px solid var(--border);border-radius:999px;background:transparent;font-size:11px;font-weight:600;text-decoration:none;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s,border-color .12s,color .12s,box-shadow .12s}.day-header .weather-badge{margin:2px 0}.coach-cal-dh .weather-badge .icon svg,.day-header .weather-badge .icon svg{width:16px;height:16px}.coach-cal-dh .weather-badge:hover,.day-header .weather-badge:hover{border-color:currentColor;box-shadow:0 0 0 1px color-mix(in srgb,currentColor 28%,transparent)}.coach-cal-dh .weather-warm:hover,.day-header .weather-warm:hover{background:var(--amber-lt)}.coach-cal-dh .weather-cool:hover,.day-header .weather-cool:hover{background:var(--blue-lt)}.coach-cal-dh .weather-gray:hover,.day-header .weather-gray:hover{background:var(--surface)}.coach-cal-dh .weather-danger:hover,.day-header .weather-danger:hover{background:var(--purple-lt)}[data-theme=dark] .coach-cal-dh .weather-warm:hover,[data-theme=dark] .day-header .weather-warm:hover{background:#fbbf2424}[data-theme=dark] .coach-cal-dh .weather-cool:hover,[data-theme=dark] .day-header .weather-cool:hover{background:#38bdf824}[data-theme=dark] .coach-cal-dh .weather-gray:hover,[data-theme=dark] .day-header .weather-gray:hover{background:#94a3b824}[data-theme=dark] .coach-cal-dh .weather-danger:hover,[data-theme=dark] .day-header .weather-danger:hover{background:#a78bfa24}.coach-cal-pills{display:flex;flex-direction:column;gap:4px;padding:6px}.coach-cal-empty{min-height:24px;flex:1}.coach-cal-addcta{margin:auto 6px 6px;padding:6px 8px;font-size:11px;color:var(--muted);background:transparent;border:1px dashed var(--border);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;gap:5px;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.coach-cal-addcta:hover{color:var(--cyan);border-color:var(--cyan);background:var(--cyan-lt)}.coach-cal-addcta .icon svg{width:11px;height:11px}.cal-pill{display:flex;flex-direction:column;gap:1px;padding:6px 9px;border-radius:6px;background:linear-gradient(180deg,#2d61c2,#234da3);color:#fff;border:1px solid rgba(0,0,0,.2);line-height:1.3;text-align:left;overflow:hidden}.cal-pill-adhoc{background:linear-gradient(180deg,#6b3fc8,#5832a4);box-shadow:0 1px 2px #5832a433}.cal-pill-away{opacity:.9;border-left:4px dashed rgba(255,255,255,.85);padding-left:6px}.cal-pill-game{background:linear-gradient(180deg,#1e9551,#137240);box-shadow:0 1px 2px #16653433}[data-theme=dark] .cal-pill-game{box-shadow:0 1px 4px #00000073}.cal-pill-game.cal-pill-x .cal-pill-tm{color:#ffffff8c}.cal-pill-kind{display:inline-flex;align-items:center;gap:4px}.cal-pill-kind .icon svg{width:11px;height:11px;opacity:.92;color:#fff}.cal-pill-time{font-weight:700;font-size:12px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-pill-info{font-size:12px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-pill-tm{font-size:11px;color:#ffffffc7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-pill-x{opacity:.65}.cal-pill-x .cal-pill-time,.cal-pill-x .cal-pill-info{text-decoration:line-through}.cal-pill-click{cursor:pointer;transition:filter .1s,transform .05s}.cal-pill-click:hover{filter:brightness(1.08)}.cal-pill-x.cal-pill-click{cursor:default;filter:none}.cal-pill-closed{opacity:.5;filter:grayscale(.4)}.coach-tabbed-section{margin-top:4px}.coach-recent-empty{text-align:center;padding:40px 16px}.coach-recent-activity,.coach-pattern-content{padding-top:8px}.coach-pattern-grid{display:grid;grid-template-columns:repeat(7,1fr);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.coach-pattern-day{border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:130px}.coach-pattern-day:last-child{border-right:none}.coach-pattern-day-hdr{padding:7px 8px;background:color-mix(in srgb,var(--surface) 55%,transparent);border-bottom:1px solid var(--border);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.coach-pattern-slots{display:flex;flex-direction:column;gap:4px;padding:6px}.coach-pattern-slot{display:flex;flex-direction:column;gap:1px;padding:6px 9px;border-radius:6px;background:color-mix(in srgb,var(--blue) 14%,var(--card));font-size:12px;line-height:1.3;cursor:pointer;transition:filter .1s;min-width:0}[data-theme=dark] .coach-pattern-slot{background:color-mix(in srgb,var(--blue) 22%,var(--card))}.coach-pattern-slot:hover{filter:brightness(1.08)}.coach-pattern-slot-time,.coach-pattern-slot-info,.coach-pattern-slot-team{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.coach-pattern-slot-time{font-weight:700;color:var(--text)}.coach-pattern-slot-info{color:var(--text)}.coach-pattern-slot-team{font-size:11px;color:var(--muted)}.coach-pattern-empty{text-align:center;padding:32px 16px;color:var(--muted);font-size:13px}@media(max-width:640px){.coach-pattern-grid{grid-template-columns:1fr}.coach-pattern-day{border-right:none;border-bottom:1px solid var(--border);min-height:0}.coach-pattern-day:last-child{border-bottom:none}.coach-pattern-day-empty{display:none}}.coach-pending-content{padding-top:8px}.report-issue-choice{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:2px;padding:12px 14px!important;text-align:left;white-space:normal}.report-issue-choice-title{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px}.report-issue-choice-title .icon{width:16px;height:16px;flex-shrink:0}.report-issue-choice-desc{font-size:12px;color:var(--muted);padding-left:22px;white-space:normal;line-height:1.4}.coach-onboarding{max-width:560px;margin:40px auto;text-align:center}.onboard-header{margin-bottom:32px}.onboard-icon .icon svg{width:48px;height:48px;color:var(--blue)}.onboard-header h1{font-size:22px;font-weight:700;margin-top:12px;margin-bottom:4px}.onboard-steps{text-align:left;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:24px}.onboard-step{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.onboard-step:last-child{border-bottom:none}.onboard-step-icon{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--muted)}.onboard-step-icon.onboard-step-done{background:var(--green);border-color:var(--green);color:#fff}.onboard-step-icon .icon svg{width:14px;height:14px}.onboard-step-content{flex:1;min-width:0}.onboard-step-label{font-size:14px;font-weight:600}.onboard-step-sub{font-size:12px;color:var(--muted);margin-top:1px}.onboard-step.done .onboard-step-label{color:var(--muted)}.onboard-footer{font-size:13px}.coach-tab-lbl-short{display:none}@media(max-width:640px){.app-main{padding:12px 8px}.coach-home{padding:0 4px}.coach-cmd-header{flex-wrap:wrap;gap:8px}.coach-cmd-actions{gap:6px;width:100%}.coach-cmd-actions .btn-sm{font-size:12px;padding:5px 10px}.coach-cmd-actions .btn-lbl-full{display:none}.coach-cmd-actions .btn-lbl-short{display:inline}.coach-cmd-actions .coach-action-primary{flex:1;min-width:0;justify-content:center}.coach-cmd-actions .coach-action-report{display:inline-flex;flex:1;min-width:0;justify-content:center}.coach-cmd .coach-stats-strip{display:flex}.coach-cmd .coach-stats-section .coach-stats-hero{display:none}.coach-cmd .coach-stats-section.expanded .coach-stats-hero{display:grid;grid-template-columns:1fr;gap:8px;margin-top:4px}.coach-cmd .coach-stat-value,.coach-cmd .coach-stat-bays-head{font-size:16px}.coach-cmd .coach-tally-num{font-size:18px}.coach-cal-desktop{display:none}.coach-mobile-list{display:block}.coach-tab-bar{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;-webkit-overflow-scrolling:touch}.coach-tab-bar::-webkit-scrollbar{display:none}.coach-tab{padding:10px 12px;font-size:13px;flex:0 0 auto;white-space:nowrap}.coach-tab-lbl-full{display:none}.coach-tab-lbl-short{display:inline}.practice-row{gap:8px;padding:10px 12px}.practice-date-col{width:46px}.practice-date-mon{display:none}}.div-page{padding:16px 24px;max-width:1400px;margin:0 auto}.div-page-hdr{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.div-page-title{font-size:22px;font-weight:700;color:var(--text);display:inline-flex;align-items:center;gap:.4em;margin:0}.div-page-title .icon svg{width:20px;height:20px;opacity:.65}.div-filters{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.div-fchips{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.div-fpicker{display:none}.div-fchip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--card);border:1px solid var(--border);font-size:12px;font-weight:500;color:var(--text);cursor:pointer;transition:background .12s,border-color .12s,color .12s}.div-fchip:hover{background:var(--surface)}.div-fchip.active{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:600}.div-fchip-cnt{font-size:11px;opacity:.85;background:var(--surface);color:var(--muted);padding:0 6px;border-radius:8px}.div-fchip.active .div-fchip-cnt{background:#ffffff38;color:#fff}.div-search{margin-left:auto;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:6px 12px;font-size:13px;color:var(--text);font-family:inherit;min-width:180px;max-width:260px}.div-search:focus{outline:none;border-color:var(--blue)}.div-tbl{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;table-layout:fixed}.div-tbl colgroup .col-team{width:26%}.div-tbl colgroup .col-coach{width:14%}.div-tbl colgroup .col-week{width:16%}.div-tbl colgroup .col-prac,.div-tbl colgroup .col-game{width:19%}.div-tbl colgroup .col-chev{width:6%}.div-tbl th{text-align:left;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:10px 12px;background:var(--surface);border-bottom:1px solid var(--border)}.div-tbl td{padding:11px 12px;border-bottom:1px solid var(--border);font-size:13px;color:var(--text);vertical-align:middle}.div-row{cursor:pointer}.div-row:hover>td{background:var(--surface)}.div-row.expanded>td{background:var(--surface);border-bottom:none}.div-row.expanded:hover>td{background:var(--surface)}.div-row.expanded>td.td-team{border-left:3px solid var(--blue-h)}.div-pane-row>td{padding:0;background:var(--surface);border-bottom:2px solid var(--border)}.td-team{display:flex;flex-direction:column;gap:2px}.div-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px}.div-dot.red{background:var(--danger)}.div-dot.green{background:var(--green)}.div-team-nm{font-weight:600;font-size:14px;color:var(--text)}.div-team-meta{font-size:11px;color:var(--muted);padding-left:16px}.div-coach-line{font-size:12px;color:var(--text)}.div-no-coach{font-size:12px;font-style:italic;color:var(--danger)}.div-muted{color:var(--muted);font-size:11px}.div-week7{display:inline-grid;grid-template-columns:repeat(7,18px);gap:2px}.div-w7d{height:18px;border-radius:3px;background:var(--surface);border:1px solid var(--border);color:var(--muted);text-align:center;font-size:10px;line-height:16px;font-weight:700;box-sizing:border-box}.div-w7d.prac{background:linear-gradient(180deg,#2d61c2,#234da3);color:#fff;border-color:#234da3;box-shadow:0 1px 2px #234da347}.div-upc-bar{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:5px;color:#fff;font-size:11.5px;font-weight:600;text-decoration:none;white-space:nowrap;overflow:hidden;max-width:100%}.div-upc-bar .icon svg{width:11px;height:11px;opacity:.92;flex-shrink:0}.div-upc-bar:hover{filter:brightness(1.06)}.div-upc-prac{background:linear-gradient(180deg,#2d61c2,#234da3);box-shadow:0 1px 2px #234da340}.div-upc-prac.div-upc-adhoc{background:linear-gradient(180deg,#6b3fc8,#5832a4);box-shadow:0 1px 2px #5832a440}.div-upc-game{background:linear-gradient(180deg,#1e9551,#137240);box-shadow:0 1px 2px #16653440}.div-upc-away{border-left:4px dashed rgba(255,255,255,.85);padding-left:6px}.div-upc-when{font-weight:700;font-variant-numeric:tabular-nums}.div-upc-where{font-weight:500;opacity:.88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.td-chev{text-align:right}.div-chev{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);transition:transform .15s ease}.div-chev .icon svg{width:14px;height:14px}.div-chev.open{color:var(--blue-h);transform:rotate(180deg)}.div-empty{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:32px 18px;text-align:center;color:var(--muted);font-size:13px}.div-pane{padding:16px 18px;border-left:3px solid var(--blue-h);display:flex;flex-direction:column;gap:16px}.div-pane-hdr{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--border)}.div-pane-meta{color:var(--text);font-size:13px;font-weight:500}.div-pane-bays{font-size:12px;font-weight:600;color:var(--blue-h);text-decoration:none;background:var(--surface);border:1px solid var(--border);padding:2px 9px;border-radius:999px}.div-pane-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:3px 8px;border-radius:3px;text-transform:uppercase;letter-spacing:.04em}.div-pane-badge .icon svg{width:11px;height:11px}.div-pane-badge.green{background:var(--green-lt);color:var(--green)}.div-pane-badge.red{background:var(--danger-lt);color:var(--danger)}[data-theme=dark] .div-pane-badge.green{background:#4ade802e;color:var(--green)}[data-theme=dark] .div-pane-badge.red{background:#fb718529;color:var(--danger)}.div-pane-acts{margin-left:auto}.div-pane-rem .icon svg{width:13px;height:13px}.div-pane-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.div-pane-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:10px}.div-pane-card-lbl{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.div-pane-card-lbl .icon svg{width:13px;height:13px}.div-pane-section-lbl{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:8px}.div-pane-section-lbl .icon svg{width:13px;height:13px}.div-card-banner{background:var(--danger-lt);border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);padding:12px 14px;display:flex;align-items:flex-start;gap:10px}[data-theme=dark] .div-card-banner{background:#fb71851a}.div-card-banner .icon svg{width:18px;height:18px;flex-shrink:0;margin-top:1px}.div-card-banner-main{font-size:13px;font-weight:600}.div-card-banner-sub{font-size:12px;font-weight:400;opacity:.85;margin-top:4px;line-height:1.4}.div-pane-upcoming{display:flex;flex-direction:column}.div-upc-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.div-upc-card .coach-cal-week+.coach-cal-week{border-top:1px solid var(--border)}.div-upc-card .cal-pill,.div-upc-card .cal-pill:hover{text-decoration:none}.div-upc-mobile{display:none}.div-upc-mobile-empty{font-size:13px;color:var(--muted);padding:16px 12px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);text-align:center}@media(max-width:768px){.div-tbl colgroup .col-team{width:65%}.div-tbl colgroup .col-coach{width:0}.div-tbl colgroup .col-week{width:35%}.div-tbl colgroup .col-prac,.div-tbl colgroup .col-game,.div-tbl colgroup .col-chev{width:0}.div-tbl .th-coach,.div-tbl .td-coach,.div-tbl .th-prac,.div-tbl .th-game,.div-tbl .td-prac,.div-tbl .td-game,.div-tbl .th-chev,.div-tbl .td-chev{display:none}.div-tbl .div-pane-row>td{padding:0}.div-pane-cols{grid-template-columns:1fr}.div-pane-acts{margin-left:0;width:100%}}@media(max-width:640px){.div-page{padding:10px 12px}.div-search{margin-left:0;width:100%;max-width:none}.div-filters{gap:6px}.div-fchips{display:none}.div-fpicker{display:block;width:100%;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 32px 8px 12px;font-size:13px;font-weight:600;line-height:1.2;font-family:inherit;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 16px) center,calc(100% - 11px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.div-fpicker:focus{outline:none;border-color:var(--blue)}.div-tbl th,.div-tbl td{padding:9px 8px}.div-week7{grid-template-columns:repeat(7,18px);gap:2px}.div-w7d{height:18px;line-height:16px;font-size:10px}.div-upc-desktop{display:none}.div-upc-mobile{display:block}}.nudge-textarea{width:100%;box-sizing:border-box;padding:8px 10px;font-size:13px;font-family:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);resize:vertical;min-height:90px}.nudge-textarea:focus{outline:none;border-color:var(--blue, #3b82f6)}.hierarchy-season-tag{font-size:12px;font-weight:600;color:var(--muted);background:var(--surface);border:1px solid var(--border);padding:2px 10px;border-radius:10px}.hierarchy-tree{margin-top:20px}.hierarchy-node{position:relative}.hierarchy-node[data-depth="0"]>.hierarchy-card{border-left:3px solid var(--amber, #f59e0b)}.hierarchy-children{margin-left:24px;padding-left:16px;border-left:2px solid var(--border)}.hierarchy-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;margin-bottom:8px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hierarchy-card--vacant{opacity:.7;border-style:dashed}.hierarchy-card-header{flex:1;min-width:0}.hierarchy-card-division{font-weight:600;font-size:14px;color:var(--text);display:block}.hierarchy-card-role{font-size:12px;color:var(--muted);display:block;margin-top:1px}.hierarchy-card-holder{font-size:13px;color:var(--text)}.hierarchy-vacant-label{font-style:italic;color:var(--muted)}.hierarchy-card-actions{flex-shrink:0}.hierarchy-sys-section{margin-top:28px;padding-top:16px;border-top:2px solid var(--border)}.hierarchy-sys-title{font-size:14px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin:0 0 10px}.hierarchy-sys-row{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:6px}.hierarchy-sys-label{font-weight:600;font-size:13px;color:var(--text);min-width:140px}.hierarchy-sys-holder{font-size:13px;color:var(--muted)}.hierarchy-assign-modal{min-width:360px;max-width:420px}.hierarchy-assign-list{margin-top:10px;max-height:300px;overflow-y:auto}.hierarchy-assign-user{display:flex;flex-direction:column;gap:1px;width:100%;text-align:left;padding:8px 10px;background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;font-family:inherit}.hierarchy-assign-user:hover{background:var(--surface)}.hierarchy-assign-name{font-size:13px;font-weight:600;color:var(--text)}.hierarchy-assign-email{font-size:12px;color:var(--muted)}.hierarchy-copy-modal{min-width:320px}.hierarchy-copy-list{display:flex;flex-direction:column;gap:4px}.hierarchy-copy-item{padding:10px 14px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;color:var(--text)}.hierarchy-copy-item:hover{background:var(--blue-lt);color:var(--blue)}@media(max-width:640px){.hierarchy-children{margin-left:12px;padding-left:10px}.hierarchy-card{padding:8px 10px;gap:6px}.hierarchy-sys-row{flex-direction:column;gap:2px;align-items:flex-start}.hierarchy-sys-label{min-width:auto}}.coach-tab-bar{display:flex;border-bottom:2px solid var(--border);margin-bottom:0}.coach-tab{display:flex;align-items:center;gap:7px;padding:12px 16px;border:none;background:none;cursor:pointer;font-size:15px;font-weight:600;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-2px;transition:color .12s,border-color .12s;scroll-margin-top:var(--header-h)}.coach-tab .icon svg{width:16px;height:16px}.coach-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.coach-tab.coach-tab-issues.active{color:var(--danger);border-bottom-color:var(--danger)}.coach-tab:hover:not(.active){color:var(--text)}.coach-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:10px;padding:0 5px;font-size:11px;font-weight:700;margin-left:6px;background:var(--amber);color:#fff}.coach-tab-content{min-height:200px}.coach-tab-actions{display:flex;gap:8px;padding:14px 0 6px}.coach-tab-action-btn{flex:1;justify-content:center;font-size:14px;padding:10px 16px}.coach-tab-section{margin-top:16px}.coach-tab-section-title{font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:10px}.coach-tab-section .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.coach-tab-section .section-header .coach-tab-section-title{margin-bottom:0}.team-cards{display:flex;flex-direction:column;gap:8px}.team-cards-horizontal{flex-direction:row;flex-wrap:wrap}.team-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;min-width:160px}.team-card-name{font-weight:600;font-size:13px}.team-card-meta{font-size:12px;color:var(--muted);margin-top:2px}.team-card-bays{font-size:12px;color:var(--muted);margin-top:4px}.team-card-bays a{color:var(--blue);text-decoration:none}.team-card-bays a:hover{text-decoration:underline}.sc-badge{display:inline-flex;align-items:center;margin-left:5px;color:var(--blue);vertical-align:middle}.sc-badge .icon svg{width:13px;height:13px}.schedule-strip{display:flex;gap:4px;overflow-x:auto;padding-bottom:4px}.strip-day{flex:1;min-width:72px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:8px 6px}.strip-day-active{background:var(--blue-lt);border-color:#93c5fd}.strip-day-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:6px}.strip-day-active .strip-day-label{color:var(--blue)}.strip-empty{font-size:18px;color:var(--border);line-height:1}.strip-pills{display:flex;flex-direction:column;gap:6px}.strip-pill{display:flex;flex-direction:column;align-items:center;gap:1px;background:var(--blue);color:#fff;border-radius:4px;padding:4px 6px}.strip-pill-time{font-size:11px;font-weight:700}.strip-pill-field{font-size:10px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:72px}.strip-pill-team{font-size:10px;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:72px}.strip-pill-clickable{cursor:pointer}.strip-pill-clickable:hover{filter:brightness(1.12)}.schedule-group-toggle{display:flex;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2px;flex-shrink:0}.sgt-btn{padding:3px 10px;font-size:12px;font-weight:500;border:none;background:none;cursor:pointer;border-radius:calc(var(--radius) - 2px);color:var(--muted);transition:background .12s,color .12s}.sgt-btn.active{background:var(--card);color:var(--text);box-shadow:0 1px 3px #0000001a}.sgt-btn:hover:not(.active){color:var(--text)}.row-team-chip{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);margin-top:3px}.row-team-chip:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--blue);flex-shrink:0}.practice-row-clickable{cursor:pointer}.practice-row-clickable:hover:not(.cancelled):not(.past){background:var(--blue-lt);border-color:var(--blue)}.assoc-request-list{display:flex;flex-direction:column;gap:10px}.assoc-request-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px}.assoc-req-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.assoc-req-team{font-weight:600;font-size:13px}.assoc-req-role{font-size:12px;color:var(--muted)}.assoc-req-date{font-size:12px}.assoc-req-note{font-size:12px;color:var(--muted);margin-top:4px}.modal-filter-row{display:flex;gap:6px;margin-bottom:8px}.modal-filter-row select{flex:1}.modal-team-list{max-height:180px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius);margin:6px 0}.modal-team-option{padding:8px 12px;cursor:pointer;border-bottom:1px solid var(--border);transition:background .1s}.modal-team-option:last-child{border-bottom:none}.modal-team-option:hover:not(.disabled){background:var(--surface)}.modal-team-option.selected{background:var(--blue-lt)}.modal-team-option.disabled{opacity:.45;cursor:not-allowed}.modal-team-option.disabled .modal-team-meta{color:var(--muted)}.modal-team-name{font-weight:500;font-size:13px;display:block}.modal-team-meta{font-size:12px}.modal-team-coaches{min-height:20px;margin:6px 0}.modal-section-label{font-size:12px;color:var(--muted);margin-bottom:4px}.coach-roster-list{font-size:12px;color:var(--text);padding-left:18px}.coach-roster-list li{margin-bottom:2px}.td-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.td-meta{font-size:12px}.td-bays-link{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:600;color:var(--blue);text-decoration:none;white-space:nowrap;flex-shrink:0}.td-bays-link:hover{text-decoration:underline}.td-bays-link .icon svg{width:11px;height:11px}.td-section-title{font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px;margin:12px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--border)}.td-section-title .icon svg{width:15px;height:15px;opacity:.55}.td-coach-list{display:flex;flex-direction:column;gap:2px}.td-coach-row{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:var(--radius)}.td-coach-me{background:var(--blue-lt)}[data-theme=dark] .td-coach-me .td-coach-role{color:var(--text);opacity:.8}.td-coach-info{flex:1;min-width:0}.td-coach-name{font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px}.td-sc-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;color:var(--amber);background:var(--amber-lt);border-radius:10px;padding:1px 7px 1px 4px}.td-sc-badge .icon svg{width:10px;height:10px}.td-coach-role{font-size:12px;color:var(--muted)}.td-coach-contacts{display:flex;flex-wrap:wrap;gap:8px;margin-top:3px}.td-coach-contact{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--text);opacity:.75}.td-coach-contact .icon svg{width:11px;height:11px}.td-actions{margin-top:16px;padding-top:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.td-action-group{display:flex;flex-direction:column;gap:6px}.td-action-label{font-size:12px;font-weight:600;display:flex;align-items:center;gap:5px}.td-action-label .icon svg{width:13px;height:13px;opacity:.55}.td-action-row{display:flex;gap:8px;align-items:center}.td-action-row select{flex:1}.td-action-leave{align-items:flex-start}.modal-intro{font-size:13px;color:var(--muted);margin-bottom:12px}.modal-footnote{font-size:12px;margin-top:8px}.form-check{display:flex;align-items:center}.view-container{max-width:960px;margin:0 auto}.view-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.view-header h1{font-size:20px;font-weight:700;display:flex;align-items:center;gap:.4em}.view-header h1 .icon svg{width:20px;height:20px;opacity:.65}.view-header h2 .icon svg{width:20px;height:20px;opacity:.65}.filter-chips-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.empty-state{text-align:center;padding:48px 24px;color:var(--muted);font-size:14px}.muted{color:var(--muted)}.assoc-fd-list{display:flex;flex-direction:column;gap:16px;margin-top:16px}.assoc-fd-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.assoc-fd-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.assoc-fd-who{font-size:13px}.assoc-fd-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12px}.assoc-fd-coaches-label{font-size:12px;color:var(--muted);margin-bottom:4px}.assoc-fd-coach-list{font-size:12px;color:var(--text);padding-left:18px}.assoc-fd-coach-list li{margin-bottom:2px}.assoc-fd-note{font-size:12px;color:var(--muted);margin-top:6px}.assoc-fd-actions{display:flex;gap:8px;margin-top:12px}.assoc-sc-want{font-size:12px;color:var(--blue)}.btn-success{background:var(--green);color:#fff;border-color:var(--green)}.btn-success:hover:not(:disabled){background:#15803d}.btn-danger-outline{background:var(--card);color:var(--danger);border-color:var(--danger)}.btn-danger-outline:hover:not(:disabled){background:var(--danger-lt)}.entry-contact-none{font-style:italic;font-size:12px;color:var(--muted);margin-top:4px}.coach-profile-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px;margin-bottom:20px}.coach-profile-identity{display:flex;align-items:center;gap:16px;min-width:0}.coach-profile-avatar{flex-shrink:0;width:52px;height:52px;border-radius:50%;background:var(--blue);color:#fff;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center}.coach-profile-info{min-width:0}.coach-profile-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0}.coach-profile-columns{display:flex;flex-direction:column;gap:16px}.coach-profile-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.coach-profile-panel-header{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:10px 14px;border-bottom:1px solid var(--border);background:var(--surface)}.coach-profile-team-list{display:flex;flex-direction:column}.coach-profile-team-card{display:flex;align-items:center;gap:10px;padding:12px 14px;text-decoration:none;color:var(--text);border-bottom:1px solid var(--border);transition:background .12s}.coach-profile-team-card:last-child{border-bottom:none}.coach-profile-team-card:hover{background:var(--surface)}.coach-profile-team-name{font-size:14px;font-weight:500}.coach-profile-team-meta{font-size:12px;color:var(--muted)}.coach-profile-team-arrow{color:var(--muted);font-size:18px;margin-left:auto}.coach-profile-date-group{padding:10px 14px 6px;border-bottom:1px solid var(--border)}.coach-profile-date-group:last-child{border-bottom:none}.coach-profile-date-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:6px}.coach-profile-sched-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--border)}.coach-profile-sched-row:last-child{border-bottom:none}.coach-profile-sched-row.clickable{cursor:pointer;border-radius:var(--radius);padding:6px 4px}.coach-profile-sched-row.clickable:hover{background:var(--surface)}.coach-profile-sched-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.coach-profile-sched-time{font-size:12px;color:var(--muted)}.coach-profile-sched-info{font-size:13px}.fd-home-view{padding:20px 24px;max-width:none;margin:0 auto}.fd-dash-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.fd-dash-title{font-size:20px;font-weight:700;color:var(--text);margin:0}.fd-dash-actions{display:flex;align-items:flex-start;gap:8px}.fd-home-quick-actions{display:flex;gap:10px;margin-bottom:16px}.btn-quick-action{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;border:1.5px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;transition:background .12s,border-color .12s}.btn-quick-action:hover{background:var(--bg-hover);border-color:var(--blue);color:var(--blue)}.btn-quick-action.btn-quick-danger{border-color:var(--danger);color:var(--danger)}.btn-quick-action.btn-quick-danger:hover{background:var(--danger-lt);border-color:var(--danger);color:var(--danger)}.btn-quick-action img{height:16px;vertical-align:middle}.btn-quick-action .icon svg{width:15px;height:15px}.fd-dash-action-wrap{display:flex;flex-direction:column;align-items:stretch}.fd-dash-sync-meta{font-size:11px;color:var(--muted);margin-top:2px;text-align:right}.fd-week-strip{display:flex;gap:6px;margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.fd-strip-cell{flex:1;min-width:90px;text-align:center;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 6px 8px;transition:border-color .15s,box-shadow .15s}.fd-strip-cell:hover{border-color:#93c5fd;box-shadow:0 2px 8px #3b82f61f}.fd-strip-today{background:var(--blue-lt);border-color:#93c5fd;box-shadow:0 2px 8px #3b82f61a}.fd-strip-head{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:6px}.fd-strip-day{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.fd-strip-today .fd-strip-day{color:var(--blue)}.fd-strip-num{font-size:18px;font-weight:700;line-height:1.2;color:var(--text)}.fd-strip-num.today-circle{background:var(--blue);color:#fff;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:14px}.fd-strip-wx{display:flex;align-items:center;justify-content:center;gap:4px;margin:4px 0 2px}.fd-strip-wx-icon svg{width:22px;height:22px}.fd-strip-temp{font-size:13px;font-weight:600}.fd-strip-sunset{display:flex;align-items:center;justify-content:center;gap:3px;font-size:11px;color:var(--muted);margin-bottom:4px}.fd-strip-sunset .icon svg{width:12px;height:12px}.fd-strip-load{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px}.fd-strip-load-empty{font-size:14px;color:var(--border)}.fd-strip-dot{display:inline-flex;align-items:center;gap:2px;font-size:12px;font-weight:600;border-radius:4px;padding:2px 5px}.fd-strip-dot .icon svg{width:12px;height:12px}.fd-strip-dot-practice{background:var(--blue-lt);color:var(--blue)}.fd-strip-dot-game{background:var(--green-lt);color:var(--green)}.fd-strip-dot-reservation{background:var(--amber-lt);color:var(--amber)}.fd-hourly-strip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;margin-bottom:16px}.fd-hourly-head{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.fd-hourly-head .icon svg{width:13px;height:13px}.fd-hourly-cells{display:flex;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}.fd-hourly-cell{flex:1;min-width:52px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:8px}.fd-hourly-cell.fd-hourly-now{background:var(--blue-lt)}.fd-hourly-time{font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}.fd-hourly-icon svg{width:20px;height:20px}.fd-hourly-temp{font-size:13px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}[data-theme=dark] .fd-hourly-cell.fd-hourly-now{background:#3b82f629}.fd-home-tabs{display:flex;border-bottom:2px solid var(--border);margin-bottom:20px}.fd-home-tab{padding:8px 20px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .12s,border-color .12s;display:inline-flex;align-items:center;gap:5px}.fd-tab-icon{display:inline-flex}.fd-tab-icon svg{width:14px;height:14px}.fd-home-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.fd-home-tab:hover:not(.active){color:var(--text)}.fd-home-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:10px;padding:0 5px;font-size:11px;font-weight:700;margin-left:6px;background:var(--amber);color:#fff}.fd-home-today-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.fd-home-today-title{font-size:16px;font-weight:600}.fd-home-empty{text-align:center;padding:48px 24px;color:var(--muted);font-size:14px}.fd-home-empty-icon{margin-bottom:8px;display:flex;justify-content:center}.fd-home-empty-icon .icon svg{width:40px;height:40px}.fd-action-list{display:flex;flex-direction:column}.fd-action-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--border)}.fd-action-row:last-child{border-bottom:none}.fd-action-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.fd-action-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fd-action-meta{font-size:12px;color:var(--muted)}.fd-action-badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;flex-shrink:0;white-space:nowrap}.fd-action-badge-practice{background:var(--blue-lt);color:var(--blue)}.fd-action-badge-adhoc{background:var(--purple-lt);color:var(--purple)}.fd-action-badge-game{background:var(--green-lt);color:var(--green)}.fd-action-badge-assoc{background:var(--amber-lt);color:var(--amber)}.fd-action-warning{font-size:11px;font-weight:600;color:var(--amber)}.fd-action-btns{display:flex;gap:6px;flex-shrink:0;align-items:flex-start}.fd-summary-list{display:flex;flex-direction:column}.fd-summary-row{display:flex;align-items:center;justify-content:space-between;padding:14px 4px;border-bottom:1px solid var(--border);text-decoration:none;color:inherit;transition:background .1s}.fd-summary-row:last-child{border-bottom:none}.fd-summary-row:hover{background:var(--surface)}.fd-summary-left{display:flex;align-items:center;gap:10px}.fd-summary-icon svg{width:18px;height:18px;color:var(--muted)}.fd-summary-label{font-size:14px;font-weight:500}.fd-summary-right{display:flex;align-items:center;gap:8px}.fd-summary-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:12px;padding:0 7px;font-size:12px;font-weight:700;background:var(--amber);color:#fff}.fd-summary-badge-danger{background:var(--danger, #ef4444)}.fd-summary-badge-zero{background:var(--border);color:var(--muted)}.fd-summary-arrow{font-size:20px;color:var(--muted);font-weight:300}.pending-approval-list{display:flex;flex-direction:column;gap:8px}.pending-approval-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--card);border:1px solid var(--amber, #f59e0b);border-radius:var(--radius);box-shadow:var(--shadow)}.fs-status-bar{margin-bottom:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);overflow:hidden}.fs-summary{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;user-select:none;font-size:13px;transition:background .15s}.fs-summary:hover{background:var(--surface)}.fs-label{font-weight:600;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.fs-bar{flex:1;height:8px;background:var(--surface);border-radius:4px;display:flex;overflow:hidden;min-width:60px;max-width:160px}.fs-seg-open{background:var(--green)}.fs-seg-partial{background:var(--amber)}.fs-seg-closed{background:var(--danger)}.fs-text{font-weight:600;color:var(--text);white-space:nowrap}.fs-accent-closed .fs-text{color:var(--danger)}.fs-issues{display:inline-flex;align-items:center;gap:3px;font-size:12px;color:var(--amber);font-weight:500;white-space:nowrap}.fs-issue-icon svg{width:12px;height:12px}.fs-updated{font-size:11px;color:var(--muted);white-space:nowrap;margin-left:auto}.fs-chevron{color:var(--muted);font-size:14px;flex-shrink:0}.fs-detail{border-top:1px solid var(--border);padding:6px 12px 10px}.fs-card-group+.fs-card-group{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.fs-group-header{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;padding:2px 2px 4px}.fs-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.fs-card{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:6px;border-left:4px solid transparent;text-decoration:none;cursor:pointer;transition:box-shadow .15s,background .15s}.fs-card:hover{box-shadow:0 2px 8px #00000014}.fs-card-open{border-left-color:var(--green);background:var(--green-lt)}.fs-card-partial{border-left-color:var(--amber);background:var(--amber-lt)}.fs-card-closed{border-left-color:var(--danger);background:var(--danger-lt)}.fs-card-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.fs-card-name{font-weight:600;font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fs-card-pill{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;padding:1px 7px;border-radius:8px;flex-shrink:0;white-space:nowrap}.fs-pill-open{background:var(--green);color:#fff}.fs-pill-partial{background:var(--amber);color:#fff}.fs-pill-closed{background:var(--danger);color:#fff}.fs-card-bottom{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);min-height:16px}.fs-card-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fs-card-closed .fs-card-detail{color:var(--danger)}.fs-card-partial .fs-card-detail{color:var(--amber)}.fs-card-issues{display:inline-flex;align-items:center;gap:2px;font-size:11px;color:var(--amber);font-weight:600;flex-shrink:0;margin-left:auto;white-space:nowrap}[data-theme=dark] .fs-card-open .fs-card-bottom,[data-theme=dark] .fs-card-partial .fs-card-bottom,[data-theme=dark] .fs-card-closed .fs-card-bottom{color:#ffffffb3}.fs-card-issues .fs-issue-icon svg{width:11px;height:11px}.fs-issues-link{display:flex;align-items:center;gap:6px;margin-bottom:10px;padding:9px 12px;border-radius:6px;background:color-mix(in srgb,var(--danger) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--danger) 25%,var(--border));font-size:13px;font-weight:600;color:var(--text);text-decoration:none}.fs-issues-link:hover{background:color-mix(in srgb,var(--danger) 14%,var(--surface))}.fs-issues-link .icon{width:15px;height:15px;color:var(--danger);flex-shrink:0}.fs-issues-link-chevron{margin-left:auto;color:var(--muted);font-size:16px}@media(max-width:600px){.fs-card-grid{grid-template-columns:1fr}}.fd-alert-banner{display:flex;align-items:center;gap:8px;border-radius:var(--radius);padding:10px 16px;margin-bottom:16px;font-size:13px}.fd-alert-danger{background:var(--danger-lt);border:1px solid var(--danger);color:var(--danger)}.fd-alert-danger .icon svg{width:16px;height:16px;flex-shrink:0;color:var(--danger)}.fd-alert-warn{background:var(--amber-lt);border:1px solid var(--amber);color:var(--amber)}.fd-alert-warn .icon svg{width:16px;height:16px;flex-shrink:0;color:var(--amber)}.fd-alert-msg{flex:1}.fd-alert-btn{background:var(--danger);color:#fff;border-color:var(--danger);white-space:nowrap}.fd-alert-btn:hover:not(:disabled){background:#b91c1c}.fd-alert-btn-warn{background:#92400e;color:#fff;border-color:var(--amber);white-space:nowrap}.fd-alert-btn-warn:hover:not(:disabled){background:#78350f}.fd-activity-viewall{font-size:12px;font-weight:500;color:var(--blue);text-decoration:none}.fd-activity-viewall:hover{text-decoration:underline}.fmc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px}.fmc-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.fmc-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.fmc-name{font-weight:600;font-size:13px;color:var(--blue);cursor:pointer;text-decoration:none;transition:color .12s}.fmc-name:hover{text-decoration:underline}.fmc-right{display:flex;align-items:center;gap:6px}.fmc-meta{font-size:10px;color:var(--muted)}.fmc-format-tag{font-size:9px;background:#3b82f61f;color:var(--blue);padding:1px 5px;border-radius:3px;margin-left:4px}.fmc-timeline-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;flex-shrink:0;background:color-mix(in srgb,var(--blue) 16%,var(--card));color:var(--blue);border:1px solid color-mix(in srgb,var(--blue) 32%,var(--border));cursor:pointer;padding:0;transition:background-color .15s,transform .12s,box-shadow .15s,color .15s}.fmc-timeline-btn:hover{background:color-mix(in srgb,var(--blue) 32%,var(--card));border-color:color-mix(in srgb,var(--blue) 55%,var(--border));color:var(--blue-h, var(--blue));transform:translateY(-1px);box-shadow:0 2px 6px #3b82f638}[data-theme=dark] .fmc-timeline-btn:hover{box-shadow:0 2px 8px #60a5fa4d}.fmc-timeline-btn .icon{display:flex}.fmc-timeline-btn .icon svg{width:14px;height:14px}.fmc-closing{display:flex;align-items:center;gap:4px;padding:4px 12px;background:var(--red-lt, rgba(239,68,68,.08));font-size:10px;color:var(--red)}.fmc-closing .icon svg{width:10px;height:10px}.fmc-entries{display:flex;flex-direction:column;gap:5px;padding:6px}.fmc-entry{position:relative;display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:#fff;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;text-decoration:none;background:linear-gradient(180deg,#2d61c2,#234da3);box-shadow:0 1px 2px #234da340}.fmc-entry:hover{transform:translateY(-1px);box-shadow:0 4px 10px #234da359}.fmc-entry.fmc-game{background:linear-gradient(180deg,#1e9551,#137240);box-shadow:0 1px 2px #16653440}.fmc-entry.fmc-game:hover{box-shadow:0 4px 10px #16653459}.fmc-entry.fmc-adhoc{background:linear-gradient(180deg,#6b3fc8,#5832a4);box-shadow:0 1px 2px #5832a44d}.fmc-entry.fmc-adhoc:hover{box-shadow:0 4px 10px #5832a466}.fmc-entry.fmc-reservation{background:linear-gradient(180deg,#c97a0b,#a76306);box-shadow:0 1px 2px #b4530940}.fmc-entry.fmc-reservation:hover{box-shadow:0 4px 10px #b4530959}.fmc-entry.fmc-cancelled{background:transparent;color:var(--muted);border:1px dashed var(--border);padding:8px 11px;box-shadow:none}.fmc-entry.fmc-cancelled:hover{transform:none;box-shadow:none;border-color:var(--muted)}.fmc-entry.fmc-cancelled .fmc-time-range,.fmc-entry.fmc-cancelled .fmc-matchup,.fmc-entry.fmc-cancelled .fmc-bays{color:var(--muted)}.fmc-entry.fmc-cancelled .fmc-type-label>svg,.fmc-entry.fmc-cancelled .fmc-type-label .icon svg{color:var(--muted)}.fmc-entry.fmc-entry-ghost{opacity:.55}.fmc-time{color:#ffffffe0;width:56px;font-size:11.5px;font-weight:500;flex-shrink:0;font-variant-numeric:tabular-nums}.fmc-time-range{color:#ffffffe0;font-size:11.5px;font-weight:500;flex-shrink:0;font-variant-numeric:tabular-nums}.fmc-type-indicator{display:none}.fmc-detail{display:flex;align-items:center;gap:7px;min-width:0}.fmc-type-label{display:inline-flex;align-items:center;flex-shrink:0}.fmc-type-label:after{content:none}.fmc-type-label>svg,.fmc-type-label .icon svg{width:14px;height:14px;color:#fff}.fmc-matchup{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13.5px;font-weight:600;color:#fff}.fmc-matchup.fmc-cancelled-text{text-decoration:line-through;opacity:.65}.fmc-bays{color:#ffffffd9;font-size:10.5px;flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:500}.fmc-badge{font-size:9px;padding:2px 6px;border-radius:999px;font-weight:600;flex-shrink:0;letter-spacing:.02em}.fmc-badge-exclusive{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.35)}.fmc-badge-tentative{background:#fff3;color:#fff;border:1px dashed rgba(255,255,255,.5)}.fmc-empty{padding:10px 12px;font-size:11px;color:var(--muted);font-style:italic;text-align:center}.fmc-card.fmc-card-closed{background:var(--surface);opacity:.75}.fmc-card.fmc-card-closed .fmc-name{color:var(--muted)}.fmc-card.fmc-card-maintenance{border-style:dashed;opacity:.7}.fmc-chip-closed{display:inline-block;font-size:9px;padding:2px 6px;border-radius:3px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;margin-left:6px;background:#ef444426;color:var(--red)}.fmc-chip-closed.fmc-chip-partial{background:#f59e0b33;color:var(--amber)}.fmc-meta.fmc-meta-conflict{color:var(--red);font-weight:700}.fmc-entry.my-event{box-shadow:inset 3px 0 0 0 var(--my-event),0 1px 2px #234da340;padding-left:14px}.fmc-entry.my-event.fmc-game{box-shadow:inset 3px 0 0 0 var(--my-event),0 1px 2px #16653440}.fmc-entry.my-event:hover{box-shadow:inset 3px 0 0 0 var(--my-event),0 4px 10px #234da359}.fmc-entry.my-event.fmc-game:hover{box-shadow:inset 3px 0 0 0 var(--my-event),0 4px 10px #16653459}.fmc-entry.my-event:after{content:"";position:absolute;top:4px;right:4px;width:7px;height:7px;border-radius:50%;background:var(--my-event);box-shadow:0 0 0 1.5px #0003;z-index:1}[data-theme=dark] .fmc-entry.my-event:after{box-shadow:0 0 0 1.5px #00000073}.fmc-entry.fmc-entry-cancelled .fmc-matchup{text-decoration:line-through;opacity:.65}.fmc-entry.fmc-cancelled.my-event{box-shadow:none;padding-left:12px}.fmc-entry.fmc-cancelled.my-event:after{display:none}.fmc-cancelled-section{border-top:1px solid var(--border)}.fmc-cancelled-section .fmc-entries{padding-top:6px}.fmc-coach-request{padding:8px 12px;border-top:1px solid var(--border);display:flex;justify-content:center;align-items:center;gap:8px}.day-closings-banner{padding:12px 16px;border-radius:8px;margin-bottom:12px;background:#ef444414;border:1px solid var(--red);color:var(--text)}.day-closings-banner-title{font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;margin-bottom:6px;color:var(--red);display:flex;align-items:center;gap:6px}.day-closings-banner-title .icon svg{width:13px;height:13px}.day-closings-banner-line{font-size:13px;font-weight:500;display:block;margin-top:3px;color:var(--text)}.ra-home-view{padding:20px 24px;max-width:none;margin:0 auto}.ra-dash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.ra-dash-title{font-size:20px;font-weight:700;color:var(--text);margin:0}.ra-tab-badge-danger{background:var(--danger)}.ra-games-count{font-size:12px;color:var(--muted);margin-bottom:12px}.ra-date-section{margin-bottom:16px}.ra-date-header{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:8px 0 4px;border-bottom:1px solid var(--border);margin-bottom:2px}.ra-date-today{color:var(--blue)}.ra-game-row{display:flex;align-items:center;gap:12px;padding:10px 8px;border-bottom:1px solid var(--border);transition:background .1s;cursor:pointer}.ra-game-row:hover{background:var(--surface)}.ra-game-row:last-child{border-bottom:none}.ra-game-cancelled{opacity:.55}.ra-game-time{font-size:12px;font-weight:600;color:var(--text);min-width:65px;flex-shrink:0}.ra-game-info{flex:1;min-width:0}.ra-game-matchup{font-size:13px;font-weight:600}.ra-game-meta{font-size:11px;color:var(--muted);margin-top:1px}.ra-game-badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;background:var(--green-lt);color:var(--green);flex-shrink:0}.ra-game-badge-cancelled{background:var(--danger-lt);color:var(--danger)}.ra-game-badge-confirmed{background:var(--blue-lt);color:var(--blue)}.ra-viewall-btn{margin-top:16px;display:inline-flex}.ra-conflict-section{margin-bottom:20px}.ra-conflict-section h4{font-size:13px;font-weight:700;margin:0 0 8px;color:var(--text);display:flex;align-items:center;gap:4px}.ra-conflict-section h4 .icon svg{width:14px;height:14px}.ra-conflict-item{display:flex;align-items:flex-start;gap:8px;padding:10px 8px;border-bottom:1px solid var(--border)}.ra-conflict-item:last-child{border-bottom:none}.ra-conflict-clickable{text-decoration:none;color:inherit;cursor:pointer;border-radius:6px;transition:background .15s}.ra-conflict-clickable:hover{background:var(--hover-bg, rgba(0,0,0,.04))}.ra-conflict-nudge{flex-shrink:0;align-self:center;margin-left:auto}.ra-conflict-icon .icon svg{width:16px;height:16px;color:var(--danger)}.ra-conflict-warn .icon svg{color:var(--amber)}.ra-conflict-body{flex:1}.ra-conflict-desc{font-size:13px;font-weight:500}.ra-conflict-meta{font-size:11px;color:var(--muted);margin-top:2px}.ra-request-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:14px;font-weight:600}.ra-request-list{display:flex;flex-direction:column}.ra-request-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 8px;border-bottom:1px solid var(--border);text-decoration:none;color:inherit;cursor:pointer}.ra-request-row:hover{background:var(--surface)}.ra-request-row:last-child{border-bottom:none}.ra-req-bays{font-size:11px;font-weight:700;color:var(--blue);background:var(--blue-lt);border-radius:4px;padding:2px 6px;flex-shrink:0;white-space:nowrap}.ra-request-field{font-size:12px;font-weight:600;color:var(--blue);display:flex;align-items:center;gap:3px;margin-top:2px}.ra-request-field .icon svg{width:12px;height:12px}.ra-request-stepper{margin-top:4px}.ra-req-review-btn{flex-shrink:0}.ra-request-info{flex:1;min-width:0}.ra-request-team{font-size:13px;font-weight:600}.ra-request-meta{font-size:11px;color:var(--muted);margin-top:1px}.ra-req-badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.ra-req-pending{background:var(--amber-lt);color:var(--amber)}.ra-req-assigned{background:var(--blue-lt);color:var(--blue)}.ra-req-confirmed{background:var(--green-lt);color:var(--green)}.ra-req-awaiting{background:var(--purple-lt);color:var(--purple)}.ra-hero-row{display:grid;grid-template-columns:1fr 2fr;gap:12px;margin-bottom:16px}.ra-hero-left{display:flex;flex-direction:column;gap:12px}.ra-hero-left .coach-stat-card{margin:0;flex:1}.ra-game-stats-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.ra-stats-header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.ra-stats-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px}.ra-stats-header h3 .icon svg{width:16px;height:16px}.ra-stats-viewall{font-size:12px;color:var(--blue);font-weight:500}.ra-game-stats-card:hover{border-color:var(--blue);box-shadow:0 2px 8px #3b82f61f}.ra-stats-body{display:flex;align-items:center;gap:24px;padding:16px 20px}.ra-stats-chart{flex-shrink:0;width:120px;height:120px}.ra-pie-chart{width:100%;height:100%}.ra-pie-total{font-size:22px;font-weight:700;fill:var(--text)}.ra-pie-label{font-size:10px;fill:var(--muted)}.ra-stats-legend{flex:1;display:flex;flex-direction:column;gap:6px}.ra-stats-legend-row{display:flex;align-items:center;gap:8px;font-size:13px}.ra-stats-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.ra-stats-legend-label{flex:1;color:var(--text)}.ra-stats-legend-count{font-weight:600;color:var(--text);min-width:24px;text-align:right}.ra-stats-footer{padding:10px 16px;border-top:1px solid var(--border);font-size:12px;color:var(--muted)}@media(max-width:640px){.fd-dash-header,.ra-dash-header{flex-wrap:wrap;gap:8px}.fd-dash-actions{gap:6px;flex-wrap:wrap}.fd-dash-actions .btn-quick-action{font-size:12px;padding:6px 10px}.fd-home-view .coach-stats-hero{grid-template-columns:1fr 1fr;gap:8px}.fd-home-view .coach-stat-value{font-size:16px}.fd-home-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.fd-strip-cell{min-width:76px;padding:8px 4px 6px}.fd-strip-wx-icon svg{width:18px;height:18px}.fd-strip-num{font-size:15px}.ra-hero-row{grid-template-columns:1fr}.ra-stats-body{flex-direction:column;gap:12px;padding:12px 16px}.ra-stats-chart{width:100px;height:100px}}.reservation-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.reservation-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px}.reservation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.reservation-label{font-size:15px;font-weight:600;color:var(--text)}.reservation-meta{font-size:12px;color:var(--muted);margin-top:2px}.reservation-notes{font-size:12px;color:var(--muted);margin-top:4px;font-style:italic}.reservation-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-top:4px}.badge-exclusive{background:var(--amber-lt);color:var(--amber)}.reservation-actions{display:flex;gap:6px;flex-shrink:0}.reservation-upcoming{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.reservation-upcoming-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);flex-shrink:0}.reservation-date-tile{display:flex;flex-direction:column;gap:1px;padding:5px 12px;border-radius:4px;border-left:3px solid var(--_c, var(--amber));background:var(--amber-lt);text-decoration:none;cursor:pointer;transition:filter .15s,box-shadow .15s}.reservation-date-tile:hover{filter:brightness(.94);box-shadow:0 1px 3px #0000001a}.reservation-date-dow{font-size:10px;font-weight:600;color:var(--_c, var(--amber));text-transform:uppercase;letter-spacing:.3px;line-height:1}.reservation-date-day{font-size:13px;font-weight:600;color:var(--_c, var(--amber));line-height:1.2;white-space:nowrap}.reservation-upcoming-more{font-size:12px;color:var(--muted);white-space:nowrap}.reservation-date-tile.tile-game{border-left-color:var(--blue);background:var(--blue-lt)}.reservation-date-tile.tile-game .reservation-date-dow,.reservation-date-tile.tile-game .reservation-date-day{color:var(--blue)}.reservation-date-tile.tile-game:hover{background:var(--blue-lt);filter:brightness(.92)}.date-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.date-chip{display:inline-flex;align-items:center;gap:4px;background:var(--blue-lt);color:var(--blue);border-radius:4px;padding:3px 8px;font-size:12px;font-weight:600}.date-chip-remove{background:none;border:none;cursor:pointer;color:var(--blue);padding:0 2px;display:inline-flex;align-items:center}.date-chip-remove svg{width:12px;height:12px;display:block}.date-add-row{display:flex;gap:6px;align-items:center;margin-bottom:8px}.date-pattern-section{margin-top:8px}.date-pattern-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.date-pattern-row select,.date-pattern-row input[type=date]{font-size:13px;padding:4px 6px}.form-sublabel{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}.field-checkbox-list{display:flex;flex-direction:column;gap:4px;max-height:150px;overflow-y:auto}.wizard-progress-wrap{padding:16px 20px;border-bottom:1px solid var(--border)}.wizard-progress{display:flex;align-items:center}.wizard-step-node{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.wizard-step-dot{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--surface);border:2px solid var(--border);color:var(--muted);transition:background .2s,border-color .2s,color .2s}.wizard-step-label{font-size:11px;color:var(--muted);font-weight:500;text-align:center;white-space:nowrap}.wizard-step-label.active{color:var(--blue);font-weight:700}.wizard-step-label.done{color:var(--green)}.wizard-step-connector{flex:1;height:2px;background:var(--border);margin-bottom:18px;transition:background .2s}.wizard-step-connector.done{background:var(--green)}.wizard-body{padding:20px 20px 12px;min-height:180px}.wizard-step-intro{font-size:13px;color:var(--muted);margin-bottom:14px}.wizard-exclusive-row{display:flex;align-items:center;gap:10px;margin-top:14px;padding:10px 14px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);cursor:pointer}.wizard-exclusive-row input[type=checkbox]{width:16px;height:16px;flex-shrink:0;cursor:pointer}.wizard-exclusive-label{font-size:13px;font-weight:500;color:var(--text);cursor:pointer}.wizard-exclusive-hint{font-size:12px;color:var(--muted);font-weight:400}.wizard-footer-right{display:flex;gap:8px;align-items:center}.pwiz{display:flex;flex-direction:column}.pwiz-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.pwiz-head h3{margin:0;font-size:16px;font-weight:600}.pwiz-summary{padding:10px 20px;font-size:12.5px;color:var(--muted);border-bottom:1px solid var(--border);display:flex;gap:14px;flex-wrap:wrap}.pwiz-summary:empty{display:none}.pwiz-summary b{color:var(--text);font-weight:600}.pwiz-stepper{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid var(--border)}.pwiz-body{padding:16px 20px 4px;min-height:220px}.pwiz-foot{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-top:1px solid var(--border);margin-top:8px}.practice-chip-list{display:flex;flex-direction:column;gap:8px}.practice-chip-summary{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:13px;color:var(--text)}.practice-chip-zerostate{background:#dc26261f;border:1px solid var(--red, #dc2626);border-radius:8px;padding:10px 12px;font-size:13px;color:var(--red, #dc2626)}.practice-chip-section-divider{margin-top:4px;padding:6px 4px 2px;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-top:1px dashed var(--border)}.occ-fieldpicker{display:flex;flex-direction:column;gap:4px}.occ-fieldpicker-grid{display:flex;flex-wrap:wrap;gap:6px}.occ-fieldpicker-divider{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:6px 0 4px;margin-top:4px;border-top:1px dashed var(--border)}.occ-fieldpicker-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);cursor:pointer;font:inherit;font-size:13px;transition:border-color 80ms,background 80ms}.occ-fieldpicker-chip:hover{border-color:var(--teal, #14b8a6)}.occ-fieldpicker-chip.selected{background:#14b8a61f;border-color:#14b8a6}.occ-fieldpicker-name{font-weight:500}.occ-fieldpicker-current{display:inline-block;padding:1px 6px;font-size:10px;font-weight:600;background:#14b8a629;color:var(--teal, #14b8a6);border-radius:8px;text-transform:uppercase;letter-spacing:.04em}.occ-fieldpicker-chip .badge--external{margin-left:2px}.practice-chip{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);cursor:pointer;text-align:left;font:inherit;transition:border-color 80ms,background 80ms}.practice-chip:not(.disabled):hover{border-color:var(--teal, #14b8a6)}.practice-chip.selected{background:#14b8a61f;border-color:#14b8a6}.practice-chip.disabled{cursor:not-allowed;opacity:.55;border-style:dashed}.practice-chip-icon{flex:0 0 28px;height:28px;width:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.practice-chip-icon svg{width:16px;height:16px}.practice-chip-open .practice-chip-icon{background:#22c55e2e;color:var(--green, #16a34a)}.practice-chip-shared .practice-chip-icon{background:#d977062e;color:var(--amber, #d97706)}.practice-chip-full .practice-chip-icon,.practice-chip-closed .practice-chip-icon{background:#dc26262e;color:var(--red, #dc2626)}.practice-chip-body{flex:1;min-width:0}.practice-chip-row1{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:2px}.practice-chip-name{font-weight:600;font-size:14px}.practice-chip-current-badge{font-size:10.5px;padding:1px 7px;border-radius:999px;background:#14b8a6;color:#04211c;font-weight:600}.practice-chip-status{font-size:11px;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.practice-chip-status-open{background:#22c55e2e;color:var(--green, #16a34a)}.practice-chip-status-shared{background:#d977062e;color:var(--amber, #d97706)}.practice-chip-status-full,.practice-chip-status-closed{background:#dc26262e;color:var(--red, #dc2626)}.practice-chip-status-mostly-open{background:#15803d38;color:#15803d}.practice-chip-status-partial{background:#ea580c2e;color:#ea580c}.practice-chip-status-mostly-unavailable{background:#c2410c38;color:#c2410c}.practice-chip-status-unavailable{background:#dc26262e;color:var(--red, #dc2626)}[data-theme=dark] .practice-chip-status-mostly-open{color:#34d399}[data-theme=dark] .practice-chip-status-partial{color:#fb923c}[data-theme=dark] .practice-chip-status-mostly-unavailable{color:#f97316}.practice-chip-shared{border-color:#d9770680;background:#d977060f}.practice-chip-meta{font-size:12px;color:var(--muted)}.practice-chip-hint{font-size:12px;color:var(--muted);margin-top:4px}.practice-chip-weeks-badge{font-size:11px;padding:1px 6px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--muted)}.field-toggle-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.field-toggle-chip{padding:7px 18px;border-radius:20px;border:1.5px solid var(--border);background:var(--card);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.field-toggle-chip:hover:not(.selected){border-color:var(--blue);color:var(--blue)}.field-toggle-chip.selected{background:var(--blue);border-color:var(--blue);color:#fff}.field-toggle-chip.selected:hover{background:var(--blue-h);border-color:var(--blue-h)}.maint-report-list{display:flex;flex-direction:column;gap:10px}.maint-report-row{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:10px 14px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.maint-row-resolved{opacity:.65}.maint-report-body{flex:1;min-width:0}.maint-issue-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:4px}.maint-urgency,.maint-status{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;padding:2px 7px;border-radius:4px;text-transform:uppercase}.urgency-high{background:var(--danger-lt);color:var(--danger)}.urgency-med{background:var(--amber-lt);color:var(--amber)}.urgency-low{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.maint-open{background:var(--blue-lt);color:var(--blue)}.maint-resolved{background:var(--green-lt);color:var(--green)}.maint-issue-type{font-weight:600;font-size:14px}.maint-date{font-size:12px}.maint-field-label{font-size:12px;color:var(--muted);margin-bottom:4px}.maint-field-link{color:var(--blue);text-decoration:none}.maint-field-link:hover{text-decoration:underline}.maint-details{font-size:13px;color:var(--text);margin:2px 0}.maint-fd-response{font-size:12px;color:var(--muted);margin-top:4px;border-left:3px solid var(--border);padding-left:8px}.maint-fd-label{font-weight:600;color:var(--text)}.maint-report-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.maint-field-group{margin-bottom:18px}.maint-field-group-header{font-size:15px;font-weight:700;margin-bottom:8px}.fd-maint-section{margin-top:16px;border-top:1px solid var(--border);padding-top:14px}.fd-pending-group-header{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px;margin-bottom:10px}.fd-pending-count{background:var(--blue);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px}.maint-view-all{display:block;margin-top:8px;font-size:12px;color:var(--blue);text-decoration:none}.maint-view-all:hover{text-decoration:underline}.wizard-steps{display:flex;align-items:center;gap:8px;padding:8px 0}.wizard-step-dot{width:22px;height:22px;border-radius:50%;background:var(--surface);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--muted)}.wizard-step-dot.active{background:var(--blue);border-color:var(--blue);color:#fff}.wizard-step-dot.done{background:var(--green);border-color:var(--green);color:#fff}.wizard-step-label{font-size:12px;color:var(--muted);font-weight:500;margin-left:4px}.wizard-body{min-height:180px}.maint-photo-drop{border:2px dashed var(--border);border-radius:8px;padding:28px;text-align:center;cursor:pointer;color:var(--muted);transition:border-color .15s,background .15s}.maint-photo-drop:hover{border-color:var(--blue);background:var(--blue-lt)}.maint-drop-icon{font-size:28px;margin-bottom:8px}.maint-photo-preview{margin-top:10px;font-size:13px;color:var(--muted)}.maint-photo-name{color:var(--text);font-weight:500}.equip-type-badge{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;background:var(--amber-lt, #fef3c7);color:var(--amber, #92400e)}.equip-scheduled-teams{font-size:12px;color:var(--muted);margin-top:2px}.equip-teams-label{font-weight:600;color:var(--text)}.equip-checkboxes{display:flex;flex-direction:column;gap:8px;margin-top:4px}.equip-checkbox-label{display:flex;align-items:center;gap:6px;font-size:14px;cursor:pointer}.maint-tabs{display:flex;border-bottom:2px solid var(--border);margin-bottom:0}.maint-tab{display:flex;align-items:center;gap:7px;padding:12px 20px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s}.maint-tab .icon svg{width:16px;height:16px}.maint-tab:hover:not(.active){color:var(--text)}.maint-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.maint-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:10px;padding:0 5px;font-size:10px;font-weight:700;background:var(--surface);color:var(--muted)}.maint-tab.active .maint-tab-badge{background:var(--blue-lt);color:var(--blue)}.maint-tab-content{min-height:200px}.maint-filter-bar{padding:12px 0 4px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.maint-chip-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.maint-chip-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;margin-right:2px}.maint-chip{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;background:transparent;color:var(--muted);border:1px solid var(--border);cursor:pointer;transition:all .15s;line-height:1.4}.maint-chip:hover{border-color:var(--blue);color:var(--text)}.maint-chip.active{background:var(--blue);color:#fff;border-color:var(--blue)}.maint-tbl-wrap{overflow-x:auto}.maint-tbl{width:100%;border-collapse:collapse;font-size:13px}.maint-tbl th{text-align:left;padding:8px 12px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);border-bottom:2px solid var(--border);cursor:pointer;user-select:none;white-space:nowrap}.maint-tbl th:hover{color:var(--text)}.maint-tbl th.sorted{color:var(--blue)}.maint-tbl td{padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap;vertical-align:middle}.maint-tbl .tc{text-align:center}.maint-tbl-row{cursor:pointer;transition:background .1s}.maint-tbl-row:hover,.maint-tbl-row.expanded{background:var(--surface)}.maint-tbl-row.row-resolved{opacity:.6}.maint-expand-row{display:none}.maint-expand-row.show{display:table-row}.maint-expand-row td{padding:0 12px 12px;background:var(--surface);border-bottom:2px solid var(--border)}.maint-expand-content{display:flex;flex-direction:column;gap:6px;font-size:13px;padding:4px 0}.maint-photo-note{font-size:12px;color:var(--muted);font-style:italic}.maint-expand-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:4px}.maint-count{font-size:12px;color:var(--muted);padding:4px 0}@media(max-width:768px){.maint-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.maint-filter-bar{flex-direction:column;align-items:stretch}}.bays-step1-hero{display:flex;flex-direction:column;align-items:center;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:48px 24px;margin:4px 0 20px;text-align:center;gap:16px}.bays-hero-logo{max-height:120px;max-width:240px;object-fit:contain}.bays-hero-title{font-size:20px;font-weight:700}.bays-hero-desc{font-size:13px;color:var(--muted);max-width:340px;line-height:1.5;margin:0}.bays-compact-logo{height:36px;width:auto;object-fit:contain}.field-map-label{background:#ffffffe0;border:none!important;box-shadow:0 1px 3px #00000040;border-radius:4px;padding:2px 6px!important;font-size:11px;font-weight:700;color:#0f172a;white-space:nowrap;pointer-events:none}.field-map-label:before{display:none!important}.hide-field-labels .field-map-label{display:none!important}.schedule-map-view{display:flex;flex-direction:column;height:calc(100vh - 92px);max-width:none}.map-body{flex:1;display:flex;min-height:0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);position:relative;--panel-w: 460px}.map-body .map-canvas{flex:1;min-width:0;transition:flex .25s ease}.map-resize-handle{position:absolute;top:0;bottom:0;right:var(--panel-w);width:10px;margin-right:-5px;z-index:5;cursor:col-resize;touch-action:none;display:none}.map-body--panel-open .map-resize-handle{display:block}.map-resize-handle:before{content:"";position:absolute;left:4px;top:50%;width:2px;height:42px;margin-top:-21px;border-radius:2px;background:var(--border);transition:background .12s,width .12s}.map-resize-handle:hover:before{background:var(--blue);width:3px;left:3.5px}.map-body--resizing{cursor:col-resize;user-select:none}.map-body--resizing .map-side-panel,.map-body--resizing .map-side-panel-inner,.map-body--resizing .map-canvas{transition:none}.map-side-panel{width:0;overflow:hidden;background:var(--card);border-left:1px solid var(--border);transition:width .25s ease;display:flex;flex-direction:column;position:relative}.map-side-panel--open{width:var(--panel-w)}.map-side-panel-inner{width:var(--panel-w);padding:16px 18px;overflow-y:auto;flex:1;font-size:13px}.map-panel-capacity{font-size:11px;font-weight:700;letter-spacing:.01em;color:var(--green);background:#22c55e21;border-radius:999px;padding:2px 9px;white-space:nowrap}.map-panel-capacity-full{color:var(--danger);background:#ef444421}.map-side-panel-close{position:absolute;top:8px;right:8px;z-index:2;background:var(--card);border:1px solid var(--border);border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:15px;color:var(--muted);box-shadow:0 1px 3px #0000001f;line-height:1}.map-side-panel-close:hover{color:var(--text);background:var(--bg)}@media(max-width:767px){.map-body{flex-direction:column}.map-resize-handle{display:none!important}.map-side-panel{width:100%!important;border-left:none;border-top:1px solid var(--border);position:absolute;bottom:0;left:0;right:0;max-height:0;height:auto;transition:max-height .3s ease;z-index:1000;box-shadow:0 -4px 16px #0000001f}.map-side-panel--open{max-height:55vh}.map-side-panel-inner{width:auto;max-height:calc(55vh - 2px)}.map-side-panel-close{top:10px;right:10px}}.leaflet-control-layers .leaflet-control-layers-toggle{width:auto!important;height:32px!important;background-position:9px center!important;background-size:18px 18px!important;padding:0 11px 0 32px!important;font:600 12px/32px system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#333;text-decoration:none;white-space:nowrap}.leaflet-control-layers .leaflet-control-layers-toggle:after{content:"Map style \25be"}.map-options-wrap{position:relative}.map-options-btn{font-weight:700}.map-options-btn .nav-dd-caret{font-size:9px;opacity:.85;margin-left:1px}.map-options-panel{display:none;position:absolute;top:calc(100% + 6px);right:0;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 16px #00000024;width:268px;padding:11px 13px;z-index:1002}.map-options-panel.open{display:block}[data-theme=dark] .map-options-panel{box-shadow:0 4px 16px #0006}.map-opt-head{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 7px}.map-opt-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0;font-size:13px;color:var(--text)}.map-opt-divider{height:1px;background:var(--border);margin:11px 0}.map-opt-seg{display:flex;width:100%}.map-opt-seg .btn{flex:1;justify-content:center;text-align:center;padding:6px 4px;font-size:11px;font-weight:600;min-width:0}.season-state-label--clickable{cursor:pointer;transition:background .15s,border-color .15s}.season-state-label--clickable:hover{background:#ffffff40;border-color:#fff6}.season-state-chevron{margin-left:4px;font-size:10px;opacity:.7}.season-info-modal{max-width:500px}.si-body{padding:16px 20px;display:flex;flex-direction:column;gap:10px}.si-phase-card{border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px;background:var(--card);transition:border-color .15s}.si-phase-card.si-phase-current{border-color:var(--blue);background:var(--blue-lt);box-shadow:0 0 0 1px var(--blue)}.si-phase-card.si-phase-past{opacity:.5}.si-phase-header{display:flex;align-items:center;justify-content:space-between}.si-phase-label{font-size:14px;font-weight:700;color:var(--text)}.si-phase-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--blue);background:var(--card);padding:2px 8px;border-radius:10px;border:1px solid var(--blue)}.si-phase-dates{font-size:12px;color:var(--muted);margin-top:4px;font-weight:500}[data-theme=dark] .si-phase-current .si-phase-dates{color:#ffffffb3}.si-phase-desc{font-size:13px;color:var(--text);margin-top:6px;line-height:1.45}.si-note{display:flex;align-items:flex-start;gap:8px;margin-top:4px;padding:10px 12px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);font-size:12px;color:var(--muted);line-height:1.45}.si-note .icon{flex-shrink:0;margin-top:1px}.si-note .icon svg{width:14px;height:14px;color:var(--blue)}.bays-sync-chip{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap}.bays-sync-chip-ok{background:var(--green-lt);color:var(--green)}.bays-sync-chip-diff{background:var(--amber-lt);color:var(--amber)}.bays-diff-trigger{cursor:pointer;transition:background .1s}.bays-diff-trigger:hover td{background:var(--surface)}.bays-diff-chevron{display:inline-block;font-size:12px;color:var(--muted);transition:transform .15s;margin-left:4px}.bays-diff-row td{padding:0 14px 12px 42px;border-top:none}.bays-diff-panel{background:color-mix(in srgb,var(--amber) 5%,transparent);border-left:3px solid var(--amber);border-radius:0 var(--radius) var(--radius) 0;padding:10px 14px;margin-bottom:2px}.bays-diff-item{display:flex;align-items:baseline;gap:8px;font-size:12px;padding:3px 0}.bays-diff-label{font-weight:600;color:var(--muted);min-width:90px;flex-shrink:0}.bays-diff-old{color:var(--muted);text-decoration:line-through}.bays-diff-arrow{color:var(--muted);flex-shrink:0}.bays-diff-new{font-weight:500;color:var(--text)}.bays-typeahead-wrap{position:relative;margin-top:3px}.bays-typeahead-input{width:180px;padding:3px 7px;font-size:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);outline:none}.bays-typeahead-input:focus{border-color:var(--blue)}.bays-typeahead-results{position:absolute;left:0;top:100%;z-index:20;width:280px;max-height:180px;overflow-y:auto;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 12px #00000026;display:none}.bays-typeahead-item{padding:6px 10px;cursor:pointer;font-size:12px;display:flex;align-items:center;gap:6px}.bays-typeahead-item:hover{background:var(--surface)}.bays-typeahead-empty{padding:8px 10px;font-size:12px;color:var(--muted);font-style:italic}.bays-fuzzy-chip{display:inline-flex;align-items:center;gap:3px;font-size:11px;padding:3px 8px;margin-top:3px;background:color-mix(in srgb,var(--blue) 8%,transparent);border:1px solid color-mix(in srgb,var(--blue) 25%,transparent);border-radius:var(--radius);cursor:pointer;color:var(--blue);transition:background .1s}.bays-fuzzy-chip:hover{background:color-mix(in srgb,var(--blue) 14%,transparent)}.preview-summary{padding:0 0 12px;border-bottom:1px solid var(--border);margin-bottom:12px}.preview-summary-title{font-weight:700;font-size:14px}.preview-summary-range{font-size:12px;color:var(--muted);margin-top:2px}.preview-warning{background:color-mix(in srgb,var(--amber) 12%,transparent);border:1px solid var(--amber);border-radius:var(--radius);padding:8px 12px;font-size:12px;color:var(--amber);margin-bottom:12px;display:flex;align-items:center;gap:6px}.preview-warning svg{flex-shrink:0}.preview-clear{text-align:center;padding:16px 0;color:var(--green)}.preview-clear-icon{margin-bottom:4px}.preview-clear-icon svg{width:32px;height:32px}.preview-conflicts-header{font-weight:600;font-size:13px;margin-bottom:8px;display:flex;align-items:center;gap:6px}.preview-conflicts-badge{background:var(--amber);color:#fff;font-size:11px;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}.preview-conflict-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.preview-conflict-row{display:flex;gap:10px;padding:6px 8px;background:var(--surface);border-radius:var(--radius);font-size:12px}.preview-conflict-date{font-weight:600;min-width:70px;flex-shrink:0}.preview-conflict-detail{color:var(--text-secondary);line-height:1.5}.preview-conflict-icon{display:inline-flex;vertical-align:middle;margin-right:2px}.preview-conflict-icon svg{width:14px;height:14px}.preview-conflicts-footer{font-size:12px;color:var(--muted);margin-top:8px}.patterns-day-header{text-align:center}.patterns-td{padding:4px 6px;vertical-align:top}.patterns-td .entry-chip{margin-bottom:4px}.patterns-td .entry-chip:last-child{margin-bottom:0}.chip-excl-badge{display:inline-flex;align-items:center;margin-left:auto;flex-shrink:0;opacity:.7}.chip-excl-badge svg{width:10px;height:10px}.gcw-row{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;transition:border-color .12s,background .12s}.gcw-row.empty{border-style:dashed;background:transparent}.gcw-row.changed{border-color:var(--blue);background:#3b82f614}.gcw-row-hint{font-size:11px;color:var(--muted);margin-top:4px}.gcw-row-hint.past{color:#dc2626}[data-theme=dark] .gcw-row-hint.past{color:#fca5a5}.field-toggle-chip.gcw-current{border-color:#14b8a6}.field-toggle-chip.gcw-current.selected{background:#14b8a6;border-color:#14b8a6}.field-toggle-chip.gcw-current-blocked{border-color:#14b8a6;border-style:dashed;opacity:.45;cursor:not-allowed}.field-toggle-chip.gcw-original{border-style:dashed;opacity:.55;cursor:not-allowed}.field-toggle-chip.gcw-bumpable{border-color:var(--amber)}.field-toggle-chip.gcw-blocked{opacity:.45;border-style:dashed;cursor:not-allowed}.gcw-chip-badge{display:inline-block;font-size:9px;padding:1px 5px;border-radius:4px;color:#fff;font-weight:700;text-transform:uppercase;margin-left:6px;letter-spacing:.4px}.gcw-chip-badge.current{background:#14b8a6}.gcw-chip-badge.original{background:var(--muted)}.gcw-chip-badge.gcw-chip-badge-suggested{background:#0ea5e9}.field-toggle-chip.gcw-suggested:not(.selected){border-color:#0ea5e9;box-shadow:0 0 0 1px #0ea5e940}.gcw-chip-hint{font-size:10px;color:var(--amber);margin-left:4px}.gcw-chip-hint.own{color:var(--green)}.field-toggle-chip.selected .gcw-chip-hint.own{color:#fffffff5}.field-toggle-chip.selected .gcw-chip-hint{color:#fffffff2}.gcw-suggest-hint{margin-top:10px;padding:8px 10px;border-radius:var(--radius);font-size:12px;display:flex;align-items:center;gap:8px;background:#0ea5e914;border:1px solid rgba(14,165,233,.35);color:#075985}.gcw-suggest-hint strong{font-weight:700}[data-theme=dark] .gcw-suggest-hint{background:#0ea5e924;border-color:#0ea5e98c;color:#7dd3fc}.gcw-banner{padding:10px 12px;border-radius:var(--radius);font-size:12px;margin-bottom:10px;border:1px solid}.gcw-banner.warn-red{background:#dc26261a;color:#991b1b;border-color:#dc262666}[data-theme=dark] .gcw-banner.warn-red{background:#dc262626;color:#fca5a5;border-color:#dc2626}.gcw-banner.warn-amber{background:#d977061a;color:#92400e;border-color:#d9770666}[data-theme=dark] .gcw-banner.warn-amber{background:#d9770626;color:#fcd34d;border-color:var(--amber)}.gcw-banner.ok-green{background:#16a34a1a;color:#166534;border-color:#16a34a66}[data-theme=dark] .gcw-banner.ok-green{background:#16a34a26;color:#86efac;border-color:var(--green)}.gcw-summary{padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--border);font-size:12px}.gcw-summary .gcw-summary-team{font-weight:600;color:var(--text);font-size:13px}.gcw-summary .gcw-summary-orig{color:var(--muted);margin-top:3px;font-size:12px}.gcw-summary .gcw-summary-orig.past{color:#dc2626}[data-theme=dark] .gcw-summary .gcw-summary-orig.past{color:#fca5a5}.gcw-summary .gcw-summary-orig.missing{font-style:italic;color:var(--muted)}.gcw-confirm{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;color:var(--text);margin-top:10px}.gcw-confirm input{margin-top:2px}.gcw-body{min-height:260px;padding:16px 20px}.game-compare-row.gcw-missing{color:var(--muted);font-style:italic;font-size:12px}.game-compare-row.gcw-past{color:#dc2626;font-style:italic;font-size:12px}[data-theme=dark] .game-compare-row.gcw-past{color:#fca5a5}.paged-list-container,.paged-list{display:flex;flex-direction:column}.paged-list-empty{text-align:center;color:var(--muted);padding:40px 16px;font-size:14px}.load-more-wrap{padding:20px 16px 8px;text-align:center;position:relative}.load-more-wrap:before{content:"";position:absolute;left:0;right:0;top:10px;border-top:1px dashed var(--border);z-index:0}.load-more-btn{position:relative;z-index:1;min-width:180px;display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--card);color:var(--blue);border:1.5px solid var(--blue);padding:8px 20px;font-size:13px;font-weight:600;border-radius:999px;box-shadow:var(--shadow);cursor:pointer;transition:background .12s ease,color .12s ease,transform .12s ease}.load-more-btn:hover:not(:disabled){background:var(--blue);color:#fff;transform:translateY(-1px)}.load-more-btn .icon{display:inline-flex}.load-more-btn .icon svg{width:14px;height:14px}.activity-view .activity-chip-bar{display:flex;flex-wrap:wrap;gap:6px;padding:0 0 12px}.activity-day-header{position:sticky;top:var(--header-h);z-index:5;background:var(--surface);padding:8px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:-1px}.load-more-btn:disabled{opacity:.6;cursor:default}.archives-table{width:100%;border-collapse:collapse;margin-top:8px}.archives-table th,.archives-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);font-size:13px}.archives-table th{background:var(--surface);font-weight:600;color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.5px}.archives-table .archive-file{font-family:monospace;font-size:12px}.reservation-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 0;margin-bottom:8px}.reservation-toolbar-title{font-size:18px;font-weight:600;color:var(--text)}.reservation-toolbar-count{color:var(--muted);font-weight:400;margin-left:4px}.reservation-toolbar-spacer{flex:1}.reservation-toolbar-actions{display:flex;align-items:center;gap:6px}.reservation-toolbar-sort-label{font-size:12px;color:var(--muted)}.reservation-sort-select{width:140px}.reservation-sort-select .cs-btn{padding:6px 10px;font-size:12px}.reservation-select-toggle.active{background:var(--blue);color:#fff;border-color:var(--blue)}.reservation-card-v2{background:var(--card);border:1px solid var(--border);border-radius:10px;margin-bottom:10px;overflow:hidden;box-shadow:inset 4px 0 0 var(--_c, var(--muted));transition:border-color .12s ease}.reservation-card-v2.selected{border-color:var(--blue);box-shadow:inset 4px 0 0 var(--_c, var(--blue)),0 0 0 2px #3b82f62e}.reservation-card-header{padding:12px 14px;display:flex;align-items:center;gap:10px;cursor:pointer}.reservation-card-header:hover{background:var(--surface)}.reservation-card-title-col{flex:1;min-width:0}.reservation-card-label{font-weight:600;color:var(--text)}.reservation-card-meta{font-size:12px;color:var(--muted);margin-top:2px}.reservation-swatch{width:28px;height:28px;border-radius:8px;color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.reservation-swatch-sm{width:20px;height:20px;border-radius:5px}.reservation-swatch svg{width:16px;height:16px}.reservation-swatch-sm svg{width:12px;height:12px}.reservation-card-caret{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;color:var(--muted);flex-shrink:0;transition:transform .15s,color .15s}.reservation-card-caret svg{width:14px;height:14px}.reservation-card-header:hover .reservation-card-caret{color:var(--text)}.reservation-card-caret.expanded{transform:rotate(180deg);color:var(--text)}.reservation-card-actions{display:flex;gap:8px;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.reservation-card-actions .btn{flex:0 0 auto}.reservation-card-delete-btn{color:var(--danger);border-color:var(--danger)}.reservation-card-delete-btn:hover{background:#dc262614}.reservation-card-body{padding:10px 14px 12px;background:var(--surface);border-top:1px solid var(--border)}.reservation-card-notes{font-size:12px;color:var(--muted);margin-bottom:8px}.reservation-card-footer{font-size:11px;color:var(--muted);margin-top:8px}.reservation-batch-row{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--card);border:1px solid var(--border);border-radius:6px;margin-bottom:6px;font-size:13px}.reservation-batch-main{flex:1;min-width:0;color:var(--text)}.reservation-batch-summary{color:var(--text)}.reservation-batch-dates{font-size:11px;color:var(--muted);margin-top:2px}.reservation-batch-actions{display:flex;gap:4px}.reservation-chip{padding:2px 8px;border-radius:10px;font-size:11px;background:#3b82f626;color:var(--text)}.reservation-chip-exclusive{background:#dc262626;color:var(--danger)}.reservation-empty-batches{font-size:13px;color:var(--muted);padding:10px 0}.reservation-add-batch-row{margin-top:8px}.reservation-add-batch-btn{background:transparent;color:var(--blue);border:1px dashed var(--border);width:100%;padding:8px;border-radius:6px;cursor:pointer;font-size:13px}.reservation-add-batch-btn:hover{background:#3b82f614;border-color:var(--blue)}.reservation-card-check{width:18px;height:18px;border:2px solid var(--border);border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:transparent;font-size:12px;flex-shrink:0}.reservation-card-v2.selected .reservation-card-check{background:var(--blue);border-color:var(--blue);color:#fff}.color-swatch-row{display:flex;gap:8px;flex-wrap:wrap}.color-swatch{width:32px;height:32px;border-radius:50%;cursor:pointer;border:2px solid transparent;padding:0;background:var(--_c, var(--muted))}.color-swatch.selected{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--_c, var(--blue))}.icon-chip-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.icon-chip{padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer}.icon-chip:hover{background:var(--surface)}.icon-chip.selected{border-color:var(--blue);background:#3b82f61f;color:var(--blue)}.icon-chip svg{width:20px;height:20px}.reservation-group-form .form-group{margin-bottom:14px}.reservation-merge-summary{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin-bottom:12px}.reservation-merge-summary-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}.reservation-merge-source{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.reservation-merge-source-label{font-weight:500;color:var(--text)}.reservation-merge-source-meta{color:var(--muted);font-size:11px}.category-picker{display:flex;flex-direction:column;gap:6px}.category-picker-wrap{position:relative}.category-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);font-size:13px;background:var(--card);color:var(--text);cursor:pointer;text-align:left;font-family:inherit;transition:border-color .15s,box-shadow .15s}.category-picker-trigger:hover{border-color:var(--blue)}.category-picker-trigger:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #3b82f626}.category-picker-trigger.open{border-color:var(--blue);box-shadow:0 0 0 3px #3b82f626}.category-picker-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-picker-label-empty{color:var(--muted)}.category-picker-caret{font-size:10px;color:var(--muted);flex-shrink:0;transition:transform .15s}.category-picker-trigger.open .category-picker-caret{transform:rotate(180deg)}.category-picker-popover{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 4px 16px #00000024;padding:4px 0;z-index:200;max-height:280px;overflow-y:auto}.category-picker-option{padding:7px 12px;cursor:pointer;font-size:13px;color:var(--text);transition:background .08s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-picker-option:hover{background:var(--surface)}.category-picker-option.selected{color:var(--blue);font-weight:600}.category-picker-option-custom{font-style:italic}.category-picker-divider{height:1px;background:var(--border);margin:4px 0}.category-picker-custom-row{display:flex;align-items:center;gap:8px}.category-picker-custom-row[hidden]{display:none}.category-picker-input{flex:1}.category-picker-counter{font-size:11px;color:var(--muted);flex-shrink:0;min-width:50px;text-align:right}.reservation-preview{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:inset 4px 0 0 var(--_c, var(--muted))}.reservation-preview-swatch{width:40px;height:40px;border-radius:10px;color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--_c, var(--muted));transition:background .12s}.reservation-preview-swatch svg{width:22px;height:22px}.reservation-preview-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.reservation-preview-label{font-weight:600;color:var(--text);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reservation-preview-category{font-size:12px;font-weight:600;letter-spacing:.2px;color:var(--_c, var(--muted));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reservation-preview-placeholder{color:var(--muted);font-style:italic;font-weight:400}.reservation-card-category{font-size:12px;font-weight:600;line-height:1.2;margin-top:2px;letter-spacing:.2px}@media(max-width:640px){.icon-chip-grid{grid-template-columns:repeat(4,1fr)}}.coach-teams-page{max-width:1600px;margin:0 auto;padding:12px 24px}.coach-teams-page-hdr{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.coach-teams-page-hdr h1{font-size:22px;font-weight:700;margin:0;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coach-teams-empty{background:var(--card);border:1px dashed var(--border);border-radius:10px;padding:32px 20px;text-align:center;color:var(--muted);font-size:13px;line-height:1.6}.coach-teams-empty strong{color:var(--text);font-weight:700}.coach-teams-page-multi .coach-teams-shell{display:grid;grid-template-columns:60px 1fr;gap:8px;align-items:start}.coach-teams-iconrail{display:flex;flex-direction:column;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 0 14px;align-items:center;position:sticky;top:calc(var(--header-h) + 12px);max-height:calc(100vh - var(--header-h) - 24px);overflow-y:auto}.coach-teams-icrow{position:relative;width:100%;display:flex;justify-content:center;cursor:pointer}.coach-teams-icrow.selected:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:28px;background:var(--blue);border-radius:0 4px 4px 0}.coach-teams-icon{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#0f766e,#14b8a6 60%,#2dd4bf);color:#fff;font-size:11px;font-weight:800;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 2px 4px #0000001f;transition:transform .15s,border-radius .15s,box-shadow .15s}.coach-teams-icrow:hover .coach-teams-icon{transform:translateY(-1px);border-radius:9px;box-shadow:0 4px 10px #0000002e}.coach-teams-icrow.selected .coach-teams-icon{border-radius:8px;box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--blue),0 4px 12px #3266cc4d}.coach-teams-icon-glyph{z-index:1;line-height:1}.coach-teams-icon-pending{background:linear-gradient(135deg,#b87a00,#d99617 60%,#f5b800)}.coach-teams-icon-pending .icon svg{width:18px;height:18px;color:#fff}.coach-teams-ic-sc{position:absolute;bottom:-3px;right:-3px;width:16px;height:16px;border-radius:50%;background:var(--blue);color:#fff;border:2px solid var(--surface);font-size:8px;font-weight:800;line-height:1;display:flex;align-items:center;justify-content:center;letter-spacing:0;z-index:2}.coach-teams-icrow-add{margin-top:auto}.coach-teams-ic-add{width:38px;height:38px;border-radius:11px;border:1px dashed var(--border);color:var(--muted);background:var(--card);display:flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s,background .15s}.coach-teams-icrow-add:hover .coach-teams-ic-add{color:var(--blue-h);border-color:var(--blue);background:var(--blue-lt)}[data-theme=dark] .coach-teams-icrow-add:hover .coach-teams-ic-add{background:#3266cc33}.coach-teams-ic-add .icon svg{width:18px;height:18px}.coach-teams-detail{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px 22px}.coach-teams-detail-empty{padding:60px 20px;text-align:center}.coach-teams-detail-empty .muted{color:var(--muted);margin:0;font-size:13px}.coach-team-hero{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:16px}.coach-team-hero-titles{flex:1;min-width:0}.coach-team-hero-titles h2{margin:0 0 6px;font-size:22px;font-weight:800;line-height:1.05;color:var(--text)}.coach-team-hero-actions{display:flex;gap:6px;flex-shrink:0;flex-wrap:wrap}.detail-meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.detail-meta .pill{display:inline-flex;align-items:center;gap:4px;background:var(--surface);color:var(--muted);border-radius:999px;padding:2px 9px;font-size:11px;font-weight:600}.detail-meta .pill-travel,.detail-meta .pill-intown{background:color-mix(in srgb,var(--my-event) 16%,var(--card));color:var(--my-event)}[data-theme=dark] .detail-meta .pill-travel,[data-theme=dark] .detail-meta .pill-intown{background:#2dd4bf2e;color:var(--my-event)}.detail-meta .pill-sc{background:var(--blue-lt);color:var(--blue-h)}[data-theme=dark] .detail-meta .pill-sc{background:#3266cc47;color:var(--blue-h)}.detail-meta .pill-bays{background:var(--card);color:var(--blue-h);border:1px solid var(--blue);cursor:pointer;text-decoration:none;font-weight:700}.detail-meta .pill-bays:hover{background:var(--blue-lt)}[data-theme=dark] .detail-meta .pill-bays:hover{background:#3266cc47}.detail-meta .pill-bays .arr{font-size:10px;margin-left:2px}.div-pane-card-hdr{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.div-pane-card-acts{display:flex;gap:6px;flex-wrap:wrap}.detail-act-short{display:none}.btn-outline-danger{border-color:var(--danger);color:var(--danger)}.btn-outline-danger:hover:not(:disabled){background:var(--danger-lt);border-color:var(--danger);color:var(--danger)}[data-theme=dark] .btn-outline-danger:hover:not(:disabled){background:#fb71851f}.btn-outline .icon svg,.btn-outline-danger .icon svg{width:13px;height:13px}.btn-practice{background:var(--card);color:var(--blue-h);border:1px solid var(--blue);transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.btn-practice:hover:not(:disabled){background:var(--blue);color:#fff;border-color:var(--blue);transform:translateY(-1px);box-shadow:0 4px 12px #3266cc4d}[data-theme=dark] .btn-practice:hover:not(:disabled){box-shadow:0 4px 14px #3266cc80}.btn-practice .icon svg{width:13px;height:13px}.btn-practice-adhoc{background:var(--card);color:var(--purple);border:1px solid var(--purple);transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.btn-practice-adhoc:hover:not(:disabled){background:var(--purple);color:#fff;border-color:var(--purple);transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed4d}[data-theme=dark] .btn-practice-adhoc:hover:not(:disabled){color:#fff;box-shadow:0 4px 14px #a78bfa80}.btn-practice-adhoc .icon svg{width:13px;height:13px}.coach-teams-detail .div-pane-upcoming{margin-top:18px}.div-upc-mobile-toggle{display:flex;justify-content:flex-end;margin-bottom:8px}.pattern-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.pattern-day{background:var(--card);border:1px solid var(--border);border-radius:7px;padding:8px 4px 7px;min-height:62px;display:flex;flex-direction:column;gap:2px;align-items:center}.pattern-day.off{opacity:.55}.pattern-day.on{background:var(--blue-lt);border-color:var(--blue)}[data-theme=dark] .pattern-day.on{background:#3266cc2e}.pattern-day-lab{font-size:10px;font-weight:700;color:var(--muted);letter-spacing:.04em}.pattern-day.on .pattern-day-lab{color:var(--blue-h)}.pattern-day-link{cursor:pointer;transition:background .12s,border-color .12s,transform .12s,box-shadow .12s}.pattern-day-link:hover{background:#3266cc38;border-color:var(--blue-h);transform:translateY(-1px);box-shadow:0 3px 8px #3266cc2e}[data-theme=dark] .pattern-day-link:hover{background:#3266cc52;box-shadow:0 3px 10px #3266cc66}.pattern-pill{display:flex;flex-direction:column;align-items:center;gap:1px;margin-top:3px;border-radius:4px;padding:2px 4px}.pattern-pill-link{cursor:pointer;transition:background .12s}.pattern-pill-link:hover{background:#3266cc1f}[data-theme=dark] .pattern-pill-link:hover{background:#3266cc40}.pattern-pill-t{font-size:11px;font-weight:700;color:var(--blue-h);line-height:1.1}.pattern-pill-f{font-size:9px;color:var(--blue-h);opacity:.85;line-height:1.05;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis}.detail-roster{display:flex;flex-direction:column;gap:2px}.detail-roster-row{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:7px;font-size:13px;color:var(--text);flex-wrap:wrap}.detail-roster-row.you-row{background:var(--blue-lt)}[data-theme=dark] .detail-roster-row.you-row{background:#3266cc2e}.detail-roster-av{width:30px;height:30px;border-radius:50%;background:var(--surface);border:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center;flex-shrink:0}.detail-roster-row.you-row .detail-roster-av{background:var(--blue-lt);color:var(--blue-h);border-color:var(--blue)}[data-theme=dark] .detail-roster-row.you-row .detail-roster-av{background:#3266cc47}.detail-roster-nm{font-weight:600}.detail-roster-role{color:var(--muted);font-size:12px}.detail-roster-ct{color:var(--muted);font-size:11px;margin-left:auto}.detail-roster-sc{font-size:9px;padding:1px 6px;border-radius:4px;background:var(--blue-lt);color:var(--blue-h);font-weight:700}[data-theme=dark] .detail-roster-sc{background:#3266cc47}.detail-roster-actions{display:none;margin-left:auto;gap:6px;flex-shrink:0}.detail-roster-act{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--surface);border:1px solid var(--border);color:var(--blue-h);text-decoration:none;transition:background .12s,border-color .12s}.detail-roster-act:hover{background:var(--blue-lt);border-color:var(--blue)}[data-theme=dark] .detail-roster-act:hover{background:#3266cc47}.detail-roster-act .icon svg{width:15px;height:15px}.detail-roster-row-pending{opacity:.92}.detail-roster-av-pending{background:transparent;border:1.5px dashed var(--border);color:var(--muted)}.detail-roster-av-pending .icon svg{width:14px;height:14px}.detail-roster-nm-pending{font-weight:500;color:var(--muted);font-style:italic}.detail-roster-pending-pill{margin-left:auto;display:inline-flex;align-items:center;border-radius:999px;padding:2px 9px;font-size:10px;font-weight:700;background:var(--amber-lt);color:var(--amber);border:1px dashed var(--amber);white-space:nowrap}[data-theme=dark] .detail-roster-pending-pill{background:#d977062e;color:var(--amber)}.detail-pending{text-align:center;padding:36px 20px}.detail-pending .pending-glyph{color:var(--amber);margin-bottom:8px}.detail-pending .pending-glyph .icon svg{width:36px;height:36px}.detail-pending h2{margin:4px 0 6px;font-size:18px;font-weight:700;color:var(--text)}.detail-pending p{margin:0 auto 16px;max-width:360px;font-size:13px;color:var(--muted)}.btn-amber-ghost{background:var(--card);color:var(--amber);border:1px solid var(--amber)}.btn-amber-ghost:hover:not(:disabled){background:var(--amber-lt)}[data-theme=dark] .btn-amber-ghost:hover:not(:disabled){background:#a87b1433}@media(max-width:767px){.coach-teams-page{padding:10px 12px}.coach-teams-page-hdr{margin-bottom:10px}.coach-teams-page-hdr h1{font-size:18px}.coach-teams-page-hdr .btn-primary{padding:6px 10px;font-size:12px}.coach-teams-page-multi .coach-teams-shell{display:flex;flex-direction:column;gap:10px}.coach-teams-iconrail{flex-direction:row;align-items:center;padding:10px;gap:10px;position:static;max-height:none;overflow-x:auto;overflow-y:hidden}.coach-teams-icrow{width:auto;flex-shrink:0}.coach-teams-icrow.selected:before{left:50%;top:auto;bottom:-8px;transform:translate(-50%);width:24px;height:3px;border-radius:2px 2px 0 0}.coach-teams-icrow.selected .coach-teams-icon{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--blue),0 4px 10px #3266cc40}.coach-teams-icrow-add{margin-top:0;margin-left:auto}.coach-teams-detail{padding:14px}.coach-team-hero{gap:10px;padding-bottom:12px;margin-bottom:12px}.coach-team-hero-titles h2{font-size:18px}.coach-team-hero-actions{width:100%;order:99}.coach-team-hero-actions>.btn{flex:1;justify-content:center}.detail-meta .detail-meta-sc{display:none}.div-pane-card-acts>.btn{flex:1;justify-content:center}.detail-act-full{display:none}.detail-act-short{display:inline}.pattern-day{padding:6px 2px;min-height:58px}.pattern-day-lab{font-size:9px}.pattern-pill-t{font-size:10px}.pattern-pill-f{font-size:8px}.detail-roster-row{padding:6px 8px;gap:8px;font-size:12px;flex-wrap:nowrap}.detail-roster-av{width:26px;height:26px;font-size:10px}.detail-roster-nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.detail-roster-role{font-size:11px;white-space:nowrap;flex-shrink:0}.detail-roster-ct{display:none}.detail-roster-actions{display:inline-flex}}.pill--external,.badge--external{display:inline-block;padding:1px 7px;margin-left:6px;font-size:11px;font-weight:600;line-height:1.4;border-radius:10px;background:#d977061f;color:var(--amber);vertical-align:middle;white-space:nowrap;border:1px solid rgba(217,119,6,.32)}[data-theme=dark] .pill--external,[data-theme=dark] .badge--external{background:#fbbf2429;color:var(--amber);border-color:#fbbf2457}.focus-pulse{animation:focus-pulse 2.4s ease-out 1}@keyframes focus-pulse{0%,55%{background-color:#2563eb33}to{background-color:transparent}}.ftl-row{border:2px solid var(--border);border-radius:8px;padding:9px 11px;margin-bottom:7px;transition:border-color .12s,background .12s}.ftl-row.ftl-interactive{cursor:pointer}.ftl-row.ftl-interactive:hover{border-color:var(--blue)}.ftl-row.ftl-selected{border-color:var(--blue);background:#3b82f614}.ftl-row.ftl-blocked{opacity:.6}.ftl-head{display:flex;align-items:center;gap:7px;font-size:13px}.ftl-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.ftl-dot-open{background:var(--green)}.ftl-dot-events{background:var(--amber)}.ftl-dot-blocked{background:var(--danger)}.ftl-name{font-weight:600;flex:1}.ftl-chev{font-size:9px;color:var(--muted)}.ftl-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;white-space:nowrap}.ftl-badge-open{background:#16a34a26;color:var(--green)}.ftl-badge-practices{background:#d9770626;color:var(--amber)}.ftl-badge-blocked{background:#dc26261f;color:var(--danger)}.ftl-badge-suggested{background:#0ea5e929;color:var(--blue);border:1px solid rgba(14,165,233,.4)}.ftl-badge-external{background:#64748b26;color:var(--muted);border:1px solid rgba(100,116,139,.3)}.ftl-badge-mismatch{background:#e11d481f;color:var(--danger);border:1px solid rgba(225,29,72,.32)}.ftl-badge-format{background:#64748b26;color:var(--muted);border:1px solid rgba(100,116,139,.3)}.ftl-bar{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:4px;margin-top:7px}.ftl-band{position:absolute;top:0;bottom:0;background:#3b82f612;z-index:0}.ftl-guide{position:absolute;top:0;bottom:0;width:0;border-left:2px dashed var(--blue);z-index:6}.ftl-lane{position:relative;height:26px}.ftl-lane+.ftl-lane{margin-top:4px}.ftl-reqlane{position:relative;height:22px}.ftl-reqlane.ftl-reqlane-gap{margin-bottom:5px}.ftl-reqpill{position:absolute;top:0;bottom:0;border-radius:5px;z-index:2;background:var(--blue);display:flex;align-items:center;padding:0 9px;box-shadow:0 1px 3px #00000040;overflow:hidden}.ftl-reqpill-txt{font-size:10px;font-weight:800;color:#fff;white-space:nowrap;letter-spacing:.3px}.ftl-warmup{position:absolute;top:0;bottom:0;z-index:1;border-radius:5px 0 0 5px;background:repeating-linear-gradient(-45deg,#3b82f64d 0 4px,#3b82f61f 4px 8px);border:1px dashed var(--blue)}.ftl-clear{font-size:11px;color:var(--green);font-weight:600;padding:3px 4px 0}.ftl-ev{position:absolute;top:0;bottom:0;border-radius:4px;z-index:2;display:flex;overflow:hidden;min-width:16px;transition:box-shadow .12s,filter .12s,opacity .12s}.ftl-row.ftl-interactive .ftl-ev{cursor:pointer}.ftl-ev-game{background:#dc262657;border:1px solid rgba(220,38,38,.55)}.ftl-ev-prac{background:#16a34a52;border:1px solid rgba(22,163,74,.5)}.ftl-ev-resv{background:#a855f752;border:1px solid rgba(168,85,247,.55)}[data-theme=dark] .ftl-ev-game{background:#fb71854d;border-color:#fb71858c}[data-theme=dark] .ftl-ev-prac{background:#4ade8042;border-color:#4ade8080}[data-theme=dark] .ftl-ev-resv{background:#c084fc4d;border-color:#c084fc8c}.ftl-ev-num{display:flex;align-items:center;padding:0 6px;font-weight:800;font-size:11px;color:var(--text);background:#ffffff9e;border-right:1px solid rgba(0,0,0,.12);flex-shrink:0}[data-theme=dark] .ftl-ev-num{background:#0006;color:#f4f4f8;border-right-color:#ffffff24}.ftl-ev-body{display:flex;align-items:center;padding:0 6px;font-size:11px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden}.ftl-labels{display:flex;flex-direction:column;gap:3px;margin-top:7px}.ftl-lbl{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);padding:3px 5px;border-radius:5px;border-left:3px solid transparent;transition:background .12s,color .12s,border-color .12s,opacity .12s}.ftl-row.ftl-interactive .ftl-lbl{cursor:pointer}.ftl-lbl-num{flex-shrink:0;width:19px;height:19px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:11px;border-radius:5px;background:var(--surface);border:1px solid var(--border);color:var(--text)}.ftl-lbl-time{font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.ftl-lbl-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ftl-accent-own{display:inline-block;margin-left:6px;padding:1px 7px;font-size:10px;font-weight:600;line-height:1.4;color:var(--my-event);background:#0d94881f;border:1px solid rgba(13,148,136,.35);border-radius:10px;letter-spacing:.2px}.ftl-swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0}.ftl-sw-game{background:var(--danger)}.ftl-sw-prac{background:var(--green)}.ftl-sw-resv{background:#a855f7}.ftl-lbl-req .ftl-lbl-num{background:var(--blue);border-color:var(--blue);color:#fff}.ftl-lbl-req .ftl-lbl-name{color:var(--text);font-weight:600}.ftl-bar.ftl-hovering .ftl-ev:not(.ftl-hl){opacity:.3}.ftl-labels.ftl-hovering .ftl-lbl:not(.ftl-hl):not(.ftl-lbl-req){opacity:.4}.ftl-ev.ftl-hl{box-shadow:inset 0 0 0 2.5px var(--ftl-invert-bg),0 2px 6px #0000004d;filter:brightness(1.12);z-index:5}.ftl-lbl.ftl-hl{background:var(--ftl-invert-bg);color:var(--ftl-invert-ink)}.ftl-lbl.ftl-hl .ftl-lbl-time{color:var(--ftl-invert-ink)}.ftl-lbl.ftl-hl.ftl-t-game{border-left-color:var(--danger)}.ftl-lbl.ftl-hl.ftl-t-prac{border-left-color:var(--green)}.ftl-lbl.ftl-hl.ftl-t-resv{border-left-color:#a855f7}.ftl-lbl.ftl-hl .ftl-lbl-num{background:var(--ftl-invert-ink);color:var(--ftl-invert-bg);border-color:transparent}.ftl-status-info{font-size:11px;margin-top:6px}.ftl-status-info.ftl-info-warn{color:var(--amber)}.ftl-status-info.ftl-info-ok{color:var(--green)}.ftl-status-info.ftl-info-blocked{color:var(--danger)}.mode-pills{display:flex;gap:6px;margin-bottom:14px}.mode-pill{padding:6px 14px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:13px;font-weight:500;border-radius:999px;cursor:pointer;transition:background .1s,color .1s,border-color .1s}.mode-pill:hover{color:var(--text)}.mode-pill.selected{background:var(--blue);color:#fff;border-color:var(--blue)}.dtl-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:10px}.dtl-seg{display:inline-flex;background:var(--card);border:1px solid var(--border);border-radius:8px;overflow:hidden}.dtl-seg-btn{appearance:none;border:0;background:transparent;padding:7px 13px;font:600 12.5px/1 inherit;color:var(--muted);cursor:pointer}.dtl-seg-btn.on{background:var(--text);color:var(--card)}.dtl-stage{display:block}.dtl-frame{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:6px;min-width:0;box-shadow:var(--shadow)}.dtl-scroll{overflow-x:auto;overflow-y:hidden;border-radius:7px;min-width:0}.dtl-scroll::-webkit-scrollbar{height:11px}.dtl-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:7px;border:3px solid var(--card)}.dtl-tl{width:max-content;min-width:100%}.dtl-empty{padding:34px 12px;text-align:center;color:var(--muted);font-size:13px}.dtl-axis{display:flex;position:sticky;top:0;z-index:6;height:24px}.dtl-axis-lbl{position:sticky;left:0;z-index:7;flex:0 0 140px;width:140px;background:var(--card)}.dtl-axis-plot{position:relative;background:var(--card)}.dtl-tick{position:absolute;top:5px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.dtl-body{position:relative}.dtl-row{display:flex;border-top:1px solid var(--border)}.dtl-row:last-child{border-bottom:1px solid var(--border)}.dtl-row-lbl{position:sticky;left:0;z-index:3;flex:0 0 140px;width:140px;background:var(--card);padding:6px 10px 6px 6px;display:flex;flex-direction:column;justify-content:center;box-shadow:1px 0 0 var(--border)}.dtl-cn{font-weight:700;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.dtl-cn:hover{text-decoration:underline}.dtl-cf{font-size:10px;color:var(--muted)}.dtl-row-lbl.is-closed .dtl-cn{color:var(--muted)}.dtl-badge{display:inline-block;margin-left:5px;font-size:9px;font-weight:700;padding:1px 5px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--muted);vertical-align:middle}.dtl-badge-closed{border-style:dashed}.dtl-row-plot{position:relative}.dtl-row.is-closed .dtl-row-plot{background:repeating-linear-gradient(135deg,transparent,transparent 8px,rgba(128,128,128,.08) 8px,rgba(128,128,128,.08) 16px),var(--util-closed)}.dtl-row.is-free .dtl-row-plot{background:var(--util-empty)}.dtl-ev{position:absolute;border-radius:5px;padding:2px 6px;overflow:hidden;font-size:11px;line-height:1.25;border:1px solid;cursor:pointer;display:flex;align-items:center;gap:3px;transition:opacity .08s,box-shadow .08s,transform .06s}.dtl-ev-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dtl-ev-icon{display:inline-flex;align-items:center;flex:0 0 auto;opacity:.85}.dtl-ev-icon svg{width:11px;height:11px;display:block}.dtl-ev-prac{background:var(--blue-lt);border-color:var(--blue);color:var(--blue)}[data-theme=dark] .dtl-ev-prac{color:#dbeafe}.dtl-ev-adhoc{background:var(--purple-lt);border-color:var(--purple);color:var(--purple)}[data-theme=dark] .dtl-ev-adhoc{color:#ede9fe}.dtl-ev-game{background:var(--green-lt);border-color:var(--green);color:#15803d}[data-theme=dark] .dtl-ev-game{color:#dcfce7}.dtl-ev-resv{background:var(--purple-lt);border-color:var(--purple);color:var(--purple)}[data-theme=dark] .dtl-ev-resv{color:#ede9fe}.dtl-ev-tentative{background:var(--amber-lt);border-color:var(--amber);color:#b45309;border-style:dashed}[data-theme=dark] .dtl-ev-tentative{color:#fef3c7}.dtl-ev-ghost{background:var(--surface);border:1.5px dashed var(--border);color:var(--muted);opacity:.7}.dtl-ev-warm{background:repeating-linear-gradient(135deg,var(--green-lt),var(--green-lt) 4px,var(--card) 4px,var(--card) 8px);border-color:var(--green);color:var(--green);opacity:.7;cursor:default}.dtl-ev-warm.warm-fused{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none;opacity:.8}.dtl-ev-game.has-warm{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none}[data-theme=dark] .dtl-ev-warm{background:repeating-linear-gradient(135deg,rgba(255,255,255,.12) 0 5px,transparent 5px 10px),linear-gradient(180deg,#1f7a44,#155a31);color:#fff;opacity:.92}[data-theme=dark] .dtl-ev-warm .dtl-ev-name{color:#fff}.dtl-ev.mine{box-shadow:inset 3px 0 0 var(--my-event)}.dtl-ev.conf{border-color:var(--danger);box-shadow:0 0 0 1.5px var(--danger)}.dtl-ev.crossed{box-shadow:0 0 0 2px var(--cyan),0 4px 10px #00000038;z-index:5}.dtl-ev.conf.crossed{box-shadow:0 0 0 2px var(--danger),0 4px 10px #00000038}.dtl-ev.focusbar{transform:translateY(-1px);box-shadow:0 0 0 2px var(--text),0 6px 14px #00000038;z-index:7}.dtl-body.dim .dtl-ev:not(.crossed){opacity:.24}.dtl-ov{position:absolute;left:140px;top:0;bottom:0;pointer-events:none;z-index:2}.dtl-vgl{position:absolute;top:0;bottom:0;border-left:1px solid var(--border);opacity:.45}.dtl-scrub{position:absolute;top:0;bottom:0;width:0;border-left:2px solid var(--cyan);display:none}.dtl-scrub:before{content:attr(data-t);position:absolute;top:-22px;left:50%;transform:translate(-50%);font-size:11px;font-weight:700;color:#fff;background:var(--cyan);border-radius:4px;padding:1px 5px;font-variant-numeric:tabular-nums;white-space:nowrap}[data-theme=dark] .dtl-scrub:before{color:#04222b}.dtl-scrub.pinned{border-left-width:2.5px}.dtl-scrub.pinned:before{content:"\1f4cc  " attr(data-t);background:var(--text);color:var(--card)}.dtl-now{position:absolute;top:0;bottom:0;width:0;border-left:2px dashed var(--danger)}.dtl-now-lbl{position:absolute;bottom:2px;left:3px;font-size:9px;font-weight:800;color:var(--danger);background:var(--card);padding:0 3px}.dtl-xs{margin-top:14px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:13px 16px 15px;box-shadow:var(--shadow)}.dtl-xs-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;padding-bottom:11px;border-bottom:1px solid var(--border)}.dtl-xs-mode{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--cyan);align-self:center}.dtl-xs-mode.is-now{color:var(--danger)}.dtl-xs-mode.is-pin{color:var(--text)}.dtl-xs-time{font-size:25px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.dtl-xs-sum{font-size:12px;color:var(--muted)}.dtl-xs-hint{font-size:11px;color:var(--cyan);font-weight:600;margin-left:auto}.dtl-xs-conf{display:flex;gap:6px;align-items:center;background:var(--danger-lt);color:var(--danger);font-size:12px;font-weight:600;border-radius:6px;padding:6px 9px;margin-top:11px}[data-theme=dark] .dtl-xs-conf{color:#fecaca}.dtl-xs-grid{margin-top:11px;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:9px}.dtl-xs-row{display:flex;flex-direction:column;gap:5px;padding:9px 11px;background:var(--surface);border:1px solid var(--border);border-radius:8px}.dtl-xs-fname{display:flex;align-items:baseline;gap:8px;width:100%;font-size:12px;font-weight:700;line-height:1.3}.dtl-xs-cap{margin-left:auto;font-size:10.5px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.dtl-xs-cap.open{color:var(--green)}.dtl-xs-evs{width:100%;display:flex;flex-direction:column;gap:2px}.dtl-xs-ev{display:flex;align-items:center;gap:7px;font-size:12px;border-radius:6px;padding:4px 7px;margin:0 -7px}.dtl-xs-ev.clickable{cursor:pointer;transition:background .08s,box-shadow .08s}.dtl-xs-ev.clickable:hover{background:#0891b21f;box-shadow:inset 3px 0 0 var(--cyan)}[data-theme=dark] .dtl-xs-ev.clickable:hover{background:#22d3ee26}.dtl-xs-icon{display:inline-flex;align-items:center;flex:0 0 auto}.dtl-xs-icon svg{width:13px;height:13px;display:block}.dtl-xs-ic-prac{color:var(--blue)}.dtl-xs-ic-adhoc{color:var(--purple)}.dtl-xs-ic-game{color:var(--green)}.dtl-xs-ic-resv{color:var(--purple)}.dtl-xs-nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dtl-xs-ev.conf .dtl-xs-nm{color:var(--danger);font-weight:700}.dtl-xs-tm{color:var(--muted);font-size:10.5px;margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}.dtl-xs-warmups{margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}.dtl-xs-warmups-hd{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.dtl-xs-warm{display:flex;align-items:center;gap:7px;font-size:12px;padding:3px 0}.dtl-xs-warm .dtl-xs-icon{opacity:.7}.dtl-xs-meta{margin-top:11px;padding-top:10px;border-top:1px solid var(--border);font-size:11.5px;color:var(--muted);line-height:1.9}.dtl-xs-meta b{color:var(--text);font-weight:600}.dtl-chip{display:inline-block;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:0 7px;font-size:10.5px;margin:1px 2px 1px 0}.dtl-chip.free{background:var(--util-empty);border-color:var(--green);color:var(--green)}.dtl-chip.closed{background:var(--util-closed);color:var(--muted)}.dtl-cancelled{margin-top:12px}.dtl-cancelled-toggle{appearance:none;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:7px 12px;font:600 12px/1 inherit;color:var(--muted);cursor:pointer}.dtl-cancelled-toggle.open{color:var(--text)}.dtl-cancelled-list{margin-top:8px;display:flex;flex-direction:column;gap:4px}.dtl-cancelled-row{display:flex;justify-content:space-between;gap:10px;padding:6px 10px;border:1px solid var(--border);border-radius:7px;font-size:12px;cursor:pointer;opacity:.75;text-decoration:line-through}.dtl-cancelled-row:hover{opacity:1}.dtl-cancelled-meta{color:var(--muted)}.season-end-list{max-height:260px;overflow-y:auto;margin-bottom:4px}.season-end-list-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--text);margin-bottom:10px}.season-end-count{background:#dc26261f;color:var(--danger);font-size:11px;font-weight:800;padding:1px 8px;border-radius:10px}.season-end-callout{margin-top:16px;border:1px solid var(--amber);background:#d9770614;border-radius:8px;padding:12px 14px}.season-end-callout h4{margin:0 0 6px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--amber)}.season-end-callout ul{margin:0;padding-left:18px}.season-end-callout li{font-size:13px;line-height:1.55;color:var(--text);margin:3px 0}.season-end-empty{text-align:center;padding:18px 8px}.season-end-empty-icon{color:var(--muted)}.season-end-empty-icon svg{width:32px;height:32px}.season-end-empty p{color:var(--muted);font-size:14px;margin:10px 0 0;line-height:1.5}
/*# sourceMappingURL=/dist/app.4IPB6EES.css.map */
