:root{--n:#061a3a;--b:#123f79;--g:#62ad3d;--bg:#f4f6f8;--m:#64748b;--l:#e5e7eb;--r:#c43d3d}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:#111827}button,input,select,textarea{font:inherit}.hidden{display:none!important}.btn{border:1px solid var(--l);background:white;border-radius:9px;padding:10px 14px;font-weight:800;cursor:pointer}.p{background:var(--g);color:#fff;border-color:var(--g)}.d{background:var(--n);color:#fff;border-color:var(--n)}.muted{color:var(--m);font-size:13px}.auth{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#04142e,#123f79)}.authbox{width:min(440px,100%);background:white;border-radius:18px;padding:26px;box-shadow:0 24px 70px #0005}.brand{font-size:24px;font-weight:950;color:var(--n)}.green{color:var(--g)}.field{margin:11px 0}.field label{display:block;font-size:11px;font-weight:850;text-transform:uppercase;color:var(--m);margin-bottom:5px}.field input,.field select,.field textarea{width:100%;padding:11px;border:1px solid #cfd6df;border-radius:9px;background:#fff}.pw{display:flex;gap:8px;align-items:center;color:var(--m);font-size:13px;margin:8px 0 12px}.msg{font-size:13px;margin-top:12px}.app{display:flex;min-height:100vh}.side{width:225px;position:fixed;inset:0 auto 0 0;background:linear-gradient(180deg,#04142e,#092b5b);color:#fff;padding:20px 13px}.side h2{font-size:18px;margin:0 8px}.side small{display:block;color:#9ee37d;margin:3px 8px 20px;font-weight:850}.nav button{width:100%;border:0;background:transparent;color:#dce8fb;text-align:left;padding:12px;border-radius:9px;margin:3px 0;font-weight:750;cursor:pointer}.nav button.on,.nav button:hover{background:var(--g);color:#fff}.main{margin-left:225px;width:calc(100% - 225px);padding:22px}.page{display:none}.page.on{display:block}.top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}.top h1{margin:0;font-size:28px}.grid{display:grid;gap:14px}.stats{grid-template-columns:repeat(4,1fr)}.two{grid-template-columns:2fr 1fr}.card{background:#fff;border:1px solid var(--l);border-radius:13px;padding:18px;box-shadow:0 2px 8px #0714280a}.stat span{font-size:11px;color:var(--m);font-weight:850;text-transform:uppercase}.stat b{display:block;font-size:28px;margin-top:4px}.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px 9px;border-bottom:1px solid var(--l);font-size:13px;text-align:left;white-space:nowrap}.table th{font-size:10px;color:var(--m);text-transform:uppercase}.pill{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:850}.ok{background:#e8f5e2;color:#34721f}.warn{background:#fff2d6;color:#956000}.hero{background:linear-gradient(135deg,var(--n),var(--b));color:#fff;border-radius:14px;padding:20px;margin-bottom:15px}.targets{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.target{text-align:center;border:1px solid var(--l);border-radius:10px;padding:12px}.target span{display:block;font-size:10px;color:var(--m);font-weight:850;text-transform:uppercase}.target b{display:block;font-size:21px;margin-top:4px}.toggle{display:flex;gap:8px}.toggle button{flex:1}.toggle .sel{background:var(--g);color:#fff;border-color:var(--g)}.formgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.meal,.article{border-bottom:1px solid var(--l);padding:13px 0}.progress{height:8px;background:#edf0f3;border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;background:var(--g)}.metric{display:grid;grid-template-columns:90px 1fr 50px;gap:8px;align-items:center;margin:12px 0;font-size:12px}.modal{position:fixed;inset:0;background:#0008;display:none;place-items:center;padding:14px;z-index:20}.modal.open{display:grid}.modalbox{background:#fff;width:min(760px,100%);max-height:92vh;overflow:auto;border-radius:14px;padding:20px}.modalgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toast{position:fixed;right:18px;bottom:18px;background:var(--n);color:#fff;padding:12px 15px;border-radius:9px;display:none}.toast.show{display:block}@media(max-width:850px){.side{width:185px}.main{margin-left:185px;width:calc(100% - 185px)}.stats{grid-template-columns:1fr 1fr}.two{grid-template-columns:1fr}.targets,.formgrid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.app{display:block}.side{position:static;width:100%;height:auto;padding-bottom:12px}.side #signout{position:static!important;display:block;width:100%;margin-top:10px}.nav{display:flex;overflow:auto;gap:4px}.nav button{min-width:max-content}.main{margin:0;width:100%;padding:14px}.targets,.formgrid,.modalgrid{grid-template-columns:1fr}.top{align-items:flex-start}.top h1{font-size:23px}#simpleMealPlanEditor,#nutritionPlanEditor{min-height:320px!important}.simple-meal-plan-card .btn{width:100%}}