@layer reset,base,components,pages,responsive;@layer reset{*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;touch-action:pan-x pan-y}body,h1,h2,h3,p,ol,ul{margin:0}button,input,select,textarea{font:inherit;touch-action:manipulation}button{color:inherit}img,svg{display:block}}@layer base{:root{color-scheme:light;--bg: #f3f0e8;--bg-soft: #ebe8df;--surface: #fffdf8;--surface-strong: #ffffff;--surface-muted: #e9e7df;--ink: #151a17;--ink-2: #4f5752;--ink-3: #818782;--line: #dcd9d0;--brand: #bde829;--brand-bright: #d9ff57;--brand-deep: #719100;--dark: #151a17;--danger: #d94b40;--danger-bg: #fff0ed;--warning: #9d6a00;--warning-bg: #fff6d9;--success: #237a50;--success-bg: #eaf8ee;--shadow: 0 18px 55px rgba(20, 26, 22, .08);--radius: 22px;--nav-height: 76px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--ink)}:root[data-theme=dark]{color-scheme:dark;--bg: #0f1410;--bg-soft: #171c18;--surface: #1b211d;--surface-strong: #222a25;--surface-muted: #252c27;--ink: #f3f5f0;--ink-2: #bdc5be;--ink-3: #858e87;--line: #333b35;--brand: #c4ef35;--brand-bright: #d9ff57;--brand-deep: #d9ff57;--dark: #0c0f0d;--danger: #ff796d;--danger-bg: #3a201e;--warning: #ffd26a;--warning-bg: #352d18;--success: #75d7a2;--success-bg: #183326;--shadow: 0 20px 65px rgba(0, 0, 0, .25)}@media (prefers-color-scheme: dark){:root:not([data-theme]){color-scheme:dark;--bg: #0f1410;--bg-soft: #171c18;--surface: #1b211d;--surface-strong: #222a25;--surface-muted: #252c27;--ink: #f3f5f0;--ink-2: #bdc5be;--ink-3: #858e87;--line: #333b35;--brand: #c4ef35;--brand-bright: #d9ff57;--brand-deep: #d9ff57;--dark: #0c0f0d;--danger: #ff796d;--danger-bg: #3a201e;--warning: #ffd26a;--warning-bg: #352d18;--success: #75d7a2;--success-bg: #183326;--shadow: 0 20px 65px rgba(0,0,0,.25)}}body{min-width:320px;min-height:100vh;min-height:100dvh;background:var(--bg);line-height:1.5;touch-action:pan-x pan-y}button{border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.48}summary{outline:none;background-color:transparent;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}summary:focus,summary:active{outline:none;background-color:transparent;box-shadow:none}input,select,textarea{width:100%;border:1px solid var(--line);background:var(--surface-strong);color:var(--ink);border-radius:13px;padding:12px 13px;outline:none;transition:border-color .2s,box-shadow .2s;font-size:16px}input[type=date]{display:block;min-width:0;width:100%;height:44px;min-height:44px;padding:0 12px;line-height:44px;font-size:16px;font-weight:500}input:not([type=range]),select{height:44px;min-height:44px;padding-top:0;padding-bottom:0}input[type=date]::-webkit-date-and-time-value{min-height:0;margin:0;padding:0;text-align:left}input[type=date]::-webkit-calendar-picker-indicator{flex:0 0 auto;margin:0;padding:0}.date-input-shell{position:relative;width:100%;height:44px;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;overflow:hidden;padding:0 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-strong);color:var(--ink);font-size:14px;font-weight:600;line-height:1}.date-input-shell:focus-within{border-color:var(--brand-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 22%,transparent)}.date-input-shell>svg{flex:0 0 auto;color:var(--ink-3)}.date-input-text{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.date-input-native{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important;margin:0;padding:0!important;border:0;border-radius:inherit;opacity:0;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}input:focus,select:focus,textarea:focus{border-color:var(--brand-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 22%,transparent)}textarea{min-height:88px;resize:vertical}::selection{background:var(--brand);color:#111}.drawer-open,.confirm-open,.library-open{overflow:hidden}}@layer components{#portrait-guard{display:none}.app-shell{width:min(100%,760px);min-height:100vh;margin:0 auto;padding-bottom:calc(var(--nav-height) + 46px + env(safe-area-inset-bottom))}.app-shell.has-timer{padding-bottom:calc(var(--nav-height) + 128px + env(safe-area-inset-bottom))}.page{padding:max(18px,calc(env(safe-area-inset-top) + 8px)) 18px 30px;animation:page-in .28s ease both}@keyframes page-in{0%{opacity:0;transform:translateY(5px)}}.eyebrow{color:var(--brand-deep);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}h1{font-size:clamp(32px,9vw,48px);line-height:1.08;letter-spacing:-.045em}h2{font-size:21px;line-height:1.25;letter-spacing:-.025em}h3{font-size:16px}.page-header{display:flex;justify-content:space-between;align-items:end;margin:12px 2px 24px}.page-header .eyebrow{margin-bottom:6px}.header-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:15px;background:var(--dark);color:var(--brand-bright);box-shadow:var(--shadow)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 10px 30px #141a1609;margin-bottom:14px}.section-block{margin-top:26px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.section-heading .eyebrow{margin-bottom:3px}.section-heading>span{color:var(--ink-3);font-size:12px}.section-intro{color:var(--ink-2);font-size:13px;margin:-5px 0 15px}.button{min-height:48px;border-radius:15px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;transition:transform .15s,background .2s}.button:active{transform:scale(.98)}.button.primary{background:var(--dark);color:var(--brand-bright);box-shadow:0 12px 28px #0d110e33}.button.secondary{background:var(--surface);border:1px solid var(--line);color:var(--ink)}.button.full{width:100%}.button.large{min-height:58px;border-radius:18px;font-size:16px}.button.small{min-height:38px;border-radius:12px;padding:0 13px;font-size:13px}.text-button{padding:7px 0;color:var(--brand-deep);font-size:13px;font-weight:750}.icon-button{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:12px;color:var(--ink-2)}.icon-button:hover{background:var(--surface-muted)}.notice{display:flex;align-items:flex-start;gap:11px;padding:14px;border-radius:17px;margin:13px 0;background:var(--surface);border:1px solid var(--line)}.notice>svg{flex:0 0 auto;margin-top:1px}.notice>div{flex:1;min-width:0}.notice strong{display:block;font-size:14px}.notice p{color:var(--ink-2);font-size:12px;margin-top:2px}.notice.warning,.notice.recovery-reduce{background:var(--warning-bg);border-color:color-mix(in srgb,var(--warning) 25%,transparent);color:var(--warning)}.notice.warning p,.notice.recovery-reduce p{color:inherit;opacity:.88}.notice.danger,.notice.recovery-pain,.notice.recovery-rest{background:var(--danger-bg);border-color:color-mix(in srgb,var(--danger) 28%,transparent);color:var(--danger)}.notice.danger p,.notice.recovery-pain p,.notice.recovery-rest p{color:inherit;opacity:.88}.notice.recovery-normal{background:var(--success-bg);border-color:color-mix(in srgb,var(--success) 22%,transparent);color:var(--success)}.notice.recovery-normal p{color:inherit;opacity:.9}.compact-notice{padding:11px 13px}.bottom-nav{position:fixed;z-index:50;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100% - 24px),736px);height:var(--nav-height);padding:7px 8px;display:grid;grid-template-columns:repeat(6,1fr);background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid color-mix(in srgb,var(--line) 72%,var(--brand) 28%);border-radius:22px;box-shadow:0 18px 48px #0a0f0b33,0 0 0 1px #ffffff2e inset;backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%)}.bottom-nav button{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:14px;color:var(--ink-3);font-size:10px;font-weight:700}.bottom-nav button:before{content:"";position:absolute;top:-9px;width:24px;height:3px;border-radius:0 0 3px 3px;background:transparent}.bottom-nav button.active{color:var(--ink);background:color-mix(in srgb,var(--brand) 18%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--brand) 16%,transparent) inset}.bottom-nav button.active:before{background:var(--brand)}.rest-timer{--timer-progress: 100%;position:fixed;z-index:55;bottom:calc(var(--nav-height) + 20px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:min(calc(100% - 24px),600px);min-height:72px;display:flex;align-items:center;gap:6px;padding:7px 8px 7px 10px;border-radius:20px;color:#f6f8f3;background:linear-gradient(90deg,#35420d var(--timer-progress),#171c18 var(--timer-progress));box-shadow:0 18px 48px #00000047;overflow:hidden;transition:background .3s}.rest-timer.finished{background:var(--brand-deep)}.timer-main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left;color:inherit}.timer-icon{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:50%;background:#ffffff1f}.timer-main>span:last-child{display:grid;min-width:0}.timer-main small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.68;font-size:10px}.timer-main strong{font-variant-numeric:tabular-nums;font-size:21px;line-height:1.1}.timer-add,.timer-skip{align-self:stretch;padding:0 10px;border-radius:13px;color:inherit;font-size:11px;font-weight:750}.timer-add{background:#ffffff1a}.timer-skip{opacity:.7}.desktop-safety{display:none}.confirm-backdrop{position:fixed;z-index:1200;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;display:flex;align-items:end;justify-content:center;padding:0;background:#070a089e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:fade-in .18s ease}.confirm-dialog{position:relative;width:min(100%,720px);padding:12px 20px calc(20px + env(safe-area-inset-bottom));border:1px solid var(--line);border-bottom:0;border-radius:28px 28px 0 0;background:var(--surface);box-shadow:0 -20px 70px #00000047;animation:confirm-up .26s cubic-bezier(.2,.8,.2,1)}@keyframes confirm-up{0%{transform:translateY(35px);opacity:.5}}.confirm-handle{width:42px;height:4px;margin:0 auto 16px;border-radius:4px;background:var(--line)}.confirm-icon{width:54px;height:54px;display:grid;place-items:center;margin-bottom:16px;border-radius:17px;background:var(--danger-bg);color:var(--danger)}.confirm-dialog.warning .confirm-icon{background:var(--warning-bg);color:var(--warning)}.confirm-dialog .eyebrow{margin-bottom:5px}.confirm-dialog h2{font-size:27px}.confirm-message{color:var(--ink-2);font-size:13px;margin-top:8px}.confirm-details{display:grid;gap:7px;margin:16px 0 0;padding:13px;border-radius:15px;background:var(--surface-muted);list-style:none}.confirm-details li{display:flex;align-items:center;gap:7px;color:var(--ink-2);font-size:11px}.confirm-details svg{flex:0 0 auto;color:var(--brand-deep)}.confirm-actions{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8px;margin-top:18px}.confirm-action.danger{background:var(--danger);color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--danger) 28%,transparent)}.confirm-action.warning{background:var(--dark);color:var(--brand-bright);box-shadow:0 10px 24px #0d110e33}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:4px;border-radius:14px;background:var(--surface-muted);gap:3px;margin:7px 0 17px}.segmented button{min-height:38px;padding:0 8px;border-radius:11px;color:var(--ink-2);font-size:12px;font-weight:700}.segmented button.active{background:var(--brand);color:#151a17;box-shadow:0 5px 15px color-mix(in srgb,var(--brand-deep) 26%,transparent),inset 0 0 0 1px #ffffff4d;transform:translateY(-1px)}.segmented.compact{margin:0 0 10px}.form-card label,.recovery-form label{display:grid;gap:6px;color:var(--ink-2);font-size:12px;font-weight:650;margin-bottom:13px}.form-grid{display:grid;gap:10px}.form-grid>label{min-width:0}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.input-unit{position:relative}.input-unit input{padding-right:47px}.input-unit span{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--ink-3);font-size:11px;pointer-events:none}.form-message{display:flex;align-items:center;gap:6px;padding:9px 11px;border-radius:11px;background:var(--warning-bg);color:var(--warning);font-size:12px;margin:7px 0}.form-message.success{background:var(--success-bg);color:var(--success)}.system-date-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:0 12px;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.system-date-row span{display:flex;align-items:center;gap:7px;color:var(--ink-3);font-size:11px}.system-date-row strong{font-size:12px}.empty-inline{padding:18px;border:1px dashed var(--line);border-radius:16px;color:var(--ink-3);text-align:center;font-size:13px}.empty-state{display:grid;justify-items:center;padding:36px 20px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius)}.empty-state>span{display:grid;place-items:center;width:62px;height:62px;border-radius:20px;background:var(--surface);color:var(--brand-deep);margin-bottom:12px}.empty-state p{color:var(--ink-3);font-size:13px;max-width:300px;margin-top:6px}}@layer pages{.hero{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:154px;padding:22px;margin-top:8px;border-radius:28px;color:#f6f8f3;overflow:hidden;background:linear-gradient(135deg,#202820,#111512 72%);box-shadow:0 20px 60px #0d110e33}.hero:after{content:"";position:absolute;width:180px;height:180px;right:-70px;bottom:-100px;border:30px solid rgba(217,255,87,.11);border-radius:50%}.hero .eyebrow{color:var(--brand-bright);margin-bottom:7px}.hero h1{font-size:40px}.hero p:last-child{color:#abb4ac;font-size:13px;margin-top:8px}.hero.compact{min-height:134px}.day-orb{z-index:1;width:80px;height:80px;flex:0 0 80px;display:grid;place-items:center;align-content:center;border:1px solid rgba(217,255,87,.24);background:#d9ff5714;border-radius:50%;color:var(--brand-bright)}.day-orb strong{font-size:27px;line-height:1}.day-orb span{margin-top:4px;color:#bec7bf;font-size:10px}.day-orb.rest,.day-orb.done{background:var(--brand-bright);color:#151a17}.session-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;margin:13px 0;border:1px solid var(--line);border-radius:18px;background:var(--line)}.session-overview>div{display:grid;gap:3px;padding:13px 10px;background:var(--surface)}.session-overview small{color:var(--ink-3);font-size:9px}.session-overview strong{font-size:12px}.session-phase-tabs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:15px 0 10px;padding:5px;border:1px solid var(--line);border-radius:19px;background:var(--surface)}.session-phase-tabs button{min-width:0;min-height:54px;display:grid;place-items:center;align-content:center;gap:2px;padding:7px 4px;border-radius:14px;color:var(--ink-3)}.session-phase-tabs button strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px}.session-phase-tabs button small{font-size:8px}.session-phase-tabs button.active{background:var(--dark);color:var(--brand-bright)}.session-phase-tabs button.active small{color:#bec7bf}.session-guide-panel{padding:16px;border:1px solid var(--line);border-radius:22px;background:var(--surface)}.session-guide-panel .section-heading{margin-bottom:7px}.session-guide-panel .section-heading>span{color:var(--ink-3);font-size:10px}.session-guide-intro{color:var(--ink-2);font-size:11px;line-height:1.65}.session-guide-panel .warmup-list{width:100%;gap:7px;margin:12px 0 0;padding:7px;border:1px solid var(--line);border-radius:18px;background:var(--surface-muted)}.session-guide-panel .warmup-row{min-height:62px;padding:10px 9px;border-radius:14px;background:var(--surface)}.session-guide-panel .warmup-row+.warmup-row{border-top:0;border-radius:14px}.session-guide-note{margin:12px 0 0}.phase-continue{min-height:46px;margin-top:13px}.phase-continue svg{transform:none}.training-to-stretch{margin-top:4px}.warmup-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 13px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font-size:13px;font-weight:700}.warmup-toggle>span{display:flex;align-items:center;gap:9px}.warmup-toggle svg{transition:transform .2s}svg.rotate{transform:rotate(90deg)}.warmup-list{display:grid;gap:5px;margin:8px 0 0;padding:6px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.warmup-row{width:100%;min-height:58px;display:flex;align-items:center;gap:11px;padding:8px 7px;border-radius:13px;text-align:left}.warmup-row+.warmup-row{border-top:1px solid var(--line);border-radius:0}.warmup-row:active{background:var(--surface-muted)}.warmup-index{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--brand) 18%,var(--surface-muted));color:var(--brand-deep);font-size:11px;font-weight:900}.warmup-copy{flex:1;min-width:0;display:grid}.warmup-copy strong{font-size:13px}.warmup-copy small{margin-top:2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--ink-3);font-size:10px}.warmup-row>svg{flex:0 0 auto;color:var(--ink-3)}.plan-preview{margin-top:24px}.session-training-preview{margin-top:0;padding:16px;border:1px solid var(--line);border-radius:22px;background:var(--surface)}.preview-row{width:100%;min-height:64px;display:flex;align-items:center;gap:12px;padding:7px 5px;border-bottom:1px solid var(--line);text-align:left}.preview-row .index,.exercise-title .index{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:12px;background:var(--surface);color:var(--ink-3);font-size:11px;font-weight:800}.preview-copy{flex:1;display:grid;min-width:0}.preview-copy strong{font-size:14px}.preview-copy small{color:var(--ink-3);font-size:11px;margin-top:2px}.preview-row>svg{color:var(--ink-3)}.start-dock{position:sticky;z-index:8;bottom:calc(var(--nav-height) + env(safe-area-inset-bottom) + 22px);padding:16px 0 2px;background:transparent;pointer-events:none}.start-dock .button{pointer-events:auto;box-shadow:0 14px 34px #0d110e47}.rest-day-card{display:grid;justify-items:start;margin-top:16px;padding:24px;border:1px solid var(--line);border-radius:26px;background:var(--surface)}.rest-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:color-mix(in srgb,var(--brand) 18%,var(--surface));color:var(--brand-deep);margin-bottom:18px}.rest-day-card p{color:var(--ink-2);margin:7px 0 20px;font-size:13px}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.week-strip>div{display:grid;place-items:center;gap:6px;padding:9px 2px;border-radius:13px;background:var(--surface);border:1px solid var(--line)}.week-strip>div.current{background:var(--dark);color:var(--brand-bright);border-color:var(--dark)}.week-strip small{color:var(--ink-3);font-size:9px}.week-strip strong{font-size:11px}.daily-checkins{margin:15px 0;padding:15px;border:1px solid var(--line);border-radius:21px;background:var(--surface)}.daily-checkins .section-heading{margin-bottom:9px}.daily-checkin-list{display:grid;gap:7px}.daily-checkin-list button{width:100%;min-height:58px;display:grid;grid-template-columns:39px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 9px;border-radius:15px;background:var(--surface-muted);text-align:left}.daily-checkin-list button>span{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--brand) 18%,var(--surface));color:var(--brand-deep)}.daily-checkin-list button>div{display:grid}.daily-checkin-list strong{font-size:12px}.daily-checkin-list small{color:var(--ink-3);font-size:9px;margin-top:2px}.makeup-options{margin:12px 0;overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--surface)}.makeup-options>summary{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px;list-style:none;cursor:pointer}.makeup-options>summary::-webkit-details-marker{display:none}.makeup-options>summary>span{display:flex;align-items:center;gap:10px}.makeup-options>summary>span>svg{width:38px;height:38px;padding:9px;border-radius:12px;background:color-mix(in srgb,var(--brand) 18%,var(--surface));color:var(--brand-deep)}.makeup-options>summary>span>span{display:grid}.makeup-options>summary strong{font-size:13px}.makeup-options>summary small{color:var(--ink-3);font-size:9px;margin-top:2px}.makeup-options>summary>svg{transition:transform .2s}.makeup-options[open]>summary>svg{transform:rotate(90deg)}.makeup-options-list{display:grid;gap:7px;padding:9px;border-top:1px solid var(--line)}.makeup-option-row{min-height:64px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;border-radius:13px;background:var(--surface-muted)}.makeup-option-row>span{display:grid;min-width:0}.makeup-option-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.makeup-option-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-3);font-size:8px}.makeup-start-button{width:auto;min-width:72px;min-height:34px;padding:0 10px;border-radius:10px;background:var(--dark);color:var(--brand-bright);font-size:11px;line-height:1;font-weight:750;white-space:nowrap}.makeup-start-button:disabled{opacity:.62}.makeup-options>summary:focus,.makeup-start-button:focus{outline:none;box-shadow:none}.makeup-options>summary:active,.makeup-start-button:active{transform:none;box-shadow:none}.makeup-options>summary:focus-visible,.makeup-start-button:focus-visible{outline:none;box-shadow:none}.completion-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:20px;padding:23px;margin:16px 0;background:var(--surface);border:1px solid var(--line);border-radius:26px}.completion-ring{--value: 0deg;width:104px;height:104px;display:grid;place-items:center;align-content:center;border-radius:50%;background:radial-gradient(circle at center,var(--surface) 57%,transparent 59%),conic-gradient(var(--brand) var(--value),var(--surface-muted) 0)}.completion-ring strong{font-size:24px}.completion-ring span{color:var(--ink-3);font-size:9px}.completion-card p:last-child{color:var(--ink-2);font-size:12px;margin-top:6px}.active-header{display:flex;justify-content:space-between;align-items:end;padding:8px 2px 13px}.active-header h1{font-size:34px}.active-header-controls{display:grid;justify-items:end;gap:5px}.exit-workout-button{min-height:29px;display:flex;align-items:center;gap:3px;padding:0 8px;border-radius:9px;background:var(--danger-bg);color:var(--danger);font-size:10px;font-weight:750}.set-progress{display:flex;align-items:baseline}.set-progress strong{font-size:27px}.set-progress span{color:var(--ink-3);font-size:12px}.progress-track{height:5px;overflow:hidden;background:var(--surface-muted);border-radius:4px;margin-bottom:14px}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--brand-deep);transition:width .3s}.manual-stopwatch{display:grid;grid-template-columns:minmax(74px,1fr) minmax(74px,1fr) auto;align-items:center;gap:8px;min-height:76px;padding:10px 11px;margin-bottom:12px;border:1px solid var(--line);border-radius:19px;background:var(--surface)}.manual-stopwatch.running{border-color:color-mix(in srgb,var(--brand-deep) 36%,var(--line))}.stopwatch-label{display:flex;align-items:center;gap:9px;min-width:0}.stopwatch-label>span{display:grid;place-items:center;width:37px;height:37px;flex:0 0 37px;border-radius:12px;background:color-mix(in srgb,var(--brand) 15%,var(--surface));color:var(--brand-deep)}.stopwatch-label>div{display:grid}.stopwatch-label small{color:var(--ink-3);font-size:9px}.stopwatch-label strong{font-variant-numeric:tabular-nums;font-size:20px;line-height:1.1}.stopwatch-segment{min-width:0;display:grid;padding-left:9px;border-left:1px solid var(--line)}.stopwatch-segment small{color:var(--ink-3);font-size:9px}.stopwatch-segment strong{font-variant-numeric:tabular-nums;font-size:17px;line-height:1.2}.stopwatch-actions{display:flex;align-items:center;gap:5px}.stopwatch-toggle,.stopwatch-reset{min-height:38px;border-radius:12px;padding:0 10px;font-size:10px;font-weight:750}.stopwatch-toggle{display:flex;align-items:center;gap:4px;background:var(--dark);color:var(--brand-bright)}.stopwatch-reset{color:var(--ink-3);background:var(--surface-muted)}.exercise-stack{display:grid;gap:12px}.exercise-card{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:22px;transition:border-color .2s,opacity .2s}.exercise-card.done{border-color:color-mix(in srgb,var(--success) 42%,var(--line))}.exercise-card.skipped{opacity:.84;border-style:dashed}.exercise-card>header{display:flex;align-items:center;padding:11px 10px 8px}.exercise-title{flex:1;min-width:0;display:flex;align-items:center;gap:10px;text-align:left}.exercise-title>span:last-child{display:grid;min-width:0}.exercise-title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px}.exercise-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-3);font-size:10px;margin-top:2px}.condition-line{display:flex;align-items:flex-start;gap:5px;color:var(--warning);padding:0 12px 9px;font-size:10px}.condition-line svg{flex:0 0 auto;margin-top:1px}.exercise-cue{width:calc(100% - 20px);min-height:43px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 10px 9px;padding:7px 9px;border-radius:12px;color:var(--brand-deep);background:color-mix(in srgb,var(--brand) 11%,var(--surface-muted));text-align:left}.exercise-cue>span{display:grid;min-width:0}.exercise-cue strong{font-size:10px}.exercise-cue em{display:block;overflow:hidden;color:var(--ink-2);font-size:10px;font-style:normal;line-height:1.35;white-space:normal}.set-table{padding:0 10px 10px}.set-table-head,.set-row{display:grid;grid-template-columns:27px minmax(70px,1fr) minmax(62px,.75fr) 52px 43px;align-items:center;gap:5px}.set-table-head{min-height:30px;color:var(--ink-3);font-size:9px;text-align:center}.set-row{min-height:54px;padding:5px 0;border-top:1px solid var(--line)}.set-row>strong{text-align:center;color:var(--ink-3);font-size:12px}.set-row label{position:relative}.set-row label input{height:42px;padding:7px 33px 7px 10px;text-align:center;font-size:14px;font-weight:750}.set-row label span{position:absolute;right:9px;top:50%;transform:translateY(-50%);color:var(--ink-3);font-size:10px}.set-row select{height:42px;padding:5px 8px;text-align:center;font-size:13px;font-weight:700}.set-check{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--surface-muted);color:var(--ink-3);transition:background .2s,color .2s,transform .15s}.set-check:active{transform:scale(.92)}.set-countdown{height:42px;display:grid;grid-template-columns:minmax(42px,1fr) 30px 36px;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:12px;background:var(--surface-muted)}.set-countdown.running{border-color:color-mix(in srgb,var(--brand-deep) 42%,var(--line));background:color-mix(in srgb,var(--brand) 12%,var(--surface))}.set-countdown.completed{background:var(--success-bg);color:var(--success)}.set-countdown>strong{text-align:center;color:inherit;font-size:14px;font-variant-numeric:tabular-nums}.set-countdown button{height:32px;display:grid;place-items:center;border-radius:9px;background:var(--surface);color:var(--ink-2);font-size:8px}.set-countdown button:disabled{opacity:.42}.set-row.completed .set-check{background:var(--brand);color:#151a17}.set-row.completed input,.set-row.completed select{border-color:color-mix(in srgb,var(--brand-deep) 35%,var(--line))}.skip-button{width:100%;min-height:37px;color:var(--ink-3);border-top:1px solid var(--line);font-size:11px}.skip-panel{padding:3px 13px 13px}.skip-panel label{display:grid;gap:5px;color:var(--ink-2);font-size:11px}.skip-panel textarea{min-height:68px}.note-toggle{margin-top:13px}.session-note{margin-top:8px}.finish-button{margin-top:18px}.safety-footnote{color:var(--ink-3);text-align:center;font-size:10px;margin:12px 20px 0}.drawer-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;display:flex;align-items:end;justify-content:center;background:#05080694;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fade-in .2s ease;overscroll-behavior:contain}@keyframes fade-in{0%{opacity:0}}.exercise-drawer{position:relative;width:min(100%,720px);height:min(91dvh,900px);max-height:91dvh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;padding:12px 20px calc(16px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;background:var(--bg);animation:drawer-up .3s cubic-bezier(.2,.8,.2,1)}@keyframes drawer-up{0%{transform:translateY(100%)}}.drawer-handle{width:42px;height:4px;border-radius:4px;background:var(--line);margin:0 auto 12px}.drawer-close{position:absolute;right:16px;top:18px;background:var(--surface)}.exercise-visual{display:flex;align-items:center;gap:14px;min-height:100px;margin:4px 0 17px;padding:18px;border-radius:21px;color:#f4f7f1;background:linear-gradient(135deg,#1a201c,#303b21)}.exercise-visual>span{width:62px;height:62px;display:grid;place-items:center;border:1px solid rgba(217,255,87,.38);border-radius:20px;background:#d9ff571f;color:var(--brand-bright);font-size:24px;font-weight:900}.exercise-visual>div{display:grid}.exercise-visual strong{color:var(--brand-bright);font-size:12px}.exercise-visual small{color:#aab4ac;font-size:12px;margin-top:4px}.warmup-visual{background:linear-gradient(135deg,#273312,#162019)}.stretch-drawer .warmup-visual{background:linear-gradient(135deg,#315c51,#18352f)}.exercise-drawer h2{font-size:29px;margin-top:4px}.drawer-target{color:var(--ink-2);margin:6px 0 15px;font-size:13px}.drawer-aliases{color:var(--ink-3);margin:-9px 0 15px;font-size:11px}.detail-section{padding:17px;margin:11px 0;border-radius:18px;background:var(--surface);border:1px solid var(--line)}.detail-section h3{margin-bottom:9px}.detail-section ol,.detail-section ul{padding-left:20px;color:var(--ink-2);font-size:13px}.detail-section li+li{margin-top:7px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.detail-grid .detail-section{margin:0}.tutorial-section{padding:0;overflow:hidden;background:var(--dark);border-color:color-mix(in srgb,var(--brand) 24%,#202721);color:#f5f7f2}.tutorial-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 17px 12px}.tutorial-heading .eyebrow{margin-bottom:2px;color:var(--brand-bright)}.tutorial-heading h3{color:#f5f7f2}.source-badge{flex:0 0 auto;padding:5px 9px;border:1px solid rgba(217,255,87,.28);border-radius:999px;background:#d9ff571a;color:var(--brand-bright);font-size:10px;font-weight:800}.tutorial-preview{width:calc(100% - 20px);min-height:148px;margin:0 10px;padding:22px;display:flex;align-items:center;justify-content:center;gap:15px;border-radius:15px;color:#f5f7f2;text-align:left;background:radial-gradient(circle at 75% 20%,rgba(217,255,87,.2),transparent 34%),linear-gradient(135deg,#263016,#151a17 68%);border:1px solid rgba(255,255,255,.08)}.tutorial-preview:disabled{opacity:.72}.tutorial-preview>span:last-child{max-width:270px;display:grid}.tutorial-preview strong{font-size:14px;line-height:1.35}.tutorial-preview small{margin-top:6px;color:#aeb7af;font-size:11px}.tutorial-play{width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;border-radius:50%;background:var(--brand);color:#111;box-shadow:0 0 0 8px #d9ff571a,0 12px 28px #00000040}.tutorial-player{position:relative;width:calc(100% - 20px);margin:0 10px;aspect-ratio:16 / 9;overflow:hidden;border-radius:15px;background:#080a09}.tutorial-player iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.tutorial-meta{display:flex;align-items:center;gap:12px;padding:11px 17px 4px;color:#9fa9a1;font-size:10px}.tutorial-meta>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tutorial-note{padding:4px 17px 15px;color:#818b83;font-size:10px}.database-tutorial{margin:12px 0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.database-tutorial>summary{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 15px;cursor:pointer}.database-tutorial>summary>span{display:flex;align-items:center;gap:7px}.database-tutorial>summary>span:first-child{color:var(--ink)}.database-tutorial>summary>span:first-child svg{color:var(--brand-deep)}.database-tutorial>summary em{padding:4px 8px;border-radius:999px;background:var(--surface-muted);color:var(--ink-3);font-size:10px;font-style:normal;font-weight:800}.database-tutorial>summary>span:last-child svg{color:var(--ink-3);transition:transform .2s}.database-tutorial[open]>summary>span:last-child svg{transform:rotate(90deg)}.database-tutorial-panel{display:grid;gap:12px;padding:15px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-muted) 42%,var(--surface))}.database-tutorial-panel>p{color:var(--ink-2);font-size:12px}.database-tutorial-panel label{color:var(--ink-2);font-size:11px;font-weight:750}.database-tutorial-panel label input{margin-top:6px;font-size:14px}.database-tutorial-actions{display:grid;grid-template-columns:1.2fr 1fr;gap:8px}.database-tutorial-actions .button{min-width:0;min-height:44px;padding-inline:10px;font-size:12px}.database-tutorial-message{color:var(--brand-deep)!important;font-weight:700}.database-tutorial .tutorial-section{margin:2px 0 0}.drawer-action-bar{position:sticky;z-index:2;bottom:0;margin:4px -4px 0;padding:20px 4px calc(8px + env(safe-area-inset-bottom));background:transparent;pointer-events:none}.drawer-action-bar .button{pointer-events:auto;box-shadow:0 14px 34px #0d110e4d}.stat-grid{display:grid;gap:8px;margin-bottom:14px}.stat-grid.three{grid-template-columns:repeat(3,1fr)}.stat-grid>div{padding:15px 12px;background:var(--surface);border:1px solid var(--line);border-radius:17px}.stat-grid small{display:block;color:var(--ink-3);font-size:9px}.stat-grid strong{font-size:24px;line-height:1.2}.stat-grid span{color:var(--ink-3);font-size:10px;margin-left:3px}.trend-card .section-heading>svg{color:var(--brand-deep)}.mini-chart{margin-top:6px}.mini-chart svg{width:100%;height:96px;overflow:visible}.chart-area{fill:color-mix(in srgb,var(--brand) 18%,transparent);stroke:none}.chart-line{fill:none;stroke:var(--brand-deep);stroke-width:3;vector-effect:non-scaling-stroke}.mini-chart circle{fill:var(--surface);stroke:var(--brand-deep);stroke-width:2;vector-effect:non-scaling-stroke}.chart-labels{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:var(--ink-3);font-size:9px}.chart-labels strong{color:var(--ink);font-size:13px}.chart-labels span:last-child{text-align:right}.chart-empty{min-height:112px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:15px;color:var(--ink-3);text-align:center;font-size:12px;padding:20px}.chart-caption{color:var(--ink-3);text-align:center;font-size:9px;margin-top:7px}.chart-caption.advice{color:var(--warning);padding:9px;border-radius:10px;background:var(--warning-bg);font-size:10px}.history-list{display:grid;gap:9px}.history-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.history-summary{width:100%;min-height:70px;display:grid;grid-template-columns:95px minmax(0,1fr) auto 20px;align-items:center;gap:8px;padding:10px 12px;text-align:left}.history-summary>span{display:grid;min-width:0}.history-summary strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-summary small{color:var(--ink-3);font-size:9px;margin-top:2px}.rate-pill{display:block!important;padding:5px 8px;border-radius:9px;background:color-mix(in srgb,var(--brand) 17%,transparent);color:var(--brand-deep);font-size:10px;font-weight:800}.history-details{padding:0 13px 13px;border-top:1px solid var(--line)}.history-exercise{padding:12px 0;border-bottom:1px solid var(--line)}.history-exercise>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:7px}.history-exercise strong{font-size:12px}.history-exercise small{color:var(--ink-3);font-size:9px}.history-exercise p,.history-note{color:var(--ink-2);font-size:11px;margin-top:6px}.set-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.set-chips span{padding:5px 7px;border-radius:9px;background:var(--surface-muted);color:var(--ink-3);font-size:9px}.set-chips span.complete{background:color-mix(in srgb,var(--brand) 16%,var(--surface));color:var(--ink)}.set-chips em{color:var(--ink-3);font-style:normal}.skipped-tag{padding:3px 6px;border-radius:7px;background:var(--danger-bg);color:var(--danger);font-size:9px}.missing-database-tag{padding:3px 6px;border-radius:7px;background:var(--warning-bg);color:var(--warning);font-size:9px}.weight-hero{display:grid;grid-template-columns:1fr auto;min-height:148px;padding:20px 23px;margin-bottom:13px;border-radius:25px;color:#f5f7f2;background:linear-gradient(135deg,#1c231f,#101411);overflow:hidden}.weight-hero small{color:#98a29a;font-size:10px}.weight-hero p{display:flex;align-items:baseline;gap:5px;margin:5px 0}.weight-hero p strong{color:var(--brand-bright);font-size:45px;line-height:1;letter-spacing:-.05em}.weight-hero p span{color:#bcc5bd;font-size:13px}.weight-hero em{color:#a9b2aa;font-size:10px;font-style:normal}.weight-hero em.positive{color:var(--brand-bright)}.goal-meter{position:relative;width:52px;display:flex;align-items:end;justify-content:center;overflow:hidden;border-radius:18px;background:#ffffff12}.goal-meter>span{position:absolute;inset:auto 0 0;min-height:6px;background:linear-gradient(var(--brand),#739500);opacity:.85}.goal-meter small{z-index:1;padding-bottom:11px;color:#fff;text-align:center;font-size:9px}.warmup-toggle.inner{margin:2px 0 13px;background:var(--surface-muted)}.measurement-grid label{min-width:0}.measurement-grid input{padding-left:8px;padding-right:29px}.measurement-grid .input-unit span{right:7px;font-size:9px}.data-list{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.data-list>div{display:flex;align-items:center;justify-content:space-between;min-height:61px;padding:10px 14px}.data-list>div+div{border-top:1px solid var(--line)}.data-list span{display:grid}.data-list strong{font-size:12px}.data-list small{color:var(--ink-3);font-size:9px;margin-top:2px}.recovery-score-card{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:start;padding:20px;margin-bottom:13px;border-radius:24px;color:#f4f6f2;background:linear-gradient(135deg,#1d251f,#101411)}.recovery-score-card.reduce{background:linear-gradient(135deg,#423513,#1b1a12)}.recovery-score-card.rest,.recovery-score-card.pain{background:linear-gradient(135deg,#482421,#1e1514)}.recovery-score-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:17px;background:#d9ff571f;color:var(--brand-bright)}.recovery-score-card.rest .recovery-score-icon,.recovery-score-card.pain .recovery-score-icon{color:#ff9f94;background:#ff796d1f}.recovery-score-card .eyebrow{color:var(--brand-bright)}.recovery-score-card h2{margin:3px 0 5px}.recovery-score-card p:last-child{color:#adb6ae;font-size:12px}.sleep-chain{display:flex;align-items:center;gap:9px;padding:10px 13px;margin:-3px 0 13px;border-radius:14px;background:var(--danger-bg);color:var(--danger);font-size:11px;font-weight:650}.sleep-chain i{flex:1;height:1px;background:color-mix(in srgb,var(--danger) 30%,transparent)}.sleep-schedule-picker{display:grid;justify-items:center;gap:12px;margin-bottom:18px;padding:15px;border-radius:22px;background:var(--dark);color:#f7f8f3}.sleep-schedule-heading{width:100%;display:flex;align-items:center}.sleep-schedule-heading span{display:flex;align-items:center;gap:6px;color:var(--brand-bright);font-size:11px;font-weight:750}.sleep-time-summary{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:7px}.sleep-time-summary>div:not(.sleep-time-duration){min-width:0;display:grid;align-content:center;gap:2px;padding:8px 9px;border:1px solid rgba(255,255,255,.09);border-radius:13px;background:#ffffff0f}.sleep-time-summary>div>span{display:flex;align-items:center;gap:5px;color:#fff9;font-size:9px;font-weight:700}.sleep-time-summary>div>span i{width:7px;height:7px;border-radius:50%;background:var(--brand)}.sleep-time-summary>.wake-time>span i{background:#ffd56a}.sleep-time-summary>div>strong{font-size:clamp(17px,5vw,21px);font-variant-numeric:tabular-nums;line-height:1.2}.sleep-time-summary>.wake-time{text-align:right}.sleep-time-summary>.wake-time>span{justify-content:flex-end}.sleep-time-duration{display:grid;place-content:center;justify-items:center;padding:0 2px;text-align:center}.sleep-time-duration strong{color:var(--brand-bright);font-size:9px!important;white-space:nowrap}.sleep-schedule-dial{--sleep-start-angle: 0deg;--sleep-duration-angle: 105deg;position:relative;width:min(250px,71vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#202622 0 51%,transparent 52%),radial-gradient(circle,transparent 0 63%,rgba(255,255,255,.06) 64% 77%,transparent 78%),#090c0a;touch-action:none;cursor:crosshair;-webkit-tap-highlight-color:transparent}.sleep-schedule-progress{position:absolute;z-index:1;top:10px;right:10px;bottom:10px;left:10px;border-radius:50%;background:conic-gradient(from var(--sleep-start-angle),var(--brand-bright) 0deg var(--sleep-duration-angle),rgba(255,255,255,.1) var(--sleep-duration-angle) 360deg);pointer-events:none}.sleep-schedule-progress:after{content:"";position:absolute;top:18px;right:18px;bottom:18px;left:18px;border-radius:50%;background:#202622}.sleep-clock-scale{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.sleep-clock-scale line{stroke-linecap:round;vector-effect:non-scaling-stroke}.sleep-clock-scale line.quarter{stroke:#ffffff40;stroke-width:1}.sleep-clock-scale line.hour{stroke:#ffffffad;stroke-width:1.6}.sleep-clock-scale text{fill:#ffffffa8;font-size:7px;font-weight:750;font-variant-numeric:tabular-nums;text-anchor:middle;dominant-baseline:central}.sleep-schedule-handle{position:absolute;z-index:4;top:8px;right:8px;bottom:8px;left:8px;border-radius:50%;transform:rotate(var(--handle-angle));pointer-events:none}.sleep-schedule-handle button{position:absolute;left:50%;top:-11px;width:44px;height:44px;padding:0;transform:translate(-50%);border:0;border-radius:50%;background:transparent;box-shadow:none;pointer-events:auto;touch-action:none}.sleep-schedule-handle button:before{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border:2px solid #fff;border-radius:50%;background:var(--brand)}.sleep-schedule-handle button:after{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;border-radius:50%;background:#26311e}.sleep-schedule-handle.wake-time button:before{background:#ffd56a}.sleep-schedule-handle.wake-time button:after{background:#3b3014}.sleep-schedule-handle button:focus,.sleep-schedule-handle button:active{outline:none;box-shadow:none}.sleep-schedule-handle button:active{transform:translate(-50%)}.sleep-schedule-handle button:focus-visible{outline:none;box-shadow:none}.sleep-schedule-center{position:absolute;z-index:2;top:28%;right:28%;bottom:28%;left:28%;display:grid;place-items:center;align-content:center;border:1px solid rgba(255,255,255,.08);border-radius:50%;background:#1b211d;pointer-events:none}.sleep-schedule-center>svg{color:var(--brand);margin-bottom:3px}.sleep-schedule-center>strong{display:flex;align-items:baseline;gap:3px;font-size:29px;font-variant-numeric:tabular-nums;line-height:1}.sleep-schedule-center>strong span{color:#ffffff94;font-size:9px}.sleep-schedule-center>b{color:#ffffffb8;font-size:10px;font-weight:650}.range-label{margin:7px 0 18px!important}.range-label>span{display:grid;grid-template-columns:1fr auto;align-items:center}.range-label>span strong{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;background:var(--dark);color:var(--brand-bright);font-size:13px}.range-label small{grid-column:1 / -1;color:var(--ink-3);font-size:9px;font-weight:500}input[type=range]{height:25px;padding:0;border:0;box-shadow:none;accent-color:var(--brand-deep);background:transparent}.joint-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;min-height:62px;padding:10px 12px;border:1px solid var(--line);border-radius:15px;background:var(--surface-strong);margin-bottom:13px;text-align:left}.joint-toggle>span{display:flex;align-items:center;gap:10px}.joint-toggle>span>span{display:grid}.joint-toggle strong{font-size:12px}.joint-toggle small{color:var(--ink-3);font-size:9px}.joint-toggle i{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--surface-muted);color:transparent}.joint-toggle.active{border-color:var(--danger);color:var(--danger);background:var(--danger-bg)}.joint-toggle.active i{background:var(--danger);color:#fff}.recovery-history{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.recovery-history-row{width:100%;display:flex;justify-content:space-between;align-items:center;min-height:61px;padding:10px 13px;text-align:left}.recovery-history-row+.recovery-history-row{border-top:1px solid var(--line)}.recovery-history-row>span:first-child{display:grid}.recovery-history strong{font-size:12px}.recovery-history small{color:var(--ink-3);font-size:9px}.recovery-history-row>span:last-child{display:flex;align-items:center;gap:4px;padding:5px 8px;border-radius:9px;background:var(--success-bg);color:var(--success);font-size:10px;font-weight:800}.recovery-history-row>span.low{background:var(--danger-bg);color:var(--danger)}.install-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.app-mark img{width:52px;height:52px;border-radius:16px}.install-card h2{font-size:15px}.install-card p{color:var(--ink-3);font-size:10px;margin-top:3px}.equipment-chips{display:flex;flex-wrap:wrap;gap:7px;margin:7px 0 12px}.equipment-chips span{display:flex;align-items:center;gap:5px;padding:7px 8px 7px 11px;border:1px solid var(--line);border-radius:11px;background:var(--surface-muted);font-size:11px}.equipment-chips button{color:var(--ink-3);padding:1px}.inline-add{display:grid;grid-template-columns:1fr auto;gap:8px}.plan-settings>details{border-top:1px solid var(--line)}.plan-settings>details>summary{list-style:none;min-height:61px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.plan-settings>details>summary::-webkit-details-marker{display:none}.plan-settings>details>summary>span{display:grid}.plan-settings>details>summary strong{font-size:13px}.plan-settings>details>summary small{color:var(--ink-3);font-size:9px;margin-top:2px}.plan-settings>details>summary svg{transition:transform .2s}.plan-settings>details[open]>summary svg{transform:rotate(90deg)}.override-list{display:grid;gap:7px;padding:0 0 13px}.override-row{padding:11px;border-radius:14px;background:var(--surface-muted)}.override-row>strong{display:block;font-size:11px;margin-bottom:8px}.override-row>div{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.override-row label{display:grid;gap:3px;color:var(--ink-3);font-size:8px}.override-row input{min-width:0;height:36px;padding:5px;text-align:center;font-size:11px}.reset-plan{width:100%;margin-top:10px}.week-plan-calendar{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:6px;margin:13px -3px 16px;padding:3px 3px 8px;overflow-x:auto;scrollbar-width:thin}.week-plan-calendar button{min-height:78px;display:grid;align-content:center;justify-items:center;gap:4px;padding:7px 5px;border:1px solid var(--line);border-radius:15px;background:var(--surface-muted)}.week-plan-calendar button.active{border-color:var(--dark);background:var(--dark);color:var(--brand-bright);box-shadow:none}.week-plan-calendar small{color:var(--ink-3);font-size:9px}.week-plan-calendar button.active small{color:color-mix(in srgb,var(--brand-bright) 72%,transparent)}.week-plan-calendar strong{max-width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.week-plan-calendar span{color:var(--ink-3);font-size:8px}.plan-day-editor{padding:13px;border:1px solid var(--line);border-radius:18px;background:var(--surface-muted)}.plan-day-details{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface-muted)}.plan-day-details>summary{min-height:60px;display:flex;align-items:center;justify-content:space-between;padding:10px 13px;list-style:none;cursor:pointer}.plan-day-details>summary::-webkit-details-marker{display:none}.plan-day-details>summary>span{display:grid}.plan-day-details>summary strong{font-size:12px}.plan-day-details>summary small{color:var(--ink-3);font-size:9px;margin-top:2px}.plan-day-details>summary>svg{transition:transform .2s}.plan-day-details[open]>summary>svg{transform:rotate(90deg)}.plan-day-details .plan-day-editor{border:0;border-top:1px solid var(--line);border-radius:0}.plan-day-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.plan-day-toolbar h3{font-size:18px}.day-enable-toggle{min-width:70px;min-height:37px;padding:0 12px;border-radius:12px;background:var(--surface);color:var(--ink-3);font-size:11px;font-weight:800}.day-enable-toggle.active{background:var(--brand);color:#151a17}.plan-day-fields label,.copy-day-field,.plan-exercise-editor label{display:grid;gap:5px;color:var(--ink-3);font-size:10px;font-weight:700}.plan-day-fields{margin-bottom:10px}.copy-day-field{margin-bottom:12px}.plan-exercise-list{display:grid;gap:10px}.plan-exercise-editor{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.plan-exercise-editor-header{display:grid;grid-template-columns:32px minmax(0,1fr) 38px;align-items:center;gap:9px;padding:12px 12px 8px}.plan-exercise-index{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:var(--dark);color:var(--brand-bright);font-size:10px;font-weight:850}.plan-exercise-name{min-width:0;display:grid;gap:2px;padding:0;text-align:left}.plan-exercise-name strong,.plan-exercise-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-exercise-name strong{color:var(--ink);font-size:15px;line-height:1.25}.plan-exercise-name small{color:var(--ink-3);font-size:10px;font-weight:550}.plan-detail-button{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--surface-muted);color:var(--brand-deep)}.custom-exercise-name{min-width:0}.custom-exercise-name>span{color:var(--warning);font-size:9px}.custom-exercise-name input{height:39px;min-height:39px;font-size:14px;font-weight:750}.plan-exercise-summary{display:flex;align-items:center;gap:5px;overflow-x:auto;padding:0 12px 10px 53px;scrollbar-width:none}.plan-exercise-summary::-webkit-scrollbar{display:none}.plan-exercise-summary span{flex:0 0 auto;padding:5px 7px;border-radius:8px;background:var(--surface-muted);color:var(--ink-3);font-size:9px}.plan-exercise-summary strong{color:var(--ink-2)}.plan-card-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:8px 10px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-muted) 58%,var(--surface))}.plan-card-actions button{min-width:0;min-height:35px;display:flex;align-items:center;justify-content:center;gap:3px;padding:0 4px;border-radius:9px;background:var(--surface);color:var(--ink-2);font-size:11px;font-weight:800}.plan-card-actions button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.plan-card-actions button.remove{background:var(--danger-bg);color:var(--danger)}.plan-card-actions button:disabled{opacity:.32}.plan-settings .plan-exercise-parameters{margin:0;border:0;border-top:1px solid var(--line)}.plan-settings .plan-exercise-parameters>summary{min-height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:var(--ink-2);font-size:10px;font-weight:800}.plan-settings .plan-exercise-parameters>summary svg{color:var(--ink-3);transition:transform .2s}.plan-settings .plan-exercise-parameters[open]>summary svg{transform:rotate(90deg)}.plan-exercise-parameter-panel{padding:12px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface-muted) 46%,var(--surface))}.plan-exercise-main{margin-bottom:10px}.exercise-parameter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.exercise-parameter-grid input{min-width:0;height:41px;padding:5px;text-align:center;font-size:14px;font-weight:700}.exercise-parameter-grid .checkbox-field{grid-column:1 / -1;min-height:40px;display:flex;align-items:center;gap:8px;padding:0 10px;border-radius:11px;background:var(--surface);color:var(--ink-2)}.exercise-parameter-grid .checkbox-field input{width:17px;height:17px}.add-plan-exercise{margin-top:2px}.plan-estimate{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 11px;border-radius:12px;background:color-mix(in srgb,var(--brand) 12%,var(--surface));color:var(--ink-2);font-size:10px}.plan-estimate strong{color:var(--ink)}.plan-exercise-notes{margin-top:8px}.plan-exercise-notes textarea{min-height:68px;padding:10px 11px;font-size:13px}.plan-undo{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 2px;padding:9px 11px;border-radius:12px;background:var(--dark);color:#f4f7f1;font-size:10px}.plan-undo button{color:var(--brand-bright);font-weight:800}.library-backdrop{position:fixed;z-index:1400;top:0;right:0;bottom:0;left:0;display:flex;align-items:stretch;justify-content:center;background:#050806ad;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:fade-in .18s ease}.exercise-library{--library-inline: 18px;position:relative;isolation:isolate;width:100%;max-width:760px;min-width:0;height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--bg);animation:drawer-up .25s cubic-bezier(.2,.8,.2,1)}.library-header{position:sticky;z-index:12;top:0;width:100%;min-width:0;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(12px,env(safe-area-inset-top)) var(--library-inline) 10px;border-bottom:1px solid var(--line);background:var(--bg)}.library-header>div{min-width:0}.library-header h2{font-size:24px}.library-header .icon-button{background:var(--surface)}.library-search-sticky{position:sticky;z-index:11;top:76px;isolation:isolate;width:100%;min-width:0;display:grid;gap:10px;padding:14px var(--library-inline) 16px;border-bottom:1px solid var(--line);border-radius:0 0 22px 22px;background:var(--bg);box-shadow:0 12px 24px #141a160b}.library-search{position:relative;min-width:0;display:flex;align-items:center}.library-search>span{position:absolute;left:15px;color:var(--ink-3);font-size:22px;transform:rotate(-15deg)}.library-search input{height:52px;min-height:52px;padding-left:45px;padding-right:44px;border-radius:17px;font-size:16px;font-weight:650}.library-search button{position:absolute;right:9px;width:34px;height:34px;display:grid;place-items:center;color:var(--ink-3)}.library-filter-details{width:100%;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.library-filter-details>summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 13px;cursor:pointer}.library-filter-details>summary>span{min-width:0;display:flex;align-items:center;gap:7px}.library-filter-details>summary>span:first-child{display:grid;gap:1px}.library-filter-details>summary strong{font-size:13px}.library-filter-details>summary small{overflow:hidden;color:var(--ink-3);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.library-filter-details>summary em{padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--brand) 20%,var(--surface));color:var(--brand-deep);font-size:9px;font-style:normal;font-weight:800;white-space:nowrap}.library-filter-details>summary svg{flex:0 0 auto;color:var(--ink-3);transition:transform .2s}.library-filter-details[open]>summary svg{transform:rotate(90deg)}.library-filter-panel{min-width:0;display:grid;gap:10px;padding:11px 12px 13px;border-top:1px solid var(--line);border-radius:0 0 15px 15px;background:color-mix(in srgb,var(--surface-muted) 38%,var(--surface))}.library-body-filters{width:100%;max-width:100%;min-width:0;display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:2px 0 5px;overscroll-behavior-inline:contain;touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:none}.library-body-filters::-webkit-scrollbar{display:none}.library-body-filters button,.library-filter-summary button{flex:0 0 auto;min-height:40px;padding:0 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);font-size:12px;font-weight:750}.library-body-filters button.active,.library-filter-summary button.active{border-color:var(--dark);background:var(--dark);color:var(--brand-bright)}.library-select-filters{width:100%;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.library-select-filters select{min-width:0;height:44px;min-height:44px;padding:0 10px;border-radius:13px;font-size:12px}.library-filter-summary{min-width:0;display:flex;align-items:center;gap:9px;min-height:40px}.library-filter-summary span{margin-left:auto;color:var(--ink-3);font-size:11px}.library-filter-summary button:last-child:not(:first-child){min-height:32px;padding:0 7px;border:0;color:var(--brand-deep);background:transparent}.library-content{width:100%;min-width:0;display:grid;gap:28px;padding:22px var(--library-inline) calc(112px + env(safe-area-inset-bottom))}.library-content>section,.recent-exercises{width:100%;max-width:100%;min-width:0}.library-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 13px}.library-section-title strong{font-size:17px}.library-section-title small{color:var(--ink-3);font-size:11px}.library-results{width:100%;max-width:100%;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.recent-exercises{overflow:hidden}.recent-exercise-track{width:100%;max-width:100%;min-width:0;display:grid;grid-auto-flow:column;grid-auto-columns:calc(100% - 34px);gap:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:9px;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}.recent-exercise-track::-webkit-scrollbar{display:none}.recent-exercise-track .library-card,.recent-exercise-track .library-card button{touch-action:pan-x pan-y}.library-card{width:100%;max-width:100%;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:0 8px 26px #141a1609;transition:border-color .2s,box-shadow .2s}.library-card.selected{border-color:var(--brand-deep);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 25%,transparent)}.library-card-main{position:relative;width:100%;min-width:0;min-height:168px;display:grid;align-content:start;gap:12px;padding:18px;text-align:left}.library-card-heading{display:grid;min-width:0;padding-right:74px}.library-card-heading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.3}.library-card-heading small{margin-top:3px;color:var(--ink-3);font-size:11px}.library-card-tags{min-width:0;display:flex;flex-wrap:wrap;gap:6px}.library-card-tags em{max-width:100%;overflow-wrap:anywhere;padding:6px 9px;border-radius:9px;background:var(--surface-muted);color:var(--ink-2);font-size:10px;font-style:normal}.library-prescription{color:var(--ink-2);font-size:12px}.library-card-badges{position:absolute;top:16px;right:14px;display:grid;justify-items:end;gap:5px}.already-added,.tutorial-available{min-height:24px;display:inline-flex;align-items:center;gap:3px;padding:5px 8px;border-radius:8px;font-size:9px;font-weight:800}.already-added{background:var(--success-bg);color:var(--success)}.tutorial-available{background:color-mix(in srgb,#ffd45c 28%,var(--surface));color:color-mix(in srgb,#9a6900 88%,var(--ink))}.library-card-actions{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px;border-top:1px solid var(--line)}.library-card-actions button{min-height:44px;border-radius:13px;font-size:11px;font-weight:800}.favorite-button{min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:13px;background:var(--surface-muted);color:var(--ink-3);font-size:21px}.favorite-button.active{color:#c49000;background:#fff6cf}:root[data-theme=dark] .favorite-button.active{color:#ffd45c;background:#3a321c}.select-exercise{background:var(--surface-muted);color:var(--ink-2)}.select-exercise.active{background:color-mix(in srgb,var(--brand) 25%,var(--surface));color:var(--brand-deep)}.quick-add-exercise{background:var(--dark);color:var(--brand-bright)}.library-empty{padding:58px 22px;border:1px dashed var(--line);border-radius:22px;color:var(--ink-2);text-align:center}.library-empty span{font-weight:800}.library-empty p{margin-top:7px;color:var(--ink-3);font-size:12px}.library-selection-bar{position:sticky;z-index:9;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px calc(11px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.library-selection-bar span{color:var(--ink-2);font-size:11px}.library-selection-bar strong{color:var(--ink);font-size:18px}.library-selection-bar .button{min-height:43px;padding-inline:18px}.library-detail{min-width:0;min-height:100%;padding:max(12px,env(safe-area-inset-top)) var(--library-inline) calc(92px + env(safe-area-inset-bottom))}.library-detail-header{position:sticky;z-index:6;top:0;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:calc(-1*max(12px,env(safe-area-inset-top))) calc(-1 * var(--library-inline)) 14px;padding:max(12px,env(safe-area-inset-top)) var(--library-inline) 10px;border-bottom:1px solid var(--line);background:var(--bg)}.detail-back{display:flex;align-items:center;gap:4px;color:var(--ink-2);font-size:11px;font-weight:800}.detail-back svg{transform:rotate(180deg)}.library-detail-hero{padding:23px;border-radius:22px;background:linear-gradient(135deg,#1a201c,#303b21);color:#f4f7f1}.library-detail-hero .eyebrow{color:var(--brand-bright)}.library-detail-hero h2{margin-top:5px;font-size:31px}.library-detail-hero p:last-child{margin-top:7px;color:#aeb7af;font-size:11px}.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:11px 0}.detail-facts>div{display:grid;gap:3px;padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.detail-facts small{color:var(--ink-3);font-size:8px}.detail-facts strong{color:var(--ink-2);font-size:11px}.exercise-relations{display:grid;gap:8px;margin:11px 0}.exercise-relations>div{display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.exercise-relations small{color:var(--ink-3);font-size:9px;font-weight:800}.exercise-relations span{display:flex;flex-wrap:wrap;gap:6px}.exercise-relations button,.exercise-relations em{padding:6px 8px;border-radius:8px;background:var(--surface-muted);color:var(--brand-deep);font-size:10px;font-style:normal;font-weight:750}.library-detail-actions{position:sticky;z-index:7;bottom:calc(-92px - env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1.3fr;gap:8px;margin:18px -4px -76px;padding:14px 4px calc(9px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.progression-content{width:100%;min-width:0;display:grid;gap:22px;padding:22px var(--library-inline) calc(30px + env(safe-area-inset-bottom))}.progression-hero{min-width:0;padding:22px;border-radius:22px;background:linear-gradient(135deg,#1a201c,#303b21);color:#f4f7f1}.progression-hero .eyebrow{color:var(--brand-bright)}.progression-hero h1{margin-top:5px;overflow-wrap:anywhere;font-size:clamp(28px,8vw,40px)}.progression-hero>p:last-child{margin-top:8px;color:#aeb7af;font-size:12px}.relation-group>div:last-child{display:grid;gap:12px}.relation-option{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px;border:1px solid var(--line);border-radius:19px;background:var(--surface)}.relation-option>div{min-width:0}.relation-option small{color:var(--brand-deep);font-size:10px;font-weight:800}.relation-option h3{margin-top:2px;overflow-wrap:anywhere}.relation-option p{margin-top:4px;color:var(--ink-3);font-size:11px}.relation-option .button{min-height:42px;padding-inline:12px;font-size:11px}.relation-empty{display:grid;justify-items:center;gap:8px;padding:36px 22px;border:1px dashed var(--line);border-radius:20px;background:var(--surface);color:var(--ink-2);text-align:center}.relation-empty svg{color:var(--brand-deep)}.relation-empty p{max-width:420px;color:var(--ink-3);font-size:12px}.progression-return{margin-top:2px}.week-plan-calendar button:focus,.plan-day-details>summary:focus,.day-enable-toggle:focus,.plan-exercise-editor button:focus,.add-plan-exercise:focus{outline:none;box-shadow:none}.week-plan-calendar button:active,.plan-day-details>summary:active,.day-enable-toggle:active,.plan-exercise-editor button:active,.add-plan-exercise:active{transform:none;box-shadow:none}.week-plan-calendar button:focus-visible,.plan-day-details>summary:focus-visible,.day-enable-toggle:focus-visible,.plan-exercise-editor button:focus-visible,.add-plan-exercise:focus-visible{outline:none;box-shadow:none}.data-card>p{color:var(--ink-2);font-size:12px;margin:-4px 0 14px}.data-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.danger-button{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;gap:7px;margin-top:13px;border-radius:14px;background:var(--danger-bg);color:var(--danger);font-size:12px;font-weight:750}.settings-footer{display:grid;justify-items:center;gap:4px;color:var(--ink-3);padding:18px;font-size:9px}.settings-footer strong{color:var(--ink-2)}.coach-page{min-height:calc(100dvh - var(--nav-height) - 58px);display:flex;flex-direction:column}.coach-header{align-items:center}.coach-settings-button{border:1px solid transparent}.coach-settings-button.active{border-color:color-mix(in srgb,var(--brand) 58%,transparent);background:var(--brand);color:#151a17}.coach-status-card{position:relative;overflow:hidden;padding:18px;margin-bottom:14px;border-radius:25px;background:linear-gradient(135deg,#1b221c,#101411 70%);color:#f5f7f2;box-shadow:0 18px 50px #0c110d33}.coach-status-card:after{content:"";position:absolute;right:-56px;top:-67px;width:170px;height:170px;border:28px solid rgba(217,255,87,.08);border-radius:50%;pointer-events:none}.coach-status-heading{position:relative;z-index:1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.coach-orb{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(217,255,87,.23);border-radius:16px;background:#d9ff5714;color:var(--brand-bright)}.coach-status-heading .eyebrow{color:var(--brand-bright)}.coach-status-heading h2{margin-top:3px;font-size:17px}.connection-dot{width:9px;height:9px;border-radius:50%;background:#757d76;box-shadow:0 0 0 5px #ffffff0d}.connection-dot.connected{background:var(--brand-bright);box-shadow:0 0 0 5px #d9ff571a,0 0 18px #d9ff5780}.connection-dot.checking{background:#ffd26a;animation:coach-pulse 1s ease infinite}.connection-dot.error{background:#ff796d}@keyframes coach-pulse{50%{opacity:.35;transform:scale(.8)}}.coach-context-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;margin-top:16px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:#ffffff14}.coach-context-stats>div{min-width:0;padding:10px;background:#0f1410d1}.coach-context-stats small{display:block;color:#89928a;font-size:8px}.coach-context-stats strong{font-size:19px}.coach-context-stats span{margin-left:3px;color:#aab2ab;font-size:8px}.connection-message{position:relative;z-index:1;display:flex;align-items:center;gap:6px;margin-top:10px;color:#9fa8a0;font-size:9px}.connection-message>span{width:5px;height:5px;border-radius:50%;background:currentColor}.connection-message.connected{color:var(--brand-bright)}.connection-message.error{color:#ff9b91}.coach-config-card label{display:grid;gap:6px;margin-bottom:12px;color:var(--ink-2);font-size:11px;font-weight:700}.coach-model-row{min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface-muted)}.coach-model-row span{display:grid}.coach-model-row small{color:var(--ink-3);font-size:8px}.coach-model-row strong{font-size:13px}.coach-model-row em{padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--brand) 18%,var(--surface));color:var(--brand-deep);font-size:9px;font-style:normal;font-weight:800}.coach-advanced-settings{margin:9px 0;border:1px solid var(--line);border-radius:14px}.coach-advanced-settings>summary{min-height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:var(--ink-2);font-size:10px;font-weight:750}.coach-advanced-settings>summary svg{transition:transform .2s}.coach-advanced-settings[open]>summary svg{transform:rotate(90deg)}.coach-advanced-settings label{padding:0 11px 11px;margin:0}.coach-advanced-settings input{font-size:12px}.coach-config-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:8px}.coach-config-actions .button{min-height:45px;font-size:12px;text-decoration:none}.coach-remove-key{width:100%;margin:8px auto -5px;color:var(--danger);text-align:center}.coach-welcome{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;padding:18px;margin-bottom:12px;border:1px solid var(--line);border-radius:21px;background:var(--surface)}.coach-welcome>span{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--brand) 20%,var(--surface));color:var(--brand-deep)}.coach-welcome h2{margin:2px 0 5px}.coach-welcome p:last-child{color:var(--ink-2);font-size:11px;line-height:1.65}.coach-quick-section{width:100%;overflow:hidden;margin-bottom:14px}.coach-quick-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(235px,calc(72% - 8px));gap:9px;overflow-x:auto;overflow-y:hidden;padding:1px 2px 8px;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:none}.coach-quick-track::-webkit-scrollbar{display:none}.coach-quick-track>button{min-width:0;min-height:63px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:17px;background:var(--surface);text-align:left;scroll-snap-align:start;touch-action:pan-x pan-y}.coach-quick-track>button>svg:first-child{width:32px;height:32px;padding:7px;border-radius:10px;background:var(--dark);color:var(--brand-bright)}.coach-quick-track>button>svg:last-child{color:var(--ink-3)}.coach-quick-track span{min-width:0;display:grid}.coach-quick-track strong{font-size:12px}.coach-quick-track small{overflow:hidden;margin-top:2px;color:var(--ink-3);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.coach-conversation{display:grid;gap:14px}.coach-conversation-heading{display:flex;align-items:center;justify-content:space-between;padding:0 2px;color:var(--ink-3);font-size:9px;font-weight:800;letter-spacing:.08em}.coach-conversation-heading button{display:flex;align-items:center;gap:4px;padding:5px;color:var(--ink-3);font-size:9px;letter-spacing:0}.coach-message{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px}.coach-message.user{grid-template-columns:minmax(0,1fr);padding-left:16%}.coach-avatar{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:var(--dark);color:var(--brand-bright);box-shadow:0 7px 18px #0c100d21}.coach-message-body{min-width:0;padding:13px 14px;border:1px solid var(--line);border-radius:5px 18px 18px;background:var(--surface);box-shadow:0 8px 25px #141a1609}.coach-message.user .coach-message-body{border-color:color-mix(in srgb,var(--brand) 48%,var(--line));border-radius:18px 5px 18px 18px;background:color-mix(in srgb,var(--brand) 15%,var(--surface))}.coach-message.error .coach-message-body{border-color:color-mix(in srgb,var(--danger) 30%,var(--line));background:var(--danger-bg)}.coach-message.error .coach-avatar{background:var(--danger);color:#fff}.coach-message-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.coach-message-meta strong{font-size:10px}.coach-message-meta time{color:var(--ink-3);font-size:8px}.coach-message-copy{display:grid;gap:8px;color:var(--ink-2);font-size:13px;line-height:1.72}.coach-message.user .coach-message-copy{color:var(--ink)}.coach-insights{display:grid;gap:7px;margin-top:12px}.coach-insights>div{position:relative;display:grid;grid-template-columns:7px minmax(0,1fr);column-gap:8px;padding:10px;border-radius:12px;background:var(--surface-muted)}.coach-insights>div>span{grid-row:1 / 3;align-self:stretch;width:4px;border-radius:4px;background:var(--ink-3)}.coach-insights>div.positive>span{background:var(--success)}.coach-insights>div.warning>span{background:var(--warning)}.coach-insights strong{font-size:10px}.coach-insights p{color:var(--ink-2);font-size:10px;line-height:1.55}.coach-follow-ups{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.coach-follow-ups button{min-height:32px;padding:6px 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);color:var(--ink-2);font-size:9px;font-weight:700;text-align:left}.coach-usage{display:block;margin-top:9px;color:var(--ink-3);font-size:8px}.coach-plan-proposal{margin-top:13px;padding:12px;border:1px solid color-mix(in srgb,var(--brand) 42%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--brand) 8%,var(--surface))}.coach-plan-proposal>header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center}.coach-plan-proposal>header>span{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:var(--dark);color:var(--brand-bright)}.coach-plan-proposal h3{margin-top:2px}.coach-plan-proposal>p{margin:9px 0;color:var(--ink-2);font-size:10px;line-height:1.6}.coach-plan-changes{display:grid;gap:6px;margin-bottom:10px}.coach-plan-changes>div{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px;border-radius:11px;background:var(--surface)}.coach-plan-changes>div>span{min-width:0;display:grid}.coach-plan-changes small{color:var(--brand-deep);font-size:8px;font-weight:800}.coach-plan-changes strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.coach-plan-changes em{margin-top:2px;color:var(--ink-3);font-size:8px;font-style:normal}.coach-plan-changes b{display:flex;align-items:center;gap:2px;color:var(--ink-2);font-size:9px;white-space:nowrap}.coach-plan-changes b svg{color:var(--brand-deep)}.coach-plan-actions{display:grid;grid-template-columns:.9fr 1.1fr;gap:7px}.coach-plan-proposal .button{min-height:42px;padding:8px 7px;font-size:9px;line-height:1.25}.coach-proposal-note{display:block;margin-top:7px;color:var(--ink-3);font-size:8px;text-align:center}.coach-undone-note{display:block;margin-top:7px;color:var(--warning);font-size:8px;text-align:center}.coach-applied{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding:8px 9px;border-radius:10px;background:var(--success-bg);color:var(--success);font-size:9px;font-weight:750}.coach-applied>span{min-width:0;display:flex;align-items:center;gap:6px}.coach-applied>button{flex:0 0 auto;min-height:29px;padding:0 8px;border:1px solid color-mix(in srgb,var(--success) 34%,transparent);border-radius:8px;color:var(--success);font-size:8px;font-weight:800}.coach-typing{min-height:61px;display:flex;align-items:center;gap:10px}.coach-typing>div{min-width:0;display:grid}.coach-typing strong{font-size:10px}.coach-typing small{color:var(--ink-3);font-size:8px}.coach-typing button{margin-left:auto;color:var(--danger);font-size:9px;font-weight:750}.coach-spinner{width:22px;height:22px;flex:0 0 22px;border:2px solid var(--line);border-top-color:var(--brand-deep);border-radius:50%;animation:coach-spin .8s linear infinite}.coach-spinner.small{width:16px;height:16px;flex-basis:16px}@keyframes coach-spin{to{transform:rotate(360deg)}}.coach-conversation-end{height:1px}.coach-jump-bottom{position:fixed;z-index:60;right:max(17px,calc((100vw - 760px)/2 + 17px));bottom:calc(var(--nav-height) + 137px + env(safe-area-inset-bottom));min-height:36px;display:flex;align-items:center;gap:6px;padding:0 13px;border:1px solid color-mix(in srgb,var(--brand) 38%,transparent);border-radius:999px;background:var(--dark);color:var(--brand-bright);box-shadow:0 10px 28px #0a0f0b33;font-size:10px;font-weight:800}.coach-jump-bottom svg{transform:rotate(90deg)}.coach-composer-wrap{position:sticky;z-index:30;bottom:calc(var(--nav-height) + 18px + env(safe-area-inset-bottom));margin-top:auto;padding:18px 0 2px;background:transparent}.coach-mode-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 3px 6px}.coach-mode-row button{min-height:27px;display:flex;align-items:center;gap:4px;padding:0 8px;border-radius:999px;background:var(--surface-muted);color:var(--ink-2);font-size:8px;font-weight:800}.coach-mode-row button.active{background:var(--dark);color:var(--brand-bright)}.coach-mode-row span{color:var(--ink-3);font-size:8px}.coach-composer{display:grid;grid-template-columns:minmax(0,1fr) 47px;align-items:end;gap:7px;padding:6px;border:1px solid color-mix(in srgb,var(--line) 72%,var(--brand) 28%);border-radius:19px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 13px 38px #0a0f0b26;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.coach-composer textarea{min-height:44px;max-height:116px;padding:11px;border:0;border-radius:14px;background:transparent;box-shadow:none;font-size:16px;resize:none}.coach-composer textarea:focus{box-shadow:none}.coach-composer>button{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;background:var(--dark);color:var(--brand-bright)}.coach-composer>button svg{transform:rotate(-90deg)}}@layer responsive{@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse){html,body{width:100%;height:100%;overflow:hidden}body{padding:0}#root{visibility:hidden;pointer-events:none}#portrait-guard{position:fixed;z-index:2000;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;align-content:center;gap:10px;padding:24px;background:var(--bg);color:var(--ink);text-align:center}#portrait-guard span{width:68px;height:68px;display:grid;place-items:center;margin-bottom:8px;border-radius:22px;background:var(--dark);color:var(--brand-bright);font-size:38px;font-weight:800;line-height:1;transform:rotate(-90deg)}#portrait-guard strong{font-size:24px}#portrait-guard small{color:var(--ink-3);font-size:13px}}@media (max-width: 420px){.page{padding-inline:13px}.brand-bar{padding-inline:15px}.hero{padding:19px}.hero h1{font-size:36px}.day-orb{width:70px;height:70px;flex-basis:70px}.detail-grid{grid-template-columns:1fr}.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.history-summary{grid-template-columns:82px minmax(0,1fr) auto 17px;padding-inline:9px}.rate-pill{padding-inline:6px}.install-card{grid-template-columns:auto 1fr}.install-card .button{grid-column:1 / -1;width:100%}.library-results{grid-template-columns:1fr}.exercise-library{--library-inline: 13px}.library-select-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-parameter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-card-actions{grid-template-columns:repeat(5,minmax(0,1fr));padding-inline:8px}.plan-exercise-summary{padding-left:12px}.bottom-nav{width:calc(100% - 18px)}.bottom-nav button{gap:3px;font-size:9px}.bottom-nav button svg{width:19px;height:19px}.coach-message.user{padding-left:9%}.coach-plan-changes>div{grid-template-columns:1fr}.coach-plan-changes b{justify-content:flex-start}.set-table-head,.set-row{grid-template-columns:23px minmax(66px,1fr) minmax(56px,.78fr) 48px 40px;gap:3px}.set-row label input{padding-left:5px;padding-right:25px}}@media (min-width: 761px){body{padding:30px 0 120px}.app-shell{position:relative;min-height:calc(100vh - 60px);background:color-mix(in srgb,var(--bg) 88%,transparent);border:1px solid var(--line);border-radius:30px;box-shadow:0 30px 100px #0c100d24;overflow:hidden}.page{padding-inline:30px}.bottom-nav{bottom:18px;width:520px;height:68px;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding-bottom:8px}.rest-timer{bottom:98px}.start-dock{bottom:87px}.desktop-safety{display:flex;position:fixed;left:22px;bottom:20px;align-items:center;gap:6px;color:var(--ink-3);font-size:10px}.exercise-drawer{border-radius:28px;margin-bottom:20px;max-height:calc(100vh - 40px)}.drawer-backdrop{align-items:center}.confirm-backdrop{align-items:center;padding:20px}.confirm-dialog{border-bottom:1px solid var(--line);border-radius:28px;padding-bottom:22px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}}
