/*
 * SocialSkyRocket Page Adapters
 * -----------------------------
 * Late-loaded compatibility layer for older page-specific styles.
 * Loaded from footer/layout_bottom so it wins over internal <style> blocks.
 */

/* Reusable admin/settings components. */
.card-section,
.sec,
.preview-chrome,
.preview-box,
.savebar,
.fl {
    background:
        radial-gradient(circle at 0% 0%, rgb(var(--ssr-primary-rgb) / .06), transparent 42%),
        var(--ssr-card) !important;
    border: 1px solid var(--ssr-border-neutral) !important;
    border-radius: var(--ssr-radius-lg) !important;
    box-shadow: var(--ssr-shadow-md) !important;
    color: var(--ssr-text) !important;
}
.card-section { padding: 1.25rem !important; margin-bottom: 1.1rem !important; }
.section-title,
.sec-h {
    color: var(--ssr-heading) !important;
    font-weight: 900 !important;
    letter-spacing: -.01em;
    border-bottom: 1px solid var(--ssr-border-neutral) !important;
}
.field label,
.ann-lbl,
.svc-modal-label,
.svc-modal-stat-label { color: var(--ssr-muted) !important; font-weight: 800 !important; }
.toggle-row { border-bottom: 1px solid rgba(15,23,42,.05); }
.toggle-row:last-child { border-bottom: 0; }
.toggle-row label { color: var(--ssr-text-soft) !important; font-weight: 700 !important; }

