/* ==========================================================================
   Webmaster Plus — Webmaster Plus header & footer shells
   ========================================================================== */

:root {
    --wm-plus-primary: var(--wm-brand-primary);
    --wm-plus-primary-dark: var(--wm-brand-primary-dark);
    --wm-plus-orange: var(--wm-brand-accent);
    --wm-plus-footer-bg: var(--wm-brand-footer-bg);
    --wm-plus-footer-deep: var(--wm-brand-footer-deep);
}

/* ── Header shell ── */
.wm-plus-header-shell {
    position: relative;
    z-index: 200;
    font-family: var(--wm-font-shell, "Dana", "YekanBakh", "IRANYekanX", Tahoma, sans-serif);
}

.wm-plus-header-shell .elementor-widget-container {
    padding: 0 !important;
}

/* Top bar — light brand strip (matches homepage / landing pages) */
.wm-plus-topbar,
.wm-plus-topbar,
.wm-plus-topbar .e-con,
.wm-plus-topbar .e-con-inner,
.wm-plus-topbar .e-con,
.wm-plus-topbar .e-con-inner {
    background: var(--wm-brand-bg, #f7f6fe) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--wm-brand-border, rgba(85, 70, 201, 0.12)) !important;
}

.wm-plus-topbar,
.wm-plus-topbar {
    color: var(--wm-brand-muted, #64748b);
    font-size: 0.82rem;
    font-family: inherit;
}

.wm-plus-topbar a,
.wm-plus-topbar a {
    color: var(--wm-brand-primary, #5546c9);
    text-decoration: none;
    transition: color 0.2s;
}

.wm-plus-topbar a:hover,
.wm-plus-topbar a:hover {
    color: var(--wm-brand-accent, #fea80d);
}

.wm-plus-topbar__contact .elementor-widget-text-editor p,
.wm-plus-topbar__contact .elementor-widget-text-editor a {
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
}

.wm-plus-topbar__social ul,
.wm-plus-topbar__social .footer-hall-beauty-socials {
    margin: 0;
    padding: 0;
    gap: 10px;
}

.wm-plus-topbar__social a {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--wm-brand-primary-tint);
    color: var(--wm-brand-primary) !important;
    font-size: 0.85rem;
}

.wm-plus-topbar__social a:hover {
    background: var(--wm-brand-primary);
    color: #fff !important;
}

/* Main header */
.wm-plus-header,
.wm-plus-header > .e-con,
.wm-plus-header .e-con-inner {
    background: #fff !important;
}

.webmaster-site-header.wm-plus-header {
    border-bottom: 1px solid rgba(85, 70, 201, 0.08) !important;
}

.wm-plus-header__menu {
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

.wm-plus-header .webmaster-header-menu-wrap .nav-news-media-menu .nav-item-menu .item {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 10px 12px;
    color: #3D3558;
    font-weight: 600;
    font-size: 0.9rem;
    transition: color 0.2s;
}

.wm-plus-header .webmaster-header-menu-wrap .nav-news-media-menu .nav-item-menu .item:hover,
.wm-plus-header .webmaster-header-menu-wrap .nav-news-media-menu .nav-item-menu .item:focus {
    color: var(--wm-plus-primary);
}

.wm-plus-header .webmaster-header-login .top-header-shop__auth__btn {
    background: #F4F2FF !important;
    border: 1px solid rgba(85, 70, 201, 0.15) !important;
    color: var(--wm-plus-primary) !important;
    min-height: 42px;
    padding: 8px 16px !important;
    border-radius: 999px !important;
    font-size: 0.85rem;
    font-weight: 600;
    box-shadow: none !important;
}

.wm-plus-header .webmaster-header-cta .btninfofour,
.wm-plus-header .wm-plus-header__cta .btninfofour {
    background: var(--wm-plus-primary) !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 11px 20px !important;
    font-size: 0.88rem;
    font-weight: 700;
    box-shadow: 0 8px 22px rgba(85, 70, 201, 0.28) !important;
}

.wm-plus-header .webmaster-header-cta .btninfofour:hover,
.wm-plus-header .wm-plus-header__cta .btninfofour:hover {
    background: var(--wm-plus-primary-dark) !important;
    color: #fff !important;
}

/* ── Footer — brand gradient shell (no wave) ── */
.wm-plus-footer-shell {
    position: relative;
    margin-top: 56px;
    padding-top: 0;
    background: transparent;
    color: rgba(255, 255, 255, 0.9);
    overflow: visible;
    border-radius: 28px 28px 0 0;
    box-shadow: 0 -12px 40px rgba(85, 70, 201, 0.1);
    font-family: var(--wm-font-shell, "Dana", "YekanBakh", "IRANYekanX", Tahoma, sans-serif);
}

.wm-plus-footer-shell::before {
    display: none;
}

.wm-plus-footer-shell > .elementor {
    position: relative;
    z-index: 1;
}

.wm-plus-footer-shell .elementor-widget-container {
    padding: 0;
    margin: 0;
}

.wm-plus-footer,
.wm-plus-footer > .e-con,
.wm-plus-footer .e-con-inner {
    background: linear-gradient(
        165deg,
        var(--wm-plus-footer-bg) 0%,
        var(--wm-plus-footer-deep) 100%
    ) !important;
    border: 0 !important;
    box-shadow: none !important;
}

.wm-plus-footer__socket,
.wm-plus-footer__socket > .e-con,
.wm-plus-footer__socket .e-con-inner {
    background: rgba(55, 43, 125, 0.65) !important;
    border: 0 !important;
    box-shadow: none !important;
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

/* Badge pill */
.wm-plus-footer__badge .elementor-heading-title {
    display: inline-block;
    margin: 0 auto 4px;
    padding: 8px 22px;
    border-radius: 999px;
    background: var(--wm-plus-orange);
    color: #1A1238 !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    box-shadow: 0 6px 18px rgba(254, 168, 13, 0.35);
}

/* About text */
.wm-plus-footer__about {
    max-width: 720px;
    margin: 0 auto;
}

.wm-plus-footer__about .elementor-widget-container,
.wm-plus-footer__about p {
    margin: 0;
    text-align: center;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 0.95rem;
    line-height: 2;
}

/* Social row */
.wm-plus-footer__social {
    margin: 8px 0 4px;
}

.wm-plus-footer__social .elementor-widget-container,
.wm-plus-footer__social ul,
.wm-plus-footer__social .footer-hall-beauty-socials {
    display: flex !important;
    justify-content: center;
    align-items: center;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.wm-plus-footer__social a {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.22);
    color: #fff !important;
    font-size: 1.05rem;
    transition: transform 0.2s, background 0.2s, border-color 0.2s;
}

.wm-plus-footer__social a:hover {
    transform: translateY(-3px);
    background: var(--wm-plus-orange) !important;
    border-color: var(--wm-plus-orange) !important;
    color: #1A1238 !important;
}

/* Logo */
.wm-plus-footer__logo {
    margin-top: 10px;
}

.wm-plus-footer__logo img,
.wm-plus-footer__logo .wm-plus-logost {
    margin: 0 auto;
    max-width: 160px;
    height: auto;
    filter: brightness(0) invert(1);
    opacity: 0.96;
}

/* Copyright socket */
.wm-plus-footer__copy .elementor-heading-title {
    margin: 0;
    color: rgba(255, 255, 255, 0.62) !important;
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
}

/* Legacy footer overrides (if old markup cached) */
.wm-plus-footer-shell .e-con[style*="background-color: #FFFFFF"],
.wm-plus-footer-shell .e-con[style*="background-color:#FFFFFF"] {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
}

@media (max-width: 991px) {
    .wm-plus-topbar__contact {
        display: none !important;
    }

    .wm-plus-header .webmaster-header-cta {
        display: none;
    }
}

@media (max-width: 767px) {
    .wm-plus-footer-shell {
        margin-top: 40px;
        border-radius: 20px 20px 0 0;
    }

    .wm-plus-footer,
    .wm-plus-footer > .e-con {
        padding-top: 64px !important;
        padding-bottom: 40px !important;
    }

    .wm-plus-footer__about p {
        font-size: 0.88rem;
        line-height: 1.9;
    }

    .wm-plus-footer__social a {
        width: 42px;
        height: 42px;
    }
}

@media (max-width: 640px) {
    .wm-plus-topbar {
        display: none;
    }
}

/* Fallback header/footer when Elementor templates missing */
.wmplus-fallback-header {
    font-family: var(--wm-font-shell, "Dana", "YekanBakh", "IRANYekanX", Tahoma, sans-serif);
    background: #fff;
    border-bottom: 1px solid rgba(85, 70, 201, 0.1);
}

.wmplus-fallback-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 14px 20px;
}

.wmplus-fallback-header__brand {
    font-family: inherit;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--wm-brand-primary, #5546c9);
    text-decoration: none;
}

.wmplus-fallback-header nav a {
    font-family: inherit;
    font-weight: 600;
    color: var(--wm-brand-ink, #1e242b);
    text-decoration: none;
    margin-inline-start: 14px;
}

.wmplus-fallback-footer {
    font-family: var(--wm-font-shell, "Dana", "YekanBakh", "IRANYekanX", Tahoma, sans-serif);
    background: linear-gradient(165deg, var(--wm-brand-footer-bg, #4438a8), var(--wm-brand-footer-deep, #372b7d));
    color: rgba(255, 255, 255, 0.85);
    padding: 24px 16px;
    text-align: center;
}

.wmplus-fallback-footer__copy,
.wmts-site-copyright {
    font-family: inherit;
    font-size: 0.85rem;
    margin: 0;
}
