/**
 * Rishthe brand theme — layout inspired by matrimony sites,
 * colors from logo: Royal Purple #7B2CBF + white
 */

:root {
    --white: #ffffff;
    --primary: #7B2CBF;
    --primary-dark: #5B1F96;
    --primary-light: #9D4EDD;
    --primary-vivid: #8A2BE2;
    --soft-bg: #f5f0fc;
    --soft-lavender: #ede9fe;
    --lavender: #ddd6fe;
    --accent-sparkle: #e9d5ff;
    --soft-pink: var(--soft-bg);
    --pink: var(--lavender);
    --rose: var(--primary);
    --rose-dark: var(--primary-dark);
    --rose-gold: var(--primary-light);
    --purple-light: var(--lavender);
    --purple: var(--primary-light);
    --purple-dark: var(--primary-dark);
    --text: #1f1533;
    --text-muted: #5c5470;
    --text-light: #8b839c;
    --border-color: #ddd6fe;
    --gradient-hero: linear-gradient(180deg, #f5f0fc 0%, #ede9fe 50%, #ffffff 100%);
    --gradient-rose: linear-gradient(135deg, #7B2CBF 0%, #9D4EDD 100%);
    --gradient-gold: linear-gradient(135deg, #7B2CBF 0%, #C4B5FD 100%);
    --gradient-brand: linear-gradient(135deg, #5B1F96 0%, #7B2CBF 50%, #9D4EDD 100%);
    --shadow-sm: 0 1px 4px rgba(123, 44, 191, 0.12);
    --shadow-md: 0 4px 16px rgba(123, 44, 191, 0.16);
    --shadow-lg: 0 8px 28px rgba(123, 44, 191, 0.2);
    --radius: 4px;
    --radius-sm: 4px;
    --font-display: 'Open Sans', system-ui, sans-serif;
    --font-body: 'Open Sans', system-ui, sans-serif;
    --nav-height: 56px;
    --nav-top-gap: 0.625rem;
    --nav-offset-top: calc(var(--nav-top-gap) + env(safe-area-inset-top, 0px));
    --nav-total-height: calc(var(--nav-height) + var(--nav-offset-top));
    --dash-subnav-height: 44px;
    --brand-gold: #c9a227;
    --brand-green: #2e7d32;
    /* Legacy aliases used in components */
    --shaadi-gold: var(--brand-gold);
    --shaadi-green: var(--brand-green);
}

body {
    background: var(--soft-bg);
    font-size: 14px;
}

h1, h2, h3, h4, h5, h6, .display-font {
    font-family: var(--font-body);
    font-weight: 600;
    color: var(--text);
}

a { color: var(--primary); }
a:hover { color: var(--primary-dark); }

/* Buttons — logo purple */
.btn-primary-rose {
    background: var(--gradient-rose);
    border: 1px solid var(--primary-dark);
    border-radius: var(--radius);
    padding: 0.5rem 1.25rem;
    font-weight: 600;
    font-size: 14px;
    box-shadow: var(--shadow-sm);
    color: var(--white);
}
.btn-primary-rose:hover {
    background: linear-gradient(135deg, #5B1F96 0%, #7B2CBF 100%);
    border-color: var(--primary-dark);
    color: var(--white);
    transform: none;
    box-shadow: var(--shadow-md);
}

.btn-outline-rose {
    border: 1px solid var(--primary);
    color: var(--primary);
    border-radius: var(--radius);
    background: var(--white);
    font-weight: 600;
    font-size: 14px;
}
.btn-outline-rose:hover {
    background: var(--soft-lavender);
    color: var(--primary-dark);
    border-color: var(--primary-dark);
}

.btn-gold {
    background: linear-gradient(135deg, #e8c547 0%, var(--brand-gold) 100%);
    border: none;
    border-radius: var(--radius);
    color: var(--white);
    font-weight: 600;
}

.card-modern {
    border-radius: var(--radius);
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm);
}
.card-modern:hover {
    transform: none;
    box-shadow: var(--shadow-md);
}

/* Header */
.site-header,
.site-header--solid,
.site-header--auth,
.site-header--transparent,
.site-header.is-scrolled {
    background: var(--white) !important;
    border-bottom: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm) !important;
}
.site-header--solid .site-brand__text strong,
.site-header--auth .site-brand__text strong,
.site-header.is-scrolled .site-brand__text strong,
.site-header--transparent .site-brand__text strong,
.site-brand__text strong {
    color: var(--primary) !important;
    font-family: var(--font-body);
    font-size: 1.25rem !important;
    font-weight: 700 !important;
}
.site-header--solid .site-brand__tagline,
.site-header--auth .site-brand__tagline,
.site-header.is-scrolled .site-brand__tagline,
.site-brand__tagline {
    color: var(--text-muted) !important;
}
.site-brand__logo {
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(123, 44, 191, 0.25) !important;
}
.site-nav-link {
    color: var(--text) !important;
    border-radius: 0;
    padding: 0.5rem 0.75rem !important;
    border-bottom: 2px solid transparent;
}
.site-nav-link:hover,
.site-nav-link.is-active {
    color: var(--primary) !important;
    background: transparent !important;
    border-bottom-color: var(--primary);
}
.site-header__icon-btn {
    background: transparent !important;
    color: var(--text-muted) !important;
    border: 1px solid var(--border-color);
    border-radius: var(--radius);
}
.site-header__icon-btn:hover {
    color: var(--primary) !important;
    border-color: var(--primary);
    background: var(--soft-lavender) !important;
}
.site-header__badge {
    background: var(--primary) !important;
    border-color: var(--white);
}
.site-header__user-btn {
    background: transparent !important;
    border: 1px solid var(--border-color) !important;
    color: var(--text) !important;
}
.btn-header-light {
    background: var(--gradient-rose) !important;
    color: var(--white) !important;
    border: 1px solid var(--primary-dark) !important;
    border-radius: var(--radius);
    font-weight: 600;
}
.btn-header-outline {
    border: 1px solid var(--primary) !important;
    color: var(--primary) !important;
    background: var(--white) !important;
    border-radius: var(--radius);
}
.btn-header-outline:hover {
    background: var(--soft-lavender) !important;
}
.site-header__toggler span {
    background: var(--primary-dark) !important;
}
.site-header__toggler {
    background: var(--white) !important;
    border: 1px solid var(--border-color);
}

/* Subnav — colors only; layout in main.css */
.dash-subnav {
    border-bottom-color: var(--border-color);
}
.dash-subnav__badge {
    background: var(--primary) !important;
}
.dash-subnav__link.is-active .dash-subnav__badge {
    background: var(--primary-dark) !important;
    color: var(--white) !important;
}

/* Home hero */
.shaadi-hero {
    background: var(--gradient-hero);
    padding: calc(var(--nav-height) + 1.5rem) 0 2rem;
    border-bottom: 1px solid var(--border-color);
}
.shaadi-hero__title span {
    color: var(--primary);
    background: linear-gradient(135deg, var(--primary-dark), var(--primary-light));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.shaadi-trust-bar strong {
    color: var(--primary);
}

/* Profile cards */
.verified-icon {
    color: var(--brand-green);
}
.premium-badge-card {
    background: linear-gradient(135deg, #e8c547, var(--brand-gold));
}

.section-title {
    border-left-color: var(--primary);
}

/* Dashboard */
.dash-hero {
    border-left-color: var(--primary);
}
.dash-stat-card strong {
    color: var(--primary);
}
.dash-upgrade-panel {
    background: var(--gradient-brand);
}

/* Footer — deep purple */
.rishthe-footer {
    background: linear-gradient(180deg, #3d1a5c 0%, #2a1240 100%);
    color: #d4c4e8;
}
.rishthe-footer .text-muted {
    color: rgba(212, 196, 232, 0.85) !important;
}
.footer-brand {
    color: var(--white);
}
.footer-brand:hover {
    color: var(--accent-sparkle);
}
.social-links a {
    background: rgba(123, 44, 191, 0.35);
    border: 1px solid rgba(157, 78, 221, 0.4);
}
.social-links a:hover {
    background: var(--primary);
}

/* Auth */
.auth-hero-side {
    background: var(--gradient-brand) !important;
}

.search-bar-mini {
    border-bottom-color: var(--primary);
}

.member-rich-card__score,
.ring-fill {
    color: var(--primary);
    stroke: var(--primary);
}

.badge-premium-sm {
    background: linear-gradient(135deg, #e8c547, var(--brand-gold));
    color: var(--white);
}

.dash-panel-header h5,
.dash-panel-header h6 {
    border-left-color: var(--primary);
}

.search-mini-btn--primary {
    background: var(--gradient-rose) !important;
    border: 1px solid var(--primary-dark) !important;
}

.results-tab.active {
    color: var(--primary-dark);
    border-bottom-color: var(--primary);
}

.pagination .page-item.active .page-link {
    background: var(--primary);
    border-color: var(--primary);
}

.plan-card.popular {
    border-color: var(--primary);
}
.plan-badge {
    background: var(--gradient-rose);
}

.mobile-bottom-nav a.active,
.mobile-bottom-nav a.active i {
    color: var(--primary);
}

.text-rose,
.text-rose-dark {
    color: var(--primary) !important;
}

/* CTA strip on homepage */
.home-cta-strip {
    background: var(--gradient-brand) !important;
}

/* Homepage — clear separation between CTA and footer */
body.page-home .home-cta-strip {
    margin-bottom: 0;
    position: relative;
    z-index: 1;
}
body.page-home .rishthe-footer {
    margin-top: 0;
    padding-top: 2.5rem;
    position: relative;
    z-index: 2;
    border-top: 4px solid rgba(255, 255, 255, 0.12);
    flex-shrink: 0;
}
body.page-home .rishthe-footer .text-muted {
    color: rgba(212, 196, 232, 0.9) !important;
}
body.page-home .rishthe-footer .footer-tagline {
    color: rgba(212, 196, 232, 0.95);
}

