@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.static{position:static}.isolate{isolation:isolate}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.table-column{display:table-column}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.safe{--twsa-safe-area-inset-top:env(safe-area-inset-top);--twsa-safe-area-inset-right:env(safe-area-inset-right);--twsa-safe-area-inset-bottom:env(safe-area-inset-bottom);--twsa-safe-area-inset-left:env(safe-area-inset-left)}}:root{--twsa-safe-area-inset-top:env(safe-area-inset-top);--twsa-safe-area-inset-right:env(safe-area-inset-right);--twsa-safe-area-inset-bottom:env(safe-area-inset-bottom);--twsa-safe-area-inset-left:env(safe-area-inset-left);color-scheme:light dark;--bg:#f5f1e8;--surface:#fffdf8;--surface-strong:#fff;--text:#10211c;--dim:#5c6b65;--border:#c9d0c8;--accent:#f47321;--court:#073b2f;--court-soft:#0f5747;--court-grain:#5a8a77;--court-line:#fffdf8;--ink-line:#18382f;--neutral:#e8e5dc;--hit-soft:#8ee1be;--miss-soft:#f09a8d;--good:#15765b;--good-bg:#d9f4e8;--low:#b83b31;--low-bg:#fbe2dc;--radius:10px;--shadow:0 10px 35px #10211c1f;--display:"DIN Condensed","Bahnschrift Condensed","Aptos Narrow",ui-sans-serif,system-ui,sans-serif;--body:Aptos,ui-sans-serif,system-ui,sans-serif;--space-surface:var(--surface);--space-surface-alt:var(--surface-strong);--space-muted:var(--dim);--space-border:var(--border);--space-accent:var(--accent)}@media(prefers-color-scheme:dark){:root{--bg:#0d1815;--surface:#14241f;--surface-strong:#1b2f28;--text:#f7f2e7;--dim:#a9b8b1;--border:#355248;--accent:#ff7f2c;--court:#092e27;--court-soft:#155a49;--court-grain:#226454;--court-line:#f7f2e7;--ink-line:#0d201a;--neutral:#d7d4cb;--hit-soft:#78d7b3;--miss-soft:#e9897d;--good:#77dbb8;--good-bg:#173c32;--low:#ff8b7f;--low-bg:#482823;--shadow:0 14px 40px #0000004d}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--body);margin:0}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--accent)60%,transparent)}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px}.app-shell{background:var(--bg);min-height:100vh;padding-bottom:env(safe-area-inset-bottom)}.main-content{width:min(100%,1040px);margin:0 auto;padding:18px 16px 32px}.context-bar{z-index:20;padding:calc(10px + env(safe-area-inset-top)) 16px 12px;background:var(--court);justify-content:space-between;align-items:center;gap:14px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.context-bar{background:color-mix(in srgb,var(--court)96%,transparent)}}.context-bar{color:#fffdf8;box-shadow:0 2px #ffffff17}.context-copy{align-items:center;gap:10px;min-width:0;display:flex}.context-copy div{min-width:0}.context-copy p,.section-kicker{font-family:var(--display);letter-spacing:.13em;margin:0;font-size:11px;font-weight:800}.context-copy strong{text-overflow:ellipsis;white-space:nowrap;font-family:var(--display);letter-spacing:.01em;font-size:18px;display:block;overflow:hidden}.live-dot{background:#a9b8b1;border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 0 4px #ffffff14}.live-dot.on{background:var(--accent);animation:1.8s ease-in-out infinite pulse}.date-stamp{color:#dce9e3;flex:none;font-size:12px}@keyframes pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.live-dot.on{animation:none}}.top-nav{z-index:19;background:var(--bg);border-bottom:1px solid var(--border);grid-template-columns:repeat(5,1fr);width:min(100%,1040px);margin:0 auto;padding:8px 12px;display:grid;position:relative}.top-nav.staff-enabled{grid-template-columns:repeat(6,1fr)}.top-nav button{min-height:46px;color:var(--dim);font-family:var(--display);letter-spacing:.06em;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:800;display:flex}.top-nav button.active{color:var(--court-soft);background:var(--court-soft)}@supports (color:color-mix(in lab,red,red)){.top-nav button.active{background:color-mix(in srgb,var(--court-soft)11%,transparent)}}@media(prefers-color-scheme:dark){.top-nav button.active{color:#8de4c5}}.nav-mark{font-size:16px;line-height:1}.roster-toolbar{align-items:end;gap:8px;width:min(100%,1040px);margin:0 auto;padding:10px 16px 0;display:flex}.roster-toolbar label{flex:1;gap:4px;min-width:0;display:grid}.roster-toolbar label>span{color:var(--dim);font-family:var(--display);letter-spacing:.12em;font-size:10px;font-weight:900}.roster-toolbar select{min-height:42px;font-family:var(--display);font-size:16px;font-weight:900}.roster-toolbar button{border:1px solid var(--border);min-height:42px;color:var(--dim);background:0 0;border-radius:7px;padding:0 13px;font-size:12px;font-weight:900}.practice-period-toolbar{justify-content:space-between;align-items:end;gap:12px;width:min(100%,1040px);margin:0 auto;padding:10px 16px 0;display:flex}.practice-period-toolbar>div{gap:2px;display:grid}.practice-period-toolbar>div span,.practice-period-selector>span{color:var(--dim);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:900}.practice-period-toolbar>div strong{font-family:var(--display);font-size:16px}.practice-period-selector{gap:4px;width:min(52vw,220px);display:grid}.practice-period-selector select{min-height:42px;font-family:var(--display);font-size:15px;font-weight:900}.workspace-context-bar{z-index:18;background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;width:min(100%,1040px);margin:0 auto;padding:10px 16px;display:flex;position:relative}.workspace-switcher-wrap{flex:1;min-width:0;position:relative}.workspace-switcher-trigger{background:var(--court-soft);border:0;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px;min-width:0;min-height:50px;padding:6px 10px;display:grid}@supports (color:color-mix(in lab,red,red)){.workspace-switcher-trigger{background:color-mix(in srgb,var(--court-soft)10%,var(--surface))}}.workspace-switcher-trigger{text-align:left}.workspace-switcher-label{color:var(--dim);font-family:var(--display);letter-spacing:.12em;grid-column:1/-1;font-size:9px;font-weight:900}.workspace-switcher-trigger strong{text-overflow:ellipsis;white-space:nowrap;max-width:230px;font-family:var(--display);font-size:18px;overflow:hidden}.workspace-switcher-popover{z-index:70;border:1px solid var(--border);background:var(--surface);width:min(360px,100vw - 32px);box-shadow:var(--shadow);border-radius:10px;position:absolute;top:calc(100% + 7px);left:0;overflow:hidden}.workspace-switcher-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:flex}.workspace-switcher-head>span{font-family:var(--display);font-size:15px;font-weight:900}.workspace-switcher-head small{color:var(--dim)}.workspace-switcher-head button{background:var(--border);border:0;border-radius:50%;width:32px;height:32px}@supports (color:color-mix(in lab,red,red)){.workspace-switcher-head button{background:color-mix(in srgb,var(--border)50%,transparent)}}.workspace-switcher-head button{font-size:20px}.workspace-switch-list{display:grid}.workspace-switch-list>button{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:10px 12px;display:flex}.workspace-switch-list>button.active{background:var(--court-soft)}@supports (color:color-mix(in lab,red,red)){.workspace-switch-list>button.active{background:color-mix(in srgb,var(--court-soft)11%,transparent)}}.workspace-switch-list>button>span:first-child{gap:2px;min-width:0;display:grid}.workspace-switch-list strong,.workspace-switch-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-switch-list strong{font-family:var(--display);font-size:17px}.workspace-switch-list small{color:var(--dim);font-size:11px}.workspace-switch-create{width:100%;min-height:48px;color:var(--court-soft);text-align:left;background:0 0;border:0;padding:0 12px;font-weight:900}.workspace-safety{align-items:center;gap:8px;min-width:0;display:flex}.workspace-safety>span{background:var(--good);border-radius:50%;flex:none;width:8px;height:8px}.workspace-safety p{text-align:right;gap:1px;min-width:0;margin:0;display:grid}.workspace-safety strong,.workspace-safety small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-safety strong{font-family:var(--display);font-size:13px}.workspace-safety small{color:var(--dim);font-size:10px}.workspace-create-form{gap:14px;margin-top:24px;display:grid}.workspace-create-form.compact{margin:0;padding:13px}.workspace-create-form label{color:var(--dim);font-family:var(--display);gap:6px;font-size:12px;font-weight:900;display:grid}.workspace-create-form input,.workspace-create-form select{min-height:50px}.workspace-create-form.compact input,.workspace-create-form.compact select{min-height:44px}.workspace-form-actions{justify-content:flex-end;gap:8px;display:flex}.workspace-form-actions .primary-button{flex:1}.workspace-select-page{min-height:100vh;padding:calc(42px + env(safe-area-inset-top)) 18px calc(30px + env(safe-area-inset-bottom));background:var(--court);color:#fffdf8;align-content:start;display:grid}.workspace-select-intro,.workspace-select-panel{width:min(100%,600px);margin:0 auto}.workspace-select-intro h1{font-family:var(--display);letter-spacing:-.025em;margin:8px 0;font-size:clamp(42px,12vw,64px);line-height:.92}.workspace-select-intro>p:not(.section-kicker){color:#d2e3dc;max-width:44ch;margin:0 0 26px;line-height:1.5}.workspace-select-panel{background:var(--bg);color:var(--text);box-shadow:var(--shadow);border-radius:14px;padding:18px}.workspace-list{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--border);gap:1px;display:grid;overflow:hidden}.workspace-choice{background:var(--surface);text-align:left;border:0;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:74px;padding:10px 12px;display:grid}.workspace-choice-mark{background:var(--court);color:#fffdf8;width:40px;height:40px;font-family:var(--display);border-radius:50%;place-items:center;font-weight:900;display:grid}.workspace-choice>span:nth-child(2){gap:3px;min-width:0;display:grid}.workspace-choice strong,.workspace-choice small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-choice strong{font-family:var(--display);font-size:21px}.workspace-choice small{color:var(--dim);font-size:12px}.workspace-arrow{color:var(--dim);font-size:20px}.create-workspace-button{border:0;border-bottom:1px solid var(--border);width:100%;min-height:56px;color:var(--court-soft);text-align:left;background:0 0;align-items:center;gap:9px;font-weight:900;display:flex}.workspace-create-heading h2{font-family:var(--display);margin:5px 0;font-size:34px}.workspace-create-heading>p:last-child{color:var(--dim);margin:0;line-height:1.45}.workspace-preview-note{color:var(--dim);margin:14px 0 0;font-size:11px;line-height:1.4}.empty-workspace{max-width:540px;margin:8vh auto 0}.empty-workspace h1{font-family:var(--display);margin:8px 0 10px;font-size:clamp(34px,10vw,56px);line-height:.94}.empty-workspace>p:not(.section-kicker){max-width:46ch;color:var(--dim);line-height:1.5}.empty-workspace .primary-button{margin-top:12px}.loading,.error-state{text-align:center;place-content:center;min-height:70vh;padding:30px;display:grid}.loading span{border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;margin:0 auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading p{color:var(--dim)}.error-state h1{font-family:var(--display);margin-bottom:6px}.error-state p{color:var(--dim);margin-top:0}.error-state button,.primary-button{background:var(--accent);color:#25160b;border:0;border-radius:8px;min-height:50px;padding:0 20px;font-weight:900}.authenticated-data-content{place-items:center;min-height:calc(100vh - 76px);display:grid}.authenticated-data-content .loading,.authenticated-data-content .error-state{width:min(100%,620px);min-height:52vh}.team-data-loading h1{font-family:var(--display);margin:18px 0 0}.application-error-fallback{min-height:100vh;padding:max(24px,env(safe-area-inset-top))24px max(24px,env(safe-area-inset-bottom));background:var(--bg);color:var(--text);place-items:center;display:grid}.application-error-fallback section{width:min(100%,620px)}.application-error-fallback h1{font-family:var(--display);margin:8px 0 10px;font-size:clamp(2rem,7vw,3.5rem);line-height:.98}.application-error-fallback p:not(.section-kicker){color:var(--dim);line-height:1.6}.application-error-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.application-error-actions button{min-width:120px}.application-error-details{border-top:1px solid var(--border);margin-top:24px;padding-top:16px}.application-error-details summary{cursor:pointer;width:fit-content;color:var(--dim);font-weight:800}.application-error-diagnostic{-webkit-user-select:text;user-select:text;margin-top:14px}.application-error-diagnostic h2{font-family:var(--body);margin:16px 0 6px;font-size:12px;line-height:1.3}.application-error-diagnostic pre{border:1px solid var(--border);background:var(--surface-strong);max-height:240px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;border-radius:7px;margin:0;padding:10px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;line-height:1.45;overflow:auto}.notice{color:var(--low);background:var(--low-bg);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;font-size:14px;font-weight:700;display:flex}.notice button{background:0 0;border:0;font-size:20px}.start-panel{max-width:520px;margin:8vh auto 0}.start-panel h1,.review-head h1,.roster-intro h1{font-family:var(--display);letter-spacing:-.025em;margin:8px 0 10px;font-size:clamp(34px,10vw,58px);line-height:.94}.start-panel>p:not(.section-kicker),.roster-intro>p:not(.section-kicker){max-width:44ch;color:var(--dim);line-height:1.5}.section-kicker{color:var(--accent)}.stack-form{border-top:2px solid var(--text);gap:14px;margin-top:28px;padding-top:22px;display:grid}.stack-form label{gap:7px;font-size:13px;font-weight:800;display:grid}.stack-form label span{color:var(--dim);margin-left:5px;font-weight:500}input,select{border:1px solid var(--border);background:var(--surface-strong);width:100%;min-height:48px;color:var(--text);border-radius:7px;padding:0 13px}.text-button{color:var(--dim);background:0 0;border:0;margin:14px auto 0;text-decoration:underline;display:block}.prominent-start-button{width:min(100%,320px);min-height:58px;font-family:var(--display);margin-top:22px;font-size:18px}.existing-session-picker{border-top:1px solid var(--border);margin-top:28px;padding-top:20px}.existing-session-picker label{color:var(--dim);gap:7px;font-size:12px;font-weight:800;display:grid}.existing-session-picker small{color:var(--dim);margin-top:8px;font-size:12px;line-height:1.4;display:block}.active-session-banner{border-top:4px solid var(--accent);background:var(--court);color:#fffdf8;gap:15px;padding:16px;display:grid}.active-session-title{align-items:center;gap:11px;display:flex}.active-session-title p{color:#bcd1c8;font-family:var(--display);letter-spacing:.13em;margin:0;font-size:10px;font-weight:900}.active-session-title h1{font-family:var(--display);margin:2px 0 0;font-size:clamp(27px,8vw,38px);line-height:.95}.save-state{color:#e4efe9;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff3d;border-radius:999px;flex:none;margin-left:auto;padding:7px 10px;font-size:11px;font-weight:900}.save-state.saving{color:#ffe5b0}.save-state.offline,.save-state.error{color:#ffd2ca;background:#72191094;border-color:#ffbcb080}.session-meta{background:#fff3;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.session-meta>div{background:var(--court);min-width:0;padding:10px}.session-meta dt{color:#bcd1c8;letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:900}.session-meta dd{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:15px;font-weight:900;overflow:hidden}.session-extra{color:#dce9e3;gap:6px;font-size:12px;line-height:1.4;display:grid}.session-extra span{gap:7px;display:flex}.session-extra strong{color:#fffdf8}.start-another-button{min-height:48px}.session-backdrop{z-index:90}.session-setup-sheet{max-height:96vh}.session-setup-form{gap:18px;padding-top:18px;display:grid}.session-type-fieldset{border:0;min-width:0;margin:0;padding:0}.session-type-fieldset legend,.session-setup-form label{color:var(--dim);font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:900}.session-type-options{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px;display:grid}.session-type-options label{border:1px solid var(--border);background:var(--surface-strong);min-height:44px;color:var(--dim);cursor:pointer;border-radius:7px;place-items:center;display:grid}.session-type-options label.selected{border-color:var(--court-soft);background:var(--court);color:#fffdf8}.session-type-options input{opacity:0;width:1px;height:1px;min-height:0;position:absolute}.session-form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.session-form-grid label{gap:6px;min-width:0;display:grid}.session-form-grid label>span{color:var(--dim);font-family:var(--body);letter-spacing:0;text-transform:none;font-weight:500}.session-form-grid textarea{resize:vertical;border:1px solid var(--border);background:var(--surface-strong);width:100%;min-height:88px;color:var(--text);border-radius:7px;padding:11px 13px}.session-start-submit{min-height:56px;font-family:var(--display);font-size:17px}.session-form-warning{color:var(--low);margin:0;font-size:12px;font-weight:800}.session-change-sheet{width:min(94vw,520px)}.session-change-warning{color:var(--text);margin:16px 0 0;font-size:15px;line-height:1.5}.session-change-warning strong{font-weight:900}.session-change-save-state{background:var(--good-bg);color:var(--good);margin:14px 0 0;padding:11px 12px;font-size:12px;font-weight:800;line-height:1.45}.session-change-save-state.saving{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.session-change-save-state.saving{background:color-mix(in srgb,var(--accent)12%,var(--surface-strong))}}.session-change-save-state.saving{color:var(--dim)}.session-change-save-state.offline,.session-change-save-state.error{background:var(--low-bg);color:var(--low)}.session-change-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.session-change-actions .primary-button{min-height:42px}.track-layout,.review-view,.roster-view{gap:24px;display:grid}.practice-switcher{justify-content:space-between;align-items:end;gap:12px;display:flex}.practice-switcher>div{flex:1;min-width:0}.practice-switcher select{margin-top:7px;font-weight:800}.outline-button,.finish-button,.small-action,.close-button{border:1px solid var(--border);background:var(--surface);border-radius:7px;min-height:42px;padding:0 14px;font-weight:800}.finish-button{color:var(--low);border-color:var(--low)}@supports (color:color-mix(in lab,red,red)){.finish-button{border-color:color-mix(in srgb,var(--low)45%,var(--border))}}.section-heading,.board-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.section-heading h2,.board-heading h2{font-family:var(--display);margin:4px 0 0;font-size:27px;line-height:1}.segments-block{border-top:1px solid var(--border);gap:14px;padding-top:20px;display:grid}.segment-tabs{flex-wrap:wrap;gap:8px;display:flex}.segment-tabs button{border:1px solid var(--border);background:var(--surface);border-radius:7px;padding:8px 11px;font-size:13px;font-weight:800}.segment-tabs button span{color:var(--dim);font-variant-numeric:tabular-nums;margin-right:6px}.segment-tabs button.active{border-color:var(--court-soft);background:var(--court);color:#fffdf8}.inline-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.inline-form button{background:var(--court);color:#fffdf8;border:0;border-radius:7px;min-height:48px;padding:0 16px;font-weight:900}.roster-board{gap:12px;display:grid}.column-labels,.player-row{grid-template-columns:minmax(90px,1.25fr) .8fr .8fr .65fr;align-items:center;gap:8px;display:grid}.column-labels{color:var(--dim);font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;text-align:center;padding:0 10px;font-size:10px;font-weight:900}.column-labels span:first-child{text-align:left}.player-list{border-top:2px solid var(--text);border-bottom:2px solid var(--text);overflow:hidden}.player-row{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;width:100%;min-height:66px;padding:8px 10px}.player-row:last-child{border-bottom:0}.player-row:active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.player-row:active{background:color-mix(in srgb,var(--accent)12%,transparent)}}.player-row>strong{font-family:var(--display);text-overflow:ellipsis;font-size:20px;overflow:hidden}.rate{font-variant-numeric:tabular-nums;flex-direction:column;align-items:flex-start;line-height:1;display:inline-flex}.rate strong{font-family:var(--display);font-size:25px}.rate small{margin-top:3px;font-size:11px;font-weight:900}.rate.compact{align-items:center}.rate.compact strong{font-size:16px}.rate.compact small{font-size:10px}.rate.good,.ato.good,.summary-ato.good{color:var(--good)}.rate.low,.ato.low,.summary-ato.low{color:var(--low)}.rate.neutral,.ato.neutral,.summary-ato.neutral{color:var(--dim)}.ato{font-family:var(--display);font-variant-numeric:tabular-nums;justify-self:center;font-size:17px;font-weight:900}.sheet-backdrop{z-index:60;background:#030e0b8f;align-items:flex-end;display:flex;position:fixed;inset:0}.stat-sheet{width:100%;max-height:91vh;padding:8px 16px calc(24px + env(safe-area-inset-bottom));background:var(--surface);border-radius:18px 18px 0 0;overflow-y:auto;box-shadow:0 -15px 45px #00000038}.sheet-handle{background:var(--border);border-radius:99px;width:44px;height:5px;margin:0 auto 10px}.sheet-head{z-index:2;background:var(--surface);border-bottom:2px solid var(--text);justify-content:space-between;align-items:center;padding:8px 0 12px;display:flex;position:sticky;top:-8px}.sheet-head p{color:var(--accent);font-family:var(--display);letter-spacing:.12em;margin:0;font-size:11px;font-weight:900}.sheet-head h2{font-family:var(--display);margin:0;font-size:34px;line-height:1}.close-button{min-height:40px}.control-group{border-bottom:1px solid var(--border);padding:16px 0}.control-group h3{color:var(--dim);font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;margin:0 0 9px;font-size:14px}.control-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.control-grid-three{grid-template-columns:1fr}.count-control{border:1px solid var(--border);background:var(--surface-strong);border-radius:8px;grid-template-columns:1fr 42px;min-height:62px;display:grid;overflow:hidden}.count-main,.count-minus{background:0 0;border:0}.count-main{text-align:left;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;display:flex}.count-main span{color:var(--dim);font-size:13px;font-weight:800}.count-main strong{font-family:var(--display);font-size:24px}.count-minus{border-left:1px solid var(--border);color:var(--dim);font-size:24px}.count-control.make{border-color:var(--good)}@supports (color:color-mix(in lab,red,red)){.count-control.make{border-color:color-mix(in srgb,var(--good)38%,var(--border))}}.count-control.miss{border-color:var(--low)}@supports (color:color-mix(in lab,red,red)){.count-control.miss{border-color:color-mix(in srgb,var(--low)35%,var(--border))}}.count-control.make .count-main strong{color:var(--good)}.count-control.miss .count-main strong{color:var(--low)}.count-minus:disabled{opacity:.25}.locked-note{background:var(--low-bg);color:var(--low);border-radius:7px;margin:14px 0 0;padding:11px;font-size:13px;font-weight:700}.controls-locked{pointer-events:none;opacity:.48}.active-session-actions{gap:8px;display:grid}.finish-session-cta{border:2px solid var(--accent);background:var(--accent);color:#25160b;min-height:52px;font-family:var(--display);border-radius:8px;font-size:17px;font-weight:900}.discard-unsaved-session{color:#ffd2ca;background:#721910b3;border:1px solid #ffd2ca94;border-radius:8px;min-height:48px;font-weight:900}.session-review-screen{gap:20px;display:grid}.session-review-topline{justify-content:space-between;align-items:end;gap:16px;display:flex}.session-review-topline h1{font-family:var(--display);letter-spacing:-.025em;margin:7px 0;font-size:clamp(36px,10vw,58px);line-height:.92}.session-review-topline>div>p:last-child{max-width:56ch;color:var(--dim);margin:0;line-height:1.45}.review-status{background:var(--border);border-radius:999px;flex:none;padding:7px 10px}@supports (color:color-mix(in lab,red,red)){.review-status{background:color-mix(in srgb,var(--border)48%,transparent)}}.review-status{color:var(--dim);font-family:var(--display);font-size:11px;font-weight:900}.review-status.active{background:var(--good-bg);color:var(--good)}.review-session-meta{border-top:2px solid var(--text);border-bottom:1px solid var(--border);background:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;display:grid}.review-session-meta>div{background:var(--surface);align-content:center;gap:4px;min-width:0;min-height:68px;padding:10px 12px;display:grid}.review-session-meta>div:nth-child(3){grid-column:1/-1}.review-session-meta dt{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.review-session-meta dd{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;font-weight:900;overflow:hidden}.session-review-players{gap:16px;transition:opacity .12s;display:grid}.session-review-players.is-saving{opacity:.78}.session-review-player{border-top:3px solid var(--court);border-bottom:1px solid var(--border);background:var(--surface);overflow:hidden}.session-review-player>header{background:var(--court);color:#fffdf8;gap:12px;padding:14px 12px;display:grid}.session-review-player>header>div:first-child{gap:2px;min-width:0;display:grid}.session-review-player>header>div:first-child strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:25px;overflow:hidden}.session-review-player>header>div:first-child small{color:#bfd5cc}.review-percentages{background:#fff3;grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.review-percentages span{background:var(--court);place-items:center;gap:2px;padding:7px 3px;display:grid}.review-percentages small{color:#bfd5cc;font-family:var(--display);font-size:9px;font-weight:900}.review-percentages b{font-family:var(--display);font-size:17px}.review-stat-groups{display:grid}.review-stat-group{background:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:1px 0 0;display:grid}.review-stat-group h3{background:var(--surface);color:var(--dim);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;grid-column:1/-1;margin:0;padding:12px 11px 7px;font-size:12px}.review-shooting-note{background:var(--surface);color:var(--dim);grid-column:1/-1;margin:0;padding:0 11px 10px;font-size:11px;line-height:1.45}.review-correction-control{background:var(--surface-strong);align-content:center;gap:6px;min-width:0;min-height:80px;padding:9px 10px;display:grid}.review-correction-control>span{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:900;overflow:hidden}.review-correction-control>div{grid-template-columns:34px minmax(32px,1fr) 34px;align-items:center;display:grid}.review-correction-control button{border:1px solid var(--border);background:var(--surface);border-radius:6px;width:34px;height:34px;font-size:20px;font-weight:900}.review-correction-control button:last-child{border-color:var(--court-soft);background:var(--court);color:#fffdf8}.review-correction-control button:disabled{opacity:.28}.review-correction-control strong{font-family:var(--display);text-align:center;font-variant-numeric:tabular-nums;font-size:22px}.review-stat-assignment-backdrop{z-index:90;align-items:end}.review-stat-assignment{width:min(100%,500px);padding-bottom:calc(18px + env(safe-area-inset-bottom));gap:16px;display:grid}.review-stat-assignment-summary{background:var(--border);border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;gap:1px;margin:0;display:grid}.review-stat-assignment-summary>div{background:var(--surface-strong);gap:4px;min-width:0;padding:12px;display:grid}.review-stat-assignment-summary dt{color:var(--dim);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:900}.review-stat-assignment-summary dd{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;font-weight:900;overflow:hidden}.review-stat-segment-field{gap:7px;display:grid}.review-stat-segment-field>span{color:var(--dim);font-size:12px;font-weight:900}.review-stat-segment-field select{border:1px solid var(--border);background:var(--surface-strong);width:100%;min-height:48px;color:var(--text);font:inherit;border-radius:8px;padding:0 11px;font-weight:800}.review-stat-assignment-note{color:var(--dim);margin:-5px 0 0;font-size:12px;line-height:1.45}.practice-removal-action{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:15px 0;display:flex}.practice-removal-action>div{gap:3px;display:grid}.practice-removal-action strong{color:var(--text);font-size:14px}.practice-removal-action span{color:var(--dim);font-size:12px;line-height:1.45}.practice-removal-action .danger-button{flex:none;min-height:44px}.session-review-actions{z-index:10;padding:12px 0 calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--bg);grid-template-columns:1fr 1.15fr;gap:8px;display:grid;position:sticky;bottom:0}.session-review-actions button{min-height:54px}.session-review-empty{border-top:2px solid var(--text);border-bottom:1px solid var(--border);color:var(--dim);gap:4px;padding:26px 14px;display:grid}.session-review-empty strong{color:var(--text);font-family:var(--display);font-size:20px}.practice-review-picker{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;max-width:720px;display:grid}.practice-review-picker .range-picker{max-width:none}.review-shot-correction{gap:12px;padding-top:6px;display:grid}.review-shot-layout{align-items:start;gap:12px;display:grid}.review-shot-correction .shot-history{border-top:0}.review-shot-actions{z-index:8;border-top:3px solid var(--accent);border-bottom:1px solid var(--border);background:var(--surface);box-shadow:0 -8px 22px var(--text);gap:10px;padding:12px;display:grid;position:sticky;bottom:76px}@supports (color:color-mix(in lab,red,red)){.review-shot-actions{box-shadow:0 -8px 22px color-mix(in srgb,var(--text)10%,transparent)}}.review-shot-actions>strong{font-family:var(--display);font-size:16px;line-height:1.25}.review-shot-actions>div{grid-template-columns:1fr 1fr 1fr;gap:6px;display:grid}.review-shot-actions button{border:1px solid var(--border);background:var(--surface-strong);min-height:46px;color:var(--text);font-weight:900}.review-shot-actions button.active{border-color:var(--accent);color:var(--accent)}.review-shot-actions .danger-button{background:var(--low);color:#fff;border:0}.review-head{gap:16px;display:grid}.review-head h1{margin-bottom:0}.review-context{color:var(--dim);margin:8px 0 0;font-size:14px;font-weight:700}.scope-tabs{background:var(--border);grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.scope-tabs{background:color-mix(in srgb,var(--border)60%,transparent)}}.scope-tabs{border-radius:9px}.scope-tabs button{min-height:42px;color:var(--dim);font-family:var(--display);letter-spacing:.025em;background:0 0;border:0;border-radius:6px;font-size:14px;font-weight:900}.scope-tabs button.active{background:var(--surface-strong);color:var(--text);box-shadow:0 1px 3px #10211c21}.scope-tabs button:disabled{opacity:.38}.range-picker{max-width:520px;color:var(--dim);gap:7px;font-size:12px;font-weight:800;display:grid}.range-picker select{font-weight:800}.goal-strip{border-top:2px solid var(--text);border-bottom:1px solid var(--border);grid-template-columns:repeat(4,1fr);display:grid}.goal-strip span{border-right:1px solid var(--border);color:var(--dim);font-family:var(--display);text-align:center;flex-direction:column;gap:3px;padding:10px 5px;font-size:10px;display:flex}.goal-strip span:last-child{border-right:0}.goal-strip strong{color:var(--text);font-size:14px}.team-scoreboard{border:1px solid var(--court);background:var(--court);grid-template-columns:repeat(2,1fr);gap:1px;display:grid;overflow:hidden}.team-scoreboard>div{background:var(--court);color:#fffdf8;flex-direction:column;justify-content:center;align-items:flex-start;min-height:108px;padding:14px;display:flex}.team-scoreboard>div:nth-child(odd){border-right:1px solid #ffffff2e}.team-scoreboard>div:nth-child(-n+2){border-bottom:1px solid #ffffff2e}.team-scoreboard p{color:#b9d4ca;font-family:var(--display);letter-spacing:.1em;margin:0 0 7px;font-size:11px;font-weight:900}.team-scoreboard .rate{color:inherit}.team-scoreboard .rate strong,.team-scoreboard>div>strong{font-family:var(--display);font-size:30px}.team-scoreboard small{color:#dce9e3}.totals-section{gap:12px;display:grid}.totals-section-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.totals-section-head h2{font-family:var(--display);margin:3px 0 0;font-size:28px;line-height:1}.totals-section-head>span{color:var(--dim);text-align:right;font-size:12px;font-weight:800}.totals-grid{margin:0}.player-totals-section{padding-top:8px}.report-list{border-top:2px solid var(--text)}.report-row{border-bottom:1px solid var(--border)}.report-row summary{cursor:pointer;grid-template-columns:minmax(80px,1fr) auto auto auto 15px;align-items:center;gap:8px;min-height:66px;padding:8px 4px;list-style:none;display:grid}.report-row summary::-webkit-details-marker{display:none}.report-row summary>strong{font-family:var(--display);font-size:20px}.summary-ato{font-size:11px;font-weight:900}.chevron{color:var(--dim);font-size:18px;transition:transform .15s}.report-row[open] .chevron{transform:rotate(180deg)}.detail-grid{background:var(--border);grid-template-columns:repeat(2,1fr);gap:1px;margin:0 0 12px;padding:1px;display:grid}.detail-grid>div{background:var(--surface);flex-direction:column;justify-content:center;align-items:flex-start;min-height:78px;padding:10px;display:flex}.detail-grid span{color:var(--dim);font-size:11px;font-weight:800}.detail-grid>div>strong{font-family:var(--display);font-size:24px}.detail-grid>div>small{color:var(--dim)}.empty-range-note{background:var(--border);flex-wrap:wrap;gap:3px 8px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.empty-range-note{background:color-mix(in srgb,var(--border)34%,transparent)}}.empty-range-note{color:var(--dim);font-size:12px;line-height:1.35}.empty-range-note strong{color:var(--text)}.practice-history{gap:10px;padding-top:8px;display:grid}.history-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.history-head h2{font-family:var(--display);margin:4px 0 0;font-size:27px;line-height:1}.history-head>span{color:var(--dim);font-size:12px;font-weight:800}.history-labels,.history-row{grid-template-columns:minmax(116px,1.5fr) repeat(3,.72fr);align-items:center;gap:6px;display:grid}.history-labels{color:var(--dim);font-family:var(--display);letter-spacing:.1em;text-align:center;text-transform:uppercase;padding:0 9px;font-size:10px;font-weight:900}.history-labels span:first-child{text-align:left}.history-list{border-top:2px solid var(--text);border-bottom:2px solid var(--text)}.history-row{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;width:100%;min-height:68px;padding:9px}.history-row:last-child{border-bottom:0}.history-row:active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.history-row:active{background:color-mix(in srgb,var(--accent)12%,transparent)}}.history-practice{flex-direction:column;gap:3px;min-width:0;display:flex}.history-practice strong{text-overflow:ellipsis;white-space:nowrap;font-family:var(--display);font-size:17px;overflow:hidden}.history-practice small{text-overflow:ellipsis;white-space:nowrap;color:var(--dim);font-size:11px;overflow:hidden}.roster-intro{padding-bottom:6px}.roster-management,.player-management{gap:13px;display:grid}.roster-management{border-top:2px solid var(--text);border-bottom:1px solid var(--border);padding:18px 0 22px}.roster-management-head,.player-management-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.roster-management-head h2,.player-management-head h2{font-family:var(--display);margin:4px 0 0;font-size:27px;line-height:1}.roster-management-head>span,.player-management-head>span{color:var(--dim);font-size:12px;font-weight:800}.roster-switch-list{background:var(--border);border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:1px;display:grid}.roster-switch-list button{background:var(--surface);text-align:left;border:0;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:9px 12px;display:flex}.roster-switch-list button.active{background:var(--court);color:#fffdf8}.roster-switch-list strong{font-family:var(--display);font-size:19px}.roster-switch-list span{color:var(--dim);text-transform:uppercase;font-size:11px;font-weight:900}.roster-switch-list button.active span{color:#cfe4dc}.create-roster{padding-top:2px}.rename-roster{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.rename-roster label{min-width:0;color:var(--dim);gap:5px;font-size:11px;font-weight:800;display:grid}.player-management{padding-top:4px}.add-player{border-bottom:2px solid var(--text);padding-bottom:18px}.roster-list{display:grid}.roster-empty{color:var(--dim);flex-direction:column;gap:4px;padding:24px 4px;display:flex}.roster-empty strong{color:var(--text);font-family:var(--display);font-size:20px}.roster-item{border-bottom:1px solid var(--border);align-items:center;gap:8px;min-height:62px;padding:9px 0;display:flex}.roster-item>div{min-width:0;margin-right:auto}.roster-item strong{text-overflow:ellipsis;font-family:var(--display);font-size:20px;display:block;overflow:hidden}.roster-item span{color:var(--good);text-transform:uppercase;font-size:11px;font-weight:800}.roster-item.archived{opacity:.58}.roster-item.archived span{color:var(--dim)}.roster-item input{flex:1;min-width:0}.small-action{min-height:38px;padding:0 11px;font-size:12px}.small-action.quiet{color:var(--dim);background:0 0}.chart-sheet{max-height:96vh}.drawer-tabs{background:var(--border);border-radius:9px;grid-template-columns:1fr 1fr;gap:4px;margin:14px 0 12px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.drawer-tabs{background:color-mix(in srgb,var(--border)60%,transparent)}}.drawer-tabs button{min-height:42px;color:var(--dim);font-family:var(--display);background:0 0;border:0;border-radius:6px;font-size:14px;font-weight:900}.drawer-tabs button.active{background:var(--surface-strong);color:var(--text);box-shadow:0 1px 3px #10211c24}.shot-entry-layout{gap:12px;display:grid}.shot-chart-wrap{min-width:0}.shot-scope-toggle{border:1px solid var(--border);background:var(--surface);grid-template-columns:1fr 1fr;gap:3px;width:min(100%,320px);margin:0 auto 7px;padding:3px;display:grid}.shot-scope-toggle button{min-height:38px;color:var(--dim);background:0 0;border:0;font-size:12px;font-weight:900}.shot-scope-toggle button.active{background:var(--text);color:var(--bg)}.tap-guidance{color:var(--dim);text-align:center;margin:0 0 7px;font-size:12px;font-weight:800}.shot-court{background:var(--court);border:1px solid #ffffff47;width:100%;max-height:56vh;display:block}.shot-zone{cursor:pointer;outline:none}.shot-zone>path,.shot-zone>rect{fill:var(--neutral);stroke:var(--ink-line);stroke-width:1px;transition:filter .12s,stroke-width .12s}.shot-zone.hit>path,.shot-zone.hit>rect{fill:var(--hit-soft)}.shot-zone.miss>path,.shot-zone.miss>rect{fill:var(--miss-soft)}.shot-zone.selected>path,.shot-zone.selected>rect{stroke:var(--accent);stroke-width:6px;filter:brightness(1.03)}.shot-zone:focus-visible>path,.shot-zone:focus-visible>rect{stroke:var(--accent);stroke-width:7px}.shot-zone text{fill:#14211d;font-family:var(--display);letter-spacing:.08em;text-anchor:middle;pointer-events:none;font-size:8px;font-weight:900}.shot-zone .zone-value,.zone-value{fill:#14211d;font-family:var(--display);text-anchor:middle;paint-order:stroke;stroke:#ffffffc7;stroke-width:3px;font-size:16px;font-weight:900}.court-title{fill:var(--accent);font-family:var(--display);letter-spacing:1.2px;text-anchor:middle;font-size:24px;font-weight:900}.zone-lines{fill:none;stroke:var(--ink-line);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.court-lines{fill:none;stroke:var(--court-line);stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.zone-entry{border:1px solid var(--border);background:var(--surface-strong);gap:10px;padding:12px;display:grid}.zone-entry>div:first-child{grid-template-columns:1fr auto;align-items:end;gap:2px 10px;display:grid}.zone-entry p{color:var(--accent);font-family:var(--display);letter-spacing:.12em;grid-column:1/-1;margin:0;font-size:10px;font-weight:900}.zone-entry h3{font-family:var(--display);margin:0;font-size:23px;line-height:1}.zone-entry span{color:var(--dim);font-family:var(--display);font-size:16px;font-weight:900}.shot-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.other-stats{display:grid}.shooting-summary{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:0;display:grid}.shot-source-note{color:var(--dim);margin:7px 0 0;font-size:12px;font-weight:700}.shooting-summary>div{background:var(--surface-strong);flex-direction:column;gap:5px;padding:12px;display:flex}.shooting-summary>div>span{color:var(--dim);font-family:var(--display);letter-spacing:.08em;font-size:11px;font-weight:900}.report-detail{gap:10px;padding-bottom:14px;display:grid}.report-chart{width:min(100%,360px);margin:0 auto}.shot-court.compact{max-height:none}.shot-court.compact .shot-zone{cursor:default}.shot-marker{cursor:pointer;outline:none}.shot-marker circle{fill:var(--surface);stroke-width:4px}.shot-marker path{fill:none;stroke:#fffdf8;stroke-width:3.5px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.shot-marker.make circle{fill:#13825f;stroke:#fffdf8}.shot-marker.miss circle{fill:#c83f34;stroke:#fffdf8}.shot-marker.selected circle,.shot-marker:focus-visible circle{stroke:var(--accent);stroke-width:7px}.pending-shot circle:first-child{fill:var(--accent)}@supports (color:color-mix(in lab,red,red)){.pending-shot circle:first-child{fill:color-mix(in srgb,var(--accent)24%,transparent)}}.pending-shot circle:first-child{stroke:var(--accent);stroke-width:4px;stroke-dasharray:5 4}.pending-shot circle:last-child{fill:var(--accent)}.shot-result-buttons{grid-template-columns:1fr 1fr;gap:8px;display:grid}.shot-result{color:#fffdf8;min-height:62px;font-family:var(--display);border:0;border-radius:8px;font-size:19px;font-weight:900}.shot-result.make{background:#13825f}.shot-result.miss{background:#c83f34}.shot-result:disabled{opacity:.38;cursor:not-allowed}.edit-shot-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.edit-shot-actions .shot-result{min-height:48px;font-size:14px}.shot-cancel{min-height:38px;color:var(--dim);background:0 0;border:0;font-weight:800}.delete-shot{border:1px solid var(--low);min-height:52px}@supports (color:color-mix(in lab,red,red)){.delete-shot{border:1px solid color-mix(in srgb,var(--low)45%,var(--border))}}.delete-shot{background:var(--low-bg);color:var(--low);border-radius:8px;font-weight:900}.shot-legend{color:var(--dim);align-items:center;gap:18px;font-size:12px;font-weight:800;display:flex}.shot-legend span{align-items:center;gap:6px;display:inline-flex}.shot-legend i{border-radius:50%;width:13px;height:13px}.shot-legend i.make{background:#13825f}.shot-legend i.miss{background:#c83f34}.shot-entry-help{color:var(--dim);margin:0;font-size:12px;line-height:1.45}.shot-history{border-top:1px solid var(--border);min-width:0}.shot-history-head{justify-content:space-between;align-items:end;gap:12px;padding:14px 2px 10px;display:flex}.shot-history-head p{color:var(--accent);font-family:var(--display);letter-spacing:.12em;margin:0 0 2px;font-size:10px;font-weight:900}.shot-history-head h3{font-family:var(--display);margin:0;font-size:20px}.shot-history-head>span{background:var(--surface-strong);min-width:30px;color:var(--dim);font-family:var(--display);text-align:center;border-radius:999px;padding:4px 8px;font-size:13px;font-weight:900}.shot-history-list{border:1px solid var(--border);background:var(--surface-strong);display:grid}.shot-history-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;display:grid}.shot-history-row:last-child{border-bottom:0}.shot-history-row.selected{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.shot-history-row.selected{background:color-mix(in srgb,var(--accent)8%,var(--surface-strong))}}.shot-history-row.selected{box-shadow:inset 3px 0 var(--accent)}.shot-history-select{min-width:0;min-height:66px;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;gap:2px 9px;padding:9px 11px;display:grid}.shot-history-select strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--display);font-size:15px;overflow:hidden}.shot-history-select small{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:11px;font-weight:700;overflow:hidden}.shot-history-result{color:#fffdf8;text-align:center;text-transform:uppercase;border-radius:4px;min-width:54px;padding:4px 6px;font-size:10px;font-weight:900}.shot-history-result.make{background:#13825f}.shot-history-result.miss{background:#c83f34}.shot-history-delete{border:0;border-left:1px solid var(--low);align-self:stretch;min-width:68px;padding:0 10px}@supports (color:color-mix(in lab,red,red)){.shot-history-delete{border-left:1px solid color-mix(in srgb,var(--low)35%,var(--border))}}.shot-history-delete{background:var(--low-bg);color:var(--low);font-size:12px;font-weight:900}.shot-history-empty{border:1px solid var(--border);background:var(--surface-strong);color:var(--dim);margin:0;padding:18px 12px;font-size:13px}@media(min-width:760px){.app-shell{padding-bottom:28px}.main-content{padding:32px 28px 48px}.context-bar{padding-left:max(28px,50vw - 492px);padding-right:max(28px,50vw - 492px)}.top-nav{grid-template-columns:repeat(3,max-content);justify-content:start;gap:4px;width:min(100% - 56px,1040px);padding:10px 0}.workspace-context-bar{width:min(100% - 56px,1040px);padding-left:0;padding-right:0}.workspace-switcher-wrap{flex:0 320px}.roster-toolbar{justify-content:flex-end;width:min(100% - 56px,1040px);padding:12px 0 0}.roster-toolbar label{flex:0 300px}.practice-period-toolbar{width:min(100% - 56px,1040px);padding:12px 0 0}.top-nav button{min-height:40px;padding:0 18px}.track-layout{grid-template-columns:300px minmax(0,1fr);align-items:start}.active-session-banner{grid-column:1/-1;grid-template-columns:minmax(240px,1fr) 1.4fr;align-items:center}.active-session-banner .session-meta{grid-template-columns:repeat(4,minmax(0,1fr))}.active-session-banner .session-extra{grid-column:1/-1}.active-session-banner .active-session-actions{grid-column:1/-1;justify-self:end;min-width:210px}.review-session-meta{grid-template-columns:repeat(5,minmax(0,1fr))}.review-session-meta>div:nth-child(3){grid-column:auto}.session-review-player>header{grid-template-columns:minmax(180px,1fr) minmax(290px,.9fr);align-items:center}.review-stat-groups{background:var(--border);grid-template-columns:repeat(3,1fr);gap:1px}.review-stat-group{align-content:start}.review-shot-layout{grid-template-columns:minmax(330px,.95fr) minmax(280px,1.05fr)}.session-review-actions{grid-template-columns:210px 240px;justify-content:end}.practice-switcher,.segments-block{grid-column:1}.roster-board{grid-area:2/2/span 2}.stat-sheet{border-radius:18px 18px 0 0;width:min(680px,100% - 44px);max-height:94vh;margin:0 auto;padding-left:28px;padding-right:28px}.stat-sheet.chart-sheet{width:min(940px,100% - 44px)}.shot-entry-layout{grid-template-columns:minmax(340px,1.15fr) minmax(270px,.85fr);align-items:start}.zone-entry{position:sticky;top:94px}.shot-history{grid-column:1/-1}.report-detail{grid-template-columns:minmax(240px,340px) 1fr;align-items:start}.review-head{grid-template-columns:1fr 300px;align-items:end}.team-scoreboard{grid-template-columns:repeat(4,1fr)}.team-scoreboard>div:nth-child(n){border-bottom:0;border-right:1px solid #ffffff2e}.team-scoreboard>div:last-child{border-right:0}.detail-grid{grid-template-columns:repeat(4,1fr)}.control-grid-three{grid-template-columns:repeat(3,1fr)}.roster-view{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;column-gap:50px}.roster-intro,.roster-management{grid-column:1}.player-management{grid-area:1/2/span 2}}.auth-shell{background:var(--court);min-height:100vh}.auth-page{background:var(--court);color:#fffdf8;grid-template-rows:minmax(250px,34vh) 1fr;min-height:100vh;display:grid}.auth-intro{padding:calc(36px + env(safe-area-inset-top)) 22px 30px;flex-direction:column;justify-content:end;gap:10px;display:flex}.auth-intro h1{max-width:12ch;font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:clamp(42px,12vw,66px);line-height:.9}.auth-intro>p:not(.section-kicker){color:#d2e3dc;max-width:42ch;margin:0;font-size:15px;line-height:1.5}.auth-status{border-top:1px solid #ffffff3d;align-items:center;gap:10px;max-width:470px;margin-top:6px;padding-top:14px;display:flex}.auth-status>span{background:var(--accent);border-radius:50%;flex:none;width:9px;height:9px}.auth-status div{gap:2px;display:grid}.auth-status strong{font-family:var(--display);letter-spacing:.04em;font-size:13px}.auth-status small{color:#bcd1c8;line-height:1.35}.auth-panel{min-height:0;padding:28px 22px calc(38px + env(safe-area-inset-bottom));background:var(--bg);color:var(--text);border-radius:20px 20px 0 0}.auth-heading{align-items:flex-start;gap:12px;max-width:520px;margin:0 auto;display:flex}.auth-heading>div{min-width:0}.auth-heading h2{font-family:var(--display);margin:4px 0 5px;font-size:38px;line-height:1}.auth-heading>p,.auth-heading div>p:last-child{color:var(--dim);margin:0;line-height:1.45}.auth-back{border:1px solid var(--border);background:var(--surface);border-radius:50%;flex:none;width:42px;height:42px;font-size:21px}.auth-form{gap:15px;max-width:520px;margin:24px auto 0;display:grid}.auth-form label{font-family:var(--display);letter-spacing:.025em;gap:7px;font-size:13px;font-weight:900;display:grid}.auth-form input{background:var(--surface-strong);min-height:52px}.auth-name-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-submit{background:var(--accent);color:#25160b;min-height:54px;font-family:var(--display);letter-spacing:.025em;border:0;border-radius:8px;font-size:17px;font-weight:900}.auth-submit:disabled{opacity:.58}.auth-link{color:var(--court-soft);text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:900;text-decoration:underline}.forgot-link{justify-self:end;margin-top:-4px;font-size:13px}.auth-switch{border-top:1px solid var(--border);max-width:520px;color:var(--dim);justify-content:center;gap:7px;margin:22px auto 0;padding-top:20px;font-size:14px;display:flex}.auth-message{background:var(--good-bg);color:var(--good);border-radius:7px;margin:0;padding:12px;font-size:13px;font-weight:700;line-height:1.4}.auth-message.error{background:var(--low-bg);color:var(--low)}.auth-switch{flex-wrap:wrap}.connection-link{width:100%;margin-top:6px;font-size:12px}.connection-help{color:var(--dim);margin:-2px 0 0;font-size:12px;line-height:1.55}.connection-help code{background:var(--surface-strong);color:var(--text);overflow-wrap:anywhere;border-radius:4px;padding:2px 4px}.connection-note{background:var(--good-bg);max-width:520px;color:var(--good);border-radius:7px;margin:17px auto -6px;padding:11px 12px;font-size:12px;line-height:1.45}.connection-note strong{display:block}.context-actions{align-items:center;gap:10px;display:flex}.header-start-session{background:var(--accent);color:#25160b;min-height:40px;font-family:var(--display);white-space:nowrap;border:0;border-radius:7px;padding:0 13px;font-size:13px;font-weight:900}.account-menu-wrap{flex:none;position:relative}.account-trigger{color:#fffdf8;background:#ffffff14;border:1px solid #ffffff3d;border-radius:7px;align-items:center;gap:8px;min-height:42px;padding:4px 8px 4px 5px;display:flex}.account-trigger>span:first-child{background:var(--accent);color:#25160b;width:30px;height:30px;font-family:var(--display);border-radius:50%;place-items:center;font-weight:900;display:grid}.account-trigger-copy{text-align:left;display:none}.account-trigger-copy small,.account-trigger-copy strong{display:block}.account-trigger-copy small{color:#bad1c7;font-family:var(--display);letter-spacing:.1em;font-size:8px;font-weight:900}.account-trigger-copy strong{text-overflow:ellipsis;max-width:100px;font-family:var(--display);white-space:nowrap;font-size:14px;overflow:hidden}.account-popover{z-index:80;border:1px solid var(--border);background:var(--surface);width:min(330px,100vw - 24px);color:var(--text);box-shadow:var(--shadow);border-radius:10px;padding:14px;position:absolute;top:calc(100% + 9px);right:0}.account-identity{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding-bottom:13px;display:flex}.account-avatar{background:var(--court);color:#fffdf8;width:42px;height:42px;font-family:var(--display);border-radius:50%;flex:none;place-items:center;font-size:17px;font-weight:900;display:grid}.account-identity div{min-width:0}.account-identity strong,.account-identity small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-identity strong{font-family:var(--display);font-size:19px}.account-identity small{color:var(--dim)}.account-details,.account-settings-list{margin:0}.account-details>div,.account-settings-list>div{border-bottom:1px solid var(--border);gap:3px;padding:12px 0;display:grid}.account-details dt,.account-settings-list dt{color:var(--dim);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.account-details dd,.account-settings-list dd{font-family:var(--display);overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:900}.account-menu-action{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;justify-content:space-between;align-items:center;width:100%;min-height:46px;font-weight:900;display:flex}.account-menu-action.logout{color:var(--low);border-bottom:0}.account-menu-error{background:var(--low-bg);color:var(--low);border-radius:7px;margin:6px 0 0;padding:9px;font-size:12px;font-weight:700;line-height:1.35}.account-settings-head{border-bottom:2px solid var(--text);align-items:center;gap:10px;padding-bottom:11px;display:flex}.account-settings-head button{border:1px solid var(--border);background:0 0;border-radius:50%;width:38px;height:38px}.account-settings-head div{display:grid}.account-settings-head small{color:var(--accent);font-family:var(--display);letter-spacing:.1em;font-size:9px;font-weight:900}.account-settings-head strong{font-family:var(--display);font-size:21px}.account-preview-note{color:var(--dim);margin:13px 0 0;font-size:12px;line-height:1.4}.settings-page{gap:22px;display:grid}.settings-hero{border-bottom:2px solid var(--text);justify-content:space-between;align-items:end;gap:18px;padding:8px 0 19px;display:flex}.settings-hero h1{font-family:var(--display);letter-spacing:-.025em;margin:5px 0;font-size:clamp(36px,9vw,54px);line-height:.94}.settings-hero p:last-child{max-width:56ch;color:var(--dim);margin:0;line-height:1.45}.settings-layout{gap:14px;display:grid}.settings-section{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:17px 16px}.settings-section-heading{border-bottom:1px solid var(--border);padding-bottom:13px}.settings-section-heading h2{font-family:var(--display);margin:4px 0 0;font-size:25px;line-height:1}.settings-section-heading>span{color:var(--dim);margin-top:6px;font-size:12px;line-height:1.4;display:block}.settings-details{margin:0}.settings-details>div{border-bottom:1px solid var(--border);grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr);gap:12px;padding:13px 0;display:grid}.settings-details dt{color:var(--dim);text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:900}.settings-details dd{overflow-wrap:anywhere;min-width:0;font-family:var(--display);text-align:right;margin:0;font-size:17px;font-weight:900}.settings-actions{display:grid}.settings-action{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:8px 2px;display:flex}.settings-action>span{gap:2px;display:grid}.settings-action strong{font-size:14px}.settings-action small{color:var(--dim);font-size:11px}.settings-action b{color:var(--dim);font-size:22px}.settings-action.danger{color:var(--low);border-bottom:0}.settings-action:disabled{opacity:.58}.settings-message{background:var(--good-bg);color:var(--good);border-radius:7px;margin:10px 0 0;padding:10px 11px;font-size:12px;font-weight:700;line-height:1.4}.current-workspace-card{border-bottom:1px solid var(--border);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:68px;padding:12px 0;display:grid}.current-workspace-card>span{background:var(--court);color:#fffdf8;width:42px;height:42px;font-family:var(--display);border-radius:50%;place-items:center;font-weight:900;display:grid}.current-workspace-card>div{gap:2px;min-width:0;display:grid}.current-workspace-card strong,.current-workspace-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.current-workspace-card strong{font-family:var(--display);font-size:20px}.current-workspace-card small{color:var(--dim);font-size:11px}.current-workspace-card em{background:var(--good-bg);color:var(--good);text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:900}.settings-field{color:var(--dim);font-family:var(--display);gap:6px;margin-top:14px;font-size:12px;font-weight:900;display:grid}.settings-field select{min-height:46px;font-family:var(--body);font-weight:700}.settings-fields{gap:13px;display:grid}@media(max-width:480px){.date-stamp,.workspace-safety small{display:none}.workspace-safety strong{max-width:92px}.workspace-context-bar{gap:8px;padding-left:12px;padding-right:12px}.context-bar{gap:8px;padding-left:12px;padding-right:10px}.context-copy strong{max-width:118px;font-size:15px}.header-start-session{min-height:38px;padding:0 9px;font-size:11px}.auth-name-row,.session-form-grid{grid-template-columns:1fr}.session-form-grid .full-field{grid-column:1}.session-type-options{grid-template-columns:repeat(2,1fr)}.session-review-topline{flex-direction:column;align-items:flex-start}.practice-review-picker{grid-template-columns:1fr}.practice-review-picker .outline-button{width:100%}.settings-hero{flex-direction:column;align-items:flex-start}.settings-hero .outline-button{width:100%}.settings-details>div{grid-template-columns:1fr;gap:4px}.settings-details dd{text-align:left}}@media(min-width:760px){.workspace-select-page{grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);align-items:center;gap:clamp(36px,7vw,100px);padding:64px clamp(40px,8vw,120px)}.workspace-select-intro,.workspace-select-panel{width:100%}.workspace-select-intro>p:not(.section-kicker){margin-bottom:0}.workspace-select-panel{padding:24px}.auth-page{grid-template-rows:1fr;grid-template-columns:minmax(330px,.86fr) minmax(430px,1.14fr)}.auth-intro{justify-content:center;padding:60px clamp(34px,6vw,92px)}.auth-panel{border-radius:18px 0 0 18px;flex-direction:column;justify-content:center;padding:48px clamp(42px,7vw,100px);display:flex}.account-trigger-copy{display:block}.settings-layout{grid-template-columns:1fr 1fr;align-items:start}.preferences-settings-section{grid-column:1/-1}.settings-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}.roster-switch-list{gap:1px}.roster-switch-row{background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:stretch;min-height:66px;display:grid}.roster-switch-row>button:first-child,.roster-switch-row>div:first-child{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:66px;padding:10px 12px;display:flex}.roster-switch-row>button:first-child>span,.roster-switch-row>div:first-child>span{gap:3px;min-width:0;display:grid}.roster-switch-row strong,.roster-switch-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.roster-switch-row strong{font-family:var(--display);font-size:19px}.roster-switch-row small{color:var(--dim);text-transform:none;font-size:11px;font-weight:700}.roster-switch-row b{color:var(--dim);text-transform:uppercase;font-size:11px}.roster-switch-row.active>button:first-child{background:var(--court);color:#fffdf8}.roster-switch-row.active small,.roster-switch-row.active b{color:#cfe4dc}.roster-switch-row.archived{opacity:.65}.roster-archive-action{border:0;border-left:1px solid var(--border);min-width:76px;color:var(--dim);background:0 0;padding:0 10px;font-size:11px;font-weight:900}.create-roster-form,.player-form,.player-edit-form{grid-template-columns:1fr 1fr;gap:11px;display:grid}.create-roster-form{border-top:1px solid var(--border);padding:16px 0 4px}.create-roster-form label,.player-form label,.player-edit-form label{min-width:0;color:var(--dim);font-family:var(--display);gap:5px;font-size:11px;font-weight:900;display:grid}.create-roster-form>label:first-child,.create-roster-form>.form-row,.create-roster-form>button,.full-field{grid-column:1/-1}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.player-form{border:1px solid var(--border);background:var(--surface);padding:16px}@supports (color:color-mix(in lab,red,red)){.player-form{background:color-mix(in srgb,var(--surface)80%,transparent)}}.player-form .primary-button{min-height:46px}.roster-item{align-items:flex-start}.player-identity{gap:2px;display:grid}.player-identity small{color:var(--dim);font-size:11px;line-height:1.35}.player-edit-form{width:100%}.player-edit-form>label:first-child,.player-edit-form>.form-row,.player-edit-actions{grid-column:1/-1}.player-edit-actions{justify-content:flex-end;gap:8px;display:flex}.history-preservation-note{background:var(--border);margin:0;padding:11px 12px}@supports (color:color-mix(in lab,red,red)){.history-preservation-note{background:color-mix(in srgb,var(--border)32%,transparent)}}.history-preservation-note{color:var(--dim);font-size:12px;line-height:1.4}@media(max-width:520px){.create-roster-form,.player-form,.player-edit-form,.form-row{grid-template-columns:1fr}.create-roster-form>label:first-child,.create-roster-form>.form-row,.create-roster-form>button,.full-field,.player-edit-form>label:first-child,.player-edit-form>.form-row,.player-edit-actions{grid-column:1}.roster-switch-row{grid-template-columns:minmax(0,1fr) 70px}.roster-item{flex-wrap:wrap}.roster-item .player-identity{flex-basis:100%}}.roster-management-production{max-width:820px;margin:0 auto}.compact-button{min-height:42px;padding-inline:15px}.roster-operation-message{border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:13px;font-weight:800;display:flex}.roster-operation-message.success{background:var(--good-bg);color:var(--good)}.roster-operation-message.error{background:var(--low-bg);color:var(--low)}.roster-operation-message button{color:inherit;background:0 0;border:0;font-size:20px}.read-only-note{background:var(--border);margin:0;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.read-only-note{background:color-mix(in srgb,var(--border)35%,transparent)}}.read-only-note{color:var(--dim);font-size:12px;line-height:1.45}.production-roster-form{border:1px solid var(--border);background:var(--surface);grid-template-columns:1fr 1fr;gap:11px;padding:16px;display:grid}.production-roster-form h3,.production-roster-form>label:first-of-type,.production-roster-form>.form-row,.production-roster-form>.player-edit-actions,.production-roster-form>button{grid-column:1/-1}.production-roster-form h3{font-family:var(--display);margin:0;font-size:20px}.production-roster-form label,.existing-player-form label{min-width:0;color:var(--dim);font-family:var(--display);gap:5px;font-size:11px;font-weight:900;display:grid}.check-field{grid-template-columns:auto 1fr;align-items:center;min-height:42px;color:var(--text)!important;gap:9px!important;display:flex!important}.check-field input{width:20px;height:20px;min-height:20px;accent-color:var(--accent);margin:0}.roster-edit-block{justify-content:flex-end;display:flex}.roster-edit-block .production-roster-form{width:100%}.add-player-panel{border-top:2px solid var(--text)}.add-player-tabs{background:var(--border);grid-template-columns:1fr 1fr;gap:1px;display:grid}.add-player-tabs button{background:var(--surface);min-height:48px;color:var(--dim);border:0;padding:8px 10px;font-weight:900}.add-player-tabs button.active{background:var(--court);color:#fffdf8}.existing-player-form{border:1px solid var(--border);background:var(--surface);border-top:0;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:16px;display:grid}.existing-player-form p{color:var(--dim);grid-column:1/-1;margin:0;font-size:12px}.existing-player-form .primary-button{min-height:48px}.roster-player-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.small-action.danger{color:var(--low);border-color:var(--low)}@supports (color:color-mix(in lab,red,red)){.small-action.danger{border-color:color-mix(in srgb,var(--low)42%,var(--border))}}.roster-confirm-backdrop{z-index:100}.roster-confirm-sheet{max-width:560px;margin:0 auto}.roster-confirm-sheet>p{color:var(--dim);line-height:1.55}.roster-remove-confirm{width:100%;margin-top:10px}@media(max-width:520px){.roster-management-head{align-items:center}.production-roster-form,.existing-player-form{grid-template-columns:1fr}.production-roster-form h3,.production-roster-form>label:first-of-type,.production-roster-form>.form-row,.production-roster-form>.player-edit-actions,.production-roster-form>button,.existing-player-form p{grid-column:1}.add-player-tabs button{font-size:12px}.roster-player-actions{justify-content:stretch;width:100%}.roster-player-actions button{flex:1}}.sheet-head-actions{align-items:center;gap:7px;display:flex}.undo-button{border:1px solid var(--accent);min-height:40px}@supports (color:color-mix(in lab,red,red)){.undo-button{border:1px solid color-mix(in srgb,var(--accent)55%,var(--border))}}.undo-button{background:var(--accent);border-radius:7px;padding:0 12px}@supports (color:color-mix(in lab,red,red)){.undo-button{background:color-mix(in srgb,var(--accent)12%,var(--surface))}}.undo-button{color:var(--text);font-weight:900}.undo-button:disabled{opacity:.36}.live-summary-strip{border:1px solid var(--border);background:var(--border);grid-template-columns:repeat(5,1fr);gap:1px;margin:12px 0 0;display:grid}.live-summary-strip>span{background:var(--surface-strong);font-variant-numeric:tabular-nums;place-items:center;gap:2px;min-width:0;padding:8px 3px;display:grid}.live-summary-strip small{color:var(--dim);font-family:var(--display);letter-spacing:.08em;font-size:9px;font-weight:900}.live-summary-strip strong{font-family:var(--display);font-size:17px}.quick-entry-note{background:var(--court-soft);gap:2px;padding:10px 12px;display:grid}@supports (color:color-mix(in lab,red,red)){.quick-entry-note{background:color-mix(in srgb,var(--court-soft)10%,var(--surface))}}.quick-entry-note{color:var(--dim);font-size:12px;line-height:1.35}.quick-entry-note strong{color:var(--text);font-family:var(--display);font-size:14px}.quick-shooting{padding-top:12px}.count-main{min-height:64px;position:relative}.count-main b{background:var(--court);color:#fffdf8;width:28px;height:28px;font-family:var(--display);border-radius:50%;flex:none;place-items:center;font-size:22px;line-height:1;display:grid}.count-main:active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.count-main:active{background:color-mix(in srgb,var(--accent)18%,var(--surface-strong))}}.count-minus:active{background:var(--low)}@supports (color:color-mix(in lab,red,red)){.count-minus:active{background:color-mix(in srgb,var(--low)14%,var(--surface))}}.undo-strip{background:var(--court-soft);justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:7px 8px 7px 12px;display:flex}@supports (color:color-mix(in lab,red,red)){.undo-strip{background:color-mix(in srgb,var(--court-soft)9%,var(--surface))}}.undo-strip{border:1px solid var(--border)}.undo-strip span{min-width:0;color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.undo-strip button{background:var(--court);color:#fffdf8;border:0;border-radius:6px;flex:none;min-height:34px;padding:0 11px;font-size:12px;font-weight:900}.undo-strip button:disabled{opacity:.38}.quick-player-list{border-top:2px solid var(--text);border-bottom:2px solid var(--text)}.quick-player-row{grid-template-columns:minmax(100px,.72fr) minmax(0,1.8fr) 30px;gap:10px;min-height:104px;padding:10px 8px 10px 10px}.player-row-identity{gap:3px;min-width:0;display:grid}.player-row-identity strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:20px;overflow:hidden}.player-row-identity small{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:800;overflow:hidden}.player-running-line{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 4px;min-width:0;display:grid}.player-running-line>span{font-variant-numeric:tabular-nums;justify-items:center;gap:1px;min-width:0;display:grid}.player-running-line small{color:var(--dim);font-family:var(--display);letter-spacing:.06em;font-size:8px;font-weight:900}.player-running-line b{font-family:var(--display);font-size:14px}.quick-open-mark{background:var(--accent);color:#25160b;width:28px;height:28px;font-family:var(--display);border-radius:50%;place-items:center;font-size:22px;font-weight:900;display:grid}@media(max-width:390px){.active-session-title{flex-wrap:wrap;align-items:flex-start}.save-state{margin-left:27px}.quick-player-row{grid-template-columns:minmax(82px,.65fr) minmax(0,1.7fr) 26px;gap:6px}.player-row-identity strong{font-size:17px}.quick-open-mark{width:25px;height:25px;font-size:19px}.sheet-head h2{font-size:29px}.undo-button{padding:0 9px;font-size:12px}}@media(min-width:760px){.quick-player-row{grid-template-columns:minmax(130px,.8fr) minmax(0,2.2fr) 34px;min-height:84px}.player-running-line{grid-template-columns:repeat(6,minmax(0,1fr))}.quick-entry-panel .control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.roster-analytics{gap:24px;display:grid}.analytics-header{border-bottom:3px solid var(--text);justify-content:space-between;align-items:end;gap:14px;padding-bottom:16px;display:flex}.analytics-header h1{font-family:var(--display);letter-spacing:-.025em;margin:6px 0 5px;font-size:clamp(36px,10vw,58px);line-height:.92}.analytics-header p:last-child{color:var(--dim);margin:0;font-size:13px}.analytics-header>span{color:var(--dim);font-family:var(--display);flex:none;font-size:13px;font-weight:900}.analytics-filter-panel,.analytics-summary,.analytics-comparison,.analytics-player-charts,.analytics-session-history{gap:14px;display:grid}.analytics-filter-tabs button:last-child{grid-column:auto}.analytics-scoreboard{border-top:4px solid var(--accent)}.analytics-report-row summary{grid-template-columns:minmax(100px,1fr) auto auto 15px}.profile-link-inline{border:1px solid var(--court-soft);width:max-content;min-height:40px;color:var(--court-soft);background:0 0;border-radius:7px;padding:0 12px;font-weight:900}@media(prefers-color-scheme:dark){.profile-link-inline{color:#8de4c5}}.analytics-comparison-head{justify-content:space-between;align-items:end;gap:18px;display:flex}.analytics-comparison-head h2{font-family:var(--display);margin:4px 0 0;font-size:28px;line-height:1}.analytics-comparison-head>p{max-width:34ch;color:var(--dim);text-align:right;margin:0;font-size:12px;line-height:1.4}.analytics-sort-controls{border-top:2px solid var(--text);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:12px;display:grid}.analytics-sort-controls label{color:var(--dim);gap:5px;font-size:11px;font-weight:900;display:grid}.analytics-sort-controls select{min-height:44px}.analytics-sort-controls button{border:1px solid var(--court-soft);background:var(--court);color:#fffdf8;min-height:44px;font-family:var(--display);white-space:nowrap;border-radius:7px;padding:0 13px;font-size:13px;font-weight:900}.analytics-bars{background:var(--court);color:#fffdf8;gap:9px;padding:14px 12px;display:grid}.analytics-bars-head{justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:4px;display:flex}.analytics-bars-head strong{font-family:var(--display);font-size:20px}.analytics-bars-head span{color:#bcd1c8;font-size:10px}.analytics-bar-row{grid-template-columns:minmax(82px,.7fr) minmax(80px,1.7fr) 42px;align-items:center;gap:8px;display:grid}.analytics-bar-row button{color:#fffdf8;font-family:var(--display);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;padding:0;font-size:13px;font-weight:900;overflow:hidden}.analytics-bar-row>div{background:#ffffff29;height:9px;overflow:hidden}.analytics-bar-row i{background:var(--accent);height:100%;display:block}.analytics-bar-row>strong{font-family:var(--display);text-align:right;font-size:13px}.analytics-table{border-top:2px solid var(--text);border-bottom:2px solid var(--text)}.analytics-table-head{display:none}.analytics-player-row{border-bottom:1px solid var(--border);background:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:1px 0;display:grid}.analytics-player-row:last-child{border-bottom:0}.analytics-player-row>span{background:var(--surface-strong);font-variant-numeric:tabular-nums;align-content:center;gap:3px;min-width:0;min-height:58px;padding:8px 10px;display:grid}.analytics-player-row>span small{color:var(--dim);font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:900}.analytics-player-row>span strong{font-family:var(--display);font-size:16px}.analytics-player-link{background:var(--court);color:#fffdf8;text-align:left;border:0;grid-column:1/-1;align-content:center;gap:2px;min-width:0;min-height:64px;padding:9px 10px;display:grid}.analytics-player-link strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:21px;overflow:hidden}.analytics-player-link small{color:#c6dbd2;font-size:10px}.analytics-selected-stat{background:var(--accent)!important}@supports (color:color-mix(in lab,red,red)){.analytics-selected-stat{background:color-mix(in srgb,var(--accent)14%,var(--surface-strong))!important}}.analytics-selected-stat strong{color:var(--text);font-size:22px!important}.analytics-shooting-cell{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px!important}.analytics-shooting-cell b{font-family:var(--display);gap:2px;font-size:13px;display:grid}.analytics-shooting-cell em{color:var(--dim);font-size:11px;font-style:normal}@media(max-width:480px){.top-nav{padding-left:6px;padding-right:6px}.top-nav button{letter-spacing:.025em;flex-direction:column;gap:2px;min-height:50px;padding:3px;font-size:10px}.nav-mark{font-size:14px}.analytics-header,.analytics-comparison-head{flex-direction:column;align-items:flex-start}.analytics-comparison-head>p{text-align:left}.analytics-sort-controls{grid-template-columns:1fr}.analytics-sort-controls button{width:100%}}@media(min-width:760px){.analytics-player-row,.analytics-table-head{background:var(--border);grid-template-columns:minmax(135px,1.3fr) 72px 130px 72px 64px 64px 82px 52px 78px;align-items:stretch;gap:1px;display:grid}.analytics-table-head{color:var(--dim);font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;padding:0 1px 1px;font-size:9px;font-weight:900}.analytics-table-head span{background:var(--bg);min-width:0;padding:8px 6px}.analytics-player-link{grid-column:auto;min-height:76px;padding:9px}.analytics-player-row>span{min-height:76px;padding:8px 6px}.analytics-shooting-cell{grid-column:auto;grid-template-columns:1fr;gap:2px!important}.analytics-shooting-cell b{justify-content:space-between;font-size:11px;display:flex}.analytics-shooting-cell em{font-size:10px}}.player-profile{gap:24px;display:grid}.profile-back{border:1px solid var(--border);width:max-content;min-height:42px;color:var(--dim);background:0 0;border-radius:7px;padding:0 13px;font-weight:900}.profile-header{border-top:4px solid var(--accent);background:var(--court);color:#fffdf8;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:15px;padding:18px 16px;display:grid}.profile-number{width:76px;height:76px;font-family:var(--display);border:2px solid #ffffff80;border-radius:50%;place-items:center;font-size:34px;font-weight:900;display:grid}.profile-identity{min-width:0}.profile-identity>p{color:#bcd1c8;font-family:var(--display);letter-spacing:.14em;margin:0;font-size:10px;font-weight:900}.profile-identity h1{font-family:var(--display);text-overflow:ellipsis;margin:3px 0 8px;font-size:clamp(34px,10vw,54px);line-height:.92;overflow:hidden}.profile-identity>div{flex-wrap:wrap;gap:6px;display:flex}.profile-identity>div span{color:#dce9e3;border:1px solid #ffffff3d;border-radius:5px;padding:5px 7px;font-size:11px;font-weight:800}.profile-identity>div span.active{color:#a7ebce;border-color:#8ee1be73}.profile-identity>div span.inactive{color:#ffc1b8;border-color:#f09a8d80}.profile-section-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.profile-section-head h2{font-family:var(--display);margin:4px 0 0;font-size:28px;line-height:1}.profile-section-head>span{color:var(--dim);flex:none;font-size:12px;font-weight:800}.profile-filter-panel{gap:13px;display:grid}.profile-filter-tabs{background:var(--border);border-radius:9px;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.profile-filter-tabs{background:color-mix(in srgb,var(--border)62%,transparent)}}.profile-filter-tabs button{min-height:44px;color:var(--dim);font-family:var(--display);background:0 0;border:0;border-radius:6px;padding:5px 7px;font-size:13px;font-weight:900}.profile-filter-tabs button:last-child{grid-column:1/-1}.profile-filter-tabs button.active{background:var(--surface-strong);color:var(--text);box-shadow:0 1px 3px #10211c24}.profile-filter-control{max-width:520px;color:var(--dim);gap:6px;font-size:11px;font-weight:900;display:grid}.profile-date-controls{grid-template-columns:1fr 1fr;gap:10px;display:grid}.profile-date-controls label,.shot-filter-grid label{min-width:0;color:var(--dim);gap:6px;font-size:11px;font-weight:900;display:grid}.profile-metrics{border:1px solid var(--court);background:var(--court);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.profile-metrics>div{background:var(--court);color:#fffdf8;align-content:center;gap:3px;min-height:102px;padding:12px;display:grid}.profile-metrics>div:last-child{grid-column:1/-1}.profile-metrics span{color:#bcd1c8;font-family:var(--display);letter-spacing:.08em;font-size:10px;font-weight:900}.profile-metrics strong{font-family:var(--display);font-size:32px;line-height:1}.profile-metrics small{color:#dce9e3}.profile-trends,.profile-shot-history,.profile-session-history{gap:14px;padding-top:4px;display:grid}.trend-grid{align-items:start;gap:12px;display:grid}.trend-chart{border-top:2px solid var(--text);border-bottom:1px solid var(--border);background:var(--surface);min-width:0;padding:14px 10px 8px}.trend-chart h3{font-family:var(--display);margin:0 4px;font-size:20px}.trend-chart>p{color:var(--dim);margin:3px 4px 10px;font-size:11px}.chart-frame{width:100%;height:270px}.profile-empty{border-top:2px solid var(--text);border-bottom:1px solid var(--border);color:var(--dim);gap:4px;padding:25px 12px;display:grid}.profile-empty strong{color:var(--text);font-family:var(--display);font-size:20px}.shot-filter-grid{background:var(--surface);border-top:2px solid var(--text);grid-template-columns:1fr 1fr;gap:10px;padding:13px;display:grid}.shot-filter-grid label:nth-child(3){grid-column:1/-1}.shot-filter-grid select,.shot-filter-grid input{min-height:44px}.historical-shot-layout{align-items:start;gap:12px;display:grid}.historical-court{width:min(100%,480px);margin:0 auto}.historical-shot-summary{border-top:2px solid var(--court);border-bottom:1px solid var(--border);background:var(--surface);gap:7px;padding:14px;display:grid}.historical-shot-summary h3{font-family:var(--display);margin:0;font-size:21px}.historical-shot-summary>p{color:var(--dim);margin:0;line-height:1.45}.location-gap-note{background:var(--accent);gap:3px;margin-top:5px;padding:11px;display:grid}@supports (color:color-mix(in lab,red,red)){.location-gap-note{background:color-mix(in srgb,var(--accent)10%,var(--surface-strong))}}.location-gap-note{color:var(--dim);font-size:12px}.location-gap-note strong{color:var(--text)}.profile-session-list{border-top:2px solid var(--text);border-bottom:2px solid var(--text)}.profile-session-list>button{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) repeat(3,42px) 12px;align-items:center;gap:7px;width:100%;min-height:76px;padding:10px 7px;display:grid}.profile-session-list>button:last-child{border-bottom:0}.profile-session-list>button:active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.profile-session-list>button:active{background:color-mix(in srgb,var(--accent)10%,transparent)}}.profile-session-copy{gap:3px;min-width:0;display:grid}.profile-session-copy strong,.profile-session-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-session-copy strong{font-family:var(--display);font-size:17px}.profile-session-copy small{color:var(--dim);font-size:10px}.profile-session-list>button>span:not(.profile-session-copy){justify-items:center;gap:2px;display:grid}.profile-session-list>button>span:not(.profile-session-copy) small{color:var(--dim);font-family:var(--display);font-size:9px;font-weight:900}.profile-session-list>button>span:not(.profile-session-copy) b{font-family:var(--display);font-size:15px}.profile-session-list i{color:var(--dim);font-size:22px;font-style:normal}.player-profile-link{min-width:0;color:var(--text);text-align:left;background:0 0;border:0;margin-right:auto;padding:3px 4px}.player-profile-link span{color:var(--court-soft)}@media(min-width:760px){.profile-filter-tabs{grid-template-columns:repeat(5,1fr)}.analytics-filter-tabs{grid-template-columns:repeat(6,1fr)}.profile-filter-tabs button:last-child{grid-column:auto}.profile-metrics{grid-template-columns:repeat(5,1fr)}.profile-metrics>div:last-child{grid-column:auto}.trend-grid{grid-template-columns:1fr 1fr}.shot-filter-grid{grid-template-columns:repeat(5,1fr)}.shot-filter-grid label:nth-child(3){grid-column:auto}.historical-shot-layout{grid-template-columns:minmax(340px,480px) minmax(230px,1fr)}.historical-shot-summary{position:sticky;top:90px}}@media(max-width:430px){.profile-header{grid-template-columns:62px minmax(0,1fr);padding:15px 12px}.profile-number{width:62px;height:62px;font-size:28px}.profile-session-list>button{grid-template-columns:minmax(0,1fr) repeat(2,38px) 10px}.profile-session-list>button>span:nth-of-type(4){display:none}}.top-nav{grid-template-columns:repeat(4,1fr)}.session-history-page{gap:22px;display:grid}.session-history-hero{border-bottom:2px solid var(--text);justify-content:space-between;align-items:end;gap:16px;padding-bottom:16px;display:flex}.session-history-hero h1{max-width:720px;font-family:var(--display);letter-spacing:-.025em;margin:7px 0;font-size:clamp(35px,10vw,56px);line-height:.94}.session-history-hero>div>p:last-child{color:var(--dim);margin:0;font-weight:700}.history-access{color:var(--dim);background:var(--border);border-radius:999px;flex:none;padding:7px 10px}@supports (color:color-mix(in lab,red,red)){.history-access{background:color-mix(in srgb,var(--border)50%,transparent)}}.history-access{font-family:var(--display);font-size:11px;font-weight:900}.history-access.editor{color:var(--good);background:var(--good-bg)}.session-history-filters{border:1px solid var(--border);border-top:4px solid var(--court);background:var(--surface);gap:12px;padding:14px;display:grid}.session-history-filters label,.history-date-filter{color:var(--dim);gap:6px;font-size:11px;font-weight:900;display:grid}.history-search input{min-height:52px;font-size:16px}.history-filter-grid,.history-range{grid-template-columns:1fr 1fr;gap:10px;display:grid}.history-date-modes{background:var(--border);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.history-date-modes{background:color-mix(in srgb,var(--border)55%,transparent)}}.history-date-modes button{min-height:40px;color:var(--dim);font-family:var(--display);background:0 0;border:0;border-radius:5px;font-size:12px;font-weight:900}.history-date-modes button.active{background:var(--surface-strong);color:var(--text);box-shadow:0 1px 3px #10211c21}.history-filter-foot{min-height:30px;color:var(--dim);justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.history-filter-foot button,.history-empty-state button{color:var(--court-soft);background:0 0;border:0;font-weight:900;text-decoration:underline}.session-month-groups{gap:24px;display:grid}.session-month-group{gap:9px;display:grid}.session-month-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.session-month-heading h2{font-family:var(--display);margin:0;font-size:24px}.session-month-heading span{background:var(--border);border-radius:999px;min-width:30px;padding:3px 8px}@supports (color:color-mix(in lab,red,red)){.session-month-heading span{background:color-mix(in srgb,var(--border)55%,transparent)}}.session-month-heading span{color:var(--dim);font-family:var(--display);text-align:center;font-size:12px;font-weight:900}.session-history-cards{border-top:2px solid var(--text);border-bottom:2px solid var(--text);display:grid}.session-history-card{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:92px;padding:12px 4px;display:grid}.session-history-card:last-child{border-bottom:0}.session-history-card:active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.session-history-card:active{background:color-mix(in srgb,var(--accent)10%,transparent)}}.session-card-date{border-right:1px solid var(--border);text-align:center;place-content:center;align-self:stretch;display:grid}.session-card-date b{font-family:var(--display);font-size:25px;line-height:1}.session-card-date small{color:var(--dim);text-transform:uppercase;font-size:10px;font-weight:900}.session-card-main{gap:4px;min-width:0;display:grid}.session-card-main>strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:20px;line-height:1;overflow:hidden}.session-card-main>small{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.session-card-badges{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.session-card-badges em{background:var(--court);color:#fffdf8;letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:3px 6px;font-size:9px;font-style:normal;font-weight:900}.session-card-badges em.opponent{background:var(--accent);max-width:180px;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.session-card-badges em.opponent{background:color-mix(in srgb,var(--accent)18%,var(--surface))}}.session-card-badges em.opponent{color:var(--text);text-overflow:ellipsis;white-space:nowrap}.session-card-stats{display:none}.session-card-open{color:var(--court-soft);grid-column:2/-1;justify-content:flex-end;align-items:center;gap:5px;font-size:11px;font-weight:900;display:flex}.session-card-open i{font-size:20px;font-style:normal;line-height:.7}.history-empty-state{border-top:2px solid var(--text);border-bottom:1px solid var(--border);color:var(--dim);gap:5px;padding:30px 14px;display:grid}.history-empty-state strong{color:var(--text);font-family:var(--display);font-size:22px}.history-empty-state button{justify-self:start;padding:8px 0}.review-correction-control.read-only>div{display:block}.review-correction-control.read-only strong{text-align:left;display:block}.session-review-actions.has-three{grid-template-columns:1fr 1fr}.session-review-actions.has-three .primary-button{grid-column:1/-1}.reopen-session-button{border-color:var(--court-soft);color:var(--court-soft)}.account-permission-preview{color:var(--dim);gap:6px;margin:14px 14px 0;font-size:11px;font-weight:900;display:grid}.account-permission-preview select{min-height:42px}.account-permission-preview small{font-weight:500;line-height:1.35}@media(min-width:760px){.top-nav{grid-template-columns:repeat(4,max-content)}.session-history-filters{grid-template-columns:minmax(240px,1.5fr) minmax(320px,1fr);align-items:end}.history-filter-grid{grid-area:1/2}.history-date-filter{grid-column:1/-1}.history-single-date,.history-range{grid-column:1/-1;max-width:520px}.history-filter-foot{grid-column:1/-1}.session-history-card{grid-template-columns:54px minmax(220px,1.5fr) minmax(200px,.9fr) 92px;padding:12px 10px}.session-card-stats{background:var(--border);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.session-card-stats span{background:var(--surface);text-align:center;gap:2px;padding:7px 8px;display:grid}.session-card-stats small{color:var(--dim);font-size:9px;font-weight:900}.session-card-stats b{font-family:var(--display);font-size:16px}.session-card-open{grid-column:auto;justify-content:flex-end}.session-review-actions.has-three{grid-template-columns:180px 180px 220px}.session-review-actions.has-three .primary-button{grid-column:auto}}@media(max-width:420px){.session-history-hero{flex-direction:column;align-items:start}.history-filter-grid,.history-range{grid-template-columns:1fr}.history-date-modes button{padding:0 5px;font-size:11px}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.staff-page{gap:22px;display:grid}.staff-hero{border-bottom:2px solid var(--text);justify-content:space-between;align-items:end;gap:20px;padding-bottom:20px;display:flex}.staff-hero h1{font-family:var(--display);letter-spacing:-.025em;margin:7px 0;font-size:clamp(36px,10vw,58px);line-height:.92}.staff-hero p:last-child{max-width:54ch;color:var(--dim);margin:0;line-height:1.45}.staff-access-summary{flex:none;justify-items:end;min-width:96px;display:grid}.staff-access-summary span{font-family:var(--display);font-size:45px;font-weight:900;line-height:.9}.staff-access-summary small{color:var(--dim);font-weight:800}.staff-security-note{border:1px solid var(--court-soft);grid-template-columns:28px 1fr;align-items:start;gap:10px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.staff-security-note{border:1px solid color-mix(in srgb,var(--court-soft)32%,var(--border))}}.staff-security-note{background:var(--court-soft);border-radius:8px}@supports (color:color-mix(in lab,red,red)){.staff-security-note{background:color-mix(in srgb,var(--court-soft)8%,var(--surface))}}.staff-security-note>span{background:var(--court);color:#fffdf8;width:24px;height:24px;font-family:var(--display);border-radius:50%;place-items:center;font-weight:900;display:grid}.staff-security-note p{gap:2px;margin:0;display:grid}.staff-security-note small{color:var(--dim);line-height:1.4}.staff-section,.staff-role-guide{gap:14px;display:grid}.staff-section-head{justify-content:space-between;align-items:end;gap:12px;display:flex}.staff-section-head h2{font-family:var(--display);margin:3px 0 0;font-size:28px;line-height:1}.staff-section-head>span{color:var(--dim);font-family:var(--display);font-weight:900}.staff-invite-form{border-top:3px solid var(--court);background:var(--surface);box-shadow:0 1px 0 var(--border);grid-template-columns:minmax(0,1.5fr) minmax(140px,.7fr) auto;align-items:end;gap:10px;padding:16px;display:grid}.staff-invite-form label{min-width:0;color:var(--dim);font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;gap:6px;font-size:11px;font-weight:900;display:grid}.staff-invite-form button{white-space:nowrap}.staff-message{background:var(--good-bg);color:var(--good);border-radius:7px;margin:0;padding:10px 12px;font-size:13px;font-weight:800}.staff-member-list{border-top:2px solid var(--text);border-bottom:1px solid var(--border);background:var(--border);gap:1px;display:grid}.staff-member-row{background:var(--surface);grid-template-columns:44px minmax(150px,1fr) auto minmax(180px,auto);align-items:center;gap:12px;min-width:0;padding:12px;display:grid}.staff-avatar{background:var(--court);color:#fffdf8;width:42px;height:42px;font-family:var(--display);border-radius:50%;place-items:center;font-size:17px;font-weight:900;display:grid}.staff-member-identity{gap:2px;min-width:0;display:grid}.staff-member-identity strong,.staff-member-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.staff-member-identity strong{font-family:var(--display);font-size:18px}.staff-member-identity small{color:var(--dim);font-size:12px}.staff-role-badge{min-height:27px;font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;padding:0 9px;font-size:10px;font-weight:900;display:inline-flex}.role-owner{background:var(--court);color:#fffdf8}.role-admin{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.role-admin{background:color-mix(in srgb,var(--accent)25%,var(--surface))}}.role-admin{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.role-admin{color:color-mix(in srgb,var(--accent)68%,var(--text))}}.role-staff{background:var(--good-bg);color:var(--good)}.role-viewer{background:var(--border)}@supports (color:color-mix(in lab,red,red)){.role-viewer{background:color-mix(in srgb,var(--border)55%,transparent)}}.role-viewer{color:var(--dim)}.staff-member-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.staff-member-actions select{min-width:118px;min-height:38px;font-size:13px;font-weight:800}.staff-remove{border:1px solid var(--low);min-height:38px}@supports (color:color-mix(in lab,red,red)){.staff-remove{border:1px solid color-mix(in srgb,var(--low)35%,var(--border))}}.staff-remove{color:var(--low);background:0 0;border-radius:7px;padding:0 10px;font-size:12px;font-weight:900}.staff-locked-role{max-width:160px;color:var(--dim);text-align:right;font-size:11px}.pending-head{margin-top:10px}.role-guide-list{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.role-guide-list>div{border-bottom:1px solid var(--border);grid-template-columns:82px 1fr;align-items:start;gap:10px;min-width:0;padding:13px 10px;display:grid}.role-guide-list p{color:var(--dim);margin:2px 0 0;font-size:13px;line-height:1.4}.staff-current-access{color:var(--dim);text-align:center;margin:0;font-size:11px}.viewer-mode-note{background:var(--border);border-radius:7px;margin:0;padding:11px 12px}@supports (color:color-mix(in lab,red,red)){.viewer-mode-note{background:color-mix(in srgb,var(--border)45%,transparent)}}.viewer-mode-note{color:var(--dim);font-size:12px;font-weight:800}.viewer-summary-button{color:#fffdf8;background:#ffffff14;border-color:#ffffff59;width:100%}@media(max-width:700px){.top-nav.staff-enabled{grid-template-columns:repeat(5,minmax(0,1fr));padding-inline:6px}.top-nav.staff-enabled button{letter-spacing:.02em;gap:3px;min-width:0;padding-inline:3px;font-size:10px}.top-nav.staff-enabled .nav-mark{font-size:13px}.staff-hero{align-items:start}.staff-access-summary{min-width:70px}.staff-invite-form{grid-template-columns:1fr 125px}.staff-invite-form button{grid-column:1/-1;width:100%}.staff-member-row{grid-template-columns:42px minmax(0,1fr) auto;gap:9px}.staff-member-actions{grid-column:2/-1;justify-content:flex-start}.staff-member-actions label{flex:1}.staff-member-actions select{width:100%}.role-guide-list{grid-template-columns:1fr}}.workspace-choice.default-environment{border-left:5px solid var(--accent)}.games-workspace,.unified-profile{gap:22px;display:grid}.games-hero{border-bottom:3px solid var(--text);justify-content:space-between;align-items:end;gap:18px;padding-bottom:18px;display:flex}.games-hero h1{font-family:var(--display);margin:5px 0;font-size:clamp(38px,10vw,60px);line-height:.92}.games-hero p:last-child{max-width:58ch;color:var(--dim);margin:0;line-height:1.45}.games-subnav,.unified-profile-tabs{background:var(--border);grid-template-columns:repeat(3,1fr);gap:3px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.games-subnav,.unified-profile-tabs{background:color-mix(in srgb,var(--border)65%,transparent)}}.games-subnav button,.unified-profile-tabs button,.shot-context-tabs button{min-height:44px;color:var(--dim);font-family:var(--display);background:0 0;border:0;padding:6px;font-size:12px;font-weight:900}.games-subnav button.active,.unified-profile-tabs button.active,.shot-context-tabs button.active{background:var(--surface-strong);color:var(--text);box-shadow:0 1px 3px #0000001f}.game-primary-actions{gap:10px;display:grid}.game-primary-actions button{border:0;border-top:4px solid var(--accent);background:var(--court);color:#fffdf8;text-align:left;align-content:center;gap:5px;min-height:105px;padding:16px;display:grid}.game-primary-actions strong{font-family:var(--display);font-size:24px}.game-primary-actions span{color:#c9dcd5;font-size:12px}.games-dashboard,.game-history,.game-totals,.profile-overview,.profile-game-tab,.game-editor{gap:16px;display:grid}.game-editor{border-top:4px solid var(--accent);background:var(--surface);padding:16px}.game-meta-grid,.game-filter-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.game-meta-grid label,.game-filter-grid label,.stat-input-grid label,.game-player-match label{min-width:0;color:var(--dim);text-transform:uppercase;gap:5px;font-size:10px;font-weight:900;display:grid}.game-meta-grid textarea{resize:vertical;min-height:80px}.upload-zone{border:2px dashed var(--court-soft);background:var(--court-soft);place-items:center;min-height:130px;display:grid;position:relative}@supports (color:color-mix(in lab,red,red)){.upload-zone{background:color-mix(in srgb,var(--court-soft)7%,var(--surface))}}.upload-zone{text-align:center}.upload-zone input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.upload-zone label{max-width:28ch;color:var(--dim);font-weight:900}.box-score-preview{object-fit:contain;background:#fff;width:min(100%,620px);max-height:440px;margin:auto}.editor-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.file-replace{place-items:center;display:grid}.import-message,.draft-warning{background:var(--accent);margin:0;padding:11px 12px}@supports (color:color-mix(in lab,red,red)){.import-message,.draft-warning{background:color-mix(in srgb,var(--accent)12%,var(--surface-strong))}}.import-message,.draft-warning{color:var(--dim);font-size:12px;line-height:1.45}.box-score-editor{gap:10px;display:grid}.game-stat-head,.game-player-match{justify-content:space-between;align-items:end;gap:10px;display:flex}.game-stat-head h3{font-family:var(--display);margin:0;font-size:22px}.game-stat-card{border-top:2px solid var(--text);background:var(--surface-strong);gap:10px;padding:12px;display:grid}.game-player-match label{flex:1}.game-player-match span{flex:none;padding:6px 8px;font-size:9px;font-weight:900}.match-ok{background:var(--good-bg);color:var(--good)}.match-review{background:var(--low-bg);color:var(--low)}.stat-input-grid{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.stat-input-grid input{min-width:0}.remove-row{color:var(--low);background:0 0;border:0;justify-self:end;font-weight:900}.validation-list{background:var(--low-bg);color:var(--low);padding:10px 12px}.validation-list p{margin:3px 0;font-size:12px}.game-list,.import-history-list{border-top:2px solid var(--text);border-bottom:2px solid var(--text);display:grid}.game-list article{border-bottom:1px solid var(--border);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:80px;padding:10px 4px;display:grid}.game-list article:last-child,.import-history-list>div:last-child{border-bottom:0}.game-list article>div{gap:3px;min-width:0;display:grid}.game-list article strong,.game-list article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-list article strong{font-family:var(--display);font-size:19px}.game-list article small{color:var(--dim);font-size:10px}.game-list article>b{font-family:var(--display);font-size:17px}.game-list article>em{color:var(--dim);text-align:right;grid-column:2/-1;font-size:10px;font-style:normal}.game-result{background:var(--border);width:32px;height:32px;font-family:var(--display);place-items:center;font-weight:900;display:grid}.result-w{background:var(--good-bg);color:var(--good)}.result-l{background:var(--low-bg);color:var(--low)}.game-total-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.game-total-grid>div{background:var(--surface-strong);align-content:center;gap:3px;min-height:82px;padding:10px;display:grid}.game-total-grid span{color:var(--dim);font-size:9px;font-weight:900}.game-total-grid strong{font-family:var(--display);font-size:26px}.game-total-grid small{color:var(--dim);font-size:10px}.import-history-list>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-height:64px;padding:10px 4px;display:flex}.import-history-list span{gap:2px;min-width:0;display:grid}.import-history-list small{color:var(--dim)}.import-history-list em{background:var(--border);text-transform:uppercase;padding:5px 7px;font-size:9px;font-style:normal;font-weight:900}.unified-profile-tabs{grid-template-columns:repeat(3,1fr)}.profile-overview>section{gap:12px;display:grid}.shot-context-tabs{background:var(--border);grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.shot-context-tabs button:disabled{opacity:.5}.comparison-table,.trend-ledger{border-top:2px solid var(--text);display:grid}.comparison-table>div{background:var(--border);grid-template-columns:1fr 90px 90px;gap:1px;display:grid}.comparison-table span,.comparison-table b{background:var(--surface);padding:10px;font-size:12px}.comparison-table b{text-align:right}.trend-ledger>div{border-bottom:1px solid var(--border);grid-template-columns:minmax(130px,1fr) repeat(3,65px);gap:6px;padding:10px 4px;display:grid}.trend-ledger>div>span{grid-column:1/-1;display:grid}.trend-ledger small{color:var(--dim)}.trend-ledger b{font-size:11px}@media(max-width:520px){.practice-removal-action{flex-direction:column;align-items:stretch}.practice-removal-action .danger-button{width:100%}.games-hero{flex-direction:column;align-items:flex-start}.games-hero .primary-button{width:100%}.game-meta-grid,.game-filter-grid{grid-template-columns:1fr}.stat-input-grid{grid-template-columns:repeat(3,1fr)}.editor-actions>*{flex:1}.game-list article>b{font-size:14px}.game-player-match{flex-direction:column;align-items:stretch}.game-player-match span{align-self:flex-start}}@media(min-width:760px){.games-subnav,.unified-profile-tabs{grid-template-columns:repeat(6,1fr)}.game-primary-actions{grid-template-columns:1fr 1fr}.game-total-grid{grid-template-columns:repeat(5,1fr)}.stat-input-grid{grid-template-columns:repeat(8,1fr)}.profile-overview{grid-template-columns:1fr 1fr}.trend-ledger>div{grid-template-columns:minmax(180px,1.5fr) repeat(6,minmax(62px,.5fr))}.trend-ledger>div>span{grid-column:auto}}.impact-page{gap:18px;display:grid}.impact-heading{border-bottom:2px solid var(--text);justify-content:space-between;align-items:end;gap:16px;padding-bottom:14px;display:flex}.impact-heading h2{font-family:var(--display);margin:4px 0 5px;font-size:clamp(29px,8vw,42px);line-height:.94}.impact-heading p:last-child{color:var(--dim);margin:0;line-height:1.4}.impact-heading>span{max-width:220px;color:var(--dim);text-align:right;flex:none;font-size:12px;font-weight:800}.impact-filter-tabs{background:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.impact-filter-tabs{background:color-mix(in srgb,var(--border)62%,transparent)}}.impact-filter-tabs button{min-height:44px;color:var(--dim);font-family:var(--display);background:0 0;border:0;padding:6px 7px;font-size:12px;font-weight:900}.impact-filter-tabs button:last-child{grid-column:1/-1}.impact-filter-tabs button.active{background:var(--surface-strong);color:var(--text);box-shadow:0 1px 3px #10211c24}.impact-date-range{grid-template-columns:1fr 1fr;gap:10px;display:grid}.impact-date-range label{min-width:0;color:var(--dim);gap:6px;font-size:11px;font-weight:900;display:grid}.impact-primary-metrics{border:1px solid var(--court);background:var(--court);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.impact-primary-metrics>div{background:var(--court);color:#fffdf8;align-content:center;gap:4px;min-height:108px;padding:13px;display:grid}.impact-primary-metrics span,.impact-per-practice span{color:#bcd1c8;font-family:var(--display);letter-spacing:.07em;font-size:10px;font-weight:900}.impact-primary-metrics strong{font-family:var(--display);font-size:clamp(31px,9vw,44px);line-height:.9}.impact-primary-metrics small{color:#dce9e3;font-size:10px}.impact-primary-metrics .positive strong{color:var(--hit-soft)}.impact-primary-metrics .negative strong{color:var(--miss-soft)}.impact-per-practice{background:var(--border);border-top:2px solid var(--text);border-bottom:1px solid var(--border);grid-template-columns:1fr;gap:1px;display:grid}.impact-per-practice>div{background:var(--surface);align-content:center;gap:3px;min-height:86px;padding:12px;display:grid}.impact-per-practice span{color:var(--dim)}.impact-per-practice strong{font-family:var(--display);font-size:28px}.impact-per-practice small{color:var(--dim);font-size:10px}.impact-breakdowns{gap:16px;display:grid}.impact-breakdowns>section,.impact-practice-list{border-top:3px solid var(--text);border-bottom:1px solid var(--border);min-width:0}.impact-breakdown-head{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:8px 10px;display:flex}.impact-breakdown-head h3{font-family:var(--display);margin:0;font-size:21px}.impact-breakdown-head>strong{min-width:38px;font-family:var(--display);text-align:right;font-size:25px}.impact-breakdowns section>div:last-child{display:grid}.impact-breakdowns p{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;min-height:41px;margin:0;padding:8px 10px;display:flex}.impact-breakdowns p:last-child{border-bottom:0}.impact-breakdowns p span{color:var(--dim);font-size:13px}.impact-breakdowns p b{font-family:var(--display);font-size:17px}.impact-practice-list{display:grid}.impact-practice-row{border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(0,1fr) 44px 44px 44px;align-items:center;gap:4px;min-height:62px;padding:8px 10px;display:grid}.impact-practice-row:last-child{border-bottom:0}.impact-practice-row>span{gap:2px;min-width:0;display:grid}.impact-practice-row>span strong,.impact-practice-row>span small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.impact-practice-row>span strong{font-family:var(--display);font-size:16px}.impact-practice-row>span small{color:var(--dim);font-size:10px}.impact-practice-row>b{font-family:var(--display);text-align:right;font-size:16px}.impact-positive-value{color:var(--good)}.impact-negative-value{color:var(--low)}.impact-global-filters{background:var(--surface);border-top:3px solid var(--text);border-bottom:1px solid var(--border);gap:12px;padding:14px;display:grid}.impact-filter-title{justify-content:space-between;align-items:end;gap:12px;display:flex}.impact-filter-title h3{font-family:var(--display);margin:3px 0 0;font-size:23px}.impact-filter-title>span{color:var(--dim);font-size:11px;font-weight:800}.impact-filter-grid{grid-template-columns:1fr;gap:10px;display:grid}.impact-filter-grid label,.impact-chart-controls label{gap:5px;min-width:0;display:grid}.impact-filter-grid label>span,.impact-chart-controls label>span{color:var(--dim);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.impact-filter-grid select,.impact-filter-grid input,.impact-chart-controls select{width:100%;min-height:43px}.impact-visual-grid{gap:18px;display:grid}.impact-chart-card{background:var(--surface);border-top:3px solid var(--text);border-bottom:1px solid var(--border);min-width:0;overflow:hidden}.impact-chart-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:10px 12px;display:flex}.impact-chart-head>div{min-width:0}.impact-chart-head h3{font-family:var(--display);margin:0;font-size:22px}.impact-chart-head p{color:var(--dim);margin:4px 0 0;font-size:12px;line-height:1.35}.impact-chart-head button{border:1px solid var(--text);min-height:39px;font-family:var(--display);background:0 0;flex:none;padding:7px 10px;font-size:12px;font-weight:900}.impact-chart-head button span{color:var(--dim);font-family:var(--body);letter-spacing:.1em;font-size:8px;display:block}.impact-chart-controls{gap:10px;padding:10px 12px 0;display:grid}.impact-chart-controls.two{grid-template-columns:1fr}.impact-chart-canvas{min-width:0;padding:8px 4px 10px}.impact-chart-tall{width:100%;height:290px}.impact-chart-xl{width:100%;height:550px}.impact-chart-roster{width:100%}.impact-donut-legend{background:var(--border);gap:1px;margin:0 10px 8px;display:grid}.impact-donut-legend p{background:var(--surface-strong);grid-template-columns:12px minmax(0,1fr) 38px 58px;align-items:center;gap:8px;margin:0;padding:9px 10px;display:grid}.impact-donut-legend i{border-radius:50%;width:10px;height:10px}.impact-donut-legend i.positive{background:var(--good)}.impact-donut-legend i.negative{background:var(--low)}.impact-donut-legend span{color:var(--dim);font-size:12px}.impact-donut-legend b,.impact-donut-legend strong{font-family:var(--display);text-align:right}.shooting-detail-row{background:var(--border);grid-template-columns:repeat(3,1fr);gap:1px;margin:0 10px 8px;display:grid}.shooting-detail-row p{background:var(--surface-strong);gap:2px;margin:0;padding:9px;display:grid}.shooting-detail-row span{color:var(--dim);font-size:10px;font-weight:900}.shooting-detail-row b{font-family:var(--display);font-size:17px}.shooting-detail-row strong{color:var(--accent);font-family:var(--display);font-size:12px}@media(prefers-color-scheme:dark){.impact-chart-card .recharts-cartesian-axis-tick-value,.impact-chart-card .recharts-pie-label-text,.impact-chart-card .recharts-label-list text{fill:#dce9e3}}@media(max-width:520px){.impact-heading{flex-direction:column;align-items:flex-start}.impact-heading>span{text-align:left;max-width:none}}@media(min-width:760px){.unified-profile-tabs,.impact-filter-tabs{grid-template-columns:repeat(7,1fr)}.impact-filter-tabs button:last-child{grid-column:auto}.impact-primary-metrics{grid-template-columns:repeat(4,1fr)}.impact-per-practice{grid-template-columns:repeat(3,1fr)}.impact-breakdowns{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}.impact-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.impact-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-chart-card:nth-child(2),.impact-chart-card:nth-child(4){grid-column:1/-1}.impact-chart-controls.two{grid-template-columns:1fr 1fr}}.team-analytics-tabs{background:var(--border);grid-template-columns:1fr 1fr;gap:3px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.team-analytics-tabs{background:color-mix(in srgb,var(--border)65%,transparent)}}.team-analytics-tabs button{min-height:46px;color:var(--dim);font-family:var(--display);background:0 0;border:0;font-size:14px;font-weight:900}.team-analytics-tabs button.active{background:var(--surface-strong);color:var(--text);box-shadow:0 1px 3px #10211c24}.team-impact-dashboard{gap:20px;display:grid}.team-impact-filters{border-top:3px solid var(--text);border-bottom:1px solid var(--border);background:var(--surface);gap:12px;padding:14px;display:grid}.team-impact-context-filters{gap:10px;display:grid}.team-impact-context-filters label,.team-impact-sort label,.team-impact-filters .impact-date-range label{gap:5px;min-width:0;display:grid}.team-impact-context-filters label>span,.team-impact-sort label>span,.team-impact-filters .impact-date-range label>span{color:var(--dim);font-family:var(--display);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:900}.team-impact-context-filters select{min-height:44px}.team-impact-quick-range{background:var(--border);grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}@supports (color:color-mix(in lab,red,red)){.team-impact-quick-range{background:color-mix(in srgb,var(--border)62%,transparent)}}.team-impact-quick-range button{min-height:42px;color:var(--dim);font-family:var(--display);background:0 0;border:0;padding:6px;font-size:12px;font-weight:900}.team-impact-quick-range button.active{background:var(--court);color:#fffdf8}.team-impact-summary,.team-impact-table-section,.team-impact-charts{gap:12px;display:grid}.team-impact-section-head{border-bottom:2px solid var(--text);justify-content:space-between;align-items:end;gap:12px;padding-bottom:9px;display:flex}.team-impact-section-head h3{font-family:var(--display);margin:3px 0 0;font-size:26px}.team-impact-section-head>span{max-width:230px;color:var(--dim);text-align:right;font-size:11px;font-weight:800}.team-impact-metrics{border:1px solid var(--court);background:var(--court);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.team-impact-metrics>div{background:var(--court);color:#fffdf8;align-content:center;gap:4px;min-height:104px;padding:13px;display:grid}.team-impact-metrics>div:last-child{grid-column:1/-1}.team-impact-metrics span{color:#bcd1c8;font-family:var(--display);letter-spacing:.05em;font-size:10px;font-weight:900}.team-impact-metrics strong{font-family:var(--display);font-size:clamp(29px,8vw,42px);line-height:.92}.team-impact-metrics .positive strong{color:var(--hit-soft)}.team-impact-metrics .negative strong{color:var(--miss-soft)}.team-impact-sort{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.team-impact-sort select{min-height:44px}.team-impact-sort button{border:1px solid var(--border);background:var(--surface);min-height:44px;padding:0 12px;font-size:12px;font-weight:900}.team-impact-table{border-top:2px solid var(--text);border-bottom:2px solid var(--text);display:grid}.team-impact-table-head{display:none}.team-impact-player-row{border-bottom:1px solid var(--border);background:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;padding:8px 0;display:grid}.team-impact-player-row:last-child{border-bottom:0}.team-impact-player-row>*{background:var(--surface);text-align:left;border:0;align-content:center;gap:3px;min-width:0;min-height:58px;margin:0;padding:8px 10px;display:grid}.team-impact-player-link{color:var(--court-soft);grid-column:1/-1}.team-impact-player-link strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:20px;overflow:hidden}.team-impact-player-row small{color:var(--dim);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:900}.team-impact-player-row b{font-family:var(--display);font-size:20px}.team-impact-chart-grid{gap:16px;display:grid}.team-impact-chart{border-top:3px solid var(--text);border-bottom:1px solid var(--border);background:var(--surface);align-content:start;gap:4px;min-width:0;padding:12px;display:grid}.team-impact-chart h4{font-family:var(--display);margin:0;font-size:22px}.team-impact-chart>p{color:var(--dim);margin:0 0 10px;font-size:12px;line-height:1.4}.team-impact-chart .impact-chart-head{min-height:72px;padding:0 0 10px}.team-impact-export-svg{clip-path:inset(50%);pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.player-output-bars,.player-net-bars,.player-share-bars{gap:7px;display:grid}.player-output-bars button{text-align:left;background:0 0;border:0;grid-template-rows:1fr 1fr;grid-template-columns:minmax(90px,1fr) minmax(70px,2fr);align-items:center;gap:4px 10px;min-width:0;padding:6px;display:grid}.player-output-bars button>span{grid-row:1/3;gap:2px;min-width:0;display:grid}.player-output-bars strong,.player-output-bars small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-output-bars strong{font-family:var(--display);font-size:15px}.player-output-bars small{color:var(--dim);font-size:9px}.player-output-bars i{min-width:2px;height:11px;display:block}.player-output-bars i.positive,.player-net-bars i.positive{background:var(--good)}.player-output-bars i.negative,.player-net-bars i.negative{background:var(--low)}.player-net-bars button,.player-share-bars button{text-align:left;background:0 0;border:0;grid-template-columns:minmax(82px,.9fr) minmax(70px,2fr) 48px;align-items:center;gap:9px;min-width:0;min-height:38px;padding:5px 6px;display:grid}.player-net-bars span,.player-share-bars span{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.player-net-bars i{min-width:2px;height:13px;display:block}.player-net-bars strong,.player-share-bars strong{font-family:var(--display);text-align:right}.player-share-bars i{background:var(--border);width:100%;height:13px;display:block}@supports (color:color-mix(in lab,red,red)){.player-share-bars i{background:color-mix(in srgb,var(--border)70%,transparent)}}.player-share-bars i b{background:var(--court-soft);height:100%;display:block}.team-impact-trend .impact-chart-tall{margin-top:5px}@media(prefers-color-scheme:dark){.team-impact-chart .recharts-cartesian-axis-tick-value{fill:#dce9e3}}@media(max-width:520px){.team-impact-section-head{flex-direction:column;align-items:flex-start}.team-impact-section-head>span{text-align:left;max-width:none}}@media(min-width:760px){.team-impact-context-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.team-impact-quick-range{grid-template-columns:repeat(6,1fr)}.team-impact-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.team-impact-metrics>div:last-child{grid-column:auto}.team-impact-table-head{background:var(--text);grid-template-columns:minmax(150px,1.4fr) repeat(7,minmax(76px,.75fr));gap:1px;display:grid}.team-impact-table-head button{background:var(--court);color:#fffdf8;min-width:0;min-height:52px;font-family:var(--display);text-align:left;border:0;padding:7px;font-size:10px;font-weight:900}.team-impact-player-row{grid-template-columns:minmax(150px,1.4fr) repeat(7,minmax(76px,.75fr));padding:0}.team-impact-player-row>*{min-height:68px;padding:8px}.team-impact-player-link{grid-column:auto}.team-impact-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-impact-trend{grid-column:1/-1}}.impact-settings{border-top:3px solid var(--text);gap:13px;margin-top:18px;padding-top:18px;display:grid}.impact-settings-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.impact-settings-heading h3,.impact-methodology-switch h3{font-family:var(--display);margin:3px 0 5px;font-size:24px}.impact-settings-heading p:last-child{max-width:58ch;color:var(--dim);margin:0;font-size:12px;line-height:1.45}.impact-settings-heading>span{background:var(--border);color:var(--dim);text-transform:uppercase;flex:none;padding:5px 8px;font-size:9px;font-weight:900}.impact-mode-explainer{background:var(--border);border-block:1px solid var(--border);grid-template-columns:1fr;gap:1px;display:grid}.impact-mode-explainer>div{background:var(--surface-strong);gap:3px;padding:11px;display:grid}.impact-mode-explainer strong{font-family:var(--display);font-size:13px}.impact-mode-explainer span{color:var(--dim);font-size:11px;line-height:1.4}.impact-config-table{border-top:2px solid var(--text);border-bottom:2px solid var(--text);display:grid}.impact-config-head{display:none}.impact-config-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:11px 4px;display:grid}.impact-config-row:last-child{border-bottom:0}.impact-config-row>strong{font-family:var(--display);font-size:15px}.impact-direction{text-transform:uppercase;justify-self:end;padding:4px 7px;font-size:9px;font-weight:900}.impact-direction.positive{background:var(--good-bg);color:var(--good)}.impact-direction.negative{background:var(--low-bg);color:var(--low)}.impact-enabled,.impact-weight{color:var(--dim);align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.impact-enabled input{width:20px;height:20px;accent-color:var(--accent)}.impact-weight{justify-self:end}.impact-weight input{text-align:right;width:82px;min-height:40px;padding:7px 8px}.impact-weight small{width:37px;color:var(--text);font-family:var(--display);text-align:right;font-size:12px}.impact-method-note{background:var(--accent);margin:0;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.impact-method-note{background:color-mix(in srgb,var(--accent)10%,var(--surface-strong))}}.impact-method-note{color:var(--dim);font-size:11px;line-height:1.5}.impact-settings-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.reset-confirm{background:var(--low-bg);width:100%;color:var(--low);flex-wrap:wrap;align-items:center;gap:8px;padding:10px;display:flex}.reset-confirm span{flex:200px;font-size:12px;font-weight:900}.danger-button{background:var(--low);color:#fff;border:0;min-height:40px;padding:0 13px;font-weight:900}.impact-methodology-switch{border-top:3px solid var(--text);border-bottom:1px solid var(--border);background:var(--surface);gap:10px;padding:13px;display:grid}.impact-methodology-switch>div[role=group]{background:var(--border);grid-template-columns:1fr 1fr;gap:3px;padding:4px;display:grid}.impact-methodology-switch>div[role=group] button{min-height:44px;color:var(--dim);font-family:var(--display);background:0 0;border:0;font-weight:900}.impact-methodology-switch>div[role=group] button.active{background:var(--court);color:#fffdf8}.weighted-methodology-note{background:var(--good-bg);color:var(--good);margin:0;padding:10px 12px;font-size:12px;font-weight:900}.raw-output-reference{background:var(--border);grid-template-columns:1fr;gap:1px;display:grid}.raw-output-reference>*{background:var(--surface-strong);padding:8px 10px;font-size:11px}.raw-output-reference span{color:var(--dim);font-weight:900}.raw-output-reference b{font-family:var(--display)}.impact-formula-table{border-top:3px solid var(--text);border-bottom:1px solid var(--border);background:var(--surface);display:grid}.impact-formula-head,.impact-formula-table>div:not(.impact-breakdown-head){border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 46px 64px 62px;align-items:center;gap:6px;padding:8px 10px;display:grid}.impact-formula-head{background:var(--court);color:#fffdf8;text-transform:uppercase;font-size:9px;font-weight:900}.impact-formula-table>div:not(.impact-breakdown-head)>span{gap:2px;font-size:12px;font-weight:800;display:grid}.impact-formula-table small{color:var(--dim);font-size:9px}.impact-formula-table b{font-family:var(--display);text-align:right;font-size:12px}.impact-formula-table .disabled{opacity:.5}@media(min-width:760px){.impact-mode-explainer{grid-template-columns:1fr 1fr}.impact-config-head,.impact-config-row{grid-template-columns:minmax(180px,1.5fr) minmax(120px,.75fr) 90px 150px;display:grid}.impact-config-head{background:var(--court);color:#fffdf8;text-transform:uppercase;gap:8px;padding:9px 8px;font-size:9px;font-weight:900}.impact-direction,.impact-enabled{justify-self:start}.impact-methodology-switch{grid-template-columns:minmax(190px,.8fr) minmax(260px,1fr);align-items:center}.impact-methodology-switch .weighted-methodology-note,.impact-methodology-switch .raw-output-reference{grid-column:1/-1}.raw-output-reference{grid-template-columns:1.5fr repeat(3,1fr)}}.reports-page{gap:20px;display:grid}.reports-hero{border-bottom:3px solid var(--text);justify-content:space-between;align-items:end;gap:20px;padding:22px 0 18px;display:flex}.reports-hero h1{font-family:var(--display);letter-spacing:-.025em;margin:5px 0 7px;font-size:clamp(36px,8vw,54px);line-height:.92}.reports-hero p:not(.section-kicker){max-width:55ch;color:var(--dim);margin:0;line-height:1.45}.reports-hero>span{background:var(--court);color:#fffdf8;font-family:var(--display);border-radius:6px;flex:none;padding:8px 10px;font-size:13px;font-weight:900}.report-builder{grid-template-columns:224px minmax(0,1fr);align-items:start;gap:20px;display:grid}.report-types{border:1px solid var(--border);background:var(--border);border-radius:10px;gap:1px;display:grid;position:sticky;top:112px;overflow:hidden}.report-types button{background:var(--surface);text-align:left;border:0;gap:3px;min-height:64px;padding:10px 12px;display:grid}.report-types button.active{background:var(--court);color:#fffdf8}.report-types strong{font-family:var(--display);font-size:15px;line-height:1}.report-types span{color:var(--dim);font-size:11px;line-height:1.25}.report-types button.active span{color:#cfe1d9}.report-workbench{gap:16px;min-width:0;display:grid}.report-controls,.report-preview{border:1px solid var(--border);background:var(--surface);border-radius:10px}.report-controls{padding:16px}.report-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.report-filter-grid label{color:var(--dim);gap:5px;font-size:12px;font-weight:800;display:grid}.report-preview{overflow:hidden}.report-preview-head{background:var(--court);color:#fffdf8;justify-content:space-between;align-items:start;gap:16px;padding:20px;display:flex}.report-preview-head h2{font-family:var(--display);margin:3px 0 4px;font-size:30px;line-height:1}.report-preview-head span{color:#cfe1d9;font-size:12px}.report-preview-head>b{font-family:var(--display);white-space:nowrap;font-size:18px}.report-section-options{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;gap:7px;padding:12px 16px;display:flex}@supports (color:color-mix(in lab,red,red)){.report-section-options{background:color-mix(in srgb,var(--surface)88%,var(--bg))}}.report-section-options label{border:1px solid var(--border);background:var(--surface);border-radius:6px;align-items:center;gap:6px;min-height:36px;padding:0 10px;font-size:12px;font-weight:800;display:flex}.report-section-options input{width:16px;height:16px;min-height:0}.report-summary-grid{background:var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.report-summary-grid>div{background:var(--surface);gap:2px;padding:14px;display:grid}.report-summary-grid span{color:var(--dim);text-transform:uppercase;font-size:10px;font-weight:900}.report-summary-grid strong{font-family:var(--display);font-size:28px}.report-table-scroll{border-bottom:1px solid var(--border);width:100%;overflow-x:auto}.report-stat-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:max-content;min-width:100%;font-size:12px}.report-stat-table th{background:var(--court);color:#fffdf8;font-family:var(--display);letter-spacing:.04em;white-space:nowrap;text-align:right;padding:9px 8px;font-size:10px;position:sticky;top:0}.report-stat-table th:first-child{z-index:2;text-align:left;min-width:145px;left:0}.report-stat-table td{border-bottom:1px solid var(--border);text-align:right;white-space:nowrap;padding:9px 8px}.report-stat-table td:first-child{z-index:1;background:var(--surface);text-align:left;font-weight:900;position:sticky;left:0}.report-bars,.report-session-list{border-bottom:1px solid var(--border);padding:18px}.report-bars h3,.report-session-list h3{font-family:var(--display);margin:0 0 13px;font-size:21px}.report-bars>div{grid-template-columns:120px minmax(80px,1fr) auto;align-items:center;gap:10px;margin:9px 0;font-size:12px;display:grid}.report-bars>div>span{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.report-bars i{background:var(--miss-soft);border-radius:3px;height:12px;overflow:hidden}.report-bars i:before{content:"";width:var(--positive);background:var(--hit-soft);height:100%;display:block}.report-bars b{font-variant-numeric:tabular-nums}.report-session-list>div{border-top:1px solid var(--border);grid-template-columns:120px 1fr;gap:10px;padding:9px 0;font-size:12px;display:grid}.report-session-list span{color:var(--dim)}.report-shot-chart{background:var(--court);color:#fffdf8;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;padding:20px;display:grid}.report-shot-chart>div{background:var(--court-soft);text-align:center;place-content:center;min-height:66px;padding:6px;display:grid}.report-shot-chart strong{font-family:var(--display);font-size:21px}.report-shot-chart span{color:#cfe1d9;text-transform:capitalize;font-size:8px;line-height:1.1}.report-shot-chart .report-hoop{color:var(--accent);grid-column:span 2;font-size:38px}.report-export-bar{background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}@supports (color:color-mix(in lab,red,red)){.report-export-bar{background:color-mix(in srgb,var(--surface)90%,var(--bg))}}.report-export-bar>span{color:var(--dim);font-size:11px}.report-export-bar>div{flex-wrap:wrap;gap:7px;display:flex}.report-export-bar button{border:1px solid var(--border);background:var(--surface);border-radius:7px;min-height:42px;padding:0 13px;font-weight:900}.report-export-bar button:first-child{border-color:var(--accent);background:var(--accent);color:#25160b}.game-report-score{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;align-items:center;gap:8px 20px;padding:18px;display:grid}.game-report-score span{display:grid}.game-report-score small{color:var(--dim);font-size:10px;font-weight:900}.game-report-score strong{font-family:var(--display);font-size:26px}.game-report-score b{font-family:var(--display);grid-row:span 2;font-size:34px}.game-report-score em{color:var(--dim);font-size:12px;font-style:normal}@media(max-width:720px){.top-nav{padding-inline:6px}.top-nav button{letter-spacing:0;gap:3px;font-size:10px}.top-nav.staff-enabled button{font-size:9px}.nav-mark{font-size:13px}.reports-hero{align-items:start}.reports-hero>span{display:none}.report-builder{grid-template-columns:1fr}.report-types{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.report-types button:last-child{grid-column:1/-1}.report-filter-grid{grid-template-columns:1fr 1fr}.report-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-shot-chart{grid-template-columns:repeat(3,minmax(0,1fr));padding:12px}.report-export-bar{flex-direction:column;align-items:stretch}.report-export-bar>div{grid-template-columns:1fr;display:grid}.report-bars>div{grid-template-columns:90px minmax(60px,1fr) auto}}.review-correction-area{border-top:2px solid var(--border);margin-top:24px;padding-top:22px}.review-shot-toolbar,.review-add-shot{justify-content:space-between;align-items:center;gap:14px;margin:12px 0 16px;display:flex}.review-shot-toolbar p,.review-add-shot .tap-guidance{color:var(--dim);margin:0}.review-add-shot{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:stretch;padding:16px}.review-add-shot-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.review-add-shot-fields label{color:var(--dim);gap:6px;font-size:13px;font-weight:700;display:grid}.review-add-shot-fields select{width:100%;min-height:44px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:0 10px}@media(max-width:640px){.review-shot-toolbar{flex-direction:column;align-items:stretch}.review-add-shot-fields{grid-template-columns:1fr}}.segment-impact,.player-segment-impact{border-top:3px solid var(--text);gap:14px;padding-top:18px;display:grid}.segment-impact-head{border-bottom:2px solid var(--text);justify-content:space-between;align-items:flex-end;gap:14px;padding-bottom:10px;display:flex}.segment-impact-head h2{font-family:var(--display);margin:3px 0 4px;font-size:28px}.segment-impact-head p:last-child{color:var(--dim);margin:0;font-size:12px}.segment-impact-head>span{color:var(--dim);text-align:right;font-size:11px;font-weight:800}.segment-impact-controls{background:var(--surface);border-bottom:1px solid var(--border);gap:9px;padding:12px;display:grid}.segment-impact-controls label,.team-impact-practice-scope label{gap:5px;display:grid}.segment-impact-controls label>span,.team-impact-practice-scope label>span{color:var(--dim);font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:900}.segment-impact-controls select,.team-impact-practice-scope select{min-height:44px}.segment-methodology{background:var(--border);grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.segment-methodology button{min-height:42px;color:var(--dim);font-family:var(--display);background:0 0;border:0;font-size:12px;font-weight:900}.segment-methodology button.active{background:var(--court);color:#fffdf8}.impact-scope-banner{background:var(--court);color:#fffdf8;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.impact-scope-banner strong{font-family:var(--display);font-size:13px}.impact-scope-banner span{color:#bcd1c8;text-align:right;font-size:10px;font-weight:800}.segment-impact-summary{background:var(--court);border:1px solid var(--court);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.segment-impact-summary>div{background:var(--court);color:#fffdf8;align-content:center;gap:4px;min-height:96px;padding:12px;display:grid}.segment-impact-summary span{color:#bcd1c8;font-family:var(--display);font-size:10px;font-weight:900}.segment-impact-summary strong{font-family:var(--display);font-size:32px}.segment-impact-summary .positive strong{color:var(--hit-soft)}.segment-impact-summary .negative strong{color:var(--miss-soft)}.segment-player-table-section,.segment-comparison{gap:11px;display:grid}.segment-impact-table{border-block:2px solid var(--text);display:grid}.segment-impact-table-head{display:none}.segment-impact-player-row{border:0;border-bottom:1px solid var(--border);background:var(--border);width:100%;color:var(--text);text-align:left;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(46px,.6fr));gap:1px;padding:0;display:grid}.segment-impact-player-row>*{background:var(--surface);align-content:center;min-width:0;min-height:56px;padding:8px;display:grid}.segment-impact-player-row>span{grid-column:1/-1}.segment-impact-player-row>span strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:18px;overflow:hidden}.segment-impact-player-row>span small{color:var(--dim);font-size:9px}.segment-impact-player-row>b{font-family:var(--display);font-size:17px}.segment-impact-player-row.selected>*{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.segment-impact-player-row.selected>*{background:color-mix(in srgb,var(--accent)10%,var(--surface))}}.segment-metric-breakdown{border-top:2px solid var(--text);border-bottom:1px solid var(--border);display:grid}.segment-metric-breakdown>div{border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:minmax(0,1fr) 42px 58px 62px;align-items:center;gap:5px;padding:8px 9px;display:grid}.segment-metric-breakdown>div:last-child{border-bottom:0}.segment-metric-breakdown>div.disabled{opacity:.5}.segment-metric-breakdown span{gap:2px;display:grid}.segment-metric-breakdown span strong{font-size:12px}.segment-metric-breakdown span small{color:var(--dim);text-transform:capitalize;font-size:9px}.segment-metric-breakdown b{font-family:var(--display);text-align:right;font-size:12px}.segment-comparison-grid{gap:7px;display:grid}.segment-comparison-grid>button{border:1px solid var(--border);background:var(--surface);color:var(--text);text-align:left;gap:4px;padding:11px;display:grid}.segment-comparison-grid>button.active{border-color:var(--court-soft);box-shadow:inset 4px 0 0 var(--accent)}.segment-comparison-grid>button>span,.segment-comparison-grid>button>small{color:var(--dim);font-size:9px;font-weight:900}.segment-comparison-grid>button>strong{font-family:var(--display);font-size:19px}.segment-comparison-grid>button>div{grid-template-columns:repeat(4,1fr);gap:4px;margin-top:4px;display:grid}.segment-comparison-grid>button>div b{background:var(--surface-strong);font-family:var(--display);text-align:center;padding:6px 3px;font-size:13px}.segment-player-matrix{border-block:2px solid var(--text);min-width:0;overflow:auto}.segment-player-matrix>div{grid-template-columns:minmax(130px,1.4fr)repeat(var(--segment-count,3),minmax(88px,1fr));border-bottom:1px solid var(--border);min-width:520px;display:grid}.segment-player-matrix>div>*{background:var(--surface);text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:8px;overflow:hidden}.segment-player-matrix>div:first-child>*{background:var(--court);color:#fffdf8;font-family:var(--display);font-size:10px}.segment-player-matrix b{font-family:var(--display);text-align:right}.player-segment-impact-list{border-block:2px solid var(--text);display:grid}.player-segment-impact-list>div,.player-segment-impact-list summary{border-bottom:1px solid var(--border);background:var(--surface);cursor:pointer;grid-template-columns:minmax(0,1fr) 58px 62px;align-items:center;gap:8px;min-height:62px;padding:8px 10px;list-style:none;display:grid}.player-segment-impact-list>div>span,.player-segment-impact-list summary>span{gap:3px;display:grid}.player-segment-impact-list strong{font-family:var(--display)}.player-segment-impact-list small{color:var(--dim);font-size:9px}.player-segment-impact-list b{font-family:var(--display);text-align:right;font-size:18px}.team-impact-practice-scope{gap:10px;padding-top:4px;display:grid}.team-impact-practice-scope .viewer-mode-note{margin:0}@media(min-width:760px){.segment-impact-controls{grid-template-columns:minmax(220px,1fr) minmax(260px,1fr) auto;align-items:end}.segment-impact-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.segment-impact-table-head{background:var(--court);grid-template-columns:minmax(170px,1.6fr) repeat(4,minmax(85px,.8fr));gap:1px;display:grid}.segment-impact-table-head button{background:var(--court);color:#fffdf8;min-height:48px;font-family:var(--display);text-align:left;border:0;padding:8px;font-size:10px}.segment-impact-player-row{grid-template-columns:minmax(170px,1.6fr) repeat(4,minmax(85px,.8fr))}.segment-impact-player-row>span{grid-column:auto}.segment-comparison-grid,.team-impact-practice-scope{grid-template-columns:repeat(2,minmax(0,1fr))}.team-impact-practice-scope .impact-scope-banner,.team-impact-practice-scope .viewer-mode-note{grid-column:1/-1}.team-impact-quick-range{grid-template-columns:repeat(7,1fr)}}.impact-share-info{width:20px;height:20px;color:var(--dim);font:800 12px/1 var(--body);vertical-align:middle;cursor:help;background:0 0;border:1px solid;border-radius:50%;place-items:center;margin-left:4px;padding:0;display:inline-grid}.impact-share-info:hover,.impact-share-info:focus-visible{color:var(--accent);outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.impact-share-info:hover,.impact-share-info:focus-visible{outline:2px solid color-mix(in srgb,var(--accent)32%,transparent)}}.impact-share-info:hover,.impact-share-info:focus-visible{outline-offset:2px}.download-error{color:#a12820;margin:8px 12px;font-size:.78rem;line-height:1.45}.download-status{color:var(--text);margin:8px 12px;font-size:.78rem;line-height:1.45}@media(prefers-color-scheme:dark){.download-error{color:#ff9c91}}.player-trend-analytics,.player-compare{gap:18px;display:grid}.trend-control-panel,.trend-primary-card,.consistency-summary,.trend-ledger-section{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px}.trend-category-tabs,.compare-mode-tabs,.trend-methodology,.compare-methodology>div{flex-wrap:wrap;gap:7px;display:flex}.trend-category-tabs button,.compare-mode-tabs button,.trend-methodology button,.compare-methodology button{border:1px solid var(--border);min-height:38px;color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:7px 12px;font-weight:750}.trend-category-tabs button.active,.compare-mode-tabs button.active,.trend-methodology button.active,.compare-methodology button.active{background:var(--accent);border-color:var(--accent);color:#fff}.trend-control-grid,.compare-scope-controls{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin-top:14px;display:grid}.trend-control-grid label,.compare-scope-controls label{color:var(--dim);gap:6px;font-size:.78rem;font-weight:800;display:grid}.trend-control-grid select,.compare-scope-controls select,.compare-scope-controls input{border:1px solid var(--border);background:var(--bg);width:100%;min-height:42px;color:var(--text);font:inherit;border-radius:6px;padding:8px 10px}.trend-methodology{margin-top:14px}.trend-card-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px;display:flex}.trend-card-heading h3{margin:3px 0 0;font-size:1.3rem}.trend-card-heading>span{color:var(--dim);text-align:right;font-size:.78rem}.trend-primary-chart{height:290px}.trend-point-context{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:8px;margin-top:12px;display:grid}.trend-point-context>div{border-top:1px solid var(--border);min-width:0;padding-top:9px}.trend-point-context span,.trend-point-context small{color:var(--dim);font-size:.72rem;display:block}.trend-point-context strong{margin:3px 0;font-size:1.08rem;display:block}.consistency-grid{background:var(--border);border:1px solid var(--border);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.consistency-grid>div{background:var(--surface);min-height:100px;padding:14px}.consistency-grid span,.consistency-grid small{color:var(--dim);font-size:.75rem;display:block}.consistency-grid strong{margin:8px 0 4px;font-size:1.4rem;display:block}.compare-mode-tabs{border-bottom:1px solid var(--border);padding-bottom:4px}.compare-methodology{background:var(--surface);border:1px solid var(--border);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.compare-methodology>span{color:var(--dim);font-size:.78rem;font-weight:800}.compare-scope-note{background:var(--accent);margin:0;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.compare-scope-note{background:color-mix(in srgb,var(--accent)8%,var(--surface))}}.compare-scope-note{color:var(--dim);border-radius:7px;font-size:.82rem;line-height:1.5}.comparison-sample-cards{grid-template-columns:1fr 1fr;gap:10px;display:grid}.comparison-sample-cards>div{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:14px}.comparison-sample-cards span,.comparison-sample-cards small{color:var(--dim);font-size:.76rem;display:block}.comparison-sample-cards strong{margin:5px 0 2px;font-size:1.55rem;display:block}.coach-comparison-table{border:1px solid var(--border);border-radius:9px;overflow:hidden}.coach-comparison-head,.coach-comparison-row{grid-template-columns:minmax(92px,1fr) minmax(120px,1.15fr) minmax(92px,1fr);align-items:center;display:grid}.coach-comparison-head{background:var(--surface-strong);padding:11px 12px;font-size:.78rem}.coach-comparison-head>:last-child{text-align:right}.coach-comparison-head span{text-align:center;color:var(--dim)}.coach-comparison-row{border-top:1px solid var(--border);padding:10px 12px;position:relative}.coach-comparison-row[data-section]{border-top:2px solid var(--border);margin-top:25px}.coach-comparison-row[data-section]:before{content:attr(data-section);background:var(--surface-strong);height:25px;color:var(--dim);letter-spacing:.08em;text-transform:uppercase;align-items:center;padding:0 12px;font-size:.68rem;font-weight:850;display:flex;position:absolute;bottom:100%;left:0;right:0}.coach-comparison-row>:first-child{text-align:left}.coach-comparison-row>span{text-align:center;color:var(--dim);font-size:.78rem}.coach-comparison-row>:last-child{text-align:right}@media(max-width:680px){.trend-control-panel,.trend-primary-card,.consistency-summary,.trend-ledger-section{padding:12px}.trend-category-tabs button,.compare-mode-tabs button{flex:42%}.trend-primary-chart{height:245px}.consistency-grid{grid-template-columns:1fr 1fr}.compare-methodology{flex-direction:column;align-items:flex-start}.coach-comparison-head,.coach-comparison-row{grid-template-columns:minmax(78px,1fr) minmax(90px,1.05fr) minmax(78px,1fr);padding-left:8px;padding-right:8px}.coach-comparison-head{font-size:.7rem}.coach-comparison-row{font-size:.82rem}.comparison-sample-cards strong{font-size:1.35rem}}.print-only{display:none}.print-report-button,.print-action{border:1px solid var(--accent);background:var(--accent);color:#fff;font:inherit;cursor:pointer;border-radius:7px;padding:9px 13px;font-size:.78rem;font-weight:850}.print-report-button:disabled,.print-action:disabled{opacity:.45;cursor:not-allowed}.profile-header .print-report-button{align-self:center;margin-left:auto}.impact-heading-actions{justify-items:end;gap:8px;display:grid}@media(max-width:680px){.profile-header .print-report-button{width:100%;margin-left:0}.impact-heading-actions{justify-items:stretch;width:100%}.impact-heading-actions>span{text-align:left}}@page{size:landscape;margin:.5in}@media print{html,body,#root,.app-shell,.main-content{color:#111!important;background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important}body[data-print-context] .app-shell>:not(.main-content),body[data-print-context] .main-content>*{display:none!important}body[data-print-context=reports] .main-content>.reports-page,body[data-print-context=player] .main-content>.unified-profile,body[data-print-context=team] .main-content>.roster-analytics{display:block!important}body[data-print-context=reports] .reports-page>:not(.print-report),body[data-print-context=player] .unified-profile>:not(.print-report),body[data-print-context=team] .roster-analytics>:not(.team-impact-dashboard),body[data-print-context=team] .team-impact-dashboard>:not(.print-report){display:none!important}.print-only,body[data-print-context] .print-report{display:block!important}.print-report{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-family:Aptos,Helvetica Neue,Helvetica,sans-serif;font-size:10pt;line-height:1.35;color:#111!important;background:#fff!important;width:100%!important;max-width:none!important;position:static!important}.print-report *,.print-report h1,.print-report h2,.print-report h3,.print-report h4,.print-report p,.print-report span,.print-report strong,.print-report small,.print-report th,.print-report td{color:#111!important;text-shadow:none!important}.print-report button,.print-report select,.print-report input,.print-report .download-error,.print-report .download-status,.print-report .output-share-help{display:none!important}.print-document-header{border-bottom:3px solid #ec6b22;grid-template-columns:1fr auto;align-items:end;gap:2px 24px;margin:0 0 14px;padding:0 0 12px;display:grid}.print-document-header p{letter-spacing:.12em;grid-column:1/-1;margin:0;font-size:9pt;font-weight:850}.print-document-header h1{letter-spacing:.02em;margin:0;font-size:22pt}.print-document-header h2{text-align:right;margin:0;font-size:13pt;font-weight:700}.print-report-meta{border:1px solid #cfd5d1;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0 0 14px;display:grid}.print-report-meta>div{border-right:1px solid #cfd5d1;min-width:0;padding:8px 10px}.print-report-meta>div:last-child{border-right:0}.print-report-meta dt{letter-spacing:.06em;text-transform:uppercase;margin:0 0 2px;font-size:7.5pt;font-weight:800;color:#555!important}.print-report-meta dd{overflow-wrap:anywhere;margin:0;font-size:9.5pt;font-weight:750}.print-section,.print-impact-summary,.print-stat-grid,.print-chart,.print-report .report-bars,.print-report .mini-shot-report,.print-report .game-report-preview,.print-report table,.print-report tr{break-inside:avoid;page-break-inside:avoid}.print-section{margin:0 0 15px}.print-section>h3{border-bottom:1px solid #aeb7b1;margin:0 0 8px;padding-bottom:5px;font-size:13pt}.print-method-note{margin:-2px 0 8px;font-size:8.5pt;color:#555!important}.print-impact-summary,.print-stat-grid{border:1px solid #cfd5d1;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0 0 14px;display:grid;background:#cfd5d1!important}.print-impact-summary>div,.print-stat-grid>div{min-height:52px;padding:9px 10px;background:#fff!important}.print-impact-summary span,.print-stat-grid span{text-transform:uppercase;font-size:7.5pt;font-weight:800;display:block;color:#555!important}.print-impact-summary strong,.print-stat-grid strong{margin-top:3px;font-size:15pt;display:block}.print-stat-grid small{margin-top:2px;display:block;color:#555!important}.print-stat-grid-wide{grid-template-columns:repeat(7,minmax(0,1fr))}.print-chart{justify-content:center;width:100%;display:flex;overflow:hidden}.print-chart .recharts-wrapper,.print-chart svg{max-width:100%!important;height:auto!important}.print-chart .recharts-cartesian-axis-tick-value,.print-chart .recharts-legend-item-text,.print-chart .recharts-label-list text{fill:#111!important}.print-chart .recharts-cartesian-grid line{stroke:#d8ddd9!important}.print-report .report-table-scroll{border:0!important;max-height:none!important;overflow:visible!important}.print-report table{border-collapse:collapse!important;width:100%!important;font-size:7.5pt!important}.print-report thead{display:table-header-group}.print-report th{font-weight:850;background:#edf0ee!important}.print-report th,.print-report td{text-align:right;white-space:nowrap;border:1px solid #cfd5d1!important;padding:4px 5px!important}.print-report th:first-child,.print-report td:first-child{text-align:left}.print-ranking-table{font-size:9pt!important}.print-ranking-table th,.print-ranking-table td{padding:6px 8px!important}.print-report .report-bars{background:#fff!important;border:0!important;padding:0!important}.print-report .report-bars>div{grid-template-columns:150px 1fr 70px}.print-report .report-bars i{background:linear-gradient(90deg,#15765b var(--positive),#b83b31 var(--positive))!important}.print-report .report-session-list{background:#fff!important;border:0!important;padding:0!important}.print-report .report-session-list>div{border-bottom:1px solid #dde2df;grid-template-columns:120px 1fr;gap:12px;padding:5px 0;display:grid}.print-report .mini-shot-report{background:#fff!important;border:1px solid #cfd5d1!important}.print-report .historical-court,.print-report .shot-chart-svg{max-height:5.2in}.print-report .recharts-tooltip-wrapper{display:none!important}}.standalone-root{min-height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.safe-area-top-scrim{height:env(safe-area-inset-top);z-index:100;pointer-events:none;position:fixed;inset:0 0 auto}.migration-notice{background:var(--court);color:#fff;text-align:center;padding:8px 16px;font-size:13px}@media print{.migration-notice,.safe-area-top-scrim{display:none}}@media(max-width:899px){.auth-page{grid-template-rows:auto 1fr}}.impact-key{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;margin:12px 0;padding:14px 16px}.impact-key h3{margin:0 0 8px;font-size:16px}.impact-key p{margin:4px 0;font-size:13px;line-height:1.5}.shot-color-key{color:var(--text);font-size:13px;line-height:1.5}@media print{.print-report td,.print-report td:first-child,.print-report tbody tr{color:#111!important;background:#fff!important;position:static!important}.print-report th{position:static!important}.print-report td:first-child{min-width:110px;white-space:normal!important}.print-report .impact-key{break-inside:avoid;border-color:#cfd5d1;background:#fff!important}.print-report .shot-zone.miss>path{fill:#e9897d!important}.print-report .shot-zone.hit>path{fill:#78d7b3!important}.print-report .shot-zone.neutral>path{fill:#e8e5dc!important}}.impact-key{padding:0;overflow:hidden}.impact-key-toggle{width:100%;color:var(--text);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:12px;padding:14px 16px;font-weight:800;display:flex}.impact-key-toggle:hover{background:var(--surface-strong)}.impact-key-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.impact-key-icon{background:var(--court);color:#fffdf8;border-radius:9px;flex:0 0 34px;place-items:center;height:34px;font-size:22px;display:grid}.impact-key-toggle small{color:var(--dim);margin-top:3px;font-size:12px;font-weight:400;display:block}.impact-key-chevron{color:var(--dim);margin-left:auto;font-size:24px}.impact-key-panel{border-top:1px solid var(--border);padding:16px}.impact-key-panel[hidden],.impact-key-print-title{display:none}.impact-key-columns{grid-template-columns:1fr 1fr;gap:16px;display:grid}.impact-key-group{background:var(--good-bg);border:1px solid var(--border);border-radius:8px;min-width:0;padding:14px}.impact-key-group.negative{background:var(--low-bg)}.impact-key-group h3{color:var(--good);align-items:center;gap:8px;display:flex}.impact-key-group.negative h3{color:var(--low)}.impact-key-group h3>span{background:var(--good);width:23px;height:23px;color:var(--surface);border-radius:50%;place-items:center;display:grid}.impact-key-group.negative h3>span{background:var(--low)}.impact-key-group ul{gap:7px;margin:8px 0 0;padding:0;list-style:none;display:grid}.impact-key-group li{justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;display:flex}.impact-key-group li b{white-space:nowrap;color:var(--dim);font-size:12px}.impact-key-formulas{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;padding-top:12px;display:grid}.impact-key-formulas strong,.impact-key-formulas span{display:block}.impact-key-formulas span{color:var(--dim);margin-top:3px}.impact-key .impact-key-note{color:var(--dim);margin-top:12px;font-size:12px}@media(max-width:600px){.impact-key-columns,.impact-key-formulas{grid-template-columns:1fr;gap:10px}}@media print{.print-report .impact-key-toggle{display:none!important}.print-report .impact-key-panel[hidden],.print-report .impact-key-print-title{display:block!important}.print-report .impact-key-panel{border-top:0;padding:10px}.print-report .impact-key-columns,.print-report .impact-key-formulas{grid-template-columns:1fr 1fr}.print-report .impact-key-group{border-color:#cfd5d1;background:#fff!important}.print-report .impact-key-group h3>span{background:#edf0ee!important}}.assist-prompt-backdrop{z-index:1200;background:#000000a6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.assist-prompt{border:1px solid var(--border);background:var(--surface);width:min(620px,100%);max-height:90dvh;color:var(--text);box-shadow:var(--shadow);border-radius:16px;padding:24px;overflow-y:auto}.assist-prompt h2{font-family:var(--display);margin:5px 0 10px;font-size:34px}.assist-prompt-help,.assist-prompt-footnote{color:var(--dim);font-size:14px;line-height:1.5}.assist-prompt button{cursor:pointer;font:inherit}.assist-prompt button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.assist-no{border:1px solid var(--border);background:var(--court);color:#fffdf8;border-radius:9px;width:100%;margin:16px 0;padding:14px;font-weight:800!important}.assist-player-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.assist-player-grid button{background:var(--good-bg);min-height:96px;color:var(--text);border:1px solid var(--border);border-radius:9px;gap:5px;padding:14px 8px;display:grid}.assist-player-grid button:hover{border-color:var(--good)}.assist-player-grid button>span{color:var(--good);font-size:18px;font-weight:900}.assist-player-grid small{color:var(--dim)}.assist-prompt-footnote{margin:18px 0 0;font-size:12px}@media(max-width:450px){.assist-prompt{padding:18px}.assist-player-grid{grid-template-columns:repeat(2,1fr)}}.live-tracking-sheet.stat-sheet.chart-sheet{border-radius:16px 16px 0 0;grid-template-columns:minmax(360px,.95fr) minmax(0,1fr);width:min(1440px,100% - 24px);height:94dvh;max-height:94dvh;padding:0;display:grid;overflow:hidden}.live-player-board{background:var(--surface-strong);border-right:1px solid var(--border);flex-direction:column;min-height:0;padding:16px;display:flex}.live-board-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.live-board-heading strong{font-family:var(--display);font-size:25px}.live-board-heading span{color:var(--dim);font-size:11px}.live-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;min-height:0;display:grid;overflow-y:auto}.live-player-card{border:1px solid var(--border);background:var(--surface);text-align:left;min-width:0;min-height:104px;color:var(--text);border-radius:9px;padding:10px}.live-player-card.selected{border:2px solid var(--accent);background:var(--accent);padding:9px}@supports (color:color-mix(in lab,red,red)){.live-player-card.selected{background:color-mix(in srgb,var(--accent)12%,var(--surface))}}.live-player-card:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.live-player-identity{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.live-player-identity strong{font-family:var(--display);overflow-wrap:anywhere;font-size:20px;line-height:1.1}.live-player-identity small{color:var(--dim);font-weight:800}.live-player-card .player-running-line{grid-template-columns:repeat(3,minmax(0,1fr))}.live-player-card .player-running-line small{font-size:9px}.live-player-card .player-running-line b{font-size:16px}.live-entry-workspace{min-width:0;min-height:0;padding:8px 20px 24px;overflow-y:auto}.live-entry-workspace .sheet-head{top:-8px}@media(min-width:760px){.live-roster-grid{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.live-roster-grid .quick-player-row{border:1px solid var(--border);border-radius:9px;grid-template-columns:minmax(90px,.8fr) minmax(0,1.3fr) 28px}.live-roster-grid .player-running-line{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:899px){.live-tracking-sheet.stat-sheet.chart-sheet{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.live-player-board{border-right:0;border-bottom:1px solid var(--border);max-height:42dvh;padding:10px}.live-board-heading{margin-bottom:8px}.live-player-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.live-player-card{min-height:94px;padding:8px}.live-player-card.selected{padding:7px}.live-player-identity strong{font-size:20px}}@media(max-width:480px){.live-player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-tracking-sheet.stat-sheet.chart-sheet{width:100%;height:96dvh;max-height:96dvh}}.live-player-card{align-content:start;min-height:116px;display:grid}.live-player-card .player-running-line{line-height:1.15}.live-player-card .player-running-line b{line-height:1.2}@media(min-width:900px){.live-player-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.report-coach-trends{border-top:2px solid var(--border);gap:18px;margin:24px 0;padding-top:20px;display:grid}.report-coach-trends header h3{font-family:var(--display);margin:4px 0 8px;font-size:32px}.report-coach-trends h3{margin:8px 0 0}.report-coach-trends header p:last-child,.report-trend-note{color:var(--dim);font-size:13px;line-height:1.5}.report-team-trends,.report-player-trends{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.report-team-trends article,.report-player-trends article{color:#10211c;break-inside:avoid;background:#fffdf8;border:1px solid #c9d0c8;border-radius:10px;min-width:0;padding:14px}.report-team-trends h4,.report-player-trends h4{font-family:var(--display);margin:0 0 10px;font-size:21px}.report-team-trends article p,.report-player-trends article p{color:#465e52;margin:10px 0 0;font-size:12px;line-height:1.4}.report-trend-plot{width:100%;height:auto;display:block}.report-trend-legend{flex-wrap:wrap;justify-content:center;gap:16px;font-size:12px;font-weight:800;display:flex}.report-trend-legend span{align-items:center;gap:5px;display:flex}.report-trend-legend i{border-radius:3px;width:18px;height:9px}.report-trend-empty{place-items:center;min-height:90px;display:grid}.report-trend-session-key{gap:5px;display:grid}.report-trend-session-key h4{margin:0 0 5px}.report-trend-session-key p{align-items:baseline;gap:9px;margin:0;font-size:12px;display:flex}.report-trend-session-key b{color:var(--accent);min-width:20px}@media(max-width:600px){.report-team-trends,.report-player-trends{grid-template-columns:1fr}}@media print{.print-report .report-coach-trends{break-inside:auto;color:#10211c;display:block}.print-report .report-team-trends,.print-report .report-player-trends{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px;display:grid}.print-report .report-coach-trends h3{break-after:avoid}.print-report .report-coach-trends article{break-inside:avoid}.print-report .report-trend-session-key b{color:#10211c}}.report-trend-dot{cursor:pointer;stroke:#0000;stroke-width:4px}.report-trend-dot:focus-visible,.report-trend-dot[aria-pressed=true]{stroke:#10211c;stroke-width:2px;outline:none}.report-trend-detail{color:#10211c;background:#eef3ed;border-radius:7px;justify-content:space-between;align-items:center;gap:10px;min-height:72px;margin-top:10px;padding:10px;display:flex}.report-trend-detail>div{gap:3px;min-width:0;display:grid}.report-trend-detail strong{font-size:15px}.report-trend-detail span,.report-trend-detail small{font-size:12px;line-height:1.4}.report-trend-detail button{color:#10211c;background:#fffdf8;border:1px solid #c9d0c8;border-radius:5px;min-width:32px;min-height:32px;font-size:22px}.report-trend-hint{color:#465e52}@media print{.print-report .report-trend-detail{display:none}.print-report .report-trend-dot{stroke:none}}.efficiency-panel{border-top:2px solid var(--border);gap:16px;margin:24px 0;padding-top:18px;display:grid}.efficiency-panel header h3{font-family:var(--display);margin:4px 0 8px;font-size:34px}.efficiency-panel header>p:last-child{color:var(--dim);margin:0;font-size:13px}.efficiency-key{border:1px solid var(--border);border-radius:9px;padding:12px}.efficiency-key summary{cursor:pointer;font-weight:800}.efficiency-key strong{margin-top:12px;display:block}.efficiency-key p{color:var(--dim);font-size:13px;line-height:1.5}.efficiency-key a{color:var(--good);text-decoration:underline}.efficiency-coverage-note{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.efficiency-coverage-note{background:color-mix(in srgb,var(--accent)12%,var(--surface))}}.efficiency-coverage-note{border-left:3px solid var(--accent);margin:0;padding:12px;font-size:13px;line-height:1.5}.efficiency-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.efficiency-summary>div{background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;gap:8px;padding:14px;display:grid}.efficiency-summary span{color:var(--dim);font-size:11px}.efficiency-summary strong{font-family:var(--display);font-size:34px}.efficiency-summary b{font-size:13px}.efficiency-measure{gap:8px;display:flex}.efficiency-measure button{border:1px solid var(--border);background:var(--surface);border-radius:7px;min-height:42px;padding:8px 14px;font-weight:800}.efficiency-measure button[aria-pressed=true]{background:var(--court);color:#fffdf8}.efficiency-comparison,.efficiency-session-trend{gap:10px;display:grid}.efficiency-comparison-row{border-bottom:1px solid var(--border);break-inside:avoid;grid-template-columns:minmax(150px,1fr) minmax(90px,1.4fr) 55px;align-items:center;gap:12px;padding:10px 0;display:grid}.efficiency-comparison-row>span{gap:4px;min-width:0;display:grid}.efficiency-comparison-row strong{font-size:14px}.efficiency-comparison-row small{color:var(--dim);font-size:11px;line-height:1.4}.efficiency-comparison-row>b{text-align:right;font-family:var(--display);font-size:24px}.efficiency-bar-track{background:var(--surface-strong);border-radius:3px;height:26px;position:relative}.efficiency-zero{background:var(--dim);width:1px;height:100%;position:absolute;top:0;left:50%}.efficiency-bar{border-radius:3px;height:18px;position:absolute;top:4px}.efficiency-bar.positive{background:var(--good)}.efficiency-bar.negative{background:var(--low)}.efficiency-session-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.efficiency-session-head label{max-width:260px;font-size:12px}@media(max-width:600px){.efficiency-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.efficiency-comparison-row{grid-template-columns:minmax(120px,1.2fr) minmax(65px,1fr) 40px;gap:7px}.efficiency-session-head{flex-direction:column;align-items:stretch}}@media print{.print-report .efficiency-panel{color:#10211c;break-inside:auto;display:block}.print-report .efficiency-panel header,.print-report .efficiency-comparison-row{break-inside:avoid}.print-report .efficiency-measure,.print-report .efficiency-key{display:none}.print-report .efficiency-bar.positive{background:#15765b!important}.print-report .efficiency-bar.negative{background:#b83b31!important}.print-report .efficiency-summary{display:grid}.print-report .efficiency-coverage-note{color:#10211c;background:#fff!important}}.efficiency-print-formula{display:none}@media print{.print-report .efficiency-print-formula{font-size:11px;display:block}}.report-team-totals{border:1px solid var(--border);background:var(--surface);border-radius:14px;margin:20px 0 28px;padding:22px}.report-team-totals h3{margin:0 0 8px}.report-team-totals p{color:var(--muted);font-size:13px;line-height:1.5}.report-team-totals dl{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:16px;margin:18px 0 0;display:grid}.report-team-totals dt{text-transform:uppercase;letter-spacing:.05em;font-size:12px}.report-team-totals dd{color:var(--text);margin:6px 0 0;font-size:19px;font-weight:700}@media print{.report-team-totals{break-inside:avoid;border:1px solid #aaa;padding:12px;color:#000!important;background:#fff!important}.report-team-totals dl{grid-template-columns:repeat(4,1fr);gap:10px}.report-team-totals dd,.report-team-totals p{color:#000!important}}.report-presets{flex-wrap:wrap;align-items:center;gap:10px;margin:20px 0;display:flex}.report-presets span{color:var(--muted);font-size:13px}.report-presets button{border:1px solid var(--border);color:var(--text);background:var(--surface);cursor:pointer;border-radius:8px;padding:10px 14px}.report-coach-summary,.shooting-insights{border:1px solid var(--border);border-radius:14px;margin:24px 0;padding:22px}.report-coach-summary{border-left:4px solid #fd7d24}.report-coach-summary li{margin:12px 0;line-height:1.6}.shooting-insights dl{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;display:grid}.shooting-insights dt{color:var(--muted);font-size:13px}.shooting-insights dd{margin:6px 0;font-size:19px;font-weight:700}.shooting-insights p{font-size:13px;line-height:1.6}@media print{.report-presets{display:none!important}.report-coach-summary,.shooting-insights{break-inside:avoid;border-color:#aaa;color:#000!important;background:#fff!important}.shooting-insights dt{color:#333!important}.report-coach-trends article{break-inside:avoid}.report-player-trends{break-before:page}.print-section h3{break-after:avoid}}.shot-diet-bar{background:#7d968c40;border-radius:6px;height:10px;overflow:hidden}.shot-diet-bar i{background:#fc7d24;height:100%;display:block}@media print{.shot-diet-bar,.shot-diet-bar i{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.shooting-standard{border:1px solid #9ca9a3;border-radius:10px;padding:14px}.shooting-standard.meets{border-left:5px solid #278457}.shooting-standard.below{border-left:5px solid #c3473a}.shooting-standard.neutral{border-left:5px solid #88928e}.shooting-standard dd{font-size:17px;line-height:1.5}.player-comparison{border:1px solid var(--border);border-radius:14px;margin:24px 0;padding:22px}.comparison-picker{border:1px solid var(--border);flex-wrap:wrap;gap:12px;margin:16px 0;padding:16px;display:flex}.comparison-picker label{align-items:center;gap:8px;display:flex}.shooting-volume{border:1px solid var(--border);color:#10211c;background:#f5f2e9;border-radius:12px;margin:20px 0;padding:16px}.shooting-volume svg{width:100%;height:auto}.live-entry-workspace .sheet-head{z-index:5;gap:12px;top:0}.live-save-status{margin-top:7px;font-size:13px;display:block}.live-save-status.saved{color:#268153}.live-save-status.error,.live-save-status.offline{color:#ba4337}.team-analytics-tabs{grid-template-columns:repeat(4,1fr)}@media print{.comparison-picker{display:none!important}.player-comparison,.shooting-volume{break-inside:avoid;color:#000!important;background:#fff!important}.report-volume-charts{break-before:page}@page{margin:16mm;@bottom-right{content:"Page " counter(page)" of " counter(pages);font-size:9pt}}}.comparison-picker input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:0}.comparison-picker label{flex:170px;min-width:170px;font-size:14px}.player-comparison .report-stat-table{font-size:14px}.player-comparison .report-stat-table th{padding:12px;font-size:13px}.player-comparison .report-stat-table td{padding:12px}@media print{.player-comparison .report-stat-table,.player-comparison .report-stat-table th{font-size:10px!important}}.coach-summary-card{background:var(--surface);border:1px solid #a9b9af;border-top:5px solid #fd7d24;padding:26px}.coach-summary-card header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.coach-summary-card h3{margin:4px 0;font-size:30px}.coach-range{border:1px solid #a9b9af;border-radius:20px;padding:8px 12px;font-size:13px}.coach-headline-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.coach-headline-grid article{color:#fffaf0;background:#183e32;border-radius:12px;padding:20px}.coach-headline-grid article>span{font-size:13px;display:block}.coach-headline-grid strong{margin:8px 0;font-size:38px;display:block}.coach-headline-grid p{margin:8px 0}.coach-headline-grid small{color:#d7e5dd;font-size:12px;line-height:1.6}.coach-change-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:26px;display:flex}.coach-change-heading h4,.coach-player-changes h4{margin:8px 0;font-size:20px}.coach-change-heading span{color:var(--muted);font-size:12px}.coach-explanation,.coach-example,.coach-context-note,.coach-player-changes>p{font-size:13px;line-height:1.7}.coach-session-timeline{border:1px solid #a9b9af;border-radius:10px;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:18px 0;padding:18px;display:grid}.coach-session-timeline span{letter-spacing:.08em;color:var(--muted);font-size:10px;display:block}.coach-session-timeline strong{margin:7px 0;font-size:18px;display:block}.coach-session-timeline p{margin:0;font-size:13px}.coach-shooting-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.coach-shooting-grid article{border:1px solid #a9b9af;border-radius:10px;padding:16px}.coach-shooting-grid article.up{border-top:4px solid #278457}.coach-shooting-grid article.down{border-top:4px solid #c3473a}.coach-shooting-grid article.neutral{border-top:4px solid #8a9690}.coach-shooting-grid strong{margin:8px 0;font-size:26px;display:block}.coach-shooting-grid b{font-size:12px;display:block}.coach-shooting-grid p{margin:8px 0 0;font-size:12px;line-height:1.6}.coach-player-changes{border-top:1px solid #a9b9af;margin-top:22px;padding-top:16px}.coach-player-changes ol{padding-left:24px}.coach-player-changes li{border-bottom:1px solid #a9b9af;padding:12px 10px;font-size:14px}.coach-context-note{background:#82918a1f;border-radius:8px;padding:12px}@media(max-width:600px){.coach-headline-grid,.coach-shooting-grid{grid-template-columns:1fr}.coach-session-timeline{gap:10px;padding:12px}}@media print{.coach-headline-grid article{border:1px solid #888;color:#000!important;background:#fff!important}.coach-headline-grid small{color:#333!important}.coach-summary-card{break-inside:auto!important}.coach-headline-grid,.coach-session-timeline,.coach-shooting-grid,.coach-player-changes li{break-inside:avoid}.coach-change-heading{break-after:avoid}}.lineup-section{border:1px solid #35584c;border-radius:18px;margin:20px 0;padding:24px}.lineup-controls{flex-wrap:wrap;gap:18px;margin:24px 0;display:flex}.lineup-controls label{gap:8px;display:grid}.lineup-controls select,.lineup-controls input{color:#f5f2e8;background:#162e26;border:1px solid #527166;border-radius:10px;padding:12px}.lineup-five{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:24px 0;display:grid}.lineup-five article{background:#173c30;border:1px solid #467560;border-radius:16px;padding:18px}.lineup-five strong{color:#88dfbc;font-size:26px}.lineup-five h3{min-height:48px;font-size:20px}.lineup-five span,.lineup-five small{color:#c4d5cd}.lineup-context{background:#182c25;border-radius:12px;padding:16px;line-height:1.6}.report-section-menu{background:#162c24;border:1px solid #45695a;border-radius:12px;margin:18px 0}.report-section-menu summary{cursor:pointer;color:#e5f1e9;padding:16px 20px;font-weight:700}.report-section-menu .report-section-options{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;padding:12px 20px;display:grid}.report-section-menu>p{color:#b4c9bf;padding:0 20px 14px}@media print{.report-section-menu{display:none!important}}.efficiency-panel .efficiency-comparison-row>b,.efficiency-panel .efficiency-summary strong{color:#fff8e9}.efficiency-panel .efficiency-bar-track{background:#263e34}.efficiency-panel .efficiency-bar.positive{background:#75dbac}.efficiency-panel .efficiency-bar.negative{background:#ff8a80}#impact-shooting-chart .recharts-label-list text{fill:#fff8e9;font-weight:700}#impact-shooting-chart .recharts-cartesian-axis-tick text{fill:#d3e2da}@media print{.efficiency-panel .efficiency-comparison-row>b,.efficiency-panel .efficiency-summary strong{color:#10211c!important}#impact-shooting-chart .recharts-label-list text,#impact-shooting-chart .recharts-cartesian-axis-tick text{fill:#10211c!important}}.print-report .print-chart{border:1px solid #d8ddd9;padding:12px;color:#10211c!important;background:#fff!important}.print-report .print-chart .recharts-text{fill:#10211c!important}.print-report .print-chart .recharts-label-list text{font-weight:700;fill:#10211c!important}.print-report .print-chart .recharts-bar-rectangle path{fill:#75dbac!important}@media print{.print-report .efficiency-summary>div{color:#10211c!important;background:#fff!important;border:1px solid #aabbb2!important}.print-report .efficiency-summary>div span,.print-report .efficiency-summary>div strong,.print-report .efficiency-summary>div b{color:#10211c!important;opacity:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
