@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Manrope Variable,sans-serif;color:#163b35;background:#f3f6f5;font-synthesis:none;font-weight:450;--ink: #163b35;--green: #278269;--muted: #63756f;--line: #dce5e1;--paper: #f3f6f5;--white: #fff;--orange: #a25b0c;--red: #b43d4b}*{box-sizing:border-box}body{margin:0}.app-locked .private-app,.app-locked .private-app dialog{display:none!important;visibility:hidden!important}.lock-screen{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:max(32px,env(safe-area-inset-top)) 20px max(32px,env(safe-area-inset-bottom))}.lock-card{width:min(100%,420px);display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.lock-emblem{width:84px;height:84px;display:grid;place-items:center;border-radius:28px;background:#e0ebe6;color:var(--green)}.lock-brand{font-size:13px;color:var(--muted)}.lock-card h1{font-size:30px}.lock-card>.primary{width:100%;max-width:300px}.lock-help{font-size:13px;color:var(--muted)}.lock-help summary{cursor:pointer;padding:10px}.lock-help p+p{margin-top:12px}.lock-error{color:var(--red);font-size:14px}.lock-actions{display:flex;flex-wrap:wrap;gap:10px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #278269;outline-offset:4px}a{color:inherit;text-underline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:clamp(28px,3vw,38px);font-weight:750;letter-spacing:-1.4px;line-height:1.2}h2{font-size:19px;letter-spacing:-.45px;font-weight:750}h3{font-size:15px;font-weight:700}p{line-height:1.7}small{font-size:12px;line-height:1.6;color:var(--muted)}svg{flex-shrink:0}button svg,a svg{pointer-events:none}.primary,.secondary,.danger{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 19px;border-radius:11px;font-weight:650;font-size:13px;text-decoration:none;transition:background .15s}.primary{color:#fff;background:var(--ink)}.primary:hover{background:#215c50}.secondary{color:var(--ink);background:#fff;border:1px solid var(--line)}.secondary:hover{background:#edf5f1}.danger{color:#fff;background:var(--red)}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;background:transparent;color:var(--green);font-size:13px;font-weight:700;min-height:42px;padding:6px 9px;border-radius:8px}.text-button:hover{background:#edf5f1}.icon-button{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);border-radius:10px;background:transparent;width:42px;height:42px;flex-shrink:0}.icon-button:hover{background:#edf3ef;color:var(--ink)}.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:21px;line-height:1.05;letter-spacing:-.8px}.brand img{width:43px;height:43px;border-radius:12px}.brand-dot{color:var(--green)}.brand-link{text-decoration:none}.app-shell{min-height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;width:216px;padding:39px 24px 28px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:10}.sidebar nav{display:flex;flex-direction:column;gap:8px;margin-top:65px}.nav-item{min-height:50px;background:transparent;color:var(--muted);text-align:left;display:flex;align-items:center;gap:12px;padding:13px;border-radius:11px;font-size:13px;font-weight:650}.nav-item.active{background:#e6f0eb;color:var(--ink)}.sidebar-bottom{margin-top:auto;color:var(--muted);padding:10px 12px}.sidebar-bottom p{font-size:11px;margin-top:9px;line-height:1.8}.workspace{margin-left:216px}.topbar{height:92px;display:flex;gap:22px;align-items:center;padding:0 45px;border-bottom:1px solid var(--line)}.desktop-greeting{font-size:12px;color:var(--muted);margin-right:auto}.mobile-wordmark{display:none}.sync-status{display:flex;align-items:center;gap:7px;background:#e4efe9;color:#25634e;border-radius:24px;padding:8px 12px;font-size:11px;font-weight:650;min-height:35px}.sync-status.muted-status{background:#eceee9;color:#5c655b}.avatar{display:inline-flex;align-items:center;justify-content:center;background:#e4e9e3;color:var(--ink);font-size:13px;font-weight:700;border:1px solid #d6ded5;border-radius:50%;width:36px;height:36px;flex-shrink:0}.main-content{max-width:1210px;margin:auto;padding:43px 45px 130px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:29px}.page-heading p{font-size:13px;color:var(--muted);margin-top:9px}.page-heading .date-heading{font-size:12px;margin:0 0 10px;text-transform:none}.date-heading:first-letter{text-transform:uppercase}.substance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.substance-card{background:#fff;border:1px solid #e2e9e5;border-radius:20px;overflow:hidden;min-width:0;box-shadow:0 3px 10px #163b3503}.substance-card>header{display:flex;justify-content:space-between;align-items:center;padding:20px 20px 5px}.substance-title{display:flex;align-items:center;gap:11px;min-width:0}.substance-title h2{overflow-wrap:anywhere}.substance-mark{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#edf4ef;color:var(--green);border-radius:10px;flex-shrink:0}.ring-pair{display:grid;grid-template-columns:1fr 1fr;padding:12px 10px 26px;gap:4px}.ring-block{display:flex;align-items:center;flex-direction:column;min-width:0;text-align:center;--state: var(--green);--track: #e8f2ec}.ring-block.near{--state: var(--orange);--track: #faf0df}.ring-block.high{--state: var(--red);--track: #f8e9eb}.ring{position:relative;width:min(100%,156px);aspect-ratio:1;color:var(--state)}.ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring circle{fill:none;stroke-width:7;stroke-linecap:round}.ring-track{stroke:var(--track)}.ring-value{stroke:var(--state);transition:stroke-dashoffset .4s ease}.ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px 14px}.ring-center strong{font-size:clamp(18px,2.2vw,29px);font-weight:750;letter-spacing:-1px;font-variant-numeric:tabular-nums;max-width:100%;overflow-wrap:anywhere;line-height:1.15}.ring-center span{font-size:11px;margin-top:4px;color:var(--muted);max-width:100%;overflow-wrap:anywhere}.ring-block h3{font-size:11px;color:var(--ink);margin:8px 0 5px}.limit-number{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums;padding:0 6px}.limit-number>span{display:block;font-weight:700;margin-top:4px;color:var(--state)}.limit-label{display:flex;gap:5px;align-items:center;justify-content:center;font-size:9px;color:var(--state);font-weight:650;margin-top:9px}.limit-label i{width:4px;height:4px;background:currentColor;border-radius:50%}.overage{font-size:10px;color:var(--state);margin-top:5px}.substance-card>footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf1ee;padding:4px 19px}.substance-card>footer>span{font-size:10px;color:var(--muted)}.limit-explanation{display:flex;gap:8px;align-items:center;font-size:10px;color:var(--muted);margin:16px 2px 38px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.section-heading p{font-size:11px;color:var(--muted);margin-top:5px}.date-picker{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;padding:2px}.date-picker input{min-width:0;border:0;background:transparent;color:var(--ink);font-size:12px;width:117px;font-weight:600;outline-offset:1px}.date-picker .icon-button{width:31px;height:34px}.empty-history{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:196px;border:1px dashed #d5e0d9;border-radius:16px;background:#f7faf8;padding:25px;text-align:center}.empty-history>span{color:#8da99b;margin-bottom:12px}.empty-history h3{font-size:13px}.empty-history p{color:var(--muted);font-size:11px;margin-top:6px}.history-list{list-style:none;padding:0;margin:0}.history-list li{display:flex;gap:18px;align-items:center;padding:21px 4px;border-top:1px solid var(--line)}.history-list li:last-child{border-bottom:1px solid var(--line)}.entry-time{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.timeline-dot{width:7px;height:7px;background:#b9cbbf;border-radius:50%}.entry-description{flex:1;min-width:0}.entry-description strong{font-size:13px}.entry-description p{font-size:11px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.entry-description small{display:block;font-size:10px}.entry-sync{display:block;color:#63756f;font-size:9px;margin-top:4px}.entry-amount{font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap}.entry-amount span{font-size:11px;color:var(--muted);font-weight:500}.entry-actions{display:flex;gap:2px}.entry-actions .icon-button{width:34px;height:38px}.delete-button:hover{color:var(--red);background:#fff0f2}.fab{position:fixed;right:34px;bottom:28px;border-radius:18px;display:flex;align-items:center;gap:9px;padding:17px 23px;color:#fff;background:var(--ink);box-shadow:0 6px 22px #163b3530;z-index:12;font-size:13px;font-weight:650;min-height:58px}.fab:hover{background:#215c50}.dialog{border:0;border-radius:22px;padding:27px;width:calc(100% - 32px);max-width:480px;max-height:calc(100dvh - 42px);overflow-y:auto;color:var(--ink);box-shadow:0 20px 80px #102b3440}.dialog::backdrop{background:#102b344f;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:19px}.dialog-header h2{font-size:22px}.dialog-header .icon-button{margin:-7px -8px 0 0}.dialog.install-dialog{max-width:440px}.install-app-preview{display:flex;align-items:center;gap:13px;margin:24px 0 18px}.install-app-preview img{flex-shrink:0;border-radius:14px}.install-app-preview strong,.install-app-preview span{display:block}.install-app-preview strong{font-size:16px;font-weight:750}.install-app-preview span{margin-top:4px;font-size:12px;color:var(--muted)}.install-intro{font-size:14px}.install-instructions{margin-top:20px;padding:17px 18px;background:var(--paper);border-radius:14px}.install-instructions h3{font-size:13px}.install-instructions ol{margin:12px 0 0;padding-left:20px;font-size:13px;line-height:1.65}.install-instructions li{padding-left:3px}.install-instructions li+li{margin-top:9px}.install-instructions strong svg{vertical-align:-3px}.install-actions{display:flex;flex-direction:column;gap:9px;margin-top:22px}.install-later{margin-top:15px;color:var(--muted);text-align:center;font-size:11px}.install-status{display:flex;align-items:center;gap:8px;color:var(--green);font-size:13px}.install-welcome-button{width:100%;margin-top:12px}@media(max-width:600px){.dialog.install-dialog{position:fixed;inset:auto 0 0;margin:0 auto;width:100%;max-width:100%;max-height:calc(100dvh - 20px);border-radius:22px 22px 0 0;padding:24px 22px calc(24px + env(safe-area-inset-bottom))}}.form{display:flex;flex-direction:column;gap:18px}.form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650}.form input,.form select,.form textarea{color:var(--ink);background:#fbfcfb;border:1px solid #d9e3dc;border-radius:9px;padding:12px;font-size:14px;width:100%;min-height:46px;min-width:0}.form input:disabled{background:#eff2ef;color:var(--muted)}.form input::placeholder,.form textarea::placeholder{color:#87938c;font-weight:400}.form label small{font-weight:450;font-size:11px}.form fieldset{padding:0;margin:0;border:0;min-width:0}.form legend{font-size:14px;font-weight:750;padding:0}.field-hint{color:var(--muted);font-size:11px;margin:6px 0 15px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-pair label{font-size:10px}.input-unit{position:relative;display:flex;align-items:center;background:#fbfcfb;border:1px solid #d9e3dc;border-radius:9px;overflow:hidden}.input-unit:focus-within{outline:3px solid #278269;outline-offset:3px}.input-unit input{border:0;outline:none!important;flex:1;width:70px;min-width:0;background:none}.input-unit>span{font-size:12px;color:var(--muted);padding-right:12px;max-width:50%;overflow-wrap:anywhere}.amount-field input{font-size:30px;font-weight:700;letter-spacing:-1px;padding:13px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:3px}.form-actions>.primary{flex:1}.form-error{background:#fceef0;border:1px solid #f1ccd2;padding:12px;border-radius:9px;font-size:12px;color:#932737;line-height:1.6}.optional-fields{border-top:1px solid var(--line);padding-top:15px}.optional-fields summary{font-size:12px;font-weight:650;cursor:pointer;padding:4px 0;min-height:30px}.optional-fields summary span{color:var(--muted);font-weight:450;margin-left:5px;font-size:10px}.optional-fields label{margin-top:14px}.form-footnote{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted)}.confirmation>p{font-size:13px;line-height:1.8;margin-bottom:23px}.confirmation .form-error{margin-bottom:15px}.confirmation .form-actions{flex-wrap:wrap}.confirmation .form-actions button{flex:1}.management-list{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden}.management-list article{display:flex;align-items:center;gap:17px;padding:24px;border-bottom:1px solid var(--line)}.management-list article:last-child{border:0}.management-list article>div{flex:1;min-width:0}.management-list h2{font-size:16px;overflow-wrap:anywhere}.management-list p{font-size:11px;color:var(--muted);margin-top:6px}.management-list article.archived{background:#f8faf8}.overview-toggle{display:flex;align-items:center;gap:9px;min-height:44px;margin-top:4px;font-size:12px;cursor:pointer}.overview-toggle input{width:18px;height:18px;margin:0;flex-shrink:0;accent-color:var(--green)}.overview-toggle input:disabled+span{color:var(--muted)}.separator{padding:0 8px}.badge{display:inline-block;background:#e5eae5;border-radius:5px;font-size:9px;font-weight:550;letter-spacing:0;margin-left:9px;padding:3px 6px}.help-copy{font-size:11px;color:var(--muted);margin-top:15px;line-height:1.8;max-width:65ch}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.settings-section{padding:25px;background:#fff;border:1px solid var(--line);border-radius:16px}.settings-section h2{display:flex;align-items:center;gap:10px;font-size:16px;margin-bottom:21px}.settings-section>p{font-size:12px;color:var(--muted);margin-bottom:15px}.settings-section>p.help-copy{font-size:11px;margin-bottom:0}.settings-status{display:flex;gap:9px;align-items:center;font-size:13px;margin-bottom:9px}.account-identity{display:flex;align-items:center;gap:13px;margin-bottom:20px}.avatar.large{width:46px;height:46px;font-size:18px}.account-identity strong{font-size:14px}.account-identity p{font-size:10px;color:var(--muted)}.privacy-note{max-width:90ch;margin:30px 0;font-size:11px;color:var(--muted)}.connection-banner,.update-banner{padding:16px 18px;border:1px solid #e1d9ba;background:#fcf9eb;border-radius:12px;display:flex;align-items:flex-start;gap:12px;margin-bottom:25px;font-size:12px}.connection-banner strong{font-size:12px}.connection-banner p{font-size:11px;margin-top:3px}.connection-banner a{display:inline-block;margin-top:8px;font-weight:700}.update-banner{align-items:center;justify-content:space-between;background:#fff;border-color:var(--line)}.update-banner p{font-size:12px}.toast{position:fixed;left:calc(50% + 108px);transform:translate(-50%);bottom:30px;max-width:min(500px,90vw);background:var(--ink);color:#fff;padding:14px 18px;border-radius:12px;box-shadow:0 5px 20px #0002;font-size:12px;display:flex;align-items:center;gap:10px;z-index:25;pointer-events:none}.onboarding{max-width:660px;margin:0 auto}.onboarding .page-heading{display:block;text-align:center;margin-bottom:28px}.section-icon{display:inline-flex;align-items:center;justify-content:center;background:#e0ede4;width:54px;height:54px;border-radius:17px;margin-bottom:18px;color:var(--green)}.onboarding-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:30px;text-align:center}.onboarding-steps>div{display:flex;flex-direction:column;align-items:center;gap:7px}.onboarding-steps svg{color:var(--green);width:20px;margin-bottom:2px}.onboarding-steps strong{font-size:12px}.onboarding-steps span{font-size:10px;color:var(--muted)}.onboarding-form{padding:28px;background:#fff;border:1px solid var(--line);border-radius:19px}.onboarding-form h2{margin-bottom:24px}.substance-picker,.substance-presets{display:flex;flex-direction:column;gap:12px}.substance-preset{display:flex;align-items:center;gap:15px;width:100%;padding:18px;text-align:left;color:var(--ink);background:#fbfcfb;border:1px solid var(--line);border-radius:13px;transition:background .15s,border-color .15s}.substance-preset:hover{background:#edf5f1;border-color:var(--green)}.preset-copy{display:flex;flex:1;flex-direction:column;gap:4px}.preset-copy strong{font-size:16px}.preset-copy>span,.picker-intro{color:var(--muted);font-size:12px}.custom-substance{margin-top:5px}.picker-intro{margin-bottom:18px}.preset-back{margin:-5px 0 15px -9px}.onboarding-skip{display:flex;justify-content:center;margin-top:16px}.empty-state{display:flex;flex-direction:column;align-items:center;gap:14px;padding:40px 20px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:20px}.empty-state p{font-size:13px;color:var(--muted)}.conflicts{margin-top:30px}.conflicts>p{font-size:12px;margin:10px 0 20px}.conflict{border:1px solid #e9cbd0;border-radius:14px;padding:22px;margin-top:15px;background:#fff9fa}.conflict>p{font-size:12px;color:#932737;margin:10px 0}.conflict-versions{display:grid;grid-template-columns:1fr 1fr;gap:20px}.conflict-versions>div{font-size:12px;min-width:0}.record-preview{padding:10px 0;overflow-wrap:anywhere}.record-preview p{font-size:11px;white-space:pre-wrap}.welcome{max-width:1300px;min-height:100dvh;padding:65px;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;margin:auto}.welcome-copy{display:flex;flex-direction:column;justify-content:space-between;gap:65px;padding:10px 0}.welcome-copy h1{font-size:clamp(35px,4.5vw,58px);letter-spacing:-2.5px;line-height:1.12;margin:20px 0}.welcome-copy>div>p{color:var(--muted);font-size:15px;max-width:39ch;line-height:1.9}.welcome-tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--green)}.welcome-points{display:flex;flex-direction:column;gap:15px;margin-top:32px}.welcome-points span{display:flex;gap:12px;align-items:center;font-size:12px}.welcome-points svg{width:18px;color:var(--green)}.welcome-copy>small{max-width:45ch;font-size:10px}.login-panel{align-self:center;background:#fff;border:1px solid var(--line);padding:38px;border-radius:26px;text-align:center}.login-panel h2{font-size:22px}.login-panel>p{font-size:12px;color:var(--muted);margin:13px 0 24px}.login-panel>small{display:flex;gap:7px;text-align:left;font-size:9px;margin-top:25px}.google-button{width:100%;font-size:13px}.welcome-art{position:relative;margin:5px auto 27px;width:160px;height:130px;display:flex;align-items:center;justify-content:center}.welcome-art>div{position:absolute;width:112px;height:112px;border:10px solid #a6d4bf;border-radius:50%;left:1px;transform:rotate(-35deg);border-right-color:#edf5f0}.welcome-art>div:nth-child(2){left:auto;right:1px;border-color:#367b65;border-left-color:transparent;transform:rotate(20deg)}.welcome-art>span{display:flex;color:#367b65;z-index:1;background:#fff;border-radius:50%;padding:8px}.dev-login{border-top:1px solid var(--line);margin-top:24px;padding-top:20px;display:flex;flex-direction:column;gap:8px}.dev-login>span{font-size:10px;color:var(--muted)}.dev-login .text-button{font-size:11px}.login-panel .info-box{background:#f4f6f2;padding:12px;border-radius:10px;font-size:11px}.loading,.fatal{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;padding:30px;text-align:center}.loading>p,.fatal p{font-size:13px;color:var(--muted)}.spin{animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1450px){.main-content{padding-top:50px}.ring{width:168px}.ring-center strong{font-size:32px}.ring-block h3{font-size:12px}.limit-label{font-size:10px}.ring-pair{padding-top:20px;padding-bottom:30px}}@media(max-width:1100px){.sidebar{width:180px;padding:32px 17px}.brand{font-size:19px;gap:8px}.brand img{width:37px;height:37px}.workspace{margin-left:180px}.topbar{padding:0 28px}.main-content{padding-left:28px;padding-right:28px}.substance-grid{gap:15px}.substance-card>header{padding:16px 14px 4px}.substance-title{gap:8px}.substance-title h2{font-size:17px}.substance-mark{width:30px;height:30px}.ring-pair{padding:10px 6px 23px}.limit-label{font-size:8px;gap:3px}.toast{left:calc(50% + 90px)}.management-list article{gap:12px;flex-wrap:wrap}.management-list article>.text-button{margin-left:auto}.welcome{padding:40px;gap:35px}.login-panel{padding:28px}}@media(max-width:800px){.sidebar{inset:auto 0 0;width:auto;height:calc(70px + env(safe-area-inset-bottom));padding:0 10px env(safe-area-inset-bottom);border-right:0;border-top:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:20}.sidebar .brand-link,.sidebar-bottom{display:none}.sidebar nav{flex-direction:row;margin:0;gap:0;height:100%;justify-content:space-around}.nav-item{min-height:0;flex:1;flex-direction:column;justify-content:center;gap:4px;padding:8px;border-radius:0;font-size:9px;max-width:130px}.nav-item.active{background:transparent;color:var(--green)}.nav-item.active svg{background:#e6f0eb;border-radius:8px;box-sizing:content-box;padding:5px;margin:-5px}.nav-item span{margin-top:3px}.workspace{margin-left:0}.topbar{height:74px;padding:0 22px;gap:12px}.mobile-wordmark{display:block;font-size:15px;font-weight:800;letter-spacing:-.5px;margin-right:auto}.mobile-wordmark>span{color:var(--green)}.desktop-greeting{display:none}.avatar{width:31px;height:31px;font-size:11px}.sync-status{font-size:9px;padding:7px 9px;gap:5px}.sync-status svg{width:13px}.main-content{padding:29px 22px 175px}.page-heading{margin-bottom:24px}.page-heading p{font-size:12px;margin-top:8px}.page-heading .date-heading{font-size:10px;margin-bottom:8px}h1{font-size:30px;letter-spacing:-1px}.ring-center strong{font-size:27px}.ring-block h3{font-size:10px}.limit-label{font-size:8px}.fab{right:22px;bottom:calc(88px + env(safe-area-inset-bottom));padding:16px 20px;border-radius:17px;min-height:56px}.toast{left:50%;bottom:calc(158px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 35px);font-size:11px}.welcome{padding:30px;gap:30px}.welcome-copy h1{font-size:39px}.welcome-copy>div>p{font-size:13px}.welcome-points{margin-top:22px}.welcome-copy{gap:30px}.login-panel{padding:25px}.login-panel h2{font-size:19px}.management-list .substance-mark{width:35px;height:35px}.settings-section{padding:21px}}@media(max-width:580px){.topbar{padding:0 19px;gap:9px}.topbar .avatar{display:none}.main-content{padding:27px 18px 175px}.substance-grid{grid-template-columns:1fr;gap:18px}.substance-card{border-radius:18px}.substance-card>header{padding:17px 20px 3px}.substance-title{gap:10px}.substance-title h2{font-size:18px}.substance-mark{width:34px;height:34px}.ring-pair{padding:8px 10px 25px;gap:12px}.ring{width:148px}.ring-center strong{font-size:29px}.ring-block h3{font-size:11px}.limit-label{font-size:9px}.limit-number{font-size:11px}.desktop-add{display:none}.page-heading{align-items:flex-start}.page-heading>.primary{padding:11px;font-size:11px;min-height:42px;flex-shrink:0}.page-heading>.primary svg{width:15px}.page-heading p{max-width:36ch}.limit-explanation{font-size:9px;line-height:1.7;align-items:flex-start;margin-top:14px;margin-bottom:34px}.limit-explanation svg{width:14px;margin-top:2px}.section-heading{align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:18px}.section-heading h2{font-size:19px}.section-heading p{font-size:10px}.date-picker{width:100%;justify-content:space-between;border-color:#dce5e1;background:#f9fbfa}.date-picker input{width:125px;text-align:center;height:34px}.date-picker .icon-button{width:42px}.entry-time{font-size:11px;gap:10px}.history-list li{gap:12px;flex-wrap:wrap;align-items:flex-start;padding:17px 0}.entry-time{padding-top:4px}.entry-description{flex-basis:calc(100% - 165px)}.entry-amount{font-size:16px;padding-top:3px}.entry-actions{margin-left:auto}.entry-actions .icon-button{width:40px;height:35px}.entry-sync{font-size:8px}.entry-description strong{font-size:12px}.fab{width:57px;height:57px;min-height:57px;padding:0;justify-content:center;right:19px}.fab span{display:none}.settings-grid{grid-template-columns:1fr;gap:15px}.settings-section{padding:23px}.management-list article{padding:20px;gap:12px}.management-list article>div{flex-basis:calc(100% - 58px)}.management-list article>.secondary{margin-left:46px}.management-list p{font-size:10px}.management-list .text-button{font-size:11px}.management-list .secondary{font-size:11px;min-height:39px;padding:9px 13px}.dialog{padding:23px 20px;border-radius:20px;max-height:calc(100dvh - 24px);width:calc(100% - 22px)}.dialog-header h2{font-size:21px}.form input,.form select,.form textarea{font-size:16px}.form-pair label{font-size:10px}.form-pair .input-unit input{font-size:16px}.form-pair{gap:11px}.amount-field input{font-size:30px}.onboarding .page-heading h1{font-size:29px}.onboarding-steps{gap:10px;margin-bottom:24px}.onboarding-steps span{font-size:9px}.onboarding-form{padding:23px 19px}.onboarding-form h2{font-size:18px}.onboarding .page-heading{margin-bottom:25px}.section-icon{margin-bottom:15px}.welcome{display:flex;flex-direction:column;padding:29px 23px;gap:26px;min-height:100dvh}.welcome-copy{padding:0;gap:35px}.welcome-copy .brand{font-size:20px}.welcome-copy h1{font-size:40px;margin:15px 0}.welcome-copy>div>p{font-size:13px}.welcome-copy>small,.welcome-points{display:none}.welcome-tag{font-size:10px}.login-panel{width:100%;padding:27px 23px;border-radius:20px}.welcome-art{display:none}.login-panel h2{font-size:21px}.login-panel>p{font-size:12px;margin-bottom:20px}.login-panel>small{font-size:9px}.dev-login{padding-top:15px;margin-top:18px}.conflict-versions{grid-template-columns:1fr;gap:18px}.conflict-versions>div+div{border-top:1px solid #ecd8dc;padding-top:16px}.update-banner{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.ring-block h3,.limit-number{font-size:12px}.limit-number>span{font-size:13px}.limit-label{font-size:10px}.overage,.limit-explanation{font-size:11px}.substance-card>footer>span{font-size:11px}.entry-description p{font-size:12px}.entry-sync{font-size:10px}.entry-description small{font-size:11px}.empty-history p,.section-heading p{font-size:12px}.form-footnote{font-size:11px}.help-copy{font-size:12px}.settings-section>p.help-copy{font-size:12px}.privacy-note{font-size:12px}.entry-actions .icon-button{width:44px;height:44px}.connection-banner p{font-size:12px}.nav-item{font-size:13px}@media(max-width:800px){.nav-item{font-size:10px}.limit-label{font-size:9px}.ring-block h3{font-size:11px}}@media(max-width:580px){.limit-label{font-size:10px}.ring-block h3{font-size:12px}.entry-description strong{font-size:13px}.entry-amount span,.management-list p{font-size:12px}.onboarding-steps span{font-size:10px}}@media(max-width:370px){.ring-block h3{font-size:10px}.limit-label{font-size:9px}.limit-number{font-size:11px}.ring-pair{gap:4px}.ring{width:132px}}
