:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-synthesis:none;--bg:#0d1623;--card:#172436;--line:#2b394b;--muted:#9dabb9;--coral:#fd8e70;--white:#f5f7f8;--mint:#83debd}*{box-sizing:border-box}body{margin:0;color:var(--white);background:#0d1623}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--mint);outline-offset:2px}.app-shell{width:min(100%,550px);min-height:100svh;margin:auto;padding:20px 19px 0}.header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:1px 0 24px}.brand{display:flex;gap:12px;align-items:center}.brand-mark,.login-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;font-weight:900;font-size:23px;background:linear-gradient(135deg,#fd8e70,#ffc28e);color:#101823;letter-spacing:-3px}.brand-mark span,.login-icon span{color:#fff}.brand h1{font-size:16px;letter-spacing:.8px;margin:0 0 4px}.brand small{font-size:11px;color:var(--muted)}.header-actions{display:flex;gap:8px;align-items:center}.net-status{font-size:11px;color:#8dddba;white-space:nowrap}.net-status.offline{color:#ffd291}.icon-button{border:1px solid var(--line);color:#cbd6df;background:#172435;border-radius:11px;padding:9px;font-size:20px}.hero{border-radius:23px;padding:23px 21px;background:linear-gradient(130deg,#283a4d 0,#203548 45%,#2d4649 100%);box-shadow:0 15px 30px #050a1222}.hero-top{display:flex;justify-content:space-between}.eyebrow{font-size:10px;letter-spacing:2.3px;color:#f7bb9e;margin:0 0 9px;font-weight:800}.hero h2{font-size:19px;margin:0;letter-spacing:-.5px}.hero-note{font-size:12px;color:#bed1d4;margin:7px 0 19px}.hero-symbol{color:var(--coral);font-size:30px}.energy{display:flex;align-items:baseline;gap:6px;margin-bottom:15px}.energy strong{font-size:46px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-2px}.energy span{font-size:14px;color:#bed0d8}.meter{height:9px;background:#101d2c;border-radius:20px;overflow:hidden}.meter-bar{height:100%;width:0%;background:linear-gradient(90deg,#fd9272,#ffc69b);border-radius:20px;transition:width .25s}.hero-footer{display:flex;justify-content:space-between;gap:6px;color:#c6d5db;font-size:11px;margin-top:12px}.macros{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0 27px}.macro{background:var(--card);border:1px solid #263547;border-radius:17px;min-height:104px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px}.macro-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:9px;font-weight:800;font-size:12px}.protein{color:#92ddd5;background:#224249}.fat{color:#ffc3a4;background:#513a35}.carbs{color:#d4c4ff;background:#403a5a}.macro strong{font-size:19px;font-variant-numeric:tabular-nums}.macro small{color:var(--muted);font-size:11px}.section-title{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:20px 0 16px}.section-title h2{font-size:19px;letter-spacing:-.35px;margin:0}.quiet{background:none;border:0;color:var(--mint);font-weight:700}.section-hint{font-size:12px;color:var(--muted)}.list{display:grid;gap:10px}.empty{padding:30px 18px;background:var(--card);border:1px dashed #374557;border-radius:18px;text-align:center;color:var(--muted);line-height:1.6;font-size:13px}.food-item,.event-item{background:var(--card);border:1px solid #273649;border-radius:16px;padding:15px;display:flex;align-items:center;gap:12px}.food-icon{width:38px;height:38px;border-radius:13px;background:#33443f;display:grid;place-items:center;font-size:20px}.food-info{flex:1;min-width:0}.food-info strong{display:block;font-size:13px;overflow-wrap:anywhere}.food-info small{display:block;color:var(--muted);margin-top:4px;font-size:11px}.food-energy{font-size:13px;font-weight:800;white-space:nowrap}.delete{border:0;background:transparent;color:#f3aaa0;font-size:20px;padding:3px 6px}.disclaimer,.fineprint{color:var(--muted);font-size:11px;line-height:1.6}.disclaimer{margin-top:22px}.input-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:19px 0}.mode{border:1px solid var(--line);background:var(--card);color:var(--white);border-radius:17px;padding:13px 3px;display:flex;flex-direction:column;align-items:center;gap:6px}.mode.active{border-color:#f8a78b;background:#34313b}.mode span{font-size:24px}.mode strong{font-size:12px}.mode small{font-size:10px;color:var(--muted)}.form-card{background:var(--card);border:1px solid #263649;border-radius:19px;padding:18px;display:flex;flex-direction:column;gap:10px}.form-card label{font-size:12px;font-weight:700;color:#dbe4ea}.form-card input:not([type=range]),.form-card textarea,.form-card select{width:100%;padding:13px;background:#101c2b;color:#f2f5fa;border:1px solid #314055;border-radius:12px;min-height:45px}.form-card input::placeholder,.form-card textarea::placeholder{color:#77899b}.form-card label:not(:first-child){margin-top:8px}.numbers{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.numbers>div{min-width:0;display:flex;flex-direction:column;gap:8px}.numbers label{margin-top:0!important}.primary{width:100%;border:0;background:linear-gradient(100deg,#ff9279,#ffd0a0);color:#1b2530;font-size:14px;font-weight:900;border-radius:13px;padding:15px;margin-top:10px}.photo-preview{margin:12px 0;background:#172436;border-radius:16px;overflow:hidden;padding-bottom:11px}.photo-preview img{max-height:220px;width:100%;object-fit:cover}.photo-preview p{font-size:12px;color:var(--muted);padding:0 12px}.helper{font-size:13px;line-height:1.6;color:var(--muted)}.range-label{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.range-label strong{color:var(--mint);font-size:14px}.form-card input[type=range]{accent-color:#fd9279;width:100%;margin:3px 0 8px}.event-item{display:block;line-height:1.55}.event-item small{color:var(--muted)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,550px);background:rgba(18,29,44,.98);backdrop-filter:blur(8px);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #344253;padding:11px 10px max(11px,env(safe-area-inset-bottom));z-index:10}.nav-item{display:flex;flex-direction:column;gap:3px;align-items:center;background:none;border:0;color:#97a5b4}.nav-item.active{color:#ffad92}.nav-item span{font-size:23px;line-height:1.1}.nav-item small{font-size:10px;font-weight:700}.space-bottom{height:120px}.login-screen{text-align:center;max-width:400px;margin:16vh auto 25px}.login-icon{width:78px;height:78px;font-size:43px;margin:auto auto 22px;border-radius:22px}.login-screen h2{font-size:24px;margin:0 0 12px}.login-screen>p{color:var(--muted);line-height:1.6}.login-screen .form-card{text-align:left;margin-top:25px}.toast{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);width:min(90%,460px);background:#25403b;border:1px solid #75b9a2;color:#f1fff7;padding:14px 16px;border-radius:12px;box-shadow:0 8px 30px #0005;z-index:25;text-align:center;font-size:12px}.toast.error{background:#4e2c2e;border-color:#d5847c}@media(min-width:650px){.app-shell{border-left:1px solid #29394a;border-right:1px solid #29394a}.login-screen{margin-top:18vh}}

