/* Store utilities use shared café tokens so values and controls keep their intended meaning. */
.store-page .store-icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; padding: 9px; border: 1px solid var(--cafe-border-strong); border-radius: 12px; background: var(--cafe-surface-raised); color: var(--cafe-accent-soft); }
.store-page .store-icon .mud-icon-root { width: 18px; height: 18px; }
.store-page .store-icon:disabled { opacity: .4; }
.store-control { font: inherit; cursor: pointer; }
.store-page .store-search { margin: 0 0 20px; }
.store-page .store-search .mud-input-outlined-border { border-color: var(--cafe-border-strong); border-radius: 12px; }
.store-page .store-search .mud-input { background: var(--cafe-surface); border-radius: 12px; color: var(--cafe-text); }
.store-page .store-search input { font-size: 16px; }
.store-empty { padding: 20px 16px; margin: 0; color: var(--cafe-text-muted); font-size: 16px; }
.store-secondary { color: var(--cafe-text-muted); font-size: 16px; overflow-wrap: anywhere; }
.store-money { color: var(--cafe-price); font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; }
.store-page a { color: var(--cafe-accent-soft); }
.store-page a:focus-visible, .store-page summary:focus-visible, .store-control:focus-visible { outline: 2px solid var(--cafe-accent-soft); outline-offset: 3px; }
.store-page summary { cursor: pointer; }
.store-page .operations-panel + .operations-panel { margin-top: 20px; }
.store-page .operations-metrics { display: flex; gap: 24px; }
.store-page .operations-metrics strong { white-space: nowrap; }
