:root{--bg:#090c0e;--sidebar:#080b0d;--panel:#12171b;--panel2:#161c21;--line:#283036;--text:#f4f1eb;--muted:#959ca2;--amber:#e9a34a;--amber2:#f4bd75;--green:#91bd70;--teal:#55b5ab;--purple:#8f72c5;--shadow:0 22px 55px rgba(0,0,0,.26)}*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:"DM Sans",sans-serif}body{margin:0;background:radial-gradient(circle at 65% -20%,rgba(233,163,74,.07),transparent 34%),var(--bg)}button,textarea,input{font:inherit;color:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:232px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:26px 18px;border-right:1px solid #23292d;background:rgba(8,11,13,.96);display:flex;flex-direction:column;z-index:20}.brand{height:50px;display:flex;align-items:center;gap:14px;padding:0 12px 24px;font-family:Newsreader,serif;font-size:28px}.brand-bars{display:flex;gap:3px;align-items:flex-end;height:21px}.brand-bars i{width:2px;background:var(--amber);border-radius:2px}.brand-bars i:nth-child(1){height:8px}.brand-bars i:nth-child(2){height:15px}.brand-bars i:nth-child(3){height:21px}.brand-bars i:nth-child(4){height:13px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#a7adb1;border-radius:9px;padding:12px 14px;text-align:left;display:flex;align-items:center;gap:13px;cursor:pointer;font-weight:500}.nav-item span:first-child{width:21px;text-align:center;font-size:18px}.nav-item:hover,.nav-item.active{background:#1b1f22;color:var(--text)}.nav-item.active{color:var(--amber)}.nav-divider{height:1px;background:#272c30;margin:12px 6px}.sidebar-bottom{margin-top:auto}.profile{display:flex;gap:10px;align-items:center;padding:14px 10px;border-top:1px solid #272c30}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#765d42,#282f32);font-size:12px}.profile small{display:block;color:var(--muted);margin-top:2px}.quiet-link,.card-link{border:0;background:transparent;color:var(--amber);cursor:pointer;padding:0}.quiet-link{font-size:12px;margin:5px 10px 24px}.motto{color:#b7b8b8;line-height:1.55;font-size:14px;padding:0 10px}.motto i{display:block;width:34px;height:2px;background:var(--amber);margin-bottom:14px}.main-content{min-width:0;padding:27px clamp(22px,3.2vw,48px) 70px}.topbar{min-height:80px;display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:24px}.page-kicker,.card-label{margin:0 0 7px;color:#9ba1a5;text-transform:uppercase;letter-spacing:.09em;font-size:11px;font-weight:600}.topbar h1,.section-head h2{font-family:Newsreader,serif;font-weight:500;margin:0;font-size:clamp(31px,3vw,43px)}.top-actions{display:flex;align-items:center;gap:10px}.date-control,.score-pill{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:10px 13px}.date-control{color:#bbc0c3}.date-control span{padding:0 12px}.score-pill{display:grid;grid-template-columns:auto auto;column-gap:7px;align-items:center}.score-pill small{grid-column:2;color:var(--muted);font-size:10px}.score-dot{width:8px;height:8px;border-radius:50%;background:var(--green);grid-row:1/3}.menu-button{display:none}.view{display:none}.view.active{display:block;animation:fade .2s ease}@keyframes fade{from{opacity:.4;transform:translateY(3px)}}.dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.card{background:linear-gradient(145deg,rgba(22,28,33,.98),rgba(16,21,25,.98));border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.dashboard-grid>.card{padding:20px;min-height:202px}.goal-card,.trend-card,.macros-card{grid-column:span 4}.readiness-card,.workout-card,.timeline-card{grid-column:span 4;min-height:280px!important}.weight-card,.adherence-card{grid-column:span 4}.action-stack{grid-column:span 4;padding:0!important;display:grid;grid-template-rows:auto 1fr;overflow:hidden}.action-stack>div{padding:17px}.action-stack>div+div{border-top:1px solid var(--line)}h2,h3,p{margin-top:0}h2{font-family:Newsreader,serif;font-size:27px;font-weight:500;margin-bottom:7px}.card p{color:var(--muted);margin-bottom:6px;font-size:14px}.card small{color:var(--muted)}.goal-body{display:flex;justify-content:space-between;align-items:center;margin:14px 0 16px}.goal-body p{font-size:14px}.ring{border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--amber) 0 72%,#303337 72%)}.ring:after{content:"";position:absolute;inset:8px;background:#151a1e;border-radius:50%}.ring span{position:relative;z-index:1;text-align:center}.ring small{display:block;font-size:9px}.compact-ring{width:88px;height:88px}.green{color:var(--green)!important}.mini-chart,.large-chart{width:100%;overflow:visible}.mini-chart{height:68px;margin-top:2px}.mini-chart path,.large-chart>path:not(.area){fill:none;stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.mini-chart circle,.large-chart circle{fill:#d5e6bd;stroke:var(--green);stroke-width:4}.days,.axis{display:flex;justify-content:space-between;color:#7f8589;font-size:10px;letter-spacing:.12em}.macro-main{display:flex;align-items:center;gap:24px;margin:15px 0 19px}.calorie-ring{width:112px;height:112px;background:conic-gradient(var(--amber) 0 74%,var(--purple) 74% 84%,var(--teal) 84% 92%,#303337 92%)}.calorie-ring b,.readiness-ring b{font-family:Newsreader,serif;font-size:26px}.macro-list{flex:1;display:grid;gap:13px}.macro-list div{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:12px;color:#b2b7ba}.macro-list i,.legend i{width:7px;height:7px;border-radius:50%}.macro-list b{font-weight:500;color:#d7d9da}.orange{background:var(--amber)}.teal{background:var(--teal)}.purple{background:var(--purple)}.readiness-body{display:flex;align-items:center;gap:28px;margin:14px 0}.readiness-ring{width:105px;height:105px;background:conic-gradient(var(--green) 0 82%,#303337 82%)}.readiness-list{flex:1;display:grid;gap:12px}.readiness-list div{display:flex;justify-content:space-between;color:#aeb3b6;font-size:12px}.readiness-list b{color:#d7d9da;font-weight:500}.readiness-list i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-left:6px}.readiness-list i.warn{background:var(--amber)}.checkin-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.checkin-options button,.suggestion-chips button,.coach-prompts button{border:1px solid var(--line);background:#1b2125;border-radius:8px;padding:8px;cursor:pointer}.checkin-options button.selected{border-color:#bc8040;color:var(--amber2);background:#2b2219}.readiness-card textarea{min-height:42px;margin-top:8px}.workout-heading{display:flex;justify-content:space-between;align-items:flex-start;margin:12px 0}.workout-heading>span{color:var(--muted);font-size:12px}.tag{display:inline-block;background:#252b30;border-radius:99px;color:#b9bec1;padding:5px 8px;font-size:10px}.exercise-preview{display:grid;gap:2px;margin:12px 0 15px}.preview-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid #252c31;font-size:12px}.preview-row span{color:var(--muted)}.dual-actions{display:flex;gap:8px}.primary-button,.secondary-button{border-radius:8px;border:1px solid transparent;padding:10px 14px;font-weight:600;cursor:pointer}.primary-button{background:linear-gradient(180deg,var(--amber2),var(--amber));color:#24180d}.secondary-button{background:#20262a;border-color:#343c42}.timeline{display:grid}.timeline-item{display:grid;grid-template-columns:45px 16px 1fr;min-height:46px}.timeline-time{font-size:10px;color:#7f8589;padding-top:2px}.timeline-marker{position:relative}.timeline-marker:before{content:"";position:absolute;width:8px;height:8px;border:1px solid var(--amber);border-radius:50%;top:3px;left:2px}.timeline-marker:after{content:"";position:absolute;left:6px;top:13px;bottom:0;width:1px;background:#353b40}.timeline-item:last-child .timeline-marker:after{display:none}.timeline-body strong{display:block;font-size:12px}.timeline-body span{font-size:10px;color:var(--muted)}.weight-card h2{font-family:Newsreader,serif;font-size:29px;margin:13px 0 4px}.weight-card h2 small{font-size:15px}.weight-card .green small{display:block;color:var(--muted)}.large-chart{height:88px;margin-top:4px}.large-chart .area{fill:rgba(145,189,112,.09);stroke:none}.legend{display:flex;gap:18px;font-size:10px;color:#b2b7ba;margin:13px 0}.legend span{display:flex;gap:6px;align-items:center}.legend i{width:18px;height:2px;border-radius:0}.legend .dash{background:repeating-linear-gradient(90deg,var(--teal) 0 4px,transparent 4px 7px)}.orange-line{stroke:var(--amber)!important}.teal-line{stroke:var(--teal)!important;stroke-dasharray:5 5}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.quick-actions button{min-width:0;border:1px solid #664520;background:#2b2117;color:var(--amber2);border-radius:7px;padding:11px 6px;cursor:pointer}.quick-actions button:nth-child(2){border-color:#285951;background:#152825;color:#7bc9bf}.quick-actions button:nth-child(3){border-color:#4d3c69;background:#231d2d;color:#b49bdc}.quick-actions span{display:block;font-size:10px;margin-top:5px}.coach-observation{display:flex;gap:12px}.spark{color:var(--amber);font-size:20px}.coach-observation p{line-height:1.45}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.section-head p,.coach-layout aside>p,.review-card p,.dinner-card p{color:var(--muted)}.workout-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.exercise-card{padding:20px}.exercise-head{display:flex;justify-content:space-between;gap:15px}.exercise-head p{color:var(--muted);font-size:12px}.set-table{width:100%;border-collapse:collapse;margin-top:12px}.set-table th{font-size:10px;color:var(--muted);text-align:left;padding:8px}.set-table td{padding:8px;border-top:1px solid var(--line)}.set-table input{width:80px;background:#0f1417;border:1px solid #333c42;border-radius:7px;padding:9px}.done-set{width:32px;height:32px;border-radius:50%;border:1px solid #485159;background:transparent}.done-set.complete{background:var(--green);color:#0b100c}.rest-box{display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:var(--panel);padding:10px 14px;border-radius:10px}.rest-box small{color:var(--muted)}.rest-box button{border:0;background:transparent;color:var(--amber)}.workout-summary,.natural-log{margin-top:14px;padding:18px}.workout-summary{display:flex;gap:12px}.workout-summary textarea{min-height:48px}.natural-log textarea{min-height:120px}.suggestion-chips{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.food-layout{display:grid;grid-template-columns:1.4fr .65fr;gap:14px;margin-top:22px}.meal-list{display:grid;gap:8px}.meal-item{display:flex;justify-content:space-between;gap:12px;padding:15px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.meal-item p{font-size:11px;color:var(--muted);margin:4px 0 0}.dinner-card{padding:18px;align-self:start}.meal-photo{height:110px;border-radius:8px;background:linear-gradient(135deg,#49311e,#17281d);display:grid;place-items:center;color:#e7c59e;margin-bottom:15px}.nutrition-line{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:10px 0}.coach-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:24px}.coach-prompts{display:grid;gap:8px;margin-top:20px}.coach-prompts button{text-align:left}.chat-card{min-height:600px;display:flex;flex-direction:column;padding:18px}.chat-messages{flex:1;overflow:auto}.message{max-width:78%;margin:0 0 12px;padding:12px 14px;border-radius:12px;background:#20272c}.message.user{margin-left:auto;background:#2b3338}.message span{font-size:10px;color:var(--amber)}.message p{margin:5px 0 0;line-height:1.5}.chat-input-row{display:flex;gap:10px}.chat-input-row textarea{min-height:48px}.progress-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-card{padding:20px}.progress-bar{height:7px;background:#2b3236;border-radius:99px;overflow:hidden}.progress-bar i{display:block;height:100%;background:var(--green)}.dot-calendar{display:grid;grid-template-columns:repeat(7,10px);gap:7px;margin-top:15px}.dot-calendar i{width:9px;height:9px;border-radius:50%;background:#30373b}.dot-calendar i.done{background:var(--green)}.review-card{display:flex;gap:14px;padding:22px;margin-top:12px}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.65);display:grid;place-items:center;z-index:50}.modal-backdrop[hidden]{display:none}.modal{width:min(420px,90vw);padding:20px}.modal-head{display:flex;justify-content:space-between}.modal-head button{border:0;background:transparent;font-size:24px}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quick-grid button{padding:18px;background:#1d2428;border:1px solid var(--line);border-radius:8px}.mobile-nav{display:none}textarea{width:100%;resize:vertical;background:#0e1316;border:1px solid #30393f;border-radius:8px;padding:11px;outline:none}textarea:focus{border-color:#9b6b37}
@media(max-width:1180px){.goal-card,.trend-card,.macros-card,.readiness-card,.workout-card,.timeline-card,.weight-card,.adherence-card,.action-stack{grid-column:span 6}.progress-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{padding-bottom:74px}.app-shell{display:block}.sidebar{position:fixed;left:-260px;transition:.2s;width:240px}.sidebar.open{left:0}.main-content{padding:18px 14px 35px}.menu-button{display:block;border:0;background:transparent;font-size:21px}.topbar{align-items:center;margin-bottom:18px}.topbar h1{font-size:27px}.top-actions .date-control{display:none}.score-pill{padding:7px 9px}.dashboard-grid{display:block}.dashboard-grid>.card{margin-bottom:10px;min-height:auto!important;padding:16px}.goal-card,.trend-card,.weight-card,.adherence-card{display:none}.macros-card{order:2}.workout-card{order:1}.readiness-card{order:3}.timeline-card{order:4}.action-stack{order:5}.dashboard-grid{display:flex;flex-direction:column}.workout-heading h2{font-size:25px}.macro-main{gap:15px}.calorie-ring{width:92px;height:92px}.readiness-body{gap:18px}.readiness-ring{width:90px;height:90px}.quick-actions button{padding:10px 4px}.workout-list,.food-layout,.coach-layout,.progress-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;gap:12px}.rest-box{flex-wrap:wrap}.exercise-head{display:block}.exercise-head .tag{margin-top:8px}.set-table input{width:70px}.chat-card{min-height:520px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;background:rgba(10,13,15,.97);border-top:1px solid var(--line);z-index:40;padding:8px 5px calc(8px + env(safe-area-inset-bottom))}.mobile-nav .nav-item{display:grid;place-items:center;gap:2px;padding:4px;font-size:18px}.mobile-nav .nav-item span{width:auto!important;font-size:9px!important}.sidebar .nav-item.active{background:#1b1f22}.coach-layout aside{padding:5px 3px}.message{max-width:90%}.top-actions{margin-left:auto}.page-kicker{font-size:9px}}
