@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/ede9723bef64b582-s.0dp6tsxit3x2x.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/7e314ccfd4e06172-s.2vfrdpv56z2m8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/30fd09fbaafebc17-s.p.1z6i_1jvkgk0n.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/af21ab248943f479-s.3gj6ciom31zjc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/4ae66b896b591e96-s.0_kz_z3o_slvt.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/21ca8f3f56c22ca2-s.p.1cp9-4nby68jc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_7cdd4dfe-module__dpR7pa__className{font-family:Archivo,Archivo Fallback}.archivo_7cdd4dfe-module__dpR7pa__variable{--font-archivo:"Archivo", "Archivo Fallback"}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-canvas:#0b141c;--bg-surface:#15212c;--bg-sidebar:#101b25;--bg-subtle:#1c2a37;--text:#e8eef3;--text-muted:#9aabba;--border:#22303d;--border-strong:#6b7d8e;--block-edge:#22303d;--steel:#16354d;--on-steel:#fff;--on-steel-muted:#b4c6d5;--accent:#f97316;--accent-soft:#2a1c12;--accent-soft-text:#fdba74;--link:#8ec1ea;--logo-name:#e8eef3;--logo-sub:#f97316;--button:#f97316;--button-hover:#fb923c;--button-text:#140a03;--focus:#8ec1ea;--backdrop:#0b141cb3;--state-success:#10b981;--state-warning:#f59e0b;--state-danger:#ef4444;--danger-button:#b91c1c;--danger-button-hover:#991b1b;--danger-text:#f87171;--warning-text:#fdba74;--success-text:#34d399;--chart-strong:#8ec1ea;--chart-soft:#3a6f99;--chart-grid:#22303d}@media (prefers-color-scheme:light){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-canvas:#e9edf1;--bg-surface:#fff;--bg-sidebar:#fff;--bg-subtle:#f3f5f8;--text:#0f1c26;--text-muted:#5b6a78;--border:#d5dce3;--border-strong:#7a8896;--block-edge:transparent;--steel:#12324a;--on-steel:#fff;--on-steel-muted:#b9c9d6;--accent:#ea580c;--accent-soft:#fff1e8;--accent-soft-text:#9a3412;--link:#1f5f8b;--logo-name:#12324a;--logo-sub:#b93e0b;--button:#c2410c;--button-hover:#9a3412;--button-text:#fff;--focus:#1f5f8b;--backdrop:#12324a99;--danger-text:#b91c1c;--warning-text:#9a3412;--success-text:#047857;--chart-strong:#1d5a8c;--chart-soft:#5b93c7;--chart-grid:#e3e8ed}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg-canvas);min-height:100dvh;color:var(--text);font-family:var(--font-archivo), system-ui, sans-serif;margin:0;font-size:1rem;line-height:1.5}.frame{padding:20px 16px 48px}.wordmark{letter-spacing:-.01em;color:var(--text);align-items:center;gap:10px;font-size:1.125rem;font-weight:800;font-stretch:125%;text-decoration:none;display:inline-flex}.logo-mark{flex:none}.lockup-link{justify-content:center;margin-top:24px;text-decoration:none;display:flex}.logo-lockup{align-items:center;gap:16px;display:inline-flex}.logo-seal{flex:none;width:88px;height:88px}.logo-words{flex-direction:column;align-items:flex-start;gap:6px;font-stretch:112%;line-height:1;display:flex}.logo-name{letter-spacing:-.01em;color:var(--logo-name);font-size:2.25rem;font-weight:900}.logo-sub{letter-spacing:.06em;color:var(--logo-sub);font-size:1rem;font-weight:600}.column.below-lockup{margin-top:28px}@media (min-width:768px){.logo-lockup{gap:24px}.logo-seal{width:128px;height:128px}.logo-name{font-size:3rem}.logo-sub{font-size:1.375rem}.column.below-lockup{margin-top:36px}}.column{background:var(--bg-surface);border-radius:12px;max-width:440px;margin:48px auto 0;padding:24px 20px 28px}@media (min-width:768px){.frame{padding:28px 40px 64px}.column{margin-top:16vh}}h1{letter-spacing:-.015em;margin:0 0 8px;font-size:1.875rem;font-weight:750;font-stretch:112%;line-height:1.15}h2{margin:32px 0 8px;font-size:1.125rem;font-weight:700;font-stretch:112%;line-height:1.3}p{margin:0 0 16px}.lead{color:var(--text-muted);margin-bottom:28px}h1+.form{margin-top:28px}.muted{color:var(--text-muted)}a{color:var(--link);text-underline-offset:3px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}h1[tabindex="-1"]:focus{outline:none}.form{gap:20px;display:grid}.field{gap:6px;display:grid}.field label,.label{font-weight:600}.field-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.hint{color:var(--text-muted);font-size:.9375rem}.input-wrap{position:relative}input[type=email],input[type=password],input[type=text],input[type=tel],input[type=date],input[type=search],select{width:100%;min-height:48px;font:inherit;color:var(--text);background:var(--bg-surface);border:1.5px solid var(--border-strong);border-radius:8px;padding:10px 14px}.input-wrap input{padding-right:76px}input:focus-visible{outline-offset:1px}input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--state-danger)}.show-toggle{min-width:64px;height:48px;font:inherit;color:var(--link);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 14px;font-weight:600;position:absolute;top:0;right:0}.check{cursor:pointer;align-items:center;gap:12px;min-height:48px;display:flex}.check input{width:22px;height:22px;accent-color:var(--button);flex:none;margin:0}.error{color:var(--danger-text);align-items:flex-start;gap:8px;font-size:.9375rem;font-weight:500;display:flex}.error svg,.status svg{flex:none;margin-top:2px}.button{width:100%;min-height:48px;font:inherit;color:var(--button-text);background:var(--button);cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:650;text-decoration:none;display:inline-flex}.button:hover{background:var(--button-hover)}.button:disabled{cursor:progress;opacity:.75}.button.secondary{color:var(--text);border:1.5px solid var(--border-strong);background:0 0}.button.secondary:hover{background:var(--bg-subtle)}.button.inline{width:auto}.link-button{min-height:48px;font:inherit;color:var(--link);text-underline-offset:3px;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;text-decoration:underline}.link-button:disabled{color:var(--text-muted);cursor:default;text-decoration:none}.links{justify-items:start;margin-top:8px;display:grid}.links a{align-items:center;min-height:48px;display:inline-flex}.divider{color:var(--text-muted);align-items:center;gap:12px;margin:28px 0;font-size:.9375rem;display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--border);flex:1}.code{grid-template-columns:repeat(6,1fr);gap:8px;display:grid;position:relative}.code-box{font-variant-numeric:tabular-nums;background:var(--bg-surface);border:1.5px solid var(--border-strong);border-radius:8px;place-items:center;height:64px;font-size:2.125rem;font-weight:800;font-stretch:100%;display:grid}.code-box.filled{background:var(--bg-subtle)}.code-box.active{border-color:var(--focus);box-shadow:0 0 0 2px var(--focus)}.code input{opacity:0;cursor:text;width:100%;height:100%;font-size:16px;position:absolute;inset:0}.code.invalid .code-box{border-color:var(--state-danger)}@media (min-width:768px){.code{gap:10px}.code-box{height:72px;font-size:2.5rem}}.status{background:var(--bg-surface);border:1px solid var(--border);border-left:4px solid var(--state-warning);border-radius:8px;gap:12px;margin:24px 0;padding:16px;display:flex}.status.locked{border-left-color:var(--text-muted)}.status.done{border-left-color:var(--state-success)}.status p{margin:0}.rows{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.rows li{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;min-height:64px;padding:10px 0;display:flex}.rows .what{display:grid}.on{color:var(--success-text);font-weight:600}.stack-inline{flex-wrap:wrap;gap:8px;display:flex}.qr{border:1px solid var(--border);background:#fff;border-radius:8px;width:240px;height:240px;padding:12px}.qr svg{width:100%;height:100%;display:block}.key{font-variant-numeric:tabular-nums;word-spacing:.3em;overflow-wrap:anywhere;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:1.0625rem}.backup-codes{background:var(--bg-surface);border:1px solid var(--border);font-variant-numeric:tabular-nums;border-radius:8px;grid-template-columns:repeat(2,1fr);gap:8px 16px;margin:0 0 20px;padding:16px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;list-style:none;display:grid}.stack{gap:12px;display:grid}.actions{margin-top:32px}.panel{width:100%;padding:8px 0 12px}.notice{margin-top:12px}.prose{max-width:68ch}.prose ul{margin:0 0 16px;padding-left:1.25em}.prose li{margin-bottom:6px}.consent-form,.signature-block{border-top:1px solid var(--border);margin-top:32px;padding-top:24px}.signature-lines{gap:28px;margin:24px 0 8px;display:grid}.signature-lines dt{color:var(--text-muted);font-size:.875rem}.signature-lines dd{border-bottom:1px solid;height:32px;margin:0}.form-version{color:var(--text-muted);font-size:.75rem}.print-action{background:var(--bg-canvas);padding:12px 0 16px;position:sticky;bottom:0}@media print{.gym-logo.on-tile img{background:0 0!important;padding:0!important}.no-print,.powered-by,.wordmark,.panel-topbar,.panel-menu{display:none!important}body,.frame,.column{color:#000!important;background:#fff!important;max-width:none!important;margin:0!important;padding:0!important}.printable-form,.printable-form *{color:#000!important}.printable-form{max-width:none;font-size:11pt}.signature-block{break-inside:avoid;border-top-color:#000}}.steps{margin:8px 0 24px;padding:0;list-style:none}.step{gap:16px;padding-bottom:24px;display:flex;position:relative}.step:last-child{padding-bottom:0}.step:not(:last-child):before{content:"";background:repeating-linear-gradient(to bottom, var(--border-strong) 0 4px, transparent 4px 8px);width:2px;position:absolute;top:40px;bottom:4px;left:17px}.step.done:not(:last-child):before{background:var(--state-success)}.step-mark{border:2px solid var(--border-strong);background:var(--bg-canvas);width:36px;height:36px;color:var(--text-muted);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;font-weight:750;display:grid}.step.current .step-mark{border-color:var(--button);background:var(--button);color:var(--button-text)}.step.done .step-mark{border-color:var(--state-success);color:var(--success-text)}.step-text{padding-top:6px;display:grid}.step-title{color:var(--text-muted);font-weight:500}.step.done .step-title{color:var(--text);font-weight:600}.step.current .step-title{color:var(--text);font-weight:750;font-stretch:112%}.step-note{color:var(--text-muted);font-size:.9375rem}.trust{margin-top:12px;font-size:.9375rem}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){.code-box.filled{animation:.12s ease-out settle}}@keyframes settle{0%{transform:translateY(3px)}to{transform:translateY(0)}}.skip-link{z-index:30;background:var(--button);color:var(--button-text);border-radius:8px;padding:12px 16px;font-weight:650;position:absolute;top:-64px;left:16px}.skip-link:focus{top:12px}.panel-main{min-width:0;padding:24px 16px 64px}.panel-main:focus{outline:none}.panel-topbar{z-index:10;background:var(--bg-sidebar);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex;position:sticky;top:0}.menu-button{min-width:88px}.panel-menu{display:none}.panel-menu.open{z-index:20;background:var(--bg-sidebar);flex-direction:column;padding:20px 16px 32px;display:flex;position:fixed;inset:65px 0 0;overflow-y:auto}.menu-wordmark{display:none}.gym-name{letter-spacing:-.02em;overflow-wrap:anywhere;margin:0 0 20px;font-size:1.625rem;font-weight:800;font-stretch:125%;line-height:1.05}.menu-items{margin:0;padding:0;list-style:none}.menu-link{width:100%;min-height:48px;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-left:3px solid #0000;border-radius:0 8px 8px 0;align-items:center;padding:0 12px 0 15px;font-size:1.0625rem;text-decoration:none;display:flex}.menu-link:hover{background:var(--bg-subtle)}.menu-link[aria-current=page]{background:var(--accent-soft);border-left-color:var(--accent);font-weight:700}.menu-link:disabled{color:var(--text-muted);cursor:progress}.menu-account{border-top:1px solid var(--border);margin-top:24px;padding-top:16px}.gym-logo{display:inline-flex}.gym-logo img{object-fit:contain;width:auto;max-width:200px;height:auto;max-height:56px;display:block}.gym-logo.on-tile img{background:#fff;border-radius:8px;padding:6px}@media (prefers-color-scheme:light){.gym-logo.on-tile img{background:0 0;border-radius:0;padding:0}}.gym-logo-link{border-radius:4px;text-decoration:none;display:inline-flex}.topbar-logo img{max-width:180px;max-height:32px}.menu-logo{display:none}.powered-by{color:var(--text-muted);align-items:center;gap:6px;margin:0 0 12px;padding-left:15px;font-size:.8125rem;display:flex}.wrap-anywhere{overflow-wrap:anywhere}.frame-brand{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.frame-brand .powered-by{margin:0;padding:0}.menu-person{color:var(--text-muted);margin:0 0 4px;padding-left:15px;font-size:.9375rem}.menu-section-chevron{width:48px;color:var(--text-muted);place-items:center;margin:0 -12px 0 auto;display:grid}.menu-section[aria-expanded=false] svg{transform:rotate(-90deg)}.menu-section.is-current{border-left-color:var(--border-strong);font-weight:700}.menu-parent{display:flex}.menu-parent .menu-link{border-radius:0;flex:1}.menu-toggle{width:48px;min-height:48px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:0 8px 8px 0;flex:none;place-items:center;padding:0;display:grid}.menu-toggle:hover{color:var(--text);background:var(--bg-subtle)}.menu-toggle[aria-expanded=false] svg{transform:rotate(-90deg)}@media (prefers-reduced-motion:no-preference){.menu-toggle svg,.menu-section svg{transition:transform .12s ease-out}}.menu-link.menu-child{padding-left:31px;font-size:1rem}.menu-link[aria-current=true]{border-left-color:var(--border-strong);font-weight:700}.menu-count.quiet{min-width:0;color:var(--text-muted);background:0 0;padding:0;font-weight:500}@media (min-width:1024px){.panel-frame{padding-left:256px}.panel-topbar{display:none}.panel-menu,.panel-menu.open{z-index:5;background:var(--bg-sidebar);border-right:1px solid var(--border);flex-direction:column;width:256px;height:100dvh;padding:24px 16px 24px 12px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.menu-wordmark,.menu-logo{margin:0 0 28px 15px;display:inline-flex}.gym-name{padding-left:15px;font-size:1.5rem}.menu-account{background:var(--bg-sidebar);margin-top:auto;padding-bottom:24px;position:sticky;bottom:-24px}.panel-main{max-width:1008px;padding:40px 48px 80px}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-bottom:24px;display:flex}.page-head h1{flex:auto;margin:0}.page-head .button{width:100%}@media (min-width:600px){.page-head .button{width:auto}}@media (max-width:599px){.page-head>.button-row{flex-direction:column-reverse;align-items:stretch;width:100%}}.empty,.callout{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;max-width:60ch;padding:16px}.callout{margin-bottom:24px}.back{margin-bottom:8px}.back a{align-items:center;gap:6px;min-height:48px;display:inline-flex}.back span{font-size:1.25rem}.detail{max-width:720px}.with-badge{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.list-tools{gap:12px;margin-bottom:16px;display:grid}@media (min-width:900px){.list-tools{grid-template-columns:1fr minmax(280px,360px);align-items:center}}.filters{scrollbar-width:none;gap:4px;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.filters li{flex:none}.filters a{white-space:nowrap;min-height:48px;color:var(--text);border-bottom:3px solid #0000;align-items:center;gap:6px;padding:0 10px;text-decoration:none;display:inline-flex}.filters a[aria-current=page]{border-bottom-color:var(--accent);font-weight:700}.count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:500}.search{gap:8px;display:flex}.search input{flex:1;min-width:0}.wide-only{display:none}@media (min-width:768px){.wide-only{display:table}.narrow-only{display:none}}.data{border-collapse:collapse;width:100%}.data th{color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border-strong);padding:10px 12px;font-size:.9375rem;font-weight:600}.data td{vertical-align:middle;border-bottom:1px solid var(--border);padding:12px}.data tr{position:relative}.data tbody tr:hover{background:var(--bg-subtle)}.data th:first-child,.data td:first-child{padding-left:0}.number,.data th.number{text-align:right;font-variant-numeric:tabular-nums}.row-link{color:var(--text);font-weight:650;text-decoration:none}.row-link:after{content:"";position:absolute;inset:0}.row-link:focus-visible{outline:none}.row-link:focus-visible:after{outline:3px solid var(--focus);outline-offset:-3px;border-radius:4px}.cell-note{font-size:.9375rem;display:block}.cards{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.cards li{border-bottom:1px solid var(--border);justify-items:start;gap:4px;padding:14px 0;display:grid;position:relative}.card-with-figure{grid-template-columns:1fr auto}.card-with-figure>:not(.row-link,.figure){grid-column:1/-1}.figure{font-variant-numeric:tabular-nums;font-weight:650}.badge{white-space:nowrap;align-items:center;gap:6px;font-size:.9375rem;font-weight:600;display:inline-flex}.badge svg{flex:none;width:18px;height:18px}.badge.waiting{color:var(--warning-text)}.badge.action{color:var(--danger-text)}.badge.active{color:var(--success-text)}.badge.inactive{color:var(--text-muted)}.facts{border-top:1px solid var(--border);margin:0 0 16px;display:grid}.facts>div{border-bottom:1px solid var(--border);gap:2px;padding:10px 0;display:grid}@media (min-width:600px){.facts>div{grid-template-columns:160px 1fr;gap:16px}}.facts dt{color:var(--text-muted)}.facts dd{overflow-wrap:anywhere;margin:0}.section-actions{justify-items:start;gap:8px;display:grid}.button-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.notice-line{color:var(--success-text);margin:0;font-weight:600}.inline-form{max-width:560px;margin-top:8px}.trainer-form{justify-items:start;gap:12px;display:grid}.trainer-form .field{width:100%}.narrow-form{max-width:560px}.settings-form{gap:8px;max-width:640px;margin-bottom:32px}.form-section{gap:16px;margin-bottom:16px;display:grid}.form-section h2{margin:16px 0 0}.form-section>p{margin:0}.field-pair{gap:20px;display:grid}@media (min-width:600px){.field-pair{grid-template-columns:1fr 1fr;align-items:start}}.branding{max-width:640px}.branding p{margin:0}.branding-layout{gap:24px;display:grid}.branding-fields{align-content:start;gap:20px;display:grid}.logo-current{border:1px solid var(--border);background:#fff;border-radius:8px;justify-self:start;padding:12px}.logo-current.on-dark{background:#101b25}.logo-current img{width:auto;max-width:240px;height:auto;max-height:72px;display:block}.color-row{align-items:center;gap:12px;display:flex}.color-swatch{border:1px solid var(--border-strong);background:var(--bg-surface);cursor:pointer;border-radius:8px;width:48px;height:48px;padding:2px}.color-row .console-logo{display:inline-block}.console-logo img{max-width:120px;max-height:48px}.color-chip{font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:inline-flex}.color-chip-swatch{border:1px solid var(--border-strong);border-radius:4px;width:20px;height:20px}.short-input{font-variant-numeric:tabular-nums;text-transform:uppercase;max-width:160px}.warning-line{color:var(--warning-text)}.branding-preview{align-content:start;gap:12px;display:grid}@media (min-width:440px){.branding-preview{grid-template-columns:repeat(2,minmax(0,1fr))}}.preview-pane{border:1px solid var(--border);background:var(--pv-surface);color:var(--pv-text);border-radius:10px;justify-items:start;gap:6px;padding:14px;display:grid}.preview-pane .preview-title{color:var(--pv-muted);font-size:.8125rem}.preview-logo{min-height:40px;margin-bottom:6px}.preview-logo img{width:auto;max-width:100%;height:auto;max-height:40px;display:block}.preview-logo .forced-tile img,.preview-logo .gym-logo.on-tile.forced-tile img{background:#fff;border-radius:6px;padding:5px}.preview-wordmark{align-items:center;gap:8px;font-weight:800;font-stretch:125%;display:inline-flex}.preview-item{border-left:3px solid #0000;border-radius:0 6px 6px 0;align-self:stretch;padding:8px 12px;font-weight:700}.preview-item.plain{font-weight:400}.preview-button{border-radius:8px;margin-top:8px;padding:10px 16px;font-weight:700}.short-input{max-width:160px}.input-wrap.prefixed .input-prefix{height:48px;color:var(--text-muted);pointer-events:none;align-items:center;font-weight:600;display:flex;position:absolute;top:0;left:14px}.input-wrap.prefixed input{font-variant-numeric:tabular-nums;padding-left:30px;padding-right:14px}.input-wrap.prefixed:has(.short-input){max-width:160px}.choice-group{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.choice-group legend{margin-bottom:6px;padding:0;font-weight:600}.choice{background:var(--bg-surface);border:1.5px solid var(--border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:12px;min-height:48px;padding:12px 14px;display:flex}.choice:has(input:checked){border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.choice input{width:20px;height:20px;accent-color:var(--button);flex:none;margin:2px 0 0}.choice>span{gap:2px;display:grid}.choice-label{font-weight:650}.choice-group.compact{grid-template-columns:1fr 1fr}.choice-group.compact legend{grid-column:1/-1}.choice-group.compact .choice{align-items:center}.subsection{border:0;border-top:1px solid var(--border);gap:16px;min-width:0;margin:0;padding:16px 0 0;display:grid}.subsection legend{float:left;width:100%;margin-bottom:4px;font-size:1.125rem;font-weight:700;font-stretch:112%}.subsection .hint{margin:0}.status-title{margin:0 0 4px;font-size:1.0625rem}.status-title:focus{outline:none}.status .button{margin-top:12px}dialog.confirm{width:min(480px,100vw - 32px);color:var(--text);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:12px;padding:24px}dialog.confirm::backdrop{background:var(--backdrop)}dialog.confirm h2{margin:0 0 12px}.confirm-actions{gap:12px;margin-top:20px;display:grid}@media (min-width:600px){.confirm-actions{grid-template-columns:auto auto;justify-content:start}}.button.danger{color:var(--danger-text);border-color:var(--danger-text)}.button.danger-fill{color:#fff;background:var(--danger-button)}.button.danger-fill:hover{background:var(--danger-button-hover)}.danger-zone{border-top:1px solid var(--border);max-width:560px;margin-top:40px;padding-top:8px}textarea{width:100%;min-height:96px;font:inherit;color:var(--text);background:var(--bg-surface);border:1.5px solid var(--border-strong);resize:vertical;border-radius:8px;padding:10px 14px}textarea[aria-invalid=true]{border-color:var(--state-danger)}input[type=file]{max-width:100%;min-height:48px;font:inherit;color:var(--text)}input[type=file]::file-selector-button{min-height:48px;font:inherit;color:var(--text);border:1.5px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:8px;margin-right:12px;padding:0 20px;font-weight:650}input:disabled{color:var(--text-muted);background:var(--bg-subtle)}.tabular{font-variant-numeric:tabular-nums}.menu-count{text-align:center;font-variant-numeric:tabular-nums;color:#fff;background:var(--danger-button);border-radius:12px;min-width:24px;margin-left:auto;padding:0 7px;font-size:.875rem;font-weight:700;line-height:24px}.severity,.workout-status{white-space:nowrap;align-items:center;gap:6px;font-size:.9375rem;font-weight:650;display:inline-flex}.severity svg,.workout-status svg{flex:none;width:18px;height:18px}.severity.red,.workout-status.missed{color:var(--danger-text)}.severity.amber,.workout-status.not_done_yet{color:var(--warning-text)}.severity.handled,.workout-status.done{color:var(--success-text)}.workout-status.suggested{color:var(--link)}.scope-filters{margin-bottom:16px}.alerts-layout{gap:40px;display:grid}@media (min-width:1100px){.alerts-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start}}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 16px;margin-bottom:8px;display:flex}.section-head h2{margin:0}.alert-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.alert-row{border-bottom:1px solid var(--border);box-shadow:inset 4px 0 0 var(--state-warning);justify-items:start;gap:2px 12px;padding:12px 0 12px 16px;display:grid;position:relative}.alert-row.red{box-shadow:inset 4px 0 0 var(--state-danger)}.alert-row.is-handled{box-shadow:inset 4px 0 0 var(--border)}.alert-row:hover{background:var(--bg-surface)}.alert-title{overflow-wrap:anywhere}.alert-when{font-size:.9375rem}.alert-list.compact .alert-row{padding-top:10px;padding-bottom:10px}.alerts-summary h2{margin-bottom:4px}.summary-hint{margin-top:0;font-size:.9375rem}.day-switch{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-bottom:8px;display:grid}.day-switch a{align-items:center;gap:6px;min-height:48px;display:inline-flex}.day-switch a:last-child{justify-self:end}.day-switch p{text-align:center;margin:0;font-weight:700}.findings{margin:0 0 16px;padding-left:20px}.findings li+li{margin-top:4px}.alert-counts{flex-wrap:wrap;gap:4px 16px;display:inline-flex}.with-count{align-items:center;gap:4px;display:inline-flex}form.search.list-tools{max-width:480px;display:flex}.athlete-columns{gap:8px 48px;display:grid}@media (min-width:1100px){.athlete-columns{grid-template-columns:minmax(0,1fr) 300px;align-items:start}.athlete-membership{grid-area:1/2}.athlete-main{grid-area:1/1/span 2}.athlete-side{grid-area:2/2}}.membership-glance{margin:4px 0 0}.membership-glance.lapsed{color:var(--danger-text)}.athlete-page section{margin-bottom:32px}.athlete-history{gap:0 48px;display:grid}@media (min-width:900px){.athlete-history{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.athlete-details{max-width:720px}.program-name{margin-bottom:0;font-size:1.25rem;font-weight:700}.calendar-hint{margin-top:0;font-size:.9375rem}.calendar-grid{table-layout:fixed;border-collapse:collapse;width:100%;display:none}.calendar-grid th{color:var(--text-muted);text-align:left;padding:6px 4px;font-size:.875rem;font-weight:600}.calendar-grid td{vertical-align:top;border:1px solid var(--border);height:92px;padding:6px}.calendar-grid td.is-today{box-shadow:inset 0 0 0 2px var(--accent)}.date-number{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.875rem;display:block}.chip{color:var(--text);background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;gap:2px;margin-top:4px;padding:4px 6px;text-decoration:none;display:grid}a.chip:hover{border-color:var(--border-strong)}.chip .workout-status{white-space:normal;font-size:.8125rem}.chip .workout-status svg{width:16px;height:16px}.chip-title{font-size:.875rem;font-weight:650}.chip-note{color:var(--text-muted);font-size:.8125rem}.calendar-list h3{margin:16px 0 4px;font-size:1rem}.calendar-list ul{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.calendar-list li{border-bottom:1px solid var(--border);justify-items:start;gap:2px;padding:10px 0;display:grid;position:relative}.list-title{font-weight:650}@media (min-width:768px){.calendar-grid{display:table}.calendar-list{display:none}}.pain-line{background:var(--bg-surface);border:1px solid var(--border);box-shadow:inset 4px 0 0 var(--state-danger);border-radius:8px;padding:12px 16px}.session-exercises{margin:0;padding:0;list-style:none}.session-exercises>li{border-top:1px solid var(--border);padding:12px 0 16px}.session-exercises p{margin:0 0 4px}.exercise-head{font-weight:650}.code-mark{min-width:2.25em;font-weight:800;font-stretch:125%;display:inline-block}.sets-table{max-width:480px;margin-top:8px}.sets-table td,.sets-table th{padding:8px 12px}.number-cell{font-variant-numeric:tabular-nums}.wide-detail{max-width:960px}.flow-step{border-top:1px solid var(--border);margin-top:8px;padding-top:24px}.flow-step:first-child{border-top:0;padding-top:0}.step-number{font-variant-numeric:tabular-nums;width:32px;height:32px;color:var(--button-text);background:var(--button);vertical-align:2px;border-radius:50%;place-items:center;margin-right:8px;font-size:1rem;display:inline-grid}.file-form{justify-items:start;max-width:560px;margin-bottom:12px}.problems{margin:8px 0;padding-left:20px}.file-top{margin-bottom:20px}.file-top h3,.warnings h3{margin:0 0 2px;font-size:1rem}.plain-lines{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;margin:8px 0 0;padding:12px 16px;list-style:none}.profile-fields,.weight-pair,.reps-weeks,.weekday-group{border:0;gap:6px;min-width:0;margin:0 0 20px;padding:0;display:grid}.profile-fields legend,.weight-pair legend,.reps-weeks legend,.weekday-group legend{margin-bottom:4px;padding:0;font-weight:600}.profile-fields .check{align-items:flex-start;padding:6px 0}.profile-fields .check>span{gap:2px;padding-top:2px;display:grid}.warnings{margin-bottom:20px}.day-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin:8px 0 12px;display:flex}.day-tab{min-height:48px;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.day-tab[aria-current=page],.day-tab[aria-pressed=true]{border-bottom-color:var(--accent);font-weight:800}.sheet{border-collapse:collapse;width:100%;font-size:.9375rem}.sheet th,.sheet td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:10px 8px}.sheet thead th{color:var(--text-muted);border-bottom-color:var(--border-strong);font-weight:600}.sheet tr.group-start>*{background-clip:padding-box;border-top:12px solid #0000}.code-cell{width:64px;padding-left:0;font-size:1rem;font-weight:800;font-stretch:125%}.edit-col{text-align:right;width:76px;padding-right:0}.sheet-edit{min-width:64px;min-height:48px;font:inherit;color:var(--link);border:1.5px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:6px;padding:0 12px;font-weight:650}.sheet-edit:hover{background:var(--bg-subtle)}.sheet-name{font-weight:650}.week-col{font-variant-numeric:tabular-nums;width:11%}.week-col.is-locked{color:var(--text-muted);background:var(--bg-surface)}.lock-mark{vertical-align:-3px;margin-left:4px;display:inline-flex}.lock-mark svg{width:16px;height:16px}.sheet-cards{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.sheet-cards>li{border-bottom:1px solid var(--border);justify-items:start;gap:4px;padding:12px 0 14px;display:grid}.sheet-cards>li.group-start{border-top:8px solid var(--bg-subtle)}.sheet-cards p{margin:0}.sheet-card-head{align-items:baseline;gap:8px;display:flex}.week-grid{border:1px solid var(--border);border-radius:6px;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;margin:4px 0;display:grid}.week-grid>div{border-left:1px solid var(--border);padding:6px 8px}.week-grid>div:first-child{border-left:0}.week-grid>div.is-locked{color:var(--text-muted);background:var(--bg-surface)}.week-grid dt{color:var(--text-muted);font-size:.8125rem}.week-grid dd{font-variant-numeric:tabular-nums;overflow-wrap:break-word;margin:0;font-size:.9375rem}.add-exercise{margin-top:16px}.schedule-fields{gap:20px;display:grid}.weekdays{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;max-width:480px;display:grid}.weekday{border:1.5px solid var(--border-strong);cursor:pointer;border-radius:8px;place-items:center;min-height:48px;font-weight:650;display:grid;position:relative}.weekday input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.weekday:has(input:checked){color:var(--button-text);background:var(--button);border-color:var(--button);font-weight:800}.weekday:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.schedule-line{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;margin:0;padding:12px 16px}.new-program{max-width:560px}.byline{font-size:.9375rem}.program-notes{margin:24px 0}.program-notes h2{margin-bottom:4px}.notes-text{white-space:pre-line;max-width:70ch}dialog.side-panel{border-width:0;border-radius:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;overflow-y:auto}@media (min-width:768px){dialog.side-panel{border-left-width:1px;width:440px;margin:0 0 0 auto}dialog.side-panel.exercise-dialog{width:600px}}.remove-exercise{margin-top:24px}.measure-choice{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:4px}.block-hint{display:block}.copy-row{flex-wrap:wrap;align-items:center;gap:4px 12px;margin:4px 0;display:flex}.week-table{border-top:1px solid var(--border);display:grid}.week-head{display:none}.week-row{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px 12px;padding:12px 0;display:grid}.week-label{grid-column:1/-1;font-weight:750}.week-cell{gap:4px;min-width:0;display:grid}.week-cell label{font-size:.9375rem;font-weight:600}.week-cell.wide,.week-max,.per-set-note,.week-extra,.week-errors,.week-done{grid-column:1/-1}.num-input{font-variant-numeric:tabular-nums}.week-cell input:disabled{color:var(--text-muted);background:var(--bg-subtle);border-color:var(--border)}.week-row .check{min-height:48px}.per-set-note{align-self:center}.week-done{flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;display:flex}.week-row.is-done{background:var(--bg-surface)}.done-note{align-items:center;gap:4px;display:inline-flex}.done-note svg{width:16px;height:16px}.per-set{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0;padding:12px;display:flex}.per-set legend{float:left;width:100%;margin-bottom:4px;padding:0;font-weight:600}.per-set-item{align-items:center;gap:8px;display:flex}.per-set-item .num-input{width:64px}.per-set .link-button{text-align:left;flex-basis:100%;justify-self:start}@media (min-width:768px){.measure-choice{grid-template-columns:repeat(4,minmax(0,1fr))}.week-head,.week-row{grid-template-columns:64px 64px 1fr;gap:8px}.measure-reps .week-head,.measure-reps .week-row{grid-template-columns:64px 64px 72px 52px minmax(0,1fr) 76px}.measure-duration .week-head,.measure-duration .week-row,.measure-distance .week-head,.measure-distance .week-row{grid-template-columns:64px 64px 96px minmax(0,1fr)}.week-head{color:var(--text-muted);border-bottom:1px solid var(--border-strong);padding:8px 0;font-size:.875rem;font-weight:600;display:grid}.week-row{align-items:center;padding:8px 0}.week-label,.week-cell.wide{grid-column:auto}.week-max,.week-done{grid-column:auto/span 1}.week-done{grid-column:2/-1}.per-set-note{grid-column:3/span 2}.week-extra,.week-errors{grid-column:2/-1}.week-cell .cell-label,.week-row .week-max>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.week-row .week-max{justify-content:center}}.target-cell{display:block}.target-main{font-variant-numeric:tabular-nums}.target-hold{color:var(--text-muted);align-items:center;gap:4px;margin-top:2px;font-size:.8125rem;display:flex}.target-hold svg{flex:none}.written-tag{color:var(--text-muted);white-space:nowrap;border:1px solid var(--border-strong);border-radius:4px;margin:2px 0 0 6px;padding:0 6px;font-size:.75rem;font-weight:600;line-height:1.5;display:inline-block}.head-actions{width:100%}.head-actions .button{flex:auto}@media (min-width:600px){.head-actions{width:auto}.head-actions .button{flex:none}}.capacity{flex-wrap:wrap;align-items:center;gap:4px 8px;display:inline-flex}.pips{flex-wrap:wrap;align-items:center;gap:3px;display:inline-flex}.pip{border:1.5px solid var(--border-strong);border-radius:50%;width:10px;height:10px}.pip.filled{background:var(--link);border-color:var(--link)}.pip-divider{background:var(--text-muted);width:1.5px;height:14px;margin:0 3px}.capacity-bar{border:1.5px solid var(--border-strong);border-radius:4px;width:96px;height:8px;display:inline-block;overflow:hidden}.capacity-bar span{background:var(--link);height:100%;display:block}.capacity-count{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.class-tags,.roster-tags{flex-wrap:wrap;gap:4px 12px;display:flex}.class-tag{color:var(--text-muted);align-items:center;gap:4px;font-size:.875rem;font-weight:600;display:inline-flex}.class-tag svg{flex:none;width:16px;height:16px}.class-tag.action{color:var(--danger-text)}.class-tag.warning{color:var(--warning-text)}.schedule{max-width:1200px}.week-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:16px;display:flex}.week-range{font-variant-numeric:tabular-nums;margin:0;font-size:1.125rem;font-weight:700}.week-nav .button-row{gap:8px}.week-nav .button{padding:0 14px}.week-day-tabs{border-bottom:1px solid var(--border);grid-template-columns:repeat(7,minmax(0,1fr));margin:8px 0 16px;display:grid}.week-day-tabs .day-tab{min-height:56px;font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;justify-items:center;gap:0;padding:6px 0;font-size:.875rem;display:grid;position:relative}.week-day-tabs .day-tab .tabular{color:var(--text);font-size:1.0625rem;font-weight:700}.week-day-tabs .day-tab[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent);font-weight:650}.week-day-tabs .day-tab.is-today:after{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;bottom:4px;left:50%}.schedule-day{display:none}.schedule-day.is-selected{display:block}.day-heading{margin:0 0 12px;font-size:1rem}.day-empty{margin:0}.day-classes,.today-classes{gap:8px;margin:0;padding:0;list-style:none;display:grid}.class-block,.today-class{width:100%;min-height:48px;font:inherit;text-align:left;color:var(--text);background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-items:start;gap:6px;padding:12px 14px;text-decoration:none;display:grid}.class-block{border-left:3px solid var(--link);border-radius:0 8px 8px 0;padding-left:12px}.class-block.needs-trainer{border-left:3px double var(--border-strong)}.class-block.is-past{border-left-color:var(--border-strong)}.class-block .time-short{display:none}.class-block:hover,.today-class:hover{border-color:var(--border-strong)}.class-block.is-past{color:var(--text-muted);background:0 0}.class-block.is-canceled{color:var(--text-muted);border-style:dashed;border-left-color:var(--border-strong);background:0 0}.class-block.is-canceled .class-time,.class-block.is-canceled .class-trainer{text-decoration:line-through}.link-button.cancel-day{white-space:nowrap;margin:-8px 0 4px;font-size:.875rem;display:block}.class-canceled-line{margin:8px 0}.class-block.is-past .pip.filled{background:var(--text-muted);border-color:var(--text-muted)}.class-time{font-weight:750}.class-trainer,.class-attendance{font-size:.9375rem}.class-attendance{color:var(--text-muted)}@media (min-width:1024px){.week-day-tabs{display:none}.week-grid-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;display:grid}.schedule-day{border-top:3px solid #0000;min-width:0;padding-top:10px;display:block}.schedule-day.is-today{border-top-color:var(--accent)}.class-block{padding:10px}}@media (min-width:768px){dialog.side-panel.roster-drawer,dialog.side-panel.class-dialog{width:480px}}.drawer-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.drawer-head h2{margin:0}.drawer-head h2:focus{outline:none}.drawer-trainer{margin:4px 0 8px}.drawer-capacity{gap:6px;margin-bottom:16px;display:grid}.roster-drawer h3{margin:28px 0 8px;font-size:1rem;font-weight:700}.roster-drawer .notice-line{margin-top:12px}.roster-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.roster-list li{border-bottom:1px solid var(--border);gap:8px;padding:12px 0;display:grid}.roster-who{justify-items:start;gap:4px;display:grid}.roster-name{font-weight:650}.roster-actions{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.roster-actions .button{padding:0 16px}.roster-state{color:var(--success-text);align-items:center;gap:6px;font-weight:600;display:inline-flex}.roster-state.warning{color:var(--warning-text)}.roster-state.muted{color:var(--text-muted)}.roster-state svg{width:18px;height:18px}.roster-list.waitlist li{grid-template-columns:32px 1fr;align-items:start}.waitlist-number{font-weight:750}.walk-in{justify-items:start;gap:12px;display:grid}.walk-in .field{width:100%}.walk-in h3{margin-bottom:0}.combobox{position:relative}.combobox-list{z-index:2;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:8px;max-height:260px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combobox-list li{cursor:pointer;align-items:center;min-height:48px;padding:0 14px;display:flex}.combobox-list li[aria-selected=true],.combobox-list li:hover{background:var(--bg-subtle)}.import-page{max-width:800px}.import-steps{color:var(--text-muted);flex-wrap:wrap;gap:8px 20px;margin:8px 0 24px;padding:0;list-style:none;display:flex}.import-steps li{align-items:center;gap:8px;display:inline-flex}.import-steps .is-current{color:var(--text);font-weight:700}.import-step-number{border:1.5px solid var(--border-strong);border-radius:50%;place-items:center;width:28px;height:28px;font-weight:700;display:inline-grid}.import-steps .is-current .import-step-number{color:var(--button-text);background:var(--button);border-color:var(--button)}.roster-import h2{margin-top:0}.roster-import h2:focus{outline:none}.mapper{border-top:1px solid var(--border)}.mapper-head{display:none}.mapper-row{border-bottom:1px solid var(--border);gap:8px;padding:14px 0;display:grid}.mapper-field{display:grid}.mapper-label{font-weight:650}.mapper-preview{overflow-wrap:anywhere;margin:0;padding:0;font-size:.9375rem;list-style:none}@media (min-width:768px){.mapper-head{color:var(--text-muted);border-bottom:1px solid var(--border);grid-template-columns:200px minmax(0,1fr) minmax(0,1fr);gap:16px;padding:8px 0;font-weight:650;display:grid}.mapper{border-top:0}.mapper-row{grid-template-columns:200px minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px}.mapper-field{padding-top:12px}}.problem-list{margin:0;padding-left:1.25em}.class-import h2,.class-import h3{margin-top:0}.class-import-check{margin-top:32px}.import-classes{border-top:1px solid var(--border);margin:0 0 16px;padding:0;list-style:none;display:grid}.import-classes li{border-bottom:1px solid var(--border);gap:4px 16px;padding:12px 0;display:grid}.import-when{font-weight:650}@media (min-width:768px){.import-classes li{grid-template-columns:220px minmax(0,1fr) auto;align-items:center}.import-repeat{grid-column:1/-1}}.problem-list li{margin-bottom:4px}.overview{max-width:1200px}.overview-columns{gap:8px 48px;display:grid}.overview-columns h2{margin-top:24px}@media (min-width:1024px){.overview-columns{grid-template-columns:3fr 2fr}}.figures{border-top:1px solid var(--border);margin:0 0 12px}.figures>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:16px;min-height:48px;padding:10px 0;display:flex}.figures dd{text-align:right;white-space:nowrap;margin:0;font-weight:700}.attention{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.attention>li{border-bottom:1px solid var(--border)}.attention-line{min-height:48px;color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:8px 0;font-weight:600;text-decoration:none;display:flex}summary.attention-line{list-style:none}summary.attention-line::-webkit-details-marker{display:none}.attention-line>span:first-child:before{content:"›";width:1em;color:var(--text-muted);display:inline-block}@media (prefers-reduced-motion:no-preference){summary.attention-line>span:first-child:before{transition:transform .15s}}details[open]>summary.attention-line>span:first-child:before{transform:rotate(90deg)}.attention-line:hover>span:first-child{text-underline-offset:3px;text-decoration:underline}.attention-items{gap:4px;margin:0 0 12px;padding:0 0 0 1em;list-style:none;display:grid}.attention-items a{align-items:center;min-height:40px;display:inline-flex}.pause-notice{justify-items:start;gap:8px;display:grid}.pause-notice p{margin:0}@media (min-width:1024px){.class-block .pips{gap:2px}.class-block .pip{width:8px;height:8px}.class-block .class-time{white-space:nowrap;font-size:.9375rem}.class-block .time-long{display:none}.class-block .time-short{display:inline}}.pay-offer{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:8px 0 24px;padding:20px 0}.pay-offer h2{margin:0 0 4px}.pay-price{font-variant-numeric:tabular-nums;margin:0 0 12px}.pay-amount{font-size:2.5rem;font-weight:800;font-stretch:125%;line-height:1.1}.membership-payments{margin-bottom:16px}.library-page{max-width:1100px}.library-form{gap:24px;margin-top:8px;display:grid}@media (min-width:1024px){.library-form{grid-template-columns:minmax(0,560px) minmax(0,1fr);align-items:start;gap:40px}.library-preview{position:sticky;top:24px}}.library-fields{min-width:0}@media (max-width:1023.98px){.library-preview{order:-1}}.cue-fields{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.cue-fields legend{margin-bottom:4px;padding:0;font-weight:600}.cue-fields>.hint{margin:0}.video-frame{aspect-ratio:16/9;background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;position:relative;overflow:hidden}.video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.empty-video{text-align:center;color:var(--text-muted);place-items:center;padding:16px;display:grid}.empty-video p{max-width:32ch;margin:0}.library-actions{border-top:1px solid var(--border);margin-top:40px;padding-top:16px}.library-actions h2{margin-top:0}.badge.show-me.has-video svg{color:var(--link)}.badge.show-me.no-video{color:var(--text-muted);font-weight:500}.result-count{margin:0 0 8px;font-size:.9375rem}.merge-choices{max-height:320px;overflow-y:auto}.pre-line{white-space:pre-line}.source-mark{color:var(--text-muted);white-space:nowrap;align-items:center;gap:6px;font-size:.8125rem;font-weight:600;display:inline-flex}.source-dot{background:var(--link);border-radius:50%;flex:none;width:9px;height:9px}.source-gym .source-dot{background:var(--text);border-radius:2px}.source-remembered .source-dot{border:2px solid var(--link);background:0 0}.source-typed .source-dot{border:1.5px dashed var(--text-muted);background:0 0}.picker-box{position:relative}.picker-list{z-index:5;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:8px;max-height:384px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000059}.picker-list li{cursor:pointer;gap:2px;min-height:48px;padding:8px 12px;display:grid}.picker-list li.is-active{background:var(--bg-subtle);outline:2px solid var(--focus);outline-offset:-2px}.option-name strong{font-weight:800}.option-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:.8125rem;display:flex}.option-meta .badge{font-size:.8125rem}.option-meta .badge svg{width:14px;height:14px}.picker-add{color:var(--link);border-top:1px solid var(--border);align-content:center;font-weight:600}.picker-adding{background:var(--bg-subtle);border-radius:8px;margin-top:8px;padding:12px}.picker-adding p{margin:0 0 8px}.label-text{font-weight:600;display:block}.chosen-row{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.chosen-name{font-weight:700}.draft-band{background:var(--bg-surface);border:1px dashed var(--border-strong);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-bottom:24px;padding:12px 16px;display:flex}.draft-band p{margin:0}@media (max-width:599px){.draft-band .button{width:100%}}.day-tab.add-day{color:var(--link);font-weight:600}.empty-day{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.discard-row{margin-top:32px}.link-button.danger{color:var(--danger-text)}.draft-line{margin:8px 0}.name-matching .button{margin:4px 0 12px}.match-table{border-collapse:collapse;width:100%;max-width:960px}.match-table th,.match-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:12px 12px 12px 0}.match-table thead th{color:var(--text-muted);font-size:.875rem}.match-table .file-name{overflow-wrap:anywhere;font-weight:700}.match-table .match-days{color:var(--text-muted);white-space:nowrap}.match-table tr.needs-choice .file-name{box-shadow:inset 3px 0 0 var(--state-warning);padding-left:12px}.match-cell .field{margin:0}@media (max-width:767px){.match-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.match-table,.match-table tbody,.match-table tr,.match-table th,.match-table td{display:block}.match-table tr{border-bottom:1px solid var(--border);padding:12px 0}.match-table th,.match-table td{border:0;padding:0}.match-table .match-days{margin-bottom:8px}}.video-search{width:min(720px,100vw - 32px)}.search-row{gap:8px;margin-bottom:12px;display:flex}.search-row input{flex:1;min-width:0}.video-results{gap:12px;margin:0 0 12px;padding:0;list-style:none;display:grid}.video-results li{grid-template-columns:120px 1fr;align-items:start;gap:8px 12px;display:grid}.video-results img,.video-thumb-empty{aspect-ratio:16/9;object-fit:cover;background:var(--bg-subtle);border-radius:4px;width:120px;height:auto}.video-results .button{grid-column:2;justify-self:start}.video-text{gap:2px;display:grid}.video-title{overflow-wrap:anywhere;font-weight:600}@media (min-width:768px){.video-results li{grid-template-columns:160px 1fr auto;align-items:center}.video-results img,.video-thumb-empty{width:160px}.video-results .button{grid-column:auto}}.suggestions{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.month-switch{align-items:center;gap:12px;margin:8px 0 16px;display:flex}.month-switch h2{text-align:center;min-width:10ch;margin:0}.month-switch .button{min-width:48px}@media (max-width:599px){.month-switch .month-word{display:none}}.month-switch [aria-disabled=true]{color:var(--text-muted);border-color:var(--border);cursor:default}.report-lead{max-width:60ch;margin:0 0 8px;font-size:1.25rem;font-weight:600;line-height:1.4}.report-history th[scope=row]{color:var(--text);white-space:nowrap;border-bottom:1px solid var(--border);padding:12px 12px 12px 0;font-size:1rem}.report-months{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.report-months>li{border-bottom:1px solid var(--border);gap:2px;padding:10px 0;display:grid}.closing-banner{align-items:center;margin:0 0 20px}.closing-banner p{margin:0}.legal-links{flex-wrap:wrap;gap:8px 20px;margin-top:24px;font-size:.9375rem;display:flex}.legal h1{margin-top:4px}.person-data{max-width:72ch}.data-section{margin-top:32px}.data-list{margin:0;padding-left:1.25em}.data-list li{overflow-wrap:anywhere;margin-bottom:6px}.data-group+.data-group{margin-top:20px}.data-group h3{margin-bottom:2px}.data-answers{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg-subtle);border-radius:6px;margin:8px 0 0;padding:12px;font-size:.875rem;overflow-x:auto}@media print{.person-data,.person-data *{color:#000!important;background:0 0!important}.data-group,.data-list li{break-inside:avoid}}.head-actions .button{width:auto}@media (max-width:599px){.head-actions{width:100%}.head-actions .button{flex:100%}}.page-tabs{border-bottom:1px solid var(--border);margin-bottom:16px}.with-shape{align-items:center;gap:12px;display:inline-flex}.program-shape{--shape-cell:7px;flex:none;gap:2px;display:inline-grid}.program-shape>span{width:var(--shape-cell);height:var(--shape-cell);border:1px solid var(--border-strong);border-radius:1px}.program-shape>span.filled{background:var(--link);border-color:var(--link)}.program-status{align-items:center;gap:8px;display:inline-flex}.status-dot{border:2px solid var(--border-strong);border-radius:50%;width:10px;height:10px}.status-dot.filled{background:var(--state-success);border-color:var(--state-success)}.row-action,.cards li>.button{z-index:1;position:relative}.row-action{text-align:right}.cards li>.button{justify-self:start;margin-top:8px}.template-band{background:var(--bg-surface);border:1px solid var(--border-strong);border-left-width:4px;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-bottom:24px;padding:12px 16px;display:flex}.template-band p{margin:0}@media (max-width:599px){.template-band .button{width:100%}}.chosen-athlete,.page-notice{margin-bottom:16px}.athlete-tabs{margin:-8px 0 24px}.status-switch{margin:-8px 0 16px}@media (max-width:599px){.athlete-main .button-row{flex-direction:column;align-items:stretch}.athlete-main .button-row .button{width:100%}}dialog.confirm form.confirm-body{gap:16px;margin-top:0;display:grid}.coached-athletes{margin:0 0 16px;padding-left:20px}.coached-athletes li{margin:4px 0}dialog.confirm.move-athletes{max-height:min(90dvh,900px);overflow-y:auto}.move-list{border:0;gap:12px;margin:0;padding:0;display:grid}.move-list legend{margin-bottom:8px;font-weight:650}.drawer-actions{margin-bottom:8px}.panel-main .page-head{color:var(--on-steel);background:var(--steel);box-shadow:0 0 0 100vmax var(--steel);clip-path:inset(0 -100vmax 0 0);margin:-24px -16px 24px;padding:16px 16px 24px}.panel-main .page-head:not(:first-child),.panel-main :not(:first-child) .page-head{margin-top:0}.page-head>.back{flex-basis:100%;order:-1;margin:0 0 -12px}.page-head>:not(h1,.back,.button,.button-row){flex-basis:100%;order:2;margin:0}.panel-main .page-head h1{font-weight:800;font-stretch:125%}.page-head .lead,.page-head .muted{color:var(--on-steel-muted)}.page-head a:not(.button){color:var(--on-steel)}.page-head :focus-visible{outline-color:var(--on-steel)}.page-head .button.secondary{color:var(--on-steel);border-color:var(--on-steel-muted)}.page-head .button.secondary:hover{background:#ffffff1a}.page-head .badge{background:var(--bg-surface);border-radius:999px;padding:2px 10px}@media (min-width:1024px){.panel-main .page-head{margin:-40px -48px 32px;padding:28px 48px 32px}.panel-main .page-head h1{letter-spacing:-.02em;font-size:2.625rem;line-height:1.05}}.panel-main section:not(section section,dialog section,aside section,.page-head section,.schedule section){background:var(--bg-surface);border:1px solid var(--block-edge);margin:0 -16px 16px;padding:4px 16px 20px}.panel-main section:not(section section,dialog section,aside section,.page-head section,.schedule section)>h2:first-child{margin-top:16px}@media (min-width:600px){.panel-main section:not(section section,dialog section,aside section,.page-head section,.schedule section){border-radius:12px;margin:0 0 20px;padding:4px 24px 24px}}.panel-main .overview-head{margin-bottom:0;padding-bottom:64px}.headline-figures{background:var(--bg-surface);border:1px solid var(--block-edge);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:-40px 0 20px;display:grid;position:relative;box-shadow:0 6px 18px #0f1c261a}.headline-figures>div{flex-direction:column;justify-content:space-between;gap:4px;padding:14px 16px;display:flex}.headline-figures>div:nth-child(odd){border-right:1px solid var(--border)}.headline-figures>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.headline-figures dt{color:var(--text-muted);font-size:.9375rem;line-height:1.3}.headline-figures dd{margin:0;font-size:1.75rem;font-weight:800;font-stretch:112%;line-height:1.2}@media (min-width:900px){.headline-figures{grid-template-columns:repeat(4,minmax(0,1fr))}.headline-figures>div{border-bottom:0;padding:18px 20px}.headline-figures>div:not(:last-child){border-right:1px solid var(--border)}.headline-figures dd{font-size:2rem}}.count-chip{text-align:center;min-width:32px;color:var(--accent-soft-text);background:var(--accent-soft);border-radius:8px;padding:0 8px}.count-chip.red{color:#fff;background:var(--danger-button)}.panel-main .data:not(section .data,dialog .data){border-collapse:separate;border-spacing:0;background:var(--bg-surface);border:1px solid var(--block-edge);border-radius:12px}.panel-main .data:not(section .data,dialog .data) :is(th,td):first-child{padding-left:20px}.panel-main .data:not(section .data,dialog .data) :is(th,td):last-child{padding-right:20px}.panel-main .data:not(section .data,dialog .data) tbody tr:last-child td{border-bottom:0}.panel-main .cards:not(section .cards,dialog .cards){background:var(--bg-surface);border-top:0;margin-left:-16px;margin-right:-16px}.panel-main .cards:not(section .cards,dialog .cards) li{padding-left:16px;padding-right:16px}.chart-heading{margin:20px 0 8px;font-size:1rem}.chart{margin:0 0 12px}.chart-legend{color:var(--text-muted);flex-wrap:wrap;gap:4px 16px;margin:0 0 8px;padding:0;font-size:.875rem;list-style:none;display:flex}.chart-legend li{align-items:center;gap:6px;display:flex}.chart-swatch{border-radius:3px;width:12px;height:12px}.chart-swatch.strong,.chart-bar.strong{background:var(--chart-strong)}.chart-swatch.soft,.chart-bar.soft{background:var(--chart-soft)}.chart-plot{--chart-gutter:3.25rem;border-radius:6px;position:relative}.chart-plot:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.chart-area{height:200px;margin-top:10px;position:relative}.chart-tick{border-top:1px solid var(--chart-grid);height:0;margin-left:var(--chart-gutter);position:absolute;left:0;right:0}.chart-tick:first-child{border-top-color:var(--border-strong)}.chart-tick span{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.75rem;line-height:1.2;position:absolute;top:-.6em;right:calc(100% + 8px)}.chart-columns,.chart-labels{margin:0 0 0 var(--chart-gutter);padding:0;list-style:none;display:flex}.chart-columns{position:absolute;inset:0}.chart-slot{border-radius:4px 4px 0 0;flex:1 1 0;justify-content:center;align-items:flex-end;gap:2px;min-width:0;padding:0 3px;display:flex}.chart-slot.active{background:var(--bg-subtle)}.chart-bar{border-radius:4px 4px 0 0;flex:0 22px;min-width:4px;position:relative}.chart-bar.none{height:0}.chart-labels li{min-width:0;color:var(--text-muted);text-align:center;text-overflow:clip;white-space:nowrap;flex:1 1 0;padding-top:6px;font-size:.75rem;overflow:hidden}.chart-labels.sparse li{overflow:visible}.chart-labels.sparse li:nth-last-child(2n){visibility:hidden}.chart-labels.sparse li:last-child{text-align:right}.chart-tip{z-index:1;max-width:260px;color:var(--text);background:var(--bg-surface);border:1px solid var(--border-strong);pointer-events:none;white-space:nowrap;border-radius:6px;margin:0;padding:6px 10px;font-size:.875rem;position:absolute;bottom:calc(100% + 6px)}.chart-tip.start{transform:translate(-24px)}.chart-tip.middle{transform:translate(-50%)}.chart-tip.end{transform:translate(calc(24px - 100%))}.chart-numbers{margin-top:8px}.chart-numbers summary{min-height:48px;color:var(--link);cursor:pointer;align-items:center;display:inline-flex}.chart-pair{grid-template-columns:1fr 1fr;gap:8px 32px;margin-bottom:16px;display:grid}.standing{margin:0 0 16px}.standing-bar{gap:2px;height:14px;margin:4px 0 10px;display:flex}.standing-part{border-radius:3px;min-width:6px}.standing-key{flex-wrap:wrap;gap:4px 20px;margin:0;padding:0;font-size:.9375rem;list-style:none;display:flex}.standing-key li{align-items:center;gap:6px;display:flex}.standing-swatch{border-radius:3px;width:12px;height:12px}.standing-part.good,.standing-swatch.good{background:var(--success-text)}.standing-part.attention,.standing-swatch.attention{background:var(--warning-text)}.standing-part.overdue,.standing-swatch.overdue{background:var(--danger-text)}@media (max-width:599px){.chart-area{height:160px}.chart-plot{--chart-gutter:2.75rem}.chart-slot{padding:0 1px}.chart-labels.many li:nth-last-child(2n){visibility:hidden}.chart-tip{white-space:normal;width:max-content;max-width:220px}}@media (max-width:1023.98px){.chart-pair{grid-template-columns:1fr}}@media print{.chart-tip,.chart-numbers summary{display:none}}
