:root{--ink:#19312d;--muted:#71827d;--cream:#f7f5ef;--paper:#fffefa;--line:#e4e6df;--green:#1e5548;--mint:#dceadf;--peach:#f5d9c7;--blue:#d7e6ed;--shadow:0 12px 30px #183a3010}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.app-shell{display:flex;min-height:100vh}.sidebar{background:var(--paper);width:236px;padding:30px 18px;display:flex;flex-direction:column;border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0}.brand{font-family:Georgia,serif;font-weight:700;font-size:23px;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:9px;padding:0 10px 38px}.brand-mark{font-family:Georgia,serif;background:var(--green);color:#fff;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font-size:18px;font-style:italic}nav{display:grid;gap:7px}.nav-item{border:0;background:transparent;color:#667671;border-radius:10px;padding:12px 13px;font-size:14px;text-align:left;cursor:pointer;display:flex;gap:13px;align-items:center}.nav-item span{font-size:19px;width:18px;text-align:center}.nav-item:hover,.nav-item.active{color:var(--green);background:#e8f0e9;font-weight:650}.sidebar-footer{margin-top:auto}main{margin-left:236px;width:calc(100% - 236px);max-width:1300px;padding:36px 7.2vw 70px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:31px}.eyebrow{margin:0 0 6px;color:#7a8a85;font-size:10px;font-weight:800;letter-spacing:1.35px}.topbar h1{font-family:Georgia,serif;margin:0;font-size:30px;font-weight:500;letter-spacing:-.5px}.profile-button{background:#e8b98d;color:#5a3829;border:0;width:38px;height:38px;border-radius:50%;font-size:11px;font-weight:800}.view{display:none}.view.active{display:block}.hero{min-height:186px;border-radius:17px;padding:30px 38px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative}.hero:after{content:"";width:230px;height:230px;border:1px solid #ffffff32;border-radius:50%;position:absolute;right:-68px;top:-97px}.hero .eyebrow{color:#d8e6da}.hero h2{font-family:Georgia,serif;font-size:29px;line-height:1.12;font-weight:500;margin:0 0 9px}.hero p:not(.eyebrow){margin:0;color:#d6e2d8;font-size:14px}.hero-orb{z-index:1;font-size:66px;color:#e6c69b;padding-right:32px}.metrics-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:14px;margin:16px 0 40px}.metric-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:19px 19px 16px;box-shadow:var(--shadow)}.metric-card.calories{background:#eef4ed}.metric-heading{display:flex;justify-content:space-between;align-items:baseline}.metric-heading span,.metric-card p{font-size:12px;color:var(--muted)}.metric-heading strong{font-family:Georgia,serif;font-size:25px;font-weight:500;color:var(--ink)}.progress-track{height:6px;border-radius:9px;background:#d9e3d9;margin:18px 0 10px;overflow:hidden}.progress-track i{height:100%;display:block;width:0;background:var(--green);border-radius:inherit;transition:width .3s}.progress-track.protein{background:#f5dfd1}.progress-track.protein i{background:#ca8062}.progress-track.water{background:#d8eaf0}.progress-track.water i{background:#5796ae}.metric-card p{margin:0}.metric-card b{color:var(--ink);font-weight:600}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:0 0 15px}.section-heading h2{font-family:Georgia,serif;font-size:25px;font-weight:500;margin:0}.subtle{color:var(--muted);font-size:14px;margin:7px 0 0}.section-heading.compact{margin-top:39px}.text-button{border:0;background:transparent;color:var(--green);font-weight:700;font-size:13px;cursor:pointer;padding:8px 0}.primary-button,.secondary-button{border:0;padding:11px 17px;border-radius:9px;font-size:13px;font-weight:750;cursor:pointer}.primary-button{color:#fff;background:var(--green)}.secondary-button{background:#edf0eb;color:var(--ink)}.meal-list{display:grid;gap:9px}.meal-item{background:var(--paper);border:1px solid var(--line);border-radius:11px;padding:13px 16px;display:grid;grid-template-columns:37px 1fr auto auto;align-items:center;gap:12px}.meal-emoji{width:36px;height:36px;border-radius:10px;background:#f1ece3;display:grid;place-items:center;font-size:19px}.meal-item h3,.workout-card h3{margin:0;font-size:14px}.meal-item p,.workout-card p{margin:3px 0 0;font-size:12px;color:var(--muted)}.meal-kcal{font-size:13px;font-weight:700}.delete-button{border:0;background:transparent;color:#a9b2ae;font-size:18px;cursor:pointer}.workout-card{padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:13px;display:flex;align-items:center;gap:15px}.workout-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;background:var(--peach);font-size:24px}.workout-card .primary-button{margin-left:auto}.nutrition-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:22px 0}.nutrition-summary article{padding:20px;background:var(--paper);border-radius:12px;border:1px solid var(--line)}.nutrition-summary span,.nutrition-summary small{display:block;color:var(--muted);font-size:12px}.nutrition-summary strong{display:block;font-family:Georgia,serif;font-size:29px;font-weight:500;margin:9px 0 3px}.wide{max-width:800px}.workout-plan{display:grid;gap:11px;max-width:790px}.plan-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:17px;display:flex;align-items:center;gap:16px}.plan-day{font-size:11px;font-weight:800;color:var(--green);width:40px}.plan-card h3{margin:0;font-size:15px}.plan-card p{margin:4px 0 0;font-size:12px;color:var(--muted)}.status{margin-left:auto;color:var(--muted);font-size:12px}.status.done{color:var(--green);font-weight:700}.progress-layout{display:grid;grid-template-columns:2fr 1fr;gap:15px}.chart-card,.streak-card,.history-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:22px}.card-title{display:flex;justify-content:space-between}.card-title span,.streak-card span{font-size:13px;color:var(--muted)}.card-title strong{font-family:Georgia,serif;font-size:20px;font-weight:500}.weight-chart{height:180px;margin-top:20px;position:relative;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent 44px,#edf0eb 45px)}.weight-chart svg{width:100%;height:100%;overflow:visible}.chart-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:9px}.streak-card{background:#edf4ed}.streak-card strong{display:block;font-family:Georgia,serif;font-size:59px;font-weight:500;margin-top:20px}.streak-card p{font-size:13px;color:var(--muted);margin:0}.week-dots{display:flex;gap:7px;margin-top:25px}.week-dots i{width:16px;height:16px;border-radius:50%;background:#cfddd1}.week-dots i.active{background:var(--green)}.history-card{margin-top:15px;max-width:790px}.history-card h3{font-size:14px;margin:0 0 13px}.history-row{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line);font-size:13px}.settings-form{display:grid;gap:16px;max-width:480px;background:var(--paper);border:1px solid var(--line);padding:23px;border-radius:13px}.settings-form label{display:grid;gap:7px;font-size:13px;font-weight:650}.settings-form input,.field input,.field select{border:1px solid #dbe1db;border-radius:8px;padding:10px;font:inherit;color:var(--ink);background:#fff}dialog{border:0;border-radius:15px;padding:0;width:min(440px,calc(100% - 30px));box-shadow:0 25px 70px #102a2450}dialog::backdrop{background:#15352c66}dialog form{padding:23px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:21px}.modal-header h2{font-family:Georgia,serif;margin:0;font-size:23px;font-weight:500}.close-button{border:0;background:transparent;font-size:27px;line-height:1;color:var(--muted);cursor:pointer}.modal-fields{display:grid;gap:13px}.field{display:grid;gap:6px;font-size:12px;font-weight:700}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:23px}.empty{padding:30px 15px;text-align:center;color:var(--muted);font-size:14px;background:var(--paper);border-radius:12px;border:1px dashed var(--line)}.mobile-nav{display:none}
@media(max-width:760px){.sidebar{display:none}main{margin:0;width:100%;padding:25px 17px 92px}.topbar{margin-bottom:22px}.hero{padding:27px 24px;min-height:174px}.hero h2{font-size:26px}.hero-orb{font-size:46px;padding:0}.metrics-grid{grid-template-columns:1fr 1fr;margin-bottom:31px}.metric-card.calories{grid-column:span 2}.nutrition-summary{grid-template-columns:1fr 1fr}.progress-layout{grid-template-columns:1fr}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);bottom:0;left:0;right:0;padding:8px;background:#fffefa;border-top:1px solid var(--line);z-index:2}.mobile-nav button{border:0;background:transparent;color:var(--muted);display:grid;gap:3px;justify-items:center;font-size:18px;padding:3px}.mobile-nav span{font-size:10px}.mobile-nav button.active{color:var(--green);font-weight:700}.workout-card{align-items:flex-start}.workout-card .primary-button{padding:9px}.meal-item{grid-template-columns:37px 1fr auto}.delete-button{grid-column:4}.topbar h1{font-size:27px}.client-layout{grid-template-columns:1fr}.admin-only{display:none!important}}
.client-layout{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.6fr);gap:15px;max-width:960px}.client-list{display:grid;gap:9px;align-content:start}.client-button{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:15px;text-align:left;cursor:pointer;color:var(--ink)}.client-button.active,.client-button:hover{border-color:#a7c3ad;background:#eff6ef}.client-button strong,.client-button span{display:block}.client-button strong{font-size:14px}.client-button span{font-size:12px;color:var(--muted);margin-top:4px}.plan-editor{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:23px}.plan-editor h3{font-family:Georgia,serif;font-size:22px;font-weight:500;margin:0 0 7px}.plan-editor textarea{width:100%;min-height:100px;resize:vertical;border:1px solid #dbe1db;border-radius:8px;padding:10px;font:inherit;color:var(--ink);margin-top:7px}.plan-editor label{display:block;font-size:12px;font-weight:700;margin-top:17px}.plan-editor .primary-button{margin-top:20px}.account-options{display:grid;gap:9px;margin:19px 0 6px}.account-option{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:13px;text-align:left;cursor:pointer;color:var(--ink)}.account-option:hover{background:#eff6ef;border-color:#a7c3ad}.account-option strong,.account-option span{display:block}.account-option span{font-size:12px;color:var(--muted);margin-top:3px}.client-banner{background:#edf4ed;border:1px solid #d2e2d3;padding:16px;border-radius:12px;margin-bottom:16px}.client-banner strong{display:block;font-size:14px;margin-bottom:4px}.client-banner p{font-size:13px;color:var(--muted);margin:0}
.nutrition-plan{max-width:800px;background:#edf4ed;border:1px solid #d2e2d3;border-radius:13px;padding:22px;margin:0 0 22px}.nutrition-plan h3{font-family:Georgia,serif;font-size:22px;font-weight:500;margin:0 0 4px}.target-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.target-chips span{font-size:12px;background:#fffefa;border:1px solid #d2e2d3;border-radius:20px;padding:7px 10px;font-weight:700}.meal-count{display:flex;align-items:center;gap:11px;font-size:13px;font-weight:700;margin:16px 0}.meal-count select{border:1px solid #c9d8cb;background:#fffefa;border-radius:7px;padding:7px;color:var(--ink)}.suggested-meals{display:grid;gap:10px}.suggested-meal{background:#fffefa;border:1px solid #d9e4d9;border-radius:10px;padding:14px;display:grid;grid-template-columns:90px 1fr auto;gap:12px;align-items:center}.suggested-meal label{font-size:12px;font-weight:800;color:var(--green)}.suggested-meal select{border:1px solid #dbe1db;border-radius:7px;padding:8px;color:var(--ink);background:white;width:100%}.portion{font-size:12px;color:var(--muted);text-align:right}.portion strong{display:block;color:var(--ink);font-size:15px}.macro-note{font-size:11px;color:var(--muted);margin-top:3px}@media(max-width:560px){.suggested-meal{grid-template-columns:1fr}.portion{text-align:left}}
.plan-editor input{width:100%;border:1px solid #dbe1db;border-radius:8px;padding:9px;font:inherit;color:var(--ink);margin-top:7px}
.water-entry{display:flex;gap:6px;margin-top:12px}.water-entry input{min-width:0;width:100%;border:1px solid var(--line);border-radius:7px;padding:7px;background:var(--paper);color:var(--ink);font:inherit;font-size:12px}.water-entry button{border:0;border-radius:7px;padding:7px 10px;background:#5796ae;color:#fff;font-size:12px;font-weight:700;cursor:pointer}
.metrics-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}.progress-track.steps{background:#e3d9ec}.progress-track.steps i{background:#8664a5}@media(max-width:760px){.metrics-grid{grid-template-columns:1fr 1fr}.metric-card.calories{grid-column:span 2}}
.history-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:15px}.calendar-head{font-size:10px;color:var(--muted);font-weight:800;text-align:center}.calendar-day{min-height:38px;border-radius:8px;background:#243630;display:grid;place-items:center;font-size:12px;color:var(--muted)}.calendar-day.done{background:var(--green);color:#10261f;font-weight:800}.calendar-day.today{outline:1px solid #9ed0b5}
.weight-point{cursor:help}
.progress-layout{grid-template-columns:1fr;max-width:790px}.weight-point{r:2px}
.calendar-day.done{cursor:pointer}.calendar-details{margin-top:14px;padding:12px;border-radius:9px;background:#1a2924;color:var(--muted);font-size:13px}
.day-picker{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.day-toggle{border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:7px;padding:7px 9px;cursor:pointer;font-size:11px;font-weight:700}.day-toggle.active{background:var(--green);border-color:var(--green);color:#10261f}.exercise-row{display:flex;justify-content:space-between;gap:9px;align-items:center;border-top:1px solid var(--line);padding:9px 0;font-size:12px}.exercise-row span{color:var(--muted)}.exercise-row button{border:0;background:transparent;color:var(--muted);font-size:17px;cursor:pointer}.exercise-form{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:6px;margin-top:12px}.exercise-form input{min-width:0;border:1px solid var(--line);border-radius:7px;padding:8px;background:var(--cream);color:var(--ink);font:inherit;font-size:12px}@media(max-width:760px){.exercise-form{grid-template-columns:repeat(2,1fr)}.exercise-form .primary-button{grid-column:span 2}}
.exercise-tools{display:grid;grid-template-columns:150px 1fr;gap:9px;align-items:center;margin:10px 0}.exercise-tools select{border:1px solid var(--line);border-radius:7px;padding:8px;background:var(--cream);color:var(--ink);font:inherit;font-size:12px}.exercise-tools div{padding:9px;border-left:2px solid var(--green);background:#243630;color:var(--muted);font-size:12px}@media(max-width:760px){.exercise-tools{grid-template-columns:1fr}}
.portion .primary-button,.portion .secondary-button{margin-top:10px}.portion button:disabled{opacity:.8;cursor:default}[data-open-modal="meal"]{display:none!important}
.portion{display:flex;flex-direction:column}.portion strong{order:1}.portion button{order:2;align-self:flex-end}.portion span{order:3;margin-top:7px}
.suggested-meal.plate{grid-template-columns:82px 1fr auto}.plate-selects{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:8px}.plate-selects div{display:grid;grid-template-columns:1fr auto;gap:4px 7px;align-items:center}.plate-selects span{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.4px}.plate-selects select{grid-column:1/2}.plate-selects b{font-size:12px;white-space:nowrap}.plate-selects em{font-style:normal;font-weight:500;text-transform:none;letter-spacing:0}@media(max-width:680px){.suggested-meal.plate{grid-template-columns:1fr}.plate-selects{grid-template-columns:1fr}.suggested-meal.plate .portion{text-align:left}}
:root{--ink:#edf3ef;--muted:#a9b9b2;--cream:#14201d;--paper:#1b2b27;--line:#30423c;--green:#78b39a;--mint:#263d35;--peach:#594439;--blue:#253b43;--shadow:0 12px 30px #020a07a0}body{background:var(--cream)}.sidebar,.mobile-nav{background:#172520}.nav-item{color:#aabbb4}.nav-item:hover,.nav-item.active{background:#263d35;color:#9ed0b5}.hero{background:#234d40}.hero:after{border-color:#ffffff28}.metric-card,.meal-item,.workout-card,.nutrition-summary article,.plan-card,.chart-card,.history-card,.settings-form,.client-button,.plan-editor,.account-option{background:var(--paper);border-color:var(--line)}.metric-card.calories{background:#243a32}.progress-track{background:#384d45}.progress-track.protein{background:#553e39}.progress-track.water{background:#294650}.nutrition-plan{background:#20362e;border-color:#385649}.suggested-meal{background:#1c2c27;border-color:#385047}.target-chips span{background:#192823;border-color:#385047}.client-banner,.streak-card{background:#233a31;border-color:#3a594b}.settings-form input,.field input,.field select,.plan-editor input,.plan-editor textarea,.suggested-meal select,.meal-count select{background:#15231f;border-color:#3b5048;color:var(--ink)}.secondary-button{background:#30423c;color:var(--ink)}.empty{background:#1a2924;border-color:#3a5148}.profile-button{background:#b97d58;color:#21150f}
.client-session-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:18px}.client-session-card+ .client-session-card{margin-top:2px}.client-session-card header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:15px}.client-session-card h3{font-family:Georgia,serif;font-size:21px;font-weight:500;margin:3px 0}.client-session-card header p{color:var(--muted);font-size:12px;margin:0}.status-button{border:1px solid #4f7566;background:#263d35;color:#cce6d9;border-radius:9px;padding:10px 12px;font:inherit;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}.status-button.done{background:#416e5b;border-color:#6da58c;color:#fff}.client-exercise-list{display:grid;gap:11px}.client-exercise-card{display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;padding:12px;border:1px solid #385047;background:#172520;border-radius:11px}.exercise-demo-image,.exercise-demo-placeholder{display:block;width:118px;height:118px;object-fit:cover;border-radius:8px;background:#edf5ee}.exercise-demo-placeholder{display:grid;place-items:center;align-content:center;gap:7px;color:#9ed0b5;font-size:30px}.exercise-demo-placeholder span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.exercise-photo-pair{display:grid;grid-template-columns:1fr 1fr;width:118px;height:118px;overflow:hidden;border-radius:8px;background:#edf5ee}.exercise-photo-pair img{width:100%;height:118px;object-fit:cover;min-width:0}.exercise-photo-pair img+img{border-left:1px solid #d0dbd3}.client-exercise-content h4{font-size:15px;margin:2px 0 10px}.client-exercise-content dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0}.client-exercise-content dl div{padding:7px;background:#20332c;border-radius:7px}.client-exercise-content dt{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.client-exercise-content dd{margin:3px 0 0;font-size:12px;font-weight:700}.exercise-tip{margin:10px 0 0;color:#b8c8c1;font-size:11px;line-height:1.35}@media(max-width:600px){.client-session-card header{align-items:flex-start;flex-direction:column}.client-exercise-card{grid-template-columns:84px minmax(0,1fr);gap:10px}.exercise-demo-image,.exercise-demo-placeholder{width:84px;height:84px}.exercise-photo-pair{width:84px;height:84px}.exercise-photo-pair img{height:84px}.client-exercise-content dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
.exercise-demo-image{cursor:zoom-in}.exercise-image-modal{width:min(960px,calc(100% - 32px));max-height:94vh;background:#172520;color:var(--ink);padding:18px;border:1px solid #49665a}.exercise-image-modal .modal-header{margin-bottom:12px}.exercise-image-modal img{display:block;max-width:100%;max-height:calc(94vh - 120px);margin:0 auto 16px;border-radius:10px}.exercise-image-modal .secondary-button{display:block;margin-left:auto}
.day-toggle{position:relative}.day-delete{display:inline-grid;place-items:center;margin-left:5px;width:14px;height:14px;color:#111;font-size:15px;line-height:1;font-weight:800}.day-delete:hover{color:#000}
.exercise-form select{min-width:180px;border:1px solid #3b5048;border-radius:8px;padding:10px;background:#15231f;color:var(--ink);font:inherit}
#microExerciseForm input[name="name"]{display:none}
.weight-log{display:flex;gap:4px;align-items:center}.weight-log input{width:56px;padding:5px;border:1px solid #49665a;border-radius:5px;background:#15231f;color:var(--ink);font:inherit}.weight-log button{border:0;border-radius:5px;padding:5px 6px;background:#78b39a;color:#10261e;font-size:10px;font-weight:800;cursor:pointer}
.client-mark{margin-left:auto;color:#9ed0b5;font-size:11px;font-weight:800}
.client-marks-panel{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.client-marks-panel h3{font-size:16px;margin:0 0 9px}.client-marks-panel div{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #385047;font-size:12px}.client-marks-panel strong{color:#9ed0b5}
.exercise-feedback{grid-column:1/-1;display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:2px;padding-top:14px;border-top:1px solid #385047}.exercise-feedback label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.exercise-feedback input,.exercise-feedback textarea{width:100%;min-width:0;border:1px solid #49665a;border-radius:6px;padding:9px;background:#15231f;color:var(--ink);font:inherit;font-size:12px;text-transform:none}.exercise-feedback textarea{height:44px;resize:vertical}.exercise-feedback button{border:0;border-radius:7px;padding:11px 13px;background:#78b39a;color:#10261e;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}@media(max-width:700px){.exercise-feedback{grid-template-columns:1fr}.exercise-feedback button{justify-self:end}}
.coach-feedback-panel{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.coach-feedback-panel h3{font-size:16px;margin:0 0 10px}.coach-feedback-panel div{padding:10px 0;border-top:1px solid #385047;font-size:12px}.coach-feedback-panel span{margin-left:8px;color:#9ed0b5;font-weight:800}.coach-feedback-panel p{margin:5px 0 0;color:var(--muted)}
.coach-feedback-panel{display:none!important}
.row-feedback{margin:-2px 0 7px;padding:0 8px 8px;color:#c3d1cb;font-size:11px;border-bottom:1px solid #385047}.row-feedback b{color:#9ed0b5;margin-right:3px}.row-feedback span{color:var(--muted)}
.coach-feedback-inline{margin:-2px 0 8px;padding:0 8px 9px;color:#c3d1cb;font-size:11px;border-bottom:1px solid #385047}.coach-feedback-inline b{color:#9ed0b5;margin-right:4px}.coach-feedback-inline b:nth-of-type(2){margin-left:12px}
.workout-plan{width:100%;max-width:none}
.hero+.client-banner{margin-top:12px}
.wide,.nutrition-plan,.history-card,.progress-layout,.client-layout{width:100%;max-width:none}
.exercise-feedback input,.exercise-feedback textarea{height:44px}.exercise-feedback textarea{resize:vertical}
/* Real authentication */
.auth-gate{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(9,27,23,.96);backdrop-filter:blur(10px)}
.auth-gate[hidden]{display:none}
.login-card{width:min(100%,430px);display:grid;gap:14px;padding:36px;border:1px solid #396057;border-radius:18px;background:#152d27;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.login-card .brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#82c3ad;color:#10251f;font-weight:800}
.login-card h1{margin:0;font-size:2rem;line-height:1.1}.login-card p{margin:0}.login-card label{display:grid;gap:7px;font-weight:700;color:#e8eadc}.login-card input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #466a60;border-radius:9px;background:#10251f;color:#fff;font:inherit}.login-card .primary-button{margin-top:6px;min-height:48px}.login-message{min-height:1.2em;color:#9bcab9}.login-message.error{color:#f3a7a0}
.forgot-password{justify-self:start;border:0;background:none;color:#9bd4c0;padding:2px 0;font:inherit;cursor:pointer;text-decoration:underline}
.self-register-button{justify-self:start;padding:2px 0;color:#9bd4c0;font-weight:700}
.user-management-form{display:grid;gap:13px;width:100%;min-width:0}.user-management-form label{display:grid;gap:6px;font-weight:700;min-width:0}.user-management-form input,.user-management-form select{width:100%;min-width:0;min-height:42px;padding:8px 10px;border:1px solid #466a60;border-radius:8px;background:#10251f;color:#fff;font:inherit}.user-management-form select{overflow:hidden;text-overflow:ellipsis}
#selfRegistrationModal{width:min(640px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-x:hidden;overflow-y:auto}.registration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.registration-grid label{min-width:0}@media(max-width:640px){#selfRegistrationModal{width:min(440px,calc(100vw - 24px))}.registration-grid{grid-template-columns:1fr}}
.team-directory{margin:0 0 22px;padding:18px 20px;border:1px solid #36584f;border-radius:14px;background:#19352e}.team-directory h3{margin:3px 0 12px}.team-directory-list{display:flex;flex-wrap:wrap;gap:10px}.team-directory-list article{min-width:190px;display:grid;gap:3px;padding:11px 13px;border-radius:9px;background:#102821}.team-directory-list span{color:#b7c8bf;font-size:.9rem}
.client-button{background:#24463b!important;color:#f6f3e8!important;border:1px solid #477063!important}.client-button strong,.client-button span{color:inherit!important}.client-button.active{background:#8bc8b3!important;color:#10261f!important;border-color:#a7dec9!important}
.plan-publish{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:26px;padding-top:20px;border-top:1px solid #3a5d52}.plan-publish span{color:#b8c9c0;font-size:.9rem}
.team-trainer-card{min-width:180px;display:grid;gap:3px;padding:11px 13px;border:1px solid #41665b;border-radius:9px;background:#102821;color:#f6f3e8;text-align:left;cursor:pointer;font:inherit}.team-trainer-card strong{font-size:1rem}.team-trainer-card span{color:#b7c8bf;font-size:.9rem}.team-trainer-card.active{background:#8bc8b3;border-color:#a7dec9;color:#10261f}.team-trainer-card.active span{color:#21463b}
.client-daily-history{margin-top:28px;padding-top:22px;border-top:1px solid #3a5d52}.client-daily-history h3{margin:4px 0}.client-daily-history .history-calendar{max-width:390px;margin-top:14px}.client-daily-history .calendar-day{font:inherit}
#newPasswordModal::backdrop{background:#14201d;opacity:1}


/* Equilibia brand system */
.brand{letter-spacing:-.45px}.brand img{width:34px;height:34px;flex:0 0 34px}.login-logo{width:50px;height:50px;margin-bottom:3px}.brand-eyebrow{color:#91b8aa!important}.hero-brand{z-index:1;display:flex;align-items:center;gap:12px;margin-right:13px;color:#f8f5ed}.hero-brand img{width:61px;height:61px;filter:drop-shadow(0 6px 12px #092a2166)}.hero-brand div{display:grid;gap:4px}.hero-brand span{font-family:Georgia,serif;font-size:22px;line-height:1;font-weight:600;letter-spacing:-.45px}.hero-brand small{font-size:11px;color:#cae0d5;white-space:nowrap}@media(max-width:760px){.hero-brand{margin:0;gap:7px}.hero-brand img{width:45px;height:45px}.hero-brand span{font-size:17px}.hero-brand small{display:none}}

/* Portada de marca */
.auth-layout{width:min(100%,930px);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;border:1px solid #396057;border-radius:22px;background:#152d27;box-shadow:0 30px 80px rgba(0,0,0,.35)}.auth-brand-panel{margin:0;min-height:580px;background:#0f2821;overflow:hidden}.auth-brand-panel img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.auth-layout .login-card{width:100%;margin:0;border:0;border-radius:0;box-shadow:none;background:#152d27;align-content:center;padding:46px}.auth-layout .login-card .login-logo,.auth-layout .login-card .brand-eyebrow{display:none}@media(max-width:760px){.auth-gate{display:block;overflow:auto;padding:18px}.auth-layout{display:block;max-width:460px;margin:0 auto}.auth-brand-panel{min-height:0}.auth-brand-panel img{height:auto}.auth-layout .login-card{padding:30px 26px}}

/* Símbolo botánico y avatar */
.brand img{width:42px;height:42px;padding:3px;border:1px solid #4f8170;border-radius:13px;background:#15342b}.hero-brand img{width:68px;height:68px;padding:5px;border-radius:18px;background:#173d32;filter:drop-shadow(0 6px 12px #092a2166)}.profile-button{width:44px;height:44px;border-radius:14px;border:2px solid #91c8af;background:#f4e6d0;color:#173b31;font-family:Georgia,serif;font-size:13px;letter-spacing:.3px;box-shadow:0 5px 15px #071d1760}
.brand-tree-crop{display:block;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:#14352c url('assets/equilibia-brand.png') center top/76px auto no-repeat}.hero-brand .brand-tree-crop{width:68px;height:68px;flex-basis:68px;border-radius:18px;background-size:121px auto;filter:drop-shadow(0 6px 12px #092a2166)}.profile-button{width:44px;height:44px;border-radius:14px;border:2px solid #91c8af;background:#f4e6d0;color:#173b31;font-family:Georgia,serif;font-size:13px;letter-spacing:.3px;box-shadow:0 5px 15px #071d1760}
.brand-tree-crop{background-position:center -1px}.hero-brand .brand-tree-crop{background-position:center -3px}
.brand-tree-crop{position:relative;overflow:hidden}.brand-tree-crop::after{content:"";position:absolute;right:0;bottom:0;left:0;height:4px;background:#14352c}.hero-brand .brand-tree-crop::after{height:7px}
.personal-goals-title{margin-top:23px!important}.personal-goals{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:10px 0 16px}.personal-goals label{display:grid;gap:6px;font-size:12px;font-weight:750}.personal-goals input{min-width:0;padding:10px;border:1px solid #3b5048;border-radius:8px;background:#15231f;color:var(--ink);font:inherit}@media(max-width:760px){.personal-goals{grid-template-columns:repeat(2,1fr)}}
.personal-portion{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:14px;padding-top:13px;border-top:1px solid #385047}.personal-portion div{display:grid;gap:3px;text-align:right}.personal-portion strong{font-size:15px}.personal-portion span{font-size:12px;color:var(--muted)}.personal-portion button:disabled{opacity:1;cursor:default}@media(max-width:760px){.personal-portion{justify-content:space-between;gap:10px}.personal-portion .primary-button,.personal-portion .secondary-button{padding:10px 12px}}

/* Entrenamiento propio de entrenadores y superadministrador */
.personal-training{display:grid;gap:16px}.personal-training h3{margin:0}.personal-training .subtle{margin:0}.personal-day-picker{display:flex;flex-wrap:wrap;gap:9px;margin:4px 0}.personal-day{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 13px;border:1px solid #38574d;border-radius:9px;background:transparent;color:#b8c9c0;font:inherit;font-weight:750;cursor:pointer}.personal-day.active{background:#8bc8b3;border-color:#8bc8b3;color:#10261f}.personal-day.selected{box-shadow:0 0 0 2px #e9e3cf}.personal-day i{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;font-style:normal;font-size:17px;font-weight:600;line-height:1;cursor:pointer;color:#132c25}.personal-session-editor{display:grid;gap:16px;padding:20px;border:1px solid #3a5c51;border-radius:14px;background:#18342d}.personal-session-editor>header{display:flex;align-items:center;justify-content:space-between;gap:14px}.personal-session-editor h4{margin:2px 0 0;font-size:1.25rem}.personal-session-editor .eyebrow{margin:0}.personal-exercise-list{display:grid;border-top:1px solid #3a5c51}.personal-exercise-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 3px;border-bottom:1px solid #3a5c51}.personal-exercise-row>div{display:grid;gap:4px}.personal-exercise-row span{color:#c2d0c9;font-size:.92rem}.personal-exercise-row button{width:30px;height:30px;border:0;border-radius:7px;background:transparent;color:#c5d7ce;font-size:21px;line-height:1;cursor:pointer}.personal-exercise-row button:hover{background:#2c5145;color:#fff}.personal-empty-exercises{padding:15px 3px}.personal-exercise-form{grid-template-columns:minmax(220px,2fr) repeat(4,minmax(85px,1fr)) auto}.personal-exercise-form select{min-width:0;padding:10px;border:1px solid #3b5048;border-radius:8px;background:#15231f;color:var(--ink);font:inherit}@media(max-width:950px){.personal-exercise-form{grid-template-columns:repeat(3,minmax(120px,1fr))}.personal-exercise-form select{grid-column:span 3}}@media(max-width:620px){.personal-session-editor{padding:16px}.personal-session-editor>header{align-items:flex-start;flex-direction:column}.personal-exercise-form{grid-template-columns:repeat(2,minmax(0,1fr))}.personal-exercise-form select{grid-column:span 2}.personal-exercise-form .primary-button{grid-column:span 2}.personal-day{min-width:55px;justify-content:center;padding:0 10px}}

/* Nutrición diaria v2 */
.nutrition-tools{display:grid;gap:16px;margin:18px 0 22px}.nutrition-tool-card{padding:20px;border:1px solid #39574d;border-radius:14px;background:#18332c}.nutrition-tool-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tool-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}.tool-heading.compact{margin-bottom:13px}.tool-heading h3{margin:3px 0 5px;font-family:Georgia,serif;font-size:1.4rem;font-weight:500}.tool-heading .eyebrow{margin:0}.tool-heading .subtle{max-width:660px;margin:0}.nutrition-margin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.nutrition-margin{display:grid;gap:5px;padding:14px;border-radius:10px;background:#142720;border:1px solid #36564b}.nutrition-margin>span{font-size:11px;font-weight:800;letter-spacing:.35px;text-transform:uppercase;color:#9fb9af}.nutrition-margin strong{font-family:Georgia,serif;font-size:1.45rem;font-weight:500}.nutrition-margin small{color:#aebfb8;font-size:11px}.nutrition-margin.over{border-color:#855c51;background:#382923}.nutrition-margin.over small{color:#e4a39a}.nutrition-margin.on-target{border-color:#638e78}.catalog-controls{display:grid;grid-template-columns:minmax(0,1fr) 180px 190px;gap:9px;margin-bottom:10px}.catalog-controls input,.catalog-controls select,.avoid-foods input{width:100%;min-width:0;border:1px solid #47675d;border-radius:8px;background:#11241e;color:var(--ink);font:inherit;padding:10px}.avoid-foods{display:grid;grid-template-columns:220px minmax(0,1fr);gap:9px;align-items:center;color:#b7c9c0;font-size:12px;font-weight:700}.food-group-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0 11px}.food-group-tabs button{border:1px solid #45675b;border-radius:999px;padding:7px 11px;background:transparent;color:#c3d2cb;font:inherit;font-size:12px;font-weight:750;cursor:pointer}.food-group-tabs button.active{background:#78b39a;border-color:#78b39a;color:#10261f}.food-catalog-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:375px;overflow:auto;padding-right:3px}.food-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid #36554a;border-radius:9px;background:#142820}.food-card>div:first-child{min-width:0;display:grid;grid-template-columns:21px minmax(0,1fr);column-gap:6px;align-items:center}.food-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.food-card small{grid-column:2;color:#adbbb5;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.food-symbol{grid-row:span 2;display:grid;place-items:center;width:20px;height:20px;border-radius:7px;background:#29473c;color:#9ed0b5;font-size:14px}.food-card>div:last-child{display:flex;align-items:center;gap:5px}.food-favorite,.icon-text-button{width:28px;height:28px;padding:0;border:0;border-radius:7px;background:#263d35;color:#b9c9c1;font:inherit;font-size:17px;cursor:pointer}.food-favorite.active{color:#f2c17d}.text-button{border:0;background:transparent;color:#9dd4bb;padding:6px 3px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.favorites-area{margin-top:16px;padding-top:14px;border-top:1px solid #36554a}.favorites-area h4{margin:0 0 9px;font-size:13px}.favorite-foods{display:flex;flex-wrap:wrap;gap:7px}.favorite-food{display:flex;align-items:center;gap:5px;max-width:100%;border:1px solid #476b5e;border-radius:999px;background:#203b32;color:#eff4ee;padding:7px 10px;font:inherit;font-size:12px;cursor:pointer}.favorite-food span{color:#9ed0b5}.favorite-food small{color:#afc1b9}.template-list{display:grid;gap:7px}.template-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid #36554a}.template-card:last-child{border:0}.template-card div{display:grid;gap:3px;min-width:0}.template-card strong{font-size:13px}.template-card span,.template-help{color:#aabdb5;font-size:11px;line-height:1.4}.template-card span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-help{margin:10px 0 0}.shopping-list{display:grid;gap:2px}.shopping-list label{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 0;border-bottom:1px solid #36554a;font-size:13px}.shopping-list input{accent-color:#78b39a}.shopping-list strong{font-size:12px;color:#cce0d6}.weekly-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.weekly-stat-grid article{display:grid;gap:4px;padding:12px;border-radius:9px;background:#142820}.weekly-stat-grid strong{font-family:Georgia,serif;font-size:1.3rem;font-weight:500}.weekly-stat-grid span{color:#aebfb8;font-size:10px}.template-save-button{justify-self:end;margin-top:11px;border:1px solid #477263;border-radius:7px;background:#263f35;color:#b9dfce;padding:7px 9px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.template-save-button:hover{background:#315447;color:#fff}@media(max-width:950px){.nutrition-margin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-tool-columns{grid-template-columns:1fr}.weekly-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-controls{grid-template-columns:1fr 160px}}@media(max-width:650px){.nutrition-tool-card{padding:16px}.tool-heading{align-items:flex-start;flex-direction:column}.catalog-controls{grid-template-columns:1fr}.avoid-foods{grid-template-columns:1fr}.food-catalog-results{grid-template-columns:1fr;max-height:330px}.weekly-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.food-card small{white-space:normal}.quick-add-free-meal{width:100%}}
