/* Yedimmi web — tasarım dili ekran görüntülerinden: koyu yeşil başlık, krem zemin, mint vurgu */
:root{
  --bg:#f1efea;--card:#fff;--ink:#151d19;--muted:#6f7a74;--line:#e7e4dd;--soft:#efeeea;
  --green:#2ecc8a;--green-d:#1aa572;--mint:#d3f3e4;--hdr1:#1c5541;--hdr2:#26694f;--dark:#12261d;--pill:#1a1a1a;
  --orange:#f28c57;--blue:#3b82f6;--blue-s:#e8f0fe;--red:#e4574f;--red-s:#fde7e5;--yellow:#f3a63c;--yellow-s:#fdf0d8;
  --p:#f26b6b;--c:#f5a04a;--f:#4fd1c5;--shadow:0 2px 10px rgba(20,40,30,.07);--outer:#e0ddd5;
}
:root[data-theme=dark]{
  --bg:#0e1411;--card:#18211c;--ink:#eaf1ed;--muted:#94a59b;--line:#27352d;--soft:#212d26;
  --mint:#173a2b;--hdr1:#123729;--hdr2:#194a37;--pill:#eaf1ed;--blue-s:#172640;--red-s:#3a1e1c;--yellow-s:#3a2f17;--shadow:0 2px 10px rgba(0,0,0,.4);--outer:#070b09;
}
@media (prefers-color-scheme:dark){:root[data-theme=auto]{
  --bg:#0e1411;--card:#18211c;--ink:#eaf1ed;--muted:#94a59b;--line:#27352d;--soft:#212d26;
  --mint:#173a2b;--hdr1:#123729;--hdr2:#194a37;--pill:#eaf1ed;--blue-s:#172640;--red-s:#3a1e1c;--yellow-s:#3a2f17;--shadow:0 2px 10px rgba(0,0,0,.4);--outer:#070b09;}}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{color-scheme:light dark}
:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}
body{margin:0;background:var(--outer);color:var(--ink);font:16px/1.4 Roboto,"Segoe UI",system-ui,-apple-system,sans-serif}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none;padding:0}
input,textarea,select{font:inherit;color:inherit}
h1,h2,h3,p{margin:0}
.shell{max-width:520px;margin:0 auto;min-height:100vh;background:var(--bg);position:relative;padding-bottom:120px;box-shadow:0 0 40px rgba(0,0,0,.12)}
.hide{display:none!important}
svg{display:block}
.ico{width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ---------- başlık ---------- */
.hdr{background:linear-gradient(160deg,var(--hdr1),var(--hdr2));color:#fff;border-radius:0 0 34px 34px;padding:calc(env(safe-area-inset-top) + 16px) 16px 22px;position:relative;overflow:hidden}
.hdr:after{content:"";position:absolute;right:-80px;top:20px;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.04);pointer-events:none}
.hdr.small{padding-bottom:16px}
.hrow{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;position:relative;z-index:1}
.hdate{font-size:13px;color:rgba(255,255,255,.62);margin-bottom:2px}
.logo{font-size:34px;font-weight:800;letter-spacing:-1.2px;line-height:1}
.logo b{color:var(--green);font-weight:800}
.chips{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.chip{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-radius:12px;background:rgba(255,255,255,.12);font-weight:700;font-size:14px;color:#fff;white-space:nowrap}
.chip.prem{background:rgba(228,87,79,.18);border:1px solid rgba(228,87,79,.45);color:#ff8a83}
.chip.tara{background:var(--green);color:#0d2a1e}
.chip.lang{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:rgba(255,255,255,.85)}
.week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:22px;position:relative;z-index:1}
.wd{display:flex;flex-direction:column;align-items:center;gap:5px;color:rgba(255,255,255,.55);font-size:13px;font-weight:600}
.wd .n{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;font-size:19px;font-weight:700;color:rgba(255,255,255,.7)}
.wd.sel{color:#fff}.wd.sel .n{background:var(--green);color:#0d2a1e}
.wd .dot{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.28)}.wd .dot.off{background:transparent}
.wd.fut .n{opacity:.55}
.sum{display:grid;grid-template-columns:1fr 262px 1fr;align-items:center;margin-top:20px;position:relative;z-index:1;gap:4px}
.sum .col{display:flex;flex-direction:column;gap:22px}
.sum .col.r{text-align:right}
.big{font-size:34px;font-weight:800;line-height:1}
.lab{font-size:15px;color:rgba(255,255,255,.62);margin-top:5px}
.gr{color:var(--green)}.or{color:var(--orange)}
.ring{position:relative;width:262px;height:262px}
.ring svg{width:100%;height:100%}
.ring .mid{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.ring .num{font-size:66px;font-weight:800;line-height:1;letter-spacing:-2px}
.ring .cap{font-size:14px;letter-spacing:5px;font-weight:700;color:rgba(255,255,255,.62);margin-top:8px}
.ring .pct{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);background:#0b1f17;border:2px solid rgba(46,204,138,.35);color:var(--yellow);font-weight:800;font-size:22px;padding:2px 20px;border-radius:14px}
@media (max-width:420px){
  .sum{grid-template-columns:1fr 200px 1fr}.ring{width:200px;height:200px}.ring .num{font-size:50px}.ring .cap{font-size:11px;letter-spacing:3px}.ring .pct{font-size:18px}
  .big{font-size:27px}.lab{font-size:13px}.logo{font-size:29px}.chip{height:34px;padding:0 9px;font-size:13px}.wd .n{width:38px;height:38px;font-size:17px}
}
@media (max-width:360px){.sum{grid-template-columns:1fr 170px 1fr}.ring{width:170px;height:170px}.ring .num{font-size:42px}.hrow{flex-wrap:wrap}}

/* ---------- sekmeler ---------- */
.tabs{display:flex;gap:10px;padding:18px 16px 4px}
.tab{flex:1;height:52px;border-radius:18px;border:2px solid var(--line);background:var(--card);font-weight:800;color:var(--muted);font-size:17px;box-shadow:var(--shadow)}
.tab.on{background:var(--pill);color:var(--bg);border-color:var(--pill)}
.tab.medal{flex:0 0 56px;font-size:24px}
.sec{padding:0 16px}
.card{background:var(--card);border-radius:26px;padding:20px;box-shadow:var(--shadow);margin:14px 16px}
.card.tight{padding:14px 16px}
.h2{font-size:20px;font-weight:800;display:flex;align-items:center;gap:10px}
.sub{color:var(--muted);font-size:14px}
.eyebrow{font-size:13px;letter-spacing:2.5px;font-weight:800;color:var(--muted);text-transform:uppercase}
.divider{display:flex;align-items:center;gap:12px;margin:22px 16px 0;color:var(--muted);font-size:13px;letter-spacing:3px;font-weight:800}
.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}

/* ---------- adım / su ---------- */
.steps-top{display:flex;justify-content:space-between;align-items:center}
.steps-num{font-size:60px;font-weight:800;line-height:1;letter-spacing:-2px}
.steps-num small{font-size:20px;font-weight:600;color:var(--muted);letter-spacing:0;margin-left:6px}
.mini{display:flex;flex-direction:column;align-items:center;gap:4px;font-weight:800;font-size:22px}
.mini i{font-style:normal;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-size:30px}
.mini span{font-size:15px;font-weight:500;color:var(--muted)}
.bar{height:12px;border-radius:8px;background:var(--soft);overflow:hidden;margin-top:16px}
.bar>i{display:block;height:100%;border-radius:8px;background:var(--orange)}
.msg{margin-top:14px;padding:14px 16px;border-radius:16px;font-weight:600;font-size:16px}
.msg.or{background:#fdeee6;color:var(--orange)}
:root[data-theme=dark] .msg.or{background:#3a2419}
.water-top{display:flex;justify-content:space-between;align-items:flex-start}
.water-top .ml{font-size:60px;font-weight:800;line-height:1;letter-spacing:-2px}
.water-top .ml small{font-size:22px;color:var(--muted);letter-spacing:0;font-weight:600;margin-left:6px}
.drops{display:flex;flex-wrap:wrap;gap:10px 16px;margin:20px 0;justify-content:flex-start}
.drop{width:38px;height:48px;color:#bcd0f0}.drop.on{color:var(--blue)}
.wbtns{display:flex;gap:12px}
.wminus{width:100px;height:62px;border-radius:20px;background:var(--soft);font-size:28px;color:var(--muted)}
.wplus{flex:1;height:62px;border-radius:20px;background:var(--blue);color:#fff;font-weight:800;font-size:20px}
.wplus small{opacity:.75;font-weight:600;margin-left:8px;font-size:17px}
.hint{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:14px;background:var(--blue-s);color:var(--blue);font-weight:600}

/* ---------- makro / öğün ---------- */
.macros{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 16px}
.mac{background:var(--card);border-radius:24px;padding:14px 8px;text-align:center;box-shadow:var(--shadow)}
.mac .r{width:100px;height:100px;margin:0 auto;position:relative}
.mac .r span{position:absolute;inset:0;display:grid;place-items:center;font-size:24px;font-weight:700}
.mac b{display:flex;align-items:center;justify-content:center;gap:5px;font-size:17px;margin-top:8px}
.mac small{color:var(--muted);font-size:16px}
@media (max-width:420px){.mac .r{width:76px;height:76px}.mac .r span{font-size:19px}.mac b{font-size:14px}.mac small{font-size:13px}}
.meal{display:grid;grid-template-columns:76px 1fr 72px;gap:16px;align-items:center;position:relative;padding:8px 0}
.meal .ic{width:76px;height:76px;border-radius:22px;background:var(--soft);display:grid;place-items:center;color:var(--muted);font-size:34px}
.meal .ic.done{background:var(--mint);color:var(--green-d)}
.meal .nm{font-size:22px;font-weight:800;color:var(--muted)}
.meal.has .nm{color:var(--ink)}
.meal .tg{color:var(--muted);margin:2px 0 8px}
.meal .pb{height:9px;border-radius:6px;background:var(--soft);overflow:hidden}.meal .pb i{display:block;height:100%;background:var(--green);border-radius:6px}
.meal .pb.over i{background:var(--red)}
.addb{width:70px;height:70px;border-radius:22px;background:linear-gradient(145deg,#1ed6b0,#13b895);color:#fff;font-size:34px;display:grid;place-items:center;box-shadow:0 6px 14px rgba(19,184,149,.35)}
.tl{position:absolute;left:37px;top:84px;bottom:-8px;width:2px;background:var(--line)}
.mitem{display:flex;justify-content:space-between;gap:10px;font-size:15px;padding:4px 0 4px 92px;color:var(--muted)}
.mitem b{font-weight:600;color:var(--ink)}
.mdel{color:var(--muted);font-size:14px;padding:4px 0 6px 92px}
.mdel button{color:var(--red);font-weight:600}
.recent-h{display:flex;justify-content:space-between;align-items:center;margin:26px 16px 12px}
.recent-h .t{font-size:24px;font-weight:800}
.recent-h a,.link{color:var(--green-d);font-weight:700;cursor:pointer}
.hs{display:flex;gap:14px;overflow-x:auto;padding:0 16px 14px;scroll-snap-type:x mandatory}
.hs::-webkit-scrollbar{display:none}
.rc{flex:0 0 280px;background:var(--card);border-radius:26px;box-shadow:var(--shadow);overflow:hidden;scroll-snap-align:start}
.rc .im{height:170px;background:var(--soft);display:grid;place-items:center;color:var(--muted);font-size:54px;position:relative;background-size:cover;background-position:center}
.rc .dt{position:absolute;right:12px;top:12px;background:rgba(0,0,0,.45);color:#fff;font-weight:700;font-size:14px;padding:3px 10px;border-radius:12px}
.rc .bd{padding:14px 16px}
.rc .k{display:flex;justify-content:space-between;align-items:baseline}
.rc .k b{font-size:28px;color:var(--green-d)}.rc .k span{color:var(--muted)}
.rc .li{display:flex;justify-content:space-between;font-weight:600;margin-top:6px;gap:8px}.rc .li em{font-style:normal;color:var(--muted);white-space:nowrap}
.rc .li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pm{display:flex;gap:10px;margin-top:10px;font-size:14px;font-weight:800}
.pm .p{color:var(--p)}.pm .c{color:var(--c)}.pm .f{color:#3aa6d9}
.rc .ft{border-top:1px solid var(--line);padding:10px;text-align:center;color:var(--muted)}
.rc .ft button{padding:4px 18px}
.more-note{color:var(--muted);font-size:14px;margin-top:6px}

/* ---------- alt gezinme ---------- */
.nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:520px;background:var(--card);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1.1fr 1fr 1fr;padding:8px 6px calc(env(safe-area-inset-bottom) + 8px);z-index:20}
.nav button{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted);font-size:14px;font-weight:600;padding-top:4px}
.nav button .ico{font-size:30px}
.nav button.on{color:var(--green-d)}
.nav button.on:after{content:"";width:26px;height:4px;border-radius:3px;background:var(--green);margin-top:2px}
.nav .fab{position:relative}
.nav .fab i{position:absolute;top:-46px;width:80px;height:80px;border-radius:50%;background:var(--dark);border:5px solid var(--bg);display:grid;place-items:center;color:var(--green);font-size:40px;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.nav .fab span{margin-top:38px;color:var(--green-d)}

/* ---------- ekranlar / kaplama ---------- */
#ov{position:fixed;inset:0;z-index:50;display:none}
#ov.open{display:block}
.scr{position:absolute;inset:0;overflow-y:auto;background:var(--bg);padding:calc(env(safe-area-inset-top) + 24px) 18px 40px}
.scr .in{max-width:520px;margin:0 auto}
.scr.dim{background:rgba(0,0,0,.45)}
.sheet-wrap{position:absolute;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:flex-end;justify-content:center}
.sheet{background:var(--card);width:100%;max-width:520px;border-radius:28px 28px 0 0;padding:22px 20px calc(env(safe-area-inset-bottom) + 22px);max-height:90vh;overflow-y:auto}
.sheet h3{font-size:22px;font-weight:800;margin-bottom:14px}
.top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px}
.top h1{font-size:34px;font-weight:800;letter-spacing:-1px;line-height:1.1}
.x{width:44px;height:44px;display:grid;place-items:center;font-size:32px;flex:0 0 auto}
.back{display:inline-flex;align-items:center;gap:6px;color:var(--green-d);font-weight:700;font-size:18px;margin-bottom:14px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tile{background:var(--card);border-radius:28px;padding:26px 14px 20px;text-align:center;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;gap:10px}
.tile i{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;font-size:38px;font-style:normal}
.tile b{font-size:20px}.tile span{color:var(--muted);font-size:15px;line-height:1.35}
.scan-h{font-size:14px;letter-spacing:3px;font-weight:800;color:var(--muted);margin:28px 4px 12px}
.srow{background:var(--card);border-radius:24px;padding:16px;box-shadow:var(--shadow);margin-bottom:14px}
.srow .t{display:flex;align-items:center;gap:14px}
.srow .pl{width:62px;height:62px;border-radius:20px;background:var(--mint);display:grid;place-items:center;font-size:28px;flex:0 0 auto}
.srow .n{flex:1;min-width:0}.srow .n b{font-size:19px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.srow .n small{color:var(--muted)}
.srow .kc{text-align:right}.srow .kc b{font-size:24px;display:block;font-weight:600}.srow .kc small{color:var(--muted)}
.srow .pm2{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
.pl2{display:flex;gap:8px}.pl2 span{padding:5px 12px;border-radius:12px;font-weight:700;font-size:15px}
.pl2 .p{background:var(--red-s);color:var(--p)}.pl2 .c{background:#fdeadb;color:#e58a2f}.pl2 .f{background:var(--yellow-s);color:#d69a10}
:root[data-theme=dark] .pl2 .c{background:#3a2a17}
.plus{width:36px;height:36px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:22px;font-weight:800}
.banner{display:flex;align-items:center;gap:16px;padding:20px;border-radius:24px;background:var(--mint);margin-top:8px;cursor:pointer}
.banner .em{font-size:44px}.banner b{color:var(--green-d);font-size:21px;display:block}.banner span{color:var(--muted)}
.banner.pink{background:var(--red-s);justify-content:center;color:var(--red);font-weight:800;font-size:19px;margin-top:14px}
.chipsx{display:flex;gap:10px;overflow-x:auto;padding:4px 0 12px}.chipsx::-webkit-scrollbar{display:none}
.sug{flex:0 0 auto;padding:12px 18px;border-radius:26px;background:var(--mint);border:1.5px solid rgba(46,204,138,.5);color:var(--green-d);font-weight:700;white-space:nowrap}
.ta{width:100%;min-height:150px;border-radius:24px;border:2px solid var(--line);background:var(--soft);padding:18px;font-size:19px;resize:vertical;outline:none}
.ta:focus,.inp:focus{border-color:var(--green)}
.cnt{text-align:right;color:var(--muted);margin:6px 4px 0}
.opt-h{display:flex;align-items:center;gap:8px;font-weight:800;letter-spacing:1.5px;font-size:15px;color:var(--muted);margin:24px 0 12px;text-transform:uppercase}
.opt-h small{font-weight:500;letter-spacing:0;text-transform:none}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.opt{display:flex;align-items:center;gap:10px;height:54px;padding:0 16px;border-radius:20px;border:1.5px solid var(--line);background:var(--card);font-weight:700;font-size:18px;color:var(--muted);box-shadow:var(--shadow)}
.opt.on{border-color:var(--green);color:var(--green-d);background:var(--mint)}
.btns{display:flex;gap:14px;margin-top:26px}
.btn{height:60px;border-radius:20px;font-weight:800;font-size:19px;flex:1;display:flex;align-items:center;justify-content:center;gap:8px}
.btn.g{background:var(--green);color:#0d2a1e}.btn.gr{background:var(--soft);color:var(--muted)}.btn.dk{background:var(--dark);color:var(--green)}.btn.rd{background:var(--red-s);color:var(--red)}
:root[data-theme=dark] .btn.dk{background:#0a1f16}
.btn[disabled]{opacity:.45;pointer-events:none}
.btn.sm{height:46px;font-size:16px;border-radius:16px;flex:0 0 auto;padding:0 18px}

/* ---------- profil ---------- */
.pc{display:block;width:calc(100% - 32px);margin:14px 16px;border-radius:26px;padding:22px;text-align:left;color:#fff;background:linear-gradient(135deg,#0f2a20,#17382b);position:relative;overflow:hidden}
.pc .r1{display:flex;align-items:center;gap:16px}
.pc .em{width:82px;height:82px;border-radius:24px;background:rgba(255,255,255,.1);display:grid;place-items:center;font-size:40px;flex:0 0 auto}
.pc b{font-size:23px;display:block;color:var(--green);font-weight:800}
.pc span.d{color:rgba(255,255,255,.72);font-size:16px;display:block;margin-top:3px}
.pc .chev{margin-left:auto;color:var(--green);font-size:26px}
.pc .pills{display:flex;gap:10px;margin-top:16px}
.pc .pills span{padding:10px 16px;border-radius:14px;background:rgba(255,255,255,.1);color:rgba(255,255,255,.65);font-weight:700}
.pc.blue{background:linear-gradient(135deg,#0f1c46,#152a5c)}.pc.blue b{color:#38d2c2}
.pc.orange b{color:var(--orange)}
.pc.purple b{color:#8b8cf5}
.pc.black{background:linear-gradient(135deg,#0d1612,#111c17);border:2px solid #2a3a32}
.pc.gold{background:linear-gradient(135deg,#1e3a2c,#12251b)}.pc.gold b{color:#f3d25f}
.pc.indigo{background:linear-gradient(135deg,#1c1640,#160f35)}.pc.indigo b{color:#c1a5ff}
.tag{margin-left:auto;background:rgba(255,255,255,.14);padding:8px 16px;border-radius:14px;font-weight:800;font-size:16px}
.pcard{display:flex;gap:16px;align-items:center}
.pcard .lg{width:86px;height:86px;border-radius:24px;background:#0f1f3b;display:grid;place-items:center;color:#2ee0a6;font-weight:800;text-align:center;font-size:12px;line-height:1.1;flex:0 0 auto}
.pcard h3{font-size:23px;font-weight:800}
.kv{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;border-top:1px solid var(--line);margin-top:18px;padding-top:16px}
.kv+.kv{border:0;margin:0;padding:0}
.kv div+div{border-left:1px solid var(--line)}
.kv small{display:block;letter-spacing:2px;color:var(--muted);font-weight:700;font-size:13px}
.kv b{font-size:34px;font-weight:800;line-height:1.2}.kv b small{display:inline;font-size:16px;letter-spacing:0;font-weight:500}
.kv em{font-style:normal;display:block;font-weight:700;color:var(--green-d)}
.row3{display:flex;justify-content:space-between;align-items:flex-end;margin:12px 0}
.row3 .s{text-align:center}.row3 b{font-size:27px;font-weight:800}.row3 .s.mid b{color:var(--green-d);font-size:33px}.row3 small{color:var(--muted);display:block}
.plist .row{display:flex;justify-content:space-between;align-items:center;padding:18px 4px;border-bottom:1px solid var(--line);font-size:19px;cursor:pointer}
.plist .row:last-child{border-bottom:0}
.plist .row span{color:var(--muted)}.plist .row b{font-weight:800;display:flex;align-items:center;gap:10px}.plist .row b .ico{color:var(--green-d);font-size:20px}
.plist .row b.g{color:var(--green-d)}
.two{display:flex;gap:14px;margin-top:14px}
.tg-row{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);font-size:19px}
.tg-row:last-child{border:0}
.sw{width:76px;height:44px;border-radius:24px;background:var(--line);position:relative;transition:.2s;flex:0 0 auto}
.sw:after{content:"";position:absolute;top:4px;left:4px;width:36px;height:36px;border-radius:50%;background:#fff;transition:.2s}
.sw.on{background:var(--green)}.sw.on:after{left:36px}
.soon{padding:6px 14px;border-radius:14px;background:var(--soft);color:var(--muted);font-weight:800;font-size:13px;letter-spacing:1px}
.grey{opacity:.55}

/* ---------- hafta / analiz ---------- */
.chart{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;height:300px;padding-top:26px;position:relative}
.chart .g{position:absolute;left:0;right:0;border-top:2px dashed var(--yellow);opacity:.7}
.bc{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;position:relative;cursor:pointer;z-index:1}
.bc .v{font-size:14px;font-weight:800;color:var(--green-d);margin-bottom:6px;min-height:18px}
.bc .b{width:100%;max-width:70px;border-radius:14px;background:var(--mint);border:2.5px solid var(--green);min-height:4px}
.bc.over .b{background:var(--red-s);border-color:var(--red)}.bc.over .v{color:var(--red)}
.bc.empty .b{background:var(--soft);border-color:var(--soft);height:6px!important}
.bc .d{margin-top:12px;font-size:16px;color:var(--muted);font-weight:600}
.bc.today .d{color:var(--green-d);font-weight:800}
.bc.today .d:after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:var(--green);margin:3px auto 0}
.legend{display:flex;justify-content:center;gap:18px;color:var(--muted);margin-top:14px;font-size:16px;flex-wrap:wrap}
.legend i{display:inline-block;width:14px;height:14px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.greenc{background:linear-gradient(160deg,#35d692,#2ac583);color:#fff;border-radius:26px;margin:14px 16px;overflow:hidden;box-shadow:var(--shadow)}
.greenc .hd{padding:20px;display:flex;align-items:center;gap:14px}
.greenc .hd .ib{width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,.22);display:grid;place-items:center;font-size:30px;flex:0 0 auto}
.greenc .hd small{letter-spacing:3px;font-weight:800;opacity:.85;font-size:13px;display:block}
.greenc .hd b{font-size:25px;display:block;line-height:1.2}
.greenc .hd .btn{background:rgba(255,255,255,.22);color:#fff;flex:0 0 auto}
.greenc .bd{background:#f3fdf8;color:var(--ink);margin:0;padding:12px 8px;border-top:1px solid rgba(255,255,255,.4)}
:root[data-theme=dark] .greenc .bd{background:#12251c}
.tiles3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 16px}
.t3{border-radius:24px;padding:18px 8px;text-align:center;font-weight:800;font-size:28px;box-shadow:var(--shadow);border:1.5px solid transparent}
.t3 small{display:block;font-size:14px;font-weight:700;margin-top:4px;letter-spacing:.5px}
.t3 .em{font-size:36px;display:block;margin-bottom:4px}
.t3.blue{background:#dfe9f5;color:#3b82c4;border-color:#c5d8ee}.t3.or{background:#f8e6dc;color:var(--orange);border-color:#f3d3c1}.t3.ye{background:#f8ebd3;color:#e59a1b;border-color:#f1dcb1}
:root[data-theme=dark] .t3.blue{background:#172a40;border-color:#22405f}:root[data-theme=dark] .t3.or{background:#3a2419;border-color:#5a3a26}:root[data-theme=dark] .t3.ye{background:#3a2f17;border-color:#594a25}
.t3.w{background:var(--card);color:var(--ink)}.t3.w small{color:var(--muted);font-weight:500;font-size:15px}.t3.w .r{color:var(--red)}
.tip{margin:14px 16px;padding:18px;border-radius:22px;text-align:center;font-weight:700;font-size:18px;background:#e2f6ec;border:1.5px solid #bfe9d3;color:var(--green-d)}
.tip.bad{background:var(--red-s);border-color:#f3c3bf;color:var(--red)}
:root[data-theme=dark] .tip{background:#123125;border-color:#1f4f3b}
.score{display:flex;gap:18px;align-items:center}
.score .c{width:120px;height:120px;border-radius:50%;border:6px solid var(--yellow);background:var(--yellow-s);display:grid;place-items:center;font-size:42px;font-weight:800;color:var(--yellow);flex:0 0 auto}
.score b{font-size:26px}.score small{color:var(--muted);display:block}
.trend .tr{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;margin:8px 0;color:var(--ink);font-weight:800}
.trend .bars{display:flex;flex-direction:column;gap:4px}.trend .bars i{display:block;height:8px;border-radius:5px;background:var(--soft)}.trend .bars i b{display:block;height:100%;border-radius:5px}
.task{border-radius:22px;padding:16px;background:var(--soft);margin-top:14px;border:2px solid transparent}
.task.done{background:#eafaf2;border-color:#8fe0b9}
:root[data-theme=dark] .task.done{background:#123125;border-color:#1f6b4c}
.task .r{display:flex;align-items:center;gap:14px}.task .em{font-size:34px}.task .tx{flex:1}.task b{font-size:19px;display:block}.task small{color:var(--muted)}
.task.done b{color:var(--green-d)}.task .c{font-weight:800;font-size:19px}.task.done .c{color:var(--green-d)}
.task .bar{margin-top:12px;height:8px}.task .bar i{background:var(--green)}
.donut{display:flex;align-items:center;gap:18px}
.donut .lg{flex:1}.donut .lr{display:flex;align-items:center;gap:10px;padding:5px 0;font-size:19px;font-weight:600}
.donut .lr i{width:6px;height:26px;border-radius:3px;flex:0 0 auto}.donut .lr span{flex:1}.donut .lr b{font-weight:800}.donut .lr small{font-size:14px;color:var(--muted)}
.macro3{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;margin-top:12px}
.macro3 b{font-size:30px;font-weight:800;display:block}.macro3 span{color:var(--muted);font-size:18px}
.airep{background:#fff9f4;border-radius:26px;padding:22px;margin:14px 16px;color:#6b4a2e;box-shadow:var(--shadow)}
:root[data-theme=dark] .airep{background:#2a231b;color:#e8cdb3}
.airep h3{display:flex;align-items:center;gap:10px;font-size:19px;color:#8a5b34;margin-bottom:12px}
.airep p{font-size:19px;line-height:1.55;white-space:pre-wrap}
.airep .btn{margin-top:18px;width:100%}
.stat-big{display:flex;align-items:center;gap:16px}.stat-big i{width:76px;height:76px;border-radius:50%;background:var(--red-s);color:var(--red);display:grid;place-items:center;font-size:34px;font-style:normal}
.stat-big small{font-weight:800;letter-spacing:1px;color:var(--muted);font-size:16px}.stat-big b{font-size:34px;display:block;font-weight:800}.stat-big span{color:var(--muted)}
.sq{background:var(--card);border-radius:24px;padding:18px 8px;text-align:center;box-shadow:var(--shadow);font-weight:800;font-size:32px}
.sq small{display:block;font-size:16px;color:var(--muted);font-weight:500;margin-top:2px;line-height:1.2}.sq .em{font-size:32px;display:block}
.h3s{display:flex;align-items:center;gap:10px;font-size:14px;letter-spacing:2px;font-weight:800;color:var(--muted);text-transform:uppercase}
.top5 .tr{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);font-size:21px;font-weight:700}
.top5 .tr:last-child{border:0}
.top5 .no{width:40px;height:40px;border-radius:50%;background:#fdf0dc;color:var(--yellow);display:grid;place-items:center;font-weight:800;font-size:18px}
.top5 .tr span{flex:1}.top5 .tr em{font-style:normal;background:var(--soft);color:var(--muted);padding:8px 14px;border-radius:14px;font-size:17px;font-weight:600}
.hist{display:flex;align-items:center;gap:16px;padding:16px 4px;border-bottom:1px solid var(--line);cursor:pointer}
.hist:last-of-type{border-bottom:0}
.hist .cir{width:56px;height:56px;border-radius:50%;background:var(--mint);color:var(--green-d);display:grid;place-items:center;font-size:22px;font-weight:800;flex:0 0 auto}
.hist .cir.over{background:var(--red-s);color:var(--red)}.hist .cir.zero{background:var(--soft);color:var(--muted)}
.hist .tx{flex:1}.hist .tx b{font-size:20px;display:block}.hist .tx span{color:var(--muted)}
.hist .k{text-align:right;font-size:24px;font-weight:600}.hist .k small{display:block;font-size:15px;color:var(--muted);font-weight:400}.hist .k.over{color:var(--red)}
.hist .chev{color:var(--muted)}
.mon .t3s{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}
.mon .t3s div{background:var(--soft);border-radius:18px;padding:16px 4px;text-align:center;color:var(--muted)}.mon .t3s b{display:block;font-size:34px;font-weight:800}
.mon .ins{display:flex;gap:12px;align-items:flex-start;margin:14px 0;font-size:19px;line-height:1.35}
.mon .ins i{font-style:normal;font-size:24px;flex:0 0 auto}
.cmp{width:100%;border-collapse:collapse;margin-top:8px}
.cmp td,.cmp th{padding:16px 4px;border-bottom:1px solid var(--line);text-align:center;font-weight:600}
.cmp th{color:var(--muted);font-weight:700;font-size:16px;text-align:center}.cmp th:first-child,.cmp td:first-child{text-align:left}
.cmp td:nth-child(2){font-size:24px;font-weight:800}
.dn{color:var(--green-d)}.up{color:var(--red)}
.srcs .tr{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:19px;font-weight:700}
.srcs .tr b{color:var(--green-d);width:20px}.srcs .tr span{flex:1}.srcs .tr em{font-style:normal;background:var(--mint);color:var(--green-d);padding:6px 12px;border-radius:12px;font-size:16px;font-weight:800}

/* ---------- akışlar ---------- */
.res-item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px 0;border-bottom:1px solid var(--line);align-items:center}
.res-item b{font-size:18px;display:block}.res-item small{color:var(--muted);display:block}
.res-item .st{display:flex;align-items:center;gap:6px}
.res-item .st button{width:34px;height:34px;border-radius:12px;background:var(--soft);font-weight:800;font-size:18px}
.res-item .kc{font-weight:800;font-size:19px;min-width:64px;text-align:right}
.bigk{font-size:52px;font-weight:800;color:var(--green-d);line-height:1}
.inp{width:100%;height:56px;border-radius:18px;border:2px solid var(--line);background:var(--soft);padding:0 16px;font-size:19px;outline:none}
.lbl{display:block;font-weight:700;color:var(--muted);margin:14px 0 6px;font-size:15px}
.seg{display:flex;gap:8px;flex-wrap:wrap}
.seg button{padding:12px 16px;border-radius:16px;border:1.5px solid var(--line);background:var(--card);font-weight:700;color:var(--muted)}
.seg button.on{border-color:var(--green);background:var(--mint);color:var(--green-d)}
.chat{display:flex;flex-direction:column;gap:12px;padding-bottom:110px}
.bub{max-width:86%;padding:14px 16px;border-radius:20px;line-height:1.45;white-space:pre-wrap;font-size:17px}
.bub.u{align-self:flex-end;background:var(--green);color:#0d2a1e;border-bottom-right-radius:6px}
.bub.a{align-self:flex-start;background:var(--card);box-shadow:var(--shadow);border-bottom-left-radius:6px}
.chatbar{position:fixed;left:0;right:0;bottom:0;padding:12px 16px calc(env(safe-area-inset-bottom) + 12px);background:var(--bg);border-top:1px solid var(--line)}
.chatbar .w{max-width:520px;margin:0 auto;display:flex;gap:10px}
.chatbar .inp{flex:1}
.day-plan{margin-bottom:12px}.day-plan summary{cursor:pointer;font-weight:800;font-size:20px;list-style:none;display:flex;justify-content:space-between;align-items:center}
.day-plan summary::-webkit-details-marker{display:none}
.day-plan .pm-row{padding:12px 0;border-top:1px solid var(--line)}
.day-plan .pm-row b{font-size:17px;display:block}.day-plan .pm-row small{color:var(--muted);display:block;margin-top:2px;line-height:1.35}
.tag2{display:inline-block;padding:3px 10px;border-radius:10px;background:var(--mint);color:var(--green-d);font-weight:800;font-size:13px;letter-spacing:.5px;text-transform:uppercase;margin-right:6px}
.badge{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.badge .em{width:64px;height:64px;border-radius:20px;background:var(--yellow-s);display:grid;place-items:center;font-size:32px;flex:0 0 auto}
.badge.lock .em{filter:grayscale(1);opacity:.4;background:var(--soft)}
.badge b{font-size:19px;display:block}.badge small{color:var(--muted)}
.badge .bar{height:6px;margin-top:6px}.badge .bar i{background:var(--green)}
.lay{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:19px;font-weight:700}
.lay span{flex:1}.lay button.a{width:40px;height:40px;border-radius:12px;background:var(--soft);font-size:18px}
.empty{padding:26px 10px;text-align:center;color:var(--muted)}
.plan-card{border-radius:24px;padding:22px;background:linear-gradient(140deg,var(--dark),#1c3d2e);color:#fff;margin-bottom:16px}
.plan-card b{color:var(--green)}
.auth{max-width:440px;margin:0 auto;padding:calc(env(safe-area-inset-top) + 40px) 22px 40px}
.auth .logo{font-size:48px;color:var(--ink);text-align:center}
.auth .tag{background:none;color:var(--muted);display:block;text-align:center;font-weight:500;margin:6px 0 28px;font-size:17px;padding:0}
.auth .card{margin:0}
.err{background:var(--red-s);color:var(--red);padding:12px 14px;border-radius:14px;margin-top:14px;font-weight:600}
.ob-step{font-size:14px;color:var(--muted);letter-spacing:2px;font-weight:800}
.ob-h{font-size:30px;font-weight:800;margin:8px 0 20px;letter-spacing:-.5px}
.dots{display:flex;gap:6px;margin-bottom:10px}.dots i{flex:1;height:5px;border-radius:3px;background:var(--line)}.dots i.on{background:var(--green)}
.big-opt{display:flex;align-items:center;gap:14px;padding:18px;border-radius:22px;border:2px solid var(--line);background:var(--card);width:100%;text-align:left;margin-bottom:12px;font-weight:700;font-size:19px}
.big-opt small{display:block;color:var(--muted);font-weight:500;font-size:15px}.big-opt.on{border-color:var(--green);background:var(--mint)}
.big-opt .em{font-size:30px}
#toast{position:fixed;left:50%;bottom:120px;transform:translateX(-50%) translateY(20px);background:#12261d;color:#fff;padding:12px 20px;border-radius:16px;font-weight:600;opacity:0;pointer-events:none;transition:.25s;z-index:99;max-width:88vw;text-align:center}
#toast.on{opacity:1;transform:translateX(-50%) translateY(0)}
.spin{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:sp .8s linear infinite;margin:0 auto}
@keyframes sp{to{transform:rotate(360deg)}}
.loading{padding:60px 0;text-align:center;color:var(--muted)}
.fast{display:flex;align-items:center;gap:14px}.fast .t{font-size:30px;font-weight:800}
.imgprev{width:100%;max-height:260px;object-fit:cover;border-radius:22px;margin-bottom:16px}
@media (min-width:600px){.shell{margin-top:0}}

div.d{color:var(--muted);font-size:16px;font-weight:600}div.d.today{color:var(--green-d);font-weight:800}
.sheet input[type=date],.sheet input[type=time]{min-width:0}

/* ---- düzeltmeler (412px tarayıcı testi) ---- */
.dsvg{width:150px;height:150px;flex:0 0 auto}
@media (min-width:460px){.dsvg{width:180px;height:180px}}
.donut{gap:12px}.donut .lg{min-width:0}.donut .lr{font-size:17px}.donut .lr span{min-width:0;overflow-wrap:anywhere}
.recent-h .t{display:flex;align-items:center;gap:6px;font-size:22px}.recent-h a{white-space:nowrap}
.steps-top{gap:10px}.steps-num{font-size:52px}.steps-num small{font-size:17px}
.mini{font-size:18px;white-space:nowrap}.mini i{width:54px;height:54px;font-size:26px}.mini span{font-size:14px}
@media (min-width:460px){.steps-num{font-size:60px}.mini i{width:64px;height:64px}}
.greenc .hd{flex-wrap:wrap}.greenc .hd>div{flex:1 1 150px;min-width:0}.greenc .hd b{font-size:22px}.greenc .hd .btn{margin-left:auto}
.bc .v{font-size:12px;letter-spacing:-.3px}
.t3{font-size:26px}.t3 small{font-size:12px}
.res-item{grid-template-columns:1fr}
.res-item .st{justify-content:space-between}.res-item .st .kc{order:-1;margin-right:auto;text-align:left;font-size:22px}
.mitem span{white-space:nowrap}
.meal .nm,.meal .tg{overflow:hidden;text-overflow:ellipsis}

.wsum b{font-size:20px!important;white-space:nowrap}

@media (max-width:400px){.steps-top{flex-wrap:wrap;gap:14px}.steps-top>div:last-child{width:100%;justify-content:flex-start;gap:28px}}

.auth{max-width:520px;background:var(--bg);min-height:100vh}
