:root{--bg:#f2f2f7;--surface:#fff;--surface-2:#f2f2f7;--fill:#7676801f;--text:#000;--muted:#3c3c439e;--separator:#3c3c4329;--grid:#3c3c431a;--border:#3c3c4329;--accent:#007aff;--accent-text:#fff;--accent-soft:#007aff1f;--ok:#248a3d;--ok-strong:#34c759;--low:#ff3b30;--high:#c77700;--insulin:#af52de;--carbs:#ff9500;--range:#34c7591a;--range-strong:#34c75973;--warn-bg:#ff95001f;--err-bg:#ff3b301a;--note-bg:#007aff14;--glass-bg:#ffffff94;--glass-border:#ffffffbf;--glass-shadow:0 10px 40px #00000024, 0 1px 3px #00000014;--glass-highlight:inset 0 1px 0 #ffffffe6, inset 0 -1px 0 #ffffff40;--indicator:#76768029;--card-shadow:0 1px 2px #0000000a;--blob-1:#007aff29;--blob-2:#ff95001f;--blob-3:#34c7591f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#000;--surface:#1c1c1e;--surface-2:#2c2c2e;--fill:#7676803d;--text:#fff;--muted:#ebebf599;--separator:#54545899;--grid:#54545873;--border:#54545899;--accent:#0a84ff;--accent-text:#fff;--accent-soft:#0a84ff33;--ok:#30d158;--ok-strong:#30d158;--low:#ff453a;--high:#ffd60a;--insulin:#bf5af2;--carbs:#ff9f0a;--range:#30d1581a;--range-strong:#30d15873;--warn-bg:#ff9f0a29;--err-bg:#ff453a29;--note-bg:#0a84ff24;--glass-bg:#2c2c308c;--glass-border:#ffffff24;--glass-shadow:0 10px 40px #0000008c, 0 1px 3px #0006;--glass-highlight:inset 0 1px 0 #ffffff29, inset 0 -1px 0 #ffffff0a;--indicator:#ffffff24;--card-shadow:none;--blob-1:#0a84ff38;--blob-2:#ff9f0a1f;--blob-3:#30d1581a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#000;--surface:#1c1c1e;--surface-2:#2c2c2e;--fill:#7676803d;--text:#fff;--muted:#ebebf599;--separator:#54545899;--grid:#54545873;--border:#54545899;--accent:#0a84ff;--accent-text:#fff;--accent-soft:#0a84ff33;--ok:#30d158;--ok-strong:#30d158;--low:#ff453a;--high:#ffd60a;--insulin:#bf5af2;--carbs:#ff9f0a;--range:#30d1581a;--range-strong:#30d15873;--warn-bg:#ff9f0a29;--err-bg:#ff453a29;--note-bg:#0a84ff24;--glass-bg:#2c2c308c;--glass-border:#ffffff24;--glass-shadow:0 10px 40px #0000008c, 0 1px 3px #0006;--glass-highlight:inset 0 1px 0 #ffffff29, inset 0 -1px 0 #ffffff0a;--indicator:#ffffff24;--card-shadow:none;--blob-1:#0a84ff38;--blob-2:#ff9f0a1f;--blob-3:#30d1581a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{background:radial-gradient(60vmax 50vmax at 100% -10%, var(--blob-1), transparent 60%), radial-gradient(50vmax 40vmax at -10% 40%, var(--blob-2), transparent 60%), radial-gradient(60vmax 50vmax at 80% 110%, var(--blob-3), transparent 60%), var(--bg);min-height:100dvh;color:var(--text);letter-spacing:-.01em;background-attachment:fixed;margin:0;font:17px/1.4 -apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,system-ui,sans-serif}h1,h2,h3{letter-spacing:-.02em;margin:0;line-height:1.2}h2{font-size:20px;font-weight:700}h3{font-size:17px;font-weight:600}p{margin:0}code{background:var(--fill);border-radius:6px;padding:1px 6px;font-size:14px}a{color:var(--accent)}.app{max-width:640px;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(env(safe-area-inset-bottom) + 112px);margin:0 auto}@media (width>=1000px){.app{max-width:980px}}.page-enter{animation:.28s ease-out page-in}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.page-head{padding:12px 4px 16px}.page-head h1{letter-spacing:-.03em;font-size:34px;font-weight:800}.page-head .sub{color:var(--muted);margin-top:4px;font-size:15px}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(24px)saturate(190%);backdrop-filter:blur(24px)saturate(190%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow), var(--glass-highlight)}.tabbar-wrap{z-index:20;left:50%;bottom:calc(env(safe-area-inset-bottom) + 14px);align-items:center;gap:10px;width:min(100% - 28px,440px);display:flex;position:fixed;transform:translate(-50%)}.tabbar{border-radius:999px;flex:1;grid-template-columns:repeat(3,1fr);height:64px;padding:5px;display:grid;position:relative}.tab-indicator{background:var(--indicator);border-radius:999px;width:calc(33.3333% - 3.33333px);transition:transform .38s cubic-bezier(.3,1.3,.5,1),opacity .2s;position:absolute;top:5px;bottom:5px;left:5px}.tab{z-index:1;color:var(--text);border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:600;text-decoration:none;transition:color .2s,transform .15s;display:flex;position:relative}.tab:active,.more-btn:active{transform:scale(.94)}.tab.active{color:var(--accent)}.more-btn{width:64px;height:64px;color:var(--text);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;transition:color .2s,transform .15s;display:grid}.more-btn.active{color:var(--accent)}.sheet-backdrop{z-index:30;background:#00000040;justify-content:center;align-items:flex-end;animation:.2s ease-out fade-in;display:flex;position:fixed;inset:0}.sheet{width:min(100%,520px);margin:0 10px calc(env(safe-area-inset-bottom) + 10px);border-radius:34px;flex-direction:column;gap:14px;padding:8px 16px 18px;animation:.34s cubic-bezier(.2,1,.3,1) sheet-up;display:flex}.sheet-grabber{background:var(--separator);border-radius:3px;width:38px;height:5px;margin:0 auto}.sheet-head{justify-content:space-between;align-items:center;padding:2px 4px 0;display:flex}.sheet .list{background:var(--surface)}@keyframes fade-in{0%{opacity:0}}@keyframes sheet-up{0%{opacity:0;transform:translateY(40px)}}.icon-btn{background:var(--fill);width:34px;height:34px;color:var(--muted);cursor:pointer;border:none;border-radius:50%;place-items:center;padding:0;display:grid}.stack{flex-direction:column;gap:14px;display:flex}.row{align-items:center;gap:10px;display:flex}.row.between{justify-content:space-between}.row.wrap{flex-wrap:wrap}.grid2{grid-template-columns:1fr;gap:14px;display:grid}@media (width>=1000px){.grid2{grid-template-columns:1fr 1fr}.span2{grid-column:1/-1}}.card{background:var(--surface);box-shadow:var(--card-shadow);border-radius:22px;padding:18px}.card-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.section-label{text-transform:uppercase;letter-spacing:.02em;color:var(--muted);margin-top:8px;padding:6px 16px;font-size:13px}.section-foot{color:var(--muted);padding:6px 16px 0;font-size:13px}.list{background:var(--surface);box-shadow:var(--card-shadow);border-radius:18px;overflow:hidden}.list-row{min-height:52px;color:var(--text);align-items:center;gap:12px;padding:10px 16px;text-decoration:none;display:flex;position:relative}.list-row+.list-row:before{content:"";background:var(--separator);height:.5px;position:absolute;top:0;left:16px;right:0}.list-row .row-main{flex-direction:column;flex:1;min-width:0;display:flex}.row-title{font-size:17px}.row-sub{color:var(--muted);font-size:13px}.row-value{color:var(--muted);font-variant-numeric:tabular-nums}.row-icon{background:var(--accent);color:#fff;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;display:grid}.row-icon svg{width:20px;height:20px}.link-row svg:last-child{color:var(--muted);opacity:.6}.link-row.current .row-title{color:var(--accent);font-weight:600}.link-row:active{background:var(--fill)}.muted{color:var(--muted)}.small{font-size:14px}.tiny{font-size:12px}.ok{color:var(--ok)}.error{color:var(--low);background:var(--err-bg);border-radius:14px;padding:12px 14px;font-size:15px}.warning{background:var(--warn-bg);border-radius:14px;padding:12px 14px;font-size:15px}.note{background:var(--note-bg);border-radius:14px;padding:12px 14px;font-size:15px}.warn-text{color:var(--high);font-size:15px}.fineprint{color:var(--muted);padding:0 6px;font-size:12px;line-height:1.45}.pad-top{padding-top:12px}.gap-lg{gap:16px}label{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;display:flex}input,select{font:inherit;color:var(--text);background:var(--fill);appearance:none;border:none;border-radius:12px;width:100%;min-width:0;padding:12px 14px;font-size:17px}select{background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-repeat:no-repeat;background-size:5px 5px;padding-right:34px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:0}input[type=file]{padding:10px;font-size:15px}.inline-input{text-align:right;background:0 0;border-radius:6px;width:110px;padding:6px 0}.inline-input:focus{background:var(--fill);outline:none;padding:6px 8px}input[type=time].inline-input{text-align:left;width:auto}.big-input{background:var(--fill);border-radius:20px;justify-content:center;align-items:baseline;gap:6px;padding:10px 16px;display:flex}.big-input input{text-align:center;letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:0 0;width:100%;padding:0;font-size:56px;font-weight:700}.big-input input:focus{outline:none}.big-input .unit{color:var(--muted);font-size:24px;font-weight:600}.big-input:focus-within{box-shadow:0 0 0 2px var(--accent)}.chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chip{background:var(--fill);color:var(--text);font:inherit;cursor:pointer;border:none;border-radius:999px;padding:8px 14px;font-size:15px;font-weight:600}.chip:active{transform:scale(.95)}button{font:inherit;color:var(--accent);background:var(--fill);cursor:pointer;border:none;border-radius:14px;padding:12px 18px;font-size:17px;font-weight:600;transition:transform .12s,opacity .2s}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--accent);color:var(--accent-text)}button.block{width:100%;min-height:52px}button.link{color:var(--accent);background:0 0;padding:4px;font-size:15px;font-weight:500}button.danger{color:var(--low)}.seg{background:var(--fill);border-radius:10px;gap:2px;padding:2px;display:flex}.seg button{color:var(--text);white-space:nowrap;background:0 0;border-radius:8px;flex:1;padding:7px 10px;font-size:14px;font-weight:500}.seg button.on{background:var(--surface);font-weight:600;box-shadow:0 2px 6px #0000001f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .seg button.on{background:#636366}}:root[data-theme=dark] .seg button.on{background:#636366}.switch{flex:none;width:51px;height:31px;position:relative}.switch input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute}.switch span{background:var(--fill);border-radius:999px;transition:background .2s;position:absolute;inset:0}.switch span:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .25s cubic-bezier(.3,1.3,.5,1);position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #0003}.switch input:checked+span{background:var(--ok-strong)}.switch input:checked+span:after{transform:translate(20px)}details>summary{cursor:pointer;list-style:none}details>summary::-webkit-details-marker{display:none}.disclosure{color:var(--accent);justify-content:space-between;align-items:center;padding:4px 0;font-weight:500;display:flex}details[open] .disclosure svg{transform:rotate(90deg)}.disclosure svg{transition:transform .2s}.hero{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:26px 18px 20px;display:flex}.bignum{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:84px;font-weight:800;line-height:1}.bignum .arrow{margin-left:6px;font-size:48px;font-weight:600}.bignum.low{color:var(--low)}.bignum.high{color:var(--high)}.bignum.inrange{color:var(--ok)}.tiles{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin-top:16px;display:grid}.tile{background:var(--surface-2);border-radius:16px;flex-direction:column;gap:2px;padding:12px 8px;display:flex}.tile-label{color:var(--muted);font-size:12px}.tile-value{font-variant-numeric:tabular-nums;font-size:19px;font-weight:700}.tile-value small{color:var(--muted);font-size:13px;font-weight:600}.tile-value.dim{color:var(--muted);font-size:15px;font-weight:600}.chart{margin:4px -6px 0}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-top:6px;font-size:12px;display:flex}.legend i{vertical-align:0;border-radius:50%;width:9px;height:9px;margin-right:5px;display:inline-block}.dose{text-align:center;letter-spacing:-.04em;color:var(--accent);font-variant-numeric:tabular-nums;font-size:64px;font-weight:800}.dose small{font-size:26px;font-weight:700}.dose.blocked{color:var(--low);font-size:34px}.collecting{background:var(--note-bg);text-align:center;border-radius:18px;gap:6px;padding:16px}.collecting strong{font-size:17px}.table-wrap{margin:0 -4px;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:15px}.table th{text-align:left;color:var(--muted);border-bottom:.5px solid var(--separator);white-space:nowrap;padding:8px;font-size:12px;font-weight:600}.table td{border-bottom:.5px solid var(--separator);vertical-align:top;font-variant-numeric:tabular-nums;padding:10px 8px}.table tr:last-child td{border-bottom:none}.table.compact td{padding:7px 8px}.block-card{grid-template-columns:1fr 1fr;gap:6px 14px;padding:14px 16px;display:grid;position:relative}.block-card+.block-card:before{content:"";background:var(--separator);height:.5px;position:absolute;top:0;left:16px;right:0}.block-time{grid-column:1/-1;justify-content:space-between;align-items:baseline;display:flex}.block-time strong{font-size:17px}.metric-label{color:var(--muted);font-size:12px}.metric-value{font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.metric-value small{color:var(--muted);font-size:13px;font-weight:600}.metric-value.dim{color:var(--muted);font-size:15px;font-weight:600}.stat-chips{flex-wrap:wrap;gap:8px;display:flex}.stat-chip{background:var(--fill);color:var(--muted);border-radius:999px;padding:5px 11px;font-size:13px}.stat-chip b{color:var(--text);font-weight:600}.status-dot{background:var(--muted);border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.status-dot.on{background:var(--ok-strong)}.status-dot.err{background:var(--low)}.file-btn{display:inline-flex;position:relative;overflow:hidden}.file-btn input{opacity:0;cursor:pointer;position:absolute;inset:0}.printable h1{margin-bottom:6px;font-size:24px}.printable .table{margin:16px 0}.print-table td.hl{font-weight:700}.sign{flex-wrap:wrap;gap:40px;margin-top:28px;display:flex}@media print{body{color:#000;background:#fff}.no-print{display:none!important}.app{max-width:none;padding:0}.card{box-shadow:none;padding:0}.table th,.table td{color:#000;border-bottom:1px solid #999}}button.list-row{width:100%;color:var(--accent);background:0 0;border-radius:0;justify-content:flex-start;font-size:17px;font-weight:500}button.list-row:active{background:var(--fill);transform:none}.file-btn{flex-direction:row}.button-like{background:var(--accent);width:100%;min-height:50px;color:var(--accent-text);border-radius:14px;justify-content:center;align-items:center;font-size:17px;font-weight:600;display:inline-flex}.file-btn:active .button-like{transform:scale(.98)}button.choice-row{width:100%;color:var(--text);text-align:left;background:0 0;border-radius:0;font-weight:400}button.choice-row:active{background:var(--fill);transform:none}.check{color:var(--accent);place-items:center;width:22px;display:grid}.theme-preview{border:.5px solid var(--separator);border-radius:8px;flex:none;width:30px;height:30px}.theme-preview.system{background:linear-gradient(135deg,#f2f2f7 50%,#1c1c1e 50%)}.theme-preview.light{background:#f2f2f7}.theme-preview.dark{background:#1c1c1e}.auth-wrap{max-width:420px;min-height:100dvh;padding:calc(env(safe-area-inset-top) + 24px) 16px calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;justify-content:center;gap:22px;margin:0 auto;display:flex}.auth-brand{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.auth-brand h1{letter-spacing:-.03em;font-size:32px;font-weight:800}.auth-logo{background:linear-gradient(145deg,#0a84ff,#5e5ce6);border-radius:20px;place-items:center;width:72px;height:72px;display:grid;box-shadow:0 10px 30px #0a84ff59}.auth-card{padding:20px}.mono{letter-spacing:.04em;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.inline-select{width:auto;max-width:52%;padding:6px 30px 6px 10px;font-size:15px}button.list-row.danger,button.link.danger{color:var(--low)}form.list-row{flex-direction:column}.ptr{z-index:25;left:50%;top:calc(env(safe-area-inset-top) + 6px);width:40px;height:40px;color:var(--accent);pointer-events:none;border-radius:50%;place-items:center;display:grid;position:fixed}.ptr-spinner{border:2.4px solid var(--accent);border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite ptr-spin}@keyframes ptr-spin{to{transform:rotate(360deg)}}
