:root{--bg:#0b0e13;--card:#131821;--card2:#181f2b;--text:#f5f7fb;--muted:#8993a5;--line:#252d3a;--accent:#9cff57;--accent2:#70d8ff;--danger:#ff6b7a;--shadow:0 18px 50px #0007}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#17211b 0,#0b0e13 35%);color:var(--text);font:15px/1.45 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
button,input,select{font:inherit}button{cursor:pointer;border:0}.app{max-width:1250px;margin:auto;padding:22px}
header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.brand{font-size:22px;font-weight:900;letter-spacing:.8px}.brand span{color:var(--accent)}.sub{color:var(--muted);font-size:12px}
nav{display:flex;gap:7px;overflow:auto;padding-bottom:4px;margin-bottom:22px}nav button{background:var(--card);color:var(--muted);padding:10px 15px;border-radius:12px;border:1px solid var(--line);white-space:nowrap}nav button.active{background:var(--accent);color:#0a1006;border-color:var(--accent);font-weight:800}
.view{display:none}.view.active{display:block}.grid{display:grid;grid-template-columns:1.4fr .8fr;gap:18px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.card{background:linear-gradient(145deg,#151b24,#10151d);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow)}h1,h2,h3{margin:0 0 8px}h1{font-size:30px}h2{font-size:20px}h3{font-size:15px}.muted{color:var(--muted)}.tiny{font-size:12px;color:var(--muted)}
.hero{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#202a34;color:var(--accent);font-size:12px;font-weight:800}
.metric{display:flex;align-items:end;gap:5px}.metric strong{font-size:38px;line-height:1}.metric small{color:var(--muted);margin-bottom:3px}
.bar{height:9px;background:#252c36;border-radius:99px;overflow:hidden;margin-top:10px}.bar i{display:block;height:100%;background:var(--accent);border-radius:inherit;width:0}
.macro{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.macro>div{padding:12px;background:var(--card2);border-radius:14px}.macro b{display:block;font-size:18px}.macro span{font-size:12px;color:var(--muted)}
.meal{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.meal:last-child{border-bottom:0}.meal-left{display:flex;gap:12px;align-items:center}.meal-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#222b35;font-size:20px}.meal-meta strong{display:block}.meal-meta span{font-size:12px;color:var(--muted)}.meal-kcal{text-align:right;white-space:nowrap}.meal-kcal b{display:block}.meal-kcal span{font-size:11px;color:var(--muted)}
.btn{padding:11px 14px;border-radius:12px;background:var(--accent);color:#0b1008;font-weight:800}.btn.secondary{background:#222a35;color:var(--text);border:1px solid var(--line)}.btn.danger{background:#3a1d24;color:#ffb2bc}.actions{display:flex;gap:8px;flex-wrap:wrap}
.form{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.field input,.field select,.search{width:100%;padding:12px 13px;border-radius:12px;background:#0d1219;border:1px solid var(--line);color:var(--text);outline:none}.field input:focus,.field select:focus,.search:focus{border-color:#66844f}
.choice{display:flex;gap:8px;flex-wrap:wrap}.choice label{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#10161e;color:var(--muted);cursor:pointer}.choice input{display:none}.choice label:has(input:checked){background:#20311b;color:var(--accent);border-color:#4d713a}
.tabs{display:flex;gap:8px;margin:15px 0;flex-wrap:wrap}.tabs button{background:#161d27;color:var(--muted);padding:8px 11px;border-radius:10px}.tabs button.active{color:var(--text);background:#27313d}
.product-list,.dish-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}.product{padding:13px;background:#121821;border:1px solid var(--line);border-radius:14px;display:flex;justify-content:space-between;gap:10px}.product small{display:block;color:var(--muted)}.switch{width:42px;height:24px;border-radius:99px;background:#303846;position:relative;flex:none}.switch i{position:absolute;width:18px;height:18px;border-radius:50%;background:white;top:3px;left:3px;transition:.2s}.switch.on{background:var(--accent)}.switch.on i{left:21px;background:#0b1108}
.dish{padding:15px;border:1px solid var(--line);border-radius:16px;background:#121821}.dish-top{display:flex;justify-content:space-between;gap:10px}.dish .tags{color:var(--muted);font-size:12px;margin:7px 0}.dish .stats{font-size:12px}.dish button{margin-top:10px}
.water{display:flex;align-items:center;justify-content:space-between;gap:12px}.water-glass{font-size:36px}.water-num{font-size:28px;font-weight:900}.water-actions{display:flex;gap:7px}.water-actions button{background:#222b35;color:var(--text);padding:9px;border-radius:10px}
.chart{height:180px;display:flex;align-items:end;gap:7px;padding-top:20px}.bar-day{flex:1;background:#27313b;border-radius:8px 8px 2px 2px;min-height:8px;position:relative}.bar-day i{position:absolute;bottom:0;width:100%;height:100%;background:var(--accent);border-radius:inherit}.bar-day span{position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);font-size:10px;color:var(--muted)}
.toast{position:fixed;right:18px;bottom:18px;background:#eaffdf;color:#10170d;padding:12px 15px;border-radius:12px;font-weight:800;display:none;z-index:5}.empty{padding:30px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:15px}
.modal{position:fixed;inset:0;background:#0009;display:none;align-items:center;justify-content:center;padding:20px;z-index:4}.modal.open{display:flex}.modal-card{width:min(620px,100%);max-height:90vh;overflow:auto;background:#121821;border:1px solid var(--line);border-radius:22px;padding:20px}.close{float:right;background:#252e39;color:white;border-radius:9px;padding:7px 10px}
@media(max-width:850px){.grid,.grid3{grid-template-columns:1fr}.product-list,.dish-list{grid-template-columns:1fr}.form{grid-template-columns:1fr}.app{padding:14px}h1{font-size:25px}.hero{align-items:flex-start;flex-direction:column}}

.auth-wrap{max-width:420px;margin:8vh auto;padding:22px}
.auth-wrap .card{padding:26px}
.auth-wrap input{width:100%;margin-bottom:12px}
.auth-tab{display:flex;gap:8px;margin-bottom:16px}
.hidden{display:none!important}
