@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-cyrillic-400-normal-BMzJvInZ.woff2)format("woff2"),url(/assets/manrope-cyrillic-400-normal-Dvx59UGC.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-cyrillic-500-normal-B1OEZity.woff2)format("woff2"),url(/assets/manrope-cyrillic-500-normal-CNwnNrRC.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-cyrillic-600-normal-DvRl3Mj-.woff2)format("woff2"),url(/assets/manrope-cyrillic-600-normal-It4mZcQk.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-cyrillic-700-normal-Dw_fZAg2.woff2)format("woff2"),url(/assets/manrope-cyrillic-700-normal-7JNVKxyl.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/manrope-cyrillic-800-normal-AvdZ5mAV.woff2)format("woff2"),url(/assets/manrope-cyrillic-800-normal-BuEMjQU-.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/unbounded-cyrillic-600-normal-DW6uzIMB.woff2)format("woff2"),url(/assets/unbounded-cyrillic-600-normal-B-s5c2Kn.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/unbounded-cyrillic-700-normal-DMBAjPn6.woff2)format("woff2"),url(/assets/unbounded-cyrillic-700-normal-D1SKFvrN.woff)format("woff")}:root{color:#343a36;font-synthesis:none;--ink:#343a36;--dark:#3f4b46;--accent:#b8c6bd;--paper:#faf9f6;--line:#d8ddd8;--muted:#78817b;background:#eff0ed;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}body{background:#eff0ed;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #6482734d}.modal-open{overflow:hidden}.splash{min-height:100vh;color:var(--muted);letter-spacing:.06em;place-content:center;justify-items:center;gap:18px;font-size:13px;display:grid}.scale-mark{background:var(--dark);width:58px;height:58px;color:var(--accent);border-radius:50%;place-items:center;font-size:28px;animation:1.3s ease-in-out infinite alternate breathe;display:grid}@keyframes breathe{to{opacity:.72;transform:scale(.93)}}.brand{letter-spacing:-.05em;align-items:center;gap:10px;font-family:Unbounded,sans-serif;font-size:18px;font-weight:700;display:flex}.brand-icon{width:32px;height:32px;color:var(--dark);background:var(--accent);border-radius:50%;place-items:center;font-family:Manrope;font-size:19px;display:grid}.brand.light{color:#fff}.mobile-brand{display:none}header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;width:min(1400px,100% - 80px);height:92px;margin:auto;display:grid}.header-date{text-align:center;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);flex-direction:column;font-size:9px;display:flex}.header-date strong{color:var(--ink);letter-spacing:0;text-transform:none;margin-top:2px;font-size:12px}.menu-wrap{justify-self:end;position:relative}.icon-button{border:1px solid var(--line);cursor:pointer;letter-spacing:2px;background:#ffffff40;border-radius:50px;width:46px;height:38px}.menu{z-index:20;border:1px solid var(--line);background:#fff;border-radius:12px;width:180px;padding:7px;position:absolute;top:45px;right:0;box-shadow:0 15px 45px #1a1d1626}.menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:11px 12px;font-size:13px;display:block}.menu button:hover{background:#f3f2ec}.app-shell main{width:min(1400px,100% - 80px);margin:30px auto 0}.hero{isolation:isolate;background:var(--dark);color:#fff;border-radius:4px;justify-content:space-between;align-items:center;min-height:205px;padding:30px 38px;display:flex;position:relative;overflow:hidden}.hero.done{color:var(--ink);background:#e0e7e2}.hero>div:first-child{z-index:2;position:relative}.eyebrow{color:#73766d;letter-spacing:.19em;text-transform:uppercase;font-size:9px;font-weight:800;line-height:1.4;display:block}.hero .eyebrow{color:#c0c9c3}.hero.done .eyebrow{color:#68746d}.hero h1{letter-spacing:-.065em;margin:12px 0 11px;font-family:Unbounded,sans-serif;font-size:clamp(32px,4vw,50px);line-height:1}.hero.done h1 em{color:#50655a;font-style:normal}.hero p{color:#c2cbc5;max-width:440px;margin:0;font-size:13px}.hero.done p{color:#68736d}.hero-button{z-index:2;min-width:190px;position:relative}.primary,.secondary{cursor:pointer;border:0;border-radius:2px;min-height:52px;padding:0 23px;font-size:12px;font-weight:800;transition:transform .15s,background .15s}.primary{background:var(--accent);color:var(--dark)}.primary:hover,.secondary:hover{transform:translateY(-2px)}.primary span{margin-left:12px;font-size:17px}.primary:disabled{opacity:.55;cursor:wait;transform:none}.secondary{background:var(--dark);color:#fff}.hero-orbit{z-index:-1;border:1px solid #ffffff17;border-radius:50%;width:440px;height:440px;position:absolute;top:-125px;right:-20px}.hero-orbit i{border:1px solid #ffffff14;border-radius:50%;position:absolute;inset:60px}.hero-orbit i:nth-child(2){inset:120px}.hero-orbit i:nth-child(3){background:var(--accent);border:0;inset:182px;box-shadow:0 0 60px #b8c6bd33}.done .hero-orbit,.done .hero-orbit i{border-color:#50655a1f}.done .hero-orbit i:nth-child(3){box-shadow:none;background:#667c71}.stats{border:1px solid var(--line);background:#ffffff40;border-top:0;grid-template-columns:repeat(5,1fr);display:grid}.stats article{border-right:1px solid var(--line);min-height:150px;padding:26px 28px}.stats article:last-child{border-right:0}.stats article>span{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-size:10px}.stats article div{align-items:baseline;gap:7px;margin:11px 0 7px;display:flex}.stats article strong{letter-spacing:-.06em;font-family:Unbounded;font-size:clamp(24px,2.4vw,35px)}.stats article b{font-size:11px}.stats article small{color:#92958c;font-size:10px}.stats article .good strong{color:#5e796c}.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(340px,.85fr);gap:18px;margin-top:18px;display:grid}.card{background:var(--paper);border:1px solid var(--line);padding:30px}.card-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.card h2,.modal h2,.login-form h2{letter-spacing:-.055em;font-family:Unbounded}.card h2{margin:6px 0 0;font-size:21px}.periods{border:1px solid var(--line);border-radius:3px;padding:3px;display:flex}.periods button{min-width:49px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:6px 8px;font-size:9px}.periods button.active{background:var(--dark);color:#fff}.chart-wrap{margin-top:18px}.chart-wrap svg{width:100%;display:block;overflow:visible}.chart-wrap text{fill:#9a9c93;font-size:9px}.grid-line{stroke:#e7e5dc;stroke-width:1px}.goal-line{stroke:#a9b18c;stroke-dasharray:5 5}.weight-line{fill:none;stroke:#718b7e;stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.dot{fill:#faf9f6;stroke:#718b7e;stroke-width:2px}.last-dot{fill:var(--accent);stroke:#526b60;stroke-width:3px}.chart-dates{color:#96988f;justify-content:space-between;margin:-7px 24px 0;font-size:9px;display:flex}.empty-chart{height:280px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-chart .empty-lines{color:#aab9b0;font-size:55px;line-height:1}.empty-chart strong{color:var(--ink);margin-top:10px;font-size:13px}.empty-chart span{margin-top:5px;font-size:10px}.count{min-width:29px;height:29px;color:var(--muted);background:#ebeadf;border-radius:50%;place-items:center;font-size:10px;display:grid}.history-list{border-top:1px solid var(--line);margin-top:20px}.history-list>button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e6e5dc;grid-template-columns:42px 1fr auto 8px;align-items:center;gap:14px;width:100%;min-height:66px;padding:8px 3px;display:grid}.history-list>button:hover .entry-info strong{color:#617c6f}.date-badge{background:#eeede5;flex-direction:column;justify-content:center;align-items:center;width:38px;height:42px;display:flex}.date-badge b{font-family:Unbounded;font-size:13px;line-height:1.1}.date-badge small{color:var(--muted);text-transform:uppercase;font-size:8px}.entry-info{flex-direction:column;min-width:0;display:flex}.entry-info strong{font-family:Unbounded;font-size:14px;transition:color .15s}.entry-info strong small{font-family:Manrope;font-size:8px}.entry-info em{text-overflow:ellipsis;white-space:nowrap;color:#94968e;max-width:190px;margin-top:3px;font-size:9px;font-style:normal;overflow:hidden}.diff{background:#f0efe8;padding:4px 6px;font-size:9px}.diff.down{color:#5e796b;background:#e4ece7}.diff.up{color:#9b644f;background:#f4e8e3}.chevron{color:#aaa}.empty-history{height:280px;color:var(--muted);place-items:center;font-size:11px;display:grid}footer{border-top:1px solid var(--line);color:#999b92;letter-spacing:.14em;text-align:center;text-transform:uppercase;width:min(1400px,100% - 80px);margin:28px auto 0;padding:26px 0 38px;font-size:9px}.mobile-add{display:none}.login-page{grid-template-columns:1.15fr .85fr;min-height:100vh;display:grid}.login-story{background:var(--dark);color:#fff;flex-direction:column;justify-content:space-between;min-height:100vh;padding:54px 7vw;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #b8c6bd29;border-radius:50%;width:55vw;height:55vw;position:absolute;bottom:-32vw;left:-12vw;box-shadow:0 0 0 8vw #b8c6bd09,0 0 0 16vw #b8c6bd06}.story-copy{z-index:1;max-width:690px;position:relative}.story-copy .eyebrow{color:var(--accent)}.story-copy h1{letter-spacing:-.075em;margin:18px 0 24px;font-family:Unbounded;font-size:clamp(44px,5vw,78px);line-height:1.06}.story-copy p{color:#a8aa9e;max-width:490px;font-size:15px;line-height:1.7}.story-line{z-index:1;color:#78817b;letter-spacing:.14em;text-transform:uppercase;grid-template-columns:auto 1fr 12px 1fr auto;align-items:center;gap:9px;width:min(520px,80%);font-size:8px;display:grid;position:relative}.story-line i{background:#41443c;height:1px}.story-line b{background:var(--accent);width:9px;height:9px;box-shadow:0 0 20px var(--accent);border-radius:50%}.login-panel{background:var(--paper);place-items:center;padding:50px;display:grid}.login-form{width:min(380px,100%)}.login-form h2{margin:10px 0 8px;font-size:32px}.muted{color:var(--muted);font-size:12px;line-height:1.6}.login-form>.muted{margin:0 0 34px}label{color:#60635a;text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:8px;margin-top:20px;font-size:10px;font-weight:700;display:flex}label small{color:#a0a299;text-transform:none;letter-spacing:0;font-weight:500}input{width:100%;height:49px;color:var(--ink);background:#ffffff57;border:1px solid #d7dcd8;border-radius:2px;padding:0 14px;transition:border .15s,background .15s}input:focus{background:#fff;border-color:#7d978a;outline:none;box-shadow:0 0 0 3px #6c887a21}.wide{justify-content:space-between;align-items:center;width:100%;margin-top:28px;display:flex}.form-error{color:#8e4834;background:#f5e6e0;margin-top:14px;padding:10px 12px;font-size:11px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#131511ba;place-items:center;padding:20px;animation:.16s fade;display:grid;position:fixed;inset:0}.modal{background:var(--paper);width:min(560px,100%);max-height:calc(100vh - 40px);padding:34px;animation:.22s rise;overflow-y:auto;box-shadow:0 30px 100px #00000047}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(15px)}}.modal-head{justify-content:space-between;align-items:flex-start;display:flex}.modal h2{margin:7px 0 0;font-size:25px}.close{border:1px solid var(--line);color:#777;cursor:pointer;background:0 0;width:38px;height:38px;font-size:24px;line-height:1}.weight-input,.goal-input{margin:32px 0;display:block;position:relative}.weight-input input,.goal-input input{letter-spacing:-.05em;border:0;border-bottom:1px solid #d4d9d5;height:88px;padding:0 70px 0 17px;font-family:Unbounded;font-size:46px}.weight-input span,.goal-input span{color:var(--muted);text-transform:none;font-size:13px;position:absolute;top:39px;right:17px}.form-grid{grid-template-columns:1fr 1.5fr;gap:14px;display:grid}.form-grid label{margin-top:0}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:28px;padding-top:22px;display:flex}.danger{color:#a2533e;cursor:pointer;background:0 0;border:0;margin-right:auto;padding:0 10px;font-size:11px}.settings-form>.muted{margin:13px 0 0}.install-content{text-align:left}.install-icon{border-radius:18px;width:82px;height:82px;margin:28px 0 20px;display:block}.install-content>p{max-width:430px;color:var(--ink);font-size:13px;line-height:1.65}.install-content>p.muted{color:var(--muted);font-size:11px}.toast{z-index:200;background:var(--dark);color:#fff;opacity:0;pointer-events:none;padding:12px 18px;font-size:11px;transition:all .2s;position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px)}.toast.visible{opacity:1;transform:translate(-50%)}@media (width<=900px){header,.app-shell main,footer{width:min(100% - 36px,700px)}header{height:74px}.app-shell main{margin-top:18px}.hero{min-height:195px;padding:27px 30px}.hero-orbit{right:-210px}.stats{grid-template-columns:1fr 1fr}.stats article:nth-child(2){border-right:0}.stats article:nth-child(-n+2){border-bottom:1px solid var(--line)}.dashboard-grid{grid-template-columns:1fr}.login-page{grid-template-columns:1fr 1fr}.story-copy h1{font-size:40px}}@media (width<=640px){header,.app-shell main,footer{width:calc(100% - 28px)}header{grid-template-columns:1fr auto}.header-date{display:none}.brand{font-size:16px}.brand-icon{width:29px;height:29px}.hero{flex-direction:column;align-items:flex-start;min-height:230px;padding:23px 22px}.hero h1{margin-top:10px;font-size:32px}.hero p{max-width:275px;font-size:11px;line-height:1.55}.hero-button{width:100%;min-height:48px;margin-top:17px}.hero-orbit{width:320px;height:320px;top:-145px;right:-155px}.hero-orbit i{inset:40px}.hero-orbit i:nth-child(2){inset:80px}.hero-orbit i:nth-child(3){inset:130px}.stats article{min-height:121px;padding:19px 17px}.stats article strong{font-size:22px}.stats article>span{font-size:8px}.card{padding:24px 19px}.card h2{font-size:18px}.chart-card{overflow:hidden}.chart-wrap{width:calc(100% + 12px)}.chart-wrap svg{min-height:230px}.periods button{min-width:42px}.history-card{margin-bottom:75px}footer{display:none}.mobile-add{z-index:30;right:20px;bottom:calc(20px + env(safe-area-inset-bottom));background:var(--accent);width:56px;height:56px;color:var(--dark);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-size:27px;display:grid;position:fixed;box-shadow:0 8px 30px #21251a40}.login-page{background:var(--paper);display:block}.login-story{display:none}.login-panel{min-height:100vh;padding:30px 25px}.mobile-brand{margin-bottom:64px;display:flex}.login-form h2{font-size:28px}.modal-backdrop{align-items:end;padding:0}.modal{width:100%;max-height:92vh;padding:28px 21px calc(22px + env(safe-area-inset-bottom));border-radius:14px 14px 0 0}.form-grid{grid-template-columns:1fr}.weight-input{margin:22px 0}.weight-input input,.goal-input input{height:76px;font-size:39px}.weight-input span,.goal-input span{top:34px}.toast{white-space:nowrap;bottom:88px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.period-card{border:1px solid var(--line);background:#e5eae6;margin-top:18px;padding:27px 30px}.period-summary-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.period-summary-head h2{letter-spacing:-.055em;margin:5px 0 0;font-family:Unbounded;font-size:20px}.summary-switch{border:1px solid #cbd3ce;padding:3px;display:flex}.summary-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:7px 13px;font-size:9px}.summary-switch button.active{background:var(--dark);color:#fff}.period-metrics{border-top:1px solid #cdd5d0;border-bottom:1px solid #cdd5d0;grid-template-columns:repeat(4,1fr);margin-top:24px;display:grid}.period-metrics>div{border-right:1px solid #cdd5d0;padding:19px 20px 17px 0}.period-metrics>div:not(:first-child){padding-left:20px}.period-metrics>div:last-child{border-right:0}.period-metrics span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:8px}.period-metrics p{margin:7px 0 0}.period-metrics strong{letter-spacing:-.05em;font-family:Unbounded;font-size:20px}.period-metrics b{font-size:9px}.period-metrics .good strong{color:#5d786b}.period-note{color:#7d8781;margin-top:12px;font-size:9px;display:block}.chart-controls{align-items:center;gap:8px;display:flex}.metric-switch{gap:3px;display:flex}.metric-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:7px 10px;font-size:9px}.metric-switch button.active{color:#52695e;background:#e2e9e5;font-weight:800}.entry-info strong .fat-value{color:#718b7e;font-weight:700}.measure-inputs{grid-template-columns:1fr 1fr;gap:20px;display:grid}.measure-inputs .weight-input>small{color:#60635a;margin-bottom:8px;font-size:9px;font-style:normal;display:block}.measure-inputs .weight-input>small i{color:#a0a299;text-transform:none;font-style:normal;font-weight:500}@media (width<=900px){.stats{grid-template-columns:1fr 1fr}.stats article{border-bottom:1px solid var(--line)}.stats article:nth-child(2n){border-right:0}.stats article:last-child{border-bottom:0;grid-column:1/-1}.period-metrics{grid-template-columns:1fr 1fr}.period-metrics>div:nth-child(2){border-right:0}.period-metrics>div:nth-child(-n+2){border-bottom:1px solid #cdd5d0}}@media (width<=640px){.period-card{padding:23px 18px}.period-metrics>div{padding:15px 8px 14px 0}.period-metrics>div:not(:first-child){padding-left:12px}.period-metrics strong{font-size:17px}.chart-card .card-head{flex-direction:column}.chart-controls{justify-content:space-between;width:100%}.measure-inputs{gap:10px}.measure-inputs .weight-input input{padding-right:38px;font-size:29px}}input::placeholder{color:#a8afaa;opacity:1;font-weight:400}.weight-input input::placeholder,.goal-input input::placeholder{color:#c0c6c2;opacity:.72}label small{color:#939c96}.muted{color:#78817b}.form-error{color:#835b50;background:#f0e5e1}
