/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.hidden{display:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--ink:#17211d;--muted:#68736e;--line:#d8e0db;--cream:#f4f3ed;--green:#177a55;--lime:#cfe78b;--card:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif;margin:0}button,input,textarea,select{font:inherit}button{color:inherit}.app-shell{background:radial-gradient(circle at 78% 2%,#b1dec36b,transparent 25%),var(--cream);min-height:100vh;padding:0 5vw 36px}.topbar{z-index:12;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f3ede0;border-bottom:1px solid #17211d26;justify-content:space-between;align-items:center;height:88px;display:flex;position:sticky;top:0}.plain-button{cursor:pointer;background:0 0;border:0;padding:0}.brand{text-align:left;align-items:center;gap:12px;display:inline-flex}.brand-mark{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.brand strong,.brand small{line-height:1.05;display:block}.brand strong{font-size:15px}.brand small{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-top:5px;font-size:11px}.nav-actions{align-items:center;gap:18px;display:flex}.nav-link,.back-button,.text-button{cursor:pointer;background:0 0;border:0;font-weight:650}.nav-link:hover,.nav-link.active,.back-button:hover,.text-button:hover{color:var(--green)}.coach-button{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:10px 16px;font-weight:650}.coach-button span{margin-left:7px}.my-progress-icon{display:none}.notice{z-index:20;background:var(--ink);color:#fff;border-radius:12px;align-items:center;gap:18px;max-width:calc(100% - 32px);padding:12px 16px;font-size:13px;display:flex;position:fixed;top:105px;left:50%;transform:translate(-50%);box-shadow:0 16px 50px #0000002e}.notice button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:20px}.hero{padding:70px 0 44px}.eyebrow{color:var(--green);text-transform:uppercase;letter-spacing:.13em;align-items:center;gap:9px;font-size:12px;font-weight:750;display:flex}.eyebrow>span{background:#38a875;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #38a8751f}.eyebrow.centered{justify-content:center}.hero h1,.profile-heading h1,.section-heading h1{letter-spacing:-.07em;margin:20px 0 18px;font-size:clamp(52px,7.5vw,96px);line-height:.92}.hero p,.profile-heading p,.section-heading p{color:var(--muted);margin:0;font-size:clamp(15px,2vw,19px)}.athlete-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);background:#ffffff80;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.athlete-card{text-align:left;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;min-width:0;padding:19px;transition:background .18s,transform .18s;display:grid}:is(.athlete-card:hover,.athlete-card:focus-visible){background:#fff;outline:none;transform:translateY(-2px)}.avatar{letter-spacing:-.03em;border-radius:18px;flex:none;place-items:center;width:58px;height:58px;font-weight:800;display:inline-grid;overflow:hidden}.avatar.small{border-radius:12px;width:38px;height:38px;font-size:12px}.avatar.large{border-radius:32px;width:110px;height:110px;font-size:26px}.avatar img{object-fit:cover;width:100%;height:100%}.athlete-copy{min-width:0}.athlete-copy strong,.athlete-copy small{display:block}.athlete-copy strong{font-size:17px}.athlete-copy small{color:var(--muted);margin-top:5px;font-size:12px}.arrow{color:var(--green);font-size:20px}.site-footer{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;justify-content:space-between;padding-top:24px;font-size:11px;display:flex}.primary-button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:30px;padding:15px 23px;font-weight:750;transition:transform .15s,opacity .15s;display:inline-flex}.primary-button:hover:not(:disabled){transform:translateY(-2px)}.primary-button:disabled{opacity:.5;cursor:not-allowed}.primary-button.light{color:var(--ink);background:#fff}.primary-button.dark{background:var(--ink);color:#fff}.text-button{color:var(--muted);padding:12px}.back-button{color:var(--muted);text-align:left;padding:10px 0;font-size:13px}.confirm-screen{grid-template-rows:auto 1fr;min-height:calc(100vh - 88px);padding-top:20px;display:grid}.confirm-card{text-align:center;border:1px solid var(--line);background:#ffffffc7;border-radius:36px;flex-direction:column;align-items:center;width:min(520px,100%);margin:auto;padding:44px;display:flex;box-shadow:0 25px 80px #17211d14}.confirm-card .eyebrow{margin:25px 0 0}.confirm-card h1{letter-spacing:-.06em;margin:10px 0 5px;font-size:52px}.confirm-card>p:not(.eyebrow){color:var(--muted);margin:0 0 28px}.confirm-card .primary-button{width:100%;max-width:300px}.profile-screen,.board-screen,.coach-screen{max-width:1200px;margin:auto;padding:54px 0 30px}.profile-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:45px;display:flex}.profile-heading h1{font-size:clamp(46px,6vw,76px)}.profile-heading .eyebrow{margin-top:30px}.programme-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.programme-card{border-radius:30px;flex-direction:column;min-height:480px;padding:32px;display:flex}.programme-card.daily{background:var(--green);color:#fff}.programme-card.weekly{background:#d9eaa7}.programme-card.complete{filter:saturate(.8)}.card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.set-label{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800}.status-pill{background:#ffffff29;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:750}.programme-card h2{letter-spacing:-.05em;max-width:500px;margin:55px 0 20px;font-size:clamp(30px,4vw,48px);line-height:.98}.programme-card ul{margin:0 0 28px;padding:0;list-style:none}.programme-card li{border-bottom:1px solid #ffffff29;gap:12px;padding:9px 0;font-size:14px;display:flex}.programme-card li span{opacity:.68}.programme-card .primary-button{width:fit-content;margin-top:auto}.week-dots{gap:8px;margin:0 0 24px;display:flex}.week-dots span{background:#17211d29;border-radius:999px;width:28px;height:7px}.workout-screen{flex-direction:column;min-height:calc(100vh - 88px);display:flex}.workout-nav{text-transform:uppercase;letter-spacing:.1em;grid-template-columns:1fr auto 1fr;align-items:center;padding:18px 0;font-size:12px;font-weight:750;display:grid}.workout-nav span:last-child{text-align:right}.progress-track{background:var(--line);border-radius:99px;height:5px;overflow:hidden}.progress-track span{background:var(--green);height:100%;transition:width .3s;display:block}.exercise-stage{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:30px 0 80px;display:flex}.exercise-stage h1{letter-spacing:-.07em;max-width:900px;margin:20px 0 34px;font-size:clamp(44px,7vw,84px);line-height:.98}.timer-wrap,.reps-wrap{flex-direction:column;align-items:center;display:flex}.timer-ring{--progress:360deg;background:conic-gradient(var(--green) var(--progress),#dce3de 0);border-radius:50%;place-items:center;width:230px;height:230px;display:grid;position:relative}.timer-ring:before{content:"";background:var(--cream);border-radius:50%;position:absolute;inset:10px}.timer-ring>div{z-index:1;position:relative}.timer-ring strong,.timer-ring small,.rep-number strong,.rep-number small{display:block}.timer-ring strong{letter-spacing:-.07em;font-size:58px}.timer-ring small,.rep-number small{text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-size:10px}.timer-ring.running{box-shadow:0 0 0 12px #177a5514}.workout-button{min-width:230px;margin-top:28px}.rep-number{background:var(--lime);border-radius:50%;place-content:center;width:220px;height:220px;display:grid}.rep-number strong{letter-spacing:-.08em;font-size:100px;line-height:.8}.reps-wrap>p{color:var(--muted);margin:22px 0 0}.success-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;max-width:640px;min-height:calc(100vh - 88px);margin:auto;padding:50px 0;display:flex}.success-screen .eyebrow{margin-top:25px}.success-screen h1{letter-spacing:-.08em;margin:12px 0 8px;font-size:clamp(58px,9vw,100px);line-height:.9}.success-screen>p:not(.eyebrow){max-width:480px;color:var(--muted);font-size:18px}.success-stat{border:1px solid var(--line);background:#fff;border-radius:16px;margin:25px 0;padding:14px 28px}.success-stat strong,.success-stat span{display:block}.success-stat strong{color:var(--green);font-size:34px}.success-stat span{text-transform:uppercase;letter-spacing:.1em;font-size:9px}.confetti{word-spacing:28px;color:var(--green);margin-bottom:20px;font-size:24px}.confetti span{color:#e0a92c}.section-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px;display:flex}.section-heading h1{font-size:clamp(46px,6vw,78px)}.section-heading .eyebrow{margin-top:25px}.trophy{font-size:70px}.leaderboard{border:1px solid var(--line);background:#fff;border-radius:25px;overflow:hidden}.leader-row{border-bottom:1px solid var(--line);grid-template-columns:70px minmax(180px,1fr) 150px 90px;align-items:center;gap:16px;padding:14px 24px;display:grid}.leader-row:last-child{border-bottom:0}.leader-head{text-transform:uppercase;letter-spacing:.1em;background:#eef1ed;padding-top:12px;padding-bottom:12px;font-size:9px;font-weight:800}.leader-athlete{align-items:center;gap:13px;display:flex}.rank{font-size:18px}.streak{color:var(--muted);font-size:13px}.points{text-align:right;font-size:20px}.podium-1{background:#fff8dc}.podium-2{background:#f5f7f6}.podium-3{background:#fff4eb}.board-note{color:var(--muted);margin:18px 8px;font-size:12px}.live-pill{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:9px;padding:10px 14px;font-size:12px;font-weight:700;display:flex}.live-pill span{background:#39a875;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #39a8751f}.coach-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px;display:grid}.editor-panel,.activity-panel{border:1px solid var(--line);background:#fff;border-radius:25px;padding:25px}.editor-profile{border-bottom:1px solid var(--line);align-items:center;gap:15px;padding-bottom:22px;display:flex}.editor-profile select{background:0 0;border:0;min-width:140px;font-size:22px;font-weight:800}.upload-button{border:1px solid var(--line);cursor:pointer;border-radius:99px;margin-left:auto;padding:10px 13px;font-size:11px;font-weight:750}.upload-button input{display:none}.field-label{margin-top:23px;font-size:13px;font-weight:800;display:block}.field-label small{float:right;color:var(--muted);font-weight:500}.field-label textarea{border:1px solid var(--line);resize:vertical;background:#fafbf9;border-radius:14px;width:100%;min-height:130px;margin-top:9px;padding:14px;line-height:1.65}.detect-note{color:var(--green);background:#edf7f1;border-radius:10px;justify-content:space-between;gap:15px;margin-top:10px;padding:11px 13px;font-size:11px;display:flex}.detect-note span{color:var(--muted)}.frequency-field{justify-content:space-between;align-items:center;gap:20px;margin:23px 0;display:flex}.frequency-field>span{font-size:13px;font-weight:800}.frequency-field>div{gap:5px;display:flex}.frequency-field button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;padding:8px 10px}.frequency-field button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.panel-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.panel-title h2{margin:0;font-size:22px}.panel-title span{color:var(--muted);font-size:11px}.activity-list{max-height:630px;overflow:auto}.activity-item{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 2px;display:flex}.activity-item strong,.activity-item span{display:block}.activity-item strong{font-size:14px}.activity-item span,.activity-item time{color:var(--muted);margin-top:4px;font-size:11px}.empty-activity{text-align:center;color:var(--muted);padding:80px 25px}.empty-activity>span{color:var(--green);font-size:45px}.empty-activity h3{color:var(--ink);margin-bottom:5px}.empty-activity p{font-size:13px;line-height:1.5}@media (max-width:850px){.athlete-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.programme-grid,.coach-layout{grid-template-columns:1fr}.profile-heading{align-items:center}.programme-card{min-height:420px}.activity-panel{min-height:350px}.leader-row{grid-template-columns:50px minmax(150px,1fr) 90px 65px}.section-heading{align-items:center}.detect-note{flex-direction:column}}@media (max-width:560px){.app-shell{padding:0 18px 28px}.topbar{height:74px}.brand small,.nav-link{display:none}.coach-button{padding:8px 12px;font-size:12px}.hero{padding:50px 0 30px}.hero h1{font-size:52px}.athlete-grid{grid-template-columns:1fr}.athlete-card{padding:14px}.avatar{width:52px;height:52px}.avatar.large{width:92px;height:92px}.site-footer{flex-direction:column;gap:14px}.confirm-card{padding:32px 20px}.confirm-card h1{font-size:44px}.profile-screen,.board-screen,.coach-screen{padding-top:32px}.profile-heading{align-items:flex-start}.profile-heading .avatar{display:none}.profile-heading h1,.section-heading h1{font-size:48px}.programme-card{min-height:400px;padding:24px}.programme-card h2{margin-top:40px}.workout-nav{grid-template-columns:1fr auto}.workout-nav span:nth-child(2){display:none}.exercise-stage{padding-bottom:35px}.exercise-stage h1{font-size:45px}.timer-ring,.rep-number{width:190px;height:190px}.timer-ring strong{font-size:50px}.rep-number strong{font-size:80px}.section-heading{align-items:flex-start}.trophy,.live-pill{display:none}.leaderboard{margin-left:-10px;margin-right:-10px}.leader-row{grid-template-columns:36px minmax(130px,1fr) 64px;gap:7px;padding:12px 10px}.leader-row>span:nth-child(3),.leader-head>span:nth-child(3){display:none}.leader-head{font-size:8px}.leader-athlete{gap:8px}.points{font-size:17px}.editor-profile{flex-wrap:wrap}.editor-profile select{order:2}.upload-button{order:3;margin-left:0}.frequency-field{flex-direction:column;align-items:flex-start}.field-label small{float:none;margin-top:3px;display:block}.detect-note{font-size:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.coach-button{text-decoration:none}.admin-gate,.admin-loading{background:radial-gradient(circle at 75% 10%,#b1dec380,transparent 28%),var(--cream);text-align:center;place-items:center;min-height:100vh;padding:30px;display:grid}.admin-gate>div{border:1px solid var(--line);background:#fff;border-radius:32px;flex-direction:column;align-items:center;width:min(560px,100%);padding:48px;display:flex;box-shadow:0 25px 80px #17211d14}.admin-gate .eyebrow{margin-top:25px}.admin-gate h1{letter-spacing:-.06em;margin:12px 0;font-size:52px;line-height:.95}.admin-gate p:not(.eyebrow){max-width:430px;color:var(--muted);margin:0 0 25px;line-height:1.55}.admin-gate a{text-decoration:none}.admin-loading{color:var(--muted);align-content:center;gap:15px}.admin-shell{min-height:100vh;color:var(--ink);background:#eef1ed}.admin-topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 28px;display:flex}.admin-topbar .brand{color:inherit;text-decoration:none}.admin-account{text-align:right;align-items:center;gap:18px;display:flex}.admin-account strong,.admin-account small{display:block}.admin-account small{color:var(--muted);margin-top:3px;font-size:10px}.admin-account>a{border:1px solid var(--line);color:var(--ink);border-radius:99px;padding:8px 12px;font-size:11px;font-weight:700;text-decoration:none}.admin-body{grid-template-columns:220px minmax(560px,1fr) 280px;min-height:calc(100vh - 76px);display:grid}.admin-roster{border-right:1px solid var(--line);background:#f7f8f5;padding:28px 14px}.admin-roster>div{padding:0 10px 18px}.admin-roster h2{letter-spacing:-.04em;margin:7px 0 0;font-size:24px}.admin-roster nav{flex-direction:column;gap:3px;display:flex}.admin-roster nav button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;align-items:center;gap:10px;width:100%;padding:8px;display:flex}.admin-roster nav button:hover{background:#fff}.admin-roster nav button.active{background:var(--ink);color:#fff;box-shadow:0 8px 20px #17211d1f}.admin-roster .avatar{background:#d8e9db;border-radius:11px;width:38px;height:38px;font-size:11px}.admin-roster nav strong,.admin-roster nav small{display:block}.admin-roster nav small{color:var(--muted);margin-top:3px;font-size:9px}.admin-roster nav button.active small{color:#b9c4bf}.admin-editor{min-width:0;padding:35px 34px 110px}.admin-title{justify-content:space-between;align-items:flex-end;margin-bottom:26px;display:flex}.admin-title h1{letter-spacing:-.07em;margin:8px 0 0;font-size:54px;line-height:.9}.admin-photo{align-items:center;gap:12px;display:flex}.admin-photo .avatar{background:#d8e9db;border-radius:14px;width:48px;height:48px;font-size:12px}.admin-photo label{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:99px;padding:9px 12px;font-size:10px;font-weight:750}.admin-photo input{display:none}.program-tabs{background:#dfe5e0;border-radius:18px;grid-template-columns:1fr 1fr;margin-bottom:18px;padding:5px;display:grid}.program-tabs button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:32px 1fr;column-gap:10px;padding:14px;display:grid}.program-tabs button.active{background:#fff;box-shadow:0 5px 20px #17211d14}.program-tabs button>span{color:var(--green);grid-row:1/3;align-self:center;font-size:11px;font-weight:800}.program-tabs strong{font-size:14px}.program-tabs small{color:var(--muted);margin-top:3px;font-size:10px}.programme-settings{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;display:grid}.programme-settings>label{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:1fr auto;padding:15px 16px;display:grid}.programme-settings span,.programme-settings small{display:block}.programme-settings span{font-size:12px;font-weight:800}.programme-settings small{color:var(--muted);grid-column:1;margin-top:4px;font-size:9px}.programme-settings select{border:0;border-left:1px solid var(--line);background:#fff;grid-area:1/2/3;min-width:110px;padding-left:13px;font-weight:750}.exercise-builder{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden}.builder-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.builder-heading h2{margin:5px 0 0;font-size:24px}.builder-heading>button{border:1px solid var(--ink);cursor:pointer;background:#fff;border-radius:99px;padding:9px 13px;font-size:10px;font-weight:800}.exercise-table{width:100%}.exercise-head,.exercise-row{grid-template-columns:72px minmax(160px,1fr) 125px 180px 30px;align-items:center;gap:10px;padding:10px 14px;display:grid}.exercise-head{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;background:#f4f6f3;font-size:8px;font-weight:800}.exercise-row{border-top:1px solid var(--line)}.exercise-row label{min-width:0}.exercise-row input,.exercise-row select{border:1px solid var(--line);background:#fbfcfa;border-radius:10px;width:100%;height:40px;padding:0 10px;font-size:12px}.order-control{align-items:center;gap:7px;display:flex}.order-control>strong{font-size:13px}.order-control>span{flex-direction:column;display:flex}.order-control button,.remove-exercise{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:10px}.remove-exercise{font-size:20px}.amount-control{grid-template-columns:70px 1fr;align-items:center;gap:5px;display:grid}.amount-control>span:not(.mobile-label){color:var(--muted);font-size:10px}.mobile-label{display:none}.empty-builder{cursor:pointer;background:#fff;border:0;flex-direction:column;align-items:center;gap:5px;width:100%;padding:50px;display:flex}.empty-builder>span{color:var(--green);font-size:28px}.empty-builder small{color:var(--muted)}.admin-savebar{z-index:4;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#17211df5;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:13px 13px 13px 18px;display:flex;position:sticky;bottom:18px;box-shadow:0 15px 45px #17211d3d}.admin-savebar p{color:#c4cec9;margin:0;font-size:11px}.admin-savebar .primary-button{background:var(--lime);color:var(--ink);padding:12px 18px}.save-notice{color:#fff!important}.admin-activity{border-left:1px solid var(--line);background:#f7f8f5;padding:28px 18px}.admin-activity .panel-title h2{font-size:18px}.admin-activity .panel-title span{color:var(--green);background:#dff1e5;border-radius:99px;padding:5px 8px;font-weight:800}.admin-activity .activity-item{padding:13px 2px}.admin-activity .empty-activity{padding:60px 12px}@media (max-width:1120px){.admin-body{grid-template-columns:190px minmax(500px,1fr)}.admin-activity{display:none}.exercise-head,.exercise-row{grid-template-columns:64px minmax(150px,1fr) 120px 165px 25px}}@media (max-width:760px){.admin-topbar{padding:0 15px}.admin-account>span{display:none}.admin-body{display:block}.admin-roster{border-right:0;border-bottom:1px solid var(--line);padding:14px;overflow:auto}.admin-roster>div{display:none}.admin-roster nav{flex-direction:row;width:max-content}.admin-roster nav button{width:115px}.admin-roster nav small{display:none}.admin-editor{padding:28px 15px 100px}.admin-title{align-items:center}.admin-title h1{font-size:44px}.admin-photo .avatar{display:none}.program-tabs,.programme-settings{grid-template-columns:1fr}.exercise-head{display:none}.exercise-row{grid-template-columns:1fr 1fr;gap:10px;padding:18px;display:grid;position:relative}.exercise-row>.order-control,.exercise-row>label:first-of-type{grid-column:1/3}.mobile-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:8px;font-weight:800;display:block}.remove-exercise{position:absolute;top:15px;right:14px}.amount-control{grid-template-columns:70px 1fr}.amount-control .mobile-label{grid-column:1/3}.admin-savebar{flex-direction:column;align-items:stretch;bottom:10px}.admin-savebar .primary-button{width:100%}.admin-gate>div{padding:38px 22px}.admin-gate h1{font-size:42px}}:root{--ink:#061326;--muted:#5f6f84;--line:#cfddeb;--cream:#eef7ff;--green:#0798f6;--lime:#ff198c;--blue:#0798f6;--pink:#ff198c}body{background:#e9f5ff}.app-shell{isolation:isolate;background:radial-gradient(circle at 82% 5%,#47b1ff33,#0000 27%),radial-gradient(circle at 15% 40%,#0798f621,#0000 30%),linear-gradient(135deg,#f8fcff 0%,#e9f5ff 58%,#edf1ff 100%);position:relative;overflow:hidden}.app-shell:before{content:"";z-index:-1;pointer-events:none;opacity:.22;background:repeating-linear-gradient(118deg,#0000 0 110px,#0798f61f 111px 113px,#0000 114px 190px);position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}.bff-logo{object-fit:contain;filter:drop-shadow(0 8px 16px #0713261f);width:190px;height:auto;display:block}.bff-logo.compact{width:126px}.brand .bff-logo{transition:transform .25s,filter .25s}.brand:hover .bff-logo{filter:drop-shadow(0 10px 20px #0798f638);transform:translateY(-2px)rotate(-1deg)}.topbar{background:#f0f8ffe6;border-bottom:1px solid #0613261f;height:96px}.coach-button{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--pink);transition:transform .18s,box-shadow .18s}.coach-button:hover{box-shadow:7px 7px 0 var(--pink);transform:translate(-2px,-2px)}.nav-link:after{content:"";background:linear-gradient(90deg,var(--blue),var(--pink));height:3px;transition:right .2s;position:absolute;bottom:-7px;left:0;right:100%}.nav-link:hover:after{right:0}.leaderboard-icon{display:none}.eyebrow{color:#057fcf;font-style:italic}.eyebrow>span{background:var(--pink);box-shadow:0 0 0 5px #ff198c21}.hero{padding-top:78px;position:relative}.hero:after{content:"MOVE / CLIMB / REPEAT";z-index:-1;color:#0798f612;letter-spacing:-.07em;white-space:nowrap;font-size:clamp(44px,9vw,130px);font-style:italic;font-weight:950;position:absolute;top:44px;right:-3vw;transform:rotate(-7deg)}.hero h1,.profile-heading h1,.section-heading h1,.success-screen h1,.confirm-card h1{text-transform:uppercase;letter-spacing:-.075em;font-style:italic;font-weight:950}.hero h1{text-shadow:4px 4px #0798f61f;animation:.6s cubic-bezier(.2,.9,.25,1) both bff-slam}.hero p{animation:.55s .16s both bff-rise}.athlete-grid{background:0 0;border:0;gap:12px;display:grid}.athlete-card{background:#ffffffe0;border:1px solid #0613261a;border-radius:20px;animation:.5s both bff-card-in;position:relative;overflow:hidden;box-shadow:0 10px 30px #0613260d}.athlete-card:before{content:"";background:linear-gradient(180deg,var(--blue),var(--pink));transform-origin:bottom;width:4px;transition:transform .2s;position:absolute;inset:0 auto 0 0;transform:scaleY(0)}:is(.athlete-card:hover,.athlete-card:focus-visible){background:#fff;transform:translateY(-6px)rotate(-.35deg);box-shadow:0 18px 34px #0798f624}.athlete-card:hover:before{transform:scaleY(1)}.athlete-card:focus-visible:before{transform:scaleY(1)}.athlete-card:nth-child(2){animation-delay:35ms}.athlete-card:nth-child(3){animation-delay:70ms}.athlete-card:nth-child(4){animation-delay:.105s}.athlete-card:nth-child(5){animation-delay:.14s}.athlete-card:nth-child(6){animation-delay:.175s}.athlete-card:nth-child(7){animation-delay:.21s}.athlete-card:nth-child(8){animation-delay:.245s}.athlete-card:nth-child(9){animation-delay:.28s}.athlete-card:nth-child(10){animation-delay:.315s}.athlete-card:nth-child(11){animation-delay:.35s}.athlete-card:nth-child(12){animation-delay:.385s}.athlete-card:nth-child(13){animation-delay:.42s}.avatar{border-radius:50%;outline:3px solid #fffc;box-shadow:0 6px 18px #06132621}.mint{background:#a9edff}.blue{background:#93c9ff}.yellow{background:#ffe08a}.pink{background:#ffafd2}.purple{background:#cbb8ff}.arrow{color:var(--pink);font-weight:900}.site-footer{border-top:1px solid #0613261a;margin-top:24px}.primary-button{background:linear-gradient(105deg,var(--blue),#0870ed);text-transform:uppercase;letter-spacing:.04em;font-size:12px;box-shadow:0 8px #045bab2e}.primary-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 11px #045bab29}.confirm-card{border:2px solid #fff;border-top:7px solid var(--pink);animation:.45s both bff-pop;box-shadow:0 25px 70px #0798f61f}.confirm-card .avatar{animation:3s ease-in-out infinite bff-float}.programme-card{border:0;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 18px 45px #0613261f}.programme-card:hover{transform:translateY(-5px);box-shadow:0 24px 55px #0613262b}.programme-card:after{content:"";border:34px solid #ffffff1a;border-radius:50%;width:230px;height:230px;position:absolute;bottom:-85px;right:-70px}.programme-card.daily{background:linear-gradient(145deg,#08a8ff 0%,#0667e8 72%)}.programme-card.weekly{color:#fff;background:linear-gradient(145deg,#ff3aa1 0%,#f80f68 72%)}.weekly .status-pill{background:#ffffff2b}.weekly li{border-color:#ffffff2e}.week-dots span{background:#ffffff4d}.week-dots span.filled{background:#fff}.programme-card .primary-button{z-index:1;position:relative}.programme-card.weekly .primary-button{color:var(--ink);background:#fff}.progress-track{background:#dfe7ef;height:7px}.progress-track span{background:linear-gradient(90deg,var(--blue),var(--pink));box-shadow:0 0 15px #ff198c73}.exercise-stage{animation:.38s cubic-bezier(.2,.9,.25,1) both bff-stage-in}.exercise-stage h1{text-transform:uppercase;text-shadow:4px 4px #0798f61c;font-style:italic;font-weight:950}.timer-ring{background:conic-gradient(var(--pink) var(--progress),#dbe6f0 0);box-shadow:0 15px 45px #0798f626}.timer-ring.running{animation:1s ease-in-out infinite bff-timer-pulse;box-shadow:0 0 0 12px #ff198c14,0 18px 50px #0798f633}.rep-number{color:#fff;background:linear-gradient(145deg,#14b7ff,#0875ee);transform:rotate(-2deg);box-shadow:12px 12px #ff198ccc}.rep-number small{color:#e8f7ff}.workout-status{justify-content:flex-end;align-items:center;gap:12px;display:flex}.workout-status b{text-align:right;min-width:46px}.sound-toggle{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:99px;padding:7px 10px;font-size:10px;font-weight:750;transition:transform .15s,background .15s}.sound-toggle:hover{background:#eef8ff;transform:scale(1.04)}.previous-step{color:#51677f;text-underline-offset:4px;margin-top:4px;-webkit-text-decoration:underline #51677f59;text-decoration:underline #51677f59}.success-screen .confetti{animation:1.2s ease-in-out infinite alternate bff-confetti}.success-stat{background:linear-gradient(135deg,#eaf8ff,#ffeaf5);border:2px solid #fff;box-shadow:8px 8px #0798f621}.success-stat strong{color:var(--pink)}.trophy{filter:drop-shadow(0 10px 10px #06132621);animation:2.4s ease-in-out infinite bff-float}.leaderboard{border:0;box-shadow:0 18px 50px #06132617}.leader-head{background:linear-gradient(90deg,#e5f5ff,#ffe6f2)}.points{color:#057fcf}.achievement-card{color:#fff;background:linear-gradient(115deg,#061326 0%,#0a3158 67%,#087fec 100%);border-radius:25px;margin:0 0 20px;padding:24px 26px;animation:.45s both bff-card-in;position:relative;overflow:hidden;box-shadow:0 18px 45px #06132633}.achievement-card:after{content:"";border:32px solid #ffffff12;border-radius:50%;width:220px;height:220px;position:absolute;top:-85px;right:-50px}.achievement-person{z-index:1;align-items:center;gap:16px;display:flex;position:relative}.achievement-person h2{text-transform:uppercase;letter-spacing:-.04em;margin:3px 0 4px;font-size:27px;font-style:italic}.achievement-person p{color:#c9ddf1;margin:0;font-size:12px}.achievement-kicker{color:#6fd1ff;text-transform:uppercase;letter-spacing:.13em;font-size:9px;font-weight:900}.achievement-stats{z-index:1;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0 18px;display:grid;position:relative}.achievement-stats>div{background:#ffffff12;border:1px solid #ffffff21;border-radius:15px;padding:13px 15px}.achievement-stats span,.achievement-stats strong{display:block}.achievement-stats span{color:#a9c3dc;text-transform:uppercase;letter-spacing:.09em;font-size:8px;font-weight:800}.achievement-stats strong{letter-spacing:-.04em;margin-top:5px;font-size:25px}.achievement-stats small{color:#9bb7d2;letter-spacing:0;margin-left:3px;font-size:11px}.achievement-progress{z-index:1;background:#ffffff26;border-radius:99px;height:7px;position:relative;overflow:hidden}.achievement-progress span{border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--pink));height:100%;transition:width .5s;display:block;box-shadow:0 0 14px #ff198c99}.leader-row.is-me{box-shadow:inset 4px 0 0 var(--pink);position:relative}.leader-athlete em{background:var(--pink);color:#fff;letter-spacing:.08em;vertical-align:middle;border-radius:99px;margin-left:8px;padding:3px 6px;font-size:7px;font-style:normal;display:inline-block}.admin-gate,.admin-loading{background:radial-gradient(circle at 75% 10%,#47b1ff33,#0000 30%),linear-gradient(145deg,#f8fcff,#e8f4ff)}.admin-shell{background:#e9f5ff}.admin-topbar{border-bottom:4px solid #0000;border-image:linear-gradient(90deg,var(--blue),var(--pink)) 1;height:86px}.admin-topbar .bff-logo.compact{width:118px}.admin-roster nav button.active{box-shadow:4px 4px 0 var(--pink);background:linear-gradient(105deg,#087ce9,#079fe9)}.program-tabs button.active{box-shadow:inset 0 -4px 0 var(--pink),0 5px 20px #0798f61a}.builder-heading>button{border-color:var(--blue);color:#057fcf}.admin-savebar{box-shadow:7px 7px 0 var(--pink);background:linear-gradient(100deg,#061326,#0d3155)}.admin-savebar .primary-button{background:linear-gradient(100deg,var(--blue),#0870ed);color:#fff}.admin-gate .bff-logo{width:220px}.admin-loading .bff-logo{width:200px;animation:2.5s ease-in-out infinite bff-float}@keyframes bff-slam{0%{opacity:0;transform:translate(-35px)skew(-5deg)}to{opacity:1;transform:none}}@keyframes bff-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes bff-card-in{0%{opacity:0;transform:translateY(22px)scale(.97)}to{opacity:1;transform:none}}@keyframes bff-pop{0%{opacity:0;transform:scale(.93)rotate(-1deg)}to{opacity:1;transform:none}}@keyframes bff-stage-in{0%{opacity:0;transform:translate(28px)scale(.98)}to{opacity:1;transform:none}}@keyframes bff-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes bff-timer-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}@keyframes bff-confetti{0%{letter-spacing:16px;transform:translateY(0)rotate(-2deg)}to{letter-spacing:24px;transform:translateY(-8px)rotate(2deg)}}@media (max-width:560px){.topbar{height:80px;margin:0 -5vw;padding:0 5vw}.bff-logo.compact{width:106px}.nav-actions{gap:10px}.nav-link{background:#fff;border:1px solid #06132621;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;box-shadow:0 5px 15px #06132614;display:inline-grid!important}.nav-link.active{border-color:var(--blue);box-shadow:0 0 0 3px #0798f621}.nav-link:after{display:none}.leaderboard-label,.my-progress-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.leaderboard-icon,.my-progress-icon{font-size:19px;line-height:1;display:block}.coach-button{padding:8px 11px}.hero:after{top:75px}.athlete-grid{gap:9px}.programme-card.weekly{min-height:420px}.workout-status{gap:6px}.sound-toggle{padding:6px;font-size:0}.sound-toggle:first-letter{font-size:15px}.workout-nav{grid-template-columns:1fr auto}.workout-nav>span:nth-child(2){display:none}.admin-topbar .bff-logo.compact{width:100px}}@media (max-width:700px){.achievement-card{padding:20px}.achievement-person .avatar{width:48px;height:48px}.achievement-person h2{font-size:22px}.achievement-stats{grid-template-columns:1fr 1fr}.achievement-stats strong{font-size:21px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.athlete-login-screen{background:radial-gradient(circle at 78% 8%,#47b1ff33,#0000 31%),radial-gradient(circle at 12% 75%,#0798f629,#0000 34%),linear-gradient(145deg,#f8fcff,#e8f4ff);place-items:center;min-height:100vh;padding:28px;display:grid}.athlete-login-card,.login-card{border:2px solid #fff;border-top:7px solid var(--pink);text-align:center;background:#fffffff0;border-radius:30px;flex-direction:column;align-items:center;width:min(500px,100%);padding:38px 42px;animation:.45s both bff-pop;display:flex;box-shadow:0 25px 70px #0798f629}.athlete-login-card .bff-logo,.login-card .bff-logo{width:205px}.athlete-login-card .eyebrow,.login-card .eyebrow{margin-top:18px}.athlete-login-card h1,.login-card h1{text-transform:uppercase;letter-spacing:-.06em;margin:10px 0 8px;font-size:45px;font-style:italic;line-height:.95}.athlete-login-card>p:not(.eyebrow),.login-card>p:not(.eyebrow):not(.login-error){color:var(--muted);margin:0 0 22px;font-size:13px;line-height:1.5}.login-field{text-align:left;width:100%;margin:8px 0;display:block}.login-field span{text-transform:uppercase;letter-spacing:.09em;margin:0 0 7px;font-size:9px;font-weight:850;display:block}.login-field input{border:1px solid var(--line);background:#f8fbfe;border-radius:13px;outline:none;width:100%;height:52px;padding:0 15px;font-size:16px;font-weight:700}.login-field input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #0798f61a}.athlete-login-card .primary-button,.login-card .primary-button{width:100%;margin-top:15px}.login-error{color:#b4004d;background:#ffe6ef;border-radius:10px;width:100%;padding:9px 12px;margin:8px 0 0!important;font-size:11px!important}.coach-entry{color:var(--muted);margin-top:18px;font-size:11px;text-decoration:none}.pin-input-wrap{align-items:center;width:100%;display:flex;position:relative}.pin-input-wrap input{padding-right:72px}.pin-visibility{color:#086aa5;cursor:pointer;background:#fff;border:1px solid #b9d9eb;border-radius:8px;min-width:54px;min-height:34px;padding:5px 8px;font-size:12px;font-weight:850;position:absolute;right:9px}:is(.pin-visibility:hover,.pin-visibility:focus-visible){border-color:var(--blue);background:#eaf7ff;outline:none}.pin-visibility:focus-visible{box-shadow:0 0 0 3px #0798f629}.today-status{grid-template-columns:repeat(3,1fr);gap:10px;margin:-20px 0 20px;display:grid}.today-status>div{border:1px solid var(--line);background:#ffffffe6;border-radius:16px;padding:14px 17px;box-shadow:0 8px 22px #0613260d}.today-status span,.today-status strong{display:block}.today-status span{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:8px;font-weight:850}.today-status strong{margin-top:5px;font-size:16px}.coach-reminder{background:#fff0f7;border:1px solid #ffd3e7;border-radius:16px;align-items:center;gap:14px;margin:-25px 0 38px;padding:14px 17px;display:flex;box-shadow:5px 5px #ff198c1a}.coach-reminder>span{font-size:24px}.coach-reminder strong,.coach-reminder p{margin:0;display:block}.coach-reminder p{color:var(--muted);margin-top:3px;font-size:11px}.progress-dashboard,.motivation-grid{grid-template-columns:1.45fr .75fr;gap:18px;margin-top:18px;display:grid}.motivation-grid{grid-template-columns:1.15fr .85fr}.history-card,.consistency-card,.badges-card,.team-challenge-card{border:1px solid var(--line);background:#fffffff0;border-radius:25px;padding:25px;box-shadow:0 15px 38px #06132612}.mini-heading{justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:18px;display:flex}.mini-heading h2,.consistency-card h2,.team-challenge-card h2{letter-spacing:-.04em;margin:5px 0 0;font-size:28px}.mini-heading>span,.history-legend{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.history-calendar{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.history-calendar>div{color:#8492a3;text-align:center;background:#f2f5f8;border-radius:10px;min-height:52px;padding:7px;position:relative}.history-calendar span,.history-calendar strong{display:block}.history-calendar span{text-transform:uppercase;font-size:8px}.history-calendar strong{margin-top:3px;font-size:13px}.history-calendar .done{color:#fff;background:linear-gradient(145deg,#0aa9f7,#0872e9);box-shadow:0 5px 12px #0798f633}.history-calendar .today{outline:2px solid var(--pink);background:#fff}.history-calendar em{color:#ffe16b;font-size:9px;font-style:normal;position:absolute;top:1px;right:3px}.personal-best{align-items:flex-end;gap:10px;margin:25px 0 10px;display:flex}.personal-best strong{color:var(--pink);letter-spacing:-.08em;font-size:70px;line-height:.75}.personal-best span{max-width:90px;color:var(--muted);font-size:11px;line-height:1.2}.consistency-card>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:1.45}.week-compare{justify-content:space-between;gap:8px;margin-top:18px;display:flex}.week-compare span{text-transform:uppercase;background:#eff6fc;border-radius:11px;flex:1;padding:10px;font-size:9px}.week-compare b{margin-top:3px;font-size:19px;display:block}.badge-grid{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.badge-grid>div{text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:7px;padding:12px 7px;display:flex}.badge-grid strong{font-size:27px}.badge-grid span{font-size:9px;font-weight:750}.badge-grid .earned{box-shadow:inset 0 -3px 0 var(--pink);background:linear-gradient(145deg,#e8f7ff,#ffe9f4)}.badge-grid .locked{filter:grayscale();opacity:.35;background:#eef1f4}.team-challenge-card{color:#fff;background:linear-gradient(135deg,#061326,#0a4075)}.team-challenge-card .eyebrow{color:#69cfff}.team-challenge-card>p:not(.eyebrow){color:#bad0e4;font-size:12px;line-height:1.45}.challenge-score{align-items:flex-end;gap:7px;margin:22px 0 10px;display:flex}.challenge-score strong{font-size:55px;line-height:.8}.challenge-score span{color:#a9c3dc;font-size:10px}.challenge-track{background:#ffffff29;border-radius:99px;height:8px;overflow:hidden}.challenge-track span{border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--pink));height:100%;display:block}.team-challenge-card small{color:#bdd2e5;margin-top:10px;display:block}.my-progress-link{white-space:nowrap}.score-explanation{z-index:1;color:#c9ddf1;margin:15px 0 0;font-size:11px;line-height:1.55;position:relative}.score-guide{background:#eff8ff;border:1px solid #b9dff8;border-radius:21px;margin:0 0 20px;overflow:hidden;box-shadow:0 10px 28px #0798f614}.score-guide summary{cursor:pointer;align-items:center;gap:10px;padding:15px 18px;list-style:none;display:flex}.score-guide summary::-webkit-details-marker{display:none}.score-guide summary>span{background:var(--blue);color:#fff;border-radius:50%;place-items:center;width:25px;height:25px;font-weight:900;display:grid}.score-guide summary strong{font-size:14px}.score-guide summary small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-left:auto;font-size:9px}.score-guide-grid{background:#cfe6f5;border-top:1px solid #cfe6f5;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.score-guide-grid>div{background:#f8fcff;padding:17px 18px}.score-guide-grid b,.score-guide-grid strong{display:block}.score-guide-grid b{color:var(--pink);letter-spacing:.12em;font-size:10px}.score-guide-grid strong{margin-top:5px;font-size:13px}.score-guide-grid p{color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.5}.profile-photo-control{flex-direction:column;flex:none;align-items:center;gap:8px;display:flex}.profile-photo-button{color:#057fcf;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;background:#fff;border:1px solid #06132621;border-radius:99px;padding:8px 12px;font-size:9px;font-weight:850;transition:transform .15s,box-shadow .15s;box-shadow:0 5px 15px #06132614}.profile-photo-button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #0798f624}.profile-photo-button input{display:none}.profile-photo-control small{color:var(--muted);font-size:8px}.admin-account>button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:99px;padding:8px 12px;font-size:11px;font-weight:700}.roster-filters{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.roster-filters button{border:1px solid var(--line);text-transform:capitalize;cursor:pointer;background:#fff;border-radius:99px;padding:5px 7px;font-size:8px}.roster-filters button.active{border-color:var(--blue);background:var(--blue);color:#fff}.coach-tools{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px;display:grid}.coach-tools>div{border:1px solid var(--line);background:#fff;border-radius:15px;flex-direction:column;gap:7px;min-width:0;padding:14px;display:flex}.coach-tools>div>span:first-child{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:8px;font-weight:850}.coach-tools strong{font-size:12px}.coach-tools select,.coach-tools input{border:1px solid var(--line);background:#fbfcfe;border-radius:8px;width:100%;min-width:0;height:35px;padding:0 8px;font-size:10px}.coach-tools button{border:1px solid var(--blue);color:#057fcf;cursor:pointer;background:#fff;border-radius:8px;min-height:33px;font-size:9px;font-weight:800}.inline-input{grid-template-columns:1fr auto;gap:5px;display:grid}.activity-actions{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.activity-actions button{color:#d0005d;cursor:pointer;background:0 0;border:0;font-size:9px;font-weight:800}.training-status{border:1px solid #b9dff8;border-left:5px solid var(--pink);background:linear-gradient(105deg,#f5fbff,#fff3f9);border-radius:18px;align-items:center;gap:13px;max-width:1200px;margin:54px auto -28px;padding:16px 18px;display:flex;box-shadow:0 12px 30px #0798f614}.training-status+.profile-screen{padding-top:54px}.status-icon{background:#fff;border-radius:13px;flex:none;place-items:center;width:38px;height:38px;font-size:18px;display:grid;box-shadow:0 5px 14px #06132614}.status-copy{flex:1;min-width:0}.status-copy>span{color:#087fd1;text-transform:uppercase;letter-spacing:.1em;font-size:8px;font-weight:900;display:block}.status-copy>strong{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:15px;display:block;overflow:hidden}.edit-status,.status-actions button{border:1px solid var(--blue);color:#0878c8;cursor:pointer;background:#fff;border-radius:99px;padding:8px 12px;font-size:9px;font-weight:850}.status-editor{margin-top:6px;position:relative}.status-editor input{background:#fff;border:1px solid #b9dff8;border-radius:10px;outline:none;width:100%;height:39px;padding:0 45px 0 11px;font-size:13px}.status-editor>small{color:var(--muted);font-size:8px;position:absolute;top:12px;right:10px}.status-suggestions{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.status-suggestions button{color:#326582;cursor:pointer;background:#e6f4fd;border:0;border-radius:99px;padding:5px 7px;font-size:8px}.status-actions{align-self:flex-start;gap:5px;margin-top:18px;display:flex}.status-actions button:last-child{border-color:var(--line);color:var(--muted)}.team-status-feed{border:1px solid var(--line);background:#fff;border-radius:25px;max-width:1200px;margin:0 auto 35px;padding:24px;box-shadow:0 15px 38px #06132612}.team-status-feed h2{margin:5px 0 3px;font-size:28px}.team-status-feed>div>p:not(.eyebrow){color:var(--muted);margin:0;font-size:11px}.status-bubbles{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:18px;display:grid}.status-bubbles article{background:linear-gradient(135deg,#eff8ff,#fff1f8);border-radius:15px;align-items:center;gap:10px;padding:13px;display:flex}.status-bubbles article strong,.status-bubbles article p{margin:0;display:block}.status-bubbles article strong{font-size:11px}.status-bubbles article p{color:#315067;margin-top:3px;font-size:10px;line-height:1.35}.empty-statuses{color:var(--muted);text-align:center;border:1px dashed #b9dff8;border-radius:14px;grid-column:1/-1;margin:0;padding:22px;font-size:11px}.status-moderation{background:#f3faff;border:1px solid #b9dff8;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin:0 0 18px;padding:13px 15px;display:flex}.status-moderation span,.status-moderation strong{display:block}.status-moderation span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:8px;font-weight:850}.status-moderation strong{margin-top:4px;font-size:12px}.status-moderation button{color:#b7004e;cursor:pointer;background:#fff;border:1px solid #e25b8d;border-radius:99px;padding:7px 10px;font-size:8px;font-weight:800}.athlete-extras{grid-template-columns:1.15fr .85fr;gap:18px;max-width:1200px;margin:0 auto 35px;display:grid}.reminder-card,.friends-feed{border:1px solid var(--line);background:#fff;border-radius:25px;padding:24px;box-shadow:0 15px 38px #06132612}.reminder-card h2,.friends-feed h2{margin:5px 0;font-size:28px}.reminder-card>div>p:not(.eyebrow){color:var(--muted);margin:0;font-size:11px}.reminder-days{gap:5px;margin:18px 0 10px;display:flex}.reminder-days button{border:1px solid var(--line);cursor:pointer;background:#f7fafc;border-radius:10px;flex:1;padding:9px 3px;font-size:9px}.reminder-days button.active{border-color:var(--blue);background:var(--blue);color:#fff}.reminder-actions{flex-wrap:wrap;gap:7px;display:flex}.reminder-actions input,.reminder-actions button{color:#0878c8;background:#fff;border:1px solid #b9dff8;border-radius:9px;min-height:36px;padding:0 10px;font-size:9px;font-weight:800}.reminder-card>small{color:var(--muted);margin-top:9px;font-size:8px;display:block}.friends-feed>div{max-height:205px;margin-top:14px;overflow:auto}.friends-feed>div>p{border-bottom:1px solid var(--line);grid-template-columns:24px auto 1fr auto;align-items:center;gap:6px;margin:0;padding:9px 0;font-size:10px;display:grid}.friends-feed small{color:var(--muted);font-size:8px}.exercise-guidance{z-index:5;background:#fff;border:1px solid #b9dff8;border-radius:18px;width:min(310px,100vw - 40px);max-height:calc(100vh - 140px);padding:17px;position:fixed;top:110px;right:20px;overflow:auto;box-shadow:0 18px 50px #0613262e}.exercise-guidance img,.exercise-guidance video{object-fit:cover;background:#061326;border-radius:12px;width:100%;max-height:190px}.exercise-guidance>div{background:#eff8ff;border-radius:11px;margin-top:10px;padding:11px}.exercise-guidance .personal-note{background:#fff0f7}.exercise-guidance strong,.exercise-guidance p{margin:0;display:block}.exercise-guidance p{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.45}.difficulty-check{border:1px solid var(--line);background:#fff;border-radius:16px;margin:5px 0 20px;padding:16px}.difficulty-check>strong{font-size:12px;display:block}.difficulty-check>div{gap:7px;margin-top:10px;display:flex}.difficulty-check button{cursor:pointer;background:#eff8ff;border:1px solid #b9dff8;border-radius:99px;padding:8px 10px;font-size:9px}.weekly-summary{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px;display:grid}.weekly-summary>div{border:1px solid var(--line);background:#fff;border-radius:14px;padding:13px}.weekly-summary span,.weekly-summary strong{display:block}.weekly-summary span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:7px;font-weight:850}.weekly-summary strong{margin-top:4px;font-size:22px}.weekly-summary small{color:var(--muted);font-size:9px}.coach-feature-grid{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;display:grid}.library-manager,.challenge-manager{border:1px solid var(--line);background:#fff;border-radius:18px;padding:17px}.library-manager h2,.challenge-manager h2{margin:4px 0 12px;font-size:22px}.library-manager>select,.library-manager>input,.library-manager textarea,.challenge-manager>input{border:1px solid var(--line);background:#fbfcfe;border-radius:9px;width:100%;margin-top:6px;padding:9px;font-size:10px}.library-manager textarea{resize:vertical;min-height:75px}.library-manager>div,.challenge-manager>div{gap:6px;margin-top:7px;display:flex}.library-manager button,.library-manager label,.challenge-manager button{border:1px solid var(--blue);color:#0878c8;cursor:pointer;background:#fff;border-radius:8px;padding:8px 10px;font-size:8px;font-weight:800}.library-manager label input{display:none}.library-manager .disabled{opacity:.4;cursor:not-allowed}.library-manager>small,.challenge-manager>small{color:var(--muted);margin-top:7px;font-size:8px;display:block}.challenge-manager>div label{color:var(--muted);text-transform:uppercase;flex:1;font-size:7px}.challenge-manager>div input{border:1px solid var(--line);border-radius:8px;width:100%;height:34px;margin-top:4px;padding:0 6px;font-size:9px}.exercise-name-stack{flex-direction:column;gap:4px;display:flex}.exercise-name-stack select,.exercise-name-stack input{height:32px!important}.exercise-name-stack input:last-child{background:#fff7fb!important;border-color:#f1b5d1!important;font-size:9px!important}.builder-heading>span{gap:6px;display:flex}.builder-heading>span button{border:1px solid var(--ink);cursor:pointer;background:#fff;border-radius:99px;padding:9px 11px;font-size:9px;font-weight:800}.preview-overlay{z-index:100;background:#eef5fc;position:fixed;inset:0;overflow:auto}.preview-banner{color:#fff;background:#061326;align-items:center;gap:15px;min-height:62px;padding:12px 22px;display:flex}.preview-banner strong{color:#ff198c}.preview-banner span{font-size:11px}.preview-banner button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:99px;margin-left:auto;padding:8px 12px}.preview-stage{grid-template-columns:1fr 320px;align-items:center;gap:35px;min-height:calc(100vh - 62px);padding:40px;display:grid}.preview-copy>p{color:#0878c8;text-transform:uppercase;font-size:10px;font-weight:850}.preview-copy h1{text-transform:uppercase;margin:12px 0 22px;font-size:clamp(45px,7vw,85px);font-style:italic;line-height:.9}.preview-copy img,.preview-copy video{object-fit:cover;background:#061326;border-radius:18px;width:min(520px,100%);max-height:300px}.preview-copy aside{background:#fff;border-radius:12px;max-width:520px;margin-top:10px;padding:13px}.preview-copy aside.personal{background:#fff0f7}.preview-copy aside p{color:var(--muted);margin:5px 0 0;font-size:11px}.preview-control{color:#fff;text-align:center;background:#061326;border-radius:28px;padding:30px}.preview-control>strong{font-size:70px;display:block}.preview-control>strong small{font-size:14px}.preview-control>button{background:var(--pink);color:#fff;border:0;border-radius:99px;width:100%;margin-top:18px;padding:13px;font-weight:850}.preview-control>div{justify-content:space-between;margin-top:14px;display:flex}.preview-control>div button{color:#bdd2e5;background:0 0;border:0}.account-access{max-width:1200px;color:var(--muted);margin:-18px auto 45px;font-size:10px}.account-access summary{cursor:pointer;border-radius:99px;width:max-content;margin-left:auto;padding:8px 11px;list-style:none}.account-access summary::-webkit-details-marker{display:none}.account-access summary:hover{color:var(--ink);background:#fff;box-shadow:0 6px 20px #06132612}.account-access>div{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(340px,100%);margin:8px 0 0 auto;padding:16px;box-shadow:0 12px 30px #06132614}.account-access strong{color:var(--ink);font-size:11px}.account-access p{margin:6px 0 12px;line-height:1.5}.account-access button{color:#b61461;cursor:pointer;background:#fff7fb;border:1px solid #f1b5d1;border-radius:9px;padding:8px 11px;font-size:9px;font-weight:800}@media (max-width:980px){.progress-dashboard,.motivation-grid,.athlete-extras,.coach-tools{grid-template-columns:1fr}.badge-grid{grid-template-columns:repeat(3,1fr)}.status-bubbles{grid-template-columns:repeat(2,1fr)}.coach-feature-grid,.preview-stage{grid-template-columns:1fr}.exercise-guidance{width:auto;margin:12px 0;position:static}}@media (max-width:560px){.athlete-login-screen{padding:15px}.athlete-login-card,.login-card{padding:28px 20px}.athlete-login-card h1,.login-card h1{font-size:38px}.profile-photo-control{align-items:flex-end}.profile-heading .profile-photo-control .avatar{width:70px;height:70px;display:inline-grid}.profile-photo-button{padding:7px 9px;font-size:8px}.profile-photo-control small{display:none}.today-status{grid-template-columns:1fr;margin-top:-10px}.coach-reminder{margin-top:-12px}.progress-dashboard,.motivation-grid{gap:12px}.history-card,.consistency-card,.badges-card,.team-challenge-card{padding:19px}.history-calendar{gap:4px}.history-calendar>div{min-height:45px;padding:5px}.badge-grid{grid-template-columns:repeat(2,1fr)}.score-guide-grid{grid-template-columns:1fr}.score-guide summary small{display:none}.training-status{flex-wrap:wrap;align-items:flex-start;margin:25px auto -15px;padding:13px}.training-status+.profile-screen{padding-top:32px}.status-copy{min-width:calc(100% - 55px)}.edit-status{margin-left:51px}.status-actions{margin:0 0 0 51px}.status-suggestions{display:none}.status-bubbles{grid-template-columns:1fr}.team-status-feed{padding:19px}.account-access{margin:-18px 16px 35px}.section-heading p,.profile-heading p{font-size:17px;line-height:1.5}.eyebrow{font-size:13px;line-height:1.4}.today-status span{font-size:11px}.today-status strong{font-size:18px}.coach-reminder strong{font-size:16px}.coach-reminder p{font-size:14px;line-height:1.5}.set-label,.status-pill{font-size:12px}.programme-card li{font-size:16px;line-height:1.45}.mini-heading>span,.history-legend{font-size:11px}.history-calendar span{font-size:10px}.history-calendar strong{font-size:14px}.personal-best span,.consistency-card>p:not(.eyebrow){font-size:15px;line-height:1.5}.week-compare span{font-size:12px}.badge-grid span{font-size:12px;line-height:1.35}.team-challenge-card>p:not(.eyebrow){font-size:15px;line-height:1.55}.challenge-score span{font-size:13px}.team-challenge-card small{font-size:14px;line-height:1.45}.achievement-card{padding:22px}.achievement-kicker{font-size:11px}.achievement-person p{font-size:15px;line-height:1.45}.achievement-stats span{font-size:11px}.achievement-stats strong{font-size:28px}.achievement-stats small{font-size:14px}.score-explanation{font-size:15px;line-height:1.6}.score-guide summary{padding:17px}.score-guide summary>span{width:32px;height:32px;font-size:17px}.score-guide summary strong{font-size:18px}.score-guide-grid>div{padding:22px 18px}.score-guide-grid b{font-size:12px}.score-guide-grid strong{font-size:18px}.score-guide-grid p{font-size:15px;line-height:1.55}.leaderboard{margin-left:0;margin-right:0}.leader-row{grid-template-columns:62px minmax(0,1fr) 48px;gap:10px;padding:16px 12px}.leader-head{font-size:11px}.rank{font-size:15px;line-height:1.3}.leader-athlete strong{font-size:17px}.leader-athlete .avatar{width:46px;height:46px}.leader-athlete em{font-size:9px}.points{font-size:23px}.board-note{font-size:14px;line-height:1.5}.status-copy>span{font-size:11px}.status-copy>strong{font-size:17px}.edit-status,.status-actions button{font-size:13px}.status-editor input{font-size:16px}.status-editor>small{font-size:11px}.team-status-feed>div>p:not(.eyebrow),.status-bubbles article strong,.status-bubbles article p,.empty-statuses{font-size:14px;line-height:1.45}.reminder-card>div>p:not(.eyebrow){font-size:15px;line-height:1.5}.reminder-days button{min-height:42px;font-size:12px}.reminder-actions input,.reminder-actions button{min-height:44px;font-size:14px}.reminder-card>small{font-size:13px;line-height:1.45}.friends-feed>div>p{grid-template-columns:28px auto 1fr;gap:8px;font-size:14px;line-height:1.4}.friends-feed small{grid-column:2/-1;font-size:12px}.exercise-guidance strong{font-size:15px}.exercise-guidance p{font-size:15px;line-height:1.5}.difficulty-check>strong{font-size:16px}.difficulty-check button{font-size:13px}.account-access{font-size:14px}.account-access strong{font-size:15px}.account-access button{min-height:42px;font-size:13px}}.readiness-card,.weekly-wrapped,.technique-panel,.coach-action-centre,.coach-technique-checks{background:#ffffffe6;border:1px solid #07558c24;border-radius:24px;max-width:1180px;margin:20px auto;padding:24px;box-shadow:0 14px 38px #06365c14}.readiness-card{border-left:6px solid #98b7cb;grid-template-columns:1.25fr 1fr;align-items:end;gap:16px;display:grid}.readiness-card.readiness-ready{border-left-color:#16b778}.readiness-card.readiness-sore{border-left-color:#f5a623}.readiness-card.readiness-pain{border-left-color:#e4455d}.readiness-card h2,.technique-panel h2,.coach-action-centre h2,.coach-technique-checks h2{margin:4px 0 7px}.readiness-card p,.technique-panel p{color:var(--muted);margin:0;line-height:1.55}.readiness-card>input{border:1px solid #c7dce8;border-radius:13px;min-height:48px;padding:12px 14px;font-size:15px}.readiness-card>div:last-child{grid-column:1/-1;gap:9px;display:flex}.readiness-card button{cursor:pointer;background:#f5faff;border:1px solid #bdd6e5;border-radius:13px;flex:1;min-height:48px;font-size:14px;font-weight:850}.readiness-card button.active{color:#075b96;background:#e1f2ff;border-color:#087fd1}.weekly-wrapped{color:#fff;background:linear-gradient(135deg,#051b35,#073f70 62%,#0798f6);position:relative;overflow:hidden}.weekly-wrapped:after{content:"";border:55px solid #ffffff12;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-110px;right:-80px}.weekly-wrapped>div:first-child{color:#79d5ff;letter-spacing:.15em;justify-content:space-between;font-size:12px;font-weight:900;display:flex}.weekly-wrapped>p{color:#bad7ec;margin:20px 0 3px}.weekly-wrapped h2{text-transform:uppercase;margin:0;font-size:34px;font-style:italic}.weekly-wrapped section{gap:12px;margin:22px 0;display:flex}.weekly-wrapped section div{background:#ffffff12;border:1px solid #ffffff29;border-radius:15px;min-width:120px;padding:14px}.weekly-wrapped section strong,.weekly-wrapped section span{display:block}.weekly-wrapped section strong{font-size:28px}.weekly-wrapped section span,.weekly-wrapped small{color:#c9deee;font-size:13px}.challenge-live{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.challenge-live span,.challenge-live b{letter-spacing:.08em;border-radius:99px;padding:6px 9px;font-size:11px;font-weight:900}.challenge-live span{color:#fff;background:#ff1c7d}.challenge-live b{color:#0872b8;background:#e6f5ff}.challenge-track.boss{border:2px solid #051b35;height:16px}.challenge-milestones{justify-content:space-between;margin:8px 0 12px;display:flex}.challenge-milestones span{color:#71879a;background:#e6eef4;border-radius:50%;place-items:center;width:29px;height:29px;font-size:11px;font-weight:900;display:grid}.challenge-milestones span.hit{color:#fff;background:#0798f6;box-shadow:0 0 0 4px #0798f624}.badge-grid span small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.badges-card.frame-2,.badges-card.frame-3{box-shadow:inset 0 0 0 3px #72cfff,0 14px 34px #0798f61f}.badges-card.frame-3{box-shadow:inset 0 0 0 3px #ff1c7d,0 14px 34px #ff1c7d21}.technique-panel{grid-template-columns:1fr 1fr;gap:20px;display:grid}.technique-panel form{gap:9px;display:grid}.technique-panel select,.technique-panel textarea{background:#fff;border:1px solid #c5dce9;border-radius:12px;padding:12px;font-size:15px}.technique-panel label,.technique-panel button{color:#09669f;text-align:center;cursor:pointer;background:#eaf6ff;border:0;border-radius:12px;min-height:44px;padding:11px 14px;font-size:14px;font-weight:850}.technique-panel label input{display:none}.technique-panel button{color:#fff;background:#061b35}.technique-panel>small{color:#087d52;grid-column:1/-1;font-weight:800}.technique-history{grid-column:1/-1;gap:10px;display:grid}.technique-history>div{background:#f2f8fc;border-radius:15px;grid-template-columns:150px 1fr;gap:14px;padding:12px;display:grid}.technique-history video{object-fit:cover;background:#071522;border-radius:10px;width:150px;height:90px}.technique-history span>*{margin:3px 0;display:block}.technique-history p{color:#124d72}.team-reactions{background:#f3faff;border:1px solid #bfe1f5;border-radius:18px;justify-content:space-between;gap:20px;margin-top:18px;padding:18px;display:flex}.team-reactions h3,.team-reactions p{margin:3px 0}.team-reactions>div:last-child{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.team-reactions button{cursor:pointer;background:#fff;border:1px solid #b9d8ea;border-radius:99px;min-height:42px;padding:8px 11px;font-size:13px;font-weight:800}.team-reactions button.active{color:#fff;background:#0798f6;border-color:#0798f6}.workout-countdown,.round-flash{z-index:1000;color:#fff;text-align:center;background:#031122f0;place-content:center;display:grid;position:fixed;inset:0}.workout-countdown span{color:#77d5ff;letter-spacing:.25em;font-size:16px;font-weight:900}.workout-countdown strong{font-size:clamp(120px,25vw,280px);font-style:italic;line-height:.9}.round-flash{letter-spacing:.05em;background:linear-gradient(135deg,#071a32,#0798f6);font-size:clamp(55px,14vw,140px);font-style:italic;font-weight:950;animation:.9s both round-pop}.round-flash small{font-size:18px;font-style:normal}@keyframes round-pop{0%{opacity:0;transform:scale(.75)}25%{opacity:1;transform:scale(1.03)}to{opacity:0;transform:scale(1.1)}}.immersive-mode .exercise-stage h1{font-size:clamp(42px,8vw,92px)}.immersive-mode .workout-button{min-height:64px;font-size:18px}.workout-status{flex-wrap:wrap}.difficulty-check.detailed{gap:11px;display:grid}.difficulty-check.detailed label{color:var(--muted);text-align:left;gap:5px;font-size:13px;display:grid}.difficulty-check.detailed select,.difficulty-check.detailed textarea{border:1px solid #c4dae8;border-radius:11px;width:100%;padding:12px;font-size:15px}.feedback-issues{grid-template-columns:repeat(4,1fr);gap:7px;display:grid!important}.feedback-issues button.active{color:#fff;background:#0798f6!important}.reminder-actions label{color:var(--muted);gap:3px;font-size:11px;font-weight:800;display:grid}.reminder-actions label input{min-height:40px}.mobile-dock{display:none}.coach-action-centre{max-width:none;margin:18px 0}.action-centre-title{justify-content:space-between;align-items:center;display:flex}.action-centre-title>span{color:#c32245;background:#fff0f3;border-radius:99px;padding:7px 10px;font-size:12px;font-weight:850}.action-centre-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:15px;display:grid}.action-centre-grid article{background:#f8fbfd;border:1px solid #d6e6ef;border-radius:15px;padding:14px}.action-centre-grid article.urgent{background:#fff1f3;border-color:#f2a3b0}.action-centre-grid article.positive{background:#effbf6;border-color:#99dec2}.action-centre-grid strong,.action-centre-grid b{display:block}.action-centre-grid b{margin:7px 0;font-size:27px}.action-centre-grid p{color:#5c7183;margin:0;font-size:12px;line-height:1.5}.coach-technique-checks{max-width:none;margin:18px 0}.coach-technique-checks article{background:#f2f8fc;border-radius:15px;grid-template-columns:240px 1fr;gap:16px;margin-top:12px;padding:14px;display:grid}.coach-technique-checks video{background:#061525;border-radius:11px;width:240px;max-height:180px}.coach-technique-checks textarea{border:1px solid #c4dae8;border-radius:10px;width:100%;min-height:80px;margin:8px 0;padding:10px;display:block}.coach-technique-checks button{color:#fff;background:#061b35;border:0;border-radius:9px;min-height:42px;padding:8px 13px;font-weight:800}.bulk-assign>div{flex-wrap:wrap;gap:6px;display:flex!important}.bulk-assign label{background:#eef5f9;border-radius:7px;align-items:center;gap:4px;padding:5px 7px;display:flex!important}.bulk-assign input{width:auto!important}.programme-settings input[type=date]{border:1px solid #c8dce7;border-radius:9px;min-height:44px;padding:8px 10px;font-size:14px}@media (max-width:900px){.action-centre-grid{grid-template-columns:repeat(2,1fr)}.readiness-card,.technique-panel{grid-template-columns:1fr}.readiness-card>div:last-child,.technique-panel>small,.technique-history{grid-column:1}.team-reactions{flex-direction:column}.team-reactions>div:last-child{justify-content:flex-start}}@media (max-width:760px){.app-shell{padding-bottom:86px}.topbar .nav-actions{display:none}.mobile-dock{z-index:700;left:10px;right:10px;bottom:max(9px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#04182ff5;border:1px solid #ffffff80;border-radius:20px;grid-template-columns:repeat(5,1fr);padding:7px;display:grid;position:fixed;box-shadow:0 15px 45px #010d1c59}.mobile-dock button{color:#a9c2d5;background:0 0;border:0;border-radius:14px;min-width:0;min-height:54px;font-size:11px;font-weight:800;position:relative}.mobile-dock button span{margin-bottom:3px;font-size:19px;display:block}.mobile-dock button.active{color:#fff;background:#0d426d}.mobile-dock button b{color:#fff;background:#ff1c7d;border-radius:50%;place-items:center;width:17px;height:17px;font-size:10px;display:grid;position:absolute;top:3px;right:8px}.readiness-card,.weekly-wrapped,.technique-panel{margin:14px 12px;padding:18px}.readiness-card>div:last-child{grid-template-columns:1fr;display:grid}.weekly-wrapped h2{font-size:27px}.weekly-wrapped section{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.weekly-wrapped section div{min-width:0;padding:11px}.weekly-wrapped section strong{font-size:22px}.technique-history>div{grid-template-columns:105px 1fr}.technique-history video{width:105px;height:78px}.feedback-issues{grid-template-columns:1fr 1fr}.coach-technique-checks article{grid-template-columns:1fr}.coach-technique-checks video{width:100%}.action-centre-grid{grid-template-columns:1fr}.action-centre-grid p,.team-reactions button{font-size:14px}}@media (max-width:560px){body{font-size:16px}.profile-screen p,.athlete-extras p,.team-screen p,.board-screen p{font-size:15px;line-height:1.55}.eyebrow,.set-label,.status-pill,.history-legend,.badge-grid span,.friends-feed small,.team-challenge-card small{font-size:13px}.programme-card li,.today-status span,.today-status strong,.friends-feed>div>p,.score-explanation,.score-guide-grid p{font-size:15px}.readiness-card p,.technique-panel p,.weekly-wrapped small{font-size:14px}.readiness-card button,.technique-panel button,.technique-panel label{font-size:15px}.mobile-dock button{font-size:12px}.action-centre-title{flex-direction:column;align-items:flex-start;gap:8px}}.nav-link{position:relative}.team-icon,.message-icon{margin-right:5px}.message-link>b{background:var(--pink);color:#fff;border-radius:99px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:10px;display:grid;position:absolute;top:-10px;right:-7px;box-shadow:0 3px 8px #ff198c4d}.team-screen,.message-screen{max-width:1200px;margin:0 auto;padding:54px 0 35px}.team-heading-icon{filter:drop-shadow(0 9px 10px #0613261f);font-size:64px}.friend-layout{grid-template-columns:320px minmax(0,1fr);gap:18px;display:grid}.friend-list{border:1px solid var(--line);background:#ffffffb3;border-radius:24px;max-height:720px;padding:8px;overflow:auto;box-shadow:0 15px 38px #06132612}.friend-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;width:100%;padding:11px;display:grid}.friend-list button:hover,.friend-list button.active{background:#fff;box-shadow:0 6px 18px #06132614}.friend-list button>span:not(.avatar){min-width:0}.friend-list strong,.friend-list small{display:block}.friend-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;overflow:hidden}.friend-list b{color:var(--blue);font-size:19px}.friend-profile{background:#fff;border-radius:28px;padding:28px;box-shadow:0 18px 45px #0613261a}.friend-profile-head{align-items:center;gap:18px;display:flex}.friend-profile-head h2{text-transform:uppercase;letter-spacing:-.055em;margin:4px 0;font-size:40px;font-style:italic}.friend-profile-head blockquote{color:#315067;margin:7px 0 0;font-size:14px}.friend-stats{grid-template-columns:repeat(4,1fr);gap:9px;margin:25px 0;display:grid}.friend-stats>div{background:linear-gradient(145deg,#eff8ff,#fff1f8);border-radius:15px;padding:15px}.friend-stats span,.friend-stats strong{display:block}.friend-stats span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:850}.friend-stats strong{margin-top:5px;font-size:24px}.friend-stats small{color:var(--muted);margin-left:2px;font-size:11px}.friend-attendance{border:1px solid var(--line);background:#f8fbfd;border-radius:20px;padding:20px}.friend-attendance h3,.friend-achievements h3{margin:0;font-size:20px}.friend-attendance>div>p{color:var(--muted);margin:5px 0 15px;font-size:11px}.attendance-days{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.attendance-days>div{color:#72808d;background:#edf1f4;border-radius:12px;flex-direction:column;align-items:center;min-height:76px;padding:8px 4px;display:flex;position:relative}.attendance-days .done{color:#fff;background:linear-gradient(145deg,#0aa9f7,#0872e9)}.attendance-days .missed{color:#b82764;background:#fff0f4}.attendance-days .today{outline:2px solid var(--pink);background:#fff}.attendance-days .unassigned{opacity:.55}.attendance-days span{text-transform:uppercase;font-size:9px}.attendance-days strong{margin:3px 0;font-size:17px}.attendance-days small{font-size:9px}.attendance-days em{color:#ffe16b;font-size:11px;font-style:normal;position:absolute;top:2px;right:4px}.friend-achievements{margin-top:18px}.friend-achievements>div{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.friend-achievements>div>span{background:linear-gradient(145deg,#e8f7ff,#ffe9f4);border-radius:99px;padding:9px 12px;font-size:12px;font-weight:750}.friend-achievements b{margin-right:6px}.friend-achievements>p{color:var(--muted);font-size:13px}.message-layout{grid-template-columns:.75fr 1.25fr;gap:18px;display:grid}.message-compose,.message-thread{background:#fff;border-radius:25px;padding:24px;box-shadow:0 15px 38px #06132614}.message-compose h2,.message-thread h2{margin:0;font-size:28px}.message-categories{gap:7px;margin:17px 0 10px;display:flex}.message-categories button{border:1px solid var(--line);cursor:pointer;background:#f7fafc;border-radius:12px;flex:1;padding:10px;font-size:11px;font-weight:800}.message-categories button.active{border-color:var(--blue);color:#0878c8;background:#e8f7ff}.message-compose textarea{resize:vertical;border:1px solid #b9dff8;border-radius:14px;width:100%;min-height:170px;padding:14px;font-size:14px;line-height:1.5}.message-compose>div:not(.message-categories){justify-content:space-between;align-items:center;gap:10px;margin-top:9px;display:flex}.message-compose>div>small{color:var(--muted)}.message-compose>div>button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:99px;padding:11px 15px;font-weight:850}.message-notice{color:#0878c8;font-size:12px}.message-thread>div:first-child{justify-content:space-between;align-items:center;display:flex}.message-thread>div:first-child>span{color:#b61461;background:#fff0f7;border-radius:99px;padding:5px 8px;font-size:10px;font-weight:800}.message-bubbles{max-height:470px;margin-top:15px;padding:4px;overflow:auto}.message-bubbles>div{border-radius:16px;width:min(82%,520px);margin:8px 0;padding:11px 14px}.message-bubbles .from-athlete{color:#fff;background:linear-gradient(145deg,#078ff0,#0668df);border-bottom-right-radius:4px;margin-left:auto}.message-bubbles .from-coach{background:#eef3f7;border-bottom-left-radius:4px}.message-bubbles small{opacity:.75;font-size:9px}.message-bubbles p{margin:5px 0 0;font-size:14px;line-height:1.45}.empty-messages{text-align:center;color:var(--muted);padding:55px 20px}.empty-messages>span,.empty-messages>strong{display:block}.empty-messages>span{font-size:35px}.empty-messages>strong{color:var(--ink);margin-top:8px}.coach-messages{background:linear-gradient(135deg,#f3faff,#fff3f9);border:1px solid #b9dff8;border-radius:20px;margin-bottom:18px;padding:18px}.coach-message-heading{justify-content:space-between;align-items:flex-end;display:flex}.coach-message-heading h2{margin:3px 0 0;font-size:23px}.coach-message-heading>span{color:#b61461;background:#fff;border-radius:99px;padding:5px 8px;font-size:8px;font-weight:850}.coach-message-grid{grid-template-columns:1.2fr .8fr;gap:10px;margin-top:14px;display:grid}.coach-thread{background:#fff;border-radius:14px;max-height:280px;padding:10px;overflow:auto}.coach-thread>div:not(.empty-coach-thread){border-radius:12px;width:85%;margin:6px 0;padding:9px 11px}.coach-thread .from-coach{background:#e8f7ff;margin-left:auto}.coach-thread .from-athlete{background:#fff0f7}.coach-thread small,.coach-thread time{color:var(--muted);font-size:7px;display:block}.coach-thread p{margin:4px 0;font-size:10px;line-height:1.4}.empty-coach-thread{color:var(--muted);text-align:center;padding:50px 10px;font-size:10px}.coach-compose{background:#fff;border-radius:14px;padding:10px}.coach-compose>div:first-child{gap:5px;display:flex}.coach-compose>div:first-child button,.quick-reminders button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:6px 8px;font-size:8px;font-weight:800}.coach-compose>div:first-child button.active{border-color:var(--blue);color:#0878c8;background:#e8f7ff}.quick-reminders{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.quick-reminders button{color:#b61461;border-color:#f1b5d1}.coach-compose textarea{border:1px solid var(--line);resize:vertical;border-radius:9px;width:100%;min-height:78px;margin-top:7px;padding:9px;font-size:10px}.send-coach-message{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:9px;width:100%;margin-top:6px;padding:8px;font-size:9px;font-weight:850}.coach-compose>p{color:#0878c8;margin:6px 0 0;font-size:8px}@media (max-width:980px){.friend-layout,.message-layout,.coach-message-grid{grid-template-columns:1fr}.friend-list{max-height:none;display:flex;overflow:auto}.friend-list button{min-width:240px}.coach-thread{max-height:360px}}@media (max-width:560px){.nav-actions{gap:6px}.nav-link{width:40px;height:40px}.team-label,.message-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.team-icon,.message-icon{margin:0;font-size:18px;display:block}.team-screen,.message-screen{padding-top:32px}.team-heading-icon{display:none}.friend-list{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0 -18px;padding:8px 18px}.friend-list button{background:#fff;min-width:225px}.friend-profile{margin-top:3px;padding:20px}.friend-profile-head .avatar{width:72px;height:72px}.friend-profile-head h2{font-size:32px}.friend-profile-head blockquote{font-size:15px;line-height:1.45}.friend-stats{grid-template-columns:1fr 1fr}.friend-stats span{font-size:11px}.friend-stats strong{font-size:26px}.friend-attendance>div>p{font-size:14px;line-height:1.45}.attendance-days{gap:3px}.attendance-days>div{min-height:82px;padding:7px 2px}.attendance-days span{font-size:9px}.attendance-days strong{font-size:16px}.attendance-days small{writing-mode:vertical-rl;font-size:9px}.friend-achievements>div>span,.friend-achievements>p{font-size:14px}.message-compose,.message-thread{padding:19px}.message-categories{flex-direction:column}.message-categories button{min-height:44px;font-size:14px}.message-compose textarea{font-size:16px}.message-compose>div>button{min-height:44px;font-size:14px}.message-bubbles small{font-size:12px}.message-bubbles p{font-size:16px}.message-bubbles>div{width:90%}}.brand small,.site-footer,.board-note,.live-pill,.panel-title span,.upload-button,.detect-note,.activity-item span,.activity-item time{font-size:12px;line-height:1.45}.notice,.back-button,.eyebrow,.workout-nav,.set-label,.status-pill,.timer-ring small,.rep-number small,.success-stat span,.leader-head{font-size:12px;line-height:1.4}.athlete-login-card>p:not(.eyebrow),.login-card>p:not(.eyebrow),.admin-gate p:not(.eyebrow),.confirm-card>p:not(.eyebrow){font-size:16px;line-height:1.55}.athlete-login-card label>span,.login-card label>span{font-size:13px;line-height:1.4}.athlete-login-card input,.login-card input{font-size:17px}.athlete-login-card .primary-button,.login-card .primary-button{font-size:15px}.coach-entry{font-size:13px;line-height:1.45}.success-stat span,.leader-head,.today-status span,.mini-heading>span,.history-legend,.history-calendar span,.week-compare span,.badge-grid span,.achievement-kicker,.achievement-stats span,.score-guide-grid b,.status-copy>span,.status-editor>small,.friends-feed small{font-size:12px}.coach-reminder p,.consistency-card>p:not(.eyebrow),.team-challenge-card>p:not(.eyebrow),.team-challenge-card small,.achievement-person p,.achievement-stats small,.score-explanation,.score-guide-grid p,.team-status-feed>div>p:not(.eyebrow),.status-bubbles article p,.empty-statuses,.reminder-card>div>p:not(.eyebrow),.reminder-card>small,.friends-feed>div>p,.exercise-guidance p{font-size:14px;line-height:1.5}.exercise-guidance strong,.difficulty-check>strong{font-size:15px}.difficulty-check button,.edit-status,.status-actions button,.reminder-days button,.reminder-actions button,.account-access button{font-size:13px}.account-access{font-size:13px;line-height:1.5}.account-access strong{font-size:14px}.friend-list strong{font-size:15px}.friend-list small{font-size:13px;line-height:1.4}.friend-stats span{font-size:12px}.friend-stats small,.friend-attendance>div>p{font-size:13px;line-height:1.45}.attendance-days span,.attendance-days small{font-size:11px;line-height:1.3}.friend-achievements>div>span,.message-categories button{font-size:13px}.message-compose>div>small,.message-notice,.message-thread>div:first-child>span,.message-bubbles small{font-size:12px;line-height:1.4}.message-compose>div>button{font-size:13px}.admin-account strong{font-size:14px}.admin-account small,.admin-account>a{font-size:12px;line-height:1.4}.admin-roster nav strong{font-size:14px}.admin-roster nav small,.admin-photo label{font-size:12px;line-height:1.35}.roster-filters button{min-height:34px;font-size:12px!important}.weekly-summary span{font-size:11px;line-height:1.35}.weekly-summary small,.coach-message-heading>span{font-size:12px}.coach-thread small,.coach-thread time{font-size:11px;line-height:1.4}.coach-thread p,.empty-coach-thread{font-size:13px;line-height:1.45}.coach-compose>div:first-child button,.quick-reminders button{font-size:12px}.coach-compose textarea{font-size:14px;line-height:1.45}.send-coach-message{font-size:13px}.coach-compose>p{font-size:12px;line-height:1.4}.library-manager>select,.library-manager>input,.library-manager textarea,.challenge-manager>input,.challenge-manager>div input{font-size:14px}.library-manager button,.library-manager label,.challenge-manager button{font-size:12px}.library-manager>small,.challenge-manager>small,.challenge-manager>div label{font-size:12px;line-height:1.4}.program-tabs button>span,.program-tabs small{font-size:12px;line-height:1.35}.programme-settings span{font-size:14px}.programme-settings small{font-size:12px;line-height:1.4}.programme-settings select{font-size:14px}.builder-heading>button,.builder-heading>span button{font-size:13px}.exercise-head,.exercise-row label>span{font-size:12px}.exercise-row input,.exercise-row select,.exercise-row textarea,.exercise-name-stack input:last-child{font-size:14px!important}.move-controls button,.exercise-actions button,.amount-field small{font-size:13px}.coach-tools label>span,.coach-tools small,.coach-tools button,.coach-tools input,.coach-tools select,.coach-tools textarea{font-size:13px;line-height:1.4}.preview-banner span,.preview-copy>p,.preview-copy aside p{font-size:13px;line-height:1.45}.preview-banner button,.preview-control>button,.preview-control>div button{font-size:13px}@media (max-width:760px){.athlete-login-card>p:not(.eyebrow),.login-card>p:not(.eyebrow){font-size:16px}.athlete-login-card label>span,.login-card label>span{font-size:14px}.athlete-login-card input,.login-card input,.admin-shell input,.admin-shell select,.admin-shell textarea{font-size:16px!important}.athlete-login-card .primary-button,.login-card .primary-button{min-height:48px;font-size:16px}.coach-entry{font-size:14px}.admin-account strong{font-size:15px}.admin-account small,.admin-account>a{font-size:13px}.roster-filters button,.admin-roster nav small,.admin-photo label{font-size:13px!important}.admin-roster nav strong{font-size:16px}.weekly-summary span{font-size:12px}.weekly-summary small{font-size:13px}.coach-message-heading>span,.coach-thread small,.coach-thread time,.coach-compose>p{font-size:12px}.coach-thread p,.empty-coach-thread{font-size:15px}.coach-compose>div:first-child button,.quick-reminders button,.send-coach-message,.library-manager button,.library-manager label,.challenge-manager button,.builder-heading>button,.builder-heading>span button,.coach-tools button,.preview-banner button,.preview-control>button,.preview-control>div button{min-height:42px;font-size:14px}.library-manager>small,.challenge-manager>small,.challenge-manager>div label,.program-tabs button>span,.program-tabs small,.programme-settings small,.exercise-head,.exercise-row label>span,.coach-tools label>span,.coach-tools small{font-size:13px}.programme-settings span{font-size:15px}.move-controls button,.exercise-actions button,.amount-field small{font-size:14px}}@media (max-width:560px){.site-footer,.brand small{font-size:13px}.coach-button{font-size:14px}.notice,.back-button,.workout-nav,.set-label,.status-pill,.timer-ring small,.rep-number small,.success-stat span,.leader-head{font-size:13px}.friend-list small,.friend-stats small,.friend-attendance>div>p{font-size:14px}.friend-stats span{font-size:13px}.attendance-days{gap:7px;padding-bottom:6px;display:flex;overflow-x:auto}.attendance-days>div{flex:0 0 64px;min-height:78px;padding:8px 4px}.attendance-days span,.attendance-days small{writing-mode:horizontal-tb;font-size:12px}.message-compose>div>small,.message-notice,.message-thread>div:first-child>span,.message-bubbles small{font-size:13px}.coach-feature-grid,.weekly-summary{grid-template-columns:1fr 1fr}.weekly-summary>div{padding:14px}.weekly-summary span{font-size:13px}.weekly-summary small{font-size:14px}.program-tabs button{grid-template-columns:28px 1fr;padding:12px 9px}.program-tabs strong{font-size:15px}.program-tabs small{font-size:13px}.programme-settings{grid-template-columns:1fr}.programme-settings span{font-size:16px}.programme-settings small{font-size:13px}.programme-settings select{font-size:16px}.preview-banner{flex-wrap:wrap;align-items:flex-start}.preview-banner span,.preview-copy>p,.preview-copy aside p{font-size:14px}}.admin-account>button{font-size:13px}.coach-tools span,.status-moderation span{font-size:13px;line-height:1.4}.amount-control span,.admin-savebar strong{font-size:13px}.coach-tools>div>span{font-size:13px;line-height:1.4}.exercise-row .amount-control>span{font-size:13px}@media (max-width:760px){.admin-account>button{font-size:13px}.coach-tools span,.status-moderation span,.amount-control span,.admin-savebar strong{font-size:14px}}.team-space-heading{margin-bottom:24px}.team-space-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.team-space-toolbar>strong{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:14px}.team-space-toolbar>div{flex-wrap:wrap;gap:7px;display:flex}.team-space-toolbar button{color:#315067;cursor:pointer;background:#ffffffc2;border:1px solid #bddced;border-radius:999px;min-height:40px;padding:8px 14px;font-size:13px;font-weight:800}.team-space-toolbar button.active{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 7px 16px #0798f633}.teammate-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.teammate-card{text-align:left;cursor:pointer;background:#ffffffe6;border:1px solid #0613261a;border-radius:20px;min-width:0;padding:17px;transition:transform .18s,box-shadow .18s,border-color .18s;box-shadow:0 10px 28px #0613260f}:is(.teammate-card:hover,.teammate-card:focus-visible,.teammate-card.selected){border-color:#8fcef4;outline:none;transform:translateY(-3px);box-shadow:0 16px 34px #0798f624}.teammate-card.is-done{box-shadow:inset 0 4px #16b778,0 10px 28px #0613260f}.teammate-card-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.teammate-card-head .avatar{width:54px;height:54px}.teammate-card-head>span{min-width:0}.teammate-card-head strong,.teammate-card-head small{display:block}.teammate-card-head strong{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.teammate-card-head strong em{background:var(--pink);color:#fff;text-transform:uppercase;letter-spacing:.05em;vertical-align:2px;border-radius:99px;margin-left:7px;padding:3px 6px;font-size:10px;font-style:normal;display:inline-block}.teammate-card-head small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:13px;overflow:hidden}.teammate-card-head>b{color:#087fd1;text-align:right;min-width:38px;font-size:23px}.teammate-card-head>b:after{content:" pts";color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:700;display:block}.teammate-today{grid-template-columns:1fr 1fr;gap:7px;margin-top:15px;display:grid}.teammate-today span{color:#53677a;text-align:center;background:#f0f5f9;border-radius:10px;padding:8px 9px;font-size:12px;font-weight:800}.teammate-today span.done{color:#087d52;background:#e4f8ef}.teammate-card-foot{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding-top:11px;font-size:12px;display:flex}.teammate-card-foot span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teammate-card-foot .latest-badge{color:#9a4a00;font-weight:750}.empty-team-filter{color:var(--muted);text-align:center;background:#ffffffa6;border:1px dashed #9fcfee;border-radius:18px;grid-column:1/-1;margin:0;padding:40px;font-size:15px}.teammate-detail{margin-top:22px;scroll-margin-top:110px}.close-teammate{border:1px solid var(--line);color:#315067;cursor:pointer;background:#f7fbff;border-radius:99px;margin:0 0 18px;padding:9px 12px;font-size:13px;font-weight:800}.teammate-consistency{background:#f4faff;border:1px solid #c9e4f4;border-radius:18px;margin-top:18px;padding:20px}.teammate-consistency h3{margin:6px 0;font-size:20px}.teammate-consistency>div>p:not(.eyebrow){color:var(--muted);margin:0;font-size:14px;line-height:1.5}.teammate-consistency-track{background:#dce9f2;border-radius:99px;height:9px;margin-top:16px;overflow:hidden}.teammate-consistency-track span{border-radius:inherit;background:linear-gradient(90deg,var(--blue),#16b778);height:100%;transition:width .35s;display:block}@media (max-width:980px){.teammate-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.team-space-heading{margin-bottom:20px}.team-space-toolbar{flex-direction:column;align-items:flex-start}.team-space-toolbar>strong{font-size:13px}.team-space-toolbar>div{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.team-space-toolbar button{min-height:44px;padding:8px 6px;font-size:13px}.teammate-card-grid{grid-template-columns:1fr}.teammate-card{padding:16px}.teammate-card-head strong{font-size:18px}.teammate-card-head small{font-size:14px}.teammate-today span,.teammate-card-foot{font-size:13px}.teammate-detail{padding:20px}.teammate-consistency{padding:17px}.teammate-consistency h3{font-size:19px}.teammate-consistency>div>p:not(.eyebrow){font-size:15px}}.progress-dashboard,.motivation-grid,.athlete-extras,.coach-feature-grid,.coach-tools,.exercise-builder{content-visibility:auto;contain-intrinsic-size:360px}@media (max-width:760px){.topbar,.mobile-dock,.admin-savebar{-webkit-backdrop-filter:none;backdrop-filter:none}}.coach-primary-nav{align-items:center;gap:5px;margin-left:24px;display:flex}.coach-primary-nav button{color:#5a7182;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;min-height:38px;padding:7px 13px;font-size:13px;font-weight:850;position:relative}.coach-primary-nav button:hover,.coach-primary-nav button.active{color:#087fd1;background:#eaf7ff;border-color:#b4dcf2}.coach-primary-nav button b{background:var(--pink);color:#fff;border-radius:50%;place-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;display:grid;position:absolute;top:-5px;right:-4px}.coach-global-notice{color:#086ca5;background:#ecf8ff;border:1px solid #b5def4;border-radius:12px;max-width:1320px;margin:14px auto 0;padding:11px 16px;font-size:14px;font-weight:750}.coach-today,.coach-messages-hub{max-width:1320px;margin:0 auto;padding:38px 30px 80px}.coach-today-heading,.coach-hub-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:24px;display:flex}.coach-today-heading h1,.coach-hub-heading h1{color:#07192f;letter-spacing:-.055em;text-transform:uppercase;max-width:700px;margin:5px 0 8px;font-size:clamp(30px,4vw,54px);font-style:italic;line-height:.96}.coach-today-heading p:not(.eyebrow),.coach-hub-heading p:not(.eyebrow){max-width:700px;color:var(--muted);margin:0;font-size:16px;line-height:1.55}.coach-today-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.coach-today-actions button{white-space:nowrap}.secondary-button{color:#174d70;cursor:pointer;background:#fff;border:1px solid #c2dbe8;border-radius:12px;min-height:44px;padding:10px 15px;font-size:13px;font-weight:850}.coach-today-metrics{grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:18px;display:grid}.coach-today-metrics button{text-align:left;cursor:pointer;background:#fff;border:1px solid #d1e3ed;border-radius:17px;min-height:96px;padding:15px;box-shadow:0 8px 24px #051a300d}.coach-today-metrics button:hover,.coach-today-metrics button.active{background:#effaff;border-color:#6dc0ef;transform:translateY(-2px)}.coach-today-metrics span,.coach-today-metrics strong{display:block}.coach-today-metrics span{color:#60788a;letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:850}.coach-today-metrics strong{color:#07192f;margin-top:7px;font-size:30px}.coach-today-metrics strong small{color:var(--muted);margin-left:3px;font-size:14px}.coach-today-grid{grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);align-items:start;gap:18px;display:grid}.coach-status-board,.coach-attention-card,.coach-quick-actions,.coach-inbox-card,.coach-heatmap-card,.coach-challenge-card,.coach-bulk-reminder{background:#ffffffe6;border:1px solid #cfe3ed;border-radius:22px;padding:20px;box-shadow:0 15px 38px #051a300f}.coach-status-board .panel-title,.coach-inbox-card .panel-title,.coach-heatmap-card .panel-title{margin-bottom:12px}.coach-status-list{gap:6px;display:grid}.coach-status-row{text-align:left;cursor:pointer;background:#f7fbfd;border:1px solid #0000;border-radius:14px;grid-template-columns:auto minmax(100px,1.2fr) auto auto minmax(130px,1fr) auto;align-items:center;gap:10px;width:100%;padding:11px;display:grid}.coach-status-row:hover{background:#eef9ff;border-color:#a9d9f2}.coach-status-row .avatar{width:42px;height:42px}.coach-status-name{min-width:0}.coach-status-name strong,.coach-status-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.coach-status-name strong{font-size:15px}.coach-status-name small{color:var(--muted);margin-top:3px;font-size:12px}.coach-status-row .status-pill{text-align:center;border-radius:999px;min-width:84px;padding:6px 8px;font-size:11px;font-weight:850;display:inline-block}.coach-status-row .status-pill.complete{color:#087d52;background:#e4f8ef}.coach-status-row .status-pill.progress{color:#946100;background:#fff5dc}.coach-status-row .status-pill.not-started{color:#687d8d;background:#edf2f5}.coach-status-progress b,.coach-status-progress small{display:block}.coach-status-progress b{color:#087fd1;font-size:18px}.coach-status-progress small,.coach-status-week{color:var(--muted);white-space:nowrap;font-size:11px}.coach-status-week{text-overflow:ellipsis;overflow:hidden}.row-arrow{color:#087fd1;font-size:19px}.coach-attention-column{gap:14px;display:grid}.coach-attention-card .panel-title{margin-bottom:5px}.coach-attention-list{gap:4px;display:grid}.coach-attention-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e3edf2;grid-template-columns:28px minmax(0,1fr);column-gap:8px;padding:10px 7px;display:grid}.coach-attention-list button:last-child{border-bottom:0}.coach-attention-list button:hover{background:#f4fbff}.coach-attention-list button>span{grid-row:span 2;font-size:21px}.coach-attention-list strong,.coach-attention-list small{display:block}.coach-attention-list strong{font-size:13px}.coach-attention-list small{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.35}.coach-quick-actions h2{margin:3px 0 11px;font-size:21px}.coach-quick-actions>div{gap:7px;display:grid}.coach-quick-actions button{color:#146287;text-align:left;cursor:pointer;background:#f3faff;border:1px solid #c7e2ef;border-radius:10px;min-height:40px;padding:9px 11px;font-size:13px;font-weight:800}.coach-today-lower{grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr) minmax(220px,.7fr);gap:14px;margin-top:18px;display:grid}.coach-inbox-card .panel-title button{color:#087fd1;cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:850}.coach-inbox-row{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e2edf2;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;width:100%;padding:10px 0;display:grid}.coach-inbox-row:last-child{border-bottom:0}.coach-inbox-row .avatar{width:38px;height:38px}.coach-inbox-row strong,.coach-inbox-row small,.coach-inbox-row p{display:block}.coach-inbox-row strong{font-size:13px}.coach-inbox-row small{color:var(--muted);margin-top:2px;font-size:11px}.coach-inbox-row p{color:#315067;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:13px;line-height:1.35;overflow:hidden}.coach-inbox-row b{color:#b61461;background:#fff0f7;border-radius:5px;padding:3px 5px;font-size:9px}.coach-heatmap{grid-template-columns:repeat(7,1fr);gap:6px;margin-top:13px;display:grid}.heatmap-day{text-align:center;background:#edf3f7;border-radius:11px;min-height:80px;padding:8px 3px}.heatmap-day span,.heatmap-day b,.heatmap-day small{display:block}.heatmap-day span{color:#5f7586;font-size:10px;font-weight:800}.heatmap-day b{color:#748a9a;margin-top:11px;font-size:20px}.heatmap-day small{color:#087fd1;height:14px;font-size:9px}.heatmap-day.level-1{background:#dff2fc}.heatmap-day.level-2{background:#b9e6fa}.heatmap-day.level-3{background:#70c8f3}.heatmap-day.level-4{color:#fff;background:#087fd1}.heatmap-day.level-4 span,.heatmap-day.level-4 b,.heatmap-day.level-4 small{color:#fff}.coach-card-note{color:var(--muted);margin:13px 0 0;font-size:12px;line-height:1.45}.coach-challenge-card{color:#fff;background:linear-gradient(140deg,#061a32,#0a5186)}.coach-challenge-card h2{text-transform:uppercase;margin:5px 0 14px;font-size:23px;font-style:italic}.coach-challenge-card p{color:#c6dceb;margin:12px 0;font-size:13px;line-height:1.45}.challenge-progress{background:#fff3;border-radius:999px;height:10px;overflow:hidden}.challenge-progress span{border-radius:inherit;background:linear-gradient(90deg,#ff1c7d,#74d9ff);height:100%;display:block}.coach-challenge-card>strong{margin-top:10px;font-size:21px;display:block}.coach-challenge-card>strong small{color:#c6dceb;margin-left:4px;font-size:11px;font-weight:600}.coach-challenge-card button{color:#76d7ff;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:850}.coach-bulk-reminder{background:linear-gradient(105deg,#eaf8ff,#fff1f8);justify-content:space-between;align-items:center;gap:22px;margin-top:18px;display:flex}.coach-bulk-reminder h2{margin:5px 0;font-size:22px}.coach-bulk-reminder p:not(.eyebrow){color:var(--muted);margin:0;font-size:14px}.bulk-reminder-controls{align-items:stretch;gap:8px;min-width:420px;display:flex}.bulk-reminder-controls textarea{resize:vertical;border:1px solid #c1dce9;border-radius:11px;min-width:270px;min-height:64px;padding:10px;font-size:13px}.bulk-reminder-controls .primary-button{white-space:nowrap}.coach-empty{color:var(--muted);text-align:center;padding:24px;font-size:14px}.coach-hub-heading>span{color:#b61461;background:#fff0f7;border-radius:999px;padding:9px 12px;font-size:13px;font-weight:850}.coach-hub-grid{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:18px;display:grid}.coach-thread-list{background:#fff;border:1px solid #cfe3ed;border-radius:20px;gap:5px;padding:9px;display:grid}.coach-thread-list button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;display:grid}.coach-thread-list button:hover,.coach-thread-list button.active{background:#eaf7ff}.coach-thread-list .avatar{width:40px;height:40px}.coach-thread-list strong,.coach-thread-list small{display:block}.coach-thread-list strong{font-size:14px}.coach-thread-list small{color:var(--muted);margin-top:3px;font-size:12px}.coach-thread-list b{background:var(--pink);color:#fff;border-radius:50%;place-items:center;min-width:21px;height:21px;font-size:10px;display:grid}.coach-messages-hub .coach-messages{min-height:440px;margin:0}.programme-history{background:#f7fbfd;border:1px solid #cfe3ed;border-radius:17px;grid-template-columns:.75fr 1.25fr;gap:16px;margin:18px 0;padding:17px;display:grid}.programme-history h2{margin:3px 0 5px;font-size:20px}.programme-history p:not(.eyebrow){color:var(--muted);margin:0;font-size:13px;line-height:1.45}.programme-history-list{gap:6px;display:grid}.programme-history-list>div{background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.programme-history-list strong,.programme-history-list small{display:block}.programme-history-list strong{font-size:13px}.programme-history-list small{color:var(--muted);margin-top:3px;font-size:11px}.programme-history-list button{color:#087fd1;cursor:pointer;background:#effaff;border:1px solid #b8dced;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:850}.coach-mobile-nav{display:none}@media (max-width:1120px){.coach-today-lower{grid-template-columns:1fr 1fr}.coach-challenge-card{grid-column:1/-1}.coach-status-row{grid-template-columns:auto minmax(100px,1fr) auto auto}.coach-status-week{display:none}.programme-history{grid-template-columns:1fr}}@media (max-width:820px){.coach-primary-nav{margin-left:8px}.coach-today,.coach-messages-hub{padding-left:20px;padding-right:20px}.coach-today-heading,.coach-hub-heading{flex-direction:column;align-items:flex-start}.coach-today-actions{justify-content:flex-start}.coach-today-metrics{grid-template-columns:repeat(2,1fr)}.coach-today-grid,.coach-today-lower,.coach-hub-grid{grid-template-columns:1fr}.coach-bulk-reminder{flex-direction:column;align-items:stretch}.bulk-reminder-controls{min-width:0}.coach-status-row{grid-template-columns:auto minmax(100px,1fr) auto auto}.coach-status-progress{display:none}}@media (max-width:760px){.admin-topbar{z-index:50;position:sticky;top:0}.coach-primary-nav{display:none}.admin-account{gap:5px}.admin-account>button{padding:7px 9px}.coach-today,.coach-messages-hub{padding:27px 14px 105px}.coach-today-heading h1,.coach-hub-heading h1{font-size:36px}.coach-today-heading p:not(.eyebrow),.coach-hub-heading p:not(.eyebrow){font-size:15px}.coach-today-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.coach-today-actions button{width:100%;font-size:13px}.coach-today-metrics button{min-height:88px;padding:12px}.coach-today-metrics span{font-size:11px}.coach-today-metrics strong{font-size:27px}.coach-today-grid{gap:12px}.coach-status-board,.coach-attention-card,.coach-quick-actions,.coach-inbox-card,.coach-heatmap-card,.coach-challenge-card,.coach-bulk-reminder{border-radius:18px;padding:16px}.coach-status-row{grid-template-columns:auto minmax(100px,1fr) auto;gap:8px;padding:10px}.coach-status-row .avatar{width:39px;height:39px}.coach-status-name strong{font-size:15px}.coach-status-name small{font-size:12px}.coach-status-row .status-pill{min-width:0;font-size:11px}.coach-status-progress,.row-arrow{display:none}.coach-inbox-row p{font-size:14px}.coach-heatmap{gap:4px}.heatmap-day{min-height:70px}.heatmap-day span{font-size:10px}.heatmap-day b{margin-top:8px;font-size:18px}.bulk-reminder-controls{display:grid}.bulk-reminder-controls textarea{width:100%;min-height:78px;font-size:15px}.bulk-reminder-controls .primary-button{width:100%}.coach-hub-heading>span{font-size:14px}.coach-hub-grid{gap:12px}.coach-thread-list{border-radius:14px;padding:7px;display:flex;overflow:auto}.coach-thread-list button{min-width:190px}.coach-messages-hub .coach-messages{min-height:0}.coach-mobile-nav{z-index:80;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));background:#04182ff7;border:1px solid #fff9;border-radius:18px;grid-template-columns:repeat(4,1fr);gap:4px;padding:7px;display:grid;position:fixed;box-shadow:0 15px 45px #010d1c59}.coach-mobile-nav button{color:#adc4d5;cursor:pointer;background:0 0;border:0;border-radius:12px;min-height:54px;font-size:11px;font-weight:850;position:relative}.coach-mobile-nav button span{color:#73d4ff;margin-bottom:3px;font-size:18px;display:block}.coach-mobile-nav button.active{color:#fff;background:#0d426d}.coach-mobile-nav button b{background:var(--pink);color:#fff;border-radius:50%;place-items:center;min-width:16px;height:16px;font-size:10px;display:grid;position:absolute;top:2px;right:17%}.programme-history{padding:14px}.programme-history-list small{font-size:12px}.programme-history-list button{min-height:38px;font-size:13px}}.coach-status-row.is-deactivated{opacity:.8;background:#f5f7f8;border-color:#dce3e7}.coach-status-row.is-deactivated .avatar{filter:grayscale(.85)}.coach-status-row .status-pill.deactivated{color:#627484;background:#e4e9ed}.admin-roster nav button.deactivated{color:#687d8d;background:#f1f4f5}.admin-roster nav button.deactivated .avatar{filter:grayscale(.8)}.account-state-note{color:#6a7f8e;line-height:1.4;font-size:12px!important;display:block!important}.coach-tools>div:first-child .account-state-note{margin:4px 0 8px}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
