:root{--bg:#fff;--bg-elevated:#f2f2f5;--bg-elevated-hover:#e8e8ec;--fg:#1a1a1e;--fg-muted:#52525b;--border:#d4d4d8;--control-border:#71717a;--accent:#2e7d43;--accent-contrast:#fff;--danger:#b91c1c;--focus-ring:#2e7d43;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font:16px/1.45 var(--sans);color:var(--fg);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#16171d;--bg-elevated:#202129;--bg-elevated-hover:#292b35;--fg:#e5e5ea;--fg-muted:#a8a8b3;--border:#33333d;--control-border:#6b6b76;--accent:#7abf7e;--accent-contrast:#16171d;--danger:#fca5a5;--focus-ring:#7abf7e}}*{box-sizing:border-box}body{margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2{font-family:var(--sans);color:var(--fg);margin:0;font-weight:600}button,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.screen{min-height:100svh;padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right));padding-top:max(16px, env(safe-area-inset-top));flex-direction:column;flex:1;display:flex}.screen-header{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:16px;display:flex}.screen-header-actions{gap:8px;margin-left:auto;display:flex}.account-bar{justify-content:space-between}.account-bar-name{color:var(--fg-muted);font-size:15px}.list-title{flex:1;font-size:20px}.scroll-area{flex:1;padding-top:16px;padding-bottom:24px;overflow-y:auto}.section-heading{color:var(--fg-muted);margin:24px 0 8px;font-size:16px}.done-section{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.hint{color:var(--fg-muted);padding:16px 0;font-size:16px}.hint-error{color:var(--danger)}.row-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.row{background:var(--bg-elevated);border-radius:8px;align-items:stretch;gap:8px;min-height:48px;display:flex}.row-tap-target{text-align:left;min-height:48px;color:var(--fg);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;align-items:center;gap:12px;padding:12px 16px;font-size:16px;display:flex}.row-tap-target:hover{background:var(--bg-elevated-hover)}.list-row-button{justify-content:space-between;align-items:center;display:flex}.list-row-name{font-size:18px}.list-row-counts{color:var(--fg-muted);white-space:nowrap;font-size:15px}.item-row-label{cursor:pointer;flex:1;align-items:center;gap:12px;min-height:48px;padding:12px 16px;display:flex}.item-checkbox{width:24px;min-width:24px;height:24px;accent-color:var(--accent)}.item-text{flex-wrap:wrap;align-items:baseline;gap:4px;font-size:16px;display:flex}.item-name{color:var(--fg)}.item-qty{color:var(--fg-muted)}.item-note{color:var(--fg-muted);flex-basis:100%;font-size:14px}:is(.item-row:has(.item-checkbox:checked) .item-name,.item-row:has(.item-checkbox:checked) .item-qty){color:var(--fg-muted);text-decoration:line-through}.item-row-actions{align-items:center;gap:8px;padding:0 12px;display:flex}.unsynced-badge{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:8px;margin-top:4px;display:flex}.unsynced-tag{color:var(--accent-contrast);background:var(--accent);border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.4;display:inline-block}.unsynced-note{color:var(--fg-muted);font-size:12px}.icon-button,.secondary-button,.primary-button,.snackbar-undo{cursor:pointer;border-radius:8px;min-width:44px;min-height:44px;padding:8px 16px;font-size:15px}.icon-button{border:1px solid var(--control-border);color:var(--fg);background:0 0}.icon-button:hover{background:var(--bg-elevated-hover)}.icon-button.danger{color:var(--danger);border-color:var(--danger)}.secondary-button{background:var(--bg-elevated);border:1px solid var(--control-border);color:var(--fg)}.primary-button{background:var(--accent);border:1px solid var(--accent);color:var(--accent-contrast);font-weight:600}.quick-add{background:var(--bg);border-top:1px solid var(--border);padding:12px 0 max(12px, env(safe-area-inset-bottom));flex-direction:column;gap:4px;display:flex;position:sticky;bottom:0}.quick-add>label{color:var(--fg-muted);font-size:14px}.quick-add-row{gap:8px;display:flex}.quick-add-row input{border:1px solid var(--control-border);background:var(--bg);min-height:44px;color:var(--fg);border-radius:8px;flex:1;padding:8px 12px;font-size:16px}.quick-add-controls{align-items:center;gap:8px;margin-top:8px;display:flex}.stepper{align-items:center;gap:8px;display:flex}.stepper-button{border:1px solid var(--control-border);background:var(--bg-elevated);min-width:44px;min-height:44px;color:var(--fg);cursor:pointer;border-radius:8px;padding:8px;font-size:20px;line-height:1}.stepper-button:hover:not(:disabled){background:var(--bg-elevated-hover)}.stepper-button:disabled{opacity:.5;cursor:default}.stepper-value{text-align:center;min-width:24px;color:var(--fg);font-size:16px}.quick-add-unit-label{color:var(--fg-muted);font-size:14px}.quick-add-unit{border:1px solid var(--control-border);background:var(--bg);min-height:44px;color:var(--fg);border-radius:8px;padding:8px 12px;font-size:16px}.item-edit-form,.rename-form{flex-direction:column;flex:1;gap:8px;padding:12px 16px;display:flex}.item-edit-form label,.rename-form label{color:var(--fg-muted);font-size:14px}.item-edit-form input,.item-edit-form select,.rename-form input{border:1px solid var(--control-border);background:var(--bg);min-height:44px;color:var(--fg);border-radius:8px;padding:8px 12px;font-size:16px}.item-edit-actions{gap:8px;display:flex}.snackbar-stack{left:16px;right:16px;bottom:max(16px, env(safe-area-inset-bottom));z-index:10;flex-direction:column;gap:8px;display:flex;position:fixed}.snackbar{background:var(--fg);min-height:48px;color:var(--bg);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:8px 16px;font-size:15px;display:flex}.snackbar-undo{border:1px solid var(--bg);color:var(--bg);background:0 0;min-height:36px;font-weight:600}.offline-indicator{text-align:center;color:var(--fg);background:var(--bg-elevated);border-bottom:1px solid var(--border);margin:0;padding:8px 16px;font-size:14px}.api-status{color:var(--fg-muted);text-align:center;margin:0;padding:8px;font-size:12px}
