:root{
  --bg:#f4f6ee; --ink:#161c16; --muted:#687064; --line:#dce3d5; --card:#fffefa; --card2:#ecf8e9;
  --green:#16c878; --green2:#0a8f58; --lime:#d7ff5c; --orange:#ff9d3d; --red:#ff6259; --blue:#2f7cff;
  --shadow:0 24px 70px rgba(20,40,25,.12); --radius:28px; --soft:18px;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:
  radial-gradient(circle at 15% -10%,#c4ffd9 0,transparent 30%),
  radial-gradient(circle at 90% 10%,#ecffd2 0,transparent 28%),var(--bg);color:var(--ink)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(22,200,120,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(22,200,120,.04) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(#000,transparent 80%)}
.status-screen{position:fixed;inset:0;display:grid;place-items:center;background:rgba(246,248,239,.76);backdrop-filter:blur(16px);z-index:200;opacity:0;pointer-events:none;transition:.22s}.status-screen.active{opacity:1;pointer-events:auto}.status-card{background:var(--ink);color:white;border-radius:30px;min-width:320px;padding:28px;box-shadow:0 35px 100px #0004}.status-card small{color:var(--lime);text-transform:uppercase;letter-spacing:.14em}.status-card h2{margin:.3rem 0}.status-loader{display:flex;gap:8px}.status-loader i{width:9px;height:9px;border-radius:99px;background:var(--lime);animation:pulse 1s infinite alternate}.status-loader i:nth-child(2){animation-delay:.15s}.status-loader i:nth-child(3){animation-delay:.3s}@keyframes pulse{to{transform:translateY(-7px);opacity:.45}}
.site-header{position:sticky;top:0;z-index:60;background:rgba(244,246,238,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(22,28,22,.08)}.header-inner{max-width:1460px;margin:auto;display:flex;align-items:center;gap:18px;padding:14px 24px}.wordmark{display:flex;align-items:center;gap:12px;min-width:190px}.mark{width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,var(--ink),#245a36);color:var(--lime);display:grid;place-items:center;font-weight:900;box-shadow:0 16px 35px rgba(22,28,22,.2)}.wordmark b{display:block;letter-spacing:.02em}.wordmark small{display:block;color:var(--muted);font-size:12px}.desktop-tabs{display:flex;gap:4px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:999px;box-shadow:0 10px 30px rgba(30,50,30,.06);flex:1;justify-content:center}.desktop-tabs button{border:0;background:transparent;border-radius:999px;padding:10px 14px;color:var(--muted);font-weight:750}.desktop-tabs button.active,.desktop-tabs button:hover{background:#eaffdd;color:#0a6d43}.header-actions{display:flex;align-items:center;gap:10px}.clock{line-height:1;text-align:right;color:var(--muted)}.clock strong{display:block;color:var(--ink);font-size:18px}.shift-select,#shiftSelectMobile{border:1px solid var(--line);background:#fff;border-radius:16px;padding:11px 14px;font-weight:750}.logout,.button-link{border:1px solid var(--line);border-radius:14px;background:#fff;padding:11px 14px;font-weight:800;color:#234}
.page-shell{max-width:1460px;margin:0 auto;padding:28px 24px 100px}.mobile-control-card{display:none}.hero-board{display:grid;grid-template-columns:1.3fr .75fr;gap:18px;margin-bottom:18px}.hero-copy{border-radius:38px;padding:36px;background:linear-gradient(135deg,#182317,#27442e 70%,#103);color:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-copy:after{content:"";position:absolute;width:360px;height:360px;right:-100px;top:-130px;border-radius:50%;background:radial-gradient(circle,#d7ff5c55,transparent 65%)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:#0a8f58;font-weight:900;font-size:12px;margin:0 0 8px}.hero-copy .eyebrow{color:var(--lime)}h1,h2,h3{margin:0;color:inherit}.hero-copy h1{font-size:clamp(32px,4vw,62px);line-height:.96;letter-spacing:-.05em;max-width:790px}.hero-copy p:not(.eyebrow){font-size:18px;max-width:760px;color:#dfead7}.hero-score{background:var(--card);border:1px solid var(--line);border-radius:38px;padding:30px;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center}.hero-score small{color:var(--muted);font-weight:800}.hero-score strong{font-size:48px;letter-spacing:-.06em}.progress{height:14px;border-radius:999px;background:#e5eadf;overflow:hidden;margin:14px 0}.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--lime));border-radius:999px}.summary-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:22px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:18px;box-shadow:0 12px 35px #1b301515}.metric-card small{display:block;color:var(--muted);font-weight:800;text-transform:uppercase;font-size:11px;letter-spacing:.08em}.metric-card b{display:block;font-size:25px;letter-spacing:-.04em;margin-top:4px}.view{display:none}.view.active{display:block}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:24px 0 16px}.section-title h2{font-size:36px;letter-spacing:-.04em}.section-title p{color:var(--muted);margin:4px 0}.button-row{display:flex;gap:10px;flex-wrap:wrap}.primary,button,.ghost{border:0;border-radius:16px;padding:12px 16px;background:#fff;border:1px solid var(--line);font-weight:900;color:#153}.primary{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 16px 40px rgba(22,28,22,.18)}.ghost{background:transparent}
.meal-list{display:grid;grid-template-columns:1fr;gap:14px}.meal-card{display:grid;grid-template-columns:110px 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:28px;padding:16px;box-shadow:0 14px 40px rgba(22,28,22,.08);position:relative;overflow:hidden}.meal-card:before{content:"";position:absolute;inset:0 0 0 auto;width:5px;background:var(--green)}.meal-card.done{background:#f0fff0}.meal-card.skipped{opacity:.7}.time-pill{background:#102115;color:#d7ff5c;border-radius:18px;padding:13px;text-align:center;font-weight:950}.meal-main h3{font-size:22px;letter-spacing:-.03em}.meal-main p{color:var(--muted);margin:5px 0 10px}.macro-row{display:flex;flex-wrap:wrap;gap:7px}.macro-row span{background:#eef3e8;border:1px solid #dbe4d3;color:#273426;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850}.status-badge{background:#152!important;color:#d7ff5c!important}.meal-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;min-width:180px}.meal-actions button{padding:9px 11px;border-radius:13px}.panel,.food-card,.tool-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:0 14px 40px rgba(22,28,22,.08);padding:20px}.tool-grid,.food-grid,.analytics-board,.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tool-card{text-align:left;min-height:150px;background:linear-gradient(180deg,#fff,#f5faf0)}.tool-card b,.food-card b{font-size:18px}.tool-card span,.food-card p,.food-card small{display:block;color:var(--muted);margin-top:8px}.tool-card:hover{transform:translateY(-2px);box-shadow:0 25px 60px rgba(22,28,22,.13)}.custom-tool textarea,.ai-box textarea,textarea{width:100%;min-height:120px;border:1px solid var(--line);border-radius:18px;padding:14px;background:#fbfff7}.quick-product{display:flex;gap:10px;margin-bottom:16px}.quick-product input,input,select{border:1px solid var(--line);background:#fff;border-radius:16px;padding:12px 14px;width:100%}.analytics-board{grid-template-columns:1fr 1.1fr .9fr}.donut-card{display:flex;gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:30px;padding:24px;box-shadow:var(--shadow)}.donut{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) calc(var(--p,0)*1%),#e5eadf 0);position:relative}.donut:after{content:"";position:absolute;inset:18px;background:#fff;border-radius:50%}.donut span{position:relative;z-index:2;font-size:30px;font-weight:950}.bar{margin:12px 0}.bar label{display:flex;justify-content:space-between;color:var(--muted);font-weight:800}.bar i{display:block;height:12px;border-radius:999px;background:#e6ecdF;overflow:hidden}.bar i b{display:block;height:100%;background:linear-gradient(90deg,var(--green2),var(--lime));border-radius:999px}.execution{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.execution span{background:#f2f7ed;border-radius:18px;padding:16px;text-align:center}.execution b{display:block;font-size:26px}.form-grid,.visual-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.form-grid label,.visual-grid label{display:grid;gap:7px;color:var(--muted);font-weight:850}.wide{grid-column:1/-1}.modal-card{border:0;border-radius:30px;background:#fff;padding:24px;max-width:780px;width:min(92vw,780px);box-shadow:0 40px 120px #0005}.modal-card menu{display:flex;justify-content:flex-end;gap:10px;padding:0;margin-top:18px}dialog::backdrop{background:#10180d88;backdrop-filter:blur(8px)}.proposal-card{background:#f6fbf0;border:1px solid var(--line);border-radius:20px;padding:16px;margin:10px 0}.toast{position:fixed;bottom:24px;right:24px;background:#142016;color:white;border-radius:18px;padding:14px 18px;z-index:210}.toast.bad{background:var(--red)}.bottom-nav{display:none}.water-card{background:linear-gradient(135deg,#fff,#eaf7ff);border:1px solid #d5e9f7}.water-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.water-actions button{background:#eaf6ff;color:#06456b}.product-actions,.food-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.onboard-body{background:linear-gradient(135deg,#eff8e9,#f9fff1)}.wizard-shell{max-width:1180px;margin:34px auto;padding:24px}.wizard-hero{display:grid;grid-template-columns:1.2fr .55fr;gap:16px;margin-bottom:16px}.wizard-hero>div,.wizard-hero aside,.wizard-card{background:#fff;border:1px solid var(--line);border-radius:34px;padding:28px;box-shadow:var(--shadow)}.wizard-hero h1{font-size:48px;letter-spacing:-.06em}.wizard-hero aside{background:#172116;color:#fff}.wizard-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:14px}.wizard-steps button{border-radius:18px;background:#fff}.wizard-steps button.active{background:#172116;color:#d7ff5c}.wizard-card{display:none}.wizard-card.active{display:block}.card-title{display:flex;gap:16px;align-items:center;margin-bottom:18px}.card-title span{width:52px;height:52px;border-radius:18px;background:#d7ff5c;display:grid;place-items:center;font-weight:950}.chip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.shift-card{border:1px solid var(--line);background:#fbfff7;border-radius:24px;padding:16px;display:grid;gap:10px}.shift-card header{display:flex;justify-content:space-between}.wizard-footer{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:16px}.wizard-meter{height:12px;background:#dce8d6;border-radius:999px;flex:1;overflow:hidden}.wizard-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--lime))}.submit-final{display:none}.mini-info{background:#172116;color:#fff;border-radius:24px;padding:22px}.mini-info p{color:#dbead7}
@media(max-width:1100px){.desktop-tabs{display:none}.hero-board,.analytics-board,.tool-grid,.food-grid,.admin-grid{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:repeat(3,1fr)}.meal-card{grid-template-columns:90px 1fr}.meal-actions{grid-column:1/-1;display:flex;flex-wrap:wrap}.header-inner{justify-content:space-between}.clock,.shift-select{display:none}.mobile-control-card{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:26px;padding:14px;margin-bottom:14px;box-shadow:var(--shadow)}}
@media(max-width:720px){body{background:#f4f6ee}.page-shell{padding:14px 14px 96px}.site-header{display:none}.hero-board,.summary-grid,.tool-grid,.food-grid,.analytics-board,.admin-grid,.form-grid,.visual-grid,.wizard-hero,.chip-grid{grid-template-columns:1fr}.hero-copy{padding:26px;border-radius:28px}.hero-copy h1{font-size:34px}.hero-score strong{font-size:36px}.section-title{align-items:flex-start;flex-direction:column}.section-title h2{font-size:30px}.metric-card{padding:16px}.meal-card{grid-template-columns:1fr}.time-pill{width:max-content}.quick-product{display:grid}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:10px;right:10px;bottom:10px;background:#122016;color:#dcead5;padding:8px;border-radius:24px;z-index:70;box-shadow:0 20px 60px #0005}.bottom-nav button{background:transparent;border:0;color:#dcead5;padding:10px 4px;font-size:12px}.bottom-nav button.active{background:#d7ff5c;color:#132016;border-radius:18px}.wizard-shell{padding:14px;margin:0}.wizard-hero h1{font-size:34px}.wizard-steps{grid-template-columns:repeat(3,1fr);position:sticky;top:0;z-index:10}.wizard-card{padding:20px;border-radius:26px}.modal-card{width:96vw}.donut{width:130px;height:130px}}
.auth-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#d7ff5c55,transparent 25%),linear-gradient(135deg,#111a12,#263b24)}.auth-card{width:min(460px,92vw);background:#fff;border-radius:34px;padding:34px;box-shadow:0 40px 120px #0006}.auth-card h1{font-size:42px;letter-spacing:-.06em}.auth-card p{color:var(--muted)}.auth-card form{display:grid;gap:12px}.auth-card label{display:grid;gap:7px;font-weight:850;color:var(--muted)}.wide{width:100%}.ok{background:#e9ffe5;border:1px solid #bfeeb7;color:#0a6d43;border-radius:18px;padding:12px}.error{background:#fff0ef;border:1px solid #ffd1cd;color:#a21d15;border-radius:18px;padding:12px}.landing-shell{max-width:1240px;margin:0 auto;padding:36px 24px}.landing-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:center;min-height:70vh}.landing-card{background:#fff;border-radius:38px;padding:34px;box-shadow:var(--shadow);border:1px solid var(--line)}.landing-hero h1{font-size:clamp(44px,7vw,88px);line-height:.92;letter-spacing:-.075em}.landing-hero p{font-size:19px;color:var(--muted)}.user-row{display:grid;grid-template-columns:1fr auto;gap:6px;padding:12px;border-bottom:1px solid var(--line)}
@media(max-width:760px){.landing-hero{grid-template-columns:1fr}.landing-hero h1{font-size:46px}}

/* V23: AI progress system + renewed landing */
.ai-progress-card{width:min(560px,92vw);background:linear-gradient(145deg,#101710,#1d2d1c 60%,#283b21);border:1px solid rgba(215,255,92,.18);box-shadow:0 45px 140px rgba(6,12,7,.55);}
#statusKicker{display:inline-flex;gap:8px;align-items:center;color:#d7ff5c!important}
.ai-progress-shell{height:12px;background:rgba(255,255,255,.12);border-radius:999px;overflow:hidden;margin:18px 0 14px;border:1px solid rgba(255,255,255,.10)}
.ai-progress-shell i{display:block;height:100%;width:8%;border-radius:999px;background:linear-gradient(90deg,#16c878,#d7ff5c);box-shadow:0 0 24px rgba(215,255,92,.45);transition:width .38s ease}
.ai-progress-steps{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px;color:#c8d7c1;font-size:13px}
.ai-progress-steps li{display:flex;align-items:center;gap:10px;opacity:.52}
.ai-progress-steps li:before{content:"";width:9px;height:9px;border-radius:50%;background:#5d6d59;box-shadow:0 0 0 4px rgba(255,255,255,.04)}
.ai-progress-steps li.active{opacity:1;color:#fff;font-weight:800}.ai-progress-steps li.active:before{background:#d7ff5c}.ai-progress-steps li.done{opacity:1;color:#bdecbf}.ai-progress-steps li.done:before{background:#16c878}
.status-screen.done .ai-progress-shell i{width:100%!important}.status-screen.error .status-card{background:linear-gradient(145deg,#241010,#431817)}.status-screen.error .ai-progress-shell i{background:#ff6259}
.landing-v23{background:#eaf4e9;color:#142016;min-height:100vh;overflow-x:hidden}.landing-v23:before{display:none}.landing-topbar{position:sticky;top:0;z-index:30;max-width:1280px;margin:0 auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.landing-brand{display:flex;align-items:center;gap:10px}.landing-brand span{width:42px;height:42px;border-radius:15px;background:#132017;color:#d7ff5c;display:grid;place-items:center;font-weight:950}.landing-brand b{letter-spacing:-.04em}.landing-brand em{font-style:normal;color:#5f6e5e;font-size:13px}.landing-topbar nav{display:flex;align-items:center;gap:8px}.landing-topbar nav a{padding:10px 13px;border-radius:999px;font-weight:850;color:#314031}.landing-pill{background:#132017!important;color:#fff!important}.landing-stage{max-width:1280px;margin:10px auto 0;padding:44px 24px 72px;display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}.landing-copy h1{font-size:clamp(48px,6.8vw,92px);line-height:.9;letter-spacing:-.085em;margin:0 0 20px;color:#0f1c12}.landing-copy .lead{font-size:20px;line-height:1.55;color:#536053;max-width:760px}.landing-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.landing-actions .cta,.landing-actions .ghost{border-radius:999px;padding:15px 20px;font-weight:950}.landing-actions .cta{background:#132017;color:#fff;box-shadow:0 24px 55px rgba(19,32,23,.22)}.landing-actions .ghost{background:#fff;border:1px solid #d7e3d2}.landing-trust{display:flex;gap:8px;flex-wrap:wrap}.landing-trust span{background:#fff;border:1px solid #dce8d5;border-radius:999px;padding:10px 13px;font-size:13px;font-weight:850;color:#415140}.landing-dashboard-preview{height:610px;border-radius:46px;background:linear-gradient(135deg,#46c9a5,#e8ffe7);padding:28px;display:grid;grid-template-columns:86px 1fr;gap:22px;box-shadow:0 45px 120px rgba(44,108,69,.22);position:relative;overflow:hidden}.landing-dashboard-preview:after{content:"";position:absolute;width:360px;height:360px;right:-90px;top:-80px;border-radius:50%;background:radial-gradient(circle,rgba(215,255,92,.5),transparent 65%)}.preview-side{border-radius:34px;background:#25af8e;display:flex;flex-direction:column;align-items:center;gap:22px;padding:34px 0;z-index:1}.preview-side i{width:22px;height:22px;border-radius:8px;border:2px solid rgba(255,255,255,.85)}.preview-main{z-index:1;background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.8);border-radius:36px;padding:28px;box-shadow:0 30px 80px rgba(30,78,48,.14);display:grid;grid-template-rows:auto auto auto 1fr;gap:20px}.preview-head{display:flex;justify-content:space-between;color:#0d7c59;font-weight:900}.preview-ring{width:180px;height:180px;border-radius:50%;margin:12px auto;background:conic-gradient(#16c878 78%,#e5eedf 0);display:grid;place-items:center;position:relative}.preview-ring:after{content:"";position:absolute;inset:20px;border-radius:50%;background:#fff}.preview-ring span,.preview-ring small{position:relative;z-index:2;grid-column:1;grid-row:1}.preview-ring span{font-size:42px;font-weight:950}.preview-ring small{margin-top:54px;color:#74806f;font-weight:850}.preview-bars{display:grid;gap:12px}.preview-bars i{height:14px;border-radius:999px;background:linear-gradient(90deg,#16c878,#d7ff5c);width:var(--w);box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}.preview-meals{display:grid;grid-template-columns:1fr 1fr;gap:12px}.preview-meals article{background:#f8fff3;border:1px solid #e0ead9;border-radius:22px;padding:16px}.preview-meals b{display:block}.preview-meals span{color:#0a8f58;font-weight:950}.landing-modules{max-width:1280px;margin:0 auto;padding:0 24px 60px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.landing-modules article,.landing-split,.landing-ai{background:#fff;border:1px solid #dce8d5;border-radius:32px;padding:28px;box-shadow:0 18px 55px rgba(31,66,36,.08)}.landing-modules span{color:#16c878;font-weight:950}.landing-modules h3{font-size:22px;letter-spacing:-.03em;margin:10px 0}.landing-modules p,.landing-split p,.landing-ai p{color:#647060;line-height:1.55}.landing-split{max-width:1232px;margin:0 auto 24px;display:grid;grid-template-columns:1fr .8fr;gap:20px;align-items:center}.landing-split h2,.landing-ai h2{font-size:clamp(32px,4vw,56px);line-height:.96;letter-spacing:-.06em}.tracker-card{background:#132017;color:#fff;border-radius:28px;padding:24px}.tracker-card b{display:block;font-size:24px;margin-bottom:20px}.track-line{display:grid;grid-template-columns:90px 1fr;gap:12px;align-items:center;margin:16px 0}.track-line i{height:14px;background:rgba(255,255,255,.14);border-radius:999px;overflow:hidden}.track-line i:before{content:"";display:block;height:100%;width:var(--w);border-radius:999px;background:linear-gradient(90deg,#16c878,#d7ff5c)}.landing-ai{max-width:1232px;margin:0 auto 80px;text-align:center}.landing-ai p{max-width:820px;margin:16px auto 0}
@media(max-width:920px){.landing-topbar nav a:not(.landing-pill){display:none}.landing-stage,.landing-split{grid-template-columns:1fr}.landing-dashboard-preview{height:auto;grid-template-columns:64px 1fr}.landing-modules{grid-template-columns:1fr 1fr}.preview-meals{grid-template-columns:1fr}}
@media(max-width:620px){.landing-stage{padding-top:18px}.landing-copy h1{font-size:46px}.landing-dashboard-preview{grid-template-columns:1fr;padding:16px;border-radius:32px}.preview-side{display:none}.landing-modules{grid-template-columns:1fr}.landing-topbar{padding:16px}.landing-brand em{display:none}}

/* V25 macro AI polish */
.modal-sub{margin:-.25rem 0 1rem;color:var(--muted);line-height:1.5;max-width:680px}.macro-form{align-items:start}.ai-macro-box{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid rgba(17,24,39,.08);background:linear-gradient(135deg,rgba(16,185,129,.08),rgba(59,130,246,.06));border-radius:18px}.ai-macro-box small{color:var(--muted);line-height:1.35}.ai-calc{font-weight:800;white-space:nowrap;border-color:rgba(16,185,129,.35);background:#fff}.macro-note{margin-top:10px;color:var(--muted);font-size:.82rem;line-height:1.4}.meal-card .macro-row span,.food-card .macro-row span,.proposal-card .macro-row span{white-space:nowrap}.modal .form-grid label input,.modal .form-grid label textarea{box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}
@media(max-width:720px){.ai-macro-box{display:block}.ai-macro-box .ai-calc{width:100%;margin-bottom:10px}.modal-sub{font-size:.9rem}}

/* V30 premium product system */
:root{
  --bg:#f7f4ed; --ink:#171916; --muted:#626b60; --line:#ddd7ca; --card:#fffdf8; --card2:#f0f5e9;
  --green:#0f9f66; --green2:#09764f; --lime:#d7f36a; --orange:#f47d44; --red:#d94d45; --blue:#2468d9;
  --shadow:0 22px 70px rgba(43,45,35,.11); --radius:22px; --soft:14px;
}
body{background:linear-gradient(180deg,#faf8f2 0,#f1f3e9 52%,#f7f4ed 100%);color:var(--ink)}
body:before{display:none}
.site-header{background:rgba(250,248,242,.88);border-bottom:1px solid rgba(45,43,35,.08)}
.header-inner{max-width:1500px;padding:12px 24px}.mark{border-radius:12px;background:#171916;color:#d7f36a;box-shadow:none}.desktop-tabs{border-radius:18px;box-shadow:none;background:#fffdf8}.desktop-tabs button{border-radius:12px;padding:10px 13px}.desktop-tabs button.active,.desktop-tabs button:hover{background:#171916;color:#fff}
.page-shell{max-width:1500px}.product-home{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:16px}
.hero-copy{border-radius:26px;background:linear-gradient(135deg,#181a16 0,#2a3527 62%,#5d4a32 100%);padding:34px;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end}
.hero-copy:after{display:none}.hero-copy h1{letter-spacing:-.045em;max-width:820px}.hero-copy p:not(.eyebrow){color:#ede8dd;line-height:1.55}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.hero-actions button{background:#fffdf8;color:#171916;border-color:rgba(255,255,255,.35)}.hero-actions .primary{background:#d7f36a;color:#171916;border-color:#d7f36a;box-shadow:none}
.hero-score{border-radius:26px;padding:28px;background:#fffdf8;justify-content:space-between}.hero-score strong{font-size:clamp(40px,5vw,64px)}.coach-brief{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#f6f1e7}.coach-brief b{display:block;font-size:18px}.coach-brief span{display:block;color:var(--muted);margin-top:4px;line-height:1.4}
.summary-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.metric-card{border-radius:18px;box-shadow:none}.metric-card b{font-size:22px}
.day-intelligence{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:14px;margin-bottom:16px}.next-card,.readiness-card{background:#fffdf8;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.next-card small,.readiness-card small{text-transform:uppercase;letter-spacing:.12em;color:var(--green2);font-weight:900}.next-card h3{font-size:30px;letter-spacing:-.04em;margin-top:8px}.next-card p,.readiness-card p{color:var(--muted);line-height:1.5}.readiness-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.readiness-grid span{background:#f3efe5;border:1px solid #e4dccd;border-radius:16px;padding:14px;text-align:center}.readiness-grid b{display:block;font-size:24px}.readiness-grid em{display:block;font-style:normal;color:var(--muted);font-size:12px;font-weight:800}
.section-title{margin:28px 0 14px}.section-title h2{font-size:34px}.button-row button,.primary,button,.ghost{border-radius:13px}.primary{background:#171916;border-color:#171916;box-shadow:none}
.meal-card{grid-template-columns:92px 1fr auto;border-radius:22px;box-shadow:none}.meal-card:before{background:var(--orange);width:4px}.meal-card.done:before{background:var(--green)}.meal-card.skipped:before{background:var(--red)}.time-pill{border-radius:14px;background:#171916;color:#f2f7c9}.meal-main h3{font-size:21px}
.panel,.food-card,.tool-card{border-radius:22px;box-shadow:none}.tool-grid,.food-grid,.analytics-board,.admin-grid{gap:12px}.tool-card{min-height:138px;background:#fffdf8}.tool-card.priority{background:linear-gradient(180deg,#192018,#263322);color:#fff}.tool-card.priority span{color:#dfe8d3}.tool-card:hover{transform:translateY(-1px);box-shadow:0 16px 45px rgba(43,45,35,.12)}
.donut-card{border-radius:24px;box-shadow:none}.donut{background:conic-gradient(var(--orange) calc(var(--p,0)*1%),#e5e0d5 0)}
.bottom-nav{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}
@media(max-width:1100px){.product-home,.day-intelligence{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(3,1fr)}.hero-copy{min-height:300px}.readiness-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.product-home{gap:10px}.hero-copy{border-radius:24px;padding:24px;min-height:360px}.hero-copy h1{font-size:38px}.hero-score{border-radius:22px}.summary-grid{grid-template-columns:repeat(2,1fr)}.day-intelligence{gap:10px}.next-card h3{font-size:24px}.meal-card{border-radius:20px}.meal-actions{display:grid;grid-template-columns:repeat(3,1fr);min-width:0}.bottom-nav{left:8px;right:8px;bottom:8px;border-radius:20px;background:#171916}.bottom-nav button{font-size:11px}.bottom-nav button.active{background:#d7f36a;color:#171916}.readiness-grid{grid-template-columns:1fr 1fr}.metric-card b{font-size:19px}}

/* V31: complete product shell, persistent Coach Chat, simplified IA */
body.forja-app{margin:0;background:#f6f1e8;color:#171916;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;min-height:100vh}
.forja-app:before{display:none}.forja-app button,.forja-app input,.forja-app textarea,.forja-app select{font:inherit}.forja-app button{cursor:pointer}
.app-rail{position:fixed;inset:0 auto 0 0;width:248px;background:#171916;color:#f8f4ea;padding:24px;display:flex;flex-direction:column;z-index:80;border-right:1px solid rgba(255,255,255,.08)}
.brand-lockup{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;gap:0 12px;align-items:center;margin-bottom:34px}.brand-lockup span{grid-row:1/3;width:48px;height:48px;border-radius:16px;background:#d9f56b;color:#171916;display:grid;place-items:center;font-weight:950}.brand-lockup b{font-size:22px;letter-spacing:-.05em}.brand-lockup small{color:#b9c1ad;font-weight:800}
.rail-nav{display:grid;gap:8px}.rail-nav button{border:0;background:transparent;color:#cfd6c5;text-align:left;padding:13px 14px;border-radius:16px;font-weight:900}.rail-nav button.active,.rail-nav button:hover{background:#d9f56b;color:#171916}
.rail-footer{margin-top:auto;display:grid;gap:5px;color:#b9c1ad}.rail-footer strong{color:white;font-size:24px}.rail-footer a{color:#d9f56b;font-weight:900}
.app-main{margin-left:248px;padding:24px 28px 96px;max-width:1640px}.topbar{position:sticky;top:0;z-index:50;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 0 22px;background:linear-gradient(180deg,#f6f1e8 70%,rgba(246,241,232,0))}.topbar small,.eyebrow{color:#08764f;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:950}.topbar h1{font-size:34px;letter-spacing:-.05em}.topbar-actions{display:flex;gap:10px;align-items:center}.forja-app button,.button-link{border:1px solid #ddd4c3;background:#fffaf1;color:#171916;border-radius:14px;padding:12px 15px;font-weight:950}.forja-app .primary{background:#171916;color:white;border-color:#171916}.forja-app .ghost{background:#fffaf1}
.shift-select,.forja-app input,.forja-app textarea,.forja-app select{border:1px solid #ddd4c3;background:#fffdf7;border-radius:14px;padding:12px 14px;color:#171916}.view{display:none}.view.active{display:block}.mobile-context{display:none}
.today-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:16px}.hero-panel,.score-panel,.panel,.coach-chat-card,.coach-actions-card,.library-toolbar,.progress-main,.tracker-card-v31{background:#fffaf1;border:1px solid #ded5c4;border-radius:28px;box-shadow:0 22px 70px rgba(55,48,35,.08)}
.hero-panel{min-height:430px;padding:34px;background:linear-gradient(135deg,#171916,#243325 58%,#6a5135);color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.hero-panel .eyebrow{color:#d9f56b}.hero-panel h2{font-size:clamp(42px,6vw,88px);line-height:.9;letter-spacing:-.08em;max-width:980px}.hero-panel p{max-width:820px;color:#ebe4d5;font-size:18px;line-height:1.55}.hero-actions,.button-row{display:flex;gap:10px;flex-wrap:wrap}.hero-actions{margin-top:20px}.hero-actions button{background:#fffaf1}.hero-actions .primary{background:#d9f56b;color:#171916;border-color:#d9f56b}
.score-panel{padding:28px;display:flex;flex-direction:column;justify-content:center}.score-panel small{color:#68705f;font-weight:900}.score-panel strong{font-size:72px;letter-spacing:-.08em}.score-panel .progress{height:13px;background:#e7dfcf;margin:18px 0}.score-panel .progress i{background:linear-gradient(90deg,#119c69,#d9f56b)}.coach-mini{margin-top:22px;background:#f1eadc;border:1px solid #ded5c4;border-radius:20px;padding:16px}.coach-mini b{display:block;font-size:20px}.coach-mini span{color:#5f665b}
.summary-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:16px 0}.summary-strip article{background:#fffaf1;border:1px solid #ded5c4;border-radius:20px;padding:16px}.summary-strip small{display:block;color:#68705f;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:950}.summary-strip b{font-size:22px;letter-spacing:-.04em}
.decision-board{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:14px}.next-move,.coach-insight{background:#fffdf7;border:1px solid #ded5c4;border-radius:26px;padding:24px}.next-move small,.coach-insight small{color:#08764f;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:950}.next-move h3,.coach-insight h3{font-size:32px;letter-spacing:-.05em}.next-move p,.coach-insight p{color:#5f665b;line-height:1.5}.mini-bars{display:grid;gap:10px}.mini-bars span{position:relative;display:block;background:#eee6d7;border-radius:999px;overflow:hidden;padding:9px 12px;font-size:12px;font-weight:950}.mini-bars span:before{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);background:#d9f56b;z-index:0}.mini-bars span{isolation:isolate}.mini-bars span::after{content:"";position:absolute;inset:0;border:1px solid #ddd4c3;border-radius:999px}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:30px 0 14px}.section-head h2{font-size:34px;letter-spacing:-.05em}.meal-timeline{display:grid;gap:10px}.meal-row{display:grid;grid-template-columns:98px 1fr auto;gap:16px;align-items:center;background:#fffdf7;border:1px solid #ded5c4;border-radius:22px;padding:15px;position:relative}.meal-row:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;border-radius:22px 0 0 22px;background:#e4924f}.meal-row.done:before{background:#119c69}.meal-row.skipped:before{background:#d5534a}.meal-row time{background:#171916;color:#d9f56b;border-radius:15px;padding:12px;text-align:center;font-weight:950}.meal-row h3{font-size:21px;letter-spacing:-.03em}.meal-row p{color:#5f665b;margin:.25rem 0 .55rem}.meal-row menu{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:0;padding:0}.macro-row{display:flex;gap:6px;flex-wrap:wrap}.macro-row span{background:#f0eadc;border:1px solid #ddd4c3;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900;color:#32342f}
.coach-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;min-height:calc(100vh - 120px)}.coach-chat-card{display:flex;flex-direction:column;min-height:720px}.coach-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:24px;border-bottom:1px solid #ded5c4}.coach-header h2,.coach-actions-card h2{font-size:34px;letter-spacing:-.05em}.context-chips{display:flex;gap:8px;flex-wrap:wrap;padding:14px 24px;border-bottom:1px solid #eee6d8}.context-chips span{background:#f0eadc;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900}.coach-messages{flex:1;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:12px}.chat-msg{max-width:78%;padding:14px 16px;border-radius:20px;background:#f0eadc}.chat-msg.user{align-self:flex-end;background:#171916;color:#fff}.chat-msg.assistant{align-self:flex-start;background:#fffdf7;border:1px solid #ded5c4}.chat-msg.system{align-self:center;background:#e8f3d2;color:#23402f}.chat-msg small{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:950;opacity:.7}.chat-msg p{margin:.25rem 0 0;line-height:1.45}.coach-composer{display:grid;grid-template-columns:1fr auto;gap:10px;padding:18px;border-top:1px solid #ded5c4}.coach-composer textarea{min-height:64px;resize:vertical}.coach-actions-card{padding:24px;align-self:start;position:sticky;top:96px}.coach-actions-card p,.muted{color:#5f665b}.action-review{background:#fffdf7;border:1px solid #ded5c4;border-radius:20px;padding:16px;margin:12px 0}.action-review small{color:#08764f;text-transform:uppercase;font-size:11px;font-weight:950}.action-review h3{font-size:20px;letter-spacing:-.03em}
.library-shell,.progress-layout,.plan-grid,.settings-grid,.admin-console{display:grid;gap:16px}.library-toolbar{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:end;padding:24px}.library-toolbar h2,.progress-main h2,.panel h2{font-size:34px;letter-spacing:-.05em}.segmented{background:#f0eadc;border:1px solid #ded5c4;border-radius:16px;padding:4px;display:flex}.segmented button{border:0;background:transparent}.segmented button.active{background:#171916;color:white}.library-ai{display:flex;gap:10px;padding:16px}.library-ai input{flex:1}.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.library-card{background:#fffdf7;border:1px solid #ded5c4;border-radius:22px;padding:18px}.library-card small{color:#08764f;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:950}.library-card h3{font-size:22px;letter-spacing:-.04em}.library-card p{color:#5f665b}.library-card menu{display:flex;gap:8px;margin:14px 0 0;padding:0}.hidden{display:none!important}.empty-product{background:#fffdf7;border:1px dashed #cfc5b4;border-radius:22px;padding:24px;color:#5f665b}
.progress-layout{grid-template-columns:minmax(0,1fr) 390px}.progress-main{padding:24px}.calorie-ring{display:flex;align-items:center;gap:22px}.donut{background:conic-gradient(#119c69 calc(var(--p,0)*1%),#e8dfd0 0)}.macro-board{margin-top:20px}.metric-line{margin:14px 0}.metric-line label{display:flex;justify-content:space-between;color:#5f665b;font-weight:900}.metric-line i{display:block;height:12px;background:#eee6d7;border-radius:999px;overflow:hidden}.metric-line i b{display:block;height:100%;background:linear-gradient(90deg,#119c69,#d9f56b)}.tracker-card-v31{padding:24px}.water-ring{text-align:center}.water-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-grid label{display:grid;gap:6px;color:#5f665b;font-weight:900}.wide{grid-column:1/-1;width:100%}.compact textarea{min-height:90px}
.plan-grid,.settings-grid{grid-template-columns:1fr 1fr}.panel{padding:24px}.plan-card p,.panel p{color:#5f665b;line-height:1.5}.admin-console{grid-template-columns:1fr 1fr}.admin-console .panel:last-child{grid-column:1/-1}.admin-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.admin-kpis span{background:#f0eadc;border-radius:16px;padding:14px;text-align:center}.admin-kpis b{display:block;font-size:24px}.user-row{display:grid;grid-template-columns:1fr auto auto auto;gap:12px;align-items:center;border-bottom:1px solid #eee6d8;padding:12px 0}
.coach-status{position:fixed;right:24px;top:24px;z-index:220;width:min(460px,calc(100vw - 48px));background:#171916;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:16px;display:flex;justify-content:space-between;gap:12px;box-shadow:0 28px 90px rgba(0,0,0,.25)}.coach-status[hidden]{display:none}.coach-status small{color:#d9f56b;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:950}.coach-status b,.coach-status span{display:block}.coach-status span{color:#cdd4c3;margin-top:3px}.coach-status button{background:#2d322b;color:#fff;border-color:#464d42}.floating-coach{position:fixed;right:24px;bottom:24px;z-index:75;background:#171916!important;color:#fff!important;border-color:#171916!important;box-shadow:0 18px 50px rgba(0,0,0,.22)}.bottom-nav{display:none}
.modal-card{border:0;border-radius:28px;background:#fffaf1;padding:24px;max-width:780px;width:min(94vw,780px)}dialog::backdrop{background:rgba(23,25,22,.55);backdrop-filter:blur(8px)}.modal-card menu{display:flex;justify-content:flex-end;gap:10px;padding:0;margin:18px 0 0}.toast{position:fixed;right:24px;bottom:86px;z-index:230;background:#171916;color:white;border-radius:16px;padding:13px 16px;box-shadow:0 18px 50px rgba(0,0,0,.22)}.toast.bad{background:#d5534a}
@media(max-width:1180px){.app-rail{width:210px}.app-main{margin-left:210px}.today-grid,.decision-board,.coach-layout,.progress-layout,.plan-grid,.settings-grid,.admin-console{grid-template-columns:1fr}.coach-actions-card{position:static}.library-grid{grid-template-columns:repeat(2,1fr)}.summary-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.app-rail,.topbar .shift-select,.topbar .ghost{display:none}.app-main{margin-left:0;padding:14px 14px 92px}.topbar{padding:10px 0 12px}.topbar h1{font-size:28px}.topbar-actions{margin-left:auto}.mobile-context{display:flex;justify-content:space-between;align-items:center;background:#fffaf1;border:1px solid #ded5c4;border-radius:20px;padding:12px;margin-bottom:12px}.today-grid{gap:10px}.hero-panel{min-height:390px;border-radius:24px;padding:24px}.hero-panel h2{font-size:42px}.hero-panel p{font-size:16px}.score-panel strong{font-size:48px}.summary-strip{grid-template-columns:repeat(2,1fr)}.decision-board{gap:10px}.meal-row{grid-template-columns:1fr;gap:10px}.meal-row time{width:max-content}.meal-row menu{grid-template-columns:repeat(4,1fr)}.coach-layout{min-height:0}.coach-chat-card{min-height:calc(100vh - 180px);border-radius:22px}.coach-header{display:grid;padding:18px}.coach-composer{grid-template-columns:1fr}.chat-msg{max-width:92%}.library-toolbar{grid-template-columns:1fr;padding:18px}.library-ai{display:grid}.library-grid{grid-template-columns:1fr}.progress-layout{gap:12px}.calorie-ring{display:grid;text-align:center;justify-items:center}.form-grid{grid-template-columns:1fr}.floating-coach{right:14px;bottom:78px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:10px;right:10px;bottom:10px;z-index:180;background:#171916;border-radius:22px;padding:7px;box-shadow:0 18px 60px rgba(0,0,0,.32)}.bottom-nav button{border:0;background:transparent;color:#d8decf;font-size:11px;padding:10px 2px;border-radius:16px}.bottom-nav button.active{background:#d9f56b;color:#171916}.coach-status{left:12px;right:12px;top:12px;width:auto}.admin-kpis{grid-template-columns:repeat(2,1fr)}.user-row{grid-template-columns:1fr auto}}

.forja-landing{margin:0;background:#f6f1e8;color:#171916;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}.forja-landing:before{display:none}.marketing-nav{max-width:1280px;margin:auto;padding:22px 24px;display:flex;justify-content:space-between;align-items:center}.landing-logo{display:flex;align-items:center;gap:12px}.landing-logo span{width:44px;height:44px;border-radius:15px;background:#171916;color:#d9f56b;display:grid;place-items:center;font-weight:950}.landing-logo b{font-size:20px;letter-spacing:-.04em}.marketing-nav nav{display:flex;gap:10px;align-items:center}.marketing-nav a,.marketing-hero a{color:#171916;text-decoration:none;font-weight:950}.marketing-nav nav a{padding:11px 14px;border-radius:999px}.marketing-nav .primary,.marketing-hero .primary{background:#171916;color:white}.marketing-hero{max-width:1280px;margin:0 auto;padding:56px 24px 36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.75fr);gap:28px;align-items:center}.marketing-hero h1{font-size:clamp(56px,8vw,112px);line-height:.86;letter-spacing:-.09em;margin:12px 0}.marketing-hero p:not(.eyebrow){font-size:20px;line-height:1.55;color:#5f665b;max-width:760px}.marketing-hero .hero-actions{display:flex;gap:12px;margin-top:26px}.marketing-hero .hero-actions a{border:1px solid #ded5c4;background:#fffaf1;border-radius:16px;padding:14px 18px}.marketing-hero .hero-actions .primary{background:#171916;color:white}.landing-product-shot{min-height:560px;border-radius:36px;background:linear-gradient(135deg,#171916,#30412c 65%,#d9f56b);padding:22px;display:grid;grid-template-columns:70px 1fr;gap:18px;box-shadow:0 30px 100px rgba(45,49,37,.18)}.shot-rail{background:rgba(255,255,255,.12);border-radius:26px;display:flex;flex-direction:column;align-items:center;gap:18px;padding-top:28px}.shot-rail i{width:22px;height:22px;border-radius:8px;background:#d9f56b}.shot-main{background:#fffaf1;border-radius:28px;padding:26px;display:flex;flex-direction:column;gap:18px}.shot-main small{color:#08764f;text-transform:uppercase;letter-spacing:.12em;font-weight:950}.shot-main h2{font-size:44px;letter-spacing:-.06em}.shot-main article{background:#171916;color:white;border-radius:22px;padding:18px}.shot-main article b,.shot-main article span{display:block}.shot-main article span{color:#d9f56b;margin-top:8px}.shot-bars{display:grid;gap:12px}.shot-bars i{height:13px;width:var(--w);background:linear-gradient(90deg,#119c69,#d9f56b);border-radius:999px}.chat-bubble{background:#f0eadc;border:1px solid #ded5c4;border-radius:22px;padding:18px;font-weight:850;color:#34382f}.landing-system{max-width:1280px;margin:0 auto;padding:20px 24px 30px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.landing-system article,.landing-proof{background:#fffaf1;border:1px solid #ded5c4;border-radius:28px;padding:24px}.landing-system small{color:#08764f;font-weight:950}.landing-system h3{font-size:24px;letter-spacing:-.04em}.landing-system p,.landing-proof p{color:#5f665b;line-height:1.5}.landing-proof{max-width:1232px;margin:0 auto 70px;text-align:center}.landing-proof h2{font-size:clamp(36px,5vw,70px);line-height:.95;letter-spacing:-.07em;max-width:920px;margin:10px auto}
@media(max-width:900px){.marketing-hero{grid-template-columns:1fr}.landing-product-shot{min-height:440px}.landing-system{grid-template-columns:1fr 1fr}.marketing-nav nav a:not(.primary){display:none}}@media(max-width:620px){.marketing-hero h1{font-size:50px}.landing-product-shot{grid-template-columns:1fr}.shot-rail{display:none}.landing-system{grid-template-columns:1fr}.marketing-nav{padding:16px}.marketing-hero{padding-top:24px}}

/* V32: pull the product back toward the previous top-nav FORJA feel */
body.forja-app{background:#f4f6ee}
.app-rail{position:sticky;top:0;inset:auto;width:auto;height:auto;background:rgba(244,246,238,.9);backdrop-filter:blur(18px);color:#171916;border-right:0;border-bottom:1px solid rgba(22,28,22,.09);padding:12px 24px;display:flex;flex-direction:row;align-items:center;gap:18px}
.brand-lockup{display:flex;align-items:center;gap:12px;margin:0;min-width:190px}.brand-lockup span{width:44px;height:44px;border-radius:16px;background:#171916;color:#d9f56b}.brand-lockup b{font-size:18px}.brand-lockup small{color:#657060}
.rail-nav{display:flex;gap:5px;flex:1;background:#fff;border:1px solid #dce3d5;border-radius:999px;padding:6px;justify-content:center}.rail-nav button{color:#657060;text-align:center;border-radius:999px;padding:10px 14px}.rail-nav button.active,.rail-nav button:hover{background:#eaffdd;color:#0a6d43}
.rail-footer{margin:0;display:flex;align-items:center;gap:10px;color:#657060}.rail-footer .shift-select{width:150px;min-width:128px;background:#fff}.rail-footer strong{color:#171916;font-size:18px}.rail-footer a{color:#171916;background:#fff;border:1px solid #dce3d5;border-radius:14px;padding:10px 12px}
.app-main{margin-left:0;max-width:1460px;margin-right:auto;margin-left:auto;padding:22px 24px 96px}.topbar{display:none}.mobile-context{display:none}
.today-grid{grid-template-columns:1.15fr .85fr}.hero-panel{min-height:330px;border-radius:32px;background:linear-gradient(135deg,#182317,#27442e 72%,#3a3325);padding:32px}.hero-panel h2{font-size:clamp(34px,4.7vw,66px);line-height:.95;letter-spacing:-.06em}.hero-panel p{font-size:17px}.score-panel,.hero-panel,.next-move,.coach-insight,.coach-chat-card,.coach-actions-card,.library-toolbar,.progress-main,.tracker-card-v31,.panel{box-shadow:0 18px 55px rgba(20,40,25,.10);border-color:#dce3d5;background:#fffefa}
.score-panel{border-radius:32px}.score-panel strong{font-size:clamp(44px,5vw,68px)}.summary-strip article{background:#fff;border-color:#dce3d5}.next-move,.coach-insight{border-radius:26px}
.meal-row{background:#fff;border-color:#dce3d5;border-radius:24px}.meal-row time{background:#102115;color:#d9f56b}.macro-row span{background:#eef3e8;border-color:#dbe4d3}
.coach-layout{grid-template-columns:minmax(0,1fr) 420px}.chat-msg.user{background:#102115}.coach-actions-card{top:92px}
.floating-coach{background:#102115!important}
@media(max-width:1100px){.rail-nav{display:none}.today-grid,.decision-board,.coach-layout,.progress-layout,.plan-grid,.settings-grid,.admin-console{grid-template-columns:1fr}.app-rail{justify-content:space-between}.rail-footer small,.rail-footer strong{display:none}.mobile-context{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #dce3d5;border-radius:22px;padding:12px;margin-bottom:12px}}
@media(max-width:760px){.app-rail{display:none}.app-main{padding:14px 14px 92px}.hero-panel{min-height:330px;border-radius:28px;padding:24px}.hero-panel h2{font-size:36px}.score-panel strong{font-size:42px}.summary-strip{grid-template-columns:repeat(2,1fr)}.meal-row menu{grid-template-columns:repeat(4,1fr)}.bottom-nav{display:grid}.floating-coach{right:14px;bottom:78px}.mobile-context{display:flex}}

/* V33 cinematic layer: modern, emotional, still based on the preferred top-nav layout */
.hero-panel{position:relative;overflow:hidden;background:
  linear-gradient(90deg,rgba(9,15,10,.94) 0%,rgba(18,30,20,.82) 42%,rgba(18,30,20,.22) 100%),
  url("media/forja-cinematic-hero.png") center right/cover no-repeat!important;isolation:isolate;box-shadow:0 26px 90px rgba(17,31,19,.22)}
.hero-panel:before{content:"";position:absolute;inset:-35%;background:conic-gradient(from 120deg,transparent,rgba(217,245,107,.18),transparent 28%,rgba(20,185,118,.16),transparent 62%);animation:forjaAurora 16s linear infinite;z-index:-1;mix-blend-mode:screen}
.hero-panel:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 30%,rgba(217,245,107,.22),transparent 24%),linear-gradient(180deg,transparent 55%,rgba(0,0,0,.28));z-index:-1}
.cinematic-grain{position:absolute;inset:0;pointer-events:none;opacity:.13;background-image:linear-gradient(115deg,rgba(255,255,255,.12) 0 1px,transparent 1px 12px);mask-image:linear-gradient(90deg,#000,transparent 75%)}
.coach-orb{position:absolute;right:30px;top:28px;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:rgba(15,22,16,.42);border:1px solid rgba(217,245,107,.28);backdrop-filter:blur(14px);box-shadow:0 0 55px rgba(217,245,107,.18)}
.coach-orb i{grid-area:1/1;width:16px;height:16px;border-radius:50%;background:#d9f56b;box-shadow:0 0 24px #d9f56b}
.coach-orb i:nth-child(2){width:48px;height:48px;background:transparent;border:1px solid rgba(217,245,107,.5);animation:orbPulse 2.8s ease-in-out infinite}
.coach-orb i:nth-child(3){width:76px;height:76px;background:transparent;border:1px solid rgba(255,255,255,.18);animation:orbPulse 3.8s ease-in-out infinite reverse}
.cinematic-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.cinematic-chips span{min-width:118px;background:rgba(255,250,241,.12);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:12px 13px;backdrop-filter:blur(14px)}.cinematic-chips small{display:block;color:#d9f56b;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:950}.cinematic-chips b{display:block;color:#fff;margin-top:3px}
.hero-panel h2,.hero-panel p,.hero-panel .eyebrow,.hero-actions,.cinematic-chips{position:relative;z-index:2}.hero-actions button{transition:transform .22s ease,box-shadow .22s ease}.hero-actions button:hover,.meal-row:hover,.library-card:hover,.next-move:hover,.coach-insight:hover{transform:translateY(-2px)}.hero-actions .primary{box-shadow:0 16px 40px rgba(217,245,107,.24)}
.score-panel{position:relative;overflow:hidden}.score-panel:before{content:"";position:absolute;right:-70px;top:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(217,245,107,.34),transparent 66%);animation:scoreGlow 5s ease-in-out infinite alternate}.score-panel>*{position:relative}.coach-mini{background:linear-gradient(135deg,#f6f0e5,#eaf7d3);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.next-move,.coach-insight,.meal-row,.library-card,.panel,.coach-chat-card,.coach-actions-card{transition:transform .22s ease,box-shadow .22s ease}.next-move:hover,.coach-insight:hover,.meal-row:hover,.library-card:hover{box-shadow:0 24px 70px rgba(20,40,25,.14)}
.chat-msg.assistant{box-shadow:0 12px 35px rgba(20,40,25,.08)}.chat-msg.assistant:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#16c878;margin-right:8px;box-shadow:0 0 16px #16c878}
.chat-msg.pending{opacity:.72}.chat-msg.pending small:after{content:" ...";animation:statusIn .9s ease-in-out infinite alternate}.chat-msg.error{border-color:#ffb8b2!important;background:#fff0ef!important;color:#61201b!important}
.coach-status{animation:statusIn .28s ease-out}.bottom-nav{backdrop-filter:blur(18px)}
@keyframes forjaAurora{to{transform:rotate(360deg)}}@keyframes orbPulse{50%{transform:scale(1.12);opacity:.45}}@keyframes scoreGlow{to{transform:translate(-20px,18px) scale(1.12);opacity:.55}}@keyframes statusIn{from{transform:translateY(-10px);opacity:0}to{transform:none;opacity:1}}
@media(max-width:760px){.hero-panel{background:linear-gradient(180deg,rgba(9,15,10,.88),rgba(18,30,20,.72)),url("media/forja-cinematic-hero.png") center/cover no-repeat!important}.coach-orb{width:68px;height:68px;right:18px;top:18px}.coach-orb i:nth-child(2){width:38px;height:38px}.coach-orb i:nth-child(3){width:56px;height:56px}.cinematic-chips span{min-width:calc(50% - 5px);padding:10px}.hero-panel h2{padding-right:38px}}

/* V34: full-site cinematic product layer */
body.forja-app{position:relative;isolation:isolate;background:
  radial-gradient(circle at 10% -12%,rgba(217,245,107,.24),transparent 30%),
  radial-gradient(circle at 90% 8%,rgba(22,200,120,.14),transparent 28%),
  linear-gradient(180deg,#f7f3ea 0%,#eef4ea 52%,#f8f3ea 100%);overflow-x:hidden}
body.forja-app:after{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.18;background:
  linear-gradient(110deg,rgba(246,241,232,.86),rgba(246,241,232,.62)),
  url("media/forja-cinematic-hero.png") center/cover no-repeat;filter:saturate(1.08);transition:background-image .45s ease,opacity .45s ease}
body.forja-app[data-view="coach"]:after{background:linear-gradient(110deg,rgba(246,241,232,.88),rgba(246,241,232,.62)),url("media/forja-coach-scene.png") center/cover no-repeat}
body.forja-app[data-view="library"]:after{background:linear-gradient(110deg,rgba(246,241,232,.88),rgba(246,241,232,.62)),url("media/forja-library-scene.png") center/cover no-repeat}
body.forja-app[data-view="progress"]:after{background:linear-gradient(110deg,rgba(246,241,232,.88),rgba(246,241,232,.62)),url("media/forja-progress-scene.png") center/cover no-repeat}
body.forja-app[data-view="plan"]:after{background:linear-gradient(110deg,rgba(246,241,232,.88),rgba(246,241,232,.62)),url("media/forja-plan-scene.png") center/cover no-repeat}
.app-rail,.app-main,.bottom-nav,.floating-coach,.coach-status{z-index:1}.app-rail{position:sticky}.app-main{position:relative;padding-top:26px}.view.active{animation:viewReveal .42s cubic-bezier(.2,.8,.2,1)}
.app-rail{box-shadow:0 14px 44px rgba(29,42,30,.08);background:rgba(249,246,239,.82);border-bottom:1px solid rgba(20,36,25,.10)}
.rail-nav{background:rgba(255,255,255,.72);box-shadow:inset 0 0 0 1px rgba(255,255,255,.48),0 14px 36px rgba(28,52,32,.06)}
.rail-nav button.active{background:#102115;color:#d9f56b;box-shadow:0 12px 30px rgba(16,33,21,.16)}
.screen-scene{position:relative;overflow:hidden;min-height:238px;border-radius:34px;margin:0 0 16px;padding:30px;display:flex;justify-content:space-between;align-items:flex-end;gap:18px;color:#fff;background:#102115;border:1px solid rgba(255,255,255,.18);box-shadow:0 28px 90px rgba(26,39,27,.18);isolation:isolate}
.screen-scene:before{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(8,14,9,.92) 0%,rgba(16,33,21,.72) 46%,rgba(16,33,21,.18) 100%),
  var(--scene-img) center/cover no-repeat;z-index:-2;animation:sceneDrift 18s ease-in-out infinite alternate;transform:scale(1.03)}
.screen-scene:after{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 76% 22%,rgba(217,245,107,.22),transparent 24%),
  linear-gradient(115deg,rgba(255,255,255,.10) 0 1px,transparent 1px 14px);opacity:.78;z-index:-1;mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.28) 75%)}
.coach-scene{--scene-img:url("media/forja-coach-scene.png")}.library-scene{--scene-img:url("media/forja-library-scene.png")}.progress-scene{--scene-img:url("media/forja-progress-scene.png")}.plan-scene{--scene-img:url("media/forja-plan-scene.png")}.settings-scene{--scene-img:url("media/forja-cinematic-hero.png")}.admin-scene{--scene-img:url("media/forja-plan-scene.png")}
.scene-copy{max-width:720px}.scene-copy .eyebrow{color:#d9f56b}.scene-copy h2{font-size:clamp(34px,4.4vw,62px);line-height:.92;letter-spacing:-.065em;text-wrap:balance}.scene-copy p:not(.eyebrow){max-width:650px;color:#eef3e8;font-size:17px;line-height:1.55;margin:12px 0 0}
.scene-metrics{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.scene-metrics span{min-width:128px;background:rgba(255,250,241,.12);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:13px 14px;backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}.scene-metrics small{display:block;color:#d9f56b;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:950}.scene-metrics b{display:block;color:#fff;font-size:18px;margin-top:3px}
.coach-chat-card,.coach-actions-card,.library-toolbar,.library-ai,.progress-main,.tracker-card-v31,.panel,.meal-row,.library-card,.summary-strip article,.next-move,.coach-insight,.score-panel{background:rgba(255,253,247,.88)!important;border-color:rgba(220,227,213,.82)!important;backdrop-filter:blur(18px);box-shadow:0 22px 70px rgba(24,39,25,.10)}
.coach-chat-card,.coach-actions-card,.progress-main,.tracker-card-v31,.panel{border-radius:28px}.coach-layout,.progress-layout,.plan-grid,.settings-grid,.admin-console{align-items:start}
.coach-layout{grid-template-columns:minmax(0,1fr)!important}.coach-actions-card{display:none!important}
.coach-chat-card{min-height:640px;overflow:hidden}.coach-header{background:linear-gradient(180deg,rgba(255,255,255,.44),rgba(255,255,255,0));border-bottom-color:rgba(220,227,213,.72)}.coach-messages{background:linear-gradient(180deg,rgba(236,248,233,.34),transparent 28%)}.chat-msg{animation:messageRise .26s ease-out}.chat-msg.assistant{background:rgba(255,253,247,.92);border-color:#dce3d5}.chat-msg.user{background:linear-gradient(135deg,#102115,#173a25);box-shadow:0 16px 44px rgba(16,33,21,.18)}
.coach-composer{background:rgba(255,253,247,.72)}.coach-composer textarea:focus,.library-ai input:focus,input:focus,textarea:focus,select:focus{outline:2px solid rgba(217,245,107,.72);outline-offset:2px}
.action-review{background:linear-gradient(180deg,#fffdf7,#f4f8ef);border-color:#dce3d5;box-shadow:0 16px 42px rgba(24,39,25,.08)}
.library-toolbar,.panel.plan-card{position:relative;overflow:hidden}.library-toolbar:after,.progress-main:after,.panel.plan-card:after{content:"";position:absolute;right:-80px;top:-90px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(217,245,107,.28),transparent 66%);pointer-events:none}
.library-card{position:relative;overflow:hidden}.library-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#16c878,#d9f56b);opacity:.85}.library-card:hover,.meal-row:hover,.action-review:hover{transform:translateY(-3px);box-shadow:0 28px 76px rgba(24,39,25,.14)}
.progress-main{position:relative;overflow:hidden}.donut{box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 18px 45px rgba(20,40,25,.10)}.metric-line i b{box-shadow:0 0 18px rgba(217,245,107,.28)}
.coach-status{background:linear-gradient(135deg,#102115,#193620);border:1px solid rgba(217,245,107,.22);box-shadow:0 30px 100px rgba(16,33,21,.34)}.coach-status:before{content:"";width:9px;height:9px;border-radius:50%;background:#d9f56b;box-shadow:0 0 18px #d9f56b;align-self:center;animation:orbPulse 1.4s ease-in-out infinite}
.bottom-nav{background:rgba(16,33,21,.92);border:1px solid rgba(217,245,107,.16)}.bottom-nav button.active{box-shadow:0 8px 24px rgba(217,245,107,.18)}
.floating-coach{border-radius:999px!important;background:linear-gradient(135deg,#102115,#1d4b2e)!important;box-shadow:0 22px 60px rgba(16,33,21,.26),0 0 0 1px rgba(217,245,107,.14)!important}
@keyframes sceneDrift{from{transform:scale(1.03) translate3d(0,0,0)}to{transform:scale(1.09) translate3d(-16px,-9px,0)}}@keyframes viewReveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes messageRise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:900px){.screen-scene{min-height:260px;display:grid;align-items:end;padding:24px}.scene-metrics{justify-content:flex-start}.scene-metrics span{min-width:calc(50% - 5px)}}
@media(max-width:760px){body.forja-app:after{opacity:.10}.app-main{padding-top:14px}.screen-scene{min-height:315px;border-radius:28px;margin-bottom:12px;padding:22px;background-position:center}.screen-scene:before{background:linear-gradient(180deg,rgba(8,14,9,.82) 0%,rgba(16,33,21,.64) 54%,rgba(16,33,21,.88) 100%),var(--scene-img) center/cover no-repeat;animation:none}.screen-scene:after{mask-image:none;opacity:.42}.scene-copy h2{font-size:36px}.scene-copy p:not(.eyebrow){font-size:15px}.scene-metrics span{min-width:calc(50% - 5px);padding:11px 12px}.coach-chat-card{min-height:calc(100vh - 470px)}.coach-actions-card{padding:18px}.library-toolbar,.library-ai{border-radius:22px}.toast{left:14px;right:14px;bottom:88px}.floating-coach{bottom:82px}}

/* V34.0.5: night-shift data safety + overlays above every product surface */
.date-select{width:auto;min-width:142px;font-weight:850;color:#171916}
.rail-footer .date-select{width:148px;min-width:138px;background:#fff}
.topbar-actions .date-select{width:154px}
.mobile-context{gap:10px;flex-wrap:wrap}
.mobile-context>div{min-width:82px}
.mobile-context .date-select{flex:1 1 150px;min-width:145px}
.mobile-context select{flex:1 1 132px;min-width:132px}
#aiStatus.coach-status{position:fixed!important;z-index:9999!important;isolation:isolate}
.app-rail{z-index:900!important}
.bottom-nav{z-index:900!important}
.floating-coach{z-index:901!important}
.app-main{z-index:0!important}
.toast{z-index:10001!important}
#modal{z-index:10000}

/* V34.0.6: coach-native status, premium sheets, grouped meal timeline */
.meal-timeline{gap:14px}
.meal-time-block{display:grid;grid-template-columns:118px 1fr;gap:14px;align-items:start}
.time-anchor{position:sticky;top:88px;background:linear-gradient(135deg,#102115,#193620);color:#fff;border-radius:22px;padding:13px;box-shadow:0 18px 44px rgba(16,33,21,.16)}
.time-anchor time{display:block;color:#d9f56b;font-size:20px;font-weight:950;letter-spacing:0}
.time-anchor span{display:block;color:#dbead7;font-size:12px;font-weight:850;margin-top:4px}
.meal-stack{display:grid;gap:9px}
.meal-time-block.stacked .meal-stack{padding:10px;border:1px dashed rgba(16,33,21,.18);border-radius:26px;background:rgba(255,253,247,.58)}
.meal-time-block .meal-row{grid-template-columns:1fr auto}
.meal-row menu button{min-width:74px}
.coach-thinking{max-width:min(92%,760px)!important;background:linear-gradient(135deg,#102115,#183a25)!important;color:#fff!important;border:1px solid rgba(217,245,107,.22)!important;box-shadow:0 24px 70px rgba(16,33,21,.22)}
.thinking-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.thinking-head b{font-size:18px}.thinking-head button{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.22);color:#fff}
.thinking-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.thinking-steps span{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:14px;padding:9px 10px;color:#cbd8c8;font-size:12px;font-weight:850}
.thinking-steps span.on{background:rgba(217,245,107,.16);border-color:rgba(217,245,107,.36);color:#f5ffd9}
.action-chat{max-width:min(92%,760px)!important;border-color:rgba(17,156,105,.28)!important;background:linear-gradient(180deg,#fffdf7,#f2faec)!important}.action-chat h3{font-size:22px;letter-spacing:-.03em;margin:.25rem 0}
#modal{padding:0;border:0;background:transparent;max-width:none;max-height:none;width:auto;height:auto}
#modal[open]{display:grid;place-items:center;margin:auto;inset:0}
#modal .modal-card{width:min(96vw,1040px);max-height:min(88vh,920px);padding:0;overflow:hidden;border-radius:34px;background:rgba(255,253,247,.96);box-shadow:0 44px 140px rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.58)}
#modalContent{max-height:calc(min(88vh,920px) - 82px);overflow:auto}
.modal-shell{display:grid}.modal-hero{padding:26px 30px;background:linear-gradient(120deg,#102115,#1d4b2e);color:#fff;position:relative;overflow:hidden}.modal-hero:after{content:"";position:absolute;inset:auto -20% -70% 30%;height:180px;background:radial-gradient(circle,rgba(217,245,107,.28),transparent 62%)}.modal-hero small{color:#d9f56b;text-transform:uppercase;letter-spacing:.12em;font-weight:950;font-size:11px}.modal-hero h2{font-size:38px;line-height:1;letter-spacing:-.055em;position:relative;margin-top:6px}
.modal-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;padding:20px}.modal-main{min-width:0}.modal-aside{background:linear-gradient(180deg,#eef8e9,#fffdf7);border:1px solid #dce3d5;border-radius:24px;padding:18px;color:#445044}.modal-aside h3{font-size:22px;letter-spacing:-.04em}.modal-aside p{color:#657060;margin-top:8px;line-height:1.45}
.form-section{background:#fff;border:1px solid #dce3d5;border-radius:24px;padding:16px;margin-bottom:12px;box-shadow:0 12px 34px rgba(24,39,25,.06);min-width:0}.form-section>b{display:block;margin-bottom:12px;font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:#405344}.field-grid,.macro-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.macro-editor{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.form-section label{display:grid;gap:6px;color:#657060;font-weight:900;min-width:0}.form-section input,.form-section select,.form-section textarea{background:#fbfff7;border-color:#dce3d5;box-sizing:border-box;min-width:0;width:100%}.form-section textarea{min-height:92px}.quick-fluid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.quick-fluid button,.coach-estimate{background:#eef8e9;color:#102115;border-color:#dce3d5;margin-top:12px}.coach-estimate{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#102115,#1e5b35);color:#fff;border:0;box-shadow:0 16px 38px rgba(16,33,21,.16)}.coach-estimate:before{content:"AI";display:inline-grid;place-items:center;width:30px;height:22px;border-radius:999px;background:#d9f56b;color:#102115;font-size:11px;font-weight:950}.fluid-section{background:linear-gradient(135deg,#f5fbff,#fffdf7)}
#modal .modal-card menu{margin:0;padding:16px 20px;background:#fffaf1;border-top:1px solid #e7dece}.modal-card menu button{min-width:118px}
@media(max-width:760px){.meal-time-block{grid-template-columns:1fr}.time-anchor{position:relative;top:auto;display:flex;justify-content:space-between;align-items:center}.meal-time-block .meal-row{grid-template-columns:1fr}.thinking-steps{grid-template-columns:1fr}.modal-body{grid-template-columns:1fr;padding:14px}.modal-aside{display:none}.modal-hero{padding:22px}.modal-hero h2{font-size:31px}.field-grid,.macro-editor{grid-template-columns:1fr 1fr}.macro-editor label:last-child{grid-column:1/-1}#modal .modal-card{width:100vw;max-height:92vh;border-radius:28px 28px 0 0}#modal{margin:auto auto 0}}

/* V34.0.7: calm premium motion, stable coach status, repaired header context */
.app-rail{display:grid!important;grid-template-columns:auto minmax(390px,1fr) auto;align-items:center;gap:18px}
.brand-lockup{min-width:154px!important;flex:0 0 auto}.rail-nav{min-width:0;overflow:auto;scrollbar-width:none}.rail-nav::-webkit-scrollbar{display:none}.rail-footer{margin-left:auto!important;flex:0 0 auto;white-space:nowrap}.rail-footer small,.rail-footer strong{display:none!important}.rail-footer .shift-select{width:132px!important;min-width:132px!important}.rail-footer .date-select{width:136px!important;min-width:136px!important}.rail-footer a{padding:10px 11px!important}
@media(max-width:1280px){.app-rail{grid-template-columns:auto minmax(0,1fr) auto;padding-inline:16px}.brand-lockup{min-width:118px!important}.brand-lockup small{display:none}.rail-nav button{padding:9px 10px;font-size:13px}.rail-footer a{display:none}}
@media(max-width:1100px){.app-rail{display:flex!important}.rail-footer a{display:inline-flex}}
@media(max-width:760px){.app-rail{display:none!important}.mobile-context{display:flex!important}}

.coach-thinking{position:relative;overflow:hidden;padding:18px!important;transform:translateZ(0);animation:coachCardIn .28s ease-out!important}
.coach-thinking:before{content:"";position:absolute;inset:-60% -20%;background:conic-gradient(from 140deg,transparent,rgba(217,245,107,.18),transparent 32%,rgba(22,200,120,.12),transparent 62%);animation:coachAura 8s linear infinite;opacity:.85}
.coach-thinking>*{position:relative;z-index:1}.thinking-layout{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center}.coach-sigil{width:58px;height:58px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);position:relative;display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(217,245,107,.12)}
.coach-sigil i{position:absolute;border-radius:50%;border:1px solid rgba(217,245,107,.48);animation:coachOrbit 4.8s ease-in-out infinite}.coach-sigil i:nth-child(1){width:12px;height:12px;background:#d9f56b;border:0;box-shadow:0 0 24px #d9f56b;animation:coachPulse 1.9s ease-in-out infinite}.coach-sigil i:nth-child(2){width:34px;height:34px}.coach-sigil i:nth-child(3){width:48px;height:48px;animation-duration:6.2s;animation-direction:reverse}
.thinking-steps{position:relative}.thinking-steps span{transition:background .45s ease,border-color .45s ease,color .45s ease,transform .45s ease}.thinking-steps span.on{transform:translateY(-1px);box-shadow:0 10px 24px rgba(217,245,107,.12)}
.coach-thinking.finishing{animation:coachCardOut .22s ease-in forwards!important}
.confirm-panel p{font-size:18px;color:#334239;line-height:1.45}.confirm-check{margin-top:16px;display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:10px;background:#f2faec;border:1px solid #dce3d5;border-radius:16px;padding:12px}.confirm-check input{width:18px;height:18px}

.view.active .screen-scene,.view.active .today-grid,.view.active .summary-strip,.view.active .decision-board,.view.active .section-head,.view.active .meal-time-block,.view.active .coach-layout,.view.active .library-toolbar,.view.active .library-ai,.view.active .library-card,.view.active .progress-layout,.view.active .plan-grid,.view.active .settings-grid,.view.active .admin-console{animation:forjaLift .52s cubic-bezier(.2,.8,.2,1) both}
.view.active .summary-strip article:nth-child(2),.view.active .library-card:nth-child(2),.view.active .meal-time-block:nth-child(2){animation-delay:.04s}.view.active .summary-strip article:nth-child(3),.view.active .library-card:nth-child(3),.view.active .meal-time-block:nth-child(3){animation-delay:.08s}.view.active .summary-strip article:nth-child(4),.view.active .library-card:nth-child(4),.view.active .meal-time-block:nth-child(4){animation-delay:.12s}
.forja-app button,.library-card,.meal-row,.summary-strip article,.next-move,.coach-insight,.panel,.tracker-card-v31,.progress-main,.coach-chat-card,.coach-actions-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}.forja-app button:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(16,33,21,.10)}.forja-app button:active{transform:translateY(0) scale(.985)}
.summary-strip article:hover,.panel:hover,.tracker-card-v31:hover,.progress-main:hover{transform:translateY(-2px);box-shadow:0 28px 78px rgba(24,39,25,.13)}
.screen-scene .scene-metrics span{animation:metricBreathe 4.8s ease-in-out infinite}.screen-scene .scene-metrics span:nth-child(2){animation-delay:.7s}
@keyframes coachAura{to{transform:rotate(360deg)}}@keyframes coachPulse{50%{transform:scale(1.18);opacity:.74}}@keyframes coachOrbit{50%{transform:rotate(18deg) scale(1.06);opacity:.62}}@keyframes coachCardIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes coachCardOut{to{opacity:0;transform:translateY(6px) scale(.985)}}@keyframes forjaLift{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes metricBreathe{50%{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 14px 38px rgba(217,245,107,.10)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.forja-landing .marketing-hero,.forja-landing .landing-product-shot,.forja-landing .landing-system article,.forja-landing .landing-proof,.auth-card,.wizard-hero,.wizard-card{animation:forjaLift .58s cubic-bezier(.2,.8,.2,1) both}
.forja-landing .landing-product-shot{animation:forjaLift .58s cubic-bezier(.2,.8,.2,1) both,sceneFloat 7s ease-in-out 1s infinite}.forja-landing .landing-system article:nth-child(2){animation-delay:.05s}.forja-landing .landing-system article:nth-child(3){animation-delay:.1s}.forja-landing .landing-system article:nth-child(4){animation-delay:.15s}
.wizard-card.active{animation:forjaLift .36s cubic-bezier(.2,.8,.2,1) both}.wizard-steps button,.bottom-nav button,.segmented button{transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.wizard-steps button:hover,.bottom-nav button:hover,.segmented button:hover{transform:translateY(-1px)}
.settings-control-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.settings-control-grid label,.settings-toggles label{display:grid;gap:6px;color:#556253;font-weight:900}.settings-toggles{display:grid;gap:10px;margin:12px 0 18px}.settings-toggles label{display:flex;align-items:center;background:#f2faec;border:1px solid #dce3d5;border-radius:16px;padding:12px}.settings-toggles input{width:18px!important;height:18px!important}
.history-panel{margin-top:18px;background:rgba(255,253,247,.90);border:1px solid #dce3d5;border-radius:24px;padding:18px;box-shadow:0 16px 42px rgba(24,39,25,.08)}.trend-head{display:flex;justify-content:space-between;align-items:end;gap:12px}.trend-head h3{font-size:32px;letter-spacing:-.05em}.trend-head span{background:#eef8e9;border:1px solid #dce3d5;border-radius:999px;padding:8px 11px;font-weight:900;color:#405344}.trend-chart{height:112px;display:flex;align-items:end;gap:5px;margin:18px 0;padding:12px;border-radius:18px;background:linear-gradient(180deg,#f7fbf3,#fffdf7);border:1px solid #e4eadf}.trend-chart i{flex:1;min-width:5px;border-radius:999px 999px 4px 4px;background:linear-gradient(180deg,#d9f56b,#119c69);box-shadow:0 8px 18px rgba(17,156,105,.12);transition:height .35s ease}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat-grid span{background:#f2faec;border:1px solid #dce3d5;border-radius:16px;padding:12px}.stat-grid small{display:block;color:#657060;text-transform:uppercase;font-size:10px;font-weight:950;letter-spacing:.08em}.stat-grid b{font-size:18px}

/* V34: cinematic landing and auth surfaces */
.forja-landing{position:relative;isolation:isolate;background:#f7f3ea;overflow-x:hidden}.forja-landing:after{content:"";position:fixed;inset:0;z-index:-1;opacity:.20;background:linear-gradient(100deg,#f7f3ea 0%,rgba(247,243,234,.78) 48%,rgba(247,243,234,.36) 100%),url("media/forja-cinematic-hero.png") center/cover no-repeat}
.marketing-nav{position:sticky;top:0;z-index:20;background:rgba(247,243,234,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(20,36,25,.08);max-width:none;padding-inline:max(24px,calc((100vw - 1280px)/2 + 24px))}
.marketing-hero{min-height:calc(100vh - 92px);position:relative}.marketing-hero:before{content:"";position:absolute;inset:28px 24px;border-radius:44px;background:linear-gradient(100deg,rgba(16,33,21,.96) 0%,rgba(16,33,21,.68) 52%,rgba(16,33,21,.06) 100%),url("media/forja-cinematic-hero.png") center right/cover no-repeat;box-shadow:0 34px 110px rgba(16,33,21,.20);z-index:-1}.marketing-hero>div{color:#fff;padding:36px}.marketing-hero .eyebrow{color:#d9f56b}.marketing-hero h1{color:#fff;text-wrap:balance}.marketing-hero p:not(.eyebrow){color:#eef3e8}.marketing-hero .hero-actions a{background:rgba(255,250,241,.12);border-color:rgba(255,255,255,.18);color:#fff;backdrop-filter:blur(14px)}.marketing-hero .hero-actions .primary{background:#d9f56b;color:#102115;border-color:#d9f56b}
.landing-product-shot{background:linear-gradient(135deg,rgba(16,33,21,.86),rgba(16,33,21,.42)),url("media/forja-coach-scene.png") center/cover no-repeat;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);animation:sceneFloat 7s ease-in-out infinite}.shot-main{background:rgba(255,253,247,.90);backdrop-filter:blur(18px);box-shadow:0 22px 70px rgba(16,33,21,.16)}.chat-bubble{background:rgba(255,250,241,.72);backdrop-filter:blur(12px)}
.landing-system article{position:relative;overflow:hidden;background:rgba(255,253,247,.86);backdrop-filter:blur(14px);transition:transform .22s ease,box-shadow .22s ease}.landing-system article:hover{transform:translateY(-4px);box-shadow:0 28px 78px rgba(16,33,21,.14)}.landing-system article:nth-child(1):before,.landing-system article:nth-child(2):before,.landing-system article:nth-child(3):before,.landing-system article:nth-child(4):before{content:"";position:absolute;inset:auto 0 0;height:86px;opacity:.16;background:var(--module-img) center/cover no-repeat}.landing-system article:nth-child(1){--module-img:url("media/forja-coach-scene.png")}.landing-system article:nth-child(2){--module-img:url("media/forja-plan-scene.png")}.landing-system article:nth-child(3){--module-img:url("media/forja-library-scene.png")}.landing-system article:nth-child(4){--module-img:url("media/forja-progress-scene.png")}
.landing-proof{position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(255,253,247,.92),rgba(255,253,247,.72)),url("media/forja-progress-scene.png") center/cover no-repeat;backdrop-filter:blur(16px);box-shadow:0 28px 90px rgba(16,33,21,.12)}
.auth-body{background:linear-gradient(110deg,rgba(8,14,9,.80),rgba(8,14,9,.42)),url("media/forja-coach-scene.png") center/cover no-repeat}.auth-card{background:rgba(255,253,247,.90);backdrop-filter:blur(22px);border:1px solid rgba(255,255,255,.55);box-shadow:0 36px 120px rgba(0,0,0,.30);animation:viewReveal .34s ease-out}.auth-card h1{letter-spacing:-.065em}
.onboard-body{position:relative;isolation:isolate;background:linear-gradient(120deg,rgba(247,243,234,.90),rgba(236,248,233,.78)),url("media/forja-plan-scene.png") center/cover fixed no-repeat}.onboard-body:before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 78% 12%,rgba(217,245,107,.30),transparent 28%),radial-gradient(circle at 18% 78%,rgba(22,200,120,.18),transparent 30%);pointer-events:none}.wizard-shell{position:relative}.wizard-hero{align-items:stretch}.wizard-hero>div{position:relative;overflow:hidden;background:linear-gradient(105deg,rgba(16,33,21,.96),rgba(16,33,21,.60)),url("media/forja-plan-scene.png") center/cover no-repeat;color:#fff;border-color:rgba(255,255,255,.18)}.wizard-hero>div .eyebrow{color:#d9f56b}.wizard-hero>div p:not(.eyebrow){color:#eef3e8}.wizard-hero aside{background:linear-gradient(145deg,rgba(16,33,21,.94),rgba(24,66,40,.88)),url("media/forja-library-scene.png") center/cover no-repeat;border:1px solid rgba(217,245,107,.20);box-shadow:0 28px 90px rgba(16,33,21,.18)}.wizard-card{background:rgba(255,253,247,.90);backdrop-filter:blur(18px);border-color:rgba(220,227,213,.84)}.wizard-steps button{background:rgba(255,253,247,.86);backdrop-filter:blur(12px)}.wizard-steps button.active{background:#102115;color:#d9f56b}.shift-card{background:rgba(255,253,247,.82);backdrop-filter:blur(12px)}
@keyframes sceneFloat{50%{transform:translateY(-8px)}}@media(max-width:900px){.marketing-hero:before{inset:12px;border-radius:34px}.marketing-hero>div{padding:18px}.landing-product-shot{animation:none}}@media(max-width:620px){.marketing-hero{padding-inline:12px}.marketing-hero:before{inset:8px}.marketing-hero h1{font-size:46px}.marketing-nav{padding-inline:16px}}

/* V34.0.13: coach app shell, smarter context, account settings and plan studio */
.rail-footer{min-width:auto!important}.rail-footer small,.rail-footer strong{display:block!important}.day-context-dock{max-width:1120px;margin:0 auto 18px;display:grid;grid-template-columns:auto 170px 190px 1fr;gap:12px;align-items:end;background:rgba(255,253,247,.82);border:1px solid rgba(220,227,213,.86);border-radius:26px;padding:14px;box-shadow:0 18px 55px rgba(24,39,25,.08);backdrop-filter:blur(18px)}.day-context-dock label{display:grid;gap:5px;color:#657060;font-weight:900}.day-context-dock label span,.dock-copy small{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#08764f;font-weight:950}.dock-copy b{display:block;font-size:24px;letter-spacing:-.04em}.dock-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.today-water-mini{margin-top:14px;border-top:1px solid #dce3d5;padding-top:14px}.today-water-mini small{display:block;margin-bottom:8px;color:#08764f;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:950}
.coach-layout{max-width:980px;margin:0 auto;min-height:auto!important}.coach-chat-card{height:min(760px,calc(100vh - 210px));min-height:540px;overflow:hidden}.coach-messages{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b7c9aa transparent}.coach-messages::-webkit-scrollbar{width:8px}.coach-messages::-webkit-scrollbar-thumb{background:#b7c9aa;border-radius:999px}.coach-header{align-items:center}.smart-scope{background:#102115;color:#d9f56b;border:1px solid rgba(217,245,107,.28);border-radius:999px;padding:10px 13px;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.chat-msg{animation:messageRise .24s ease-out both}.coach-thinking{background:linear-gradient(140deg,#07140d,#12361f 62%,#245533)!important;border:1px solid rgba(217,245,107,.30)!important;box-shadow:0 28px 90px rgba(16,33,21,.30),inset 0 1px 0 rgba(255,255,255,.08)!important}.coach-thinking:before{opacity:.38}.coach-sigil{background:radial-gradient(circle,#d9f56b 0 12%,rgba(217,245,107,.12) 13% 100%)!important}.thinking-wave{display:flex;gap:5px;margin:14px 0 2px}.thinking-wave i{height:28px;flex:1;border-radius:999px;background:linear-gradient(180deg,#d9f56b,#119c69);transform-origin:bottom;animation:signalWave 1.1s ease-in-out infinite}.thinking-wave i:nth-child(2){animation-delay:.1s}.thinking-wave i:nth-child(3){animation-delay:.2s}.thinking-wave i:nth-child(4){animation-delay:.3s}.thinking-wave i:nth-child(5){animation-delay:.4s}.thinking-steps span{font-size:11px;opacity:.72}.thinking-steps span.on{opacity:1}
.plan-studio{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)}.plan-studio .panel:last-child{grid-column:1/-1}.plan-overview,.account-panel #accountSummary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:16px 0}.plan-overview span,#accountSummary span{background:#f2faec;border:1px solid #dce3d5;border-radius:18px;padding:12px}.plan-overview small,#accountSummary small{display:block;color:#657060;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:950}.plan-overview b,#accountSummary b{display:block;font-size:18px;margin-top:3px}.plan-timeline{display:grid;gap:9px;max-height:430px;overflow:auto;padding-right:4px}.plan-timeline article{display:grid;grid-template-columns:76px 1fr auto;gap:10px;align-items:center;background:#fffdf7;border:1px solid #dce3d5;border-radius:18px;padding:10px}.plan-timeline article.done{background:#effbea}.plan-timeline time{font-weight:950;color:#08764f}.plan-timeline b{display:block}.plan-timeline small{color:#657060}
.settings-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.settings-grid .account-panel{grid-column:1/-1}.settings-control-grid input,.settings-control-grid select{min-height:46px}
.forja-app .rail-nav button:before,.bottom-nav button:before{display:inline-block;margin-right:6px}.rail-nav [data-view="today"]:before,.bottom-nav [data-view="today"]:before{content:"◉"}.rail-nav [data-view="coach"]:before,.bottom-nav [data-view="coach"]:before{content:"✦"}.rail-nav [data-view="library"]:before,.bottom-nav [data-view="library"]:before{content:"▣"}.rail-nav [data-view="progress"]:before,.bottom-nav [data-view="progress"]:before{content:"⌁"}.rail-nav [data-view="plan"]:before,.bottom-nav [data-view="plan"]:before{content:"▤"}.rail-nav [data-view="settings"]:before,.bottom-nav [data-view="settings"]:before{content:"⚙"}.rail-nav [data-view="admin"]:before{content:"◆"}
.forja-landing:after{opacity:.30;animation:landingGlow 10s ease-in-out infinite}.marketing-hero:before{box-shadow:0 38px 120px rgba(16,33,21,.28),inset 0 1px 0 rgba(255,255,255,.14)}.marketing-hero h1{font-size:clamp(64px,10vw,134px)!important}.landing-product-shot{transform-style:preserve-3d}.shot-main article{animation:metricBreathe 4.2s ease-in-out infinite}.chat-bubble{animation:messageRise .6s ease-out both,metricBreathe 5.2s ease-in-out 1s infinite}
@keyframes signalWave{0%,100%{transform:scaleY(.28);opacity:.5}50%{transform:scaleY(1);opacity:1}}@keyframes landingGlow{50%{opacity:.42;transform:scale(1.02)}}@media(max-width:900px){.day-context-dock{grid-template-columns:1fr 1fr}.dock-actions{grid-column:1/-1;justify-content:flex-start}.coach-chat-card{height:calc(100vh - 190px)}}@media(max-width:760px){.day-context-dock{margin:0 0 12px;grid-template-columns:1fr;border-radius:22px}.dock-actions{display:grid;grid-template-columns:repeat(4,1fr)}.coach-layout{max-width:none}.coach-chat-card{height:calc(100vh - 165px);min-height:0}.coach-header{grid-template-columns:1fr}.smart-scope{width:max-content}.plan-timeline article{grid-template-columns:1fr}.settings-grid,.plan-studio{grid-template-columns:1fr}.plan-studio .panel:last-child{grid-column:auto}}

/* V34.0.14: compact context and coach width repair */
.day-context-dock{display:none!important}.rail-context{display:none!important}.rail-footer{gap:8px!important}.context-pill{display:grid;grid-template-columns:auto auto;align-items:center;gap:8px;background:#fff;border:1px solid #dce3d5;border-radius:999px;padding:5px 6px 5px 12px;color:#171916}.context-pill small,.context-pill strong{display:block!important;white-space:nowrap;font-size:12px!important;color:#657060!important;text-transform:uppercase;letter-spacing:.08em}.context-pill strong{font-size:13px!important;color:#171916!important}.context-pill input,.context-pill select{width:auto!important;min-width:112px!important;border:0!important;background:#f4f8ef!important;border-radius:999px!important;padding:8px 10px!important;font-size:13px}.coach-layout{max-width:none!important}.coach-chat-card{max-width:none;width:100%;height:min(900px,calc(100vh - 145px));min-height:720px}.coach-messages{padding:28px}.coach-thinking{max-width:min(94%,760px)!important;min-width:min(680px,94%)!important;padding:22px!important}.thinking-layout{grid-template-columns:64px 1fr!important;align-items:start!important}.coach-sigil{width:56px!important;height:56px!important;border-radius:20px!important}.thinking-steps{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;gap:9px}.thinking-steps span{padding:10px 12px!important;font-size:12px!important}.thinking-wave{margin:18px 0 8px!important}.thinking-wave i{height:34px}.hero-actions:empty{display:none}.fluid-custom{display:grid;grid-template-columns:1fr auto auto;gap:8px;margin-top:10px}.fluid-custom input{min-width:0}.today-water-mini .water-actions{display:flex;flex-wrap:wrap}.today-water-mini .water-actions button{flex:1 1 72px}.rail-nav [data-view="progress"]:before,.bottom-nav [data-view="progress"]:before{font-size:14px;line-height:1;vertical-align:middle}@media(max-width:760px){.context-pill{display:none}.coach-chat-card{height:calc(100vh - 120px);min-height:620px}.coach-thinking{min-width:0!important}.fluid-custom{grid-template-columns:1fr 1fr}.fluid-custom input{grid-column:1/-1}}

/* V34.0.16: full-height coach signal and stable CSS progress icon */
.coach-thinking{display:block!important;width:min(860px,96%)!important;max-width:min(860px,96%)!important;min-width:min(700px,96%)!important;min-height:258px!important;padding:24px!important;border-radius:30px!important;overflow:hidden!important;background:linear-gradient(135deg,#07140d 0%,#12361f 58%,#2d5d38 100%)!important;color:#fff!important}
.coach-thinking>*{position:relative;z-index:1}.signal-header{display:grid!important;grid-template-columns:76px minmax(0,1fr);gap:18px;align-items:start}.signal-copy{min-width:0}.signal-copy small{display:inline-flex!important;width:auto!important;margin-bottom:8px;padding:7px 10px;border-radius:999px;background:rgba(217,245,107,.13);border:1px solid rgba(217,245,107,.24);color:#d9f56b!important;opacity:1!important;letter-spacing:.12em}.thinking-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important}.thinking-head b{display:block!important;font-size:22px!important;line-height:1.05!important;letter-spacing:-.035em;color:#fff!important}.thinking-head button{flex:0 0 auto!important;border-radius:999px!important;padding:9px 13px!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important}.coach-thinking p{font-size:15px!important;line-height:1.48!important;max-width:680px!important;margin:9px 0 0!important;color:#e8f3df!important}.coach-sigil{width:72px!important;height:72px!important;border-radius:26px!important;box-shadow:inset 0 0 0 1px rgba(217,245,107,.18),0 18px 45px rgba(0,0,0,.20)!important}.coach-sigil i:nth-child(2){width:44px!important;height:44px!important}.coach-sigil i:nth-child(3){width:62px!important;height:62px!important}.signal-meter{height:18px;margin:18px 0 14px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);overflow:hidden;position:relative}.signal-meter i{display:block;height:100%;width:var(--signal-progress,12%);border-radius:999px;background:linear-gradient(90deg,#119c69,#d9f56b);box-shadow:0 0 28px rgba(217,245,107,.35);transition:width .45s ease}.signal-meter span{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:10px;font-weight:950;color:#102115;background:#d9f56b;border-radius:999px;padding:2px 7px}.thinking-wave{height:46px!important;align-items:end!important;padding:6px 8px!important;margin:0 0 14px!important;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10)}.thinking-wave i{height:36px!important;min-width:0!important}.thinking-steps{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin-top:0!important}.thinking-steps span{min-height:48px!important;display:flex!important;align-items:center!important;padding:10px!important;font-size:11px!important;line-height:1.2!important;color:#dbe8d5!important;background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:15px!important}.thinking-steps span.on{background:rgba(217,245,107,.18)!important;border-color:rgba(217,245,107,.34)!important;color:#fbffe6!important}.rail-nav [data-view="progress"]:before,.bottom-nav [data-view="progress"]:before{content:""!important;width:18px!important;height:18px!important;min-width:18px!important;margin-right:7px!important;border-radius:7px!important;border:1px solid rgba(17,156,105,.38)!important;background:linear-gradient(#102115,#102115) 4px 10px/3px 5px no-repeat,linear-gradient(#119c69,#119c69) 8px 6px/3px 9px no-repeat,linear-gradient(#d9f56b,#d9f56b) 12px 3px/3px 12px no-repeat,rgba(217,245,107,.18)!important;vertical-align:-4px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 5px 14px rgba(17,156,105,.12)!important}
@media(max-width:760px){.coach-thinking{width:100%!important;max-width:100%!important;min-width:0!important;min-height:300px!important;padding:18px!important}.signal-header{grid-template-columns:58px minmax(0,1fr);gap:13px}.coach-sigil{width:56px!important;height:56px!important}.thinking-head{align-items:flex-start!important}.thinking-head b{font-size:18px!important}.thinking-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important}.thinking-steps span{min-height:44px!important}.bottom-nav [data-view="progress"]:before{display:block!important;margin:0 auto 3px!important;vertical-align:middle!important}}

/* V34.0.17: coach room redesign, no clipped signal, taller app-like chat */
body.forja-app[data-view="coach"] .app-main{max-width:1240px!important;padding-top:16px!important}
#view-coach{max-width:1180px;margin:0 auto}
#view-coach .coach-scene{min-height:168px!important;margin-bottom:12px!important;padding:22px 24px!important;border-radius:30px!important;align-items:center!important}
#view-coach .coach-scene:before{background:linear-gradient(90deg,rgba(8,14,9,.90) 0%,rgba(16,33,21,.70) 48%,rgba(16,33,21,.20) 100%),var(--scene-img) center 42%/cover no-repeat!important}
#view-coach .scene-copy h2{font-size:clamp(30px,3.4vw,48px)!important;line-height:.94!important}
#view-coach .scene-copy p:not(.eyebrow){font-size:15px!important;margin-top:8px!important;max-width:760px!important}
#view-coach .scene-metrics span{min-width:116px!important;padding:10px 12px!important;border-radius:16px!important}
#view-coach .coach-layout{display:block!important;max-width:1180px!important;margin:0 auto!important;min-height:0!important}
#view-coach .coach-chat-card{height:min(1080px,calc(100dvh - 112px))!important;min-height:880px!important;display:flex!important;flex-direction:column!important;border-radius:34px!important;overflow:hidden!important;background:linear-gradient(180deg,rgba(255,253,247,.95),rgba(248,252,242,.90))!important}
#view-coach .coach-header{min-height:96px!important;padding:20px 26px 16px!important;align-items:center!important;background:linear-gradient(135deg,rgba(255,255,255,.62),rgba(236,248,233,.30))!important}
#view-coach .coach-header h2{font-size:38px!important;line-height:1!important}
#view-coach .context-chips{padding:11px 26px!important;min-height:54px!important;background:rgba(236,248,233,.42)!important}
#view-coach .coach-messages{flex:1 1 auto!important;min-height:650px!important;padding:30px 34px 36px!important;gap:16px!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable!important;background:linear-gradient(180deg,rgba(236,248,233,.34),rgba(255,253,247,.18) 34%,rgba(255,253,247,.40))!important}
#view-coach .coach-composer{padding:18px 22px!important;min-height:112px!important;background:rgba(255,253,247,.86)!important;border-top:1px solid rgba(220,227,213,.92)!important}
#view-coach .coach-composer textarea{min-height:76px!important;max-height:160px!important;border-radius:22px!important;background:#fffdf7!important}
#view-coach .chat-msg{max-width:min(82%,840px)!important}
#view-coach .chat-msg.user{max-width:min(72%,760px)!important}
#view-coach .coach-thinking{align-self:stretch!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:438px!important;padding:30px!important;border-radius:34px!important;overflow:hidden!important}
#view-coach .signal-header{grid-template-columns:82px minmax(0,1fr)!important;gap:20px!important}
#view-coach .coach-sigil{width:78px!important;height:78px!important}
#view-coach .thinking-head b{font-size:26px!important}
#view-coach .coach-thinking p{font-size:16px!important;max-width:840px!important}
#view-coach .signal-meter{height:20px!important;margin:22px 0 18px!important}
#view-coach .thinking-wave{height:58px!important;margin-bottom:18px!important}
#view-coach .thinking-wave i{height:44px!important}
#view-coach .thinking-steps{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
#view-coach .thinking-steps span{min-height:62px!important;padding:12px!important;font-size:12px!important}
@media(max-width:760px){#view-coach{max-width:none}#view-coach .coach-scene{min-height:150px!important;padding:18px!important;display:block!important}#view-coach .scene-metrics{display:none!important}#view-coach .coach-chat-card{height:calc(100dvh - 86px)!important;min-height:760px!important;border-radius:26px!important}#view-coach .coach-header{min-height:82px!important;padding:16px!important}#view-coach .coach-header h2{font-size:28px!important}#view-coach .context-chips{padding:9px 14px!important;min-height:46px!important}#view-coach .coach-messages{min-height:520px!important;padding:16px!important}#view-coach .coach-composer{min-height:104px!important;padding:14px!important}#view-coach .chat-msg,#view-coach .chat-msg.user{max-width:100%!important}#view-coach .coach-thinking{min-height:470px!important;padding:18px!important;border-radius:26px!important}#view-coach .signal-header{grid-template-columns:58px minmax(0,1fr)!important}#view-coach .coach-sigil{width:56px!important;height:56px!important}#view-coach .thinking-head{display:grid!important}#view-coach .thinking-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important}#view-coach .thinking-steps span{min-height:58px!important}}

/* V34.0.19: coach typing bubble, integrated inside the chat */
.coach-thinking,#view-coach .coach-thinking{align-self:flex-start!important;width:min(720px,92%)!important;max-width:min(720px,92%)!important;min-width:0!important;min-height:0!important;padding:16px 17px!important;border-radius:24px!important;background:linear-gradient(180deg,#fffdf7,#f2faec)!important;color:#172016!important;border:1px solid rgba(220,227,213,.92)!important;box-shadow:0 16px 42px rgba(24,39,25,.10)!important;overflow:visible!important}
.coach-thinking:before{display:none!important}.coach-thinking:after{content:"";position:absolute;left:16px;bottom:-7px;width:16px;height:16px;background:#f2faec;border-left:1px solid rgba(220,227,213,.92);border-bottom:1px solid rgba(220,227,213,.92);transform:rotate(-12deg);border-radius:0 0 0 4px}
.typing-row{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:start}.typing-avatar{width:42px;height:42px;border-radius:16px;background:#102115;display:grid;place-items:center;position:relative;box-shadow:0 12px 28px rgba(16,33,21,.18)}.typing-avatar i{grid-area:1/1;border-radius:50%;border:1px solid rgba(217,245,107,.42);animation:coachOrbit 4s ease-in-out infinite}.typing-avatar i:nth-child(1){width:8px;height:8px;background:#d9f56b;border:0;box-shadow:0 0 16px #d9f56b;animation:coachPulse 1.6s ease-in-out infinite}.typing-avatar i:nth-child(2){width:24px;height:24px}.typing-avatar i:nth-child(3){width:34px;height:34px;animation-direction:reverse}
.typing-copy{min-width:0}.typing-copy small{display:block!important;margin:0 0 4px!important;color:#08764f!important;letter-spacing:.1em!important;text-transform:uppercase!important;font-size:10px!important;font-weight:950!important}.typing-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.typing-title b{font-size:16px!important;line-height:1.15!important;color:#172016!important;letter-spacing:-.02em!important}.typing-title button{padding:7px 10px!important;border-radius:999px!important;background:#fff!important;color:#405344!important;border:1px solid #dce3d5!important;box-shadow:none!important}.coach-thinking p{margin:5px 0 10px!important;color:#5e685d!important;font-size:14px!important;line-height:1.35!important;max-width:none!important}
.typing-meter{height:7px;border-radius:999px;background:#e1ead9;overflow:hidden;position:relative;margin:8px 0 10px}.typing-meter i{display:block;height:100%;width:var(--signal-progress,12%);border-radius:999px;background:linear-gradient(90deg,#119c69,#d9f56b);transition:width .35s ease}.typing-meter span{position:absolute;right:0;top:-21px;font-size:10px;font-weight:950;color:#657060}
.typing-dots{display:flex;gap:5px;margin:4px 0 8px}.typing-dots i{width:7px;height:7px;border-radius:50%;background:#119c69;animation:typingDot 1s ease-in-out infinite}.typing-dots i:nth-child(2){animation-delay:.14s}.typing-dots i:nth-child(3){animation-delay:.28s}
.typing-status{display:flex;flex-wrap:wrap;gap:6px}.typing-status span{display:none}.typing-status span.on{display:inline-flex;align-items:center;gap:6px;background:#e9f6df;border:1px solid #d4e6c9;color:#24412f;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.typing-status span.on:before{content:"";width:6px;height:6px;border-radius:50%;background:#119c69;box-shadow:0 0 12px rgba(17,156,105,.55)}
#view-coach .thinking-wave,#view-coach .thinking-steps,#view-coach .signal-header,#view-coach .signal-meter,.thinking-wave,.thinking-steps,.signal-header,.signal-meter{display:none!important}
@keyframes typingDot{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(-4px);opacity:1}}
@media(max-width:760px){.coach-thinking,#view-coach .coach-thinking{width:100%!important;max-width:100%!important;padding:14px!important;border-radius:22px!important}.typing-row{grid-template-columns:38px minmax(0,1fr);gap:10px}.typing-avatar{width:36px;height:36px;border-radius:14px}.typing-title{align-items:flex-start}.typing-title b{font-size:15px!important}.typing-title button{padding:6px 9px!important}.coach-thinking p{font-size:13px!important}}

/* V34.0.20: remove typing artefact and keep status as a clean chat bubble */
#coachWorkingCard.coach-thinking,#view-coach #coachWorkingCard.coach-thinking{position:relative!important;align-self:flex-start!important;width:auto!important;max-width:min(680px,88%)!important;min-width:min(520px,82%)!important;overflow:hidden!important;border-radius:24px!important;padding:15px 16px!important;background:#fffdf7!important}
#coachWorkingCard.coach-thinking:before,#coachWorkingCard.coach-thinking:after,#view-coach #coachWorkingCard.coach-thinking:before,#view-coach #coachWorkingCard.coach-thinking:after{content:none!important;display:none!important}
#coachWorkingCard .typing-row{grid-template-columns:40px minmax(0,1fr)!important;gap:11px!important}
#coachWorkingCard .typing-avatar{width:38px!important;height:38px!important;border-radius:14px!important}
#coachWorkingCard .typing-copy small{margin-bottom:3px!important}
#coachWorkingCard .typing-title b{font-size:15px!important}
#coachWorkingCard .typing-title button{font-size:13px!important;padding:6px 10px!important}
#coachWorkingCard .typing-meter{margin:7px 0 8px!important}
#coachWorkingCard .typing-status span.on{padding:5px 8px!important;font-size:10px!important}
@media(max-width:760px){#coachWorkingCard.coach-thinking,#view-coach #coachWorkingCard.coach-thinking{max-width:100%!important;min-width:0!important;width:100%!important}}

/* V34.0.21: bulletproof non-clipped coach typing bubble */
#view-coach .coach-messages{overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:26px!important}
#coachWorkingCard.coach-thinking,#view-coach #coachWorkingCard.coach-thinking{display:block!important;box-sizing:border-box!important;position:relative!important;width:min(620px,92%)!important;max-width:min(620px,92%)!important;min-width:0!important;height:auto!important;min-height:112px!important;max-height:none!important;padding:14px 16px!important;margin:2px 0 8px!important;overflow:visible!important;border-radius:22px!important;background:#fffdf7!important;color:#172016!important;border:1px solid #dce3d5!important;box-shadow:0 14px 36px rgba(24,39,25,.10)!important}
#coachWorkingCard .typing-row{display:block!important}
#coachWorkingCard .typing-avatar{float:left!important;width:34px!important;height:34px!important;margin:1px 10px 8px 0!important;border-radius:13px!important}
#coachWorkingCard .typing-copy{display:block!important;min-width:0!important;overflow:visible!important}
#coachWorkingCard .typing-copy small{display:block!important;margin:0 0 5px!important;font-size:10px!important;line-height:1.1!important;color:#08764f!important}
#coachWorkingCard .typing-title{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;min-width:0!important}
#coachWorkingCard .typing-title b{display:block!important;min-width:0!important;font-size:16px!important;line-height:1.18!important;color:#172016!important;white-space:normal!important;overflow-wrap:anywhere!important}
#coachWorkingCard .typing-title button{flex:0 0 auto!important;margin-top:-3px!important}
#coachWorkingCard p{clear:both!important;margin:8px 0 10px!important;font-size:13px!important;line-height:1.35!important;color:#5e685d!important;white-space:normal!important;overflow-wrap:anywhere!important}
#coachWorkingCard .typing-meter{clear:both!important;display:block!important;height:6px!important;margin:8px 0 9px!important;overflow:hidden!important}
#coachWorkingCard .typing-dots,#coachWorkingCard .typing-status{clear:both!important}
@media(max-width:760px){#coachWorkingCard.coach-thinking,#view-coach #coachWorkingCard.coach-thinking{width:100%!important;max-width:100%!important;min-height:124px!important;padding:13px!important}#coachWorkingCard .typing-avatar{width:30px!important;height:30px!important;margin-right:9px!important}#coachWorkingCard .typing-title b{font-size:15px!important}}

/* V34.0.22: compact true chat typing state */
#coachWorkingCard.coach-thinking,#view-coach #coachWorkingCard.coach-thinking{width:auto!important;max-width:min(520px,78%)!important;min-height:0!important;padding:12px 14px!important;margin:4px 0 10px!important;border-radius:20px!important;background:rgba(255,253,247,.96)!important}
#coachWorkingCard .typing-avatar{width:28px!important;height:28px!important;border-radius:11px!important;margin:0 9px 5px 0!important}
#coachWorkingCard .typing-avatar i:nth-child(2){width:18px!important;height:18px!important}
#coachWorkingCard .typing-avatar i:nth-child(3){width:24px!important;height:24px!important}
#coachWorkingCard .typing-copy small{font-size:9px!important;margin-bottom:2px!important;letter-spacing:.09em!important}
#coachWorkingCard .typing-title{gap:8px!important}
#coachWorkingCard .typing-title b{font-size:14px!important;line-height:1.15!important}
#coachWorkingCard .typing-title button{font-size:12px!important;padding:5px 8px!important;margin-top:-2px!important}
#coachWorkingCard p{font-size:12px!important;line-height:1.3!important;margin:7px 0 8px!important}
#coachWorkingCard .typing-meter{height:5px!important;margin:7px 0 7px!important}
#coachWorkingCard .typing-meter span{display:none!important}
#coachWorkingCard .typing-dots{margin:0!important}
#coachWorkingCard .typing-dots i{width:6px!important;height:6px!important}
#coachWorkingCard .typing-status{display:none!important}
@media(max-width:760px){#coachWorkingCard.coach-thinking,#view-coach #coachWorkingCard.coach-thinking{max-width:94%!important;width:auto!important;padding:12px!important}}

/* V34.0.23: isolated Coach typing message, no legacy status inheritance */
#coachWorkingCard.coach-typing{align-self:flex-start;box-sizing:border-box;width:min(520px,86%);max-width:min(520px,86%);padding:13px 14px 12px;border:1px solid #dce3d5;border-radius:22px;background:#fffdf7;color:#172016;box-shadow:0 14px 38px rgba(24,39,25,.10);animation:messageRise .22s ease-out both}
#coachWorkingCard.coach-typing:before,#coachWorkingCard.coach-typing:after{content:none!important;display:none!important}
.coach-typing-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center}.coach-typing-orb{width:32px;height:32px;border-radius:13px;background:#102115;display:grid;place-items:center;box-shadow:0 10px 24px rgba(16,33,21,.16)}.coach-typing-orb i{width:9px;height:9px;border-radius:50%;background:#d9f56b;box-shadow:0 0 0 6px rgba(217,245,107,.15),0 0 16px rgba(217,245,107,.75);animation:coachPulse 1.5s ease-in-out infinite}.coach-typing-head small{display:block;color:#0a8f58;text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:950;line-height:1}.coach-typing-head b{display:block;margin-top:3px;font-size:14px;line-height:1.16;letter-spacing:-.02em;color:#172016;overflow-wrap:anywhere}.coach-typing-head button{padding:6px 9px;border-radius:999px;background:#fff;border:1px solid #dce3d5;color:#405344;font-size:12px;font-weight:950;box-shadow:none}.coach-typing p{margin:9px 0 9px;font-size:12px;line-height:1.35;color:#657060;overflow-wrap:anywhere}.coach-typing-meter{height:5px;border-radius:999px;background:#e1ead9;overflow:hidden}.coach-typing-meter i{display:block;height:100%;width:var(--signal-progress,10%);border-radius:999px;background:linear-gradient(90deg,#119c69,#d9f56b);transition:width .35s ease}.coach-typing-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}.coach-typing-foot span{display:inline-flex;align-items:center;gap:6px;color:#31513b;background:#eaf6df;border:1px solid #d4e6c9;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900}.coach-typing-foot span:before{content:"";width:6px;height:6px;border-radius:50%;background:#119c69}.coach-typing-foot em{display:flex;gap:4px}.coach-typing-foot em i{width:6px;height:6px;border-radius:50%;background:#119c69;animation:typingDot 1s ease-in-out infinite}.coach-typing-foot em i:nth-child(2){animation-delay:.14s}.coach-typing-foot em i:nth-child(3){animation-delay:.28s}
@media(max-width:760px){#coachWorkingCard.coach-typing{width:100%;max-width:100%;padding:12px;border-radius:20px}.coach-typing-head{grid-template-columns:30px minmax(0,1fr) auto}.coach-typing-orb{width:28px;height:28px;border-radius:11px}.coach-typing-head b{font-size:13px}.coach-typing-head button{font-size:11px;padding:5px 8px}.coach-typing-foot span{max-width:calc(100% - 42px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}

/* V34.0.24: mobile app ergonomics */
.quick-eat-now{margin-top:14px;min-height:52px;border-radius:18px;background:linear-gradient(135deg,#102115,#1d4b2e)!important;color:#fff!important;box-shadow:0 18px 44px rgba(16,33,21,.16)!important}
@media(max-width:760px){
  .app-main{padding:10px 10px 96px!important;max-width:none!important}
  .mobile-context{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:10px!important;border-radius:18px!important;margin-bottom:10px!important}
  .mobile-context>div{display:none!important}
  .mobile-context .date-select,.mobile-context select{min-width:0!important;width:100%!important;flex:auto!important;padding:11px 12px!important;border-radius:14px!important;font-size:13px!important}
  .bottom-nav{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;left:8px!important;right:8px!important;bottom:8px!important;padding:6px!important;border-radius:20px!important;gap:2px!important}
  .bottom-nav button{min-width:0!important;padding:8px 1px!important;font-size:9px!important;line-height:1.05!important;border-radius:14px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important}
  .bottom-nav button:before{display:block!important;margin:0 auto 3px!important}
  .floating-coach{display:none!important}
  .quick-eat-now{display:flex!important;align-items:center!important;justify-content:center!important;margin:12px 0 2px!important;width:100%!important;min-height:56px!important;font-size:16px!important;border-radius:20px!important}
  .today-grid{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .hero-panel{min-height:250px!important;padding:20px!important;border-radius:24px!important}
  .hero-panel h2{font-size:32px!important;line-height:.96!important;padding-right:0!important}
  .hero-panel p{font-size:14px!important;line-height:1.35!important}
  .cinematic-chips{gap:6px!important;margin-top:12px!important}.cinematic-chips span{min-width:calc(50% - 3px)!important;padding:9px!important;border-radius:14px!important}
  .score-panel{border-radius:24px!important;padding:18px!important}.score-panel strong{font-size:38px!important}
  .summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.summary-strip article{padding:13px!important;border-radius:18px!important}
  #view-coach{height:calc(100dvh - 86px)!important;display:flex!important;flex-direction:column!important;max-width:none!important;margin:0!important}
  #view-coach:not(.active){display:none!important}
  #view-coach .coach-scene{display:none!important}
  #view-coach .coach-layout{flex:1 1 auto!important;min-height:0!important;margin:0!important;display:flex!important}
  #view-coach .coach-chat-card{flex:1 1 auto!important;height:calc(100dvh - 106px)!important;min-height:0!important;border-radius:24px!important;display:flex!important;overflow:hidden!important}
  #view-coach .coach-header{min-height:auto!important;padding:13px 14px 9px!important;display:flex!important;align-items:center!important}
  #view-coach .coach-header .eyebrow,.smart-scope{display:none!important}
  #view-coach .coach-header h2{font-size:21px!important;letter-spacing:-.03em!important}
  #view-coach .context-chips{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:8px 12px!important;min-height:40px!important;scrollbar-width:none!important}
  #view-coach .context-chips::-webkit-scrollbar{display:none!important}
  #view-coach .context-chips span{flex:0 0 auto!important;max-width:150px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;padding:7px 9px!important;font-size:10px!important;border-radius:999px!important}
  #view-coach .coach-messages{flex:1 1 auto!important;min-height:0!important;padding:12px!important;gap:10px!important}
  #view-coach .chat-msg{max-width:92%!important;padding:12px 13px!important;border-radius:18px!important;font-size:13px!important}
  #view-coach .chat-msg.user{max-width:88%!important}
  #view-coach .coach-composer{grid-template-columns:1fr auto!important;gap:8px!important;min-height:auto!important;padding:10px!important}
  #view-coach .coach-composer textarea{min-height:46px!important;max-height:92px!important;padding:12px!important;border-radius:18px!important;font-size:13px!important}
  #view-coach .coach-composer button{padding:0 13px!important;border-radius:16px!important}
  #coachWorkingCard.coach-typing{max-width:94%!important;width:auto!important}
}

/* V34.0.25: modal-native AI status */
#modal .modal-card{position:relative}
.modal-ai-active #modalContent,.modal-ai-active menu{filter:saturate(.82) blur(1px);pointer-events:none;user-select:none}
.modal-busy{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:22px;background:rgba(255,253,247,.72);backdrop-filter:blur(12px)}
.modal-busy>div{width:min(420px,92%);background:linear-gradient(135deg,#102115,#1d4b2e);color:#fff;border:1px solid rgba(217,245,107,.22);border-radius:26px;padding:22px;box-shadow:0 28px 90px rgba(16,33,21,.30)}
.modal-busy .coach-typing-orb{margin-bottom:12px}.modal-busy small{display:block;color:#d9f56b;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:950}.modal-busy b{display:block;font-size:24px;letter-spacing:-.04em;margin:5px 0}.modal-busy p{color:#e5efdf;line-height:1.42;margin:0 0 16px}.modal-busy-bar{height:8px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden}.modal-busy-bar i{display:block;height:100%;width:42%;border-radius:999px;background:linear-gradient(90deg,#119c69,#d9f56b);animation:modalAiBar 1.2s ease-in-out infinite}
@keyframes modalAiBar{0%{transform:translateX(-115%);width:38%}55%{width:62%}100%{transform:translateX(260%);width:38%}}

/* V34.0.27: mobile Today becomes an app flow, not a long dashboard */
@media(max-width:760px){
  body.forja-app[data-view="today"] .app-main{padding:8px 10px 96px!important}
  body.forja-app[data-view="today"] .mobile-context{position:sticky!important;top:6px!important;z-index:40!important;background:rgba(255,253,247,.92)!important;backdrop-filter:blur(14px)!important}
  body.forja-app[data-view="today"] .today-grid{display:flex!important;flex-direction:column!important;gap:8px!important}
  body.forja-app[data-view="today"] .hero-panel{display:none!important}
  body.forja-app[data-view="today"] .score-panel{order:-2!important;padding:14px!important;border-radius:22px!important;display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:8px!important}
  body.forja-app[data-view="today"] .score-panel>small{grid-column:1/2;font-size:10px!important;letter-spacing:.12em!important}
  body.forja-app[data-view="today"] .score-panel strong{grid-column:1/2;font-size:30px!important;line-height:1!important}
  body.forja-app[data-view="today"] .score-panel .progress{grid-column:1/-1;height:9px!important;margin:4px 0!important}
  body.forja-app[data-view="today"] .score-panel #heroTarget{grid-column:1/2;font-size:12px!important;color:#657060!important}
  body.forja-app[data-view="today"] .coach-mini{display:none!important}
  body.forja-app[data-view="today"] .quick-eat-now{grid-column:2/3;grid-row:1/4;margin:0!important;width:auto!important;min-height:54px!important;padding:0 15px!important;font-size:14px!important;white-space:nowrap!important}
  body.forja-app[data-view="today"] .today-water-mini{grid-column:1/-1;margin-top:6px!important;padding-top:8px!important}
  body.forja-app[data-view="today"] .today-water-mini small{display:none!important}
  body.forja-app[data-view="today"] .today-water-mini .water-actions{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:6px!important;margin:0!important}
  body.forja-app[data-view="today"] .today-water-mini .water-actions button{padding:9px 5px!important;border-radius:13px!important;font-size:12px!important}
  body.forja-app[data-view="today"] .fluid-custom{grid-template-columns:1fr auto auto!important;gap:6px!important;margin-top:6px!important}
  body.forja-app[data-view="today"] .fluid-custom input{grid-column:auto!important;min-height:38px!important;padding:9px!important;font-size:12px!important}
  body.forja-app[data-view="today"] .fluid-custom button{padding:8px 9px!important;border-radius:13px!important;font-size:12px!important}
  body.forja-app[data-view="today"] .summary-strip{display:flex!important;overflow-x:auto!important;gap:8px!important;margin:8px -10px 8px!important;padding:0 10px 4px!important;scrollbar-width:none!important}
  body.forja-app[data-view="today"] .summary-strip::-webkit-scrollbar{display:none!important}
  body.forja-app[data-view="today"] .summary-strip article{flex:0 0 116px!important;min-height:66px!important;padding:10px!important;border-radius:16px!important}
  body.forja-app[data-view="today"] .summary-strip small{font-size:9px!important}
  body.forja-app[data-view="today"] .summary-strip b{font-size:16px!important;line-height:1.05!important}
  body.forja-app[data-view="today"] .decision-board{display:block!important;margin:6px 0 8px!important}
  body.forja-app[data-view="today"] .coach-insight{display:none!important}
  body.forja-app[data-view="today"] .next-move{padding:14px!important;border-radius:20px!important;background:linear-gradient(180deg,#fffdf7,#eef8e9)!important}
  body.forja-app[data-view="today"] .next-move small{font-size:10px!important}
  body.forja-app[data-view="today"] .next-move h3{font-size:20px!important;line-height:1.08!important}
  body.forja-app[data-view="today"] .next-move p{font-size:12px!important;line-height:1.3!important;margin:6px 0 10px!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  body.forja-app[data-view="today"] .next-move .button-row{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:6px!important}
  body.forja-app[data-view="today"] .next-move .button-row button{padding:10px 6px!important;border-radius:13px!important;font-size:11px!important}
  body.forja-app[data-view="today"] .next-move .button-row button:first-child{background:#102115!important;color:#fff!important;border-color:#102115!important}
  body.forja-app[data-view="today"] .section-head{margin:10px 0 8px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
  body.forja-app[data-view="today"] .section-head .eyebrow{display:none!important}
  body.forja-app[data-view="today"] .section-head h2{font-size:22px!important}
  body.forja-app[data-view="today"] .section-head .button-row{display:none!important}
  body.forja-app[data-view="today"] .meal-timeline{display:grid!important;gap:8px!important}
  body.forja-app[data-view="today"] .meal-time-block{display:block!important}
  body.forja-app[data-view="today"] .time-anchor{position:relative!important;top:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:8px 10px!important;border-radius:15px!important;margin-bottom:6px!important;background:#102115!important}
  body.forja-app[data-view="today"] .time-anchor time{font-size:15px!important}
  body.forja-app[data-view="today"] .time-anchor span{font-size:10px!important;margin:0!important}
  body.forja-app[data-view="today"] .meal-stack{gap:7px!important}
  body.forja-app[data-view="today"] .meal-row{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding:12px!important;border-radius:18px!important}
  body.forja-app[data-view="today"] .meal-row h3{font-size:17px!important;line-height:1.1!important}
  body.forja-app[data-view="today"] .meal-row p{font-size:12px!important;line-height:1.3!important;margin:4px 0!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  body.forja-app[data-view="today"] .macro-row{gap:5px!important}
  body.forja-app[data-view="today"] .macro-row span{padding:5px 7px!important;font-size:10px!important}
  body.forja-app[data-view="today"] .meal-row menu{display:grid!important;grid-template-columns:1.2fr 1fr 1fr 1fr!important;gap:6px!important;margin:0!important;padding:0!important}
  body.forja-app[data-view="today"] .meal-row menu button{min-height:38px!important;padding:8px 4px!important;border-radius:12px!important;font-size:11px!important}
  body.forja-app[data-view="today"] .meal-row menu button:first-child{background:#102115!important;color:#fff!important;border-color:#102115!important}
}
/* V35: nutrition taxonomy, premium meal cards, photo product flow */
.library-tabs{flex-wrap:wrap;max-width:760px}.library-tabs button{white-space:nowrap}
.library-card{position:relative;overflow:hidden}.library-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:#119c69}.library-card.kind-product:before{background:#3b82f6}.library-card.kind-supplement:before{background:#8b5cf6}.library-card.kind-preset:before{background:#f59e0b}.library-card.kind-food:before{background:#119c69}
.library-card small span{font-size:15px;vertical-align:-1px}.library-lines,.meal-lines,.coach-bullets{margin:10px 0 0;padding-left:18px;color:#5f665b;line-height:1.38}.library-lines li,.meal-lines li{margin:3px 0}.library-card menu{flex-wrap:wrap}.library-card menu button{font-size:12px;padding:8px 10px}
.coach-quick-actions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 24px;border-bottom:1px solid #eee6d8;background:rgba(255,253,247,.62)}.coach-quick-actions button{padding:8px 11px;border-radius:999px;font-size:12px;background:#f0eadc;color:#243128;border-color:#ded5c4}
.plan-target-box{margin-top:16px;padding:16px;border:1px solid #ded5c4;border-radius:22px;background:#fffdf7}.plan-target-box .field-grid{margin:8px 0 12px}
.meal-card-pro{display:grid!important;grid-template-columns:52px minmax(0,1fr) auto!important;gap:14px!important;align-items:start!important;padding:16px!important;border-radius:24px!important;background:#fffdf7!important;border:1px solid #ded5c4!important;box-shadow:0 16px 42px rgba(24,39,25,.08)!important}
.meal-icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:#eef5e5;font-size:22px}.meal-topline small{display:block;text-transform:uppercase;letter-spacing:.1em;color:#08764f;font-size:10px;font-weight:950}.meal-topline h3{margin:3px 0 6px;font-size:22px;letter-spacing:-.04em}.meal-content details{margin-top:10px;color:#5f665b}.meal-content summary{cursor:pointer;font-weight:900;color:#314336}.meal-content details p{margin:8px 0 0}
.meal-actions-pro{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px!important;min-width:230px!important;margin:0!important;padding:0!important}.meal-actions-pro button{padding:8px 9px!important;border-radius:13px!important;font-size:12px!important}
.day-complete-pop{position:fixed;right:24px;bottom:88px;z-index:260;width:min(420px,calc(100vw - 32px));padding:20px;border-radius:26px;background:linear-gradient(135deg,#102115,#1d4b2e);color:#fff;box-shadow:0 30px 90px rgba(16,33,21,.34);animation:completionRise .38s ease-out both}.day-complete-pop button{position:absolute;right:12px;top:12px;border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:999px;width:30px;height:30px}.day-complete-pop small{display:block;color:#d9f56b;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:950}.day-complete-pop h3{font-size:26px;letter-spacing:-.05em;margin:6px 0}.day-complete-pop p{color:#e8f2df;margin:0 0 12px}.day-complete-pop .macro-row span{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18);color:#fff}
@keyframes completionRise{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:760px){.library-toolbar{grid-template-columns:1fr!important;padding:14px!important}.library-tabs{overflow:auto;flex-wrap:nowrap;max-width:100%;padding-bottom:3px}.library-grid{grid-template-columns:1fr!important}.coach-quick-actions{overflow:auto;flex-wrap:nowrap;padding:10px 12px}.coach-quick-actions button{white-space:nowrap}.plan-target-box .field-grid{grid-template-columns:1fr!important}.meal-card-pro{grid-template-columns:40px minmax(0,1fr)!important;padding:13px!important;border-radius:20px!important}.meal-icon{width:36px;height:36px;border-radius:13px;font-size:18px}.meal-actions-pro{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0!important}.meal-actions-pro button{font-size:11px!important;padding:8px 6px!important}.meal-topline h3{font-size:18px}.meal-lines{display:none}.day-complete-pop{right:10px;left:10px;bottom:84px;width:auto}}

/* V35.2: account intelligence, real mobile queue and stable chat typing bubble */
.settings-group{margin:18px 0 20px;padding:18px;border:1px solid #dce3d5;border-radius:24px;background:linear-gradient(180deg,#fffdf7,#f6fbf0)}
.settings-group h3{font-size:22px;letter-spacing:-.04em;margin:0 0 12px;color:#172016}
.preference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.preference-grid label{display:grid;gap:7px;color:#556253;font-weight:900}
.preference-grid textarea{min-height:98px;resize:vertical}
#view-coach #coachWorkingCard.coach-typing{display:block!important;align-self:flex-start!important;position:relative!important;width:min(620px,92%)!important;max-width:min(620px,92%)!important;min-width:0!important;min-height:0!important;height:auto!important;padding:15px!important;overflow:hidden!important;border-radius:24px!important;background:linear-gradient(180deg,#fffdf7,#f4faef)!important;border:1px solid #d8e4d0!important;box-shadow:0 18px 48px rgba(24,39,25,.12)!important;color:#172016!important}
#view-coach #coachWorkingCard.coach-typing *{box-sizing:border-box}
#view-coach #coachWorkingCard.coach-typing .coach-typing-head{display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important}
#view-coach #coachWorkingCard.coach-typing p{display:block!important;margin:10px 0!important;max-width:none!important;font-size:13px!important;line-height:1.38!important;color:#657060!important}
#view-coach #coachWorkingCard.coach-typing .coach-typing-meter{display:block!important;width:100%!important}
#view-coach #coachWorkingCard.coach-typing .coach-typing-foot{display:flex!important;width:100%!important;min-height:26px!important}
.completed-drawer{background:#fffdf7;border:1px solid #dce3d5;border-radius:20px;padding:10px;margin-top:6px}
.completed-drawer>summary{cursor:pointer;font-weight:950;color:#405344;padding:4px 2px}
.completed-drawer>div{display:grid;gap:8px;margin-top:10px}
@media(max-width:760px){
  .preference-grid{grid-template-columns:1fr}
  .settings-group{padding:14px;border-radius:20px}
  body.forja-app[data-view="today"] .meal-time-block.mobile-focus .meal-row.done{opacity:1}
  body.forja-app[data-view="today"] .completed-drawer .meal-row{opacity:.78}
  body.forja-app[data-view="today"] .completed-drawer .meal-actions-pro button[data-act="skip"],
  body.forja-app[data-view="today"] .completed-drawer .meal-actions-pro button[data-act="delete"],
  body.forja-app[data-view="today"] .completed-drawer .meal-actions-pro button[data-act="duplicate"]{display:none!important}
  body.forja-app[data-view="today"] .completed-drawer .meal-actions-pro{grid-template-columns:repeat(3,1fr)!important}
  #view-coach #coachWorkingCard.coach-typing{width:100%!important;max-width:100%!important;border-radius:20px!important;padding:12px!important}
  #view-coach #coachWorkingCard.coach-typing .coach-typing-head{grid-template-columns:30px minmax(0,1fr) auto!important}
  #view-coach #coachWorkingCard.coach-typing .coach-typing-head button{padding:6px 8px!important;font-size:11px!important}
}

/* V35.3: goal center, richer action cards and admin signals */
.goal-center{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr) auto;gap:14px;align-items:center;margin:18px 0;padding:18px;border:1px solid #dce3d5;border-radius:26px;background:linear-gradient(135deg,#102115,#23452c);color:#fff;box-shadow:0 22px 70px rgba(16,33,21,.16);overflow:hidden;position:relative}
.goal-center:before{content:"";position:absolute;inset:-60% -20%;background:conic-gradient(from 120deg,transparent,rgba(217,245,107,.20),transparent 34%,rgba(17,156,105,.14),transparent 68%);animation:coachAura 11s linear infinite;opacity:.55}
.goal-center>*{position:relative;z-index:1}.goal-center .eyebrow{color:#d9f56b}.goal-center h3{font-size:34px;letter-spacing:-.055em;margin:0}.goal-center p{color:#e8f1df;margin-top:4px}.goal-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.goal-metrics span,.admin-signals span{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:10px}.goal-metrics small,.admin-signals small{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:950;color:#cfe3c8}.goal-metrics b,.admin-signals b{display:block;font-size:17px;margin-top:3px;color:#fff}.goal-center button{background:#d9f56b!important;color:#102115!important;border-color:#d9f56b!important;white-space:nowrap}
.action-chat{border-color:#cbdcc3!important;background:linear-gradient(180deg,#fffdf7,#f3faee)!important}.action-impact{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.action-impact span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#245536;background:#e9f6df;border:1px solid #d4e6c9;border-radius:999px;padding:5px 8px}
.admin-signals{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:14px}.admin-signals span{background:#102115;border-color:#24472e}
@media(max-width:760px){.goal-center{grid-template-columns:1fr;padding:16px;border-radius:22px}.goal-center h3{font-size:28px}.goal-metrics{grid-template-columns:repeat(2,1fr)}.goal-center button{width:100%}.action-impact span{font-size:9px}}

/* V35.4: Coach composer visibility and FORJA Sync */
#view-coach .coach-scene{display:none!important}
#view-coach .coach-layout{max-width:1180px!important;margin:0 auto!important;min-height:0!important;height:auto!important;display:block!important}
#view-coach .coach-chat-card{height:calc(100dvh - 64px)!important;min-height:560px!important;max-height:900px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;border-radius:30px!important}
#view-coach .coach-header{flex:0 0 auto!important;padding:18px 22px!important}
.coach-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.coach-header-actions button,.sync-ai-btn{background:#eaf6df!important;border-color:#d4e6c9!important;color:#173a25!important}
#view-coach .coach-quick-actions,#view-coach .context-chips{flex:0 0 auto!important}
#view-coach .coach-messages{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;padding:18px 22px!important;overflow-y:auto!important;overflow-x:hidden!important}
#view-coach .coach-composer{flex:0 0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:10px!important;min-height:0!important;padding:14px 16px!important;background:rgba(255,253,247,.96)!important;border-top:1px solid #dce3d5!important;position:relative!important;z-index:8!important}
#view-coach .coach-composer textarea{min-height:56px!important;max-height:120px!important;resize:vertical!important}
#view-coach .coach-composer button{min-height:56px!important}
.sync-ai-btn{margin-top:10px}
.sync-report p{font-size:17px;line-height:1.45;color:#405344}.sync-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.sync-kpis span{background:#eef8e9;border:1px solid #d4e6c9;border-radius:16px;padding:12px}.sync-kpis small{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:950;color:#08764f}.sync-kpis b{display:block;font-size:22px;margin-top:3px}
@media(max-width:760px){#view-coach{height:calc(100dvh - 78px)!important;min-height:0!important}#view-coach .coach-chat-card{height:calc(100dvh - 92px)!important;min-height:0!important;border-radius:22px!important}#view-coach .coach-header{padding:12px 14px!important}.coach-header-actions .smart-scope{display:none!important}#view-coach .coach-quick-actions{padding:8px 10px!important}#view-coach .context-chips{padding:8px 10px!important}#view-coach .coach-messages{padding:10px!important}#view-coach .coach-composer{grid-template-columns:1fr auto!important;padding:9px!important}#view-coach .coach-composer textarea{min-height:48px!important;max-height:88px!important}#view-coach .coach-composer button{min-height:48px!important;padding:0 13px!important}.sync-kpis{grid-template-columns:repeat(2,1fr)}}

/* V35.4.1: stop the typing bubble being clipped */
#view-coach .coach-messages{padding-bottom:28px!important;scroll-padding-bottom:32px!important}
#view-coach #coachWorkingCard.coach-typing{flex:0 0 auto!important;display:grid!important;grid-template-rows:auto auto auto auto!important;gap:8px!important;min-height:132px!important;height:auto!important;max-height:none!important;overflow:visible!important;margin:4px 0 12px!important}
#view-coach #coachWorkingCard.coach-typing .coach-typing-head{min-height:38px!important}
#view-coach #coachWorkingCard.coach-typing p{min-height:34px!important;margin:0!important;display:block!important}
#view-coach #coachWorkingCard.coach-typing .coach-typing-meter{min-height:6px!important}
#view-coach #coachWorkingCard.coach-typing .coach-typing-foot{min-height:28px!important;overflow:visible!important}
@media(max-width:760px){#view-coach #coachWorkingCard.coach-typing{min-height:124px!important;margin-bottom:10px!important}.coach-typing-foot span{white-space:normal!important;line-height:1.2!important}}

/* V35.4.3 UX audit pass: safer errors, cleaner cards, readable Coach, Library search */
:root{--forja-green:#1a2e1a;--forja-lime:#c8f135;--forja-bg:#f5f0e8;--forja-ok:#22c55e;--forja-warn:#f59e0b;--forja-danger:#ef4444;--forja-orange:#f97316}
input[type="checkbox"]{accent-color:var(--forja-green)}
.error-panel p{font-size:17px;line-height:1.45;color:#4d342f}
.ai-review-pill{position:fixed;left:22px;bottom:22px;z-index:310;display:grid;grid-template-columns:18px 1fr auto;gap:12px;align-items:center;max-width:min(430px,calc(100vw - 32px));padding:14px 16px;border-radius:18px;background:var(--forja-green);color:#fff;box-shadow:0 24px 72px rgba(26,46,26,.28);animation:forjaPillUp .26s ease-out both}
.ai-review-pill p{margin:3px 0 0;color:#eaf5e5;font-size:13px}.ai-review-pill b{display:block}.ai-review-pill.done{background:#1d7f45}.ai-review-pill.suggestion{grid-template-columns:18px 1fr;background:#102115}.ai-review-pill.suggestion menu{grid-column:2;display:flex;gap:8px;margin:8px 0 0;padding:0}.review-dot{width:12px;height:12px;border-radius:50%;background:var(--forja-lime);box-shadow:0 0 0 6px rgba(200,241,53,.18);animation:coachPulse 1.35s ease-in-out infinite}@keyframes forjaPillUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.meal-card-pro{grid-template-columns:52px minmax(0,1fr) minmax(130px,auto)!important}.meal-card-pro.done{background:#e8f0e5!important;border-color:#cfe2c9!important}.meal-card-pro.pending{background:#fffdf7!important}.meal-card-pro.skipped{opacity:.6!important}.meal-card-pro.skipped .meal-topline h3{text-decoration:line-through}.meal-card-pro.done .meal-icon{background:#22c55e!important;color:#fff!important;font-weight:950}.meal-state{display:inline-flex;width:max-content;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:950;letter-spacing:.08em;color:#fff}.meal-state.done{background:#22c55e}.meal-state.pending{background:#f59e0b}.meal-state.skipped{background:#8b9286}.meal-topline{padding-right:84px}.meal-ai{position:absolute;right:52px;top:12px;width:32px;height:32px;border-radius:999px;padding:0!important;background:#eaf6df!important;border-color:#d4e6c9!important;color:#173a25!important;font-size:11px!important}.meal-kebab{position:absolute;right:14px;top:12px;z-index:4}.meal-kebab summary{list-style:none;width:32px;height:32px;border-radius:999px;display:grid;place-items:center;background:#fff;border:1px solid #dce3d5;font-weight:950;cursor:pointer}.meal-kebab summary::-webkit-details-marker{display:none}.meal-kebab menu{position:absolute;right:0;top:38px;min-width:150px;display:grid!important;grid-template-columns:1fr!important;gap:4px!important;margin:0!important;padding:8px!important;background:#fffdf7;border:1px solid #dce3d5;border-radius:16px;box-shadow:0 18px 50px rgba(26,46,26,.16)}.meal-kebab hr{width:100%;border:0;border-top:1px solid #eadfce}.meal-kebab .danger{color:#b91c1c!important}.meal-actions-pro{display:flex!important;align-items:end!important;min-width:130px!important}.meal-primary{width:100%;min-height:44px;background:var(--forja-green)!important;color:#fff!important;border-color:var(--forja-green)!important}.meal-primary.edit{background:#fff!important;color:#1a2e1a!important;border-color:#1a2e1a!important}.meal-lines.internal{opacity:.72;font-size:12px}
.coach-quick-actions{position:relative;padding-top:30px!important;border-bottom:1px solid #d8d7cc!important}.coach-quick-actions:before{content:"ACOES RAPIDAS";position:absolute;left:24px;top:10px;font-size:10px;font-weight:950;letter-spacing:.12em;color:#7a8175}.coach-quick-actions button{border:1px solid var(--forja-green)!important;background:#fffdf7!important;color:#1a2e1a!important;cursor:pointer}.coach-quick-actions button:hover{background:#eaf6df!important}.context-chips{display:block!important;padding-top:10px!important}.coach-row-label{font-size:10px;font-weight:950;letter-spacing:.12em;color:#7a8175;margin:0 0 8px}.coach-context-list{display:flex;gap:8px;flex-wrap:wrap}.coach-context-list span{background:#f0f0e8!important;border:0!important;cursor:default!important;color:#405344!important}.chat-msg.assistant p{margin:0 0 12px;line-height:1.55}.chat-msg.assistant p:last-child{margin-bottom:0}.chat-msg.assistant h3{font-size:18px;margin:4px 0 10px;color:#1a2e1a}.chat-msg.assistant strong{font-weight:950}.chat-msg.assistant em{color:#52604f}.coach-bullets{display:grid;gap:6px;margin:8px 0 12px;padding-left:20px}
.library-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;background:#fffdf7;border:1px solid #ded5c4;border-radius:22px;padding:12px 14px}.library-search label{position:relative;display:block}.library-search input{padding-right:46px}.library-search button{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:34px;height:34px;padding:0;border-radius:999px}.library-search span{font-weight:900;color:#657060;white-space:nowrap}.confidence-badge{display:inline-flex;margin-left:6px;border-radius:999px;padding:4px 7px;font-size:9px;color:#fff}.confidence-badge.high{background:#22c55e}.confidence-badge.medium{background:#f59e0b}.confidence-badge.low{background:#ef4444}.library-card.incomplete{border-color:#fb923c!important;background:#fff7ed!important}.missing-name{color:#f97316!important;font-style:italic}.incomplete-badge{position:absolute;right:12px;top:12px;background:#ef4444;color:#fff;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:950}.needs-edit{animation:editPulse 2s ease-in-out infinite}@keyframes editPulse{50%{box-shadow:0 0 0 5px rgba(200,241,53,.28)}}
.weight-chart{height:260px!important;max-height:260px;margin:16px 0;background:#fffdf7;border:1px solid #e4eadf;border-radius:18px;padding:10px}.field-hint{display:block;margin-top:5px;color:#7a8175;font-size:11px;font-weight:800}.plan-card .button-row .primary{background:#1a2e1a!important;color:#fff!important}.plan-card .button-row .coach-prompt:not(.primary){background:transparent!important;border-color:#1a2e1a!important;color:#1a2e1a!important}.plan-card #generateAllShifts{background:#f97316!important;border-color:#f97316!important;color:#fff!important}.plan-card #generateAllShifts:before{content:"⚠ ";}.plan-card #undoLastBtn{background:transparent!important;border-color:transparent!important;color:#7a8175!important;box-shadow:none!important;margin-left:auto}.plan-timeline{position:relative;padding-left:20px}.plan-timeline:before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:2px;background:#d4d8d0}.plan-timeline article{position:relative}.plan-timeline article:before{content:"";position:absolute;left:-18px;top:50%;width:10px;height:10px;border-radius:50%;transform:translateY(-50%);background:#fff;border:2px solid #1a2e1a}.plan-timeline article.done:before{background:#22c55e;border-color:#22c55e}.plan-timeline article.skipped:before{background:#999;border-color:#999}
.profile-source-summary{display:grid;gap:8px;margin-top:16px}.profile-source-summary span,.dynamic-impact .impact-lines span{display:block;background:#f2faec;border:1px solid #dce3d5;border-radius:14px;padding:10px}.profile-source-summary small,.dynamic-impact small{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:950;color:#657060}.profile-source-summary b,.dynamic-impact b{display:block;color:#172016;margin-top:2px}.profile-source-summary button{margin-top:4px}.dynamic-impact h3{margin-bottom:10px}.impact-lines{display:grid;gap:8px}.mini-preview{box-shadow:none!important;margin-top:10px}.admin-kpis.semantic span,.admin-signals span{border:1px solid #dce3d5!important}.admin-kpis.semantic .ok,.admin-signals .ok{background:#1a2e1a!important;color:#fff!important}.admin-kpis.semantic .bad,.admin-signals .bad{background:#ef4444!important;color:#fff!important}.admin-kpis.semantic .neutral,.admin-signals .neutral{background:#f2ede3!important;color:#283026!important}.admin-signals .bad small,.admin-signals .ok small,.admin-kpis.semantic .bad small,.admin-kpis.semantic .ok small{color:#eaf5e5!important}
@media(max-width:760px){.meal-card-pro{grid-template-columns:38px minmax(0,1fr)!important}.meal-actions-pro{grid-column:2!important;width:100%;min-width:0!important}.meal-primary{min-height:46px}.meal-topline{padding-right:78px}.library-search{grid-template-columns:1fr}.library-search span{white-space:normal}.ai-review-pill{left:10px;right:10px;bottom:86px;max-width:none}.coach-quick-actions:before{left:12px}.plan-timeline{padding-left:18px}}

/* V35.4.4: stable meal action layout and editable pending meals */
.meal-card-pro{position:relative!important;overflow:visible!important;grid-template-columns:52px minmax(0,1fr) 148px!important}
.meal-content{position:relative!important;min-width:0!important;padding-right:92px!important}
.meal-topline{padding-right:0!important}
.meal-ai{right:44px!important;top:0!important;z-index:5!important}
.meal-kebab{right:4px!important;top:0!important;z-index:6!important}
.meal-kebab[open]{z-index:40!important}
.meal-kebab menu{z-index:41!important}
.meal-actions-pro{align-self:stretch!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important;align-content:end!important;min-width:148px!important;width:148px!important}
.meal-secondary{width:100%;min-height:40px;background:#fffdf7!important;color:#1a2e1a!important;border:1px solid #d4dccd!important;border-radius:13px!important;font-weight:950!important}
.meal-secondary:hover{background:#eaf6df!important;border-color:#1a2e1a!important}
.action-chat.tone-danger{border-color:#fca5a5!important;background:linear-gradient(180deg,#fffdf7,#fff1f1)!important}
.action-chat.tone-caution{border-color:#fdba74!important;background:linear-gradient(180deg,#fffdf7,#fff7ed)!important}
.action-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:9px;background:#eaf6df;color:#173a25;font-size:13px;vertical-align:2px}
@media(max-width:760px){
  body.forja-app[data-view="today"] .meal-card-pro,.meal-card-pro{grid-template-columns:38px minmax(0,1fr)!important;gap:10px!important;align-items:start!important}
  body.forja-app[data-view="today"] .meal-card-pro .meal-content,.meal-card-pro .meal-content{grid-column:2!important;padding-right:78px!important}
  body.forja-app[data-view="today"] .meal-card-pro>.meal-actions-pro,.meal-card-pro>.meal-actions-pro{grid-column:1 / -1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;min-width:0!important;margin-top:2px!important}
  body.forja-app[data-view="today"] .meal-card-pro>.meal-actions-pro .meal-primary:only-child,.meal-card-pro>.meal-actions-pro .meal-primary:only-child{grid-column:1 / -1!important}
  body.forja-app[data-view="today"] .meal-card-pro>.meal-actions-pro button,.meal-card-pro>.meal-actions-pro button{min-height:44px!important;font-size:12px!important;padding:9px 10px!important}
  body.forja-app[data-view="today"] .meal-card-pro .meal-ai,.meal-card-pro .meal-ai{right:40px!important;top:0!important}
  body.forja-app[data-view="today"] .meal-card-pro .meal-kebab,.meal-card-pro .meal-kebab{right:0!important;top:0!important}
  body.forja-app[data-view="today"] .meal-card-pro .meal-kebab menu,.meal-card-pro .meal-kebab menu{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;min-width:150px!important;width:max-content!important;padding:8px!important}
}

/* V35.4.8: contextual Coach status, Sync progress, stable action cards and meal controls */
.action-chat{position:relative!important;display:grid!important;gap:10px!important;max-width:min(92%,780px)!important;padding:16px!important;overflow:hidden!important}
.action-chat:before{content:none!important;display:none!important}
.action-card-head{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;margin:0 0 2px!important;min-width:0!important}
.action-card-head small{display:inline-flex!important;align-items:center!important;width:auto!important;max-width:100%!important;margin:0!important;padding:5px 8px!important;border-radius:999px!important;background:#eaf6df!important;color:#1a2e1a!important;opacity:1!important;line-height:1!important;letter-spacing:.09em!important;white-space:nowrap!important}
.action-card-head span{display:inline-flex!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;border-radius:999px!important;padding:5px 8px!important;background:#f2ede3!important;color:#657060!important;font-size:10px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.action-chat h3{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;font-size:20px!important;line-height:1.12!important;letter-spacing:-.035em!important;overflow-wrap:anywhere!important}
.action-chat p{margin:0!important;line-height:1.48!important;overflow-wrap:anywhere!important}
.action-buttons{margin-top:2px!important}.action-buttons button{min-width:108px!important}
.sync-live{background:linear-gradient(180deg,#fffdf7,#f3faee)!important;overflow:hidden!important}
.sync-live-head{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start}.sync-live-head small{display:block;color:#119c69;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:950}.sync-live-head h3{font-size:24px;line-height:1.05;letter-spacing:-.045em;margin:2px 0 6px}.sync-live-head p{margin:0;color:#657060;line-height:1.42}
.sync-live-meter{height:8px;border-radius:999px;background:#dfe8d7;overflow:hidden;margin:16px 0 12px}.sync-live-meter i{display:block;height:100%;width:var(--sync-progress,12%);border-radius:999px;background:linear-gradient(90deg,#119c69,#c8f135);transition:width .32s ease}
.sync-stage-rail{display:flex;gap:6px;flex-wrap:wrap}.sync-stage-rail span{border-radius:999px;padding:6px 8px;background:#eef4e8;color:#657060;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.07em}.sync-stage-rail span.on{background:#1a2e1a;color:#c8f135}
.sync-actions-list{display:grid;gap:8px;margin-top:12px}.sync-actions-list span{display:block;background:#f2faec;border:1px solid #dce3d5;border-radius:14px;padding:10px}.sync-actions-list b{display:block;color:#1a2e1a}.sync-actions-list small{display:block;color:#657060;margin-top:3px;line-height:1.35}
.meal-card-pro{overflow:visible!important;position:relative!important}
.meal-card-pro .meal-content{position:relative!important;padding-right:0!important}
.meal-card-pro .meal-topline{padding-right:96px!important}
.meal-tools-pro{position:absolute!important;right:0!important;top:0!important;display:flex!important;align-items:center!important;gap:8px!important;z-index:40!important}
.meal-tools-pro .meal-ai,.meal-tools-pro .meal-kebab{position:relative!important;inset:auto!important;right:auto!important;top:auto!important}
.meal-tools-pro .meal-ai,.meal-tools-pro .meal-kebab summary{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;margin:0!important;border-radius:999px!important;line-height:1!important;box-shadow:0 8px 22px rgba(26,46,26,.10)!important}
.meal-tools-pro .meal-ai{font-size:11px!important}
.meal-tools-pro .meal-kebab summary{font-size:20px!important}
.meal-kebab menu{position:fixed!important;left:var(--menu-left,auto)!important;top:var(--menu-top,auto)!important;right:auto!important;bottom:auto!important;z-index:10000!important;min-width:166px!important;width:166px!important;max-height:min(260px,60vh)!important;overflow:auto!important}
.meal-kebab.drop-up menu{top:var(--menu-top,auto)!important;bottom:auto!important}
.meal-actions-pro{align-self:end!important;justify-self:end!important}
.meal-actions-pro .meal-primary,.meal-actions-pro .meal-secondary{margin:0!important}
@media(max-width:760px){
  .meal-card-pro .meal-content{grid-column:2!important;padding-right:0!important}
  .meal-card-pro .meal-topline{padding-right:86px!important}
  .meal-tools-pro{right:0!important;top:0!important;gap:7px!important}
  .meal-kebab menu{min-width:158px!important}
}

/* V35.4.9: Coach readability repair */
#view-coach .chat-msg.user{
  width:min(760px,88%)!important;
  max-width:min(760px,88%)!important;
}
#view-coach .chat-msg.user p{
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.42!important;
}
#view-coach .action-chat,
.coach-messages .action-chat{
  align-self:flex-start!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  width:min(760px,92%)!important;
  max-width:min(760px,92%)!important;
  min-height:190px!important;
  height:auto!important;
  overflow:visible!important;
  border-radius:22px!important;
  padding:16px!important;
}
#view-coach .action-chat>*,
.coach-messages .action-chat>*{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  min-width:0!important;
}
#view-coach .action-chat .action-card-head,
.coach-messages .action-chat .action-card-head,
#view-coach .action-chat .macro-row,
.coach-messages .action-chat .macro-row,
#view-coach .action-chat .action-impact,
.coach-messages .action-chat .action-impact,
#view-coach .action-chat .button-row,
.coach-messages .action-chat .button-row{
  display:flex!important;
}
#view-coach .action-chat h3,
.coach-messages .action-chat h3{
  display:flex!important;
  min-height:26px!important;
  white-space:normal!important;
}
#view-coach .action-chat p,
.coach-messages .action-chat p{
  min-height:24px!important;
  white-space:normal!important;
}
.meal-time-block,
.meal-stack,
.meal-card-pro,
.meal-card-pro .meal-content{
  overflow:visible!important;
}
.meal-tools-pro{
  top:0!important;
  right:0!important;
  height:36px!important;
  align-items:center!important;
}
.meal-tools-pro .meal-ai,
.meal-tools-pro .meal-kebab summary{
  display:grid!important;
  place-items:center!important;
  transform:none!important;
  line-height:1!important;
  vertical-align:middle!important;
}
.meal-tools-pro .meal-kebab{
  display:block!important;
  height:36px!important;
}
.meal-card-pro{
  grid-template-columns:52px minmax(0,1fr)!important;
  align-items:start!important;
}
.meal-card-pro>.meal-actions-pro{
  grid-column:2!important;
  justify-self:end!important;
  align-self:auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  width:min(220px,100%)!important;
  min-width:0!important;
  margin-top:10px!important;
}
.meal-card-pro .meal-topline{
  padding-right:98px!important;
}
.meal-kebab menu{
  position:fixed!important;
  left:var(--menu-left,auto)!important;
  top:var(--menu-top,auto)!important;
  right:auto!important;
  bottom:auto!important;
  z-index:10000!important;
  min-width:166px!important;
  width:166px!important;
  max-height:min(280px,62vh)!important;
  overflow:auto!important;
}
@media(max-width:760px){
  .meal-card-pro{grid-template-columns:38px minmax(0,1fr)!important}
  .meal-card-pro>.meal-actions-pro{grid-column:1 / -1!important;width:100%!important;justify-self:stretch!important}
  .meal-card-pro .meal-topline{padding-right:86px!important}
}

/* FORJA AI review guardrails: manual intent first, proposal-first AI. */
.review-compare-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.review-metric{
  border:1px solid rgba(26,46,26,.10);
  border-radius:18px;
  padding:12px;
  background:rgba(255,255,255,.74);
  box-shadow:0 12px 30px rgba(26,46,26,.05);
}
.review-metric small{
  display:block;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  opacity:.62;
  margin-bottom:4px;
}
.review-metric b{
  display:block;
  font-size:.92rem;
  color:#1a2e1a;
}
.review-metric em{
  display:inline-flex;
  margin-top:8px;
  font-style:normal;
  font-size:.78rem;
  border-radius:999px;
  padding:4px 8px;
  background:rgba(26,46,26,.06);
}
.review-metric em.up{background:rgba(200,241,53,.28)}
.review-metric em.down{background:rgba(245,66,66,.10)}
.review-metric em.flat{opacity:.55}
.auto-review-intro p{max-width:68ch}
.auto-review-actions{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.auto-action-check{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  align-items:start;
  padding:14px;
  border:1px solid rgba(26,46,26,.10);
  border-radius:20px;
  background:rgba(255,255,255,.78);
  cursor:pointer;
}
.auto-action-check input{margin-top:3px; accent-color:#1a2e1a}
.auto-action-check b,.auto-action-check small,.auto-action-check em{display:block}
.auto-action-check small{opacity:.64;margin-top:4px}
.auto-action-check em{font-style:normal;margin-top:6px;font-size:.86rem;line-height:1.35;opacity:.76}
.modal-side-actions{display:grid;gap:8px;margin-top:14px}
.modal-side-actions button{
  width:100%;
  justify-content:center;
}
.action-impact span:first-child::after{
  content:' · manual edits protected';
}
@media(max-width:760px){
  .review-compare-grid{grid-template-columns:1fr}
}


/* FORJA coach chat surgical fix: keep Coach action bubbles stable inside the chat only. */
#view-coach .coach-messages > .chat-msg{
  flex:0 0 auto!important;
  position:relative!important;
  height:auto!important;
  min-height:0!important;
  box-sizing:border-box!important;
}
#view-coach .coach-messages > .action-chat{
  align-self:flex-start!important;
  overflow:visible!important;
}
#view-coach .coach-messages > .action-chat h3{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  margin:4px 0 8px!important;
  line-height:1.15!important;
}
.action-icon{
  flex:0 0 24px!important;
  display:inline-grid!important;
  place-items:center!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  max-width:24px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  word-break:normal!important;
  line-height:1!important;
  font-size:13px!important;
}
.action-title-text{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}

/* Pass 37 surgical fixes: stable meal kebab, calmer AI review, compact Coach actions */
.meal-kebab menu{
  position:fixed!important;
  left:var(--menu-left,8px)!important;
  top:var(--menu-top,8px)!important;
  right:auto!important;
  bottom:auto!important;
  z-index:2147483000!important;
  min-width:178px!important;
  width:max-content!important;
  max-width:min(240px,calc(100vw - 16px))!important;
  max-height:min(320px,70vh)!important;
  overflow:auto!important;
  overscroll-behavior:contain;
  pointer-events:auto!important;
  transform:translateZ(0);
}
.meal-kebab menu button{
  width:100%!important;
  justify-content:flex-start!important;
  text-align:left!important;
}
.coach-action-bundle-details{
  margin-top:4px;
  border:1px solid rgba(26,46,26,.10);
  border-radius:18px;
  background:rgba(255,255,255,.62);
  overflow:hidden;
}
.coach-action-bundle-details>summary{
  list-style:none;
  cursor:pointer;
  padding:12px 14px;
  font-weight:950;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.coach-action-bundle-details>summary::-webkit-details-marker{display:none}
.coach-action-bundle-details>summary:after{
  content:'+';
  width:24px;
  height:24px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#eaf6df;
  color:#173a25;
}
.coach-action-bundle-details[open]>summary:after{content:'−'}
.coach-action-list{
  display:grid;
  gap:10px;
  padding:0 12px 12px;
}
.coach-action-row{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr) auto;
  gap:10px;
  align-items:start;
  padding:12px;
  border:1px solid rgba(26,46,26,.10);
  border-radius:16px;
  background:#fffdf7;
}
.coach-action-row b,
.coach-action-row small,
.coach-action-row em{display:block}
.coach-action-row b{font-size:.95rem;color:#172016;line-height:1.2}
.coach-action-row small{margin-top:4px;font-size:.76rem;opacity:.62;line-height:1.25}
.coach-action-row em{margin-top:6px;font-style:normal;font-size:.82rem;opacity:.74;line-height:1.32}
.coach-action-row menu{
  margin:0;
  padding:0;
  display:flex;
  gap:6px;
  align-items:center;
}
.coach-action-row menu button{
  min-height:34px!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  font-size:.78rem!important;
  white-space:nowrap;
}
.action-bundle{
  min-height:0!important;
}
@media(max-width:760px){
  .coach-action-row{grid-template-columns:28px minmax(0,1fr);}
  .coach-action-row menu{grid-column:2;justify-content:flex-start;flex-wrap:wrap}
  .coach-action-row menu button{flex:1 1 96px}
}

/* Pass 37.1: anchored meal menu + real skip action */
.meal-time-block,
.meal-stack,
.meal-card-pro,
.meal-card-pro .meal-content,
.meal-tools-pro,
#items{
  overflow:visible!important;
}
.meal-tools-pro{
  isolation:isolate!important;
}
.meal-tools-pro .meal-kebab{
  position:relative!important;
  z-index:2147482000!important;
}
.meal-tools-pro .meal-kebab[open]{
  z-index:2147483000!important;
}
.meal-tools-pro .meal-kebab menu{
  position:absolute!important;
  left:auto!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  bottom:auto!important;
  z-index:2147483000!important;
  min-width:178px!important;
  width:178px!important;
  max-width:calc(100vw - 24px)!important;
  max-height:min(320px,70vh)!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:4px!important;
  padding:8px!important;
  margin:0!important;
  transform:none!important;
  overflow:auto!important;
  pointer-events:auto!important;
}
.meal-tools-pro .meal-kebab.drop-up menu{
  top:auto!important;
  bottom:calc(100% + 8px)!important;
}
.meal-tools-pro .meal-kebab menu button{
  width:100%!important;
  justify-content:flex-start!important;
  text-align:left!important;
  white-space:nowrap!important;
}

/* Pass 38: non-blocking AI states and safer background refresh UX */
.modal-ai-active #modalContent,
.modal-ai-active menu{
  filter:none!important;
  pointer-events:auto!important;
  user-select:auto!important;
}
.modal-busy{
  inset:auto 18px 18px auto!important;
  width:min(360px,calc(100% - 36px))!important;
  display:block!important;
  padding:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  pointer-events:none!important;
}
.modal-busy>div{
  width:100%!important;
  border-radius:18px!important;
  padding:16px!important;
  box-shadow:0 18px 54px rgba(16,33,21,.22)!important;
}
.modal-busy b{font-size:18px!important}
.modal-busy p{font-size:13px!important;margin-bottom:10px!important}
.ai-review-pill{
  pointer-events:none;
}
.ai-review-pill menu,
.ai-review-pill button{
  pointer-events:auto;
}
.ai-review-pill.working{
  background:#102115;
}
button:disabled{
  cursor:progress!important;
  opacity:.72!important;
}
.task-center{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:920;
  display:grid;
  justify-items:end;
  gap:8px;
  pointer-events:none;
}
.task-center-toggle{
  pointer-events:auto;
  border-radius:999px!important;
  min-height:46px!important;
  padding:8px 14px 8px 8px!important;
  background:linear-gradient(135deg,#102115,#1f4d31)!important;
  color:#fff!important;
  border-color:rgba(200,241,53,.22)!important;
  box-shadow:0 18px 55px rgba(16,33,21,.24)!important;
}
.task-center-toggle span{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#c8f135;
  color:#102115;
  font-weight:950;
}
.task-center-toggle b{
  font-size:12px;
  white-space:nowrap;
}
.task-center-panel{
  pointer-events:auto;
  display:none;
  width:min(420px,calc(100vw - 28px));
  max-height:min(520px,70vh);
  overflow:auto;
  padding:10px;
  border-radius:22px;
  background:rgba(255,253,247,.96);
  border:1px solid rgba(220,227,213,.94);
  box-shadow:0 24px 80px rgba(16,33,21,.22);
  backdrop-filter:blur(18px);
}
.task-center.open .task-center-panel{
  display:grid;
  gap:9px;
}
.task-row{
  display:grid;
  gap:8px;
  padding:12px;
  border:1px solid #dce3d5;
  border-radius:17px;
  background:#fffdf7;
}
.task-row header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.task-row small{
  order:2;
  padding:5px 8px;
  border-radius:999px;
  background:#eef8e9;
  color:#102115;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:9px;
  font-weight:950;
}
.task-row b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.task-row p{
  margin:0;
  color:#657060;
  font-size:13px;
  line-height:1.35;
}
.task-meter{
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:#e5ecdf;
}
.task-meter i{
  display:block;
  height:100%;
  width:var(--task-p,8%);
  border-radius:999px;
  background:linear-gradient(90deg,#119c69,#c8f135);
  transition:width .28s ease;
}
.task-row menu{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin:0;
  padding:0;
}
.task-row menu button{
  min-height:34px!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  font-size:12px!important;
}
.task-row.done small{background:#dcfce7;color:#166534}
.task-row.failed small{background:#fee2e2;color:#991b1b}
.task-row.cancelled small,.task-row.stale small{background:#f3f4f6;color:#4b5563}
@media(max-width:760px){
  .modal-busy{
    left:12px!important;
    right:12px!important;
    bottom:12px!important;
    width:auto!important;
  }
  .task-center{
    left:10px;
    right:10px;
    bottom:82px;
    justify-items:stretch;
  }
  .task-center-toggle{
    justify-self:end;
    max-width:100%;
  }
  .task-center-panel{
    width:100%;
    max-height:54vh;
  }
}

/* Pass 39: product-quality polish, stronger hierarchy and app-like controls */
body.forja-app{
  --surface:#fffdf8;
  --surface-2:#f4f7ef;
  --ink-strong:#111812;
  --ink-soft:#586457;
  --accent:#119c69;
  --accent-2:#c8f135;
  --accent-warn:#f59e0b;
  --accent-bad:#ef4444;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body.forja-app[data-day-risk="hydration"]{--accent:#2478d4;--accent-2:#bde5ff}
body.forja-app[data-day-risk="calories"]{--accent:#d96d2c;--accent-2:#ffe08f}
body.forja-app[data-day-risk="creatine"]{--accent:#7c5cff;--accent-2:#d9d2ff}
body.forja-app[data-day-risk="missed-meal"]{--accent:#df3f3f;--accent-2:#ffd0c7}
.forja-app button,
.forja-app input,
.forja-app select,
.forja-app textarea{
  min-height:42px;
}
.forja-app button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  line-height:1.05;
}
.forja-app button:focus-visible,
.forja-app input:focus-visible,
.forja-app textarea:focus-visible,
.forja-app select:focus-visible,
.button-link:focus-visible{
  outline:3px solid color-mix(in srgb,var(--accent-2) 72%,white);
  outline-offset:3px;
}
.forja-app .primary,
.meal-primary,
#view-coach .coach-composer button{
  background:linear-gradient(135deg,var(--ink-strong),#1d3526)!important;
  color:#fff!important;
  border-color:rgba(17,24,18,.94)!important;
  box-shadow:0 14px 34px rgba(17,24,18,.16)!important;
}
.forja-app .primary:hover,
.meal-primary:hover,
#view-coach .coach-composer button:hover{
  box-shadow:0 18px 48px rgba(17,24,18,.22)!important;
}
.hero-panel{
  border:1px solid color-mix(in srgb,var(--accent) 32%,#ffffff22)!important;
  box-shadow:0 28px 90px rgba(17,24,18,.18), inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.hero-panel:after{
  background:radial-gradient(circle at 76% 24%,color-mix(in srgb,var(--accent-2) 28%,transparent),transparent 24%),linear-gradient(180deg,transparent 48%,rgba(0,0,0,.34))!important;
}
.cinematic-chips span,
.scene-metrics span{
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.10)!important;
  backdrop-filter:blur(14px);
}
.score-panel{
  display:grid!important;
  align-content:start!important;
  gap:10px!important;
}
.score-panel:after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:18px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--accent),var(--accent-2));
  opacity:.9;
}
.score-panel .progress i,
.calorie-ring .donut,
.water-ring .donut{
  transition:width .35s ease, background .35s ease;
}
.summary-strip article{
  position:relative;
  overflow:hidden;
}
.summary-strip article:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  background:linear-gradient(90deg,var(--accent),transparent);
}
.summary-strip article b{
  color:var(--ink-strong);
}
.next-move,
.coach-insight,
.meal-card-pro,
.library-card,
.panel,
.progress-main,
.tracker-card-v31,
.coach-chat-card{
  border-radius:22px!important;
}
.next-move{
  background:linear-gradient(180deg,#fffdf8,color-mix(in srgb,var(--accent-2) 14%,#fffdf8))!important;
}
.next-move h3,
.coach-insight h3,
.section-head h2{
  text-wrap:balance;
}
.meal-time-block{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:12px;
  align-items:start;
}
.time-anchor{
  position:sticky;
  top:14px;
  border-radius:18px!important;
  padding:12px 10px!important;
  background:linear-gradient(180deg,#111812,#1a3022)!important;
  color:#eaffd2!important;
  text-align:center;
  box-shadow:0 12px 30px rgba(17,24,18,.16);
}
.time-anchor time,
.time-anchor span{
  display:block;
}
.time-anchor span{
  margin-top:4px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  opacity:.74;
}
.meal-stack{
  display:grid;
  gap:12px;
}
.meal-card-pro{
  border-color:#d9e3d3!important;
  background:linear-gradient(180deg,#fffdf8,#fbfcf5)!important;
  box-shadow:0 18px 52px rgba(17,24,18,.08)!important;
}
.meal-card-pro.pending{
  border-left:4px solid var(--accent-warn)!important;
}
.meal-card-pro.done{
  border-left:4px solid #16a34a!important;
}
.meal-card-pro.skipped{
  border-left:4px solid var(--accent-bad)!important;
}
.meal-icon{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:16px;
  background:color-mix(in srgb,var(--accent-2) 42%,#fff);
  color:#142016;
  font-size:11px!important;
  font-weight:950;
  letter-spacing:.04em;
}
.meal-topline small,
.library-card small,
.action-card-head small{
  color:var(--accent)!important;
}
.meal-state{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24);
}
.meal-card-pro details summary{
  cursor:pointer;
  color:var(--accent);
  font-weight:900;
  margin-top:8px;
}
.meal-actions-pro{
  align-self:end!important;
}
.meal-secondary,
.meal-kebab summary,
.meal-ai{
  background:#f4f7ef!important;
  border-color:#dbe5d5!important;
}
.meal-kebab menu{
  border-color:#dbe5d5!important;
  box-shadow:0 22px 70px rgba(17,24,18,.20)!important;
}
.coach-chat-card{
  overflow:hidden;
}
.coach-messages{
  background:
    linear-gradient(180deg,rgba(255,253,248,.88),rgba(244,247,239,.78)),
    radial-gradient(circle at 12% 10%,rgba(200,241,53,.10),transparent 28%);
}
.chat-msg{
  box-shadow:0 10px 28px rgba(17,24,18,.07);
}
.chat-msg.assistant{
  border-color:#dbe5d5!important;
}
.chat-msg.user{
  background:linear-gradient(135deg,#111812,#24452d)!important;
}
.coach-composer textarea{
  overflow:auto;
  line-height:1.35;
}
.coach-quick-actions button,
.library-tabs button{
  white-space:nowrap;
}
.library-toolbar{
  align-items:start!important;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr)!important;
}
.library-toolbar>.button-row{
  grid-column:2!important;
  justify-content:flex-start!important;
}
.library-toolbar h2{
  max-width:12ch;
}
.library-tabs{
  overflow:auto;
  scrollbar-width:none;
}
.library-tabs::-webkit-scrollbar{display:none}
.library-card{
  position:relative;
  overflow:hidden;
  display:grid;
  gap:8px;
  min-height:235px;
}
.library-card:before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:4px;
  background:linear-gradient(90deg,var(--accent),transparent);
}
.library-card menu{
  margin-top:auto!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.library-card menu button{
  min-height:38px;
  padding:8px 9px!important;
}
.library-search{
  box-shadow:0 14px 40px rgba(17,24,18,.07);
}
.progress-main,
.tracker-card-v31{
  background:linear-gradient(180deg,#fffdf8,#f4f7ef)!important;
}
.modal-card{
  max-height:min(92vh,920px);
  overflow:auto;
}
.modal-hero h2{
  text-wrap:balance;
}
.toast{
  box-shadow:0 18px 60px rgba(17,24,18,.22);
}
body.forja-app[data-view="today"] .floating-coach,
body.forja-app[data-view="coach"] .floating-coach,
.floating-coach{
  display:none!important;
}
.day-pulse{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:14px 0 18px;
}
.pulse-card{
  display:grid;
  gap:8px;
  min-height:154px;
  padding:15px;
  border:1px solid #dbe5d5;
  border-radius:18px;
  background:linear-gradient(180deg,#fffdf8,#f4f7ef);
  box-shadow:0 14px 38px rgba(17,24,18,.07);
}
.pulse-card small,
.plan-health-card small,
.library-quality small{
  color:var(--accent);
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.pulse-card b{
  color:#111812;
  font-size:22px;
  line-height:1.05;
}
.pulse-card p{
  min-height:38px;
  margin:0;
  color:#52614d;
  font-size:13px;
  line-height:1.35;
}
.pulse-card div{
  align-self:end;
}
.pulse-card button,
.library-quality button,
.plan-health-card button{
  width:100%;
  min-height:38px;
  border-color:#d7e2d1!important;
  background:#fffdf8!important;
  font-weight:900;
}
.pulse-card.tone-bad,
.plan-health-card.tone-bad{
  border-color:color-mix(in srgb,var(--accent-bad) 32%,#dbe5d5);
}
.pulse-card.tone-warn,
.plan-health-card.tone-warn{
  border-color:color-mix(in srgb,var(--accent-warn) 42%,#dbe5d5);
}
.pulse-card.tone-ok,
.pulse-card.tone-live,
.plan-health-card.tone-ok{
  border-color:color-mix(in srgb,var(--accent) 34%,#dbe5d5);
}
.library-quality{
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(260px,.9fr) auto;
  gap:14px;
  align-items:center;
  margin:12px 0 18px;
  padding:16px;
  border:1px solid #dbe5d5;
  border-radius:18px;
  background:
    linear-gradient(135deg,rgba(255,253,248,.96),rgba(244,247,239,.92)),
    radial-gradient(circle at 0 0,rgba(200,241,53,.14),transparent 28%);
  box-shadow:0 14px 42px rgba(17,24,18,.07);
}
.library-quality h3,
.plan-health-card h3{
  margin:2px 0 4px;
  color:#111812;
}
.library-quality p,
.plan-health-card p{
  margin:0;
  color:#52614d;
}
.quality-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.quality-metrics span{
  min-width:0;
  padding:10px;
  border:1px solid #dbe5d5;
  border-radius:14px;
  background:#fffdf8;
}
.quality-metrics b{
  display:block;
  color:#111812;
  font-size:18px;
}
.library-quality menu,
.plan-health-card menu{
  display:grid;
  gap:8px;
  margin:0;
}
.plan-health{
  margin:14px 0 18px;
}
.plan-health-card{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(280px,1fr) minmax(150px,.35fr);
  gap:14px;
  align-items:center;
  padding:17px;
  border:1px solid #dbe5d5;
  border-radius:18px;
  background:linear-gradient(180deg,#fffdf8,#f4f7ef);
  box-shadow:0 16px 46px rgba(17,24,18,.08);
}
@media(max-width:1100px){
  .library-toolbar{
    grid-template-columns:1fr!important;
  }
  .library-toolbar>.button-row{
    grid-column:auto!important;
  }
  .library-toolbar h2{
    max-width:none;
  }
  .meal-time-block{
    grid-template-columns:1fr;
  }
  .day-pulse{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .library-quality,
  .plan-health-card{
    grid-template-columns:1fr;
  }
  .time-anchor{
    position:relative;
    top:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    text-align:left;
  }
  .time-anchor span{margin-top:0}
}
@media(max-width:760px){
  body.forja-app{
    background:#f5f7f1!important;
  }
  .forja-app button,
  .forja-app input,
  .forja-app select,
  .forja-app textarea{
    min-height:40px;
  }
  body.forja-app[data-view="today"] .score-panel{
    box-shadow:0 12px 34px rgba(17,24,18,.10)!important;
  }
  body.forja-app[data-view="today"] .score-panel:after{
    left:12px;
    right:12px;
    top:10px;
  }
  body.forja-app[data-view="today"] .meal-card-pro{
    box-shadow:0 10px 30px rgba(17,24,18,.07)!important;
  }
  body.forja-app[data-view="today"] .meal-icon{
    width:36px;
    height:36px;
    border-radius:13px;
  }
  .bottom-nav{
    border:1px solid rgba(255,255,255,.10);
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
  .bottom-nav button{
    min-height:44px;
    font-size:10px!important;
    padding-inline:1px!important;
  }
  .bottom-nav button:before{
    display:none!important;
    content:none!important;
  }
  .rail-nav [data-view="today"]:before,
  .rail-nav [data-view="coach"]:before,
  .rail-nav [data-view="library"]:before,
  .rail-nav [data-view="progress"]:before,
  .rail-nav [data-view="plan"]:before,
  .rail-nav [data-view="settings"]:before,
  .bottom-nav [data-view="today"]:before,
  .bottom-nav [data-view="coach"]:before,
  .bottom-nav [data-view="library"]:before,
  .bottom-nav [data-view="progress"]:before,
  .bottom-nav [data-view="plan"]:before,
  .bottom-nav [data-view="settings"]:before{
    display:none!important;
    content:none!important;
  }
  .library-card{
    min-height:auto;
  }
  .day-pulse{
    grid-template-columns:1fr;
  }
  .pulse-card{
    min-height:auto;
  }
  .library-quality,
  .plan-health-card{
    border-radius:16px;
    padding:13px;
  }
  .quality-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .library-quality menu,
  .plan-health-card menu{
    grid-template-columns:repeat(auto-fit,minmax(112px,1fr));
  }
  .library-quality button,
  .plan-health-card button{
    padding-inline:8px!important;
    font-size:12px!important;
  }
  .library-card menu{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  #view-coach .coach-messages{
    background:#fffdf8!important;
  }
  .ai-review-pill{
    box-shadow:0 18px 58px rgba(17,24,18,.26)!important;
  }
}
