:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f8fafc;background:#07111f;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#07111f,#0b1422);min-height:100vh}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell{width:min(100%,720px);margin:0 auto;min-height:100vh;padding:68px 16px 112px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#7dd3fc;font-weight:800}.title{font-size:30px;line-height:1.05;margin:6px 0 0}.muted{color:#94a3b8}.pre{white-space:pre-wrap;line-height:1.55}.card{background:rgba(15,23,42,.78);border:1px solid rgba(148,163,184,.14);border-radius:22px;padding:18px;box-shadow:0 16px 50px rgba(0,0,0,.18);margin-bottom:14px}.hero{background:linear-gradient(145deg,rgba(14,116,144,.28),rgba(30,41,59,.9))}.badge{display:inline-flex;flex:none;padding:6px 10px;border-radius:999px;background:#132238;color:#bae6fd;font-size:12px;font-weight:700}.badge.subtle{background:rgba(30,41,59,.9);color:#cbd5e1}.badge-menu{position:relative;flex:none}.badge-trigger{border:1px solid rgba(148,163,184,.3);cursor:pointer}.badge-trigger:focus-visible{outline:2px solid #67e8f9;outline-offset:2px}.badge-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:20;width:min(86vw,300px);margin:0}.history-date{font-size:13px;color:#7dd3fc;font-weight:800;text-transform:capitalize}.empty{text-align:center;padding:42px 18px}.empty h1,.empty h2{margin-top:0}.calendar-list{display:grid;grid-gap:12px;gap:12px}.calendar-card{display:grid;grid-template-columns:58px minmax(0,1fr) 20px;align-items:center;grid-gap:14px;gap:14px;margin:0;transition:transform .16s ease,border-color .16s ease}.calendar-card:focus-visible,.calendar-card:hover{transform:translateY(-2px);border-color:rgba(56,189,248,.45);outline:none}.calendar-date{display:grid;place-items:center;align-content:center;min-height:68px;padding:8px 4px;border-radius:17px;background:rgba(8,145,178,.14);border:1px solid rgba(34,211,238,.16);text-transform:capitalize}.calendar-date span{color:#67e8f9;font-size:12px;font-weight:900;text-transform:uppercase}.calendar-date strong{font-size:28px;line-height:1;margin-top:4px}.calendar-main{min-width:0}.calendar-main h2{font-size:20px;line-height:1.2;margin:4px 0 9px}.calendar-meta,.chip-row,.prescription-row,.session-meta{display:flex;flex-wrap:wrap;gap:7px 12px}.calendar-meta{color:#94a3b8;font-size:12px}.calendar-meta span+span:before{content:"·";margin-right:12px}.calendar-arrow{color:#38bdf8;font-size:32px;line-height:1}.chip-row{gap:5px;margin-bottom:9px}.chip{padding:4px 8px;border-radius:999px;background:rgba(30,64,175,.2);color:#bfdbfe;font-size:11px;font-weight:700}.day-block{margin-bottom:28px}.day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 5px 12px}.day-head h1,.day-head h2{margin:5px 0 0;font-size:30px;line-height:1.05}.session-meta{margin:0 5px 18px;color:#94a3b8;font-size:13px}.session-meta span{padding:6px 9px;border-radius:10px;background:rgba(30,41,59,.68)}.session-notes strong{color:#67e8f9;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.session-notes p{margin-bottom:0;color:#cbd5e1}.recovery-card h2{margin:7px 0 10px}.recovery-card p{margin-bottom:0}.session-exercises{display:grid;grid-gap:14px;gap:14px}.session-exercise{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);grid-gap:12px;gap:12px;margin:0;padding:18px 18px 18px 14px}.exercise-order{display:grid;place-items:center;align-self:start;width:34px;height:34px;border-radius:50%;background:#0891b2;color:#ecfeff;font-size:14px;font-weight:900}.session-exercise-body{min-width:0}.exercise-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.exercise-detail-head h2{font-size:21px;line-height:1.2;margin:0}.machine-name{color:#94a3b8;font-size:13px;margin:5px 0 0}.prescription-row{align-items:center;color:#bae6fd;font-size:12px}.prescription-row span,.prescription-row strong{padding:6px 8px;border-radius:9px;background:rgba(8,145,178,.12)}.today-tip{margin-top:14px;padding:13px;border-radius:14px;background:rgba(234,179,8,.08);border:1px solid rgba(250,204,21,.14)}.today-tip strong{color:#fde68a;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.today-tip p{margin:5px 0 0;color:#e2e8f0;line-height:1.5}.result-line{color:#cbd5e1;line-height:1.5}.set-results{margin-top:15px}.set-results>strong{color:#a7f3d0;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.set-results ul{list-style:none;display:grid;grid-gap:6px;gap:6px;margin:8px 0 0;padding:0}.set-results li{padding:8px 10px;border-radius:10px;background:rgba(6,78,59,.2);color:#d1fae5;font-size:13px}.guide-details{margin-top:16px;border-top:1px solid rgba(148,163,184,.16);padding-top:13px}.guide-details summary{color:#7dd3fc;cursor:pointer;font-size:13px;font-weight:900;list-style-position:outside;margin-left:16px}.guide-content{padding-top:2px}.cue{display:grid;grid-gap:5px;gap:5px;margin-top:14px;padding:14px;border-radius:15px;background:rgba(8,145,178,.14);border:1px solid rgba(34,211,238,.18)}.cue strong{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#67e8f9}.cue span{line-height:1.5;font-weight:750}.guide-block{margin-top:16px}.guide-block strong{font-size:13px;color:#e2e8f0;text-transform:uppercase;letter-spacing:.04em}.guide-block p{margin:6px 0 0;line-height:1.6;color:#cbd5e1}.exercise-detail{scroll-margin-top:18px;padding:20px}.exercise-detail-head .eyebrow+h2{margin-top:4px}.detail-dose{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:12px;color:#bae6fd;font-weight:800}.tech-grid{display:grid;grid-gap:4px;gap:4px}.exercise-photo{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;border:1px solid rgba(148,163,184,.18);background:#020617}.video-button{text-align:center;margin-top:18px;min-height:48px;padding:12px 14px;border-radius:14px;background:#7f1d1d;color:#fee2e2;font-size:13px}.ask-coach-button,.video-button{display:flex;align-items:center;justify-content:center;font-weight:900}.ask-coach-button{width:100%;min-height:46px;gap:8px;margin-top:12px;border:1px solid rgba(103,232,249,.25);border-radius:14px;background:rgba(8,145,178,.12);color:#a5f3fc;font-size:12px;cursor:pointer}.ask-coach-button span{font-size:17px}.set-capture{margin-top:18px;padding:16px;border:1px solid rgba(34,211,238,.2);border-radius:18px;background:linear-gradient(145deg,rgba(8,145,178,.09),rgba(2,6,23,.38))}.capture-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none}.capture-heading::-webkit-details-marker{display:none}.capture-heading>div{display:grid;grid-gap:2px;gap:2px}.capture-heading strong{font-size:20px;color:#f8fafc}.capture-heading:after{content:"▾";flex:none;margin-left:4px;color:#67e8f9;font-size:14px;transition:transform .15s ease}.set-capture[open] .capture-heading:after{transform:rotate(180deg)}.set-capture-body{display:grid;grid-gap:15px;gap:15px;margin-top:15px}.capture-kicker,.capture-label,.load-selector legend,.rir-selector legend{color:#67e8f9;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.capture-progress{padding:6px 9px;border-radius:999px;background:rgba(6,78,59,.35);color:#a7f3d0;font-size:11px;font-weight:800}.load-selector,.rir-selector{min-width:0;margin:0;padding:0;border:0}.load-selector legend,.rir-selector legend{margin-bottom:8px}.rir-selector legend small{color:#94a3b8;font-size:10px;font-weight:650;letter-spacing:0;text-transform:none}.segment-control{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:4px;gap:4px;padding:4px;border-radius:14px;background:rgba(2,6,23,.72)}.quick-row button,.rir-options button,.segment-control button,.unit-toggle button{border:0;color:#94a3b8;background:transparent;cursor:pointer}.segment-control button{min-width:0;min-height:42px;padding:7px 3px;border-radius:10px;font-size:11px;font-weight:800}.segment-control button.active{color:#ecfeff;background:#0e7490;box-shadow:0 4px 14px rgba(8,145,178,.22)}.unit-toggle{display:flex;justify-content:flex-end;gap:4px;margin-top:-9px}.unit-toggle button{min-width:44px;min-height:32px;border:1px solid #334155;border-radius:9px;font-size:11px;font-weight:900}.unit-toggle button.active{color:#07111f;border-color:#67e8f9;background:#67e8f9}.capture-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.capture-values.bodyweight{align-items:end}.capture-control{display:grid;grid-gap:6px;gap:6px;min-width:0}.stepper{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:stretch;min-width:0;min-height:58px;overflow:hidden;border:1px solid #334155;border-radius:15px;background:#07111f}.stepper>button{border:0;background:#132238;color:#67e8f9;font-size:25px;font-weight:700;cursor:pointer;touch-action:manipulation}.stepper>button:active{background:#164e63}.stepper label{position:relative;display:flex;min-width:0;align-items:center;justify-content:center}.stepper input{width:100%;min-width:0;padding:8px 21px 8px 4px;border:0;outline:0;background:transparent;color:#fff;font-size:23px;font-weight:900;text-align:center;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}.stepper small{position:absolute;right:6px;bottom:7px;color:#64748b;font-size:9px;font-weight:900;text-transform:uppercase}.bodyweight-note{display:grid;grid-gap:3px;gap:3px;min-height:58px;align-content:center;padding:9px 12px;border:1px solid #334155;border-radius:15px;background:#07111f}.bodyweight-note strong{font-size:13px}.bodyweight-note span{color:#94a3b8;font-size:10px}.quick-row{display:flex;align-items:center;gap:5px;overflow-x:auto;scrollbar-width:none}.quick-row::-webkit-scrollbar{display:none}.quick-row>span{flex:none;margin-right:3px;color:#94a3b8;font-size:10px;font-weight:800}.quick-row button{flex:1 0 34px;min-width:34px;min-height:34px;border:1px solid #334155;border-radius:10px;font-size:12px;font-weight:850}.quick-row button.active{color:#07111f;border-color:#a5f3fc;background:#a5f3fc}.rir-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:5px;gap:5px}.rir-options button{display:grid;min-width:0;min-height:55px;place-content:center;grid-gap:1px;gap:1px;padding:5px 2px;border:1px solid #334155;border-radius:11px}.rir-options button strong{color:#e2e8f0;font-size:18px}.rir-options button span{overflow:hidden;color:#64748b;font-size:7px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.rir-options button.active{border-color:#22d3ee;background:rgba(8,145,178,.3);box-shadow:inset 0 0 0 1px rgba(34,211,238,.2)}.rir-options button.active span,.rir-options button.active strong{color:#cffafe}.save-set{width:100%;min-height:54px;margin-top:1px;box-shadow:0 10px 24px rgba(6,182,212,.17)}.form-message{margin:0;font-size:12px}.form-message.success{color:#86efac}.form-message.error{color:#fca5a5}.omit-form{display:grid;grid-gap:13px;gap:13px;border-color:rgba(251,191,36,.2)}.omit-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.omit-heading strong{font-size:16px}.omit-heading p{margin:4px 0 0;color:#94a3b8;font-size:11px;line-height:1.45}.omit-heading>button{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border:0;border-radius:10px;background:#1e293b;color:#cbd5e1;font-size:22px;cursor:pointer}.omit-field{display:grid;grid-gap:6px;gap:6px;color:#cbd5e1;font-size:11px;font-weight:800}.omit-field input,.omit-field select{width:100%;min-height:48px;border:1px solid #334155;border-radius:13px;padding:11px 12px;background:#07111f;color:#f8fafc;font-size:16px}.omit-actions{display:grid;grid-template-columns:1fr 1.4fr;grid-gap:8px;gap:8px}.omit-actions button{min-height:46px;border:1px solid #334155;border-radius:13px;background:#132238;color:#cbd5e1;font-weight:850;cursor:pointer}.omit-actions button[type=submit]{border-color:rgba(251,191,36,.4);background:rgba(146,64,14,.4);color:#fde68a}.omit-actions button:disabled{opacity:.6;cursor:wait}.omitted-card{display:flex;align-items:center;gap:12px;margin:0;border-color:rgba(251,191,36,.2);background:rgba(120,53,15,.12)}.omitted-card>span{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:11px;background:rgba(245,158,11,.14);color:#fcd34d;font-weight:900}.omitted-card>div{display:grid;grid-gap:3px;gap:3px}.omitted-card strong{color:#fde68a;font-size:14px}.omitted-card p{margin:0;color:#cbd5e1;font-size:11px}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:16px;background:#06b6d4;color:#042f2e;font-weight:900;padding:14px 18px;min-height:48px;cursor:pointer}.button:disabled{cursor:wait;opacity:.7}.inline-button{width:auto;margin-top:12px}.back-link{color:#7dd3fc;font-size:13px;font-weight:850}.field{display:grid;grid-gap:6px;gap:6px;margin-bottom:12px}.field label{font-size:13px;color:#cbd5e1}.field input,.field select{width:100%;border:1px solid #334155;border-radius:14px;padding:14px;background:#0f172a;color:white;min-height:50px}.login{display:grid;min-height:100vh;place-items:center;padding:24px}.login .card{width:min(100%,420px)}.nav{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);width:min(calc(100% - 20px),700px);display:grid;grid-template-columns:repeat(4,1fr);grid-gap:3px;gap:3px;padding:7px;background:rgba(2,6,23,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(148,163,184,.16);border-radius:22px;z-index:10}.nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 2px;border-radius:15px;font-size:10px;color:#cbd5e1;min-width:0}.nav a:active,.nav a:focus-visible{background:#0f172a;outline:none}.nav a strong{font-size:17px}.menu-trigger{position:fixed;top:max(14px,env(safe-area-inset-top));right:max(16px,calc((100vw - 700px) / 2 + 16px));z-index:35;display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:rgba(2,6,23,.88);color:#e2e8f0;box-shadow:0 10px 30px rgba(0,0,0,.26);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer}.menu-trigger span{font-size:22px;line-height:1}.menu-backdrop{position:fixed;inset:0;z-index:70;border:0;background:rgba(2,6,23,.68);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-menu{position:fixed;top:0;right:0;z-index:80;width:min(86vw,340px);height:100dvh;padding:max(22px,env(safe-area-inset-top)) 16px 20px;border-left:1px solid rgba(103,232,249,.17);background:#081321;box-shadow:-24px 0 70px rgba(0,0,0,.52);animation:menu-enter .18s ease-out}@keyframes menu-enter{0%{transform:translateX(18px);opacity:0}to{transform:translateX(0);opacity:1}}.app-menu header{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 20px}.app-menu header>div{display:grid;grid-gap:3px;gap:3px}.app-menu header span{color:#67e8f9;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.app-menu header strong{font-size:25px}.app-menu header button{display:grid;width:38px;height:38px;place-items:center;border:0;border-radius:12px;background:#132238;color:#cbd5e1;font-size:25px;cursor:pointer}.app-menu nav{display:grid;grid-gap:7px;gap:7px}.app-menu nav a{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;grid-gap:9px;gap:9px;min-height:52px;padding:8px 12px;border-radius:15px;color:#cbd5e1}.app-menu nav a.active{background:rgba(8,145,178,.16);color:#cffafe}.app-menu nav a>span{font-size:18px}.app-menu nav a strong{font-size:14px}.app-menu nav a i{color:#64748b;font-size:24px;font-style:normal}.settings-form{display:grid;grid-gap:14px;gap:14px}.setting-card{margin:0}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.setting-title{font-size:17px;font-weight:900}.setting-row p{margin:6px 0 0;color:#94a3b8;font-size:12px;line-height:1.5}.switch{position:relative;flex:0 0 54px;width:54px;height:32px}.switch input{position:absolute;width:1px;height:1px;opacity:0}.switch>span[aria-hidden]{position:absolute;inset:0;border:1px solid #334155;border-radius:999px;background:#132238;cursor:pointer;transition:background .16s ease,border-color .16s ease}.switch>span[aria-hidden]:after{content:"";position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;background:#94a3b8;transition:transform .16s ease,background .16s ease}.switch input:checked+span{border-color:#22d3ee;background:#0e7490}.switch input:checked+span:after{transform:translateX(22px);background:#ecfeff}.switch input:focus-visible+span{outline:2px solid #67e8f9;outline-offset:3px}.model-picker{display:grid;grid-gap:9px;gap:9px;margin:0;padding:18px;border:1px solid rgba(148,163,184,.14);border-radius:22px;background:rgba(15,23,42,.78)}.model-picker legend{padding:0 5px;font-size:17px;font-weight:900}.model-picker>p{margin:-2px 0 8px;font-size:12px;line-height:1.5}.model-option{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;grid-gap:11px;gap:11px;min-height:70px;padding:12px;border:1px solid #26364b;border-radius:15px;background:rgba(2,6,23,.4);cursor:pointer}.model-option:has(input:checked){border-color:#22d3ee;background:rgba(8,145,178,.12)}.model-option>input{position:absolute;width:1px;height:1px;opacity:0}.model-radio{display:grid;width:19px;height:19px;place-items:center;border:2px solid #64748b;border-radius:50%}.model-option input:checked+.model-radio{border-color:#67e8f9}.model-option input:checked+.model-radio:after{content:"";width:9px;height:9px;border-radius:50%;background:#22d3ee}.model-option input:focus-visible+.model-radio{outline:2px solid #67e8f9;outline-offset:3px}.model-copy{display:grid;grid-gap:5px;gap:5px;min-width:0}.model-copy>span:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.model-copy strong{font-size:13px}.model-copy small{padding:3px 6px;border-radius:999px;background:#132238;color:#7dd3fc;font-size:8px;font-weight:900;text-transform:uppercase}.model-copy>span:last-child{color:#94a3b8;font-size:10px;line-height:1.4}.settings-save{width:100%}.integration-section{display:grid;grid-gap:14px;gap:14px;margin-top:28px}.integration-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.integration-title h2{margin:4px 0 0;font-size:23px}.integration-title>span{color:#64748b;font-size:9px}.integration-card{display:grid;grid-gap:14px;gap:14px;margin:0;overflow:hidden}.integration-card>header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;grid-gap:11px;gap:11px}.integration-card h3{margin:0;font-size:17px}.integration-card header p{margin:4px 0 0;color:#94a3b8;font-size:10px;line-height:1.4}.integration-icon{display:grid;width:44px;height:44px;place-items:center;border-radius:14px;font-size:18px;font-weight:950}.integration-icon.withings{background:#f8fafc;color:#0f172a}.integration-icon.health{background:linear-gradient(145deg,#fb7185,#e11d48);color:white}.integration-pill{padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900;text-transform:uppercase}.integration-pill.connected{background:rgba(6,78,59,.48);color:#a7f3d0}.integration-pill.pending{background:rgba(71,85,105,.36);color:#cbd5e1}.integration-meta{display:flex;flex-wrap:wrap;gap:7px 12px;color:#94a3b8;font-size:10px}.integration-callout{display:grid;grid-gap:8px;gap:8px;padding:13px;border:1px solid rgba(56,189,248,.14);border-radius:15px;background:rgba(2,6,23,.42)}.integration-callout strong{font-size:12px}.integration-callout ol,.integration-callout p{margin:0;color:#94a3b8;font-size:10px;line-height:1.55}.integration-callout ol{padding-left:18px}.integration-callout label{margin-top:3px;color:#67e8f9;font-size:9px;font-weight:900;text-transform:uppercase}.copy-value{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:6px;gap:6px;align-items:stretch}.copy-value code{overflow:hidden;padding:10px;border-radius:10px;background:#07111f;color:#bae6fd;font-size:9px;line-height:1.4;overflow-wrap:anywhere}.copy-value.secret code{color:#fde68a}.copy-value button{min-width:62px;border:0;border-radius:10px;background:#164e63;color:#cffafe;font-size:10px;font-weight:850;cursor:pointer}.integration-actions{display:flex;gap:8px}.integration-actions form{flex:1 1}.integration-actions .button,.integration-actions form button{width:100%}.button.disabled{pointer-events:none;opacity:.45}.secondary-button{min-height:48px;padding:12px 16px;border:1px solid #334155;border-radius:16px;background:#132238;color:#cbd5e1;font-weight:850;cursor:pointer}.secondary-button.danger{color:#fca5a5}.integration-token-button{width:100%}.integration-error{margin:0;padding:9px 11px;border-radius:10px;background:rgba(127,29,29,.2);color:#fecaca;font-size:10px}.integration-footnote{margin:0;color:#64748b;font-size:9px;line-height:1.5}.coach-fab{position:fixed;right:max(16px,calc((100vw - 700px) / 2 + 16px));bottom:96px;z-index:30;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:10px 16px 10px 11px;border:1px solid rgba(103,232,249,.42);border-radius:999px;background:linear-gradient(145deg,#0e7490,#155e75);color:#ecfeff;box-shadow:0 16px 40px rgba(0,0,0,.42),0 0 0 4px rgba(8,145,178,.1);cursor:pointer;touch-action:manipulation}.coach-fab>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:rgba(207,250,254,.16);color:#cffafe;font-size:17px}.coach-fab strong{font-size:13px;letter-spacing:.01em}.coach-fab:active{transform:scale(.97)}.coach-close:focus-visible,.coach-fab:focus-visible,.coach-send:focus-visible,.coach-suggestions button:focus-visible{outline:2px solid #67e8f9;outline-offset:2px}.coach-backdrop{position:fixed;inset:0;z-index:40;border:0;background:rgba(2,6,23,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.coach-sheet{position:fixed;right:max(10px,calc((100vw - 700px) / 2 + 10px));bottom:92px;z-index:50;display:flex;width:min(calc(100% - 20px),440px);height:min(650px,calc(100dvh - 112px));min-height:390px;flex-direction:column;overflow:hidden;border:1px solid rgba(103,232,249,.2);border-radius:26px;background:#081321;box-shadow:0 28px 80px rgba(0,0,0,.58);animation:coach-rise .2s ease-out}@keyframes coach-rise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.coach-header{display:grid;grid-template-columns:42px minmax(0,1fr) 38px;align-items:center;grid-gap:10px;gap:10px;padding:14px 14px 13px;border-bottom:1px solid rgba(148,163,184,.13);background:linear-gradient(145deg,rgba(14,116,144,.2),rgba(15,23,42,.72))}.coach-avatar{display:grid;width:40px;height:40px;place-items:center;border-radius:14px;background:linear-gradient(145deg,#0891b2,#0e7490);color:#cffafe;font-size:21px;box-shadow:0 8px 20px rgba(8,145,178,.22)}.coach-header>div:nth-child(2){display:grid;grid-gap:2px;gap:2px;min-width:0}.coach-header strong{font-size:15px}.coach-header span{overflow:hidden;color:#94a3b8;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.coach-close{display:grid;width:36px;height:36px;place-items:center;border:0;border-radius:12px;background:rgba(30,41,59,.75);color:#cbd5e1;font-size:26px;line-height:1;cursor:pointer}.coach-conversation{flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 14px;scrollbar-color:#334155 transparent}.coach-welcome{display:grid;justify-items:center;padding:14px 5px 4px;text-align:center}.coach-welcome-icon{display:grid;width:54px;height:54px;margin-bottom:12px;place-items:center;border:1px solid rgba(103,232,249,.2);border-radius:18px;background:rgba(8,145,178,.13);color:#67e8f9;font-size:25px}.coach-welcome h2{margin:0 0 7px;font-size:21px}.coach-welcome p{max-width:320px;margin:0;color:#94a3b8;font-size:12px;line-height:1.5}.coach-suggestions{display:grid;width:100%;grid-gap:7px;gap:7px;margin-top:18px}.coach-suggestions button{min-height:42px;padding:9px 12px;border:1px solid rgba(56,189,248,.18);border-radius:13px;background:rgba(15,23,42,.82);color:#bae6fd;font-size:12px;font-weight:750;text-align:left;cursor:pointer}.coach-suggestions button:before{content:"→";margin-right:8px;color:#22d3ee}.coach-message{display:flex;align-items:flex-start;gap:8px;margin-bottom:15px}.coach-message.user{justify-content:flex-end}.coach-message-mark{display:grid;flex:0 0 27px;width:27px;height:27px;place-items:center;margin-top:2px;border-radius:9px;background:rgba(8,145,178,.18);color:#67e8f9;font-size:13px}.coach-message-body{min-width:0;max-width:86%;color:#e2e8f0;font-size:13px;line-height:1.55}.coach-message.user .coach-message-body{padding:10px 13px;border-radius:16px 16px 4px 16px;background:#0e7490;color:#ecfeff}.coach-message.user p{margin:0;white-space:pre-wrap}.coach-message-markdown{width:100%}.coach-message-markdown>:first-child{margin-top:0}.coach-message-markdown>:last-child{margin-bottom:0}.coach-message-markdown ol,.coach-message-markdown p,.coach-message-markdown ul{margin:0 0 9px}.coach-message-markdown ol,.coach-message-markdown ul{padding-left:19px}.coach-message-markdown strong{color:#f8fafc}.coach-message-markdown a{color:#67e8f9;text-decoration:underline}.coach-message-markdown code{padding:2px 5px;border-radius:6px;background:#0f172a;color:#bae6fd}.coach-thinking{display:flex;width:-moz-fit-content;width:fit-content;gap:4px;margin:0 0 15px 35px;padding:10px 12px;border-radius:13px;background:rgba(30,41,59,.7)}.coach-thinking i{width:5px;height:5px;border-radius:50%;background:#67e8f9;animation:coach-pulse .9s ease-in-out infinite}.coach-thinking i:nth-child(2){animation-delay:.14s}.coach-thinking i:nth-child(3){animation-delay:.28s}@keyframes coach-pulse{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.coach-error{margin:8px 0;padding:10px 12px;border-radius:12px;background:rgba(127,29,29,.25);color:#fecaca;font-size:11px}.coach-composer{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 42px;grid-gap:8px;gap:8px;padding:11px 11px calc(10px + env(safe-area-inset-bottom));border-top:1px solid rgba(148,163,184,.13);background:rgba(2,6,23,.9)}.coach-composer textarea{width:100%;min-height:44px;max-height:100px;resize:none;border:1px solid #334155;outline:none;border-radius:14px;padding:12px 13px;background:#0f172a;color:#f8fafc;font-size:16px;line-height:1.35}.coach-composer textarea:focus{border-color:#0891b2;box-shadow:0 0 0 3px rgba(8,145,178,.12)}.coach-composer textarea::placeholder{color:#64748b}.coach-send{display:grid;width:42px;height:42px;align-self:start;place-items:center;border:0;border-radius:13px;background:#22d3ee;color:#083344;font-size:22px;font-weight:950;cursor:pointer}.coach-send.stop{background:#334155;color:#e2e8f0;font-size:12px}.coach-send:disabled{cursor:default;opacity:.35}.coach-composer small{grid-column:1/-1;color:#64748b;font-size:9px;text-align:center}@media (min-width:640px){.shell{padding-top:76px}.title{font-size:36px}.card{padding:22px}.day-head h1,.day-head h2{font-size:34px}.session-exercise{grid-template-columns:42px minmax(0,1fr)}.set-capture{padding:18px}.segment-control button{font-size:12px}.rir-options button span{font-size:8px}.nav{bottom:18px}.nav a{font-size:11px}.nav a strong{font-size:19px}.coach-fab{bottom:105px}.coach-sheet{bottom:101px}}@media (max-height:560px){.coach-sheet{bottom:8px;height:calc(100dvh - 16px);min-height:0}}@media (max-width:639px){input,select,textarea{font-size:16px}}@media (prefers-reduced-motion:reduce){.app-menu,.coach-sheet,.coach-thinking i{animation:none}}