:root{color-scheme:dark;--bg:#000;--panel:#101110;--border:#262825;--muted:#999f98;--green:#d4f987;--orange:#efb66d;--blue:#a2c8f1;--red:#ff9c91;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC',sans-serif;font-size:15px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#f3f5ef;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:4px}button{border:1px solid var(--border);background:#191b18;color:inherit;border-radius:12px;padding:12px 16px;min-height:44px}button:hover{background:#252921}button.primary{background:var(--green);border-color:var(--green);color:#18210c;font-weight:650}button.ghost{background:transparent}button.small{padding:7px 12px;min-height:38px;font-size:13px}.danger{color:var(--red)}a{color:var(--green);text-underline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:38px;letter-spacing:-1.5px;line-height:1.18;font-weight:600}h2{font-size:20px;letter-spacing:-.4px}h3{font-size:16px}small,.muted{color:var(--muted)}small{font-size:12px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--green);font-weight:650}.shell{max-width:1440px;margin:auto;display:grid;grid-template-columns:220px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100dvh;border-right:1px solid var(--border);padding:36px 24px;display:flex;flex-direction:column;gap:36px}.brand{font-size:21px;font-weight:650;letter-spacing:-.8px;display:flex;align-items:center;gap:10px}.brand img{width:33px;height:33px}.sidebar nav{display:grid;gap:8px}.nav{display:flex;align-items:center;gap:13px;border-color:transparent;color:#a1a69e;text-align:left;background:none}.nav svg{width:20px;height:20px}.nav.active{background:#1b2114;color:var(--green);border-color:#303c20}.sidebar .footer{margin-top:auto;font-size:11px;color:var(--muted)}.main{padding:32px 44px 80px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:30px}.status{font-size:11px;border:1px solid var(--border);padding:5px 10px;border-radius:20px;display:inline-flex;align-items:center;gap:6px}.dot{width:6px;height:6px;background:var(--green);border-radius:50%}.dateinput{background:none!important;border:0!important;padding:4px!important;width:143px!important;min-height:32px!important;color:var(--muted)!important;font-size:12px!important}.pagehead{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:28px}.pagehead p{margin-top:10px;font-size:13px;color:var(--muted)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.grid{display:grid;gap:18px}.cols2{grid-template-columns:1.3fr 1fr}.cols3{grid-template-columns:repeat(3,1fr)}.card{background:var(--panel);border:1px solid var(--border);padding:24px;border-radius:20px;min-width:0}.card + .card{margin-top:16px}.grid>.card+.card{margin-top:0}.cardtitle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.badge{font-size:10px;letter-spacing:.7px;border:1px solid #39452b;border-radius:6px;color:var(--green);padding:3px 7px}.hero{display:flex;align-items:center;gap:30px;min-height:210px}.ring{width:172px;height:172px;flex-shrink:0;border-radius:50%;background:conic-gradient(var(--green) calc(var(--p)*1%),#272c21 0);padding:8px;display:grid;place-items:center}.ringinner{background:var(--panel);width:100%;height:100%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.big{font-size:36px;font-weight:600;letter-spacing:-1.4px;line-height:1.15;font-variant-numeric:tabular-nums}.huge{font-size:49px;letter-spacing:-2px}.heroText{flex:1}.macro{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:24px}.bar{height:4px;background:#262926;border-radius:4px;margin:8px 0}.bar i{display:block;height:100%;border-radius:4px;background:var(--green)}.macro:nth-child(2){color:var(--blue)}.num{font-size:21px;letter-spacing:-.6px}.water{background:linear-gradient(140deg,#121b1c,#0d1112)}.waterbars{display:flex;gap:5px;margin:20px 0}.waterbars i{height:32px;background:#263334;flex:1;border-radius:4px}.waterbars i.on{background:var(--blue)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{padding:20px 16px;border:1px solid var(--border);border-radius:16px;background:var(--panel)}.metric strong{display:block;font-size:26px;margin:8px 0;font-weight:550}.coach{border-left:3px solid var(--green)}.coach ul{padding-left:18px;font-size:13px;color:#c9cec4}.coach li+li{margin-top:9px}.workoutPreview{position:relative;overflow:hidden}.ppl{display:flex;gap:7px;margin:20px 0}.ppl span{border:1px solid var(--border);border-radius:8px;padding:5px 13px;color:var(--muted);font-size:12px}.ppl .on{border-color:#637b3c;background:#253018;color:var(--green)}.spacer{height:20px}.empty{padding:30px 8px;text-align:center;color:var(--muted);font-size:13px}.empty strong{display:block;color:#e7eae1;font-size:16px;margin-bottom:6px}.field{display:block;color:var(--muted);font-size:12px;margin-bottom:14px}.field input,.field select,.field textarea{display:block;margin-top:6px}input,select,textarea{width:100%;background:#090a09;color:#f0f2ed;border:1px solid #363b32;border-radius:10px;padding:11px 12px;min-height:44px}input[type=checkbox]{width:21px;height:21px;min-height:0;accent-color:var(--green)}input[type=file]{font-size:12px}textarea{min-height:90px;resize:vertical}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.hint{font-size:12px;color:var(--muted);line-height:1.7}.notice{background:#1b2015;border:1px solid #3a472c;border-radius:12px;padding:13px 16px;font-size:12px;color:#d1ddbd;margin-bottom:18px}.notice.warn{background:#231a10;border-color:#554027;color:#ebc493}.pillset{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.pillset button.active{background:#29351a;color:var(--green);border-color:#586c37}.foodrow,.listrow{display:flex;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--border)}.foodrow:last-child,.listrow:last-child{border-bottom:0}.foodrow .info,.listrow .info{flex:1;min-width:0}.foodrow img{width:64px;height:64px;border-radius:12px;object-fit:cover}.foodicon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#24291d;color:var(--green);font-size:20px}.foodrow p,.listrow p{font-size:12px;color:var(--muted)}.foodsearch{max-height:270px;overflow:auto}.foodsearch button{width:100%;margin-bottom:6px;text-align:left;display:flex;justify-content:space-between;gap:8px}.ingredient{display:grid;grid-template-columns:1fr 88px 44px;gap:8px;align-items:center;margin:10px 0}.ingredient label{font-size:12px}.ingredient input{padding:8px}.summarybox{display:flex;justify-content:space-around;gap:8px;padding:16px 6px;background:#1b2114;border-radius:12px;margin:18px 0}.summarybox span{display:block;color:var(--muted);font-size:11px}.photoPreview{max-height:200px;max-width:100%;border-radius:12px;display:block;margin:12px auto}.exercise{margin-bottom:16px}.exerciseHeader{display:flex;align-items:center;justify-content:space-between;gap:8px}.sets{width:100%;border-collapse:separate;border-spacing:5px;margin-top:12px;font-variant-numeric:tabular-nums}.sets th{text-align:center;font-size:10px;color:var(--muted);font-weight:500}.sets td{text-align:center;font-size:13px}.sets input{min-width:0;width:100%;text-align:center;padding:9px 3px}.sets .done input{border-color:#556d34;background:#1a2511}.setcheck{padding:5px;width:44px}.setcheck.on{background:var(--green);color:#15200b}.diagram{width:100%;height:180px;background:#080a07;border-radius:12px;margin:12px 0}.timer{position:sticky;bottom:14px;z-index:5;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 20px;background:#d4f987;color:#17210c;border-radius:15px;box-shadow:0 8px 30px #0009}.timer button{background:#b6d575;color:#17210c;border-color:#9bbb5f}.timer strong{font-size:25px;font-variant-numeric:tabular-nums}.recipegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.recipe{padding:22px}.recipe .recipeart{height:80px;display:flex;align-items:center;gap:20px;margin:5px 0 20px;color:var(--green)}.recipeart svg{width:65px;height:65px}.recipe h3{font-size:18px}.recipe p{font-size:12px;color:var(--muted);margin:8px 0 16px}.chart{width:100%;height:160px;display:block;margin:14px 0}.chart text{fill:#a6ad9f;font:10px sans-serif}.tablewrap{overflow:auto}.history{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.history td,.history th{padding:12px;text-align:left;border-bottom:1px solid var(--border)}.history th{color:var(--muted);font-weight:400}.viewlog{max-height:400px;overflow:auto}.statrow{display:flex;justify-content:space-between;gap:10px;margin:9px 0;font-size:13px}details{margin-top:18px}summary{cursor:pointer;font-size:13px;padding:8px 0;color:#c9d4bd}dialog{border:1px solid #3c4335;border-radius:22px;background:#101210;color:#f3f5ef;padding:26px;width:min(620px,calc(100% - 24px));max-height:90dvh;overflow:auto;overscroll-behavior:contain}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}.modalhead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}.modalhead button{border:0;background:none;font-size:23px;padding:4px;min-width:44px}.modalactions{display:flex;gap:10px;justify-content:end;margin-top:20px}.modalactions button{flex:1}#toast{position:fixed;left:50%;bottom:100px;transform:translateX(-50%);max-width:90%;padding:13px 20px;background:#eef4e6;color:#17200f;border-radius:12px;z-index:100;display:none;font-size:13px;box-shadow:0 4px 30px #000a}.loading{padding:80px 30px;text-align:center;letter-spacing:3px}.mobilebrand{display:none}.footnote{margin-top:22px;color:#747d6e;font-size:11px}.offline{color:var(--orange)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.progressline{height:5px;background:#282e23;border-radius:5px;margin:16px 0}.progressline i{display:block;height:5px;background:var(--green)}.recipeText{white-space:pre-line}.install{display:flex;gap:12px;align-items:center}.checkrow{display:flex;align-items:center;gap:12px;font-size:13px;padding:12px 0}.checkrow.done span{text-decoration:line-through;color:var(--muted)}.checkrow span{flex:1}.recipe-tools{font-size:22px;font-weight:600;color:#7b8b65}.error{color:var(--red);font-size:13px;margin:12px 0}.chartkey{font-size:11px;color:var(--muted)}
@media(min-width:1300px){.main{padding:38px 60px 80px}}@media(max-width:1050px){.shell{grid-template-columns:180px 1fr}.sidebar{padding:30px 15px}.main{padding:28px 26px 80px}.cols2{grid-template-columns:1fr}.hero{min-height:180px}.metrics{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){h1{font-size:32px}.shell{display:block}.sidebar{position:fixed;top:auto;bottom:0;left:0;right:0;height:auto;z-index:20;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#080a08f5;border-top:1px solid var(--border);border-right:0;backdrop-filter:blur(16px)}.sidebar .brand,.sidebar .footer{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(6,1fr);gap:1px}.nav{padding:5px 1px;gap:4px;min-height:48px;border-radius:9px;display:flex;flex-direction:column;font-size:9px;white-space:nowrap}.nav svg{width:20px;height:20px}.nav.active{border-color:transparent}.main{padding:22px 18px calc(115px + env(safe-area-inset-bottom))}.topbar{margin-bottom:26px;align-items:start}.mobilebrand{display:flex;font-size:18px}.mobilebrand img{width:27px;height:27px}.topbar .row{gap:5px}.status{font-size:9px;padding:4px 7px}.topbar .dateinput{width:125px!important;font-size:11px!important}.pagehead{align-items:start;margin-bottom:23px}.pagehead p{font-size:12px}.pagehead>button{font-size:12px;padding:10px 12px}.card{padding:20px;border-radius:17px}.grid{gap:14px}.hero{gap:20px;min-height:170px}.ring{width:140px;height:140px;padding:7px}.huge{font-size:39px}.big{font-size:30px}.macro{gap:12px;margin-top:18px}.metrics{grid-template-columns:repeat(2,1fr)}.metric{padding:16px}.metric strong{font-size:26px}.recipegrid{grid-template-columns:1fr}.cols3{grid-template-columns:1fr}.timer{bottom:0;margin-top:16px;padding:12px 14px}.timer .row{gap:5px}.timer button{padding:7px 10px;font-size:12px}.cardtitle{margin-bottom:16px}.formgrid{gap:0 10px}.ingredient{grid-template-columns:1fr 76px 38px}.summarybox{font-size:14px}.foodrow{gap:10px}.foodrow .row{gap:5px}.foodrow button{padding:6px 9px}.heroText .eyebrow{letter-spacing:1px}.recipeart{height:65px!important}dialog{padding:21px}.topbar .lang{padding:6px 8px;min-height:32px;font-size:11px}}
@media(prefers-reduced-motion:no-preference){.card{animation:appear .24s ease-out}@keyframes appear{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}

@media(max-width:700px){.topbar{display:grid;grid-template-columns:1fr auto;gap:10px}.mobilebrand{white-space:nowrap}.topbar>.row:nth-child(2){grid-column:1/-1;grid-row:2;justify-content:space-between}.topbar>.row:last-child{grid-column:2;grid-row:1}.nav{font-size:10px}}
