/* ==========================================================================
   BaharLink2 Theme - theme.css  (v3.7.0 — unified design system)
   --------------------------------------------------------------------------
   The single source of truth for the BaharLink2 visual design (OpenVPN
   Connect palette, RTL-first, 8px spacing system).

   Load order: tokens → base → layout → components → style.css → THEME.CSS
   This file loads LAST on purpose so it wins the cascade and the whole
   site renders from ONE consistent design system.

   Everything is written with CSS logical properties so the layout works
   correctly in both RTL (Persian) and LTR.
   ========================================================================== */

/* ============ DESIGN TOKENS — OpenVPN Connect palette ============ */
:root{
    /* Palette - Light */
    --bl-bg:#F5F7FA;
    --bl-surface:#FFFFFF;
    --bl-surface-2:#EEF2F7;
    --bl-surface-3:#E5E9F0;
    --bl-navy:#0E1726;
    --bl-navy-2:#16202C;
    --bl-text:#0F172A;
    --bl-text-secondary:#5B6474;
    --bl-text-muted:#7C8493;
    --bl-text-subtle:#94A3B8;
    --bl-text-on-primary:#06281A;

    /* Connect green — the brand action color */
    --bl-connect:#22C55E;
    --bl-connect-hover:#16A34A;
    --bl-connect-highlight:#16A34A;
    --bl-connect-text:#06281A;
    --bl-connect-soft:rgba(34,197,94,0.12);

    --bl-link:#2F6BFF;
    --bl-link-hover:#1E54D6;

    /* Brand slots (Customizer overrides these via inline style) */
    --bl-primary:var(--bl-connect);
    --bl-primary-hover:var(--bl-connect-hover);
    --bl-primary-soft:rgba(34,197,94,0.12);
    --bl-accent:var(--bl-navy);
    --bl-accent-hover:#1E293B;
    --bl-accent-soft:rgba(14,23,38,0.08);

    --bl-gradient:linear-gradient(180deg,#0E1726 0%,#122A22 100%);
    --bl-gradient-soft:linear-gradient(180deg,rgba(14,23,38,0.06) 0%,rgba(18,42,34,0.06) 100%);
    --bl-success:#22C55E;
    --bl-success-soft:rgba(34,197,94,0.08);
    --bl-warning:#F59E0B;
    --bl-warning-soft:rgba(245,158,11,0.08);
    --bl-danger:#EF4444;
    --bl-danger-soft:rgba(239,68,68,0.08);
    --bl-info:#2F6BFF;
    --bl-info-soft:rgba(47,107,255,0.08);

    --bl-border:#E5E9F0;
    --bl-border-strong:#CBD5E1;
    --bl-ring:rgba(34,197,94,0.35);

    /* Radii */
    --bl-radius-sm:10px;
    --bl-radius:16px;
    --bl-radius-lg:24px;
    --bl-radius-xl:24px;
    --bl-radius-pill:999px;

    /* Shadows - soft dual-layer */
    --bl-shadow-sm:0 1px 2px rgba(15,23,42,0.04),0 1px 3px rgba(15,23,42,0.06);
    --bl-shadow-md:0 1px 2px rgba(15,23,42,0.04),0 12px 32px rgba(15,23,42,0.08);
    --bl-shadow:0 1px 2px rgba(15,23,42,0.04),0 12px 32px rgba(15,23,42,0.08);
    --bl-shadow-lg:0 4px 8px rgba(15,23,42,0.06),0 24px 48px rgba(15,23,42,0.12);
    --bl-shadow-glow:0 8px 32px rgba(34,197,94,0.25);

    /* Spacing - 8px system (v3.6 design) */
    --bl-space-1:8px;
    --bl-space-2:12px;
    --bl-space-3:16px;
    --bl-space-4:24px;
    --bl-space-5:32px;
    --bl-space-6:48px;
    --bl-space-7:64px;
    --bl-space-8:96px;
    --bl-space-10:80px;
    --bl-space-12:96px;
    --bl-space-16:96px;
    --bl-space-20:120px;
    --bl-space-24:144px;

    /* Section rhythm — asymmetric: top=56, bottom=32 */
    --section-y:56px;
    --section-y-bottom:32px;

    /* Typography */
    --bl-font-body:"Vazirmatn",IRANSansX,Tahoma,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
    --bl-font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;
    --bl-fs-xs:0.75rem;
    --bl-fs-sm:0.875rem;
    --bl-fs-base:1rem;
    --bl-fs-md:1.125rem;
    --bl-fs-lg:1.25rem;
    --bl-fs-xl:1.5rem;
    --bl-fs-2xl:2rem;
    --bl-fs-3xl:2.5rem;
    --bl-lh-normal:1.7;
    --bl-lh-relaxed:1.85;
    --bl-fw-regular:400;
    --bl-fw-medium:500;
    --bl-fw-semibold:600;
    --bl-fw-bold:700;

    /* Container */
    --bl-container:1240px;
    --bl-container-wide:1320px;
    --bl-container-narrow:760px;
    --bl-container-pad:24px;

    /* Header */
    --bl-header-h:76px;
    --bl-header-h-mobile:60px;

    /* Transitions */
    --bl-transition:200ms cubic-bezier(0.4,0,0.2,1);
    --bl-transition-fast:150ms cubic-bezier(0.4,0,0.2,1);
    --bl-transition-slow:350ms cubic-bezier(0.4,0,0.2,1);

    /* Focus ring */
    --bl-focus-ring:0 0 0 3px var(--bl-ring);

    /* Z-index scale */
    --bl-z-sticky:100;
    --bl-z-back-top:90;
    --bl-z-drawer:1000;
    --bl-z-overlay:1100;
    --bl-z-toast:1200;
}

[data-theme="dark"]{
    /* Dark mode - like the OpenVPN Connect app */
    --bl-bg:#0E1726;
    --bl-surface:#16202C;
    --bl-surface-2:#1E2A3A;
    --bl-surface-3:#283648;
    --bl-navy:#0E1726;
    --bl-navy-2:#16202C;
    --bl-text:#E6EAF2;
    --bl-text-secondary:#A8B3C7;
    --bl-text-muted:#7C8BAA;
    --bl-text-subtle:#5A6B8A;
    --bl-text-on-primary:#06281A;
    --bl-border:rgba(255,255,255,0.08);
    --bl-border-strong:rgba(255,255,255,0.15);
    --bl-ring:rgba(34,197,94,0.4);
    --bl-shadow-sm:0 1px 2px rgba(0,0,0,0.3);
    --bl-shadow:0 1px 2px rgba(0,0,0,0.4),0 12px 32px rgba(0,0,0,0.5);
    --bl-shadow-md:0 1px 2px rgba(0,0,0,0.4),0 12px 32px rgba(0,0,0,0.5);
    --bl-shadow-lg:0 4px 8px rgba(0,0,0,0.5),0 24px 48px rgba(0,0,0,0.6);
    --bl-primary-soft:rgba(34,197,94,0.15);
    --bl-connect-soft:rgba(34,197,94,0.15);
    --bl-accent-soft:rgba(255,255,255,0.05);
    --bl-success-soft:rgba(34,197,94,0.15);
    --bl-warning-soft:rgba(245,158,11,0.15);
    --bl-danger-soft:rgba(239,68,68,0.15);
    --bl-info-soft:rgba(47,107,255,0.15);
    --bl-link:#5B8DEF;
    --bl-link-hover:#7BA5FF;
}

@media (prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important;}
}

/* ============ BASE (element defaults) ============ */
body{
    background:var(--bl-bg);color:var(--bl-text);
    font-family:var(--bl-font-body);font-size:16px;line-height:1.7;font-weight:400;
    -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
    overflow-x:hidden;text-rendering:optimizeLegibility;
    transition:background var(--bl-transition),color var(--bl-transition);
    min-height:100vh;min-height:100dvh;
}
a{color:var(--bl-link);text-decoration:none;transition:color var(--bl-transition);}
a:hover{color:var(--bl-link-hover);text-decoration:underline;text-underline-offset:3px;}
h1,h2,h3,h4,h5,h6{line-height:1.3;font-weight:800;color:var(--bl-text);text-wrap:balance;}
h1{font-size:var(--bl-fs-3xl);}
h2{font-size:var(--bl-fs-2xl);}
h3{font-size:var(--bl-fs-xl);}
h4{font-size:var(--bl-fs-lg);font-weight:700;}
p{margin-bottom:1em;text-wrap:pretty;}
ul,ol{margin-bottom:1em;padding-inline-start:1.5em;}
li{margin-bottom:0.5em;}
button{cursor:pointer;font-family:inherit;background:none;border:none;color:inherit;}
input,textarea,select{font:inherit;color:inherit;}
:focus-visible{outline:2px solid transparent;box-shadow:var(--bl-focus-ring);border-radius:6px;}
::selection{background:var(--bl-primary-soft);color:var(--bl-text);}

