
:root{
  --bg:#07101d;--panel:#101b2c;--panel2:#152238;--line:#22334d;--text:#f7f9fc;
  --muted:#91a0b8;--accent:#70e1a1;--accent2:#7db4ff;--danger:#ff7d7d;--shadow:0 18px 50px rgba(0,0,0,.22);
}
*{box-sizing:border-box}
html{background:var(--bg);font-family:Inter,Arial,"Segoe UI",sans-serif}
body{margin:0;background:radial-gradient(circle at 80% 0,#10284c 0,transparent 35%),var(--bg);color:var(--text);min-height:100vh}
button,input,textarea{font:inherit}
button{cursor:pointer}
.app-shell{max-width:720px;margin:auto;min-height:100vh;padding-bottom:88px}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:22px 18px 8px;position:sticky;top:0;z-index:20;background:linear-gradient(to bottom,rgba(7,16,29,.98),rgba(7,16,29,.78),transparent);backdrop-filter:blur(8px)}
.eyebrow,.muted{color:var(--muted);font-size:.83rem}
h1{font-size:1.45rem;margin:3px 0 0}h2{font-size:1.05rem;margin:4px 0}
main{padding:10px 14px}
.view{display:none}.view.active{display:block}
.hero-card,.card{background:linear-gradient(145deg,rgba(21,34,56,.97),rgba(13,25,42,.97));border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}
.hero-card{padding:20px;margin-bottom:12px}
.hero-row,.goal-row,.section-title,.dialog-head,.button-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.weight-line{display:flex;align-items:baseline;gap:6px;margin-top:5px}.weight-line strong{font-size:2.4rem}.weight-line span{color:var(--muted)}
.trend{margin-top:4px;font-size:.88rem;color:var(--accent)}
.goal-row{margin-top:20px;font-size:.86rem;color:var(--muted)}
.progress{height:9px;background:#091322;border-radius:30px;overflow:hidden;margin-top:8px}.progress>div{height:100%;width:0;background:linear-gradient(90deg,var(--accent2),var(--accent));border-radius:inherit;transition:.4s}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}
.stat-card{background:var(--panel);border:1px solid var(--line);padding:14px;border-radius:18px;display:flex;flex-direction:column;gap:6px}.stat-card strong{font-size:1.02rem}.stat-icon{font-size:1.3rem}
.card{padding:16px;margin-bottom:12px}.section-title{margin-bottom:14px}
.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.quick{border:1px solid var(--line);background:#0d1929;color:var(--text);border-radius:15px;padding:12px 4px;font-size:.77rem}.quick span{display:block;font-size:1.3rem;margin-bottom:5px}
.primary,.secondary,.icon-btn{border:0;border-radius:14px;padding:12px 16px}.primary{background:var(--accent);color:#07120d;font-weight:800}.primary.small{padding:9px 12px;font-size:.82rem}.secondary{background:#17263d;color:var(--text);border:1px solid var(--line)}.icon-btn{background:#15243a;color:white;font-size:1.2rem}
.link-btn{background:none;color:var(--muted);border:0;font-size:.78rem}
.timeline{display:flex;flex-direction:column;gap:11px}.empty{color:var(--muted);text-align:center;padding:22px 8px}
.timeline-item{display:grid;grid-template-columns:52px 1fr auto;gap:10px;align-items:flex-start}.time{font-size:.78rem;color:var(--muted);padding-top:8px}.entry-body{background:#0c1726;border:1px solid #1c2d45;border-radius:14px;padding:10px 12px}.entry-body strong{display:block;margin-bottom:4px}.entry-meta{font-size:.75rem;color:var(--muted)}.delete-entry{border:0;background:none;color:#687993;padding-top:8px}
.chart{height:150px;position:relative;overflow:hidden}.chart svg{width:100%;height:100%}.chart-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:.7rem;margin-top:4px}
.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);max-width:720px;width:100%;display:grid;grid-template-columns:1fr 1.1fr 1fr;background:rgba(9,17,29,.95);border-top:1px solid var(--line);padding:8px 12px max(8px,env(safe-area-inset-bottom));z-index:30;backdrop-filter:blur(18px)}
.nav-item{background:none;border:0;color:var(--muted);padding:8px;display:flex;flex-direction:column;gap:4px;align-items:center;font-size:.72rem}.nav-item span{font-size:1.15rem}.nav-item.active{color:var(--text)}.coach-nav{background:#14253b;border-radius:16px;margin-top:-16px;border:1px solid #274160;color:var(--accent)}
.coach-head{display:flex;align-items:center;gap:12px;padding:8px 6px 14px}.coach-avatar{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent2),var(--accent));color:#07101d;font-weight:900}
.chat{min-height:calc(100vh - 275px);display:flex;flex-direction:column;gap:10px;padding-bottom:12px}.msg{max-width:86%;padding:11px 13px;border-radius:16px;line-height:1.45;white-space:pre-wrap}.msg.user{align-self:flex-start;background:#1d3150}.msg.ai{align-self:flex-end;background:#112136;border:1px solid #233a59}.msg.system{align-self:center;background:none;color:var(--muted);font-size:.78rem}.msg img{max-width:190px;border-radius:12px;margin-top:8px}
.composer{position:sticky;bottom:76px;background:linear-gradient(to top,var(--bg) 70%,transparent);padding-top:10px}.composer-row{display:grid;grid-template-columns:44px 1fr 46px;gap:8px;align-items:end}.composer textarea{resize:none;max-height:120px;background:#111f31;border:1px solid #263b58;color:white;border-radius:16px;padding:12px;outline:none}.attach,.send{height:44px;display:grid;place-items:center;border-radius:14px;background:#172943;border:1px solid #29405e;color:white}.send{border:0;background:var(--accent);color:#07120d;font-weight:900}.composer-hint{color:var(--muted);font-size:.68rem;text-align:center;margin-top:6px}
.image-preview{position:relative;width:max-content;margin:0 0 8px auto}.image-preview img{height:100px;border-radius:12px}.image-preview button{position:absolute;top:-7px;left:-7px;width:25px;height:25px;border-radius:50%;border:0;background:#ef5c5c;color:white}
.settings-card label,dialog label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:.84rem;margin-bottom:13px}.settings-card input,.settings-card textarea,dialog input,dialog textarea{width:100%;background:#0c1726;color:white;border:1px solid var(--line);border-radius:12px;padding:11px;outline:none}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.settings-card .primary{width:100%}.status-pill{padding:10px;border-radius:12px;background:#0d1a2b;margin:12px 0;font-size:.82rem}.file-label{display:inline-block;text-align:center}
dialog{width:min(92vw,520px);border:1px solid var(--line);background:#0e1929;color:white;border-radius:20px;padding:18px}dialog::backdrop{background:rgba(2,6,12,.72);backdrop-filter:blur(4px)}.close-btn{border:0;background:none;color:white;font-size:1.5rem}.dialog-head{margin-bottom:16px}
.hidden{display:none!important}
@media(min-width:600px){.stats-grid{grid-template-columns:repeat(4,1fr)}.hero-card{padding:24px}.quick-actions{gap:12px}}
