:root{color:#1d2926;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;--surface:#f7f8f6;--brand:#245943;--muted:#597065;--border:#e0e8e0;background:#e8ede9;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:280px;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.65}button:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #84bda8}h1,h2,p{margin:0}.login-page{background:var(--surface);place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{border:1px solid var(--border);background:#fff;border-radius:24px;gap:12px;width:min(100%,390px);padding:30px 24px;display:grid;box-shadow:0 8px 35px #183f2210}.brand-mark{color:#fff;background:#234f3f;border-radius:11px;flex:none;place-items:center;width:32px;height:32px;font-size:20px;display:inline-grid}.brand-mark-large{border-radius:16px;width:52px;height:52px;margin-bottom:8px;font-size:32px}.eyebrow{color:#597367;text-transform:uppercase;letter-spacing:1.4px;font-size:11px;font-weight:800}h1{letter-spacing:-1px;font-size:clamp(26px,6vw,34px);line-height:1.17}h2{font-size:16px}.sub{color:var(--muted);font-size:14px;line-height:1.5}.login-form{gap:9px;margin:10px 0;display:grid}.login-form label{color:#456356;margin-top:8px;font-size:13px;font-weight:700}.login-form input{color:#243e32;background:#fff;border:1px solid #cbd9d0;border-radius:12px;width:100%;min-width:0;min-height:48px;padding:13px 12px;font-size:16px}.primary,.secondary{border:1px solid #0000;border-radius:12px;min-height:46px;padding:12px 16px;font-weight:750}.primary{color:#fff;background:var(--brand)}.login-form .primary{margin-top:12px}.secondary{color:var(--brand);background:#eaf3ec;border-color:#d4e4d9}.full{width:100%}.hint{color:var(--muted);font-size:12px;line-height:1.65}.error-message{color:#913b36;background:#fff0ee;border-radius:10px;padding:10px;font-size:13px;line-height:1.5}.app-shell{background:var(--surface);flex-direction:column;width:min(100%,640px);height:100dvh;margin:auto;display:flex}.header{padding:calc(15px + env(safe-area-inset-top,0px)) 20px 12px;justify-content:space-between;align-items:center;display:flex}.brand{letter-spacing:-.6px;align-items:center;gap:9px;font-size:18px;font-weight:850;display:flex}.avatar,.member-avatar{color:#245a46;background:#d6ebe0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;font-weight:800;display:grid}.content{overscroll-behavior:contain;flex-direction:column;flex:1;gap:12px;padding:12px 20px 28px;display:flex;overflow:auto}.content>*{flex-shrink:0}.content>h1{margin-top:1px}.content>.sub{margin-bottom:10px}.greeting-mark{color:#46765b}.card,.dashboard-card{border:1px solid var(--border);background:#fff;border-radius:19px;width:100%;padding:17px;box-shadow:0 2px 9px #183f2207}.dashboard-card{text-align:left;color:#1d2926;justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-card>span:first-child{gap:7px;display:grid}.dashboard-card strong{font-size:16px}.dashboard-card small{color:var(--muted);font-size:13px}.dashboard-card.soft{background:#e4eee6;border-color:#e4eee6}.dashboard-card.soft strong{letter-spacing:-.6px;font-size:24px}.dashboard-icon{color:var(--brand);font-size:36px}.section-heading{margin-top:10px}.card .hint{margin-top:8px}.member-row{border-bottom:1px solid #edf1ed;align-items:center;gap:12px;padding:12px 0;font-size:14px;display:flex}.member-row:last-child{border:0}.member-avatar{flex:none;width:34px;height:34px;font-size:13px}.member-role{color:var(--muted);margin-left:auto;font-size:12px}.nav{border-top:1px solid var(--border);padding:7px 7px calc(9px + env(safe-area-inset-bottom,0px));background:#fff;flex:none;display:flex}.nav button{color:#5f7569;background:0 0;border:0;border-radius:10px;flex:1;place-items:center;gap:3px;min-width:0;min-height:48px;font-weight:700;display:grid}.nav button.active{color:var(--brand);background:#eff6f1}.nav-icon{font-size:24px;line-height:26px}.nav small{font-size:11px}.nav .nav-plus>span{background:var(--brand);color:#fff;border-radius:15px;place-items:center;width:42px;height:42px;margin-top:-20px;font-size:28px;display:grid}@media (width>=700px){.app-shell{border-inline:1px solid var(--border)}}.brand-mark svg{width:20px;height:20px}.greeting-mark{vertical-align:baseline;width:24px;height:24px;display:inline-block}.dashboard-card>svg{color:var(--brand);flex:none}.nav .nav-icon{width:23px;height:23px}.nav .nav-plus>span{box-shadow:0 6px 12px #24594333}.nav .nav-plus small{color:var(--brand)}.section-row,.sheet-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.section-row{margin-top:10px}.ghost{color:var(--brand);background:0 0;border:0;min-height:44px;padding:8px 0;font-size:13px;font-weight:750}.with-icon{justify-content:center;align-items:center;gap:8px;display:flex}.quick-sheet{width:min(100%,640px);max-width:none;max-height:85dvh;color:inherit;background:#fff;border:0;border-radius:25px 25px 0 0;margin:0 auto;padding:0;position:fixed;inset:auto 0 0}.quick-sheet::backdrop{background:#17282088}.sheet-inner{padding:18px 20px calc(23px + env(safe-area-inset-bottom,0px));gap:16px;display:grid}.sheet-heading h2{letter-spacing:-.5px;font-size:21px}.icon-button{color:var(--brand);background:#eef2ef;border:0;border-radius:10px;flex:none;place-items:center;width:44px;height:44px;display:grid}.quick-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quick-choices button{text-align:left;color:#315a48;background:#fff;border:1px solid #e3ebe4;border-radius:14px;justify-items:start;gap:6px;min-height:88px;padding:12px;display:grid}.quick-choices button strong{font-size:14px}.quick-choices button small{color:var(--muted);font-size:12px}.quick-choices button svg{width:21px;height:21px}.content{padding-inline:17px}.content .sub{margin-bottom:10px}@media (width<=360px){.content{padding-inline:12px}.header{padding-inline:14px}.quick-choices button{padding:10px}}.shopping-inputrow{align-items:center;gap:8px;display:flex}.shopping-inputrow .primary{flex:none;padding-inline:12px;font-size:13px}.shopping-field{color:#243e32;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #d5e1d8;border-radius:12px;min-height:46px;padding:12px;font-size:16px}.shopping-field::placeholder{color:#687e71;font-size:14px}.shopping-tools{justify-content:space-between;gap:8px;margin-top:-7px;display:flex}.shopping-filters{flex-wrap:wrap;gap:7px;display:flex}.shopping-chip{color:#526b5e;background:#fff;border:1px solid #e0e7e1;border-radius:30px;min-height:38px;padding:9px 13px;font-size:13px}.shopping-chip.selected{color:#205b43;background:#e5f3eb;border-color:#a8cdb9;font-weight:750}.shopping-count{color:#276748;background:#e4f3e9;border-radius:20px;padding:5px 9px;font-size:12px;font-weight:800}.shopping-list{padding-block:4px}.shopping-list>.hint{padding:12px 0}.shopping-row{border-bottom:1px solid #edf1ed;align-items:center;gap:10px;padding:10px 0;display:flex}.shopping-row:last-child{border-bottom:0}.shopping-check{color:#fff;background:#fff;border:1.5px solid #adc0b4;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-weight:850;display:grid}.shopping-check.checked{background:#2c7658;border-color:#2c7658}.shopping-name{text-align:left;color:#253d31;overflow-wrap:anywhere;background:0 0;border:0;flex:1;gap:4px;min-width:0;padding:4px 0;display:grid}.shopping-name strong{font-size:15px;font-weight:700}.shopping-name small,.history-row small{color:#597065;font-size:12px;line-height:1.45}.shopping-name .crossed{color:#728078;text-decoration:line-through}.shopping-meta{flex-wrap:wrap;align-items:center;gap:5px 9px;display:flex}.shopping-meta .buy-date{color:#805526;background:#faf1e2;border-radius:7px;padding:2px 6px}.shopping-edit{color:#48725d;background:#f3f7f3;border:1px solid #e4eee5;border-radius:10px;flex:none;width:38px;height:38px;font-size:17px}.shopping-clock{color:#805526;background:#faf1e4;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-size:23px;display:grid}.history-row{width:100%;color:var(--brand);text-align:left;background:#fff;border:0;border-bottom:1px solid #edf1ed;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;display:flex}.history-row:last-child{border-bottom:0}.history-row span{overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.history-row svg{flex:none}.item-form{gap:12px}.item-form label{color:#456356;gap:5px;min-width:0;font-size:13px;font-weight:700;display:grid}.item-form textarea{resize:vertical}.item-actions{gap:10px;display:flex}.item-actions .primary{flex:1}.item-actions .danger{color:#913b36;background:#fff0ee;border-color:#e9c8c5}
