@font-face{font-family:Nunito;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/nunito-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/nunito-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0f1f;--bg-deep:#070b16;--surface:#121a2e;--surface-2:#1a2440;--surface-3:#222d4f;--outline:#252f52;--outline-strong:#34406b;--text-1:#eef1fb;--text-2:#a2adcd;--text-3:#8491b3;--accent:#6366f1;--accent-bright:#8d93fb;--accent-soft:#6366f129;--accent-ring:#aab2fd;--on-accent:#f6f7ff;--ok:#2dd4bf;--warn:#fbbf24;--bad:#fb7185;--info:#7dd3fc;--ok-soft:#2dd4bf24;--warn-soft:#fbbf2424;--bad-soft:#fb718524;--info-soft:#7dd3fc24;--shadow-1:0 1px 2px #02040c66;--shadow-2:0 10px 30px -8px #02040c8c;--shadow-3:0 24px 60px -16px #02040ca6;--radius-s:10px;--radius-m:14px;--radius-l:20px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--font:"Nunito", ui-rounded, "Segoe UI", system-ui, -apple-system, sans-serif;--text-xs:.75rem;--text-sm:.8125rem;--text-md:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--tabbar-h:64px;--topbar-h:60px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:var(--text-base);color:var(--text-1);background:var(--bg);background-image:radial-gradient(1200px 600px at 50% -12%,#6366f11f,#0000 60%),radial-gradient(900px 500px at 100% 110%,#2dd4bf0d,#0000 55%);background-attachment:fixed;min-height:100dvh;margin:0;font-weight:500;line-height:1.5}::selection{color:var(--text-1);background:#6366f166}h1,h2,h3,h4,p{margin:0}h1,h2,h3{letter-spacing:-.01em;font-weight:800;line-height:1.15}a{color:var(--accent-bright);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}ul{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--accent-ring);outline-offset:3px;border-radius:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.error{color:var(--bad);font-weight:700;font-size:var(--text-md)}.error:empty{display:none}.ok{color:var(--ok)}.bad{color:var(--bad)}.code{letter-spacing:.08em;font-family:Nunito,ui-monospace,monospace;font-weight:800}.pagehead{gap:var(--space-1);margin-bottom:var(--space-5);display:grid}.pagehead h1{font-size:var(--text-2xl)}.pagehead-sub{color:var(--text-2);font-size:var(--text-md)}.center{min-height:100dvh;padding:var(--space-5) var(--space-4);place-items:center;display:grid}.content{padding:var(--space-4) var(--space-4) calc(var(--tabbar-h) + var(--space-6) + env(safe-area-inset-bottom));gap:var(--space-5);align-content:start;max-width:720px;min-height:100dvh;margin:0 auto;display:grid}.shell{min-height:100dvh}.skip-link{top:var(--space-3);left:var(--space-3);z-index:200;background:var(--accent);color:var(--on-accent);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);font-weight:800;position:fixed;transform:translateY(-200%)}.skip-link:focus{transform:none}.brand{align-items:center;gap:var(--space-2);color:var(--text-1);font-weight:900;font-size:var(--text-lg);letter-spacing:-.02em;display:flex}.brand:hover{text-decoration:none}.brand-mark{color:#fff;background:linear-gradient(160deg,#7178f8,#4f46e5);border-radius:11px;flex:none;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 4px 14px -4px #6366f199}.brand-mark svg{width:20px;height:20px}.topbar{z-index:40;align-items:center;gap:var(--space-3);height:calc(var(--topbar-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--space-4) 0;-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4);border-bottom:1px solid var(--outline);background:#0a0f1fdb;display:flex;position:sticky;top:0}.topbar .grow{flex:1}.home-picker{min-width:0;position:relative}.home-picker select{appearance:none;color:var(--text-2);font:inherit;font-weight:700;font-size:var(--text-md);padding:var(--space-2) 24px var(--space-2) 4px;cursor:pointer;text-overflow:ellipsis;background:0 0;border:0;max-width:46vw}.home-picker .chevron{width:16px;height:16px;color:var(--text-3);pointer-events:none;position:absolute;top:50%;right:0;transform:translateY(-50%)}.avatar{border-radius:var(--radius-pill);background:var(--accent-soft);width:38px;height:38px;color:var(--accent-bright);font-weight:800;font-size:var(--text-sm);flex:none;place-items:center;display:grid}.tabbar{z-index:50;-webkit-backdrop-filter:blur(16px)saturate(1.4);backdrop-filter:blur(16px)saturate(1.4);border-top:1px solid var(--outline);padding-bottom:env(safe-area-inset-bottom);background:#0a0f1feb;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -12px 30px -12px #02040c99}.tab{min-height:var(--tabbar-h);color:var(--text-3);font-size:var(--text-xs);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0;font-weight:700;display:flex}.tab svg{width:24px;height:24px}.tab.active{color:var(--accent-bright)}.tab.active:before{content:"";border-radius:0 0 var(--radius-pill) var(--radius-pill);background:var(--accent);width:24px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.tab{position:relative}.tab:active{background:var(--accent-soft)}.sidebar{display:none}.overlay{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#040710b8;transition:opacity .2s;position:fixed;inset:0}.overlay.show{opacity:1;pointer-events:auto}.sheet{z-index:70;background:var(--surface);border-top:1px solid var(--outline);border-radius:var(--radius-l) var(--radius-l) 0 0;box-shadow:var(--shadow-3);padding:var(--space-2) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));max-height:82dvh;transition:transform .26s cubic-bezier(.22,1,.36,1);position:fixed;bottom:0;left:0;right:0;overflow:auto;transform:translateY(105%)}.sheet.show{transform:none}.sheet-grip{border-radius:var(--radius-pill);background:var(--outline-strong);width:44px;height:5px;margin:var(--space-2) auto var(--space-5)}.sheet-head{align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--outline);margin-bottom:var(--space-3);display:flex}.sheet-title{font-weight:800;font-size:var(--text-lg)}.sheet-sub{color:var(--text-3);font-size:var(--text-sm)}.sheet-section{padding:var(--space-3) 0;border-bottom:1px solid var(--outline)}.sheet-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);margin-bottom:var(--space-2);font-weight:800}.sheet-row{align-items:center;gap:var(--space-3);width:100%;min-height:48px;padding:var(--space-3);border-radius:var(--radius-s);color:var(--text-1);font:inherit;font-weight:700;font-size:var(--text-base);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.sheet-row svg{width:21px;height:21px;color:var(--text-2);flex:none}.sheet-row:hover,.sheet-row:active{background:var(--surface-2)}.sheet-row.danger,.sheet-row.danger svg{color:var(--bad)}.sheet-home-select{margin-top:var(--space-3)}.panel{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius-m);padding:var(--space-4);box-shadow:var(--shadow-1)}.collapsible{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius-m);box-shadow:var(--shadow-1);overflow:hidden}.collapsible-head{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);display:flex}.collapsible-toggle{align-items:center;gap:var(--space-2);color:var(--text-1);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;flex:1;min-width:0;padding:0;display:flex}.collapsible-toggle:hover .panel-title{color:var(--accent-bright)}.collapsible-title{gap:2px;min-width:0;display:grid}.collapsible-chevron{width:20px;height:20px;color:var(--text-3);transition:transform var(--dur-1,.15s) ease;flex:none}.collapsible.is-open .collapsible-chevron{transform:rotate(180deg)}.collapsible-body{padding:0 var(--space-4) var(--space-4);display:none}.collapsible.is-open .collapsible-body{display:block}.collapsible-body>*+*,.panel>*+*{margin-top:var(--space-2)}.panel-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.panel-title{font-size:var(--text-lg);letter-spacing:-.01em;font-weight:800}.panel-title .badge{margin-left:var(--space-2)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:10px var(--space-5);border-radius:var(--radius-m);border:1px solid var(--outline-strong);background:var(--surface-2);color:var(--text-1);font:inherit;font-weight:800;font-size:var(--text-base);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s,background .15s,filter .15s;display:inline-flex}.btn svg{flex:none;width:19px;height:19px}.btn:active{transform:scale(.97)}.btn-prime{color:var(--on-accent);background:linear-gradient(170deg,#7077f8,#5550ec);border-color:#0000;box-shadow:0 8px 20px -8px #6366f1b3}.btn-ghost{color:var(--accent-bright);background:0 0;border-color:#0000;font-weight:700}.btn-ghost.danger{color:var(--bad)}.btn-soft{background:var(--accent-soft);color:var(--accent-bright);border-color:#0000}.btn-block{width:100%}.btn-sm{min-height:40px;padding:6px var(--space-4);font-size:var(--text-md);border-radius:var(--radius-s)}.btn-danger{color:#fff;background:linear-gradient(170deg,#fb7185,#e11d48);border-color:#0000;box-shadow:0 8px 20px -8px #e11d48b3}.btn:disabled{opacity:.55;cursor:default;transform:none}.confirm{z-index:80;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#040710b8;justify-content:center;align-items:center;animation:.18s confirm-fade;display:flex;position:fixed;inset:0}.confirm-card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius-l);width:100%;max-width:340px;box-shadow:var(--shadow-3);padding:var(--space-5);animation:.22s cubic-bezier(.22,1,.36,1) confirm-pop}.confirm-title{font-size:var(--text-lg);margin-bottom:var(--space-2);font-weight:800}.confirm-msg{color:var(--text-2);font-size:var(--text-md);margin-bottom:var(--space-4);line-height:1.5}.confirm-actions{gap:var(--space-2);justify-content:flex-end;display:flex}@keyframes confirm-fade{0%{opacity:0}}@keyframes confirm-pop{0%{opacity:0;transform:scale(.96)translateY(6px)}}.icon-btn{border-radius:var(--radius-s);width:44px;height:44px;color:var(--text-3);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;place-items:center;transition:background .15s,color .15s;display:grid}.icon-btn svg{width:20px;height:20px}.icon-btn:hover,.icon-btn:active{background:var(--surface-2);color:var(--text-2)}.icon-btn.danger{color:var(--bad-soft)}.icon-btn.danger:hover,.icon-btn.danger:active{background:var(--bad-soft);color:var(--bad)}.field{gap:var(--space-2);display:grid}.field>label{font-size:var(--text-sm);letter-spacing:.02em;color:var(--text-2);font-weight:800}.field-hint{font-size:var(--text-xs);color:var(--text-3);margin-top:-2px;font-weight:600}.field-input{position:relative}.field-ic{color:var(--text-3);pointer-events:none;place-items:center;display:grid;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.field-input.reveal>input{padding-right:44px}.field-reveal{width:34px;height:34px;color:var(--text-2);position:absolute;top:50%;right:6px;transform:translateY(-50%)}.input-prefix{font-size:var(--text-sm);letter-spacing:.02em;color:var(--text-2);pointer-events:none;font-weight:800;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.price-input{min-width:96px;max-width:130px}.price-input>input{height:36px;min-height:36px;font-size:var(--text-sm);text-align:right;padding-left:24px;padding-right:8px}.price-input .field-ic{font-size:var(--text-sm);color:var(--text-3);font-weight:800;left:10px}input[type=text],input:not([type]),input[type=email],input[type=password],input[type=number],input[type=date],input[type=month],input[type=time],input[type=search],select,textarea{border:1px solid var(--outline);background:var(--surface-2);width:100%;min-height:48px;color:var(--text-1);font:inherit;font-weight:600;font-size:var(--text-base);appearance:none;caret-color:var(--accent-bright);border-radius:14px;padding:10px 14px;transition:border-color .15s,background .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:var(--text-3);opacity:1;font-weight:500}input:hover,select:hover,textarea:hover{border-color:var(--outline-strong);background:var(--surface-3)}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--accent);background:var(--surface-3);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input[type=date],input[type=month],input[type=time]{min-width:0}::-webkit-calendar-picker-indicator{opacity:.55;cursor:pointer}::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2346557d' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:18px;padding-right:42px}input[type=checkbox]{appearance:none;border:1.5px solid var(--outline-strong);background:var(--surface-2);cursor:pointer;border-radius:7px;flex:none;place-content:center;width:22px;height:22px;margin:0;display:grid}input[type=checkbox]:hover{border-color:var(--accent-bright);background:var(--surface-3)}input[type=checkbox]:checked{border-color:var(--accent);background-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:15px}input[type=checkbox]:focus-visible{border-color:var(--accent-bright);box-shadow:0 0 0 3px var(--accent-soft);outline:none}textarea{resize:vertical;min-height:96px;line-height:1.45}.field-input>input,.field-input>select,.field-input>textarea{padding-left:44px}.input-prefix+input{padding-left:62px}.field-row{gap:var(--space-3);display:grid}.adder{gap:var(--space-3);grid-template-columns:minmax(0,1fr);align-items:center;display:grid}.adder .btn{width:100%}.actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.actions-mt{margin-top:var(--space-4)}.grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}.stack{gap:var(--space-4);display:grid}.or-divider{align-items:center;gap:var(--space-3);color:var(--text-3);font-size:var(--text-md);font-weight:700;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--outline);flex:1;height:1px}.list{gap:var(--space-2);display:grid}.item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius-m);display:flex}.item-main{flex:1;gap:2px;min-width:0;display:grid}.item-title{font-weight:800;font-size:var(--text-base);overflow-wrap:anywhere}.item-meta{font-size:var(--text-sm);color:var(--text-2)}.item-meta strong{color:var(--text-1)}.item-meta .reminder-icon{vertical-align:-2px;width:14px;height:14px;margin-right:4px;display:inline-block}.medical-completed .item-title{text-decoration:line-through}.item>.icon-btn{flex:none}.pantry-item{flex-wrap:wrap;align-items:flex-start}.pantry-actions{flex:1 0 100%;min-width:0}.pantry-actions .price-input{flex:96px;max-width:none}.item-amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800}.item-line{align-items:baseline;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.debt-item{flex-wrap:wrap}.debt-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:none;display:flex}.debt-payment{align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--outline);flex:1 0 100%;grid-template-columns:minmax(0,1fr) auto;display:grid}.budget-actions{margin-top:var(--space-2)}.budget-split{gap:var(--space-1);padding:var(--space-2) 0;grid-template-columns:1fr;display:grid}.budget-split .item-line{gap:var(--space-3)}.budget-split .badge{flex-shrink:0}.budget-payment{gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--outline);display:grid}.empty-item{text-align:center;color:var(--text-3);font-size:var(--text-md);padding:var(--space-4) var(--space-3)}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);font-size:var(--text-xs);letter-spacing:.02em;background:var(--surface-3);color:var(--text-2);text-transform:capitalize;padding:2px 10px;font-weight:800;display:inline-flex}.badge.admin{background:var(--warn-soft);color:var(--warn)}.badge.member{background:var(--info-soft);color:var(--info)}.badge.pending{background:var(--warn-soft);color:var(--warn)}.badge.settled,.badge.paid{background:var(--ok-soft);color:var(--ok)}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);border:1px solid var(--outline-strong);background:var(--surface-2);color:var(--text-1);font:inherit;font-size:var(--text-md);cursor:pointer;font-weight:800;display:inline-flex}.chip svg{width:16px;height:16px}.chip:active{background:var(--surface-3)}.stats{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.stat{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius-m);padding:var(--space-4);gap:var(--space-1);display:grid}.stat-label{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);font-weight:800}.stat-value{font-size:var(--text-xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-weight:800}.bar{border-radius:var(--radius-pill);background:var(--bg-deep);height:10px;overflow:hidden;box-shadow:inset 0 1px 2px #0006}.bar-fill{border-radius:var(--radius-pill);background:var(--accent);height:100%}.bar-fill.ok{background:var(--ok)}.bar-fill.warn{background:var(--warn)}.bar-fill.bad{background:var(--bad)}.empty{text-align:center;padding:var(--space-6) var(--space-4);color:var(--text-2);gap:var(--space-1);place-items:center;display:grid}.empty-ic{background:var(--accent-soft);width:60px;height:60px;color:var(--accent-bright);margin-bottom:var(--space-2);border-radius:18px;place-items:center;display:grid}.empty-ic svg{width:28px;height:28px}.empty-title{color:var(--text-1);font-weight:800;font-size:var(--text-base)}.auth{gap:var(--space-5);justify-items:center;width:100%;max-width:420px;display:grid}.auth .panel{width:100%;padding:var(--space-6) var(--space-5);border-radius:var(--radius-l)}.auth-mark{color:#fff;background:linear-gradient(160deg,#7178f8,#4f46e5);border-radius:20px;place-items:center;width:60px;height:60px;display:grid;box-shadow:0 10px 30px -10px #6366f1cc}.auth-mark svg{width:34px;height:34px}.auth-title{font-size:var(--text-2xl);text-align:center}.auth-sub{color:var(--text-2);text-align:center;font-size:var(--text-md)}.ahead{gap:var(--space-2);text-align:center;justify-items:center;display:grid}.homes-hero{text-align:center;padding:var(--space-6) var(--space-4);gap:var(--space-2);display:grid}.homes-hero h1{font-size:var(--text-2xl)}.homes-grid{gap:var(--space-4);display:grid}.day-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.day-dot{border-radius:var(--radius-m);background:var(--accent-soft);width:40px;height:40px;color:var(--accent-bright);place-items:center;display:grid}.day-dot svg{width:20px;height:20px}.profile-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.profile-avatar{border-radius:var(--radius-pill);background:var(--accent-soft);width:44px;height:44px;color:var(--accent-bright);flex:none;place-items:center;font-weight:800;display:grid}.sec-title{font-size:var(--text-sm);letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);margin:var(--space-4) 0 var(--space-2);font-weight:800}.invite-box{align-items:center;gap:var(--space-3);background:var(--bg-deep);border:1px dashed var(--outline-strong);border-radius:var(--radius-m);padding:var(--space-3) var(--space-4);display:flex}.invite-code{font-size:var(--text-xl);letter-spacing:.14em;color:var(--accent-bright);flex:1;font-weight:800}.qr-card{justify-items:center;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--outline);text-align:center;display:grid}.qr-frame{padding:var(--space-3);border-radius:var(--radius-m);background:#fff;place-items:center;display:grid}.qr-frame svg{max-width:min(220px,58vw);height:auto;display:block}.scanner{gap:var(--space-2);padding:var(--space-2);border:1px solid var(--outline-strong);border-radius:var(--radius-m);background:var(--bg-deep);display:grid;overflow:hidden}.scanner-video{aspect-ratio:1;object-fit:cover;border-radius:var(--radius-s);width:100%;display:block}@media (width>=640px){.pantry-item{flex-wrap:nowrap;align-items:center}.pantry-actions{flex:none}.pantry-actions .price-input{flex:0 auto;max-width:130px}.field-row{grid-template-columns:1fr 1fr}.adder{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}.content{padding-left:var(--space-5);padding-right:var(--space-5)}.stats{grid-template-columns:repeat(4,1fr)}}@media (width>=940px){:root{--space-4:20px}.topbar,.tabbar{display:none}.shell{padding-left:264px}.sidebar{z-index:30;gap:var(--space-5);width:264px;padding:calc(var(--space-5) + env(safe-area-inset-top)) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--outline);background:#070b16d9;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-nav{gap:var(--space-1);flex:1;align-content:start;display:grid}.sidelink{align-items:center;gap:var(--space-3);min-height:46px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-s);color:var(--text-2);font-weight:700;font-size:var(--text-base);display:flex}.sidelink:hover{background:var(--surface-2);color:var(--text-1);text-decoration:none}.sidelink.active{background:var(--accent-soft);color:var(--accent-bright)}.sidelink svg{width:21px;height:21px}.sidebar-foot{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--outline);display:grid}.content{max-width:900px;padding:var(--space-6) var(--space-6) var(--space-7)}}@media (hover:hover) and (pointer:fine){.btn:hover{filter:brightness(1.08)}.btn-prime:hover{filter:brightness(1.06)}.sidelink:hover,.sheet-row:hover,.icon-btn:hover{transition-duration:.15s}}@media (pointer:coarse){.btn{min-height:50px}}
