/* ============================================================
   Store admin · Theme cards (selector de diseño público)
   ============================================================ */

.sa-theme-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 720px) {
    .sa-theme-grid { grid-template-columns: 1fr; }
}
.sa-theme-card {
    position: relative;
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 14px;
    padding: 14px;
    border: 1px solid var(--sa-border);
    border-radius: var(--sa-radius-lg);
    background: var(--sa-surface);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.sa-theme-card.is-plan-disabled {
    border-style: dashed;
}
.sa-theme-card-upgrade-trigger {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    border-radius: inherit;
    background: transparent;
    cursor: pointer;
}
.sa-theme-card-upgrade-trigger:focus-visible {
    outline: 2px solid var(--sa-primary);
    outline-offset: 3px;
}
.sa-theme-card .theme-card-actions {
    position: relative;
    z-index: 2;
}
.sa-theme-card.is-selected {
    border-color: var(--sa-primary);
    box-shadow: 0 0 0 2px rgba(var(--sa-primary-rgb), 0.10);
}
.sa-theme-card__preview {
    aspect-ratio: 4 / 5;
    border-radius: var(--sa-radius-md);
    background: linear-gradient(160deg, #f4f6fb, #dde6f5);
    overflow: hidden;
    position: relative;
    pointer-events: none;
    user-select: none;
}
.sa-theme-card__preview-bar {
    position: absolute;
    top: 10px; left: 10px; right: 10px;
    height: 22px;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 4px;
    backdrop-filter: blur(4px);
}
.sa-theme-card__preview-cta {
    position: absolute;
    bottom: 12px;
    left: 12px;
    height: 24px;
    width: 60%;
    border-radius: 4px;
    background: #0f172a;
}
.sa-theme-card__copy { display: grid; gap: 4px; align-content: start; }
.sa-theme-card__copy strong { font-size: 15px; font-weight: 700; letter-spacing: -0.01em; }
.sa-theme-card__copy small { color: var(--sa-muted); font-size: 11.5px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }
.sa-theme-card__copy p { color: var(--sa-muted); font-size: 13px; line-height: 1.45; }
.sa-theme-card__actions {
    margin-top: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
