:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f2f7;--card:#fff;--fill:#eeeef3;--label:#1c1c1e;--secondary:#3c3c439e;--tertiary:#3c3c4352;--separator:#3c3c4329;--blue:#007aff;--green:#34c759;--green-dark:#248a3d;--red:#ff3b30;--orange:#ff9500;--radius:14px;--tabbar-h:56px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);color:var(--label);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,system-ui,sans-serif;font-size:17px;line-height:1.35}*{box-sizing:border-box}html,body{background:var(--bg);overscroll-behavior-y:none;margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}.num{font-variant-numeric:tabular-nums}.page{max-width:720px;padding:calc(var(--safe-top) + 12px) 16px calc(var(--tabbar-h) + var(--safe-bottom) + 24px);margin:0 auto}.page-header{justify-content:space-between;align-items:flex-end;gap:12px;margin:8px 4px 16px;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.02em;color:var(--secondary);font-size:13px;font-weight:600}.large-title{letter-spacing:-.02em;margin:0;font-size:32px;font-weight:700}.section-title{margin:28px 4px 10px;font-size:20px;font-weight:700}.section-footer{color:var(--secondary);margin:8px 4px 0;font-size:13px}.card{background:var(--card);border-radius:var(--radius);padding:16px}.card+.card,.grid-2+.card,.card+.grid-2{margin-top:12px}.grid-2>.card,.grid-3>.card{margin-top:0}.card-title{color:var(--secondary);margin:0 0 6px;font-size:15px;font-weight:600}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.big-value{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:700}.big-value small{color:var(--secondary);margin-left:3px;font-size:15px;font-weight:600}.muted{color:var(--secondary)}.small{font-size:13px}.good{color:var(--green-dark)}.bad{color:var(--red)}.list{background:var(--card);border-radius:var(--radius);overflow:hidden}.row{text-align:left;align-items:center;gap:12px;width:100%;min-height:48px;padding:10px 16px;display:flex;position:relative}.row+.row:before{content:"";border-top:.5px solid var(--separator);position:absolute;top:0;left:16px;right:0}button.row:active{background:var(--fill)}.row-main{flex:1;min-width:0}.row-sub{color:var(--secondary);font-size:13px}.row-end{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.chevron{color:var(--tertiary);font-size:20px;line-height:1}.btn{background:var(--blue);color:#fff;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:50px;padding:0 20px;font-weight:600;display:inline-flex}.btn:active{opacity:.75}.btn:disabled{opacity:.4}.btn.secondary{color:var(--blue);background:#007aff1f}.btn.danger{color:var(--red);background:#ff3b301f}.link{color:var(--blue);font-weight:400}.icon-btn{background:var(--blue);color:#fff;border-radius:18px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.field{align-items:center;gap:12px;min-height:48px;padding:6px 16px;display:flex;position:relative}.field+.field:before{content:"";border-top:.5px solid var(--separator);position:absolute;top:0;left:16px;right:0}.field label{flex:1}.field input,.field select{text-align:right;color:var(--secondary);font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;min-width:0;max-width:55%}.field input:focus{color:var(--label)}.field .unit{color:var(--secondary);margin-left:-6px}.segmented{background:#7676801f;border-radius:9px;padding:2px;display:flex}.segmented button{border-radius:7px;flex:1;padding:6px 8px;font-size:14px;font-weight:500}.segmented button[aria-pressed=true]{background:#fff;font-weight:600;box-shadow:0 3px 8px #0000001f,0 1px 1px #0000000a}.segmented.on-dark{background:#ffffff29}.segmented.on-dark button{color:#fff}.segmented.on-dark button[aria-pressed=true]{box-shadow:none;background:#ffffff4d}.tabbar{z-index:10;padding-bottom:var(--safe-bottom);-webkit-backdrop-filter:saturate(180%)blur(20px);border-top:.5px solid var(--separator);background:#f9f9f9db;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar-inner{width:100%;max-width:720px;height:var(--tabbar-h);display:flex}.tabbar button{color:#8e8e93;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:10px;font-weight:500;display:flex}.tabbar button[aria-current=page]{color:var(--blue)}.tabbar svg{width:26px;height:26px}.sheet-backdrop{z-index:20;background:#00000052;justify-content:center;align-items:flex-end;animation:.2s fade;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:560px;max-height:calc(100dvh - var(--safe-top) - 24px);background:var(--bg);padding:0 16px calc(var(--safe-bottom) + 20px);border-radius:14px 14px 0 0;animation:.28s cubic-bezier(.2,.9,.3,1) slide-up;overflow-y:auto}@media (width>=700px){.sheet-backdrop{align-items:center}.sheet{border-radius:14px}}.sheet-header{z-index:1;background:var(--bg);grid-template-columns:1fr auto 1fr;align-items:center;padding:14px 0 12px;display:grid;position:sticky;top:0}.sheet-header h2{margin:0;font-size:17px;font-weight:600}.sheet-header .end{justify-self:end;font-weight:600}@keyframes fade{0%{opacity:0}}@keyframes slide-up{0%{transform:translateY(100%)}}.photo-slot{aspect-ratio:3/4;background:var(--card);border:1.5px dashed var(--tertiary);color:var(--secondary);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:13px;display:flex;position:relative;overflow:hidden}.photo-slot img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.photo-slot.filled{border:0}.photo-slot .remove{color:#fff;z-index:1;background:#0000008c;border-radius:13px;width:26px;height:26px;font-size:15px;line-height:26px;position:absolute;top:6px;right:6px}.photo-slot .tag{z-index:1;color:#fff;background:#0000008c;border-radius:10px;padding:2px 8px;font-size:12px;font-weight:600;position:absolute;bottom:6px;left:6px}.empty{text-align:center;color:var(--secondary);padding:40px 24px}.empty h3{color:var(--label);margin:12px 0 6px;font-size:20px}
