/* Shop search, wishlist and bag empty states. The pattern tiles in both directions. */
.site-main:has(> .store-empty) {
    display: grid;
    place-items: center;
    max-width: none;
}
.store-empty {
    width: 100%;
    max-width: 560px;
    min-width: 0;
    padding-block: 80px;
    font-family: var(--font-inter);
    text-align: center;
}

.store-empty__panel {
    padding: 48px;
}

.store-empty__icon {
    --icon-size: 48px;
    display: grid;
    place-items: center;
    width: 96px;
    height: 96px;
    margin: 0 auto 28px;
    border-radius: 50%;
    color: var(--color-primary);
    background: var(--color-surface-brand);
}

.store-empty .ui-eyebrow { margin-bottom: 12px; }
.store-empty h1 {
    margin: 0;
    color: var(--color-text-primary);
    font-family: var(--font-manrope);
    font-size: 32px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.03em;
}

.store-empty__description {
    margin: 16px 0 32px;
    color: var(--color-text-secondary);
    font-size: 14px;
    line-height: 1.8;
    overflow-wrap: anywhere;
}

.store-empty__actions {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 16px;
}

.store-empty__action {
    max-width: 100%;
    min-width: 0;
}

.store-search { margin: 0 0 24px; text-align: start; }
.store-search__controls { display: flex; align-items: stretch; gap: 8px; }
.store-search__controls .ui-search { flex: 1; }
.store-search__controls .ui-button { flex-shrink: 0; }
.store-search + .store-empty__actions { justify-content: center; }

@media (width < 1200px) {
    .store-empty { padding-block: 64px; }
}

@media (width < 768px) {
    .store-empty { padding-block: 48px; }
    .store-empty__panel { padding: 32px 20px; }
    .store-empty__icon { --icon-size: 40px; width: 80px; height: 80px; margin-bottom: 24px; }
    .store-empty h1 { font-size: 26px; }
    .store-empty__actions { column-gap: 8px; }
}
