.shopping-mode-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.75rem 0;
  color: var(--color-ink-soft);
  font-size: 0.875rem;
}
.shopping-mode-status { display: flex; flex-direction: column; align-items: flex-end; text-align: right; gap: 0.25rem; min-width: 0; }
.shopping-mode-status [data-sync-mirror] { font-size: 0.75rem; overflow-wrap: anywhere; }
.shopping-store-filter { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; min-height: 44px; font-size: 0.875rem; }
.shopping-store-filter label { display: flex; align-items: center; gap: 0.5rem; min-height: 44px; }
.shopping-store-filter input { min-width: 24px; min-height: 24px; }
.shopping-filter-hidden { display: none !important; }
.shopping-aisle-progress { display: block; text-align: right; padding: 0.25rem 0.5rem; color: var(--color-ink-soft); font-size: 0.75rem; }
[data-shopping-mode="plan"] .shopping-aisle-progress { display: none; }
.shopping-mode-toggle { display: inline-flex; border: 1px solid var(--color-ink); }
.shopping-mode-toggle button { min-height: 44px; min-width: 64px; padding: 0.5rem; font-weight: 700; }
.shopping-mode-toggle button[aria-pressed="true"] { background: var(--color-ink); color: var(--color-surface); }
.shopping-mode-toggle button:focus-visible { outline: 2px solid var(--color-accent-ink); outline-offset: 2px; }
.all-bought { padding: 1rem 0.75rem; color: var(--color-ink-soft); }
[data-shopping-mode-target="items"]:has(.item-row:not(.done)) .all-bought { display: none; }
.entry-tips { color: var(--color-ink-soft); font-size: 0.8125rem; }
.entry-tips summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; }
.entry-tips p { padding-bottom: 0.5rem; }
.shopping-row-actions { display: none; position: relative; }
.shopping-row-actions > summary {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  cursor: pointer;
  list-style: none;
}
.shopping-row-actions > summary::-webkit-details-marker { display: none; }
.shopping-row-menu { position: absolute; right: 0; z-index: 20; min-width: 8rem; background: var(--color-surface); border: 1px solid var(--color-ink); }
.shopping-row-menu button { width: 100%; min-height: 44px; padding: 0.5rem 0.75rem; text-align: left; }
[data-shopping-mode="shop"] .shopping-plan-only,
[data-shopping-mode="shop"] .shopping-plan-delete { display: none; }
[data-shopping-mode="shop"] .shopping-row-actions { display: block; }
[data-shopping-mode="shop"] .item-drag-handle { visibility: hidden; }
@media (max-width: 1023px) {
  .mobile-bottom-nav {
    position: fixed;
    z-index: 40;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    background: var(--color-surface);
    border-top: 1px solid var(--color-ink);
    padding-bottom: env(safe-area-inset-bottom);
  }
  .mobile-nav-item { flex: 1; min-height: 56px; display: flex; align-items: center; justify-content: center; font-weight: 700; }
  .mobile-nav-item.active { text-decoration: underline; text-underline-offset: 4px; }
  .mobile-navigation-menu { position: fixed; left: 0; right: 0; bottom: calc(56px + env(safe-area-inset-bottom)); max-height: 60dvh; overflow-y: auto; }
  body[data-account-id]:not([data-account-id=""]) main { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
  .add-bar { bottom: calc(56px + env(safe-area-inset-bottom)); }
  body:has(.add-bar input:focus) .mobile-bottom-nav { visibility: hidden; pointer-events: none; }
  body:has(.add-bar input:focus) .add-bar { bottom: max(env(safe-area-inset-bottom), var(--shopping-keyboard-inset, 0px)); }
}