/* ============ LAYOUT ============ */
.bl-container{max-width:var(--bl-container);margin-inline:auto;padding-inline:var(--bl-container-pad);}
.bl-container--narrow{max-width:760px;}
.bl-container--wide{max-width:var(--bl-container-wide);}
.bl-main{min-height:60vh;outline:none;}
.bl-section{padding-block:var(--section-y) var(--section-y-bottom);}
.bl-section--compact{padding-block:calc(var(--section-y) * 0.6);}
.bl-section__header{margin-block-end:32px;text-align:center;}
.bl-section__cta{margin-block-start:32px;margin-block-end:0;text-align:center;}
.bl-section__title{font-size:28px;font-weight:800;margin:0 0 var(--bl-space-2);position:relative;display:inline-block;padding-block-end:var(--bl-space-2);}
.bl-section__title::after{
    content:"";position:absolute;bottom:0;inset-inline-start:50%;transform:translateX(-50%);
    width:48px;height:3px;border-radius:var(--bl-radius-pill);background:var(--bl-gradient);
}
.bl-section__subtitle{color:var(--bl-text-secondary);font-size:var(--bl-fs-md);max-width:60ch;margin-inline:auto;}
@media (max-width:639px){
    :root{--section-y:40px;--section-y-bottom:24px;}
}
.bl-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.bl-skip-link{position:absolute;top:-100px;inset-inline-start:var(--bl-space-3);background:var(--bl-gradient);color:#fff;padding:var(--bl-space-2) var(--bl-space-3);border-radius:var(--bl-radius-sm);z-index:9999;font-weight:700;}
.bl-skip-link:focus{top:var(--bl-space-3);color:#fff;}

/* ============ BUTTONS — OpenVPN Connect style ============ */
.bl-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:var(--bl-space-1);
    padding:12px 24px;font-size:var(--bl-fs-sm);font-weight:700;line-height:1.4;
    text-decoration:none;border:1.5px solid transparent;border-radius:var(--bl-radius-sm);
    cursor:pointer;transition:all var(--bl-transition);min-height:44px;white-space:nowrap;
}
.bl-btn:hover{text-decoration:none;transform:translateY(-1px);}
.bl-btn:active{transform:translateY(0);}
.bl-btn:focus-visible{outline:2px solid transparent;box-shadow:var(--bl-focus-ring);}
/* Primary CTA = connect green with dark text (AA contrast) */
.bl-btn--primary{background:var(--bl-connect);color:var(--bl-connect-text);box-shadow:var(--bl-shadow-glow);}
.bl-btn--primary:hover{background:var(--bl-connect-hover);color:var(--bl-connect-text);box-shadow:0 12px 40px rgba(34,197,94,0.4);}
.bl-btn--gradient{background:var(--bl-connect);color:var(--bl-connect-text);box-shadow:var(--bl-shadow-glow);border-radius:var(--bl-radius-pill);}
.bl-btn--gradient:hover{background:var(--bl-connect-hover);color:var(--bl-connect-text);box-shadow:0 12px 40px rgba(34,197,94,0.4);}
/* Secondary = navy outline */
.bl-btn--ghost{background:transparent;color:var(--bl-navy);border-color:var(--bl-navy);}
.bl-btn--ghost:hover{background:var(--bl-navy);color:#fff;border-color:var(--bl-navy);}
[data-theme="dark"] .bl-btn--ghost{color:#fff;border-color:rgba(255,255,255,0.3);}
[data-theme="dark"] .bl-btn--ghost:hover{background:rgba(255,255,255,0.1);color:#fff;}
.bl-btn--light{background:#fff;color:var(--bl-navy);}
.bl-btn--light:hover{background:var(--bl-surface-2);color:var(--bl-navy);}
.bl-btn--lg{padding:16px 32px;font-size:var(--bl-fs-md);min-height:52px;}
.bl-btn--sm{padding:8px 16px;font-size:var(--bl-fs-xs);min-height:36px;border-radius:var(--bl-radius-sm);}
.bl-btn--block{display:flex;width:100%;}
.bl-icon-btn{
    display:inline-flex;align-items:center;justify-content:center;
    width:40px;height:40px;color:var(--bl-text-secondary);
    border-radius:var(--bl-radius-sm);transition:all var(--bl-transition);
}
.bl-icon-btn:hover{background:var(--bl-surface-2);color:var(--bl-text);}

/* ============ CHIPS ============ */
.bl-chip{
    display:inline-flex;align-items:center;gap:6px;
    padding:4px 12px;background:var(--bl-surface-2);color:var(--bl-text-secondary);
    font-size:var(--bl-fs-xs);font-weight:600;border-radius:var(--bl-radius-pill);
    text-decoration:none;border:1px solid var(--bl-border);transition:all var(--bl-transition);
}
.bl-chip:hover{text-decoration:none;}
.bl-chip--cat{background:var(--bl-primary-soft);color:var(--bl-primary);border-color:transparent;}
.bl-chip--cat:hover{background:var(--bl-gradient);color:#fff;}
.bl-chip--tag{background:var(--bl-surface-2);color:var(--bl-text-secondary);}
.bl-chip--tag:hover{background:var(--bl-primary-soft);color:var(--bl-primary);border-color:transparent;}
.bl-chip--sm{font-size:0.7rem;padding:2px 10px;}

/* ============ HEADER (Glassmorphism) ============ */
.bl-header{
    position:sticky;top:0;z-index:var(--bl-z-sticky);
    background:rgba(246,247,251,0.8);
    backdrop-filter:saturate(180%) blur(12px);
    -webkit-backdrop-filter:saturate(180%) blur(12px);
    border-block-end:1px solid transparent;
    transition:all var(--bl-transition);
}
[data-theme="dark"] .bl-header{background:rgba(11,18,32,0.8);}
.bl-header.is-scrolled{
    border-block-end-color:var(--bl-border);
    box-shadow:0 4px 24px rgba(15,23,42,0.06);
}
.bl-header__inner{
    display:flex;align-items:center;
    height:76px;min-height:76px;gap:24px;
    max-width:var(--bl-container);
    margin-inline:auto;
    padding-inline:var(--bl-container-pad);
    padding-block:0; /* kill layout.css phantom padding-block */
}
/* One horizontal line: every direct child sits on the same vertical
   midpoint — no injected block margins, no vertical transforms. */
.bl-header__inner > *{
    align-self:center;
    margin-block:0;
    transform:none;
}

/* Brand (logo) — text or image, always 44px tall, one line */
.bl-brand{
    display:flex;align-items:center;height:44px;line-height:1;flex-shrink:0;
}
.bl-brand__link{
    display:inline-flex;align-items:center;gap:var(--bl-space-2);
    height:44px;line-height:1;
    color:var(--bl-text);text-decoration:none;font-weight:900;font-size:1.25rem;
    white-space:nowrap;
}
.bl-brand__link:hover{text-decoration:none;color:var(--bl-text);}
.bl-brand__logo-mark{
    width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;
    background:var(--bl-gradient);border-radius:var(--bl-radius-sm);color:#fff;
    box-shadow:var(--bl-shadow-glow);flex-shrink:0;
}
.bl-brand__name{font-weight:900;font-size:1.25rem;letter-spacing:-0.02em;color:var(--bl-text);line-height:1;}
.bl-brand__desc{font-size:var(--bl-fs-xs);color:var(--bl-text-muted);display:block;line-height:1.2;}
.bl-brand__text{display:flex;flex-direction:column;justify-content:center;line-height:1.2;}
.bl-brand__title{font-size:var(--bl-fs-md);font-weight:800;color:var(--bl-text);line-height:1.2;}
/* Logos never exceed the 44px row — covers custom-logo images too */
.bl-brand__logo,.bl-brand__logo--dark,.bl-footer__logo,.bl-footer__logo--dark,
.bl-brand .custom-logo,.bl-brand .custom-logo-link img{
    max-height:40px;width:auto;
}
.bl-brand__logo--dark,.bl-footer__logo--dark{display:none;}
[data-theme="dark"] .bl-brand__logo:not(.bl-brand__logo--dark){display:none;}
[data-theme="dark"] .bl-footer__logo:not(.bl-footer__logo--dark){display:none;}
[data-theme="dark"] .bl-brand__logo--dark{display:block;}
[data-theme="dark"] .bl-footer__logo--dark{display:block;}
.bl-brand .custom-logo-link,.bl-footer .custom-logo-link{
    display:inline-flex;align-items:center;height:44px;line-height:1;
}

/* Nav — hugs the brand (RTL: flows right→left exactly like the document).
   No flex:1, no justify-content:center, no row-reverse, no direction:ltr —
   the first item («خانه») sits right beside the logo. */
.bl-nav-primary{
    display:flex;align-items:center;height:44px;line-height:1;
    margin-inline-start:8px; /* 24px flex gap + 8px = 32px logo→nav distance */
    flex-shrink:1;min-width:0;
}
.bl-nav-primary__list{
    display:flex;align-items:center;height:44px;line-height:1;
    gap:4px;list-style:none;margin:0;padding:0;flex-wrap:nowrap;
}
.bl-nav-primary__item{position:relative;list-style:none;margin:0;padding:0;}
.bl-nav-primary__link{
    display:flex;align-items:center;height:44px;
    padding-inline:12px;padding-block:0;margin:0;
    color:var(--bl-text);text-decoration:none;
    border-radius:var(--bl-radius-sm);font-size:14px;font-weight:600;
    line-height:1;white-space:nowrap;
    transition:all var(--bl-transition);
}
.bl-nav-primary__link:hover{background:var(--bl-surface-2);color:var(--bl-connect-hover);text-decoration:none;}
.bl-nav-primary__link.is-current,.bl-nav-primary__link[aria-current="page"]{
    color:var(--bl-connect-hover);background:var(--bl-connect-soft);
}
.bl-nav-primary__toggle{display:none;}
.bl-nav-primary__sub{
    position:absolute;top:100%;inset-inline-start:0;min-width:240px;
    background:var(--bl-surface);border:1px solid var(--bl-border);
    border-radius:var(--bl-radius);box-shadow:var(--bl-shadow-lg);
    padding:var(--bl-space-1);list-style:none;margin:0;
    opacity:0;visibility:hidden;transform:translateY(-4px);
    transition:all var(--bl-transition);z-index:10;
}
.bl-nav-primary__item--has-children:hover > .bl-nav-primary__sub,
.bl-nav-primary__item--has-children:focus-within > .bl-nav-primary__sub{
    opacity:1;visibility:visible;transform:translateY(0);
}
.bl-nav-primary__sub .bl-nav-primary__link{display:block;padding:8px 12px;height:auto;}

/* Header actions — pinned to the far (inline-end) edge by the auto margin */
.bl-header__actions{
    display:flex;align-items:center;gap:12px;height:44px;line-height:1;
    margin-inline-start:auto;margin-inline-end:0;flex-shrink:0;
}
/* Icon buttons: 40×40, inner 20px SVG perfectly centered */
.bl-header__actions .bl-icon-btn{
    width:40px;height:40px;padding:0;margin:0;line-height:1;flex-shrink:0;
}
/* CTA — exactly 44px tall, single line */
.bl-header__cta{
    display:inline-flex;align-items:center;justify-content:center;
    height:44px;min-height:44px;line-height:1;
    padding-block:0;margin:0;
    white-space:nowrap;flex-shrink:0;
}
.bl-header__menu-btn{
    display:none;width:44px;height:44px;align-items:center;justify-content:center;
    border-radius:var(--bl-radius-sm);color:var(--bl-text);cursor:pointer;
}
.bl-header__menu-btn:hover{background:var(--bl-surface-2);}
.bl-header__menu-icon{display:flex;flex-direction:column;gap:4px;width:22px;}
.bl-header__menu-icon span{display:block;height:2px;background:currentColor;border-radius:2px;transition:transform var(--bl-transition),opacity var(--bl-transition);}

/* ============ HERO — Two-column with app mockup ============ */
.bl-hero{
    position:relative;padding-block:var(--section-y) var(--section-y-bottom);
    background:var(--bl-bg);overflow:hidden;
}
.bl-hero__bg{
    position:absolute;inset:0;z-index:0;pointer-events:none;
    background:
        radial-gradient(circle at 85% 20%,rgba(34,197,94,0.08) 0%,transparent 40%),
        radial-gradient(circle at 15% 80%,rgba(14,23,38,0.06) 0%,transparent 40%);
}
.bl-hero__bg::before{
    content:"";position:absolute;inset:0;
    background-image:radial-gradient(circle,rgba(15,23,42,0.04) 1px,transparent 1px);
    background-size:24px 24px;opacity:0.5;
}
[data-theme="dark"] .bl-hero__bg::before{
    background-image:radial-gradient(circle,rgba(255,255,255,0.04) 1px,transparent 1px);
}
.bl-hero__grid{
    position:relative;z-index:1;
    display:grid;grid-template-columns:minmax(0,1fr) 420px;
    gap:var(--bl-space-6);align-items:center;
    max-width:var(--bl-container);margin-inline:auto;padding-inline:var(--bl-container-pad);
}
/* Legacy/landing hero: centered single column (bl-hero__inner) */
.bl-hero__inner{
    position:relative;z-index:1;
    display:flex;flex-direction:column;align-items:center;gap:var(--bl-space-3);
    text-align:center;
}
.bl-hero__content{display:flex;flex-direction:column;gap:var(--bl-space-3);text-align:start;}
.bl-hero__badge{align-self:flex-start;}
.bl-hero__title{
    font-size:clamp(2.75rem,2rem+2.5vw,3.25rem);font-weight:900;line-height:1.2;
    margin:0;letter-spacing:-0.03em;text-align:start;
}
.bl-hero__inner .bl-hero__title{text-align:center;}
.bl-hero__title-highlight{color:var(--bl-connect-highlight);}
.bl-hero__subtitle{
    font-size:18px;color:var(--bl-text-secondary);max-width:50ch;line-height:1.75;margin:0;text-align:start;
}
.bl-hero__inner .bl-hero__subtitle{text-align:center;}
.bl-hero__search{
    display:flex;align-items:center;gap:var(--bl-space-2);
    background:var(--bl-surface);border:1.5px solid var(--bl-border-strong);
    border-radius:var(--bl-radius-pill);
    padding-block:6px;padding-inline-start:6px;padding-inline-end:20px;
    width:100%;max-width:520px;
    box-shadow:var(--bl-shadow);transition:all var(--bl-transition);
}
.bl-hero__search:focus-within{border-color:var(--bl-connect);box-shadow:var(--bl-shadow),var(--bl-focus-ring);}
.bl-hero__search-icon{color:var(--bl-text-muted);flex-shrink:0;}
.bl-hero__search-input{
    flex:1;border:0;background:transparent;padding-block:12px;font-size:var(--bl-fs-md);
    color:var(--bl-text);min-width:0;
}
.bl-hero__search-input::placeholder{color:var(--bl-text-subtle);}
.bl-hero__search-input:focus{outline:none;box-shadow:none;}
.bl-hero__search-btn{flex-shrink:0;}
.bl-hero__stats{
    list-style:none;padding:0;margin:var(--bl-space-3) 0 0;
    display:flex;align-items:center;gap:var(--bl-space-4);flex-wrap:wrap;
}
.bl-hero__stat{display:flex;align-items:baseline;gap:8px;}
.bl-hero__stat-value{font-size:24px;font-weight:900;color:var(--bl-text);line-height:1;letter-spacing:-0.02em;}
.bl-hero__stat-label{font-size:var(--bl-fs-sm);color:var(--bl-text-muted);}
.bl-hero__stat-sep{width:1px;height:24px;background:var(--bl-border-strong);}
.bl-hero__cta{
    display:flex;gap:var(--bl-space-3);flex-wrap:wrap;justify-content:center;
    margin-block-start:var(--bl-space-3);
}

/* ============ APP MOCKUP (OpenVPN Connect card) ============ */
.bl-hero__mockup{display:flex;justify-content:center;align-items:center;}
.bl-app-card{
    width:100%;max-width:380px;
    background:var(--bl-navy-2);border-radius:24px;
    box-shadow:0 24px 64px rgba(14,23,38,0.25),0 8px 24px rgba(14,23,38,0.15);
    transform:rotate(-3deg);transition:transform var(--bl-transition-slow);
    overflow:hidden;border:1px solid rgba(255,255,255,0.06);
}
.bl-app-card:hover{transform:rotate(-1deg) translateY(-4px);}
.bl-app-card__header{
    display:flex;align-items:center;gap:var(--bl-space-2);
    padding:14px 20px;background:rgba(0,0,0,0.2);
    border-block-end:1px solid rgba(255,255,255,0.06);
}
.bl-app-card__dots{display:flex;gap:6px;}
.bl-app-card__dots span{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,0.15);}
.bl-app-card__dots span:nth-child(1){background:#FF5F57;}
.bl-app-card__dots span:nth-child(2){background:#FEBC2E;}
.bl-app-card__dots span:nth-child(3){background:#28C840;}
.bl-app-card__title{
    color:#E6EAF2;font-size:13px;font-weight:700;letter-spacing:0.02em;
    margin-inline-start:auto;font-family:var(--bl-font-mono);
}
.bl-app-card__body{padding:24px;display:flex;flex-direction:column;gap:20px;}
.bl-app-card__server{display:flex;align-items:center;gap:14px;}
.bl-app-card__server-icon{
    width:48px;height:48px;border-radius:12px;
    background:rgba(34,197,94,0.15);color:var(--bl-connect);
    display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.bl-app-card__server-info{flex:1;min-width:0;}
.bl-app-card__server-name{color:#fff;font-size:15px;font-weight:700;line-height:1.3;}
.bl-app-card__server-meta{color:#7C8BAA;font-size:12px;font-family:var(--bl-font-mono);margin-block-start:2px;}
.bl-app-card__status{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(34,197,94,0.08);border-radius:10px;}
.bl-app-card__status-dot{width:8px;height:8px;border-radius:50%;background:var(--bl-connect);box-shadow:0 0 8px var(--bl-connect);}
.bl-app-card__status-text{color:#A8B3C7;font-size:13px;font-weight:500;}
.bl-app-card__connect{
    display:flex;align-items:center;justify-content:center;gap:8px;
    padding:14px;border-radius:12px;
    background:var(--bl-connect);color:var(--bl-connect-text);
    font-size:15px;font-weight:800;letter-spacing:0.05em;
    cursor:default;border:none;width:100%;
    box-shadow:0 4px 16px rgba(34,197,94,0.3);
}
.bl-app-card__footer{display:flex;gap:var(--bl-space-3);padding-block-start:8px;border-block-start:1px solid rgba(255,255,255,0.06);}
.bl-app-card__stat{flex:1;text-align:center;}
.bl-app-card__stat-label{display:block;color:#7C8BAA;font-size:11px;margin-block-end:2px;}
.bl-app-card__stat-value{display:block;color:#E6EAF2;font-size:14px;font-weight:700;font-family:var(--bl-font-mono);}

/* ============ CARDS ============ */
.bl-cards--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--bl-space-4);}
.bl-card{
    display:flex;flex-direction:column;background:var(--bl-surface);
    border:1px solid var(--bl-border);border-radius:20px;overflow:hidden;
    transition:all var(--bl-transition);position:relative;
}
.bl-card:hover{
    transform:translateY(-4px);box-shadow:var(--bl-shadow-lg);border-color:var(--bl-primary);
}
.bl-card__media{
    display:block;aspect-ratio:16/9;overflow:hidden;
    background:var(--bl-surface-2);position:relative;
}
.bl-card__img{width:100%;height:100%;object-fit:cover;transition:transform var(--bl-transition-slow);}
.bl-card:hover .bl-card__img{transform:scale(1.08);}
.bl-card__fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.9);}
.bl-card__fallback-icon{width:48px;height:48px;opacity:0.7;}
.bl-card__cat{position:absolute;top:var(--bl-space-2);inset-inline-start:var(--bl-space-2);z-index:2;}
.bl-card__body{padding:var(--bl-space-3);display:flex;flex-direction:column;gap:var(--bl-space-2);flex:1;}
.bl-card__title{font-size:17px;font-weight:700;line-height:1.4;margin:0;}
.bl-card__title a,.bl-card__link{color:var(--bl-text);text-decoration:none;}
.bl-card__title a:hover,.bl-card__link:hover{color:var(--bl-primary);text-decoration:none;}
.bl-card__excerpt{
    color:var(--bl-text-secondary);font-size:var(--bl-fs-sm);line-height:1.7;margin:0;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.bl-card__meta{
    display:flex;flex-wrap:wrap;gap:var(--bl-space-2);color:var(--bl-text-muted);
    font-size:var(--bl-fs-xs);margin-block-start:auto;align-items:center;
}
.bl-card__meta-item{display:inline-flex;align-items:center;gap:4px;}

/* Compact card — legacy horizontal variant (kept for other lists) */
.bl-card--compact{flex-direction:row;align-items:stretch;}
.bl-card__media--compact{flex:0 0 96px;aspect-ratio:1;border-radius:12px;overflow:hidden;margin-block:12px;margin-inline-end:12px;}
.bl-card__media--compact .bl-card__img,
.bl-card__media--compact .bl-card__fallback{width:100%;height:100%;object-fit:cover;border-radius:12px;aspect-ratio:auto;}
.bl-card__body--compact{padding:12px;gap:6px;}
.bl-card__title--compact{font-size:14px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.bl-card__meta--compact{font-size:11px;gap:8px;}
.bl-cards--compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--bl-space-3);}

/* Snippet card (v3.7.3) — vertical card for «عیب‌یابی‌های رایج»:
   image on top (16:9, 16px top corners, NO chip overlay), body with chip →
   2-line title → date row; hover lift; equal heights via grid stretch. */
.bl-cards--snippet{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;align-items:stretch;}
.bl-card--snippet{padding:0;border-radius:16px;}
.bl-card--snippet:hover{transform:translateY(-4px);}
.bl-card__media--snippet{aspect-ratio:16/9;width:100%;border-radius:16px 16px 0 0;}
.bl-card__body--snippet{padding:16px;display:flex;flex-direction:column;flex:1;min-height:0;}
.bl-chip--snippet{
    align-self:flex-start;margin:0;
    padding:3px 10px;background:var(--bl-connect-soft);color:var(--bl-connect-hover);
    font-size:11px;font-weight:700;border-radius:var(--bl-radius-pill);
    text-decoration:none;border:none;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.bl-chip--snippet:hover{text-decoration:none;background:var(--bl-connect);color:var(--bl-connect-text);}
.bl-card__title--snippet{
    font-size:15px;font-weight:700;line-height:1.9;margin:10px 0 0;
    text-align:start;word-break:normal;overflow-wrap:break-word;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.bl-card__title--snippet a{color:inherit;text-decoration:none;}
.bl-card__title--snippet a:hover{color:var(--bl-connect-hover);text-decoration:none;}
.bl-card__meta--snippet{
    display:flex;align-items:center;gap:6px;margin:8px 0 0;
    font-size:12px;color:var(--bl-text-muted);
}
.bl-card__meta--snippet svg{flex-shrink:0;color:var(--bl-text-subtle);}

/* Service card (services page template) */
.bl-card--service{
    padding:var(--bl-space-4);text-align:start;gap:var(--bl-space-2);
    border-radius:20px;
}
.bl-card__service-icon{
    width:56px;height:56px;border-radius:14px;
    display:inline-flex;align-items:center;justify-content:center;
    background:var(--bl-connect-soft);color:var(--bl-connect-hover);
}
.bl-card__service-title{font-size:19px;font-weight:800;margin:0;}
.bl-card__service-text{color:var(--bl-text-secondary);font-size:var(--bl-fs-sm);line-height:1.8;margin:0;}
.bl-card__service-cta{margin-block-start:auto;align-self:flex-start;}

/* ============ BREADCRUMB ============ */
.bl-breadcrumb{padding:0;margin-block-end:24px;font-size:13px;color:var(--bl-text-muted);}
.bl-breadcrumb__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px;}
.bl-breadcrumb__item{display:inline-flex;align-items:center;gap:4px;}
.bl-breadcrumb__link{color:var(--bl-text-muted);text-decoration:none;padding:4px 8px;border-radius:6px;transition:all var(--bl-transition);}
.bl-breadcrumb__link:hover{color:var(--bl-primary);background:var(--bl-surface-2);text-decoration:none;}
.bl-breadcrumb__current{color:var(--bl-text);font-weight:600;padding:4px 8px;}
.bl-breadcrumb__sep{color:var(--bl-text-subtle);opacity:0.5;display:inline-flex;align-items:center;}
/* The icon is chevron-left which is already correct for RTL flow; mirror for LTR. */
[dir="ltr"] .bl-breadcrumb__sep{transform:scaleX(-1);}

/* ============ PAGINATION ============ */
.bl-pagination{margin-block-start:var(--bl-space-5);}
.bl-pagination__list{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:4px;flex-wrap:wrap;}
.bl-pagination__link,.bl-pagination__dots{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:44px;height:44px;padding-inline:14px;color:var(--bl-text);text-decoration:none;
    border:1px solid var(--bl-border);border-radius:var(--bl-radius-sm);
    font-size:var(--bl-fs-sm);font-weight:600;transition:all var(--bl-transition);
}
.bl-pagination__link:hover{background:var(--bl-surface-2);color:var(--bl-primary);border-color:var(--bl-primary);text-decoration:none;}
.bl-pagination__link.is-current{background:var(--bl-gradient);color:#fff;border-color:transparent;box-shadow:var(--bl-shadow-glow);}
.bl-pagination__dots{border:0;color:var(--bl-text-subtle);}

/* ============ SEARCH (inline + 404/no-results) ============ */
.bl-search{
    display:flex;align-items:center;gap:var(--bl-space-1);background:var(--bl-surface);
    border:1px solid var(--bl-border-strong);border-radius:var(--bl-radius);
    padding-block:6px;padding-inline-start:6px;padding-inline-end:16px;
    transition:all var(--bl-transition);
}
.bl-search:focus-within{border-color:var(--bl-primary);box-shadow:var(--bl-focus-ring);}
.bl-search__icon{color:var(--bl-text-subtle);flex-shrink:0;}
.bl-search__input{flex:1;border:0;background:transparent;padding-block:8px;font-size:var(--bl-fs-sm);color:var(--bl-text);min-width:0;}
.bl-search__input:focus{outline:none;box-shadow:none;}
.bl-search--inline{border-radius:var(--bl-radius);max-width:560px;}
.bl-search--inline .bl-search__input{padding-block:12px;}

/* ============ SINGLE POST — 2 column grid ============ */
.bl-article__body{
    display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;
    align-items:start;max-width:var(--bl-container);margin-inline:auto;
    padding-block-start:var(--bl-space-3);padding-inline:var(--bl-container-pad);
}
.bl-article__main{min-width:0;}

/* ============ SINGLE POST — header block (v3.7.1) ============ */
/* Structure: chip → H1 (ONE line) → lead (max 2 lines) → meta bar (ONE line)
   → 24px → featured image. Everything inline-start aligned (right in RTL). */
.bl-article__header{text-align:start;padding:0;margin:0;}
.bl-article__chip{
    display:inline-flex;align-items:center;gap:6px;
    padding:6px 14px;background:var(--bl-connect-soft);
    color:var(--bl-connect-hover);font-size:13px;font-weight:700;
    border-radius:999px;text-decoration:none;border:none;
    margin-block-end:12px;transition:all var(--bl-transition);
}
.bl-article__chip:hover{background:var(--bl-connect);color:var(--bl-connect-text);text-decoration:none;}
/* H1 — exactly one line; ellipsis when it overflows; full title on hover (title attr). */
.bl-article__title{
    display:block;font-size:clamp(19px,2.1vw,28px);font-weight:900;line-height:1.5;
    color:var(--bl-navy);margin:0;text-align:start;letter-spacing:-0.02em;max-width:100%;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
[data-theme="dark"] .bl-article__title{color:var(--bl-text);}
.bl-article__title bdi{unicode-bidi:isolate;}
/* Lead — 16px muted, line-height 1.9, never more than 2 lines. */
.bl-article__lead{
    font-size:16px;color:var(--bl-text-muted);line-height:1.9;
    margin:12px 0 0;text-align:start;max-width:100%;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
/* Meta — ONE 40px bar: author, date, reading time, comments — equal height,
   one baseline, hairline separators centered inside the gaps. */
.bl-article__meta{
    display:flex;flex-wrap:nowrap;align-items:center;gap:20px;
    height:40px;margin-block-start:16px;overflow:hidden;text-align:start;
}
.bl-article__meta .bl-meta{
    display:inline-flex;align-items:center;gap:6px;height:32px;
    font-size:13px;line-height:1;color:var(--bl-text-muted);
    white-space:nowrap;flex-shrink:0;
}
.bl-article__meta .bl-meta + .bl-meta{position:relative;}
.bl-article__meta .bl-meta + .bl-meta::before{
    content:"";position:absolute;inset-inline-start:-10.5px;
    top:50%;transform:translateY(-50%);
    width:1px;height:20px;background:var(--bl-border-strong);
}
.bl-meta__avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;object-fit:cover;}
/* First-letter avatar — never an empty or broken gray circle. */
.bl-meta__avatar-fallback{
    display:inline-flex;align-items:center;justify-content:center;
    width:32px;height:32px;border-radius:50%;flex-shrink:0;
    background:var(--bl-connect-soft);color:var(--bl-navy);
    font-size:14px;font-weight:800;line-height:1;
}
[data-theme="dark"] .bl-meta__avatar-fallback{color:var(--bl-text);}
.bl-meta__value{color:var(--bl-text-muted);}
.bl-meta a{color:var(--bl-text-muted);text-decoration:none;transition:color var(--bl-transition);}
.bl-meta a:hover{color:var(--bl-connect-hover);text-decoration:none;}
/* (v3.7.1) gradient separator removed — thumb margin is the exact 24px gap. */
.bl-article__thumb{margin:24px 0 0;}
.bl-article__thumb-img{
    width:100%;aspect-ratio:16/9;object-fit:cover;
    border-radius:20px;
    box-shadow:0 1px 2px rgba(15,23,42,0.04),0 12px 32px rgba(15,23,42,0.08);
}
.bl-article__thumb-caption{
    font-size:12px;color:var(--bl-text-subtle);text-align:center;
    margin-block-start:8px;
}
.bl-article__content{min-width:0;width:100%;}

/* ============ PROSE ============ */
.bl-prose{color:var(--bl-text);font-size:18px;line-height:2.1;max-width:75ch;}
.bl-prose > * + *{margin-block-start:var(--bl-space-3);}
.bl-prose h2{
    margin-block-start:var(--bl-space-6);scroll-margin-top:96px;
    font-size:26px;font-weight:800;line-height:1.4;
    padding-inline-start:14px;border-inline-start:4px solid var(--bl-connect);
}
.bl-prose h3{margin-block-start:var(--bl-space-5);scroll-margin-top:96px;font-size:20px;font-weight:700;line-height:1.4;}
.bl-prose h4{font-size:18px;font-weight:700;margin-block-start:var(--bl-space-4);}
.bl-prose ul,.bl-prose ol{padding-inline-start:1.5rem;margin:var(--bl-space-2) 0;}
.bl-prose li{margin-block-end:var(--bl-space-1);}
.bl-prose a{color:var(--bl-primary);text-decoration:underline;text-underline-offset:3px;}
.bl-prose a:hover{color:var(--bl-accent);}
.bl-prose img{border-radius:var(--bl-radius);margin-block:var(--bl-space-3);}
.bl-prose figcaption{text-align:center;color:var(--bl-text-subtle);font-size:var(--bl-fs-xs);margin-block-start:var(--bl-space-1);}
.bl-prose blockquote{
    margin:var(--bl-space-3) 0;padding:var(--bl-space-3) var(--bl-space-4);
    border-inline-start:4px solid var(--bl-primary);background:var(--bl-primary-soft);
    border-radius:var(--bl-radius);color:var(--bl-text-secondary);font-style:italic;
}
.bl-prose blockquote p:last-child{margin-block-end:0;}
.bl-prose pre{
    background:var(--bl-surface-2);padding:var(--bl-space-3);border-radius:var(--bl-radius);
    overflow-x:auto;direction:ltr;text-align:left;font-size:var(--bl-fs-sm);
    border:1px solid var(--bl-border);
}
.bl-prose code{font-family:var(--bl-font-mono);background:var(--bl-surface-3);padding:2px 6px;border-radius:6px;direction:ltr;unicode-bidi:embed;font-size:0.9em;}
.bl-prose pre code{background:none;padding:0;}

/* TABLE — full width, gradient header */
.bl-prose .wp-block-table,.bl-prose table{
    width:100%;max-width:100%;border-collapse:collapse;
    margin:var(--bl-space-3) 0;font-size:var(--bl-fs-sm);display:table;table-layout:auto;
}
.bl-prose figure.wp-block-table,.bl-prose .bl-table-wrap{
    margin:var(--bl-space-3) 0;overflow-x:auto;border-radius:var(--bl-radius);
    border:1px solid var(--bl-border);
}
.bl-prose thead{background:var(--bl-gradient);color:#fff;}
.bl-prose th{color:#fff;font-weight:700;border-color:rgba(255,255,255,0.15);}
.bl-prose th,.bl-prose td{padding:12px 16px;border:1px solid var(--bl-border);text-align:start;}
.bl-prose tbody tr:nth-child(even){background:var(--bl-surface-2);}
.bl-prose tbody tr:hover{background:var(--bl-primary-soft);}

/* Post pagination (wp_link_pages) */
.bl-article__pages{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-block-start:var(--bl-space-3);}
.bl-article__pages-link{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:36px;height:36px;padding-inline:10px;
    border:1px solid var(--bl-border);border-radius:var(--bl-radius-sm);
    font-size:var(--bl-fs-sm);font-weight:600;text-decoration:none;color:var(--bl-text);
}
.bl-article__pages-link:hover,.bl-article__pages-link.is-current{background:var(--bl-primary-soft);border-color:var(--bl-primary);color:var(--bl-primary);text-decoration:none;}
.bl-article__pages > .page-numbers{display:inline-flex;align-items:center;gap:6px;margin-inline-end:8px;color:var(--bl-text-muted);font-size:var(--bl-fs-sm);}

/* ============ CALLOUTS ============ */
.bl-callout{
    display:grid;grid-template-columns:auto 1fr;gap:var(--bl-space-2);
    padding:var(--bl-space-3) var(--bl-space-4);border-radius:var(--bl-radius);
    border-inline-start:4px solid var(--bl-info);background:var(--bl-info-soft);
    margin:var(--bl-space-3) 0;
}
.bl-callout--tip{border-inline-start-color:var(--bl-success);background:var(--bl-success-soft);}
.bl-callout--warning{border-inline-start-color:var(--bl-warning);background:var(--bl-warning-soft);}
.bl-callout--security{border-inline-start-color:var(--bl-danger);background:var(--bl-danger-soft);}
.bl-callout--info{border-inline-start-color:var(--bl-info);background:var(--bl-info-soft);}
.bl-callout__icon{color:var(--bl-info);flex-shrink:0;}
.bl-callout--tip .bl-callout__icon{color:var(--bl-success);}
.bl-callout--warning .bl-callout__icon{color:var(--bl-warning);}
.bl-callout--security .bl-callout__icon{color:var(--bl-danger);}
.bl-callout__body{min-width:0;}
.bl-callout__label{margin:0 0 4px;font-size:var(--bl-fs-sm);font-weight:700;}
.bl-callout__content{font-size:var(--bl-fs-sm);line-height:1.75;}

/* ============ POST SIDEBAR — separate cards per category ============ */
.bl-post-sidebar{position:sticky;top:96px;align-self:start;padding:0;display:flex;flex-direction:column;gap:var(--bl-space-3);}
.bl-post-sidebar__widget{
    padding:var(--bl-space-3);
    background:var(--bl-surface);border:1px solid var(--bl-border);
    border-radius:var(--bl-radius);box-shadow:var(--bl-shadow-sm);
}
.bl-post-sidebar__widget-title{
    font-size:var(--bl-fs-sm);font-weight:800;margin:0 0 var(--bl-space-2);color:var(--bl-text);
    padding-block-end:var(--bl-space-1);border-block-end:2px solid var(--bl-connect);
}
/* Category card (v3.7.3) — colored header band + white body */
.bl-post-sidebar__widget.bl-post-sidebar__cat-card{padding:0;border-radius:10px;overflow:hidden;}
.bl-post-sidebar__cat-card{display:flex;flex-direction:column;}
.bl-post-sidebar__cat-header{
    display:flex;align-items:center;gap:8px;
    padding:8px 12px;background:var(--bl-connect-soft);color:var(--bl-connect-hover);
}
.bl-post-sidebar__cat-icon{color:inherit;flex-shrink:0;display:inline-flex;}
.bl-post-sidebar__cat-title{font-size:14px;font-weight:800;margin:0;flex:1;min-width:0;line-height:1.6;}
.bl-post-sidebar__cat-title a{color:inherit;text-decoration:none;}
.bl-post-sidebar__cat-title a:hover{text-decoration:underline;}
.bl-post-sidebar__cat-pill{
    display:inline-flex;align-items:center;padding:2px 10px;
    background:var(--bl-connect);color:var(--bl-connect-text);
    border-radius:var(--bl-radius-pill);font-size:12px;font-weight:700;white-space:nowrap;
}
.bl-post-sidebar__cat-posts{list-style:none;padding:10px 12px 12px;margin:0;display:flex;flex-direction:column;gap:2px;background:var(--bl-surface);}
.bl-post-sidebar__cat-posts li{padding:0;margin:0;}
.bl-post-sidebar__post-link{
    display:flex;align-items:center;justify-content:space-between;gap:var(--bl-space-1);
    padding:8px 10px;border-radius:8px;color:var(--bl-text);text-decoration:none;
    transition:all var(--bl-transition);
}
.bl-post-sidebar__post-link:hover{background:var(--bl-primary-soft);color:var(--bl-connect-hover);text-decoration:none;}
.bl-post-sidebar__post-title{
    font-size:14px;font-weight:500;line-height:1.4;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    flex:1;
}
.bl-post-sidebar__post-chevron{color:var(--bl-text-subtle);flex-shrink:0;transition:color var(--bl-transition);}
.bl-post-sidebar__post-link:hover .bl-post-sidebar__post-chevron{color:var(--bl-connect-hover);}

/* TOC */
.bl-toc__mobile{background:var(--bl-surface);border-radius:var(--bl-radius);padding:var(--bl-space-3);border:1px solid var(--bl-border);}
.bl-toc__title{display:flex;align-items:center;justify-content:space-between;font-size:var(--bl-fs-sm);font-weight:800;cursor:pointer;list-style:none;color:var(--bl-text);}
.bl-toc__title::-webkit-details-marker{display:none;}
.bl-toc__list{list-style:none;padding:0;margin:var(--bl-space-2) 0 0;display:flex;flex-direction:column;gap:2px;counter-reset:bl-toc;}
.bl-toc__list > li{counter-increment:bl-toc;margin:0;}
.bl-toc__list > li > a{
    display:block;padding:8px 12px;color:var(--bl-text-muted);text-decoration:none;
    font-size:var(--bl-fs-sm);border-radius:8px;border-inline-start:2px solid transparent;
    transition:all var(--bl-transition);
}
.bl-toc__list > li > a::before{content:counter(bl-toc) ". ";color:var(--bl-text-subtle);font-variant-numeric:tabular-nums;margin-inline-end:4px;}
.bl-toc__list > li > a:hover,.bl-toc__list > li > a.is-active{color:var(--bl-primary);background:var(--bl-primary-soft);border-inline-start-color:var(--bl-primary);text-decoration:none;}
.bl-toc__list > li > ul{list-style:none;padding-inline-start:var(--bl-space-3);margin:0;}
.bl-toc__list > li > ul > li > a{font-size:var(--bl-fs-xs);padding-block:4px;}
.bl-toc[hidden]{display:none;}
html.js .bl-toc:not([hidden]){display:block;}

/* CTA box — navy gradient */
.bl-post-sidebar__cta{
    padding:var(--bl-space-4);
    background:linear-gradient(180deg,#0E1726 0%,#122A22 100%);
    color:#E6EAF2;border-radius:var(--bl-radius);
    text-align:center;box-shadow:var(--bl-shadow);
}
.bl-post-sidebar__cta-title{color:#fff;font-size:18px;font-weight:800;margin:0 0 var(--bl-space-1);}
.bl-post-sidebar__cta-text{color:rgba(230,234,242,0.8);font-size:14px;line-height:1.6;margin:0 0 var(--bl-space-3);}
.bl-post-sidebar__cta .bl-btn{margin-block-end:var(--bl-space-1);width:100%;}
.bl-post-sidebar__cta .bl-btn:last-child{margin-block-end:0;}
.bl-post-sidebar__cta .bl-btn--ghost{background:rgba(255,255,255,0.1);color:#fff;border-color:rgba(255,255,255,0.25);}
.bl-post-sidebar__cta .bl-btn--ghost:hover{background:rgba(255,255,255,0.2);color:#fff;}

/* ============ ARTICLE FOOTER (tags + share) ============ */
.bl-article__footer{width:100%;margin:var(--bl-space-5) 0 0;padding-block-start:var(--bl-space-4);border-block-start:1px solid var(--bl-border);}
.bl-article__tags ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--bl-space-1);}
.bl-article__tags li{margin:0;}
.bl-share{display:flex;align-items:center;gap:var(--bl-space-3);margin:var(--bl-space-3) 0 0;flex-wrap:wrap;}
.bl-share__label{color:var(--bl-text-muted);font-size:var(--bl-fs-sm);}
.bl-share__list{list-style:none;padding:0;margin:0;display:flex;gap:var(--bl-space-1);}
.bl-share__link{
    display:inline-flex;align-items:center;justify-content:center;
    width:40px;height:40px;border-radius:var(--bl-radius-sm);
    background:var(--bl-surface-2);color:var(--bl-text-muted);text-decoration:none;
    transition:all var(--bl-transition);border:1px solid var(--bl-border);cursor:pointer;
}
.bl-share__link:hover{background:var(--bl-gradient);color:#fff;text-decoration:none;border-color:transparent;box-shadow:var(--bl-shadow-glow);}
.bl-share__link--copy.is-copied{background:var(--bl-success);color:#fff;border-color:transparent;}

/* Author box (v3.7.3) — standalone block after related posts */
.bl-author-box{
    display:grid;grid-template-columns:64px 1fr;gap:var(--bl-space-3);
    padding:var(--bl-space-4);background:var(--bl-surface);
    border:1px solid var(--bl-border);border-radius:var(--bl-radius);
    margin:var(--bl-space-5) 0 0;box-shadow:var(--bl-shadow-sm);
}
.bl-author-box__avatar{grid-row:1;}
.bl-author-box__avatar-img{border-radius:50%;width:64px;height:64px;border:3px solid var(--bl-surface-3);}
.bl-author-box__name{font-size:var(--bl-fs-md);margin:0 0 var(--bl-space-1);font-weight:700;}
.bl-author-box__name a{color:var(--bl-text);text-decoration:none;}
.bl-author-box__name a:hover{color:var(--bl-primary);}
.bl-author-box__bio{color:var(--bl-text-secondary);font-size:var(--bl-fs-sm);line-height:1.75;margin:0 0 var(--bl-space-2);}
.bl-author-box__meta{font-size:var(--bl-fs-xs);color:var(--bl-text-subtle);margin:0 0 var(--bl-space-2);}
.bl-author-box__link{
    display:inline-flex;align-items:center;gap:0.35em;
    font-size:var(--bl-fs-sm);color:var(--bl-primary);text-decoration:none;
}
.bl-author-box__link:hover{text-decoration:underline;color:var(--bl-primary);}

/* ============ RELATED POSTS (inside the main column, v3.7.3) ============ */
.bl-article__related{margin-block-start:var(--bl-space-6);}
.bl-article__related-title{font-size:20px;font-weight:800;margin:0 0 var(--bl-space-4);text-align:start;color:var(--bl-text);letter-spacing:-0.01em;}
.bl-article__related .bl-cards--grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--bl-space-3);}

/* ============ COMMENTS (v3.7.3) — right-aligned, full width of the main column ============
   Last block of the post: glued under the author box (margin-top 32). */
.bl-comments{margin-block-start:32px;text-align:start;}
.bl-comments__title{margin:0 0 var(--bl-space-4);font-size:20px;font-weight:800;text-align:start;color:var(--bl-text);}
.bl-comments__list{list-style:none;padding:0;margin:0 0 var(--bl-space-5);display:flex;flex-direction:column;gap:12px;}
/* Comment card — avatar inline-start (right in RTL), body beside it */
.bl-comment{margin:0;padding:16px;background:var(--bl-surface);border:1px solid var(--bl-border);border-radius:12px;box-shadow:var(--bl-shadow-sm);}
.bl-comment__body{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:start;}
.bl-comment__avatar{grid-column:1;grid-row:1;min-width:0;}
.bl-comment__avatar .avatar,.bl-comment__avatar img{width:48px;height:48px;border-radius:50%;display:block;object-fit:cover;}
.bl-comment__main{grid-column:2;grid-row:1;min-width:0;}
.bl-comment__head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 6px;}
.bl-comment__author{font-size:14px;font-weight:800;color:var(--bl-text);}
.bl-comment__author a{color:inherit;text-decoration:none;}
.bl-comment__author a:hover{color:var(--bl-connect-hover);text-decoration:none;}
.bl-comment__date{font-size:12px;color:var(--bl-text-muted);}
.bl-comment__content{font-size:14px;line-height:1.9;color:var(--bl-text);text-align:start;}
.bl-comment__content p{margin:0 0 8px;}
.bl-comment__content p:last-child{margin-block-end:0;}
.bl-comment__pending{font-size:12px;font-weight:700;color:var(--bl-warning);margin:0 0 8px;}
.bl-comment__reply{margin:8px 0 0;text-align:start;}
.bl-comment__reply a{
    display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--bl-radius-pill);
    background:var(--bl-surface-2);color:var(--bl-text-secondary);
    font-size:12px;font-weight:700;text-decoration:none;transition:all var(--bl-transition);
}
.bl-comment__reply a:hover{background:var(--bl-primary-soft);color:var(--bl-primary);text-decoration:none;}
.bl-comments__list .children{list-style:none;padding-inline-start:20px;margin:12px 0 0;display:flex;flex-direction:column;gap:12px;}
.bl-comments__list .children .bl-comment{background:var(--bl-surface-2);}
/* Empty state — right-aligned message inside a card */
.bl-comments__empty{
    background:var(--bl-surface);border:1px dashed var(--bl-border-strong);border-radius:12px;
    padding:var(--bl-space-4);margin:0 0 var(--bl-space-4);text-align:start;
}
.bl-comments__empty p{margin:0;color:var(--bl-text-muted);font-size:14px;text-align:start;}
/* Comment form — full width of the column, right-aligned labels */
.comment-respond{margin-block-start:var(--bl-space-5);}
.comment-reply-title{font-size:16px;font-weight:800;margin:0 0 var(--bl-space-3);text-align:start;color:var(--bl-text);}
.comment-reply-title small{font-size:12px;font-weight:600;margin-inline-start:8px;}
.comment-reply-title #cancel-comment-reply-link{color:var(--bl-danger);text-decoration:none;}
.bl-comments__form{
    margin-block-start:var(--bl-space-2);text-align:start;background:var(--bl-surface);
    border:1px solid var(--bl-border);border-radius:var(--bl-radius);
    padding:var(--bl-space-4);box-shadow:var(--bl-shadow-sm);width:100%;
}
.bl-comments__notes{font-size:12px;color:var(--bl-text-muted);margin:0 0 var(--bl-space-3);text-align:start;}
.bl-comments__field{margin-block-end:var(--bl-space-3);text-align:start;}
.bl-comments__field label{display:block;margin-block-end:6px;font-weight:700;font-size:14px;text-align:start;color:var(--bl-text);}
.bl-comments__field input,.bl-comments__field textarea{
    width:100%;padding:10px 14px;border:1px solid var(--bl-border-strong);
    border-radius:12px;font-family:inherit;font-size:var(--bl-fs-sm);
    background:var(--bl-surface);color:var(--bl-text);text-align:start;
    transition:all var(--bl-transition);
}
.bl-comments__field input:focus,.bl-comments__field textarea:focus{outline:none;border-color:var(--bl-primary);box-shadow:var(--bl-focus-ring);}
.bl-comments__closed{padding:var(--bl-space-3);background:var(--bl-surface-2);border-radius:var(--bl-radius);text-align:start;color:var(--bl-text-muted);}
/* Submit row — green button at the LEFT end of the form (RTL flex-end).
   The button carries .bl-btn--primary (solid green); the extra rules pin
   geometry regardless of which class WP prints. */
.bl-comments__form .form-submit{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin:var(--bl-space-3) 0 0;}
.bl-comments__form .form-submit .submit,
.bl-comments__form .form-submit button{
    display:inline-flex;align-items:center;justify-content:center;
    padding:12px 24px;font-size:var(--bl-fs-sm);font-weight:700;
    background:var(--bl-connect);color:var(--bl-connect-text);
    border:1.5px solid transparent;border-radius:var(--bl-radius-sm);
    cursor:pointer;min-height:44px;box-shadow:var(--bl-shadow-glow);
    transition:all var(--bl-transition);
}
.bl-comments__form .form-submit .submit:hover,
.bl-comments__form .form-submit button:hover{background:var(--bl-connect-hover);color:var(--bl-connect-text);}
.bl-comments__form .logged-in-as{font-size:12px;color:var(--bl-text-muted);margin:0 0 var(--bl-space-3);text-align:start;}
.bl-comments__form .logged-in-as a{color:var(--bl-link);text-decoration:none;}

/* ============ PLATFORMS — Segmented Control ============ */
.bl-platforms{background:var(--bl-surface);border:1px solid var(--bl-border);border-radius:var(--bl-radius-lg);overflow:hidden;box-shadow:var(--bl-shadow-sm);}
.bl-platforms__tabs{
    display:flex;overflow-x:auto;background:var(--bl-surface-2);
    padding:6px;gap:4px;scrollbar-width:none;
}
.bl-platforms__tabs::-webkit-scrollbar{display:none;}
.bl-platforms__tab{
    display:inline-flex;align-items:center;gap:8px;padding:10px 16px;
    color:var(--bl-text-secondary);font-size:var(--bl-fs-sm);font-weight:700;
    white-space:nowrap;background:transparent;border:none;cursor:pointer;
    border-radius:var(--bl-radius-sm);transition:all var(--bl-transition);position:relative;
}
.bl-platforms__tab:hover{color:var(--bl-text);background:rgba(255,255,255,0.5);}
[data-theme="dark"] .bl-platforms__tab:hover{background:rgba(255,255,255,0.05);}
.bl-platforms__tab.is-active{
    background:var(--bl-surface);color:var(--bl-primary);
    box-shadow:var(--bl-shadow-sm);
}
[data-theme="dark"] .bl-platforms__tab.is-active{background:var(--bl-surface-3);}
.bl-platforms__panel{padding:var(--bl-space-5);}
.bl-platforms__panel[hidden]{display:none;}
.bl-platforms__panel-title{margin:0 0 var(--bl-space-3);font-size:var(--bl-fs-lg);font-weight:800;}
.bl-platforms__links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--bl-space-1);}
.bl-platforms__links a{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--bl-space-2) var(--bl-space-3);color:var(--bl-text);text-decoration:none;
    background:var(--bl-surface-2);border-radius:var(--bl-radius-sm);
    transition:all var(--bl-transition);
}
.bl-platforms__links a:hover{background:var(--bl-primary-soft);color:var(--bl-primary);text-decoration:none;}
.bl-platforms__links a svg{color:var(--bl-text-subtle);transition:color var(--bl-transition);}
.bl-platforms__links a:hover svg{color:var(--bl-primary);}
.bl-platforms__empty{
    text-align:center;padding:var(--bl-space-5);color:var(--bl-text-muted);
    font-size:var(--bl-fs-sm);
}
.bl-platforms__empty-icon{
    width:48px;height:48px;margin:0 auto var(--bl-space-2);
    color:var(--bl-text-subtle);
}

/* ============ FAQ ============ */
.bl-faq__item{border:1px solid var(--bl-border);border-radius:var(--bl-radius);margin-block-end:var(--bl-space-1);background:var(--bl-surface);overflow:hidden;transition:all var(--bl-transition);}
.bl-faq__item:hover{border-color:var(--bl-border-strong);}
.bl-faq__q{display:flex;align-items:center;justify-content:space-between;gap:var(--bl-space-2);padding:var(--bl-space-3) var(--bl-space-4);cursor:pointer;font-size:var(--bl-fs-md);font-weight:700;color:var(--bl-text);list-style:none;}
.bl-faq__q::-webkit-details-marker{display:none;}
.bl-faq__q .bl-icon{color:var(--bl-text-muted);transition:transform var(--bl-transition);}
.bl-faq__item[open] .bl-faq__q{border-block-end:1px solid var(--bl-border);color:var(--bl-primary);}
.bl-faq__item[open] .bl-faq__q .bl-icon{transform:rotate(180deg);}
.bl-faq__a{padding:var(--bl-space-3) var(--bl-space-4);color:var(--bl-text-secondary);font-size:var(--bl-fs-sm);line-height:1.85;}
.bl-faq__a p:last-child{margin-block-end:0;}

/* ============ CTA BAND ============ */
.bl-cta-band{
    position:relative;background:var(--bl-gradient);color:#fff;
    padding-block:var(--section-y) var(--section-y-bottom);text-align:center;overflow:hidden;
}
.bl-cta-band::before{
    content:"";position:absolute;inset:0;
    background-image:radial-gradient(circle,rgba(255,255,255,0.1) 1px,transparent 1px);
    background-size:24px 24px;opacity:0.5;
}
.bl-cta-band__inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--bl-space-3);}
.bl-cta-band__text{display:flex;flex-direction:column;align-items:center;gap:var(--bl-space-2);}
.bl-cta-band__action{display:flex;flex-direction:column;align-items:center;gap:var(--bl-space-2);}
.bl-cta-band__title{color:#fff;font-size:28px;font-weight:800;margin:0;}
.bl-cta-band__subtitle{color:rgba(255,255,255,0.9);font-size:var(--bl-fs-md);max-width:50ch;margin:0;}
@media (min-width:1024px){
    .bl-cta-band__inner{flex-direction:row;justify-content:space-between;text-align:start;gap:var(--bl-space-6);}
    .bl-cta-band__text{align-items:flex-start;}
    .bl-cta-band__action{align-items:flex-end;}
}

/* ============ CODE BLOCKS (v3.6 style) ============ */
.bl-code{margin-block:var(--bl-space-4);background:var(--bl-surface);border:1px solid var(--bl-border);border-radius:var(--bl-radius);overflow:hidden;}
.bl-code__bar{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--bl-space-2) var(--bl-space-4);
    background:var(--bl-surface-2);border-block-end:1px solid var(--bl-border);
    font-size:var(--bl-fs-xs);
}
.bl-code__lang{color:var(--bl-text);font-family:var(--bl-font-mono);font-weight:600;}
.bl-code__lang--muted{color:var(--bl-text-subtle);font-weight:400;}
.bl-code__copy{
    display:inline-flex;align-items:center;gap:var(--bl-space-1);
    padding:var(--bl-space-1) var(--bl-space-2);
    color:var(--bl-text-muted);border-radius:var(--bl-radius-sm);
    font-size:var(--bl-fs-xs);transition:background var(--bl-transition),color var(--bl-transition);
}
.bl-code__copy:hover{background:var(--bl-surface-3);color:var(--bl-text);}
.bl-code__copy.is-copied{color:var(--bl-success);}
.bl-code__pre{
    margin:0;padding:var(--bl-space-4);
    background:var(--bl-surface);overflow-x:auto;
    font-size:var(--bl-fs-sm);line-height:1.85;
}
.bl-code__code{font-family:var(--bl-font-mono);color:var(--bl-text);direction:ltr;text-align:left;unicode-bidi:embed;}

/* ============ TROUBLESHOOTING ============ */
.bl-trouble__steps{list-style:none;padding:0;margin:0;display:grid;gap:var(--bl-space-3);}
.bl-trouble__step{
    display:grid;grid-template-columns:40px 1fr;gap:var(--bl-space-3);
    padding:var(--bl-space-3) var(--bl-space-4);
    border-radius:var(--bl-radius);background:var(--bl-surface);
    border:1px solid var(--bl-border);border-inline-start:4px solid var(--bl-border);
}
.bl-trouble__step--symptom{border-inline-start-color:var(--bl-danger);background:var(--bl-danger-soft);}
.bl-trouble__step--cause{border-inline-start-color:var(--bl-warning);background:var(--bl-warning-soft);}
.bl-trouble__step--fix{border-inline-start-color:var(--bl-success);background:var(--bl-success-soft);}
.bl-trouble__num{
    width:40px;height:40px;border-radius:50%;
    background:var(--bl-surface);color:var(--bl-text);
    display:flex;align-items:center;justify-content:center;
    font-weight:800;font-size:var(--bl-fs-md);
    border:1px solid var(--bl-border-strong);
}
.bl-trouble__title{font-size:var(--bl-fs-sm);margin:0 0 var(--bl-space-2);color:var(--bl-text);font-weight:700;}
.bl-trouble__body{min-width:0;}
.bl-trouble__content{font-size:var(--bl-fs-sm);line-height:1.85;}

/* ============ FOOTER (site-footer — v3.6.0) ============ */
.site-footer{
    --footer-bg:#0E1726;
    --footer-surface:#16202C;
    --footer-text:#E6EAF0;
    --footer-muted:#9AA7B8;
    --footer-line:rgba(255,255,255,0.08);
    --footer-accent:#22C55E;
    --footer-accent-soft:rgba(34,197,94,0.14);
    --footer-transition:200ms cubic-bezier(0.4,0,0.2,1);

    background:var(--footer-bg);color:var(--footer-text);
    margin-block-start:var(--bl-space-6);position:relative;padding-block-start:24px;
    border-block-start:2px solid transparent;
    border-image:linear-gradient(90deg,#22C55E,#2F6BFF) 1;
}
.site-footer__top-bar{display:none;}
.site-footer__inner{
    max-width:1240px;margin-inline:auto;padding-inline:24px;
}
/* Grid: brand 40% | categories 30% | contact 20% | quick links 10% */
.site-footer__grid{
    display:grid;
    grid-template-columns:4fr 3fr 2fr 1fr;
    gap:48px;
    width:100%;
    align-items:start;
    padding-block-end:48px;
}
.site-footer__col-title{
    font-size:14px;font-weight:800;color:#fff;
    margin:0 0 20px;padding:0;display:block;
}
.site-footer__col-title::after{
    content:"";display:block;width:32px;height:3px;
    background:var(--footer-accent);border-radius:2px;
    margin-block-start:8px;margin-inline-start:0;
}
.site-footer__col-toggle{
    display:block;width:100%;text-align:start;
    background:none;border:none;cursor:default;
    font:inherit;color:inherit;padding:0;
    font-size:14px;font-weight:800;
}
.site-footer__col-toggle .site-footer__col-chevron{display:none;}
.site-footer__col-body{display:block;}
.site-footer__col--brand > *{margin-inline-start:0;}
.site-footer__brand{display:flex;align-items:center;gap:12px;margin-block-end:16px;}
.site-footer__brand-mark{
    width:40px;height:40px;border-radius:10px;
    background:linear-gradient(180deg,#22C55E,#16A34A);
    color:#fff;display:flex;align-items:center;justify-content:center;
    box-shadow:0 4px 16px rgba(34,197,94,0.3);
    flex-shrink:0;
}
.site-footer__brand-name{font-size:20px;font-weight:900;color:#fff;letter-spacing:-0.02em;}
.site-footer__brand-desc{font-size:14px;color:var(--footer-muted);line-height:1.7;margin:0 0 20px;max-width:320px;}
.site-footer__social{display:flex;gap:10px;margin-block-start:20px;margin-block-end:0;padding:0;list-style:none;}
.site-footer__social-link{
    display:inline-flex;align-items:center;justify-content:center;
    width:40px;height:40px;border-radius:50%;
    border:1px solid var(--footer-line);background:transparent;
    color:#fff;text-decoration:none;flex-shrink:0;
    transition:all var(--footer-transition);
}
.site-footer__social-link:hover{
    background:var(--footer-accent);color:#06281A;
    transform:translateY(-3px);border-color:var(--footer-accent);
    box-shadow:0 8px 24px rgba(34,197,94,0.3);
}
.site-footer__link-list{list-style:none;padding:0;margin:0;}
.site-footer__link-list li{margin:0;}
.site-footer__link-list a{
    display:flex;align-items:center;gap:8px;
    height:40px;padding:0;color:var(--footer-muted);text-decoration:none;
    font-size:14px;transition:all var(--footer-transition);position:relative;
}
.site-footer__link-text{
    transition:transform var(--footer-transition);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;
}
.site-footer__link-list a::before{
    content:"";position:absolute;inset-inline-start:-12px;top:50%;transform:translateY(-50%);
    width:0;height:1.5px;background:var(--footer-accent);transition:width var(--footer-transition);
}
.site-footer__link-list a:hover{color:#fff;text-decoration:none;}
.site-footer__link-list a:hover .site-footer__link-text{transform:translateX(-4px);}
[dir="ltr"] .site-footer__link-list a:hover .site-footer__link-text{transform:translateX(4px);}
.site-footer__link-list a:hover::before{width:8px;}
.site-footer__cat-count{
    display:inline-flex;align-items:center;justify-content:center;
    min-width:28px;height:22px;padding-inline:6px;
    background:var(--footer-accent-soft);color:var(--footer-accent);
    border-radius:999px;font-size:12px;font-weight:700;flex-shrink:0;
    margin-inline-start:8px;
}
.site-footer__empty{color:var(--footer-muted);font-style:italic;font-size:14px;}
.site-footer__contact-list{list-style:none;padding:0;margin:0;}
.site-footer__contact-list li{
    display:flex;align-items:center;gap:10px;
    height:40px;
    font-size:14px;color:var(--footer-text);
}
.site-footer__contact-icon{
    display:flex;align-items:center;justify-content:center;
    width:20px;height:20px;color:var(--footer-accent);flex-shrink:0;
}
.site-footer__contact-list a{color:var(--footer-text);text-decoration:none;transition:color var(--footer-transition);}
.site-footer__contact-list a:hover{color:var(--footer-accent);text-decoration:none;}
.site-footer__trust-bar{
    display:flex;justify-content:center;gap:16px;flex-wrap:wrap;
    padding:8px 0 40px;
}
.site-footer__trust-pill{
    display:inline-flex;align-items:center;gap:8px;
    height:40px;padding-inline:20px;
    background:rgba(255,255,255,0.04);border:1px solid var(--footer-line);
    border-radius:999px;color:var(--footer-text);font-size:13px;font-weight:600;
    white-space:nowrap;transition:all var(--footer-transition);
}
.site-footer__trust-pill svg{color:var(--footer-accent);flex-shrink:0;}
.site-footer__trust-pill:hover{border-color:var(--footer-accent);transform:translateY(-2px);}
.site-footer__bottom{
    display:flex;align-items:center;justify-content:space-between;gap:24px;
    padding-block:20px;border-block-start:1px solid var(--footer-line);min-height:64px;
    flex-wrap:nowrap;
}
.site-footer__copyright{font-size:13px;color:var(--footer-muted);margin:0;white-space:nowrap;}
.site-footer__bottom-links{display:flex;align-items:center;gap:24px;flex-wrap:nowrap;}
.site-footer__bottom-links a{
    color:var(--footer-muted);text-decoration:none;font-size:13px;white-space:nowrap;
    transition:color var(--footer-transition);
}
.site-footer__bottom-links a:hover{color:#fff;text-decoration:none;}
.site-footer__back-to-top{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--footer-muted);background:none;border:none;
    font-size:13px;font-family:inherit;cursor:pointer;white-space:nowrap;
    transition:color var(--footer-transition);
}
.site-footer__back-to-top:hover{color:var(--footer-accent);}
.site-footer__powered{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--footer-muted);font-size:12px;white-space:nowrap;
}
.site-footer__powered svg{color:var(--footer-accent);flex-shrink:0;}
.site-footer a:focus-visible,
.site-footer button:focus-visible{
    outline:2px solid var(--footer-accent);outline-offset:2px;border-radius:4px;
}
/* Responsive footer */
@media (max-width:1023px){
    .site-footer__grid{grid-template-columns:1fr 1fr;gap:32px;}
    .site-footer__col--brand{grid-column:1/-1;}
}
@media (max-width:639px){
    .site-footer{padding-block-start:20px;}
    .site-footer__grid{grid-template-columns:1fr;gap:0;padding-block-end:32px;}
    .site-footer__col{padding-block:16px;border-block-end:1px solid var(--footer-line);text-align:center;}
    .site-footer__col:last-of-type{border-block-end:none;}
    .site-footer__col-toggle{
        cursor:pointer;display:flex;align-items:center;justify-content:space-between;
        width:100%;padding:0;text-align:center;
    }
    .site-footer__col-toggle .site-footer__col-chevron{
        display:block;width:16px;height:16px;flex-shrink:0;
        transition:transform 250ms cubic-bezier(0.4,0,0.2,1);
    }
    .site-footer__col-toggle[aria-expanded="true"] .site-footer__col-chevron{transform:rotate(180deg);}
    .site-footer__col-title{text-align:center;margin-block-end:12px;}
    .site-footer__col-title::after{margin-inline:auto;}
    .site-footer__link-list a{justify-content:center;}
    .site-footer__link-list a::before{display:none;}
    .site-footer__link-list a:hover .site-footer__link-text{transform:none;}
    .site-footer__contact-list li{justify-content:center;}
    .site-footer__contact-icon{width:auto;height:auto;}
    .site-footer__brand{justify-content:center;}
    .site-footer__brand-desc{text-align:center;max-width:none;}
    .site-footer__social{justify-content:center;}
    .site-footer__trust-bar{gap:12px;}
    .site-footer__bottom{flex-direction:column;text-align:center;gap:12px;min-height:auto;padding-block:20px;flex-wrap:wrap;}
    .site-footer__bottom-links{justify-content:center;gap:16px;flex-wrap:wrap;}
}
@media (prefers-reduced-motion:reduce){
    .site-footer *{transition:none !important;animation:none !important;}
}

/* ============ DRAWER (off-canvas) ============ */
.bl-drawer{position:fixed;inset:0;z-index:var(--bl-z-drawer);display:none;}
.bl-drawer[hidden]{display:none;}
.bl-drawer.is-open{display:block;}
.bl-drawer__backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transition:opacity 300ms cubic-bezier(0.4,0,0.2,1);}
.bl-drawer.is-open .bl-drawer__backdrop{opacity:1;}
.bl-drawer__panel{
    position:fixed;inset-block:0;inset-inline-start:auto;inset-inline-end:0;
    width:min(320px,85vw);background:var(--bl-surface);
    box-shadow:var(--bl-shadow-lg);display:flex;flex-direction:column;
    transform:translateX(100%);transition:transform 300ms cubic-bezier(0.4,0,0.2,1);
}
/* RTL: the panel sits on the LEFT edge, so hide it by moving LEFT (-100%). */
[dir="rtl"] .bl-drawer__panel{transform:translateX(-100%);}
.bl-drawer.is-open .bl-drawer__panel{transform:translateX(0);}
.bl-drawer__header{
    display:flex;align-items:center;justify-content:space-between;
    padding:var(--bl-space-3);border-block-end:1px solid var(--bl-border);min-height:60px;
}
.bl-drawer__title{font-size:var(--bl-fs-lg);margin:0;}
.bl-drawer__close{flex-shrink:0;}
.bl-drawer__body{flex:1;overflow-y:auto;padding:var(--bl-space-2);}
.bl-drawer__body::-webkit-scrollbar{width:6px;}
.bl-drawer__nav{display:flex;flex-direction:column;gap:2px;list-style:none;margin:0;padding:0;}
.bl-drawer__link{
    display:flex;align-items:center;justify-content:space-between;
    padding:14px 16px;color:var(--bl-text);text-decoration:none;
    font-weight:600;font-size:15px;border-radius:12px;
    transition:all var(--bl-transition);cursor:pointer;list-style:none;
}
.bl-drawer__link::-webkit-details-marker{display:none;}
.bl-drawer__link:hover{background:var(--bl-surface-2);color:var(--bl-connect-hover);text-decoration:none;}
.bl-drawer__accordion-toggle svg{transition:transform var(--bl-transition);}
.bl-drawer__accordion[open] .bl-drawer__accordion-toggle svg{transform:rotate(180deg);}
.bl-drawer__sub{display:flex;flex-direction:column;gap:2px;padding:4px 0;padding-inline-start:16px;}
.bl-drawer__sub-link{
    display:flex;align-items:center;justify-content:space-between;
    padding:10px 14px;color:var(--bl-text-secondary);text-decoration:none;
    font-size:14px;border-radius:8px;transition:all var(--bl-transition);
}
.bl-drawer__sub-link:hover{background:var(--bl-surface-2);color:var(--bl-connect-hover);text-decoration:none;}
.bl-drawer__sub-count{color:var(--bl-text-subtle);font-size:12px;}
.bl-drawer__footer{padding:var(--bl-space-3);border-block-start:1px solid var(--bl-border);display:flex;flex-direction:column;gap:var(--bl-space-1);}
.bl-drawer__theme-toggle{width:100%;}

/* ============ SEARCH OVERLAY ============ */
.bl-search-overlay{position:fixed;inset:0;z-index:var(--bl-z-overlay);background:rgba(0,0,0,0.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:none;align-items:flex-start;justify-content:center;padding:80px var(--bl-space-3) var(--bl-space-3);}
.bl-search-overlay[hidden]{display:none;}
.bl-search-overlay.is-open{display:flex;}
.bl-search-overlay__panel{
    background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
    border:1px solid var(--bl-border);border-radius:var(--bl-radius-lg);
    box-shadow:var(--bl-shadow-lg);width:100%;max-width:640px;padding:var(--bl-space-3);
    max-height:80vh;overflow-y:auto;
}
[data-theme="dark"] .bl-search-overlay__panel{background:rgba(18,26,43,0.95);}
.bl-search-overlay__form{display:flex;align-items:center;gap:var(--bl-space-2);padding:var(--bl-space-2) var(--bl-space-3);border:1.5px solid var(--bl-border-strong);border-radius:var(--bl-radius);background:var(--bl-surface);}
.bl-search-overlay__form:focus-within{border-color:var(--bl-primary);box-shadow:var(--bl-focus-ring);}
.bl-search-overlay__input{flex:1;border:0;background:transparent;padding-block:8px;font-size:var(--bl-fs-md);min-width:0;color:var(--bl-text);font-family:inherit;}
.bl-search-overlay__input:focus{outline:none;box-shadow:none;}
.bl-search-overlay__icon{color:var(--bl-text-subtle);flex-shrink:0;}
.bl-search-overlay__close{flex-shrink:0;}
.bl-search-overlay__suggestions{margin-block-start:var(--bl-space-2);}
.bl-search-overlay__heading{font-size:var(--bl-fs-xs);color:var(--bl-text-subtle);text-transform:uppercase;letter-spacing:0.05em;margin:var(--bl-space-3) 0 var(--bl-space-1);font-weight:700;}
.bl-search-overlay__quick-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px;}
.bl-search-overlay__quick-links a{display:block;padding:10px 14px;color:var(--bl-text);text-decoration:none;border-radius:8px;font-size:var(--bl-fs-sm);transition:all var(--bl-transition);}
.bl-search-overlay__quick-links a:hover{background:var(--bl-surface-2);text-decoration:none;}

/* ============ THEME TOGGLE ============ */
.bl-theme-toggle{position:relative;display:flex;align-items:center;height:44px;line-height:1;}
.bl-theme-toggle__btn{position:relative;}
.bl-theme-toggle__icon{position:absolute;top:50%;left:50%;translate:-50% -50%;transition:opacity var(--bl-transition),transform var(--bl-transition);}
[data-theme="auto"] .bl-theme-toggle__icon--auto,
[data-theme="light"] .bl-theme-toggle__icon--light,
[data-theme="dark"] .bl-theme-toggle__icon--dark{opacity:1;transform:rotate(0);}
[data-theme="auto"] .bl-theme-toggle__icon--light,
[data-theme="auto"] .bl-theme-toggle__icon--dark,
[data-theme="light"] .bl-theme-toggle__icon--auto,
[data-theme="light"] .bl-theme-toggle__icon--dark,
[data-theme="dark"] .bl-theme-toggle__icon--auto,
[data-theme="dark"] .bl-theme-toggle__icon--light{opacity:0;transform:rotate(-90deg);}
.bl-theme-toggle__menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;background:var(--bl-surface);border:1px solid var(--bl-border);border-radius:var(--bl-radius);box-shadow:var(--bl-shadow-lg);padding:6px;min-width:180px;list-style:none;margin:0;z-index:var(--bl-z-toast);}
.bl-theme-toggle__menu[hidden]{display:none;}
.bl-theme-toggle__option{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;color:var(--bl-text);border-radius:8px;font-size:var(--bl-fs-sm);text-align:start;transition:background var(--bl-transition);background:none;border:none;cursor:pointer;font-family:inherit;}
.bl-theme-toggle__option:hover{background:var(--bl-surface-2);}
.bl-theme-toggle__option[aria-pressed="true"]{background:var(--bl-primary-soft);color:var(--bl-primary);}
.bl-theme-toggle__hint{
    margin-inline-start:auto;background:var(--bl-surface-3);
    padding:1px 6px;border-radius:var(--bl-radius-sm);
    font-family:var(--bl-font-mono);font-size:0.7rem;color:var(--bl-text-subtle);
}

/* ============ BACK TO TOP ============ */
.bl-back-to-top{
    position:fixed;inset-inline-end:24px;bottom:24px;z-index:var(--bl-z-back-top);
    width:48px;height:48px;border-radius:50%;background:var(--bl-gradient);color:#fff;
    display:flex;align-items:center;justify-content:center;cursor:pointer;
    box-shadow:var(--bl-shadow-glow);border:none;
    opacity:0;visibility:hidden;transition:all var(--bl-transition);
}
.bl-back-to-top.is-visible{opacity:1;visibility:visible;}
.bl-back-to-top:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(37,99,235,0.4);}

/* ============ ICONS ============ */
.bl-icon{flex-shrink:0;display:inline-block;vertical-align:middle;}
.bl-icon-sprite{position:absolute;width:0;height:0;overflow:hidden;}

/* ============ 404 ============ */
.bl-404{padding-block:var(--section-y) var(--section-y-bottom);text-align:center;}
.bl-404__content{text-align:center;}
.bl-404__illustration{margin:0 auto var(--bl-space-4);max-width:240px;}
.bl-404__code{
    font-size:120px;font-weight:900;line-height:1;background:var(--bl-gradient);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
    margin:0 0 var(--bl-space-2);
}
.bl-404__title{font-size:var(--bl-fs-xl);margin:0 0 var(--bl-space-2);}
.bl-404__text{color:var(--bl-text-secondary);max-width:50ch;margin:0 auto var(--bl-space-4);}
.bl-404__search{margin:0 auto var(--bl-space-4);max-width:560px;}
.bl-404__actions{display:flex;gap:var(--bl-space-2);justify-content:center;flex-wrap:wrap;margin-block-end:var(--bl-space-5);}
.bl-404__recent{text-align:start;margin-block-start:var(--bl-space-5);}
.bl-404__recent-title{font-size:var(--bl-fs-md);margin:0 0 var(--bl-space-2);}
.bl-404__recent-list{list-style:none;padding:0;margin:0;}
.bl-404__recent-list li{padding:var(--bl-space-1) 0;border-block-end:1px solid var(--bl-border);}
.bl-404__recent-list a{color:var(--bl-text);text-decoration:none;}
.bl-404__recent-list a:hover{color:var(--bl-primary);}

/* ============ MOBILE BOTTOM BAR — single button, <640px only ============ */
.bl-mobile-bottom-bar{
    display:none;position:fixed;bottom:0;inset-inline:0;z-index:var(--bl-z-back-top);
    background:var(--bl-surface);border-block-start:1px solid var(--bl-border);
    box-shadow:0 -4px 12px rgba(15,23,42,0.06);
    padding-block-end:env(safe-area-inset-bottom,0);
}
.bl-mobile-bottom-bar__btn{
    display:flex;align-items:center;justify-content:center;
    margin:10px 12px;height:48px;border-radius:999px;
    background:var(--bl-connect);color:var(--bl-connect-text);
    font-size:15px;font-weight:800;text-decoration:none;
    transition:background var(--bl-transition);
}
.bl-mobile-bottom-bar__btn:hover{background:var(--bl-connect-hover);color:var(--bl-connect-text);text-decoration:none;}
@media (max-width:639px){
    .bl-mobile-bottom-bar{display:block;}
    body{padding-block-end:calc(76px + env(safe-area-inset-bottom,0));}
}
@media (min-width:640px){
    body{padding-block-end:0 !important;}
}

/* ============ ARCHIVE / BLOG HEADER ============ */
.bl-archive,.bl-search-results,.bl-page,.bl-single,.bl-front,.bl-landing{min-height:60vh;}
.bl-archive__header,.bl-search-results__header{
    padding-block:var(--bl-space-4) var(--bl-space-5);
    text-align:start;
    display:flex;flex-direction:column;gap:var(--bl-space-2);
}
.bl-archive__eyebrow{
    display:inline-flex;align-items:center;gap:6px;
    color:var(--bl-connect-hover);font-size:var(--bl-fs-xs);font-weight:700;
    background:var(--bl-connect-soft);border-radius:var(--bl-radius-pill);
    padding:4px 12px;margin:0;align-self:flex-start;
}
.bl-archive__title{font-size:clamp(26px,4vw,36px);font-weight:900;margin:0;letter-spacing:-0.02em;}
.bl-archive__description{color:var(--bl-text-secondary);font-size:var(--bl-fs-md);line-height:1.85;max-width:70ch;}
.bl-archive__count{color:var(--bl-text-muted);font-size:var(--bl-fs-sm);margin:0;}

/* ============ SEARCH RESULTS ============ */
.bl-search-results__title{font-size:clamp(24px,4vw,34px);font-weight:900;margin:0;}
.bl-search-results__query{
    display:inline-block;color:var(--bl-primary);font-weight:800;
    background:var(--bl-primary-soft);border-radius:var(--bl-radius-sm);
    padding:0 8px;
}
.bl-search-results__count{color:var(--bl-text-muted);font-size:var(--bl-fs-sm);margin:0;}
.bl-search-results__empty{
    text-align:center;padding:var(--bl-space-6) var(--bl-space-4);
    background:var(--bl-surface);border:1px solid var(--bl-border);
    border-radius:var(--bl-radius-lg);margin-block-start:var(--bl-space-4);
}
.bl-search-results__empty-icon{width:64px;height:64px;margin:0 auto var(--bl-space-3);color:var(--bl-text-subtle);}
.bl-search-results__empty-title{font-size:var(--bl-fs-lg);margin:0 0 var(--bl-space-2);}
.bl-search-results__empty-text{color:var(--bl-text-secondary);margin:0 0 var(--bl-space-4);}
.bl-search-results__suggestions-title{font-size:var(--bl-fs-sm);font-weight:700;margin:0 0 var(--bl-space-2);}
.bl-search-results__suggestions{
    list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--bl-space-2);
    justify-content:center;
}
.bl-search-results__suggestions a{
    display:inline-flex;align-items:center;gap:6px;
    padding:8px 16px;border:1px solid var(--bl-border);border-radius:var(--bl-radius-pill);
    color:var(--bl-text);text-decoration:none;font-size:var(--bl-fs-sm);font-weight:600;
    background:var(--bl-surface-2);transition:all var(--bl-transition);
}
.bl-search-results__suggestions a:hover{background:var(--bl-primary-soft);border-color:var(--bl-primary);color:var(--bl-primary);text-decoration:none;}

/* ============ NO RESULTS ============ */
.bl-no-results{
    text-align:center;padding:var(--bl-space-6) var(--bl-space-4);
    background:var(--bl-surface);border:1px solid var(--bl-border);
    border-radius:var(--bl-radius-lg);
}
.bl-no-results__icon{width:64px;height:64px;margin:0 auto var(--bl-space-3);color:var(--bl-text-subtle);}
.bl-no-results__title{font-size:var(--bl-fs-lg);margin:0 0 var(--bl-space-2);}
.bl-no-results__text{color:var(--bl-text-secondary);margin:0 0 var(--bl-space-4);}
.bl-no-results__search{margin:0 auto var(--bl-space-4);max-width:560px;}
.bl-no-results__home{margin-block-start:var(--bl-space-2);}

/* ============ SERVICES PAGE TEMPLATE ============ */
.bl-services__hero{
    padding-block:var(--section-y) var(--section-y-bottom);
    background:var(--bl-gradient-soft);
    text-align:center;
    border-block-end:1px solid var(--bl-border);
}
.bl-services__hero .bl-container{display:flex;flex-direction:column;align-items:center;gap:var(--bl-space-2);}
.bl-services__title{font-size:clamp(28px,4vw,40px);font-weight:900;margin:0;letter-spacing:-0.02em;}
.bl-services__lead{color:var(--bl-text-secondary);font-size:var(--bl-fs-md);line-height:1.85;max-width:60ch;margin:0;}
.bl-services__cards{padding-block-start:var(--section-y);}
.bl-services__cards .bl-cards--grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--bl-space-4);}

/* ============ PRICING / تعرفه‌ها (v3.7.3) — full-width navy section ============
   Palette maps to the theme tokens: --pr-navy = --bl-navy, --pr-navy-2 =
   --bl-navy-2, --pr-connect = --bl-connect; the footer-family shades are
   scoped locally (same values the site footer uses). */
.bl-pricing{
    --pr-navy:var(--bl-navy);
    --pr-navy-2:var(--bl-navy-2);
    --pr-line:rgba(255,255,255,0.08);
    --pr-muted:#9AA7B8;
    --pr-text:#E6EAF2;
    --pr-connect:var(--bl-connect);

    position:relative;background:var(--pr-navy);color:var(--pr-text);
    padding-block:var(--section-y) var(--section-y-bottom);overflow:hidden;
}
/* Faded dot pattern (same motif as the CTA band) */
.bl-pricing::before{
    content:"";position:absolute;inset:0;pointer-events:none;
    background-image:radial-gradient(circle,rgba(255,255,255,0.1) 1px,transparent 1px);
    background-size:24px 24px;opacity:0.35;
}
.bl-pricing__inner{position:relative;z-index:1;max-width:var(--bl-container);margin-inline:auto;padding-inline:var(--bl-container-pad);}
.bl-pricing__header{display:flex;flex-direction:column;align-items:center;gap:12px;margin-block-end:44px;text-align:center;}
.bl-pricing__title{font-size:clamp(24px,3vw,34px);font-weight:900;color:#fff;margin:0;text-align:center;letter-spacing:-0.02em;line-height:1.5;}
.bl-pricing__hl{color:var(--pr-connect);}
.bl-pricing__subtitle{font-size:14px;color:var(--pr-muted);margin:0;text-align:center;max-width:60ch;line-height:1.9;}
.bl-pricing__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch;}
/* Plan card */
.bl-pricing__plan{
    position:relative;display:flex;flex-direction:column;
    background:var(--pr-navy-2);border:1px solid var(--pr-line);
    border-radius:20px;padding:32px;
}
/* Featured (middle) plan — 2px connect border + slight scale + top badge */
.bl-pricing__plan--featured{border:2px solid var(--pr-connect);transform:scale(1.03);z-index:2;box-shadow:0 24px 48px rgba(0,0,0,0.35);}
.bl-pricing__badge{
    position:absolute;top:-16px;inset-inline-start:50%;transform:translateX(50%); /* RTL-aware center */
    background:var(--pr-connect);color:var(--bl-connect-text);
    font-size:12px;font-weight:800;padding:5px 16px;border-radius:999px;white-space:nowrap;
    box-shadow:0 6px 16px rgba(34,197,94,0.35);
}
.bl-pricing__plan-title{font-size:18px;font-weight:800;color:#fff;margin:0;line-height:1.6;}
.bl-pricing__plan-sub{font-size:12px;color:var(--pr-muted);margin:4px 0 0;line-height:1.8;}
.bl-pricing__plan-discount{font-size:12px;font-weight:700;color:var(--pr-connect);margin:8px 0 0;}
.bl-pricing__plan-price{display:flex;align-items:baseline;gap:8px;margin:16px 0 0;flex-wrap:wrap;}
.bl-pricing__price-value{font-size:40px;font-weight:900;color:#fff;line-height:1;letter-spacing:-0.01em;}
.bl-pricing__price-unit{font-size:12px;color:var(--pr-muted);}
/* Hairline separator */
.bl-pricing__plan-sep{height:1px;background:var(--pr-line);margin:20px 0;}
/* Features — green tick for included, gray X + strike-through for excluded */
.bl-pricing__features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;flex:1;}
.bl-pricing__feature{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--pr-text);line-height:1.8;min-width:0;}
.bl-pricing__feature-icon{flex-shrink:0;color:var(--pr-connect);display:inline-flex;}
.bl-pricing__feature-text{min-width:0;overflow-wrap:break-word;}
.bl-pricing__feature--excluded .bl-pricing__feature-icon{color:#64748B;}
.bl-pricing__feature--excluded .bl-pricing__feature-text{text-decoration:line-through;color:var(--pr-muted);}
/* CTA buttons — solid green (featured) / white outline (others) */
.bl-pricing__plan-cta{margin-block-start:24px;}
.bl-pricing__btn{
    display:inline-flex;align-items:center;justify-content:center;width:100%;
    padding:12px 24px;font-size:14px;font-weight:700;line-height:1.4;min-height:44px;
    border-radius:var(--bl-radius-sm);text-decoration:none;cursor:pointer;
    transition:all var(--bl-transition);white-space:nowrap;
}
.bl-pricing__btn--solid{background:var(--pr-connect);color:var(--bl-connect-text);border:1.5px solid transparent;box-shadow:0 8px 32px rgba(34,197,94,0.25);}
.bl-pricing__btn--solid:hover{background:var(--bl-connect-hover);color:var(--bl-connect-text);transform:translateY(-1px);text-decoration:none;}
.bl-pricing__btn--outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,0.5);}
.bl-pricing__btn--outline:hover{background:rgba(255,255,255,0.08);border-color:#fff;color:#fff;text-decoration:none;}
/* Mobile — single column, featured plan keeps its badge but no scale */
@media (max-width:1023px){
    .bl-pricing__grid{grid-template-columns:1fr;gap:24px;max-width:480px;margin-inline:auto;}
    .bl-pricing__plan--featured{transform:none;}
}
@media (max-width:639px){
    .bl-pricing__plan{padding:24px;}
    .bl-pricing__header{margin-block-end:32px;}
}

/* ============ DEFAULT PAGE TEMPLATE ============ */
.bl-page__header{
    padding-block:var(--bl-space-4) var(--bl-space-2);
    display:flex;flex-direction:column;align-items:center;gap:var(--bl-space-3);
    text-align:center;
}
.bl-page__title{font-size:clamp(26px,4vw,38px);font-weight:900;margin:0;letter-spacing:-0.02em;}
.bl-page__thumb{margin:0;width:100%;}
.bl-page__thumb .bl-page__thumb-img,.bl-page__thumb img{
    width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:20px;
    box-shadow:0 1px 2px rgba(15,23,42,0.04),0 12px 32px rgba(15,23,42,0.08);
}
.bl-page__body{padding-block:var(--bl-space-3) var(--bl-space-5);}
.bl-page__footer{margin-block-start:var(--bl-space-4);text-align:center;}

/* ============ LANDING PAGE TEMPLATE ============ */
.bl-landing__hero{padding-block:var(--section-y) var(--section-y-bottom);}
.bl-landing__content{padding-block:var(--bl-space-4) var(--bl-space-6);}

/* ============ RESPONSIVE ============ */
/* Mid-range desktops (1024–1279px): same single-line geometry, compact
   spacing so the full 8-item menu still fits — line-height stays 1 and
   padding-block stays 0 everywhere (only inline metrics tighten). */
@media (min-width:1024px) and (max-width:1279px){
    .bl-header__inner{gap:16px;}
    .bl-nav-primary{margin-inline-start:0;} /* 16px flex gap = logo→nav */
    .bl-nav-primary__list{gap:2px;}
    .bl-nav-primary__link{padding-inline:8px;font-size:13px;}
    .bl-header__actions{gap:8px;}
    .bl-header__cta{padding-inline:14px;}
}
@media (max-width:1023px){
    .bl-nav-primary{display:none;}
    .bl-header__menu-btn{display:inline-flex;}
    .bl-header__inner{
        height:var(--bl-header-h-mobile);min-height:var(--bl-header-h-mobile);
        gap:var(--bl-space-2);
    }
    .bl-theme-toggle{display:none;}
    .bl-header__cta{display:inline-flex;}
    .bl-article__body{grid-template-columns:1fr;max-width:760px;gap:0;}
    .bl-post-sidebar{position:static;margin-block-start:var(--bl-space-5);}
    .bl-newsletter__form{flex-direction:column;border-radius:var(--bl-radius);padding:var(--bl-space-2);}
    .bl-newsletter__input{width:100%;padding:14px;}
}
@media (max-width:639px){
    /* Single post header — same one-line rules, tighter rhythm */
    .bl-article__title{font-size:17px;}
    .bl-article__meta{gap:12px;}
    .bl-article__meta .bl-meta + .bl-meta::before{inset-inline-start:-6.5px;}
    .bl-cards--grid{grid-template-columns:1fr;}
    .bl-cats{grid-template-columns:repeat(2,1fr);}
    .bl-hero{padding-block:var(--bl-space-5) var(--bl-space-4);}
    .bl-section{padding-block:var(--bl-space-5);}
    .bl-author-box{grid-template-columns:1fr;text-align:center;}
    .bl-author-box__avatar{justify-self:center;}
    .bl-hero__stats{gap:var(--bl-space-3);}
    .bl-hero__stat-value{font-size:22px;}
    .bl-hero__stat-label{font-size:12px;}
}

/* Hero + app-card responsive */
@media (max-width:1023px){
    .bl-hero__grid{grid-template-columns:1fr;gap:var(--bl-space-5);}
    .bl-hero__mockup{order:-1;margin-block-end:var(--bl-space-2);}
    .bl-app-card{max-width:340px;}
}
@media (max-width:639px){
    .bl-hero__grid{grid-template-columns:1fr;gap:0;}
    .bl-hero__content{text-align:center;align-items:center;}
    .bl-hero__badge{align-self:center;}
    .bl-hero__title{
        font-size:clamp(26px,7vw,34px);line-height:1.6;text-align:center;
    }
    .bl-hero__title-highlight{overflow-wrap:anywhere;}
    .bl-hero__subtitle{text-align:center;max-width:none;}
    .bl-hero__search{max-width:440px;margin-inline:auto;}
    .bl-hero__stats{justify-content:center;gap:var(--bl-space-3);}
    .bl-hero__mockup{order:-1;margin:0 auto 24px;}
    .bl-app-card{max-width:320px;transform:none;box-shadow:var(--bl-shadow);}
    .bl-app-card:hover{transform:none;}
    .bl-prose{font-size:16px;}
    .bl-prose h2{font-size:22px;}
    .bl-prose h3{font-size:18px;}
}

/* ============ CATEGORIES (v3.7.3) — equal cards, icon start, 2-line title, pill start ============ */
.bl-cats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--bl-space-3);align-items:stretch;}
.bl-cats__item{margin:0;min-width:0;display:flex;}
.bl-cats__link{
    display:flex;flex-direction:column;align-items:flex-start;
    padding:20px;background:var(--bl-surface);
    border:1px solid var(--bl-border);border-radius:var(--bl-radius);
    color:var(--bl-text);text-decoration:none;transition:all var(--bl-transition);
    width:100%;box-sizing:border-box;
}
.bl-cats__link:hover{transform:translateY(-4px);border-color:var(--bl-connect);box-shadow:var(--bl-shadow);text-decoration:none;color:var(--bl-text);}
.bl-cats__icon-wrap{
    width:44px;height:44px;border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    background:var(--bl-connect-soft);color:var(--bl-connect-hover);
    flex-shrink:0;
}
.bl-cats__icon{color:inherit;}
/* Title — 15px/700/1.9, TWO-LINE height reserved so every card stays aligned */
.bl-cats__name{
    margin:14px 0 0;font-size:15px;font-weight:700;line-height:1.9;color:var(--bl-text);
    text-align:start;word-break:normal;overflow-wrap:break-word;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    min-height:57px; /* 2 lines × 15px × 1.9 */
}
/* Pill row — pushed to the card bottom, pill at the row START (right in RTL) */
.bl-cats__count-pill{
    display:inline-flex;align-items:center;margin-top:auto;
    padding:4px 12px;background:var(--bl-bg);color:var(--bl-text-secondary);
    border-radius:var(--bl-radius-pill);font-size:12px;font-weight:700;
    align-self:flex-start;
}
/* auto-fit handles desktop/tablet naturally; force 2 cols on small mobile */
@media (max-width:639px){
    .bl-cats{grid-template-columns:repeat(2,1fr);}
    .bl-cats__name{min-height:57px;}
}

/* ============ BLOCK PATTERN WRAPPERS (editor-inserted content) ============ */
.bl-pattern-hero{padding-block:var(--section-y) var(--section-y-bottom);text-align:center;background:var(--bl-gradient-soft);}
.bl-pattern-hero__subtitle{color:var(--bl-text-secondary);font-size:var(--bl-fs-md);max-width:60ch;margin-inline:auto;}
.bl-pattern-steps{padding-block:var(--section-y) var(--section-y-bottom);}
.bl-pattern-faq{padding-block:var(--section-y) var(--section-y-bottom);}
.bl-pattern-steps .bl-trouble__steps,.bl-pattern-faq .bl-faq__item{max-width:760px;margin-inline:auto;}

/* ============ HERO SEARCH — desktop polish ============ */
@media (min-width:1024px){
    .bl-hero__grid{grid-template-columns:minmax(0,1fr) 420px;}
}