/* BRO FOOD AI 0.2 — explicit photo draft and correction workflow */
.photo-workflow{display:grid;gap:12px;margin-bottom:16px}.photo-preview{margin:0}
.photo-actions{background:var(--card);padding:15px;border:1px solid var(--line);border-radius:16px;display:grid;gap:12px}
.photo-actions>label{font-size:12px;font-weight:700}.photo-actions input[type=text]{width:100%;padding:12px;background:#101c2b;color:#f2f5fa;border:1px solid #314055;border-radius:12px}
.photo-actions .checkline{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:12px;line-height:1.5;color:#e3ecf1;cursor:pointer}
.checkline input{margin:3px 0 0;accent-color:#83debd;width:18px;height:18px;flex-shrink:0}
.optional{font-weight:400;color:var(--muted)}.ai-draft{background:#172436;border:1px solid #426359;border-radius:18px;padding:15px}
.ai-draft h3{font-size:17px;margin:0 0 5px}.ai-food-form{display:grid;gap:10px}.ai-food-item{background:#101c2b;border:1px solid #314459;border-radius:14px;padding:13px;margin-top:11px;display:grid;gap:9px}
.ai-food-item header{display:flex;align-items:center;justify-content:space-between;gap:8px}.ai-food-item header strong{font-size:13px}
.ai-food-item small{color:var(--muted);line-height:1.5}.ai-food-item label{display:grid;gap:5px;font-size:11px;color:#dbe4ea}
.ai-food-item input{min-width:0;width:100%;font:inherit;font-size:14px;color:#f6f6f6;background:#192b3e;border:1px solid #385168;border-radius:10px;padding:9px}
.ai-food-item .ai-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ai-food-item .ai-head{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}
.ai-remove{background:#482d32;border:1px solid #8f5559;color:#ffcfcc;border-radius:9px;padding:8px;font-size:12px}
.ai-questions{color:#eddfba;background:#43382e;border:1px solid #80694a;padding:10px 12px;border-radius:10px;font-size:12px;line-height:1.6}
.ai-questions p{margin:0 0 5px}.ai-questions p:last-child{margin-bottom:0}
.primary[disabled]{opacity:.55;cursor:wait}

/* BRO FOOD AI 0.4 — text, voice, 14-day review */
[hidden]{display:none!important}
.text-workflow,.voice-workflow{margin-bottom:14px}
.text-workflow .checkline,.voice-workflow .checkline{display:flex;align-items:flex-start;gap:10px;font-size:12px;font-weight:400;line-height:1.5}
.text-workflow .checkline input,.voice-workflow .checkline input{width:18px;height:18px;min-height:auto;accent-color:#83debd;flex-shrink:0}
.secondary-btn{background:#243750;border:1px solid #506078;color:#e3f0f6;border-radius:13px;padding:13px;font-weight:750}
.insights-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.insight-tile{background:var(--card);border:1px solid #283e4f;border-radius:16px;padding:17px 12px;display:flex;flex-direction:column;gap:7px}
.insight-tile strong{font-size:20px;letter-spacing:-.3px}
.insight-tile small{color:var(--muted);font-size:11px;line-height:1.3}
.insights-subtitle{font-size:15px;margin:0 0 8px}
.insights-chart{height:172px;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:4px;align-items:end;padding-top:14px}
.chart-col{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;height:100%}
.chart-track{width:100%;height:100%;background:#1a3044;border-radius:5px;display:flex;align-items:flex-end;overflow:hidden}
.chart-bar{width:100%;border-radius:5px;background:linear-gradient(0deg,#ef9079,#ffd6a2)}
.chart-bar.missing{background:repeating-linear-gradient(45deg,#273f52,#273f52 3px,#1a2c3d 3px,#1a2c3d 7px);opacity:.6}
.chart-col small{font-size:9px;color:#b6c7d3}
.insights-notes p{margin:0 0 12px;color:#dfebf2;font-size:13px;line-height:1.5}
.insights-notes p:last-child{margin:0}
.bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