/* Admin theme selector. */
.ssr-theme-option {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    min-height: 6rem;
    background: #fff;
    border: 1px solid var(--ssr-border-neutral);
    border-radius: var(--ssr-radius-lg);
    cursor: pointer;
    box-shadow: var(--ssr-shadow-sm);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.ssr-theme-option:hover,
.ssr-theme-option.is-active {
    transform: translateY(-2px);
    border-color: rgb(var(--ssr-primary-rgb) / .34);
    box-shadow: var(--ssr-shadow-md);
    background: linear-gradient(135deg, rgb(var(--ssr-primary-rgb) / .07), #fff 58%);
}
.ssr-theme-option input { width: 1.05rem; height: 1.05rem; flex: 0 0 auto; box-shadow: none !important; }
.ssr-theme-option strong { display: block; color: var(--ssr-heading); font-size: .95rem; line-height: 1.2; }
.ssr-theme-option small { display: block; color: var(--ssr-muted); font-size: .75rem; line-height: 1.45; margin-top: .28rem; }
.ssr-theme-swatch { width: 2.7rem; height: 2.7rem; border-radius: 1rem; box-shadow: inset 0 1px 0 rgba(255,255,255,.56), 0 14px 28px -18px rgba(15,23,42,.55); flex: 0 0 auto; }
.ssr-theme-swatch-green { background: linear-gradient(135deg, #10B981, #22C55E); }
.ssr-theme-swatch-pink { background: linear-gradient(135deg, #EC4899, #A855F7); }

/* Old admin/page widgets. */
.editor-tab,
.toolbar-btn,
.pill,
.ctab,
.ann-fq,
.adm-page-btn,
.tx-page-btn,
.pub-info-btn,
.svc-info-btn,
.svc-star-btn,
.city-chip,
.chip,
.perk-chip,
.tag-tier,
.tag-sub,
.tag-none,
.fav-badge,
.pub-badge,
.svc-refill-yes,
.svc-refill-no,
.push-badge {
    background: var(--ssr-chip-bg) !important;
    color: var(--ssr-chip-text) !important;
    border: 1px solid rgb(var(--ssr-primary-rgb) / .18) !important;
    border-radius: 999px !important;
    box-shadow: none !important;
}
.editor-tab.active,
.ctab.on,
.ann-fq.active,
.adm-page-active,
.tx-page-active,
.chip-yes,
.perk-chip.on,
.pub-badge.y,
.svc-refill-yes,
.push-badge.sent,
.push-badge.sending {
    background: linear-gradient(135deg, var(--ssr-primary), var(--ssr-secondary)) !important;
    color: #fff !important;
    border-color: transparent !important;
}
.chip-no,
.perk-chip.muted,
.pub-badge.no,
.svc-refill-no,
.push-badge.cancelled { background: rgba(239,68,68,.09) !important; color: #DC2626 !important; border-color: rgba(239,68,68,.18) !important; }
.editor-tab.inactive:hover,
.toolbar-btn:hover,
.ctab:hover,
.ann-fq:hover,
.adm-page-btn:hover,
.tx-page-btn:hover,
.pub-info-btn:hover,
.svc-info-btn:hover,
.svc-star-btn:hover,
.city-chip:hover,
.pill:hover {
    background: rgb(var(--ssr-primary-rgb) / .10) !important;
    color: var(--ssr-primary) !important;
    transform: translateY(-1px);
}
.btn-sv,
.svc-modal-order-btn {
    background: linear-gradient(135deg, var(--ssr-primary), var(--ssr-secondary)) !important;
    color: #fff !important;
    border-radius: 999px !important;
    border: 0 !important;
    box-shadow: 0 18px 36px -20px var(--ssr-glow-strong) !important;
}
.tip { background: rgb(var(--ssr-primary-rgb) / .07) !important; color: var(--ssr-muted) !important; border-color: rgb(var(--ssr-primary-rgb) / .18) !important; }

/* Service table adapters: user/services and public/services. */
.svc-cat-btn,
.pub-gcat-btn,
.plan-card,
.tier-card,
.seo-card,
.fav-card,
.push-stat,
.review-card,
.feat-card,
.stat-card,
.price-row,
.benefit-row,
.compare-hdr,
.compare-row,
.feat-item,
.svc-modal-stat,
.pub-gtr,
.svc-tr {
    background: #fff !important;
    border: 1px solid var(--ssr-border-neutral) !important;
    border-radius: var(--ssr-radius-lg) !important;
    box-shadow: var(--ssr-shadow-sm) !important;
    color: var(--ssr-text) !important;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease !important;
}
.svc-cat-btn:hover,
.svc-cat-btn.open,
.pub-gcat-btn:hover,
.pub-gcat-btn.open,
.plan-card:hover,
.plan-card.featured,
.tier-card:hover,
.tier-card.active-tier,
.seo-card:hover,
.fav-card:hover,
.push-stat:hover,
.review-card:hover,
.feat-card:hover,
.stat-card:hover,
.price-row:hover,
.pub-gtr:hover,
.svc-tr:hover {
    transform: translateY(-2px);
    border-color: rgb(var(--ssr-primary-rgb) / .28) !important;
    box-shadow: var(--ssr-shadow-md) !important;
    background: linear-gradient(135deg, rgb(var(--ssr-primary-rgb) / .055), #fff 58%) !important;
}
.svc-cat-dot,
.pub-gdot,
.live-dot {
    background: linear-gradient(135deg, var(--ssr-primary), var(--ssr-secondary)) !important;
    box-shadow: 0 0 0 4px rgb(var(--ssr-primary-rgb) / .11) !important;
}
.svc-cat-name,
.pub-catname,
.svc-td.name,
.pub-gtd.n,
.svc-modal-title { color: var(--ssr-heading) !important; font-weight: 900 !important; }
.svc-cat-badge,
.svc-cat-count,
.pub-gcnt,
.svc-id-badge,
.pub-gid,
.svc-modal-pill,
.svc-modal-pill.id,
.svc-modal-pill.rate,
.svc-modal-pill.refill {
    background: var(--ssr-chip-bg) !important;
    color: var(--ssr-chip-text) !important;
    border: 1px solid rgb(var(--ssr-primary-rgb) / .16) !important;
    border-radius: 999px !important;
}
.svc-cat-count.on,
.pub-gcnt.on { background: linear-gradient(135deg, var(--ssr-primary), var(--ssr-secondary)) !important; color: #fff !important; }
.svc-body,
.pub-gbody,
.svc-modal-box,
.svc-modal-desc-wrap,
.preview-body,
.html-editor,
.plain-editor,
#tpl-editor .ql-container,
#quill-editor .ql-container,
#quill-editor .ql-editor {
    background: #fff !important;
    color: var(--ssr-text) !important;
    border-color: var(--ssr-border-neutral) !important;
    box-shadow: var(--ssr-shadow-md) !important;
}
.svc-th,
.pub-gth {
    background: linear-gradient(135deg, rgb(var(--ssr-primary-rgb) / .10), rgb(var(--ssr-secondary-rgb) / .06)) !important;
    color: var(--ssr-muted) !important;
    border-color: var(--ssr-border-neutral) !important;
}
.svc-td,
.pub-gtd,
.svc-modal-meta,
.svc-modal-stat-val,
.svc-modal-desc-body,
.announcement-content p,
.announcement-content li,
.seo-body p,
.seo-body li { color: var(--ssr-muted) !important; }
.svc-td.price,
.pub-gtd.p { color: var(--ssr-primary) !important; font-weight: 900 !important; }
.svc-search,
.svc-filter-select,
.pub-srch,
.ann-inp,
.ic,
#tpl-editor .ql-toolbar,
#quill-editor .ql-toolbar {
    background: #fff !important;
    border: 1px solid var(--ssr-border-neutral) !important;
    color: var(--ssr-text) !important;
    box-shadow: var(--ssr-shadow-sm) !important;
}
.svc-modal-header {
    background: linear-gradient(135deg, rgb(var(--ssr-primary-rgb) / .12), rgb(var(--ssr-secondary-rgb) / .08)) !important;
    border-color: var(--ssr-border-neutral) !important;
}
.svc-modal-close,
.svc-modal-copy-btn {
    background: #fff !important;
    color: var(--ssr-muted) !important;
    border: 1px solid var(--ssr-border-neutral) !important;
}
.svc-modal-close:hover,
.svc-modal-copy-btn:hover { color: var(--ssr-primary) !important; border-color: rgb(var(--ssr-primary-rgb) / .28) !important; }
.svc-modal-overlay { background: rgba(15,23,42,.32) !important; backdrop-filter: blur(8px); }
.svc-modal-bg { background: rgba(15,23,42,.36) !important; }

/* Public content and landing helpers. */
.hero-glow,
.grid-dots { opacity: .82; }
.platform-chip,
.ld,
.tg,
.badge-you,
.coin {
    background: linear-gradient(135deg, rgb(var(--ssr-primary-rgb) / .12), rgb(var(--ssr-secondary-rgb) / .08)) !important;
    border-color: rgb(var(--ssr-primary-rgb) / .22) !important;
    color: var(--ssr-primary) !important;
}
.seo-body,
.announcement-content,
.prose-dark { color: var(--ssr-muted) !important; }
.seo-body h2,
.seo-body h3,
.announcement-content strong,
.seo-body strong { color: var(--ssr-heading) !important; }
.seo-body a,
.announcement-content a { color: var(--ssr-primary) !important; }
.empty-body-notice { background: rgb(var(--ssr-primary-rgb) / .06) !important; border-color: rgb(var(--ssr-primary-rgb) / .18) !important; color: var(--ssr-muted) !important; }

/* Admin announcement and webpush specific forms. */
.ann-inp:focus,
.ic:focus,
.html-editor:focus,
.plain-editor:focus { border-color: rgb(var(--ssr-primary-rgb) / .48) !important; box-shadow: 0 0 0 4px rgb(var(--ssr-primary-rgb) / .10) !important; }
.preview-bar { background: linear-gradient(135deg, rgb(var(--ssr-primary-rgb) / .10), rgb(var(--ssr-secondary-rgb) / .06)) !important; border-color: var(--ssr-border-neutral) !important; color: var(--ssr-text) !important; }
.preview-badge { background: var(--ssr-primary) !important; color: #fff !important; }
.wp-table-wrap { border-color: var(--ssr-border-neutral) !important; box-shadow: var(--ssr-shadow-sm); }

/* Pagination. */
.adm-page-dots,
.tx-page-dots { color: var(--ssr-muted) !important; }

/* Fix footer/announcement inline widgets. */
#ann-popup-box,
[id^="ann-banner-"] {
    background: #fff !important;
    color: var(--ssr-text) !important;
    border-color: var(--ssr-border-neutral) !important;
    box-shadow: var(--ssr-shadow-lg) !important;
}
.ann-dot { background: rgb(var(--ssr-primary-rgb) / .20) !important; }
#ann-next-btn,
#ann-close-btn { background: linear-gradient(135deg, var(--ssr-primary), var(--ssr-secondary)) !important; color: #fff !important; border: 0 !important; }

/* E-marketer isolated pages. */
.email-wrap,
.card {
    background: #fff !important;
    color: var(--ssr-text) !important;
    border-color: var(--ssr-border-neutral) !important;
    box-shadow: var(--ssr-shadow-md) !important;
}
.icon,
.icon-ok { background: linear-gradient(135deg, var(--ssr-primary), var(--ssr-secondary)) !important; color: #fff !important; }
.icon-err { background: #EF4444 !important; color: #fff !important; }

/* Mobile adapters. */
@media (max-width: 768px) {
    .card-section { padding: 1rem !important; border-radius: 1.25rem !important; }
    .ssr-theme-option { align-items: flex-start; padding: .9rem; }
    .ssr-theme-swatch { width: 2.25rem; height: 2.25rem; border-radius: .85rem; }
    .svc-cat-btn,
    .pub-gcat-btn,
    .plan-card,
    .tier-card,
    .seo-card,
    .fav-card,
    .push-stat { border-radius: 1.25rem !important; }
    .svc-body,
    .pub-gbody { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .svc-modal-box { width: min(94vw, 42rem) !important; border-radius: 1.5rem !important; }
}
