:root{--ground:#faf8f4;--surface:#fff;--surface-sunk:#f2eee7;--ink:#17191d;--ink-soft:#5c616a;--ink-faint:#8a8f98;--line:#e2dcd2;--line-soft:#ede8e0;--accent:#0f6b5c;--accent-ink:#fff;--hoops:#b85a1b;--hops:#0f6b5c;--handles:#63499e;--heat:#a83731;--recovery:#6b7280;--court-floor:#e8d5b5;--court-line:#a8875a;--court-seam:#6d3410;--logo-ink:#fff6ec;--good:#2e7d4f;--warn:#b4762a;--critical:#b0362f;--radius:10px;--shadow:0 1px 2px #17191d0f, 0 4px 12px #17191d0a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#15171b;--surface:#1c1f24;--surface-sunk:#212429;--ink:#ece8e1;--ink-soft:#9da3ac;--ink-faint:#767c85;--line:#2e333a;--line-soft:#262a30;--accent:#45bfa6;--accent-ink:#10221e;--hoops:#e08a4c;--hops:#45bfa6;--handles:#a48bdd;--heat:#de6e66;--recovery:#9aa0a8;--court-floor:#2b2620;--court-line:#6b5940;--court-seam:#3a1f0c;--logo-ink:#1a1207;--good:#5cb87f;--warn:#d9a85c;--critical:#e07d75;--shadow:0 1px 2px #0006, 0 4px 12px #00000040}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--ground);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}h1,h2,h3{text-wrap:balance;margin:0;line-height:1.15}a{color:var(--accent)}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{max-width:720px;margin:0 auto;padding:0 16px 96px}.topbar{align-items:center;gap:12px;padding:18px 0 12px;display:flex}.brand{letter-spacing:-.01em;font-size:15px;font-weight:700}.brand span{color:var(--ink-faint);font-weight:500}.nav{z-index:30;background:var(--ground);border-bottom:1px solid var(--line);gap:18px;margin-bottom:20px;padding:12px 0;font-size:15px;display:flex;position:sticky;top:0}.nav a{color:var(--ink-soft);border-bottom:2px solid #0000;padding:2px 0;text-decoration:none}.nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent);font-weight:650}@media (max-width:599px){.nav{padding:10px 8px calc(10px + env(safe-area-inset-bottom,0px));background:var(--surface);border-bottom:none;border-top:1px solid var(--line);justify-content:space-around;gap:0;margin-bottom:0;position:fixed;inset:auto 0 0;box-shadow:0 -2px 12px #0000000f}.nav a{border-bottom:none}.nav a[aria-current=page]{color:var(--accent)}}.dayhead{margin-bottom:20px}.dayhead .eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:12px;font-weight:600}.dayhead h1{letter-spacing:-.02em;font-size:28px}.dayhead .sub{color:var(--ink-soft);margin-top:4px;font-size:14px}.stack{flex-direction:column;gap:14px;display:flex}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-head{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;display:flex}.card-body{padding:14px 16px}.card-title{letter-spacing:-.01em;font-size:16px;font-weight:650}.module-stripe{width:100%;height:3px}.module-stripe.hoops{background:var(--hoops)}.module-stripe.hops{background:var(--hops)}.module-stripe.handles{background:var(--handles)}.module-stripe.heat{background:var(--heat)}.module-stripe.recovery{background:var(--recovery)}.chip{letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;font-weight:650;display:inline-flex}.chip.hoops{color:var(--hoops)}.chip.hops{color:var(--hops)}.chip.handles{color:var(--handles)}.chip.heat{color:var(--heat)}.chip.recovery{color:var(--recovery)}.chip.done{color:var(--good)}.chip.pain{color:var(--critical)}.spacer{flex:1}.meta{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:13px}.rows{flex-direction:column;display:flex}.row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:10px 16px;display:flex}.row:last-child{border-bottom:none}.row-name{font-size:15px}.row-target{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:13px}.row.is-done .row-name{color:var(--ink-faint);text-decoration:line-through}.btn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:8px 14px;font-size:14px;font-weight:600;text-decoration:none}.btn:hover{border-color:var(--ink-faint)}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:#0000}.btn.small{padding:6px 10px;font-size:13px}.btn:disabled{opacity:.5;cursor:default}.counter{grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;display:grid}.tally{border:1px solid var(--line);border-radius:var(--radius);text-align:center;background:var(--surface-sunk);padding:14px}.tally .n{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:34px;font-weight:700;line-height:1}.tally .k{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-top:6px;font-size:11px}.bigbtns{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bigbtn{border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:18px 12px;font-size:17px;font-weight:700}.bigbtn.make{border-color:var(--good);color:var(--good)}.bigbtn.miss{border-color:var(--ink-faint);color:var(--ink-soft)}.bigbtn:active{transform:translateY(1px)}.bar{background:var(--surface-sunk);border-radius:999px;height:6px;overflow:hidden}.bar>i{background:var(--accent);border-radius:999px;height:100%;display:block}.grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.stat .k{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);font-size:11px}.stat .v{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:4px;font-size:26px;font-weight:700}.stat .n{color:var(--ink-faint);margin-top:2px;font-size:12px}.stat .v.nodata{color:var(--ink-faint);font-size:20px;font-weight:600}.goal-status{margin-top:4px;font-size:12px;font-weight:650}.goal-status.achieved{color:var(--good)}.goal-status.on_track{color:var(--warn)}.goal-status.behind{color:var(--critical)}.goal-status.no_data{color:var(--ink-faint)}.empty{text-align:center;color:var(--ink-soft);background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);padding:40px 16px}.notice{background:var(--surface-sunk);border-left:3px solid var(--warn);color:var(--ink-soft);border-radius:0 8px 8px 0;padding:12px 14px;font-size:14px}.form{flex-direction:column;gap:12px;max-width:320px;display:flex}.form label{color:var(--ink-soft);font-size:13px;font-weight:600}.form input{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:8px;padding:10px 12px;font-size:16px}.error{color:var(--critical);font-size:14px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.logpickers{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}@media (max-width:420px){.logpickers{grid-template-columns:1fr}}.picker-label{color:var(--ink-soft);margin-bottom:4px;font-size:13px;font-weight:600;display:block}.picker{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:8px;padding:10px 12px;font-size:16px}.court-wrap{background:var(--surface-sunk);border-radius:var(--radius);padding:8px}.court svg{width:100%;height:auto;display:block}.court-lines{stroke:var(--court-line);fill:none;stroke-width:2px}.court-floor{fill:var(--court-floor)}.spot-made{fill:var(--good)}.spot-made-text{fill:#fff;font-weight:700}.spot-miss-ring{fill:none;stroke:var(--ink-faint);stroke-width:2.5px}.spot-miss-text{fill:var(--ink-soft);font-weight:600}.spot-label{fill:var(--ink-faint);letter-spacing:.04em;font-weight:600}.spot-empty{fill:none;stroke:var(--line);stroke-width:2px;stroke-dasharray:4 4}.legend{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:18px;margin-top:12px;font-size:13px;display:flex}.legend-item{align-items:center;gap:7px;display:flex}.legend-dot{border-radius:50%;flex:none;width:15px;height:15px}.legend-dot.made{background:var(--good)}.legend-dot.miss{border:2.5px solid var(--ink-faint)}.legend-dot.none{border:2px dashed var(--line)}.filters{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.filter{border:1px solid var(--line);color:var(--ink-soft);background:var(--surface);border-radius:999px;padding:5px 11px;font-size:13px;text-decoration:none}.filter[aria-current=true]{background:var(--accent);color:var(--accent-ink);border-color:#0000;font-weight:600}.brandlockup{align-items:center;gap:12px;display:flex}.brandname{letter-spacing:.02em;font-size:25px;font-weight:800;line-height:1.05}.brandtag{color:var(--ink-faint);letter-spacing:.02em;margin-top:2px;font-size:12.5px;font-weight:600}.notefield{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;resize:vertical;border-radius:8px;min-height:76px;padding:10px 12px;font-size:16px;line-height:1.5}.notefield::placeholder{color:var(--ink-faint)}.quote{background:var(--header-bg);text-align:center;border:0;border-radius:0 0 12px 12px;margin:16px -16px -14px;padding:26px 26px 20px;position:relative;overflow:hidden}.quote:after{content:"";pointer-events:none;border:2px solid #ffffff0f;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-190px;left:50%;transform:translate(-50%)}.quote>*{z-index:1;position:relative}.quote p{max-width:30ch;font-family:var(--display);letter-spacing:0;color:#ffffffeb;text-wrap:balance;margin:0 auto;font-size:22px;font-style:normal;font-weight:400;line-height:1.4}.quote cite{letter-spacing:.02em;color:var(--header-soft);justify-content:center;align-items:center;gap:12px;margin-top:16px;font-size:14px;font-style:normal;font-weight:500;display:flex}.quote cite:before,.quote cite:after{content:"";background:#ffffff47;flex:none;width:26px;height:1px}.quote-actions{justify-content:center;align-items:center;gap:8px;margin-top:20px;display:flex}.quote-btn{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);border-radius:999px;padding:4px 11px;font-size:13px;font-weight:600;line-height:1.4}.quote-btn:hover{border-color:var(--ink-faint);color:var(--ink)}.quote .quote-btn{color:#ffffffd1;background:0 0;border-color:#ffffff38;padding:6px 14px}.quote .quote-btn:hover{color:#fff;border-color:#ffffff80}.quote-btn.is-liked{color:var(--hoops);border-color:var(--hoops);background:var(--surface)}.quote .quote-btn.is-liked{color:#ffb072;background:#ffb0721f;border-color:#ffb072}@media (max-width:480px){.quote{padding:22px 18px 18px}.quote p{font-size:19px}}.sharecanvas{border-radius:var(--radius);border:1px solid var(--line);width:100%;max-width:380px;height:auto;box-shadow:var(--shadow);display:block}.shareactions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.sharelink{color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:10px;padding:12px 14px;text-decoration:none;display:flex}.sharelink:hover{border-color:var(--hoops)}.sharelink .k{font-size:15px;font-weight:650}.sharelink .n{color:var(--ink-faint);font-size:13px}.filter-hoops[aria-current=true]{background:var(--hoops);color:#fff;border-color:#0000}.filter-hops[aria-current=true]{background:var(--hops);color:#fff;border-color:#0000}.filter-heat[aria-current=true]{background:var(--heat);color:#fff;border-color:#0000}.filter-handles[aria-current=true]{background:var(--handles);color:#fff;border-color:#0000}.progresshead{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}:root{--display:"Archivo", ui-sans-serif, system-ui, "Segoe UI", sans-serif}h1,h2,h3{font-family:var(--display);letter-spacing:-.025em}.brandname{font-family:var(--display);letter-spacing:.005em;font-size:26px;font-weight:800}.brandtag{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);font-size:12px;font-weight:600}.dayhead h1{letter-spacing:-.03em;font-size:34px;font-weight:800}.dayhead .eyebrow{font-family:var(--display);letter-spacing:.14em;font-size:11px;font-weight:700}.dayhead .sub{font-size:14.5px}.nav{font-family:var(--display);font-size:15px;font-weight:600}.module-stripe{height:4px}.card-title{font-family:var(--display);letter-spacing:-.015em;font-size:16.5px;font-weight:700}.chip{font-family:var(--display);letter-spacing:.09em;border-width:1.5px;padding:4px 9px;font-size:10.5px;font-weight:700}.row-name{font-size:15.5px;font-weight:500}.stat .v{font-family:var(--display);letter-spacing:-.035em;font-size:32px;font-weight:800}.stat .k{font-family:var(--display);letter-spacing:.1em;font-weight:700}.tally .n{font-family:var(--display);letter-spacing:-.035em;font-size:38px;font-weight:800}.tally .k{font-family:var(--display);font-weight:700}.btn{font-family:var(--display);letter-spacing:-.005em;font-weight:700}.bigbtn{font-family:var(--display);letter-spacing:-.01em;font-size:18px;font-weight:800}.filter{font-family:var(--display);font-weight:700}.sharelink{border:1px solid var(--line);box-shadow:none;background:0 0;border-radius:999px;align-self:center;align-items:center;gap:7px;padding:7px 13px;display:inline-flex}.sharelink .k{font-family:var(--display);color:var(--ink-soft);font-size:13.5px;font-weight:700}.sharelink .arrow{color:var(--ink-faint);font-size:14px}.sharelink:hover{border-color:var(--ink-faint);background:var(--surface)}.sharelink:hover .k{color:var(--ink)}:root{--display:"IBM Plex Sans", ui-sans-serif, system-ui, "Segoe UI", sans-serif;--header-bg:#1d1f23;--header-ink:#fff;--header-soft:#9aa0a8;--navh:48px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--header-bg:#101215}}:root[data-theme=dark]{--header-bg:#101215}.topbar{background:var(--header-bg);border-radius:0 0 12px 12px;margin:0 -16px;padding:16px}.brandname{color:var(--header-ink);letter-spacing:.045em;font-weight:700}.brandtag{color:var(--header-soft)}h1,h2,h3{letter-spacing:-.02em}.dayhead h1{letter-spacing:-.022em;font-weight:700}.card-title{letter-spacing:-.01em;font-weight:600}.stat .v,.tally .n{letter-spacing:-.025em;font-weight:700}.btn{font-weight:600}.bigbtn{font-weight:700}.chip{font-weight:600}.nav a[aria-current=page]{font-weight:700}.filters{top:var(--navh);z-index:20;background:var(--ground);border-bottom:1px solid var(--line-soft);margin:0 0 10px;padding:10px 0;position:sticky}@media (max-width:599px){.filters{top:0}}.logo-seam{stroke:#33363b}.measurables{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;display:grid}.measurable-input{align-items:center;gap:6px;display:flex}.measurable-input input{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:right;border-radius:8px;padding:9px 10px;font-size:16px}.topbar{border-radius:0}.playercard{background:var(--surface);border:1px solid var(--line);border-top:5px solid var(--header-bg);box-shadow:var(--shadow);border-radius:12px;overflow:hidden}.pc-top{background:var(--header-bg);color:#fff;align-items:center;gap:14px;padding:16px;display:flex}.pc-portrait{width:68px;height:68px;font-family:var(--display);color:#fff;background:linear-gradient(150deg,#35393f,#22262b);border:1px solid #ffffff29;border-radius:10px;flex:none;place-items:center;font-size:30px;font-weight:700;display:grid}.pc-id{min-width:0}.pc-name{font-family:var(--display);letter-spacing:-.02em;font-size:26px;font-weight:700;line-height:1.1}.pc-meta{color:#c8ccd2;margin-top:3px;font-size:13px}.pc-team{font-family:var(--display);letter-spacing:.09em;text-transform:uppercase;color:#8e959e;margin-top:5px;font-size:11px;font-weight:600}.pc-measures{border-bottom:1px solid var(--line-soft);background:var(--surface-sunk);grid-template-columns:repeat(6,1fr);display:grid}@media (max-width:520px){.pc-measures{grid-template-columns:repeat(3,1fr)}}.pc-measure{text-align:center;border-right:1px solid var(--line-soft);padding:10px 6px}.pc-measure:last-child{border-right:none}.pc-measure .l{font-family:var(--display);letter-spacing:.11em;color:var(--ink-faint);font-size:9.5px;font-weight:700}.pc-measure .v{font-family:var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:17px;font-weight:700}.pc-measure .v.is-empty{color:var(--ink-faint);font-weight:500}.pc-stats{grid-template-columns:repeat(4,1fr);display:grid}@media (max-width:520px){.pc-stats{grid-template-columns:repeat(2,1fr)}}.pc-statline{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);flex-direction:column;gap:1px;padding:12px 10px;display:flex}.pc-statline:last-child{border-right:none}.pc-statline .k{font-family:var(--display);letter-spacing:.11em;color:var(--ink-faint);font-size:9.5px;font-weight:700}.pc-statline .v{font-family:var(--display);letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.pc-statline .n{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.pc-foot{font-family:var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;gap:10px;padding:10px 16px;font-size:11px;font-weight:600;display:flex}.legend{margin-top:14px;display:block}.legend-example{background:var(--surface);border:1px solid var(--line);border-radius:10px;align-items:center;gap:14px;padding:10px 14px;display:flex}.legend-example svg{flex:none;width:110px;height:52px}.legend-key{color:var(--ink-soft);font-size:13px;line-height:1.5}.legend-key b{color:var(--ink);font-family:var(--display);font-weight:700}.legend-note{color:var(--ink-soft);align-items:center;gap:9px;margin-top:10px;font-size:13px;display:flex}.spot-empty{stroke:var(--ink-faint);stroke-width:2.5px;stroke-dasharray:5 4;opacity:.7}.legend-dot.none{border:2px dashed var(--ink-faint);opacity:.8}.rangebar{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-bottom:12px;display:flex}.rangebar input[type=date]{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;padding:7px 9px;font-size:14px}.reset-filter{font-family:var(--display);color:var(--ink-soft);border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}.reset-filter:hover{border-color:var(--critical);color:var(--critical)}:root{--hops:#1f6aa8;--hops-soft:#e6eff7}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--hops:#6aaee8;--hops-soft:#16283a}}:root[data-theme=dark]{--hops:#6aaee8;--hops-soft:#16283a}.resume{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;padding:26px 28px 20px}.rs-head{border-bottom:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding-bottom:14px;display:flex}.rs-name{font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:30px;font-weight:700}.rs-sub{color:var(--ink-soft);margin-top:3px;font-size:13.5px}.rs-mark{text-align:right}.rs-brand{font-family:var(--display);letter-spacing:.06em;font-size:15px;font-weight:700}.rs-tag{color:var(--ink-faint);letter-spacing:.03em;font-size:11px}.resume section{margin-bottom:20px}.rs-h{font-family:var(--display);letter-spacing:.13em;text-transform:uppercase;color:var(--ball,var(--hoops));border-bottom:1px solid var(--line);margin:0 0 8px;padding-bottom:4px;font-size:11px;font-weight:700}.rs-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;display:grid}.rs-cell .k{font-size:10.5px;font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint);font-weight:600}.rs-cell .v{font-family:var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.rs-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.rs-table th{text-align:left;font-family:var(--display);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line);padding:4px 6px;font-size:10px;font-weight:700}.rs-table td{border-bottom:1px solid var(--line-soft);color:var(--ink-soft);padding:5px 6px}.rs-table tr:last-child td{border-bottom:none}.rs-table td:first-child{color:var(--ink)}.rs-total td{border-top:1.5px solid var(--line);color:var(--ink);font-weight:700}.rs-unit{color:var(--ink-faint);font-size:11px}.rs-better{color:var(--good)}.rs-worse{color:var(--critical)}.rs-note{color:var(--ink-faint);margin:8px 0 0;font-size:12.5px;line-height:1.5}.rs-foot{border-top:1px solid var(--line);font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);justify-content:space-between;padding-top:10px;font-size:10.5px;display:flex}@media print{.noprint,.nav,.topbar{display:none!important}body{color:#000;background:#fff}.shell{max-width:none;padding:0}.resume{box-shadow:none;background:#fff;border:none;padding:0}.rs-h,.rs-table td,.rs-cell .v,.rs-better,.rs-worse{color:#000}section{break-inside:avoid}}.roster-stats{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.roster-stats .k{font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:10px;font-weight:700}.roster-stats .v{font-family:var(--display);letter-spacing:-.025em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.roster-stats .n{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.roster-teams{color:var(--ink-soft);flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:12.5px;display:flex}.roster-team em{color:var(--ink-faint);font-style:normal}.flags{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.flags li{border-left:3px solid;border-radius:7px;padding:6px 10px;font-size:13px}.flags li.critical{color:var(--critical);border-color:var(--critical);background:var(--surface-sunk)}.flags li.warn{color:var(--warn);border-color:var(--warn);background:var(--surface-sunk)}.pc-portrait-wrap{flex:none;position:relative}.pc-portrait.is-editable{cursor:pointer;border:1px solid #ffffff29;padding:0;position:relative;overflow:hidden}.pc-portrait.is-editable:disabled{opacity:.6;cursor:default}.pc-photo{object-fit:cover;width:100%;height:100%;display:block}.pc-portrait-hint{color:#fff;font-family:var(--display);letter-spacing:.07em;text-transform:uppercase;background:#0000009e;padding:3px 0;font-size:9px;font-weight:700;position:absolute;bottom:0;left:0;right:0}.pc-portrait-error{color:#ff9b93;width:190px;margin:6px 0 0;font-size:12px;position:absolute;top:100%;left:0}.pc-actions{align-items:center;margin-left:auto;display:flex}.pc-send{font-family:var(--display);color:#fff;white-space:nowrap;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:700;text-decoration:none;display:inline-flex}.pc-send:hover{background:#ffffff1f;border-color:#ffffff80}.pc-teams{flex-direction:column;gap:2px;margin-top:6px;display:flex}.pc-teamline{color:#c8ccd2;font-size:12.5px}.pc-teamline .cat{font-family:var(--display);color:#8e959e;letter-spacing:.04em;font-weight:700}.pc-teamline .num{color:#fff;font-variant-numeric:tabular-nums}.jerseys{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.jerseys input{border:1px solid var(--line);background:var(--surface);width:90px;color:var(--ink);text-align:right;border-radius:8px;padding:9px 10px;font-size:16px}.pc-top{align-items:flex-start}.pc-id{flex:1}@media (max-width:480px){.pc-top{flex-wrap:wrap}.pc-actions{width:100%;margin-left:0}.pc-send{justify-content:center;width:100%}}.viewlinks{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.viewlinks a{font-family:var(--display);color:var(--ink-soft);border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 13px;font-size:13.5px;font-weight:600;text-decoration:none}.viewlinks a:hover{border-color:var(--ink-faint);color:var(--ink)}.viewlinks a.is-action{color:var(--accent);border-color:var(--accent)}.viewlinks a.is-action:hover{background:var(--accent);color:var(--accent-ink)}@media (max-width:599px){.nav{padding:12px 8px calc(12px + env(safe-area-inset-bottom,0px));font-size:15.5px}}.topbar{justify-content:space-between}.whoami{border:1px solid #ffffff2e;border-radius:999px;flex:none;align-items:center;gap:9px;padding:5px 11px 5px 5px;text-decoration:none;display:flex}.whoami:hover{background:#ffffff1a;border-color:#ffffff73}.whoami-face{width:30px;height:30px;font-family:var(--display);color:#fff;background:linear-gradient(150deg,#3a3f45,#23272c);border:1px solid #ffffff38;border-radius:50%;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid;overflow:hidden}.whoami-face img{object-fit:cover;width:100%;height:100%}.whoami-name{font-family:var(--display);color:#e6e9ed;font-size:13.5px;font-weight:600}@media (max-width:430px){.whoami-name{display:none}.whoami{padding:4px}}.whoami{flex:none;position:relative}.whoami>summary{cursor:pointer;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:5px 10px 5px 5px;list-style:none;display:flex}.whoami>summary::-webkit-details-marker{display:none}.whoami>summary:hover{background:#ffffff1a;border-color:#ffffff73}.whoami[open]>summary{background:#ffffff24;border-color:#ffffff80}.whoami-caret{color:#9aa0a8;font-size:10px}.whoami-menu{z-index:60;background:var(--surface);border:1px solid var(--line);border-radius:10px;flex-direction:column;min-width:210px;padding:6px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 28px #00000038}.whoami-who{border-bottom:1px solid var(--line-soft);flex-direction:column;gap:2px;margin-bottom:6px;padding:8px 10px 10px;display:flex}.whoami-who strong{font-family:var(--display);color:var(--ink);font-size:14px}.whoami-who span{color:var(--ink-faint);word-break:break-all;font-size:12px}.whoami-menu a,.whoami-menu button{text-align:left;width:100%;font-family:var(--display);color:var(--ink-soft);background:0 0;border:none;border-radius:7px;padding:9px 10px;font-size:14px;font-weight:600;text-decoration:none;display:block}.whoami-menu a:hover,.whoami-menu button:hover{background:var(--surface-sunk);color:var(--ink)}.whoami-menu form{border-top:1px solid var(--line-soft);margin:6px 0 0;padding-top:6px}.whoami-menu button{color:var(--critical);cursor:pointer}@media (max-width:470px){.brandtag{display:none}.brandname{font-size:22px}.topbar{gap:8px;padding:14px 16px}}@media (max-width:380px){.brandname{font-size:19px}.brandlockup{gap:9px}}.whoami>summary{background:0 0;border:none;gap:9px;padding:0}.whoami>summary:hover,.whoami[open]>summary{background:0 0}.whoami-face{border:2px solid #ffffff4d;transition:border-color .12s}.whoami-face{width:34px;height:34px;font-size:15px}@media (max-width:430px){.whoami-caret{display:none}}.brandlockup{color:inherit;text-decoration:none}.brandlockup:hover .brandname{color:#fff}.contactform{flex-direction:column;gap:14px;display:flex}.contactform .picker{max-width:420px}.rs-head{align-items:center;gap:18px}.rs-portrait{background:var(--surface-sunk);border:1px solid var(--line);width:84px;height:84px;font-family:var(--display);color:var(--ink-faint);border-radius:8px;flex:none;place-items:center;font-size:34px;font-weight:700;display:grid;overflow:hidden}.rs-portrait img{object-fit:cover;width:100%;height:100%}@media print{.rs-portrait{color:#000;border-color:#999}}.whoami-face{border-color:var(--header-bg)}.whoami>summary:hover .whoami-face{border-color:#ffffff8c}.whoami[open] .whoami-face{border-color:#fffc}.pc-portrait,.pc-portrait.is-editable{border-color:var(--header-bg)}.pc-portrait.is-editable:hover{border-color:#ffffff73}.whoami{background:0 0;border:none;border-radius:0;padding:0}.whoami-face{border-radius:11px;width:42px;height:42px;font-size:18px}.whoami{margin-right:-2px}@media (max-width:380px){.whoami-face{border-radius:10px;width:38px;height:38px;font-size:16px}}@media (max-width:430px){.whoami>summary{gap:0}.whoami{margin-right:0}}.whoami>summary::marker{content:"";font-size:0}.whoami{gap:0;width:fit-content}.module-stripe.note-intent{background:var(--accent)}.module-stripe.note-reflection{background:var(--ink-faint)}.chip.note-intent{color:var(--accent)}.chip.note-reflection{color:var(--ink-soft)}.backlink{font-family:var(--display);margin-bottom:6px;font-size:13px;font-weight:600}.backlink a{color:var(--ink-soft);text-decoration:none}.backlink a:hover{color:var(--ink)}.dayhead{margin-top:4px}.rs-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.rs-identity{flex:1;min-width:0}.rs-portrait{flex:none;width:96px;height:96px}.rs-foot{text-align:center;border-top:1px solid var(--line);text-transform:none;letter-spacing:normal;margin-top:1.6rem;padding-top:1rem;display:block}.rs-foot .rs-brand{font-family:var(--display);letter-spacing:.08em;color:var(--ink);font-size:15px;font-weight:700}.rs-foot .rs-tag{color:var(--faint,var(--ink-faint));letter-spacing:.03em;margin-top:2px;font-size:11.5px}.rs-generated{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin-top:6px;font-size:10.5px}@media (max-width:480px){.rs-portrait{width:72px;height:72px}.rs-name{font-size:24px}}.pc-measure a.v.is-empty{color:#c8ccd2;border-bottom:1px dotted #ffffff73;font-size:13px;font-weight:600;text-decoration:none}.pc-measure a.v.is-empty:hover{color:#fff;border-bottom-color:#fff}#measurables{scroll-margin-top:70px}.editzone{border-top:2px solid var(--line);margin-top:26px;padding-top:18px}.editzone-head{flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 14px;display:flex}.editzone-title{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);font-size:12px;font-weight:700}.editzone-note{color:var(--ink-faint);font-size:12px}.editzone .card{background:var(--surface-sunk);border-color:var(--line);box-shadow:none}.editzone .card-head{border-bottom:1px dashed var(--line);background:0 0}.editzone .card-title:before{content:"";background:var(--accent);vertical-align:middle;border-radius:2px;width:6px;height:6px;margin-right:8px;display:inline-block}.step{background:var(--accent);width:22px;height:22px;color:var(--accent-ink);border-radius:7px;flex:none;justify-content:center;align-items:center;margin-right:9px;font-size:12px;font-weight:700;display:inline-flex}.lengthpick{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.lengthopt{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;font:inherit;color:inherit;border-radius:11px;flex-direction:column;gap:3px;padding:13px 14px;display:flex}.lengthopt:hover{border-color:var(--ink-faint)}.lengthopt.is-on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--surface))}.lengthopt-label{font-size:15px;font-weight:700}.lengthopt-weeks{color:var(--accent);font-size:12px;font-weight:600}.lengthopt-blurb{color:var(--ink-faint);font-size:12px}.startrow{align-items:center;gap:12px;margin-top:14px;display:flex}.startrow .picker-label{margin:0}.daygrid{gap:6px;display:grid}.daygrid-head,.daygrid-row{grid-template-columns:minmax(96px,1.4fr) repeat(7,1fr);align-items:center;gap:6px;display:grid}.daygrid-day{text-align:center;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;font-weight:700}.daygrid-label{flex-direction:column;line-height:1.25;display:flex}.daygrid-label strong{font-size:14px}.daygrid-label em{color:var(--ink-faint);font-size:11px;font-style:normal}.daycell{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:9px;height:40px;padding:0;transition:background 90ms,border-color 90ms}.daycell:hover{border-color:var(--ink-faint)}.daygrid-row.mod-hoops .daycell.is-on{background:var(--hoops);border-color:var(--hoops)}.daygrid-row.mod-hops .daycell.is-on{background:var(--hops);border-color:var(--hops)}.daygrid-row.mod-heat .daycell.is-on{background:var(--heat);border-color:var(--heat)}.daygrid-row.mod-handles .daycell.is-on{background:var(--handles);border-color:var(--handles)}.targets{border-top:1px dashed var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;padding-top:16px;display:grid}.targets input{width:100%}.drillgroup+.drillgroup{margin-top:10px}.drillgroup-head{border:0;border-bottom:1px solid var(--line-soft);cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;background:0 0;align-items:center;gap:10px;padding:9px 4px;display:flex}.drillpick{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px;padding:10px 0 4px;display:grid}.drillopt{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:9px;align-items:flex-start;gap:9px;padding:9px 11px;font-size:14px;display:flex}.drillopt.is-on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, var(--surface))}.drillopt input{flex:none;margin-top:2px}.drillopt em{color:var(--ink-faint);font-size:12px;font-style:normal}.plansummary{position:sticky;bottom:12px}.plantotals{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px;display:grid}.plantotals div{flex-direction:column;display:flex}.plantotals strong{font-variant-numeric:tabular-nums;font-size:28px;line-height:1.1}.plantotals span{color:var(--ink-faint);font-size:12px}.currentplan{border-left:4px solid var(--accent)}.chiprow{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}@media (max-width:560px){.lengthpick{grid-template-columns:1fr}.daygrid-head,.daygrid-row{grid-template-columns:minmax(70px,1fr) repeat(7,1fr);gap:4px}.daygrid-label em{display:none}.daycell{height:34px}.targets{grid-template-columns:1fr}}.rs-shooting{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:18px;margin-top:10px;display:grid}.rs-chart .court-wrap{margin:0}.rs-chart .court-legend,.rs-chart .court-filters{display:none}.rs-chart .court{max-width:320px}@media (max-width:640px){.rs-shooting{grid-template-columns:1fr}.rs-chart .court{max-width:100%}}@media print{.rs-shooting{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px}.rs-chart .court{max-width:250px}.rs-chart svg{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.upnext{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--surface);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;gap:2px;margin-bottom:16px;padding:16px 18px;display:flex}.upnext-label{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.upnext-title{font-family:var(--display);letter-spacing:-.02em;font-size:26px;font-weight:700;line-height:1.15}.upnext-start{color:var(--ink-soft);font-size:14px}@media (max-width:480px){.upnext-title{font-size:23px}}.emptyday .card-head{border-bottom:0}.emptyday .card-title{color:var(--ink-soft);font-weight:500}.plandone{border:1px solid color-mix(in srgb, var(--accent) 40%, var(--line));background:color-mix(in srgb, var(--accent) 8%, var(--surface));box-shadow:var(--shadow);border-radius:12px;align-items:flex-start;gap:14px;margin-bottom:16px;padding:16px 18px;display:flex}.plandone-tick{background:var(--accent);width:30px;height:30px;color:var(--accent-ink);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:inline-flex}.plandone-body{flex-direction:column;gap:4px;min-width:0;display:flex}.plandone-title{font-family:var(--display);letter-spacing:-.015em;font-size:19px;font-weight:700}.plandone-detail{color:var(--ink-soft);margin:0;font-size:14px}.plandone-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.presetpick{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:10px;display:grid}.presetopt{text-align:left;border:1px solid var(--line);background:var(--surface);cursor:pointer;font:inherit;color:inherit;border-radius:11px;flex-direction:column;gap:5px;padding:14px 15px;display:flex}.presetopt:hover{border-color:var(--ink-faint)}.presetopt.is-on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:color-mix(in srgb, var(--accent) 7%, var(--surface))}.presetopt-name{font-family:var(--display);letter-spacing:-.015em;font-size:16px;font-weight:700}.presetopt-blurb{color:var(--ink-faint);font-size:12px;line-height:1.35}.presetmix{gap:2px;height:6px;margin-top:4px;display:flex}.presetmix i{border-radius:2px;flex:1}.presetmix .mix-hoops{background:var(--hoops)}.presetmix .mix-hops{background:var(--hops)}.presetmix .mix-heat{background:var(--heat)}.presetmix .mix-handles{background:var(--handles)}.presetopt-count{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;font-weight:700}.presetopt.is-on .presetopt-count{color:var(--accent)}@media (max-width:560px){.presetpick{grid-template-columns:1fr}}.acc>summary{cursor:pointer;list-style:none;position:relative}.acc>summary::-webkit-details-marker{display:none}.acc-head{padding-top:17px}.acc-head>.module-stripe{position:absolute;top:0;left:0}.acc-head:hover{background:var(--surface-sunk)}.acc[open]>.acc-head{border-bottom:1px solid var(--line-soft)}.acc:not([open])>.acc-head{border-bottom:0}.acc-status{align-items:center;gap:8px;display:inline-flex}.acc-bar{background:var(--surface-sunk);border-radius:999px;width:64px;height:6px;display:block;overflow:hidden}.acc-bar>i{background:var(--accent);border-radius:999px;height:100%;display:block}.acc-bar.hoops>i{background:var(--hoops)}.acc-bar.hops>i{background:var(--hops)}.acc-bar.handles>i{background:var(--handles)}.acc-bar.heat>i{background:var(--heat)}.acc-pct{font-family:var(--display);font-variant-numeric:tabular-nums;text-align:right;min-width:4ch;font-size:13px;font-weight:600}.acc-time{color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.acc-caret{border-right:1.5px solid var(--ink-faint);border-bottom:1.5px solid var(--ink-faint);flex:none;width:8px;height:8px;transition:transform .15s;transform:rotate(45deg)translateY(-2px)}.acc[open]>.acc-head .acc-caret{transform:rotate(225deg)translateY(-2px)}.acc-detail{color:var(--ink-faint);font-variant-numeric:tabular-nums;flex-basis:100%;margin-top:-4px;font-size:13px}@media (max-width:480px){.acc-bar{width:44px}.acc-time{display:none}}.daytotal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin:-8px 0 16px;padding:12px 16px 14px}.daytotal-head{align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.daytotal-label{font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);flex:1;font-size:11px;font-weight:700}.daytotal-value{font-family:var(--display);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.daytotal-of{color:var(--ink-soft);font-size:14px;font-weight:500}.daytotal-by{flex-wrap:wrap;gap:6px 14px;margin-top:10px;display:flex}.daytotal-mod{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:12.5px}.daytotal-mod b{font-weight:650}.daytotal-mod.hoops b{color:var(--hoops)}.daytotal-mod.hops b{color:var(--hops)}.daytotal-mod.handles b{color:var(--handles)}.daytotal-mod.heat b{color:var(--heat)}.tiles .stat .k{color:var(--accent)}.tiles.tint-hoops .stat .k{color:var(--hoops)}.tiles.tint-hops .stat .k{color:var(--hops)}.tiles.tint-handles .stat .k{color:var(--handles)}.tiles.tint-heat .stat .k{color:var(--heat)}.offline-mark{padding:28px 0 4px}
