:root,.light{--background:#f6f3ee;--surface:#fff;--text-primary:#1c1a3a;--text-secondary:#5b5877;--text-tertiary:#6b6785;--accent:#f0653a;--action-primary:#d14819;--on-action-primary:#fff;--accent-graphic:#e0552b;--accent-text:#b8441c;--border:#e4dfd6;--input-border:#8a859e;--progress-track:#e4dfd6;--success:#2f7d57;--warning:#9a6200;--danger:#c0362c;--tab-bar:#1c1a3a;--tab-bar-active:#f0653a;--tab-bar-inactive:#8e8bb0;--surface-muted:#f1ede6;--accent-soft:#fcede7;--success-soft:#f0f8f3;--warning-soft:#faf3e6;--danger-soft:#fbeae7;--hero:#1c1a3a;--on-hero:#f6f3ee;--on-hero-secondary:#b4b1cc;--scrim:#14132b8f;--shadow:0 1px 2px #1c1a3a0f, 0 4px 16px #1c1a3a0d}.dark{--background:#14132b;--surface:#232046;--text-primary:#f6f3ee;--text-secondary:#b4b1cc;--text-tertiary:#8e8bb0;--accent-graphic:#f0653a;--accent-text:#f0653a;--border:#2e2b55;--input-border:#807ca8;--progress-track:#2e2b55;--success:#5cc48f;--warning:#f2b544;--danger:#ff7a6e;--tab-bar:#232046;--surface-muted:#2b2852;--accent-soft:#3a2744;--success-soft:#21384a;--warning-soft:#3a3046;--danger-soft:#3d2647;--hero:#2b2852;--on-hero:#f6f3ee;--on-hero-secondary:#b4b1cc;--scrim:#080714a3;--shadow:none}.workout{--background:#121027;--surface:#1e1b3d;--text-primary:#fff;--text-secondary:#c9c6e0;--text-tertiary:#a9a6c8;--accent-graphic:#f0653a;--accent-text:#f0653a;--border:#2e2b55;--input-border:#77739f;--progress-track:#2e2b55;--success:#5cc48f;--warning:#f2b544;--danger:#ff7a6e;--tab-bar:#1e1b3d;--surface-muted:#28254c;--accent-soft:#3a2744;--success-soft:#21384a;--warning-soft:#3a3046;--danger-soft:#3d2647;--hero:#28254c;--on-hero:#fff;--on-hero-secondary:#c9c6e0;--scrim:#080714b3;--shadow:none}:root{--sp-xxs:2px;--sp-xs:4px;--sp-sm:8px;--sp-md:12px;--sp-lg:16px;--sp-xl:24px;--sp-xxl:32px;--gutter:20px;--r-card:24px;--r-inner:16px;--r-control:14px;--r-well:12px;--r-pill:999px;--tap:44px}*{box-sizing:border-box}body,p,h1,h2,h3,h4{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.screen{background:var(--background);width:393px;height:100vh;min-height:852px;color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:Readex Pro,sans-serif;position:relative;overflow:hidden}.status{inset-inline:0;z-index:30;direction:ltr;justify-content:space-between;align-items:center;height:47px;padding:14px 28px 0;font-size:15px;font-weight:600;display:flex;position:absolute;top:0}.status i{opacity:.85;background:currentColor;border-radius:6px;width:64px;height:12px;-webkit-mask:linear-gradient(90deg,#000 70%,#0000 70%);mask:linear-gradient(90deg,#000 70%,#0000 70%)}.scroll{padding:59px var(--gutter) 132px;gap:var(--sp-xl);flex-direction:column;display:flex;position:absolute;inset:0;overflow-y:auto}.scroll>*,.sheet-body>*{flex-shrink:0}.scroll::-webkit-scrollbar{display:none}.scroll.stack{padding-top:115px;padding-bottom:40px}.scroll.stack.has-bar{padding-bottom:120px}.scroll.bare{padding-bottom:40px}.display{font-size:40px;font-weight:700;line-height:52px}.metric{letter-spacing:-.5px;font-size:56px;font-weight:700;line-height:68px}.h1{font-size:28px;font-weight:600;line-height:40px}.h2{font-size:22px;font-weight:600;line-height:32px}.h3{font-size:18px;font-weight:600;line-height:28px}.body-lg{font-size:17px;font-weight:400;line-height:28px}.body{font-size:15px;font-weight:400;line-height:24px}.body-sm{font-size:13px;font-weight:400;line-height:20px}.label{font-size:15px;font-weight:500;line-height:22px}.label-sm{font-size:13px;font-weight:500;line-height:18px}.caption{font-size:12px;font-weight:400;line-height:18px}.button{font-size:16px;font-weight:600;line-height:22px}.button-primary{font-size:16px;font-weight:700;line-height:22px}[dir=rtl]:not(html) .display{line-height:70px}[dir=rtl]:not(html) .metric{line-height:98px}[dir=rtl]:not(html) .h1{line-height:49px}[dir=rtl]:not(html) .h2{line-height:39px}[dir=rtl]:not(html) .h3{line-height:32px}[dir=rtl]:not(html) .body-lg{line-height:30px}[dir=rtl]:not(html) .body{line-height:27px}[dir=rtl]:not(html) .body-sm{line-height:23px}[dir=rtl]:not(html) .label{line-height:27px}[dir=rtl]:not(html) .label-sm{line-height:23px}[dir=rtl]:not(html) .caption{line-height:21px}[dir=rtl]:not(html) .button,[dir=rtl]:not(html) .button-primary{line-height:28px}.t2{color:var(--text-secondary)}.t3{color:var(--text-tertiary)}.ta{color:var(--accent-text)}.ts{color:var(--success)}.tw{color:var(--warning)}.td{color:var(--danger)}.num{direction:ltr;unicode-bidi:isolate}.l1{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.l2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.row{align-items:center;gap:var(--sp-md);min-width:0;display:flex}.col{flex-direction:column;min-width:0;display:flex}.between{justify-content:space-between}.top{align-items:flex-start}.base{align-items:baseline}.grow{flex:1;min-width:0}.none{flex:none}.g2{gap:var(--sp-xxs)}.g4{gap:var(--sp-xs)}.g8{gap:var(--sp-sm)}.g12{gap:var(--sp-md)}.g16{gap:var(--sp-lg)}.g24{gap:var(--sp-xl)}.wrap{flex-wrap:wrap}.grid2{gap:var(--sp-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.grid4{gap:var(--sp-md);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.grid3{gap:var(--sp-sm);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.divider{background:var(--border);height:1px}.ic{background:currentColor;flex:none;width:24px;height:24px;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.ic.s16{width:16px;height:16px}.ic.s20{width:20px;height:20px}.ic.s28{width:28px;height:28px}.ic.s32{width:32px;height:32px}.screen[dir=rtl]:not(html) .ic.flip{transform:scaleX(-1)}.well{border-radius:var(--r-well);background:var(--surface-muted);width:40px;height:40px;color:var(--text-primary);flex:none;place-items:center;display:grid}.well.accent{background:var(--accent-soft);color:var(--accent-text)}.well.lg{border-radius:var(--r-inner);width:48px;height:48px}.page-title{justify-content:space-between;align-items:center;gap:var(--sp-md);min-height:49px;padding-top:var(--sp-sm);display:flex}.header{z-index:20;inset-inline:0;padding:47px var(--sp-sm) 0;background:var(--background);position:absolute;top:0}.header.raised{border-bottom:1px solid var(--border)}.header .bar{align-items:center;gap:var(--sp-xs);height:56px;display:flex}.header .bar .title{flex:1;min-width:0}.icon-btn{width:var(--tap);height:var(--tap);border-radius:var(--r-pill);color:var(--text-primary);flex:none;place-items:center;display:grid}.icon-btn.filled{background:var(--surface);box-shadow:var(--shadow)}.icon-btn.muted{background:var(--surface-muted)}.card{background:var(--surface);border-radius:var(--r-card);padding:var(--sp-lg);gap:var(--sp-md);box-shadow:var(--shadow);flex-direction:column;min-width:0;display:flex}.dark .card,.workout .card{border:1px solid var(--border)}.card.tight{gap:var(--sp-sm)}.card.flush{gap:0;padding:0;overflow:hidden}.card.hero{background:var(--hero);color:var(--on-hero);box-shadow:none;border:0}.card.hero .t2{color:var(--on-hero-secondary)}.card.selected{outline:2px solid var(--accent-graphic);outline-offset:-2px}.inset{background:var(--surface-muted);border-radius:var(--r-inner);padding:var(--sp-md);gap:var(--sp-sm);flex-direction:column;min-width:0;display:flex}.section{gap:var(--sp-md);flex-direction:column;display:flex}.section-head{justify-content:space-between;align-items:center;gap:var(--sp-md);min-height:32px;display:flex}.link{color:var(--accent-text);align-items:center;gap:var(--sp-xs);min-height:var(--tap);font-size:15px;font-weight:600;display:inline-flex}.list{flex-direction:column;display:flex}.li{align-items:center;gap:var(--sp-md);min-height:52px;padding:var(--sp-sm) 0;min-width:0;display:flex}.li+.li{border-top:1px solid var(--border)}.card.flush .li{padding-inline:var(--sp-lg)}.li .body-col{gap:var(--sp-xxs);flex-direction:column;flex:1;min-width:0;display:flex}.li .trail{align-items:center;gap:var(--sp-sm);color:var(--text-secondary);text-align:end;flex:none;display:flex}.li.tap{cursor:pointer}.btn{justify-content:center;align-items:center;gap:var(--sp-sm);height:52px;padding:0 var(--sp-xl);border-radius:var(--r-control);white-space:nowrap;min-width:0;font-size:16px;font-weight:600;display:inline-flex}.btn.primary{background:var(--action-primary);color:var(--on-action-primary);font-weight:700}.btn.secondary{background:var(--surface-muted);color:var(--text-primary)}.btn.outline{border:1.5px solid var(--input-border);color:var(--text-primary)}.btn.ghost{color:var(--accent-text);padding:0 var(--sp-md)}.btn.danger{color:var(--danger);background:var(--danger-soft)}.btn.on-hero{color:var(--on-hero);background:#ffffff1f}.btn.sm{height:40px;padding:0 var(--sp-lg);border-radius:12px;font-size:15px}.btn.block{width:100%}.btn.grow{flex:1}.btn[disabled],.btn.disabled{opacity:.4;pointer-events:none}.btn.loading .spin{border:2.5px solid;border-inline-end-color:#0000;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.btn.loading .spin,.skeleton{animation:none!important}}.btn-row{gap:var(--sp-sm);min-width:0;display:flex}.seg{padding:var(--sp-xs);gap:var(--sp-xs);background:var(--surface-muted);border-radius:var(--r-control);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.seg button{height:40px;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;padding:0 var(--sp-sm);border-radius:10px;font-size:15px;font-weight:500;overflow:hidden}.seg button.on{background:var(--surface);color:var(--text-primary);box-shadow:var(--shadow);font-weight:600}.dark .seg button.on,.workout .seg button.on{background:var(--action-primary);color:var(--on-action-primary)}.chips{gap:var(--sp-sm);flex-wrap:wrap;display:flex}.chips.scroll-x{margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);flex-wrap:nowrap;overflow-x:auto}.chips.scroll-x::-webkit-scrollbar{display:none}.chip{align-items:center;gap:var(--sp-xs);height:36px;padding:0 var(--sp-md);border-radius:var(--r-pill);border:1.5px solid var(--border);background:var(--surface);color:var(--text-primary);white-space:nowrap;flex:none;font-size:13px;font-weight:500;display:inline-flex}.chip.on{background:var(--action-primary);border-color:var(--action-primary);color:var(--on-action-primary)}.chip.dashed{color:var(--text-secondary);border-style:dashed}.tag{align-items:center;gap:var(--sp-xs);border-radius:var(--r-pill);white-space:nowrap;background:var(--surface-muted);height:26px;color:var(--text-secondary);flex:none;padding:0 10px;font-size:12px;font-weight:500;display:inline-flex}.tag .ic{width:14px;height:14px}.tag.ok{background:var(--success-soft);color:var(--success)}.tag.warn{background:var(--warning-soft);color:var(--warning)}.tag.bad{background:var(--danger-soft);color:var(--danger)}.tag.accent{background:var(--accent-soft);color:var(--accent-text)}.dark .tag.accent,.workout .tag.accent{color:var(--text-primary)}.card.hero .tag{color:var(--on-hero);background:#ffffff1f}.field{gap:var(--sp-xs);flex-direction:column;min-width:0;display:flex}.field .lbl{color:var(--text-secondary);font-size:13px;font-weight:500}.input{align-items:center;gap:var(--sp-sm);height:52px;padding:0 var(--sp-lg);border-radius:var(--r-control);border:1.5px solid var(--input-border);background:var(--surface);min-width:0;font-size:16px;display:flex}.input .v{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.input .unit{color:var(--text-secondary);flex:none;font-size:15px}.input.focus{border-color:var(--accent-graphic);box-shadow:0 0 0 3px var(--accent-soft)}.input.error{border-color:var(--danger)}.input.ph .v{color:var(--text-tertiary)}.field .help{color:var(--text-secondary);font-size:12px}.field .err{color:var(--danger);gap:var(--sp-xs);align-items:center;font-size:12px;display:flex}.stepper{align-items:center;gap:var(--sp-sm);display:flex}.stepper .icon-btn{background:var(--surface-muted)}.toggle{background:var(--progress-track);border-radius:16px;flex:none;width:52px;height:32px;position:relative}.toggle:after{content:"";top:3px;background:#fff;border-radius:50%;width:26px;height:26px;position:absolute;inset-inline-start:3px;box-shadow:0 1px 3px #0003}.toggle.on{background:var(--action-primary)}.toggle.on:after{inset-inline-start:23px}.track{background:var(--progress-track);border-radius:4px;height:8px;overflow:hidden}.track.lg{border-radius:6px;height:12px}.track .fill{border-radius:inherit;background:var(--accent-graphic);height:100%}.track .fill.ok{background:var(--success)}.card.hero .track{background:#ffffff24}.dots{gap:var(--sp-sm);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.dot-day{align-items:center;gap:var(--sp-xs);flex-direction:column;min-width:0;display:flex}.dot-day .d{aspect-ratio:1;border:1.5px solid var(--border);border-radius:50%;place-items:center;width:100%;max-width:36px;font-size:13px;font-weight:600;display:grid}.dot-day .d.done{background:var(--success);border-color:var(--success);color:#fff}.dot-day .d.today{border:2px solid var(--accent-graphic);color:var(--accent-text)}.dot-day .d.miss{background:var(--surface-muted);color:var(--text-secondary);border-color:#0000}.card.hero .dot-day .d{border-color:#ffffff38}.card.hero .dot-day .d.today{border-color:var(--accent);color:var(--on-hero);background:#f0653a38}.stat{gap:var(--sp-xxs);flex-direction:column;min-width:0;display:flex}.macro{gap:var(--sp-xs);flex-direction:column;min-width:0;display:flex}.tab-fade{z-index:9;inset-inline:0;pointer-events:none;background:linear-gradient(to bottom, transparent, var(--background) 62%);height:132px;position:absolute;bottom:0}.tabbar{z-index:10;inset-inline:16px;background:var(--tab-bar);height:68px;padding:0 var(--sp-xs);border-radius:26px;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:absolute;bottom:26px}.dark .tabbar{border:1px solid var(--border)}.tabbar a{color:var(--tab-bar-inactive);flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;font-size:11px;font-weight:500;line-height:16px;display:flex}.tabbar a span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.tabbar a.on{color:var(--tab-bar-active);font-weight:600}.tabbar a.on .pip{background:var(--tab-bar-active);border-radius:2px;width:4px;height:4px}.tabbar a .pip{width:4px;height:4px}.home-ind{z-index:11;background:var(--text-primary);opacity:.9;border-radius:3px;width:134px;height:5px;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.action-bar{z-index:15;inset-inline:0;padding:var(--sp-md) var(--gutter) 34px;background:var(--background);border-top:1px solid var(--border);gap:var(--sp-sm);display:flex;position:absolute;bottom:0}.scrim{z-index:40;background:var(--scrim);position:absolute;inset:0}.sheet{z-index:41;inset-inline:0;background:var(--surface);max-height:86%;padding:var(--sp-sm) var(--gutter) 34px;gap:var(--sp-lg);border-radius:28px 28px 0 0;flex-direction:column;display:flex;position:absolute;bottom:0}.dark .sheet,.workout .sheet{border-top:1px solid var(--border)}.sheet .grab{background:var(--border);width:40px;height:5px;margin-bottom:var(--sp-xs);border-radius:3px;align-self:center}.sheet .sheet-body{gap:var(--sp-md);flex-direction:column;display:flex;overflow-y:auto}.dialog{z-index:41;inset-inline:24px;background:var(--surface);border-radius:var(--r-card);padding:var(--sp-xl);gap:var(--sp-lg);flex-direction:column;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.toast{z-index:45;inset-inline:var(--gutter);background:var(--tab-bar);color:#f6f3ee;border-radius:var(--r-inner);padding:var(--sp-md) var(--sp-lg);align-items:center;gap:var(--sp-md);display:flex;position:absolute;bottom:110px}.dark .toast{color:#1c1a3a;background:#f6f3ee}.toast .act{color:var(--accent);flex:none;font-weight:600}.dark .toast .act{color:#b8441c}.banner{gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border-radius:var(--r-inner);background:var(--surface-muted);align-items:flex-start;display:flex}.banner.warn{background:var(--warning-soft);color:var(--text-primary)}.banner.warn>.ic{color:var(--warning)}.banner.bad{background:var(--danger-soft)}.banner.bad>.ic{color:var(--danger)}.banner.info>.ic{color:var(--text-secondary)}.empty{text-align:center;align-items:center;gap:var(--sp-md);padding:var(--sp-xxl) var(--sp-lg);flex-direction:column;display:flex}.empty .well{border-radius:20px;width:64px;height:64px}.skeleton{background:var(--surface-muted);border-radius:8px;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.55}}.poster{border-radius:var(--r-inner);background:#1c1a3a;place-items:center;display:grid;position:relative;overflow:hidden}.poster.h{aspect-ratio:16/9}.poster.v{aspect-ratio:9/16;width:auto;max-height:360px}.poster .play{background:var(--action-primary);color:#fff;border-radius:50%;place-items:center;width:56px;height:56px;display:grid}.poster .cap{inset-inline:0;padding:var(--sp-md);color:#fff;background:linear-gradient(#0000,#121027d9);font-size:13px;font-weight:500;position:absolute;bottom:0}.yt{background:red;border-radius:4px;flex:none;width:22px;height:16px;display:inline-block;position:relative}.yt:after{content:"";border:4px solid #0000;border-left:6.5px solid #fff;border-right-width:0;position:absolute;top:4px;left:8.5px}.photo{border-radius:var(--r-inner);background:var(--surface-muted);color:var(--text-tertiary);place-items:center;display:grid;overflow:hidden}.big-num{letter-spacing:-1px;font-size:72px;font-weight:700;line-height:80px}.big-ctl{background:var(--surface-muted);width:64px;height:64px;color:var(--text-primary);border-radius:20px;flex:none;place-items:center;display:grid}.btn.xl{border-radius:20px;height:64px;font-size:18px}.ia-note{z-index:50;inset-inline:96px 8px;color:#3a2e00;text-align:left;direction:ltr;background:#ffe58a;border-radius:10px;max-height:41px;padding:4px 8px;font-size:10px;font-weight:500;line-height:13px;position:absolute;top:4px;overflow:hidden;box-shadow:0 2px 8px #0003}.ia-note:hover{max-height:none}.seg.compact button{padding:0 var(--sp-xs);font-size:13px}.btn-row .btn.grow{flex:1 0 auto;max-width:100%}.btn-row .btn:not(.grow){flex:0 auto}.btn>.l1{min-width:0}.icon-btn[disabled],.icon-btn.disabled{opacity:.4;pointer-events:none}.metric-row{align-items:baseline;gap:var(--sp-xs);white-space:nowrap;display:inline-flex}.metric-row .unit{color:inherit;opacity:.75;font-size:17px;font-weight:500}body{background:var(--background);color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:Readex Pro,sans-serif}.page{max-width:560px;padding:var(--sp-lg) var(--sp-lg) var(--sp-xxl);gap:var(--sp-lg);flex-direction:column;margin:0 auto;display:flex}.page.narrow{max-width:420px;padding-top:var(--sp-xxl)}.banner{background:var(--warning-soft);color:var(--warning);border-radius:var(--r-inner);padding:var(--sp-md)}.foot{padding-top:var(--sp-sm)}input.input,.input input{font:inherit;color:var(--text-primary);background:var(--surface);width:100%}.input input{background:0 0;border:0;outline:0;height:100%;padding:0}.input:focus-within,input.input:focus{border-color:var(--accent-graphic);box-shadow:0 0 0 3px var(--accent-soft);outline:0}.ltr-input{text-align:left;direction:ltr}.num{text-align:left}.save{margin-top:26px}[dir=rtl] .label-sm+.h1{margin-top:2px}.week{flex-direction:column;display:flex}.week-row{gap:var(--sp-sm);min-height:40px;padding-inline:var(--sp-sm);border-radius:var(--r-well);grid-template-columns:3.2em 1.4fr 1fr 1fr 2.6em;align-items:center;display:grid}.week-row.head{min-height:28px}.week-row.on{background:var(--surface-muted)}.week-row>:last-child{justify-self:center}
