:root{color:#f4f5ef;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#101215;--panel:#191c20;--panel-2:#20242a;--line:#303640;--text:#f4f5ef;--muted:#a9b0aa;--green:#2ed47a;--amber:#f2b84b;--red:#ff5b5b;--cyan:#73d7ff;background:#101215;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(180deg, #ffffff0a, transparent 220px), var(--bg);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{border:1px solid var(--line);min-height:44px;color:var(--text);background:#262b32;border-radius:8px;padding:0 14px;font-weight:750}button:active{transform:translateY(1px)}button.primary,.hero-actions button:first-child{background:var(--green);color:#07110b;border-color:#0000}button.secondary{background:0 0}button.danger{color:#ffd6d6;background:#ff5b5b1f;border-color:#ff5b5b73}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--text);background:#111418;border-radius:8px;min-height:44px;padding:10px 12px}input[type=range]{accent-color:var(--green);padding:0}textarea{resize:vertical}label{color:var(--muted);gap:7px;font-size:.82rem;font-weight:700;display:grid}h1,h2,h3,p{margin:0}h1{font-size:1.25rem}h2{font-size:1.35rem}h3{font-size:1rem}.brand{align-items:center;gap:10px;display:flex}.brand-button{min-height:0;color:inherit;text-align:left;background:0 0;border:0;padding:0}.brand-button:hover{transform:none}.logo-mark{background:linear-gradient(135deg,#2ed47a,#73d7ff);border:1px solid #2ed47a8c;border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.logo-mark span{border:4px solid #101215;border-top-color:#0000;border-radius:50%;width:20px;height:20px;transform:rotate(-35deg)}.shell{width:min(100%,520px);min-height:100vh;margin:0 auto;padding:18px 14px 96px}.auth-shell{place-items:center;min-height:100vh;padding:18px;display:grid}.auth-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:14px;width:min(100%,420px);padding:18px;display:grid}.topbar{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#101215eb;justify-content:space-between;align-items:center;gap:12px;padding:10px 0 16px;display:flex;position:sticky;top:0}.eyebrow{color:var(--cyan);text-transform:uppercase;font-size:.72rem;font-weight:850}.content,.stack{gap:12px;display:grid}.status-pill{color:#111;text-transform:uppercase;border-radius:8px;place-items:center;width:70px;height:58px;display:grid}.status-pill span{font-size:.66rem;font-weight:900}.status-pill strong{font-size:1.35rem;line-height:1}.green{background:var(--green)}.amber{background:var(--amber)}.red{background:var(--red)}.hero,.panel,.metric{border:1px solid var(--line);border-radius:8px}.hero{color:#101215;gap:12px;padding:18px;display:grid}.hero h2{font-size:2.1rem;line-height:1}.hero p:not(.eyebrow){font-weight:700}.hero .eyebrow{color:#000000b3}.hero-actions,.button-row,.split,.weight-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.hero-actions button.secondary{color:#101215;border-color:#0000004d}.hero-button{letter-spacing:0;border-radius:8px;place-items:center;min-height:52px;display:grid;box-shadow:0 8px 18px #00000029}.hero-button.primary-cta{color:var(--text);background:#101215;border-color:#0000002e}.hero-button.secondary-cta{color:#101215;background:#fff3;border-color:#0000004d}.panel{background:var(--panel);gap:13px;padding:14px;display:grid}.fieldset-panel{margin:0}.fieldset-panel:disabled{opacity:.72}.log-status{background:#111418;border:1px solid #73d7ff47;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.log-status p{color:#dfe4dc;font-size:.82rem;line-height:1.35}.log-status button{min-height:38px}.log-day-state{background:#111a15;border:1px solid #2ed47a57;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:10px;display:grid}.log-day-state span{color:var(--muted);font-size:.78rem;font-weight:800}.log-day-state strong{justify-self:end;font-size:.82rem}.log-day-state button{grid-column:1/-1;min-height:38px}.log-step-shell{z-index:2;position:sticky;top:8px}.log-stepper{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.log-stepper button{border-color:var(--line);min-height:54px;color:var(--muted);letter-spacing:0;justify-items:center;gap:4px;padding:7px 4px;font-size:.66rem;display:grid}.log-stepper button span{background:var(--panel-2);width:22px;height:22px;color:var(--text);border-radius:999px;place-items:center;font-size:.72rem;display:grid}.log-stepper button.active{color:var(--text);background:#183626;border-color:#2ed47a8c}.log-stepper button.skipped{color:#f2b84b;border-style:dashed}.log-step-panel{align-content:start;min-height:360px}.day-picker{grid-template-columns:48px minmax(0,1fr) 48px;align-items:stretch;gap:8px;display:grid}.day-picker button{min-height:72px;padding:0;font-size:1.45rem}.day-picker label{border:1px solid var(--line);text-align:center;background:#111418;border-radius:8px;place-items:center;gap:8px;min-height:72px;padding:10px;display:grid}.day-picker label span{color:var(--text);font-size:1.15rem;font-weight:900}.day-picker input{text-align:center;min-height:34px;padding:6px 8px}.log-step-actions{z-index:3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#191c20f5;grid-template-columns:1fr 1fr 1fr;position:sticky;bottom:82px}.log-step-actions button{min-height:46px}.log-review-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.log-review-grid span{border:1px solid var(--line);background:var(--panel-2);color:var(--muted);border-radius:8px;padding:10px;font-size:.82rem;line-height:1.35}.panel.prominent{background:#221f18;border-color:#f2b84b99}.metric-grid,.dashboard-charts,.goal-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.weekly-plan-card .section-title button{min-height:38px}.plan-day-grid,.plan-detail-grid,.reminder-grid{gap:8px;display:grid}.plan-day-grid{grid-template-columns:repeat(3,1fr)}.plan-day-grid.full{grid-template-columns:1fr}.plan-day,.plan-detail-grid article{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;gap:6px;padding:10px;display:grid}.plan-day span,.plan-detail-grid span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.plan-day p,.plan-detail-grid p{color:var(--muted);font-size:.82rem;line-height:1.35}.plan-day.easy{border-color:#73d7ff73}.plan-day.steady{border-color:#f2b84b73}.plan-day.hard{border-color:#2ed47a73}.toggle-row{min-height:42px;color:var(--text);align-items:center;gap:10px;font-weight:800;display:flex}.toggle-row input{width:20px;height:20px}.chart-card{border:1px solid var(--line);background:#111418;border-radius:8px;gap:8px;min-height:170px;padding:12px;display:grid}.chart-card span,.chart-card small,.goal-card span,.goal-card small{color:var(--muted);font-size:.78rem;font-weight:800}.chart-card strong{overflow-wrap:anywhere;align-self:start;font-size:1.2rem;line-height:1.1}.goal-card{border:1px solid var(--line);background:#111418;border-radius:8px;gap:7px;min-height:118px;padding:12px;display:grid}.goal-card strong{overflow-wrap:anywhere;align-self:center;font-size:1.35rem;line-height:1.1}.goal-card.good{background:#2ed47a14;border-color:#2ed47a8c}.goal-card.good strong{color:var(--green)}.goal-card.watch{background:#f2b84b17;border-color:#f2b84b99}.goal-card.watch strong{color:var(--amber)}.goal-card.danger{background:#ff5b5b14;border-color:#ff5b5b8c}.goal-card.danger strong{color:#ffd6d6}.spark-bars{align-items:end;gap:5px;height:62px;display:flex}.spark-bars i{background:var(--green);border-radius:8px 8px 2px 2px;flex:1;min-height:8px;display:block}.spark-bars.amber i{background:var(--amber)}.spark-bars.cyan i{background:var(--cyan)}.line-chart{border:1px solid var(--line);background:#111418;border-radius:8px;gap:8px;padding:10px;display:grid}.line-chart svg{width:100%;height:190px;overflow:visible}.line-chart .grid-line{fill:none;stroke:#ffffff14;stroke-width:.6px}.line-chart .trend-line{fill:none;stroke:var(--green);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6px;vector-effect:non-scaling-stroke}.line-chart circle{fill:var(--green);stroke:#111418;stroke-width:1.4px;vector-effect:non-scaling-stroke}.line-chart.amber .trend-line{stroke:var(--amber)}.line-chart.amber circle{fill:var(--amber)}.line-chart.cyan .trend-line{stroke:var(--cyan)}.line-chart.cyan circle{fill:var(--cyan)}.axis-labels{color:var(--muted);justify-content:space-between;gap:10px;font-size:.72rem;font-weight:800;display:flex}.metric{background:var(--panel);gap:6px;min-height:112px;padding:13px;display:grid}.metric span,.metric small{color:var(--muted);font-size:.78rem;font-weight:750}.metric strong{overflow-wrap:anywhere;align-self:center;font-size:1.16rem;line-height:1.15}.metric.danger{border-color:#ff5b5b8c}.reason,.insight-line{border-left:3px solid var(--green);color:#dfe4dc;padding:8px 0 8px 10px;line-height:1.35}.section-title{justify-content:space-between;align-items:start;gap:12px;display:flex}.section-title p{color:var(--muted);font-size:.78rem;line-height:1.3}.section-title strong{color:var(--cyan);white-space:nowrap}.range-label span{justify-content:space-between;align-items:center;display:flex}.range-label strong{color:var(--text);font-size:1rem}.quality{gap:7px;display:grid}.quality>span,.mini-title{color:var(--muted);font-size:.82rem;font-weight:800}.quality div,.segmented{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.segmented{grid-template-columns:repeat(2,minmax(0,1fr))}.quality button,.segmented button{text-overflow:ellipsis;text-transform:capitalize;min-height:38px;padding:0 8px;font-size:.82rem;overflow:hidden}.quality button.active,.segmented button.active,.bottom-nav button.active{background:var(--green);color:#07110b;border-color:#0000}.toggle{align-items:center;gap:10px;min-height:44px;display:flex}.toggle input{width:18px;min-height:18px;accent-color:var(--green)}.chips{flex-wrap:wrap;gap:7px;display:flex}.chips span{border:1px solid var(--line);color:#d7ddd5;background:#111418;border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:700}.meal-row{border:1px solid var(--line);background:#111418;border-radius:8px;gap:9px;padding:11px;display:grid}.file-button{border:1px solid var(--line);min-height:44px;color:var(--text);text-align:center;background:#262b32;border-radius:8px;place-items:center;padding:0 14px;display:grid}.file-button input{display:none}.lift-list{gap:8px;display:grid}.lift-list div{border:1px solid var(--line);background:#111418;border-radius:8px;grid-template-columns:1fr auto;gap:4px 10px;padding:10px;display:grid}.lift-list span,.lift-list small{color:var(--muted);font-size:.78rem;font-weight:800}.lift-list strong{color:var(--text)}.lift-list small{grid-column:1/-1}.parsed-list{gap:6px;display:grid}.parsed-list span{border:1px solid var(--line);color:#dfe4dc;background:#111418;border-radius:8px;padding:9px 10px;font-size:.82rem;font-weight:750;line-height:1.25}.workout-loader{border-color:#73d7ff66}.exercise-library-panel{border-color:#2ed47a6b}.train-hero{border-color:#2ed47a61}.training-choice-grid{grid-template-columns:1fr;gap:8px;display:grid}.training-choice-card{border-color:var(--line);background:var(--panel-2);text-align:left;justify-items:start;gap:6px;min-height:88px;padding:12px;display:grid}.training-choice-card span{color:var(--cyan);text-transform:uppercase;font-size:.72rem;font-weight:900}.training-choice-card strong{color:var(--text);font-size:1rem}.training-choice-card small{color:var(--muted);line-height:1.35}.training-choice-card:hover{border-color:#2ed47a80}.library-preview{border:1px solid var(--line);background:#111418;border-radius:8px;gap:9px;padding:11px;display:grid}.library-preview div:first-child,.exercise-info-header{justify-content:space-between;align-items:start;gap:10px;display:flex}.library-preview span,.exercise-info-header span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:900}.library-preview strong,.exercise-info-header strong{color:var(--text)}.library-preview p{color:#dfe4dc;font-size:.86rem;line-height:1.35}.tag-list{flex-wrap:wrap;gap:6px;display:flex}.tag-list span{color:#d8f4ff;background:#73d7ff14;border:1px solid #73d7ff42;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800}.full{width:100%}.exercise{background:var(--panel-2);position:relative;overflow:hidden}.exercise.actions-open{border-color:#73d7ff8c}.set-row{border:1px solid #0000;border-radius:8px;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 38px 38px;align-items:center;gap:7px;margin-top:7px;padding:5px;transition:background .16s,border-color .16s;display:grid}.set-row.completed{background:#2ed47a14;border-color:#2ed47a59}.set-row.completed span{color:var(--green);background:#2ed47a2e}.set-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.set-title button,.compact-button{min-height:34px;padding:0 8px;font-size:.72rem}.set-add-button,.set-complete-button,.set-delete-button{place-items:center;width:34px;padding:0;font-size:1.05rem;line-height:1;display:grid}.set-add-button{color:var(--green);background:#2ed47a1f;border-color:#2ed47a73}.set-complete-button{color:var(--muted);background:#ffffff0a;border-color:#a9b0aa59;border-radius:50%;font-size:.94rem}.set-complete-button[aria-pressed=true]{background:var(--green);color:#07110b;border-color:#0000}.icon-button{min-height:36px;padding:0 10px;font-size:.76rem}.exercise-actions{flex-wrap:wrap;justify-content:end;gap:7px;display:flex}.info-button{width:36px;min-height:36px;color:var(--cyan);background:#73d7ff1a;border-color:#73d7ff8c;border-radius:50%;place-items:center;padding:0;font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:900;display:grid}.swipe-action-button{width:42px;min-height:36px;color:var(--text);touch-action:pan-y;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,#ffffff0f,#73d7ff1f);border-color:#ffffff24;place-items:center;padding:0;font-size:1.35rem;line-height:1;display:grid}.exercise-action-rail{background:#111418;border:1px solid #73d7ff42;border-radius:8px;grid-template-columns:1fr 1fr 1fr;gap:7px;padding:8px;display:grid}.exercise-action-rail button{min-height:38px;padding:0 8px;font-size:.78rem}.exercise-info{background:#111418;border:1px solid #73d7ff52;border-radius:8px;gap:11px;padding:12px;display:grid}.exercise-info-header a{color:#07110b;background:var(--green);white-space:nowrap;border:1px solid #2ed47a80;border-radius:8px;place-items:center;min-height:36px;padding:0 10px;font-size:.78rem;font-weight:900;text-decoration:none;display:grid}.info-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.info-grid div{align-content:start;gap:6px;display:grid}.info-grid ul{color:#dfe4dc;gap:5px;margin:0;padding-left:18px;font-size:.82rem;line-height:1.35;display:grid}.exercise-name-input{min-height:38px;padding:8px 10px;font-size:1rem;font-weight:850}.set-row span{width:28px;height:28px;color:var(--muted);background:#111418;border-radius:8px;place-items:center;font-weight:850;display:grid}.bar-chart{background:#111418;border-radius:8px;align-items:end;gap:8px;height:145px;padding:12px;display:flex}.bar-chart div{background:var(--green);border-radius:8px 8px 3px 3px;flex:1;min-height:8px}.bar-chart.units div{background:var(--amber)}details{border:1px solid var(--line);background:#111418;border-radius:8px;padding:10px}summary{cursor:pointer;font-weight:850}.settings-section{padding:0;overflow:hidden}.settings-section>summary{justify-content:space-between;align-items:center;gap:12px;padding:14px;list-style:none;display:flex}.settings-section>summary::-webkit-details-marker{display:none}.settings-section>summary:after{content:"+";border:1px solid var(--line);width:28px;height:28px;color:var(--cyan);border-radius:999px;flex:none;place-items:center;font-weight:900;display:grid}.settings-section[open]>summary{border-bottom:1px solid var(--line)}.settings-section[open]>summary:after{content:"-"}.settings-section>summary strong{color:var(--cyan);white-space:nowrap;margin-left:auto;font-size:.78rem}.settings-section>:not(summary),.settings-section>.split,.settings-section>.button-row,.settings-section>.reminder-grid,.settings-section>.account-grid{margin:14px}.settings-section>details{margin:10px 14px}.template-row{grid-template-columns:1fr 58px 82px;gap:7px;margin-top:8px;display:grid}.danger-zone p{color:var(--muted);font-size:.82rem;line-height:1.35}.account-grid{border:1px solid var(--line);background:#111418;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:8px 14px;padding:10px;display:grid}.account-grid span{color:var(--muted);font-size:.78rem;font-weight:800}.account-grid strong{overflow-wrap:anywhere;color:var(--text);justify-self:end;font-size:.82rem}.integration-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.integration-card{border:1px solid var(--line);background:#111418;border-radius:8px;gap:6px;padding:11px;display:grid}.integration-card.connected{border-color:#2ed47a6b;grid-template-columns:minmax(0,1fr) auto;align-items:start}.integration-card span{color:var(--cyan);text-transform:uppercase;font-size:.72rem;font-weight:900}.integration-card strong{color:var(--text)}.integration-card p,.integration-card small{color:var(--muted);font-size:.82rem;line-height:1.35}.danger-text{color:#ffd6d6}.settings-note{color:var(--muted);font-size:.82rem;line-height:1.35}.coach-panel{min-height:580px;padding:0;position:relative;overflow:hidden}.chat-header{border-bottom:1px solid var(--line);background:#111418;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.chat-header div{gap:2px;display:grid}.chat-header span{color:var(--cyan);text-transform:uppercase;font-size:.72rem;font-weight:900}.chat-header strong{color:var(--text)}.chat-header small{color:var(--muted);font-size:.78rem;font-weight:800}.chat-window{background:linear-gradient(#111418 0%,#14181d 100%);align-content:start;gap:12px;min-height:390px;max-height:58vh;padding:14px;display:grid;overflow-y:auto}.empty-chat{max-width:280px;color:var(--muted);text-align:center;place-self:center;line-height:1.35}.chat-message{gap:4px;width:min(86%,420px);display:grid}.message-meta{align-items:center;gap:8px;padding:0 4px;display:flex}.message-meta span{color:var(--cyan);text-transform:uppercase;font-size:.72rem;font-weight:900}.message-meta time{color:var(--muted);font-size:.72rem;font-weight:700}.message-bubble{border:1px solid var(--line);background:var(--panel-2);border-radius:14px 14px 14px 4px;padding:10px 12px}.message-bubble p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.35}.chat-message.user{justify-self:end}.chat-message.user .message-meta{justify-content:flex-end}.chat-message.user .message-bubble{background:#183626;border-color:#2ed47a73;border-radius:14px 14px 4px}.chat-message.system{justify-self:center;width:100%}.chat-message.system .message-meta{justify-content:center}.chat-message.system .message-bubble{background:#221f18;border-color:#f2b84b80}.chat-composer{border-top:1px solid var(--line);background:#111418fa;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;padding:10px;display:grid}.chat-composer textarea{resize:vertical;border-radius:999px;min-height:44px;max-height:120px;padding:12px 14px}.chat-composer button{min-height:44px;padding:0 14px}.context-box{border:1px solid var(--line);color:#dfe4dc;white-space:pre-wrap;background:#111418;border-radius:8px;max-height:190px;margin:0;padding:12px;font:.78rem ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;overflow:auto}.bottom-nav{z-index:10;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#101215f5;grid-template-columns:repeat(4,1fr);gap:4px;width:min(100%,520px);margin:0 auto;padding:8px 8px 12px;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{border-radius:8px;place-items:center;gap:2px;min-height:54px;padding:4px 2px;font-size:.64rem;display:grid}.bottom-nav span{font-size:1rem;line-height:1}@media (width>=760px){.shell{padding-top:28px}.hero h2{font-size:2.45rem}}@media (width<=380px){.metric-grid,.dashboard-charts,.goal-grid,.integration-grid,.plan-day-grid,.hero-actions,.button-row,.split,.weight-row{grid-template-columns:1fr}.bottom-nav button{font-size:.58rem}.set-row{grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 38px 38px}.section-title,.library-preview div:first-child,.exercise-info-header{flex-wrap:wrap}.info-grid,.exercise-action-rail{grid-template-columns:1fr}}
