.shopping-page{padding-bottom:5rem}.shopping-toolbar{justify-content:space-between;align-items:center;gap:var(--space-lg);display:flex}.shopping-toolbar h2{margin:0}.shopping-toolbar-actions{align-items:center;gap:var(--space-sm);display:flex}.shopping-action{align-items:center;gap:var(--space-2xs);min-height:34px;padding:var(--space-2xs) var(--space-md);font-size:var(--font-size-sm);display:inline-flex}.shopping-group{margin-top:var(--space-lg)}.shopping-group h3{margin:0 0 var(--space-sm);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-xs)}.shopping-group ul{gap:var(--space-2xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.shopping-row{cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--space-xs);transition:opacity var(--t-fast) var(--ease), background-color var(--t-fast) var(--ease);align-items:center}.special-badge{pointer-events:none}.shopping-row .card-body{align-items:center;gap:var(--space-sm);display:flex}.shopping-row .card-title{flex:1;order:1;min-width:0}.shopping-row .card-badges{flex:none;order:2}.shopping-row .card-actions{float:none;order:3;margin-left:0}.shopping-row input[type=checkbox]{width:1.15rem;height:1.15rem;min-height:0;accent-color:var(--color-brand);cursor:pointer}.shopping-row .card-actions .icon-button{width:1.75rem;height:1.75rem;font-size:var(--font-size-base)}.shopping-row.is-checked{opacity:.55;background-color:var(--color-bg)}.shopping-row.is-checked .card-title{text-decoration:line-through}
