/* ============================================================
   Bizinoo — قالب نسخه ۳ (هدر، صفحه اصلی، فوتر، مجله)
   بعد از style.css بارگذاری می‌شود؛ همه کلاس‌ها با پیشوند bz- (سایت)
   و mz- (مجله) نام‌گذاری شده‌اند تا با قالب قبلی تداخل نداشته باشند.
   ============================================================ */

:root {
    --bz-ink: #0f1b3d;
    --bz-ink-soft: #3a4763;
    --bz-muted: #7b869c;
    --bz-line: #e7edf6;
    --bz-canvas: #f6f8fc;
    --bz-card: #ffffff;
    --bz-blue: #1463ff;
    --bz-blue-dark: #0a4ee0;
    --bz-blue-soft: #edf3ff;
    --bz-sky: #52b6ff;
    --bz-navy: #0b2170;
    --bz-navy-deep: #06164a;
    --bz-star: #f5b301;
    --bz-radius: 16px;
    --bz-radius-sm: 10px;
    --bz-shadow: 0 6px 24px rgba(15, 40, 110, .07);
    --bz-shadow-lg: 0 18px 44px rgba(15, 40, 110, .14);
}

[hidden] { display: none !important; }
body { background: #fff; color: var(--bz-ink); }
.main-fluid { min-height: 70vh; padding-bottom: 4rem; }
:focus-visible { outline: 2px solid var(--bz-blue); outline-offset: 2px; }

/* ---------- دکمه‌ها ---------- */
.bz-btn {
    display: inline-flex; align-items: center; justify-content: center; gap: .45rem;
    font-family: inherit; font-weight: 700; font-size: .9rem; line-height: 1;
    padding: .85rem 1.5rem; border-radius: var(--bz-radius-sm); border: 1.5px solid transparent;
    cursor: pointer; transition: background .15s ease, border-color .15s ease, color .15s ease; white-space: nowrap;
}
.bz-btn-primary { background: var(--bz-blue); color: #fff; box-shadow: 0 8px 18px rgba(20, 99, 255, .28); }
.bz-btn-primary:hover { background: var(--bz-blue-dark); color: #fff; }
.bz-btn-ghost { background: transparent; color: #fff; border-color: rgba(255,255,255,.55); }
.bz-btn-ghost:hover { background: rgba(255,255,255,.1); color: #fff; }

/* ============================================================
   هدر سایت
   ============================================================ */
.bz-header {
    background: #fff; position: sticky; top: 0; z-index: 500;
    border-bottom: 1px solid var(--bz-line);
}
.bz-header .container { max-width: 1320px; }
.bz-header-inner { display: flex; align-items: center; gap: 1.5rem; min-height: 76px; }
.bz-logo img { height: 34px; width: auto; display: block; }
.bz-nav { display: flex; align-items: stretch; gap: 1.4rem; align-self: stretch; white-space: nowrap; }
.bz-nav > a, .bz-nav .bz-dropdown-trigger {
    display: flex; align-items: center; color: var(--bz-ink-soft); font-size: .9rem; font-weight: 500;
    border-bottom: 2px solid transparent; padding: 0 .1rem;
}
.bz-nav > a:hover, .bz-nav .bz-dropdown-trigger:hover { color: var(--bz-blue); }
.bz-nav > a.active { color: var(--bz-blue); border-bottom-color: var(--bz-blue); font-weight: 700; }
.bz-header-actions { display: flex; align-items: center; gap: 1rem; margin-inline-start: auto; }
.bz-header-search {
    display: flex; align-items: center; background: var(--bz-canvas); border: 1px solid var(--bz-line);
    border-radius: var(--bz-radius-sm); width: 230px; padding-inline-start: .9rem;
}
.bz-header-search input {
    flex: 1; min-width: 0; border: 0; background: transparent; font-family: inherit; font-size: .82rem;
    padding: .7rem 0; color: var(--bz-ink); outline: none;
}
.bz-header-search button { border: 0; background: none; color: var(--bz-muted); padding: .6rem .8rem; cursor: pointer; }
.bz-login-link {
    display: inline-flex; align-items: center; gap: .4rem; color: var(--bz-blue); font-weight: 600; font-size: .9rem;
    background: none; border: 0; font-family: inherit; cursor: pointer; padding: 0;
}
.bz-nav-toggle { display: none; }

/* منوی کشویی مشترک */
.bz-dropdown { position: relative; display: flex; }
.bz-dropdown-trigger {
    background: none; border: 0; font-family: inherit; cursor: pointer; gap: .35rem;
}
.bz-dropdown-trigger .fa-chevron-down { font-size: .62rem; transition: transform .15s ease; }
.bz-dropdown.is-open .fa-chevron-down { transform: rotate(180deg); }
.bz-dropdown-panel {
    position: absolute; top: calc(100% + 4px); inset-inline-start: 0; z-index: 50;
    min-width: 210px; background: #fff; border: 1px solid var(--bz-line); border-radius: 14px;
    box-shadow: var(--bz-shadow-lg); padding: .45rem; display: none;
}
.bz-dropdown.is-open .bz-dropdown-panel { display: grid; }
.bz-dropdown-wide .bz-dropdown-panel { grid-template-columns: repeat(3, minmax(150px, 1fr)); width: 520px; max-height: 60vh; overflow-y: auto; }
.bz-dropdown-panel a {
    display: block; padding: .55rem .8rem; border-radius: 8px; color: var(--bz-ink-soft); font-size: .86rem;
    white-space: normal; line-height: 1.7;
}
.bz-dropdown-panel a:hover { background: var(--bz-blue-soft); color: var(--bz-blue); }
.bz-nav .bz-dropdown-panel { top: 100%; }
.bz-user-menu .bz-dropdown-panel { inset-inline-start: auto; inset-inline-end: 0; }

@media (max-width: 1260px) {
    .bz-header-search { display: none; }
}
@media (max-width: 960px) {
    .bz-header-inner { gap: .8rem; min-height: 64px; flex-wrap: wrap; }
    .bz-nav-toggle {
        display: inline-flex; order: 3; width: 42px; height: 42px; align-items: center; justify-content: center;
        border: 1px solid var(--bz-line); background: #fff; border-radius: var(--bz-radius-sm); font-size: 1.05rem; color: var(--bz-ink); cursor: pointer;
    }
    .bz-header-actions { order: 2; gap: .7rem; }
    .bz-header-actions .bz-btn { padding: .7rem 1rem; font-size: .82rem; }
    .bz-nav {
        order: 4; flex-basis: 100%; flex-direction: column; gap: 0; display: none;
        border-top: 1px solid var(--bz-line); padding: .4rem 0 .8rem;
    }
    .bz-nav.open { display: flex; }
    .bz-nav > a, .bz-nav .bz-dropdown-trigger { padding: .75rem .2rem; border-bottom: 0; width: 100%; }
    .bz-nav > a.active { border-bottom: 0; }
    .bz-dropdown { flex-direction: column; }
    .bz-nav .bz-dropdown-panel, .bz-dropdown-wide .bz-dropdown-panel {
        position: static; box-shadow: none; width: auto; grid-template-columns: repeat(2, 1fr); border: 0; background: var(--bz-canvas);
    }
}
@media (max-width: 520px) {
    .bz-logo img { height: 28px; }
    .bz-login-link { display: none; }
}

/* ============================================================
   صفحه اصلی — هیرو
   ============================================================ */
.bz-hero {
    position: relative; overflow: hidden; color: #fff;
    background:
        radial-gradient(900px 480px at 70% 30%, rgba(40, 110, 255, .45), transparent 65%),
        radial-gradient(700px 400px at 10% 110%, rgba(20, 90, 255, .35), transparent 60%),
        linear-gradient(160deg, #0a2a86 0%, var(--bz-navy) 45%, var(--bz-navy-deep) 100%);
    padding: 4.2rem 0 7.5rem;
}
.bz-hero::before {
    /* شبکه نقطه‌ای کم‌رنگ برای عمق پس‌زمینه */
    content: ''; position: absolute; inset: 0; opacity: .18; pointer-events: none;
    background-image: radial-gradient(rgba(255,255,255,.35) 1px, transparent 1px);
    background-size: 26px 26px;
    mask-image: linear-gradient(90deg, transparent, #000 40%, #000 60%, transparent);
}
.bz-hero-grid { position: relative; display: grid; grid-template-columns: 1.1fr .9fr; gap: 3rem; align-items: center; }
.bz-hero-text h1 { font-size: clamp(1.8rem, 3.3vw, 2.6rem); line-height: 1.6; margin: 0 0 1rem; font-weight: 800; color: #fff; }
.bz-hero-brand { color: var(--bz-sky); }
.bz-hero-lead { color: rgba(255,255,255,.78); font-size: .95rem; margin: 0 0 1.8rem; max-width: 34em; }

/* جعبه جستجو */
.bz-search {
    display: flex; align-items: stretch; background: #fff; border-radius: 14px; padding: .45rem;
    box-shadow: 0 18px 40px rgba(2, 12, 50, .35); max-width: 640px;
}
.bz-search-field { position: relative; display: flex; align-items: center; min-width: 0; }
.bz-search-field + .bz-search-field { border-inline-start: 1px solid var(--bz-line); }
.bz-search-field.fancy-select { flex: 0 0 158px; }
.bz-search-query { flex: 1; }
.bz-search-query input {
    width: 100%; border: 0; outline: none; background: transparent; font-family: inherit; font-size: .88rem;
    color: var(--bz-ink); padding: .7rem .9rem;
}
.bz-search-query input::placeholder { color: var(--bz-muted); }
.bz-search-submit { padding-inline: 1.7rem; border-radius: 10px; }
.bz-search .fancy-select-trigger {
    width: 100%; height: 100%; border: 0; background: transparent; box-shadow: none;
    display: flex; align-items: center; justify-content: space-between; gap: .4rem;
    padding: .7rem .9rem; font-family: inherit; font-size: .85rem; color: var(--bz-muted); cursor: pointer; border-radius: 10px;
}
.bz-search .fancy-select.has-value .fancy-select-trigger { color: var(--bz-ink); font-weight: 600; }
.bz-search .fancy-select-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bz-search .fancy-select-chevron { font-size: .65rem; color: var(--bz-muted); }
.bz-search-city .fancy-select-trigger { padding-inline-end: 2.4rem; }
.bz-search-city .fancy-select-chevron { display: none; }
.bz-locate-btn {
    position: absolute; inset-inline-end: .35rem; top: 50%; transform: translateY(-50%);
    width: 30px; height: 30px; border-radius: 8px; border: 0; background: var(--bz-blue-soft); color: var(--bz-blue); cursor: pointer; z-index: 2;
}
.bz-search .fancy-select-panel {
    position: absolute; top: calc(100% + .7rem); inset-inline-start: -.45rem; width: 260px; z-index: 60;
    background: #fff; border-radius: 14px; box-shadow: var(--bz-shadow-lg); border: 1px solid var(--bz-line);
    padding: .45rem; opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity .15s ease, transform .15s ease;
}
.bz-search .fancy-select.is-open .fancy-select-panel { opacity: 1; visibility: visible; transform: none; }
.bz-search .fancy-select-list { list-style: none; margin: 0; padding: 0; max-height: 280px; overflow-y: auto; }
.bz-search .fancy-select-option { padding: .55rem .75rem; border-radius: 8px; font-size: .85rem; color: var(--bz-ink-soft); cursor: pointer; }
.bz-search .fancy-select-option:hover, .bz-search .fancy-select-option:focus { background: var(--bz-blue-soft); color: var(--bz-blue); outline: none; }
.bz-search .fancy-select-option.is-selected { background: var(--bz-blue-soft); color: var(--bz-blue); font-weight: 700; }
.fancy-select-filter {
    width: 100%; border: 1px solid var(--bz-line); border-radius: 8px; padding: .5rem .7rem; margin-bottom: .4rem;
    font-family: inherit; font-size: .82rem; outline: none;
}
.bz-detect-status { min-height: 1.4em; margin: .6rem 0 0; font-size: .82rem; color: rgba(255,255,255,.8); }

.bz-hero-tags { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: .6rem; }
.bz-hero-tags span { font-weight: 700; font-size: .88rem; margin-inline-end: .3rem; }
.bz-hero-tags a {
    color: rgba(255,255,255,.88); font-size: .78rem; padding: .35rem .95rem; border-radius: 999px;
    background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.14);
}
.bz-hero-tags a:hover { background: rgba(255,255,255,.2); color: #fff; }

/* موکاپ گوشی و کارت‌های شناور */
.bz-hero-visual { position: relative; height: 420px; }
.bz-phone {
    position: absolute; right: 50%; transform: translateX(50%); top: 0;
    width: 220px; height: 440px; border-radius: 38px; background: #0d1638; padding: 9px;
    box-shadow: 0 30px 60px rgba(0, 6, 30, .5), inset 0 0 0 2px rgba(255,255,255,.08);
}
.bz-phone-notch { position: absolute; top: 14px; left: 50%; transform: translateX(-50%); width: 70px; height: 18px; background: #0d1638; border-radius: 0 0 12px 12px; z-index: 2; }
.bz-phone-screen { position: relative; width: 100%; height: 100%; border-radius: 30px; overflow: hidden; }
.bz-phone-map { width: 100%; height: 100%; display: block; }
.bz-pin {
    position: absolute; width: 22px; height: 22px; border-radius: 50% 50% 50% 0; transform: rotate(-45deg);
    background: var(--c); box-shadow: 0 0 0 7px color-mix(in srgb, var(--c) 18%, transparent);
}
.bz-pin::after { content: ''; position: absolute; inset: 6px; border-radius: 50%; background: #fff; }

.bz-float-card {
    position: absolute; z-index: 3; display: flex; align-items: flex-start; gap: .8rem;
    width: 205px; background: #fff; color: var(--bz-ink); border-radius: 14px; padding: .8rem;
    box-shadow: 0 16px 36px rgba(0, 10, 50, .28);
}
.bz-float-card:hover { color: var(--bz-ink); }
.bz-float-card.is-top { top: 22px; left: 0; }
.bz-float-card.is-mid { top: 200px; left: 40px; }
.bz-float-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: .1rem; }
.bz-float-body strong { font-size: .84rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bz-float-body span { font-size: .72rem; color: var(--bz-muted); }
.bz-float-body .bz-rating { margin-top: .35rem; }
.bz-float-thumb { width: 44px; height: 44px; border-radius: 10px; overflow: hidden; flex-shrink: 0; background: var(--bz-blue-soft); }
.bz-float-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bz-float-icon { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: var(--bz-blue); font-size: 1.1rem; }
.bz-graph-card {
    position: absolute; z-index: 3; bottom: -8px; right: calc(50% - 150px); width: 150px;
    background: #fff; border-radius: 14px; padding: .75rem .85rem .5rem; box-shadow: 0 16px 36px rgba(0, 10, 50, .28);
}
.bz-graph-card span { display: block; font-size: .7rem; color: var(--bz-muted); }
.bz-graph-card strong { display: block; color: var(--bz-blue); font-size: 1rem; margin: .1rem 0 .25rem; }
.bz-graph-card svg { width: 100%; height: 42px; display: block; }

.bz-rating { display: inline-flex; align-items: center; gap: .25rem; font-size: .76rem; font-weight: 700; color: var(--bz-ink); }
.bz-rating i { color: var(--bz-star); font-size: .72rem; }

@media (max-width: 960px) {
    .bz-hero { padding: 2.6rem 0 6.5rem; }
    .bz-hero-grid { grid-template-columns: 1fr; }
    .bz-hero-visual { display: none; }
}
@media (max-width: 640px) {
    .bz-search { flex-direction: column; padding: .5rem; }
    .bz-search-field.fancy-select { flex: none; }
    .bz-search-field + .bz-search-field { border-inline-start: 0; border-top: 1px solid var(--bz-line); }
    .bz-search-field { min-height: 48px; }
    .bz-search-submit { margin-top: .4rem; padding: .9rem; }
    .bz-search .fancy-select-panel { width: 100%; inset-inline-start: 0; }
}

/* ============================================================
   صفحه اصلی — بخش‌ها
   ============================================================ */
.bz-home { position: relative; }
.bz-features {
    position: relative; z-index: 5; margin-top: -4.2rem;
    display: grid; grid-template-columns: repeat(4, 1fr);
    background: #fff; border-radius: 20px; box-shadow: var(--bz-shadow-lg); border: 1px solid var(--bz-line);
    padding: 1.6rem .5rem;
}
.bz-feature { text-align: center; padding: .2rem 1.3rem; }
.bz-feature + .bz-feature { border-inline-start: 1px solid var(--bz-line); }
.bz-feature i { font-size: 1.45rem; color: var(--bz-blue); display: block; margin-bottom: .55rem; }
.bz-feature strong { display: block; font-size: .92rem; margin-bottom: .25rem; }
.bz-feature p { margin: 0; color: var(--bz-muted); font-size: .78rem; line-height: 1.8; }
@media (max-width: 860px) {
    .bz-features { grid-template-columns: repeat(2, 1fr); row-gap: 1.3rem; }
    .bz-feature:nth-child(3) { border-inline-start: 0; }
}

.bz-ad-slot { margin-top: 2rem; }
.bz-section { margin-top: 4rem; }
.bz-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.6rem; }
.bz-section-head h2 { font-size: 1.3rem; margin: 0; }
.bz-section-head p { margin: .4rem 0 0; color: var(--bz-muted); font-size: .85rem; }
.bz-section-head > a { font-size: .82rem; font-weight: 600; color: var(--bz-blue); white-space: nowrap; }
.bz-section-head.is-center { flex-direction: column; align-items: center; text-align: center; }

/* دسته‌بندی‌ها */
.bz-cat-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 1rem; }
.bz-cat-card {
    display: flex; flex-direction: column; align-items: center; text-align: center;
    background: #fff; border: 1px solid var(--bz-line); border-radius: var(--bz-radius); padding: 1.5rem .8rem 1.2rem;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.bz-cat-card:hover { border-color: #cfdcf5; box-shadow: var(--bz-shadow); }
.bz-cat-icon { font-size: 1.9rem; color: var(--bz-blue); line-height: 1; height: 2.2rem; display: flex; align-items: center; margin-bottom: .9rem; }
.bz-cat-name { font-weight: 700; font-size: .9rem; color: var(--bz-ink); }
.bz-cat-count { font-size: .74rem; color: var(--bz-muted); margin-top: .3rem; }
.bz-cat-btn {
    margin-top: 1rem; font-size: .76rem; font-weight: 700; color: var(--bz-blue);
    background: var(--bz-blue-soft); padding: .4rem 1.2rem; border-radius: 8px;
}
.bz-cat-btn:hover { background: var(--bz-blue); color: #fff; }
.bz-cat-card.is-all { background: var(--bz-blue-soft); border-color: #d6e4ff; justify-content: center; }
.bz-cat-card.is-all .bz-cat-name { color: var(--bz-blue); }
@media (max-width: 960px) { .bz-cat-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 520px) { .bz-cat-grid { grid-template-columns: repeat(2, 1fr); } }

/* کسب‌وکارهای برتر + نقشه */
.bz-duo { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 1.4rem; margin-top: 3.2rem; }
.bz-panel { background: #fff; border: 1px solid var(--bz-line); border-radius: 18px; box-shadow: var(--bz-shadow); padding: 1.3rem 1.3rem 1.1rem; min-width: 0; }
.bz-panel-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: .6rem; }
.bz-panel-head h2 { font-size: 1.02rem; margin: 0; }
.bz-panel-head a { font-size: .78rem; font-weight: 600; }
.bz-top-list { list-style: none; margin: 0; padding: 0; }
.bz-top-list li + li { border-top: 1px solid var(--bz-line); }
.bz-top-list a { display: flex; align-items: center; gap: .9rem; padding: .85rem 0; color: var(--bz-ink); }
.bz-top-list a:hover strong { color: var(--bz-blue); }
.bz-top-thumb {
    width: 64px; height: 56px; border-radius: 10px; overflow: hidden; flex-shrink: 0;
    background: var(--bz-blue-soft); color: var(--bz-blue); display: flex; align-items: center; justify-content: center; font-size: 1.3rem;
}
.bz-top-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bz-top-info { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.bz-top-info strong { font-size: .9rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .15s ease; }
.bz-top-info span { font-size: .76rem; color: var(--bz-muted); margin-top: .2rem; }
.bz-top-ad { margin-top: .8rem; }
.bz-empty { color: var(--bz-muted); font-size: .88rem; }
.bz-map-panel { display: flex; flex-direction: column; }
.bz-map-note { margin: 0 0 .8rem; font-size: .78rem; color: var(--bz-muted); }
.bz-map { flex: 1; min-height: 330px; border-radius: 12px; overflow: hidden; z-index: 1; background: #eef2f7; }
.bz-num-marker span {
    display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%;
    background: var(--bz-blue); color: #fff; font-weight: 700; font-size: .8rem; font-family: 'Vazirmatn', Tahoma, sans-serif;
    border: 3px solid #fff; box-shadow: 0 0 0 7px rgba(20, 99, 255, .18), 0 4px 10px rgba(0,0,0,.18);
}
@media (max-width: 860px) {
    .bz-duo { grid-template-columns: 1fr; }
    .bz-map-panel { order: -1; }
}

/* بنر ثبت کسب‌وکار */
.bz-cta {
    position: relative; overflow: hidden; margin-top: 4rem; border-radius: 22px; color: #fff;
    display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 2rem; padding: 2.6rem 3rem;
    background:
        radial-gradient(500px 260px at 20% 60%, rgba(40, 120, 255, .45), transparent 70%),
        linear-gradient(120deg, var(--bz-navy-deep), #0c2a8a);
}
.bz-cta-text h2 { color: #fff; font-size: clamp(1.25rem, 2.3vw, 1.6rem); margin: 0 0 .5rem; }
.bz-cta-text h2 span { color: var(--bz-sky); }
.bz-cta-text p { margin: 0 0 1.5rem; color: rgba(255,255,255,.78); font-size: .9rem; }
.bz-cta-actions { display: flex; flex-wrap: wrap; gap: .8rem; }
.bz-cta-art { position: relative; height: 180px; }
.bz-cta-store {
    position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
    font-size: 6.2rem; color: #3f8cff; filter: drop-shadow(0 16px 30px rgba(20, 99, 255, .6));
}
.bz-cta-pin { position: absolute; left: calc(50% + 40px); top: calc(50% + 10px); font-size: 2.6rem; color: #ff9e1b; filter: drop-shadow(0 8px 14px rgba(255, 140, 0, .45)); }
.bz-cta-tile {
    position: absolute; width: 44px; height: 44px; border-radius: 12px; display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(6px); color: #9cc9ff; font-size: 1.05rem;
}
.bz-cta-tile.t1 { top: 4px; left: 12%; }
.bz-cta-tile.t2 { bottom: 10px; left: 4%; }
.bz-cta-tile.t3 { top: 30px; right: 10%; }
@media (max-width: 760px) {
    .bz-cta { grid-template-columns: 1fr; padding: 2rem 1.5rem; }
    .bz-cta-art { display: none; }
}

/* آمار */
.bz-stats {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-top: 2rem;
    background: var(--bz-canvas); border-radius: 18px; padding: 1.5rem 1.8rem;
}
.bz-stat { display: flex; align-items: center; gap: .9rem; justify-content: center; }
.bz-stat-icon {
    width: 50px; height: 50px; border-radius: 50%; flex-shrink: 0; background: #fff; border: 1px solid var(--bz-line);
    display: flex; align-items: center; justify-content: center; color: var(--bz-blue); font-size: 1.15rem;
}
.bz-stat small { display: block; font-size: .76rem; color: var(--bz-muted); }
.bz-stat strong { display: block; font-size: 1.4rem; font-weight: 800; color: var(--bz-ink); line-height: 1.5; }
@media (max-width: 760px) {
    .bz-stats { grid-template-columns: repeat(2, 1fr); row-gap: 1.3rem; padding: 1.3rem; }
    .bz-stat { justify-content: flex-start; }
}

/* مقالات */
.bz-post-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.2rem; }
.bz-post {
    background: #fff; border: 1px solid var(--bz-line); border-radius: var(--bz-radius); overflow: hidden;
    display: flex; flex-direction: column; box-shadow: var(--bz-shadow);
}
.bz-post-media { position: relative; display: block; aspect-ratio: 16 / 10; background: var(--bz-blue-soft); overflow: hidden; }
.bz-post-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease; }
.bz-post:hover .bz-post-media img { transform: scale(1.04); }
.bz-media-fallback {
    width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #8fb2ff;
    background: linear-gradient(135deg, #e9f0ff, #d9e6ff);
}
.bz-media-fallback svg { width: 46px; height: 46px; }
.bz-chip {
    position: absolute; bottom: .6rem; font-size: .68rem; font-weight: 600; padding: .22rem .65rem; border-radius: 6px; line-height: 1.6;
}
.bz-chip-cat { right: .6rem; background: var(--bz-blue); color: #fff; }
.bz-chip-date { left: .6rem; background: rgba(255,255,255,.92); color: var(--bz-ink-soft); }
.bz-post h3 { font-size: .9rem; line-height: 1.8; margin: .9rem 1rem .4rem; flex: 1; }
.bz-post h3 a { color: var(--bz-ink); }
.bz-post h3 a:hover { color: var(--bz-blue); }
.bz-read-more { font-size: .78rem; font-weight: 600; margin: 0 1rem 1rem; display: inline-flex; align-items: center; gap: .35rem; align-self: flex-start; }
.bz-read-more i { font-size: .6rem; }
@media (max-width: 960px) { .bz-post-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .bz-post-grid { grid-template-columns: 1fr; } }

.bz-keywords { margin-top: 3rem; }
.bz-keywords .keyword-cloud { background: var(--bz-canvas); box-shadow: none; border: 0; }
.bz-keywords-link { display: inline-block; margin-top: .7rem; font-size: .8rem; font-weight: 600; }

/* ============================================================
   فوتر سایت (سرمه‌ای)
   ============================================================ */
.bz-footer { background: var(--bz-navy-deep); color: rgba(255,255,255,.72); margin-top: 0; padding-top: 3.2rem; }
.bz-footer-grid { display: grid; grid-template-columns: repeat(4, 1fr) 1.5fr; gap: 2rem; }
.bz-footer h4 { color: #fff; font-size: .95rem; margin: 0 0 1.1rem; }
.bz-footer-col > a { display: block; color: rgba(255,255,255,.66); font-size: .85rem; padding: .3rem 0; }
.bz-footer-col > a:hover { color: #fff; }
.bz-footer-logo { height: 38px; width: auto; display: block; margin-bottom: .9rem; }
.bz-footer-brand p { margin: 0 0 .8rem; font-size: .85rem; }
.bz-footer-contact { list-style: none; margin: 0 0 1rem; padding: 0; font-size: .8rem; }
.bz-footer-contact li { padding: .2rem 0; }
.bz-footer-contact i { width: 1.2em; color: var(--bz-sky); }
.bz-footer-contact a { color: rgba(255,255,255,.8); }
.bz-social { display: flex; flex-wrap: wrap; gap: .5rem; }
.bz-social a {
    width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,.08); color: #fff; font-size: .9rem; transition: background .15s ease;
}
.bz-social a:hover { background: var(--bz-blue); color: #fff; }
.bz-footer-bottom {
    margin-top: 2.6rem; padding: 1.2rem 0 1.4rem; border-top: 1px solid rgba(255,255,255,.1);
    text-align: center; font-size: .78rem; color: rgba(255,255,255,.55);
}
.bz-footer .footer-trust-seals { margin-top: 1.6rem; }
@media (max-width: 860px) {
    .bz-footer-grid { grid-template-columns: 1fr 1fr; }
    .bz-footer-brand { grid-column: 1 / -1; order: -1; }
}
@media (max-width: 760px) { .bz-footer { padding-bottom: 4.5rem; } }

.scroll-top-btn { background: var(--bz-blue) !important; }

/* ============================================================
   مجله — هدر
   ============================================================ */
body.is-magazine { background: #fff; }
.mz-header { background: #fff; position: relative; z-index: 400; }
.mz-header-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 1.1rem; padding-bottom: 1.1rem; }
.mz-logo img { height: 44px; width: auto; display: block; }
.mz-header-tools { display: flex; align-items: center; gap: .6rem; }
.mz-header-search { display: flex; align-items: center; gap: .5rem; }
.mz-header-search input {
    width: 230px; border: 1px solid var(--bz-line); background: var(--bz-canvas); border-radius: var(--bz-radius-sm);
    padding: .65rem .9rem; font-family: inherit; font-size: .84rem; color: var(--bz-ink); outline: none;
}
.mz-header-search input:focus { border-color: var(--bz-blue); background: #fff; }
.mz-header-search button {
    width: 40px; height: 40px; border: 0; border-radius: var(--bz-radius-sm); background: var(--bz-blue); color: #fff; cursor: pointer;
}
.mz-icon-btn {
    width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--bz-line); background: #fff;
    display: inline-flex; align-items: center; justify-content: center; color: var(--bz-ink-soft); cursor: pointer; font-size: .95rem;
}
.mz-icon-btn:hover { color: var(--bz-blue); border-color: #cfdcf5; }
.mz-header-nav-wrap { border-top: 1px solid var(--bz-line); border-bottom: 1px solid var(--bz-line); }
.mz-header-nav { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 60px; }
.mz-nav { display: flex; align-items: stretch; gap: 2rem; align-self: stretch; white-space: nowrap; }
.mz-nav > a, .mz-nav .bz-dropdown-trigger {
    display: flex; align-items: center; font-size: .9rem; color: var(--bz-ink-soft); border-bottom: 2px solid transparent; font-weight: 500;
}
.mz-nav > a:hover, .mz-nav .bz-dropdown-trigger:hover { color: var(--bz-blue); }
.mz-nav > a.active { color: var(--bz-blue); border-bottom-color: var(--bz-blue); font-weight: 700; }
.mz-nav .bz-dropdown-panel { top: 100%; }
.mz-join-btn { padding: .7rem 1.7rem; }
@media (max-width: 860px) {
    .mz-header-search input { width: 150px; }
    .mz-header-nav { min-height: 52px; }
    .mz-nav { gap: 1.2rem; overflow-x: auto; scrollbar-width: none; }
    .mz-nav .bz-dropdown { position: static; }
    .mz-join-btn { display: none; }
}
@media (max-width: 560px) {
    .mz-logo img { height: 32px; }
    .mz-header-search input { display: none; }
    .mz-header-search input:focus-within { display: block; }
}

/* ============================================================
   مجله — اسلایدر
   ============================================================ */
body.is-magazine main.container { padding-top: 1.6rem; }
.mz-page { padding-top: 0; }
.mz-hero {
    position: relative; overflow: hidden; border-radius: 22px; color: #fff; min-height: 300px;
    background:
        radial-gradient(520px 300px at 25% 50%, rgba(40, 120, 255, .45), transparent 70%),
        linear-gradient(120deg, #06164a, #0b2378 55%, #06164a);
}
.mz-hero::before {
    content: ''; position: absolute; inset: 0; pointer-events: none; opacity: .5;
    background-image: radial-gradient(rgba(120, 170, 255, .35) 1px, transparent 1px); background-size: 22px 22px;
    mask-image: radial-gradient(ellipse at 30% 50%, #000 10%, transparent 60%);
}
.mz-slide { display: none; position: relative; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 2rem; min-height: 300px; padding: 2.4rem 4.5rem; }
.mz-slide.active { display: grid; animation: mzFade .45s ease; }
@keyframes mzFade { from { opacity: 0; } to { opacity: 1; } }
.mz-slide-text h2 { font-size: clamp(1.3rem, 2.4vw, 1.75rem); line-height: 1.7; margin: .9rem 0 .6rem; }
.mz-slide-text h2 a { color: #fff; }
.mz-slide-text p { margin: 0 0 1.4rem; color: rgba(255,255,255,.78); font-size: .9rem; line-height: 2; max-width: 36em; }
.mz-slide-visual { height: 220px; display: flex; align-items: center; justify-content: center; }
.mz-slide-visual img { max-width: 100%; max-height: 100%; object-fit: cover; border-radius: 16px; box-shadow: 0 20px 40px rgba(0,0,0,.35); }
.mz-slide-illustration { position: relative; width: 240px; height: 200px; }
.mz-slide-illustration .main {
    position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
    width: 150px; height: 120px; border-radius: 26px; display: flex; align-items: center; justify-content: center;
    background: linear-gradient(145deg, #2f8bff, #1245d8); box-shadow: 0 24px 50px rgba(20, 99, 255, .55);
    color: #fff;
}
.mz-slide-illustration .main svg { width: 64px; height: 64px; }
.mz-slide-illustration .bubble {
    position: absolute; width: 50px; height: 50px; border-radius: 50%; background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.2); display: flex; align-items: center; justify-content: center; color: #cfe2ff;
}
.mz-slide-illustration .b1 { top: 0; left: 12px; }
.mz-slide-illustration .b2 { top: 10px; right: 0; }
.mz-slide-illustration .b3 { bottom: 0; right: 30px; }
.mz-hero-arrow {
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 44px; height: 44px; border-radius: 50%;
    border: 1px solid rgba(255,255,255,.25); background: rgba(255,255,255,.1); color: #fff; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
}
.mz-hero-arrow:hover { background: rgba(255,255,255,.22); }
.mz-hero-arrow.prev { right: 1.1rem; }
.mz-hero-arrow.next { left: 1.1rem; }
.mz-hero-dots { position: absolute; bottom: 1.1rem; left: 50%; transform: translateX(-50%); display: flex; gap: .45rem; z-index: 3; }
.mz-hero-dots button { width: 10px; height: 10px; border-radius: 50%; border: 0; padding: 0; background: rgba(255,255,255,.4); cursor: pointer; }
.mz-hero-dots button.active { background: var(--bz-blue); box-shadow: 0 0 0 3px rgba(20, 99, 255, .35); }
@media (max-width: 760px) {
    .mz-slide { grid-template-columns: 1fr; padding: 1.8rem 1.4rem 2.8rem; }
    .mz-slide-visual { display: none; }
    .mz-hero-arrow { display: none; }
}

.mz-badge {
    display: inline-block; font-size: .72rem; font-weight: 700; padding: .25rem .8rem; border-radius: 999px;
    background: var(--bz-blue); color: #fff; line-height: 1.7;
}
.mz-badge.is-soft { background: var(--bz-blue-soft); color: var(--bz-blue); }

/* ردیف دسته‌بندی‌ها */
.mz-cat-row { display: grid; grid-template-columns: repeat(6, 1fr); gap: 1rem; margin: 1.4rem 0 2.6rem; }
.mz-cat-card {
    display: flex; align-items: center; justify-content: center; gap: .8rem; flex-direction: row-reverse;
    background: #fff; border: 1px solid var(--bz-line); border-radius: 14px; padding: 1rem .8rem;
    color: var(--bz-ink); font-weight: 600; font-size: .86rem; box-shadow: var(--bz-shadow);
    transition: border-color .15s ease, color .15s ease;
}
.mz-cat-card svg { width: 30px; height: 30px; color: var(--bz-blue); flex-shrink: 0; }
.mz-cat-card:hover, .mz-cat-card.active { border-color: var(--bz-blue); color: var(--bz-blue); }
@media (max-width: 960px) { .mz-cat-row { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 520px) {
    .mz-cat-row { display: flex; overflow-x: auto; scrollbar-width: none; }
    .mz-cat-card { flex: 0 0 auto; }
}

/* چیدمان اصلی: سایدبار سمت راست */
.mz-layout { display: grid; grid-template-columns: 290px minmax(0, 1fr); grid-template-areas: "side main"; gap: 1.8rem; align-items: start; }
.mz-main { grid-area: main; min-width: 0; }
.mz-side { grid-area: side; display: flex; flex-direction: column; gap: 1.2rem; }
@media (max-width: 960px) {
    .mz-layout { grid-template-columns: 1fr; grid-template-areas: "main" "side"; }
}

.mz-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.1rem; }
.mz-head h2 { font-size: 1.2rem; margin: 0; }
.mz-head h1 { font-size: 1.35rem; margin: 0; }
.mz-head a { font-size: .82rem; font-weight: 600; }
.mz-head p { margin: .3rem 0 0; color: var(--bz-muted); font-size: .85rem; }

/* کارت مقاله */
.mz-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem; }
.mz-card {
    display: flex; flex-direction: column; background: #fff; border: 1px solid var(--bz-line); border-radius: var(--bz-radius);
    overflow: hidden; box-shadow: var(--bz-shadow);
}
.mz-card-media { position: relative; display: block; aspect-ratio: 16 / 11; overflow: hidden; background: var(--bz-blue-soft); }
.mz-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease; }
.mz-card:hover .mz-card-media img { transform: scale(1.04); }
.mz-card-media .mz-badge { position: absolute; bottom: .7rem; right: .7rem; }
.mz-fallback {
    width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #fff;
    background: linear-gradient(140deg, var(--fb, #1463ff), #06164a);
}
.mz-fallback svg { width: 52px; height: 52px; opacity: .85; }
.mz-card-body { padding: 1rem 1.1rem .9rem; display: flex; flex-direction: column; flex: 1; }
.mz-card h3 { font-size: .95rem; line-height: 1.8; margin: 0 0 .45rem; }
.mz-card h3 a { color: var(--bz-ink); }
.mz-card h3 a:hover { color: var(--bz-blue); }
.mz-card p { margin: 0 0 .9rem; color: var(--bz-muted); font-size: .8rem; line-height: 1.95; flex: 1;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.mz-meta { display: flex; align-items: center; gap: 1rem; font-size: .74rem; color: var(--bz-muted); flex-wrap: wrap; }
.mz-meta i { margin-inline-end: .25rem; }
.mz-meta .mz-save { margin-inline-start: auto; color: var(--bz-muted); }
.mz-meta .mz-save:hover { color: var(--bz-blue); }
@media (max-width: 1100px) { .mz-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .mz-grid { grid-template-columns: 1fr; } }

/* پیشنهاد سردبیر */
.mz-picks { margin-top: 2.6rem; }
.mz-picks-box { background: #fff; border: 1px solid var(--bz-line); border-radius: 18px; box-shadow: var(--bz-shadow); padding: 1.2rem; }
.mz-pick-main { display: grid; grid-template-columns: 1fr 1.1fr; gap: 1.6rem; align-items: center; }
.mz-pick-main .mz-card-media { aspect-ratio: 16 / 10; border-radius: 14px; }
.mz-pick-main h3 { font-size: 1.15rem; margin: .6rem 0 .5rem; line-height: 1.8; }
.mz-pick-main h3 a { color: var(--bz-ink); }
.mz-pick-main p { margin: 0 0 1rem; color: var(--bz-muted); font-size: .85rem; line-height: 2; }
.mz-pick-main .bz-btn { padding: .65rem 1.3rem; font-size: .82rem; margin-bottom: 1rem; }
.mz-pick-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.2rem; margin-top: 1.2rem; padding-top: 1.2rem; border-top: 1px solid var(--bz-line); }
.mz-pick-small { display: flex; gap: .9rem; align-items: center; }
.mz-pick-small .mz-card-media { width: 96px; flex-shrink: 0; aspect-ratio: 1; border-radius: 12px; }
.mz-pick-small .mz-fallback svg { width: 30px; height: 30px; }
.mz-pick-small h3 { font-size: .86rem; line-height: 1.8; margin: .35rem 0 .3rem; }
.mz-pick-small h3 a { color: var(--bz-ink); }
@media (max-width: 760px) {
    .mz-pick-main, .mz-pick-list { grid-template-columns: 1fr; }
}

/* صفحه‌بندی */
.mz-pager { display: flex; justify-content: center; flex-wrap: wrap; gap: .4rem; margin-top: 2rem; }
.mz-pager a, .mz-pager span {
    min-width: 40px; height: 40px; padding: 0 .7rem; border-radius: var(--bz-radius-sm); display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid var(--bz-line); background: #fff; font-size: .85rem; color: var(--bz-ink-soft);
}
.mz-pager a:hover { border-color: var(--bz-blue); color: var(--bz-blue); }
.mz-pager .is-current { background: var(--bz-blue); border-color: var(--bz-blue); color: #fff; font-weight: 700; }
.mz-empty { background: var(--bz-canvas); border-radius: var(--bz-radius); padding: 2rem; text-align: center; color: var(--bz-muted); }
.mz-empty a { font-weight: 600; }

/* سایدبار */
.mz-widget { background: #fff; border: 1px solid var(--bz-line); border-radius: 18px; box-shadow: var(--bz-shadow); padding: 1.3rem; }
.mz-widget h3 { font-size: 1rem; margin: 0 0 1.1rem; display: flex; align-items: center; gap: .45rem; }
.mz-widget h3 i { color: #ff6a2b; }
.mz-popular { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 1.1rem; }
.mz-popular a { display: flex; align-items: center; gap: .9rem; color: var(--bz-ink); }
.mz-popular a:hover strong { color: var(--bz-blue); }
.mz-pop-thumb { position: relative; width: 70px; height: 62px; flex-shrink: 0; }
.mz-pop-thumb .mz-card-media { width: 100%; height: 100%; aspect-ratio: auto; border-radius: 10px; }
.mz-pop-thumb .mz-fallback svg { width: 26px; height: 26px; }
.mz-pop-rank {
    position: absolute; top: 50%; right: -11px; transform: translateY(-50%); z-index: 2;
    width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-size: .72rem; font-weight: 800; color: #fff; background: #b8c2d6; border: 2px solid #fff;
}
.mz-pop-rank.is-1 { background: #f5b301; }
.mz-pop-rank.is-3 { background: #ff7a2b; }
.mz-pop-info { min-width: 0; display: flex; flex-direction: column; gap: .2rem; }
.mz-pop-info strong { font-size: .84rem; line-height: 1.8; font-weight: 700; transition: color .15s ease;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.mz-pop-info span { font-size: .72rem; color: var(--bz-muted); }

.mz-newsletter { background: linear-gradient(160deg, #f2f6ff, #e8f0ff); border-color: #dbe6ff; scroll-margin-top: 90px; }
.mz-newsletter-head { display: flex; align-items: flex-start; justify-content: space-between; gap: .8rem; }
.mz-newsletter-head h3 { margin-bottom: .5rem; }
.mz-newsletter-head > i { font-size: 2.2rem; color: var(--bz-blue); transform: rotate(-12deg); margin-top: .2rem; }
.mz-newsletter p { margin: 0 0 1rem; font-size: .8rem; color: var(--bz-ink-soft); line-height: 1.9; }
.mz-newsletter input {
    width: 100%; border: 1px solid var(--bz-line); border-radius: var(--bz-radius-sm); background: #fff;
    padding: .75rem .9rem; font-family: inherit; font-size: .85rem; margin-bottom: .6rem; outline: none;
}
.mz-newsletter input:focus { border-color: var(--bz-blue); }
.mz-newsletter .bz-btn { width: 100%; }
.mz-newsletter-msg { font-size: .8rem; font-weight: 600; color: var(--bz-blue); margin: 0 0 .7rem !important; }

.mz-cat-list { list-style: none; margin: 0; padding: 0; }
.mz-cat-list a { display: flex; align-items: center; justify-content: space-between; padding: .6rem 0; color: var(--bz-ink-soft); font-size: .86rem; }
.mz-cat-list li + li { border-top: 1px dashed var(--bz-line); }
.mz-cat-list a:hover, .mz-cat-list a.active { color: var(--bz-blue); }
.mz-count { min-width: 30px; height: 24px; padding: 0 .5rem; border-radius: 999px; background: var(--bz-blue-soft); color: var(--bz-blue); font-size: .74rem; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.mz-widget-foot { display: block; text-align: center; margin-top: .9rem; padding-top: .9rem; border-top: 1px solid var(--bz-line); font-size: .82rem; font-weight: 600; }
.mz-tags { display: flex; flex-wrap: wrap; gap: .45rem; }
.mz-tags a { font-size: .76rem; padding: .3rem .75rem; border-radius: 999px; background: var(--bz-canvas); color: var(--bz-ink-soft); border: 1px solid var(--bz-line); }
.mz-tags a:hover, .mz-tags a.active { background: var(--bz-blue); color: #fff; border-color: var(--bz-blue); }

/* فوتر مجله (روشن) */
.mz-footer { background: #fff; border-top: 1px solid var(--bz-line); margin-top: 4rem; padding-top: 2.8rem; color: var(--bz-ink-soft); }
.mz-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.1fr; gap: 2rem; align-items: start; }
.mz-footer h4 { font-size: .95rem; color: var(--bz-ink); margin: 0 0 1rem; }
.mz-footer-col > a { display: block; font-size: .85rem; color: var(--bz-ink-soft); padding: .25rem 0; }
.mz-footer-col > a:hover { color: var(--bz-blue); }
.mz-footer-about p { font-size: .84rem; line-height: 2.1; margin: 0; }
.mz-footer-brand { display: flex; flex-direction: column; align-items: flex-end; gap: 1rem; }
.mz-footer-logo { height: 44px; width: auto; }
.mz-logo-dark { display: none; }
.mz-footer .bz-social a { background: var(--bz-canvas); color: var(--bz-ink-soft); border: 1px solid var(--bz-line); }
.mz-footer .bz-social a:hover { background: var(--bz-blue); color: #fff; }
.mz-footer-bottom { margin-top: 2.4rem; padding: 1.1rem 0 1.4rem; border-top: 1px solid var(--bz-line); text-align: center; font-size: .78rem; color: var(--bz-muted); }
@media (max-width: 860px) {
    .mz-footer-grid { grid-template-columns: 1fr 1fr; }
    .mz-footer-brand { grid-column: 1 / -1; order: -1; align-items: flex-start; }
}
@media (max-width: 760px) { .mz-footer { padding-bottom: 4.5rem; } }

/* ============================================================
   مجله — حالت شب
   ============================================================ */
html[data-theme="dark"] body.is-magazine {
    --bz-ink: #e8edf8; --bz-ink-soft: #b8c3da; --bz-muted: #8491ab; --bz-line: #1f2b4a;
    --bz-canvas: #111c38; --bz-blue-soft: #16264f; --bz-shadow: none;
    background: #0a1330; color: var(--bz-ink);
}
html[data-theme="dark"] body.is-magazine :is(.mz-header, .mz-card, .mz-widget, .mz-picks-box, .mz-cat-card, .mz-footer, .mz-icon-btn, .bz-dropdown-panel, .mz-pager a, .mz-pager span:not(.is-current), .mz-newsletter input) {
    background: #0e1938; color: var(--bz-ink);
}
html[data-theme="dark"] body.is-magazine .mz-newsletter { background: linear-gradient(160deg, #13224a, #0e1938); border-color: var(--bz-line); }
html[data-theme="dark"] body.is-magazine :is(h1, h2, h3, h4) { color: var(--bz-ink); }
html[data-theme="dark"] body.is-magazine .mz-logo-light { display: none; }
html[data-theme="dark"] body.is-magazine .mz-logo-dark { display: block; }
html[data-theme="dark"] body.is-magazine .mz-header-search input { background: #111c38; color: var(--bz-ink); }
html[data-theme="dark"] body.is-magazine :is(.mag-post-main, .mag-widget, .comment-form, .comment-item) { background: #0e1938; color: var(--bz-ink); }
html[data-theme="dark"] body.is-magazine .mag-post-body { color: var(--bz-ink-soft); }

/* هماهنگی صفحه مقاله (post.php) با پالت جدید مجله */
body.is-magazine .mag-widget { border: 1px solid var(--bz-line); border-radius: 18px; box-shadow: var(--bz-shadow); }
body.is-magazine .mag-newsletter, body.is-magazine .mag-cta-card { background: linear-gradient(160deg, #0b2378, #06164a); }
body.is-magazine .btn-yellow { background: var(--bz-blue); color: #fff; border-color: var(--bz-blue); }
body.is-magazine .btn-yellow:hover { background: var(--bz-blue-dark); color: #fff; }

@media (prefers-reduced-motion: reduce) {
    .mz-slide.active { animation: none; }
    .bz-post-media img, .mz-card-media img { transition: none; }
}

/* ============================================================
   پنل تبلیغات صاحب کسب‌وکار (ads-manage.php)
   ============================================================ */
.am-page { max-width: 1180px; margin: 0 auto; }
.am-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.4rem; }
.am-head h1 { margin: 0 0 .3rem; font-size: 1.6rem; }
.am-head p { margin: 0; color: var(--bz-muted); font-size: .88rem; max-width: 46em; }
.am-biz-switch { display: flex; align-items: center; gap: .6rem; }
.am-biz-switch label { font-size: .82rem; color: var(--bz-muted); }
.am-biz-switch select, .am-form select, .am-form input:not([type=radio]):not([type=checkbox]), .am-form textarea {
    width: 100%; font-family: inherit; font-size: .88rem; color: var(--bz-ink); background: #fff;
    border: 1px solid var(--bz-line); border-radius: var(--bz-radius-sm); padding: .7rem .85rem; outline: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.am-biz-switch select { width: auto; min-width: 200px; }
.am-form :is(select, input, textarea):focus { border-color: var(--bz-blue); box-shadow: 0 0 0 3px rgba(20, 99, 255, .12); }
.am-form textarea { resize: vertical; line-height: 1.9; }

.am-top { display: grid; grid-template-columns: 320px 1fr; gap: 1.2rem; }
.am-wallet {
    position: relative; overflow: hidden; color: #fff; border-radius: 20px; padding: 1.4rem 1.5rem;
    background: radial-gradient(260px 200px at 0% 100%, rgba(82, 182, 255, .45), transparent 70%), linear-gradient(140deg, #1463ff, var(--bz-navy));
    display: flex; flex-direction: column; gap: .35rem;
}
.am-wallet > span { font-size: .82rem; opacity: .85; }
.am-wallet strong { font-size: 1.9rem; font-weight: 800; line-height: 1.4; }
.am-wallet strong small { font-size: .9rem; font-weight: 600; opacity: .8; }
.am-wallet p { margin: 0 0 .8rem; font-size: .8rem; opacity: .85; line-height: 1.9; }
.am-wallet-btn { align-self: flex-start; background: #fff; color: var(--bz-blue); margin-top: auto; }
.am-wallet-btn:hover { background: var(--bz-blue-soft); color: var(--bz-blue-dark); }
.am-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.am-kpi { background: #fff; border: 1px solid var(--bz-line); border-radius: 18px; padding: 1.1rem 1.2rem; box-shadow: var(--bz-shadow); display: flex; flex-direction: column; gap: .2rem; }
.am-kpi span { font-size: .78rem; color: var(--bz-muted); }
.am-kpi strong { font-size: 1.45rem; font-weight: 800; }
.am-kpi small { font-size: .72rem; color: var(--bz-muted); }

.am-card { background: #fff; border: 1px solid var(--bz-line); border-radius: 20px; box-shadow: var(--bz-shadow); padding: 1.4rem 1.5rem; margin-top: 1.4rem; }
.am-card-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.1rem; }
.am-card-head h2 { margin: 0; font-size: 1.1rem; }
.am-card-head h2 small { font-size: .78rem; color: var(--bz-muted); background: var(--bz-canvas); border-radius: 999px; padding: .1rem .6rem; margin-inline-start: .3rem; }
.am-chart-wrap { position: relative; height: 280px; }
.am-new { padding: .65rem 1.1rem; font-size: .84rem; }

/* فرم ساخت/ویرایش */
.am-editor-grid { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 2rem; align-items: start; }
.am-form fieldset { border: 0; padding: 0; margin: 0 0 1.6rem; }
.am-form legend { font-weight: 800; font-size: .95rem; margin-bottom: .6rem; color: var(--bz-navy); }
.am-form label { display: flex; justify-content: space-between; font-size: .82rem; font-weight: 600; color: var(--bz-ink-soft); margin: .9rem 0 .35rem; }
.am-form small { display: block; font-size: .74rem; color: var(--bz-muted); margin-top: .35rem; line-height: 1.8; }
.am-count { font-weight: 500; color: var(--bz-muted); font-size: .72rem; }
.am-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.am-check { justify-content: flex-start !important; gap: .4rem; font-weight: 500 !important; }
.am-placements { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: .7rem; }
.am-place { display: flex !important; gap: .6rem; margin: 0 !important; cursor: pointer; border: 1.5px solid var(--bz-line); border-radius: 14px; padding: .85rem .9rem; transition: border-color .15s ease, background .15s ease; }
.am-place:hover { border-color: #cfdcf5; }
.am-place:has(input:checked) { border-color: var(--bz-blue); background: var(--bz-blue-soft); }
.am-place input { margin-top: .3rem; accent-color: var(--bz-blue); }
.am-place span { display: flex; flex-direction: column; gap: .2rem; }
.am-place strong { color: var(--bz-ink); font-size: .86rem; }
.am-place small { margin: 0; font-weight: 400; }
.am-place em { font-style: normal; font-size: .72rem; font-weight: 700; color: var(--bz-blue); }
.am-note { display: flex; gap: .5rem; font-size: .78rem; color: var(--bz-ink-soft); background: var(--bz-canvas); border-radius: 12px; padding: .75rem .9rem; line-height: 1.9; margin: 1rem 0 0; }
.am-note i { color: var(--bz-blue); margin-top: .35rem; }
.am-submit { width: 100%; padding: 1rem; font-size: .95rem; }
.am-preview { position: sticky; top: 96px; background: var(--bz-canvas); border-radius: 18px; padding: 1rem; }
.am-preview-label { display: inline-block; font-size: .72rem; font-weight: 800; color: var(--bz-blue); margin-bottom: .7rem; }
.am-preview p { font-size: .74rem; color: var(--bz-muted); margin: .8rem 0 0; line-height: 1.8; }
.am-preview .adx-banner, .am-preview .adx-native { flex-direction: column; }
.am-preview .adx-banner .adx-media, .am-preview .adx-native .adx-media { width: 100%; max-width: none; aspect-ratio: 16 / 8; order: 0; }
.am-preview .adx { pointer-events: none; }

/* فهرست کمپین‌ها */
.am-list { display: flex; flex-direction: column; gap: 1rem; }
.am-camp { border: 1px solid var(--bz-line); border-radius: 16px; padding: 1.1rem 1.2rem; }
.am-camp-main { display: flex; gap: 1rem; }
.am-camp-thumb { width: 72px; height: 72px; border-radius: 14px; overflow: hidden; flex-shrink: 0; background: var(--bz-blue-soft); color: var(--bz-blue); display: flex; align-items: center; justify-content: center; font-size: 1.4rem; }
.am-camp-thumb img { width: 100%; height: 100%; object-fit: cover; }
.am-camp-info { min-width: 0; flex: 1; }
.am-camp-title { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.am-camp-title strong { font-size: .98rem; }
.am-pill { font-size: .7rem; font-weight: 800; padding: .18rem .65rem; border-radius: 999px; }
.am-pill-ok { background: #e3f7ec; color: #16794a; }
.am-pill-warn { background: #fff4d6; color: #8a5a00; }
.am-pill-err { background: #fde8e6; color: #b42318; }
.am-pill-off { background: #eef1f6; color: #5b6478; }
.am-camp-meta { display: flex; flex-wrap: wrap; gap: .4rem 1.1rem; font-size: .76rem; color: var(--bz-muted); margin-top: .45rem; }
.am-camp-meta i { color: #9aa6bd; margin-inline-end: .2rem; }
.am-camp-explain { margin: .45rem 0 0; font-size: .78rem; color: var(--bz-ink-soft); }
.am-camp-stats { display: grid; grid-template-columns: repeat(6, 1fr); gap: .6rem; margin-top: 1rem; }
.am-camp-stats div { background: var(--bz-canvas); border-radius: 12px; padding: .65rem .7rem; text-align: center; }
.am-camp-stats strong { display: block; font-size: 1rem; }
.am-camp-stats span { font-size: .7rem; color: var(--bz-muted); }
.am-camp-actions { display: flex; gap: .4rem; flex-wrap: wrap; margin-top: .9rem; }
.am-camp-actions form { margin: 0; }
.am-act {
    display: inline-flex; align-items: center; gap: .35rem; font-family: inherit; font-size: .78rem; font-weight: 600; cursor: pointer;
    background: #fff; border: 1px solid var(--bz-line); color: var(--bz-ink-soft); padding: .45rem .8rem; border-radius: 9px;
}
.am-act:hover { border-color: var(--bz-blue); color: var(--bz-blue); }
.am-act-danger:hover { border-color: #d92d20; color: #d92d20; }
.am-empty { max-width: 520px; margin: 3rem auto; text-align: center; background: #fff; border: 1px solid var(--bz-line); border-radius: 22px; padding: 2.5rem 2rem; box-shadow: var(--bz-shadow); }
.am-empty > i { font-size: 2.4rem; color: var(--bz-blue); }
.am-empty p { color: var(--bz-muted); line-height: 2; }

@media (max-width: 1000px) {
    .am-top, .am-editor-grid { grid-template-columns: 1fr; }
    .am-preview { position: static; order: -1; }
    .am-camp-stats { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 640px) {
    .am-kpis { grid-template-columns: repeat(2, 1fr); }
    .am-row { grid-template-columns: 1fr; }
    .am-card { padding: 1.1rem; }
}

/* ============================================================
   لایه یکپارچه‌سازی: صفحات قدیمی‌تر (جستجو، کسب‌وکار، پنل کاربر، درباره ما…)
   با همان زبان طراحی صفحه اصلی جدید نمایش داده می‌شوند.
   ============================================================ */
:root {
    --primary: #1463ff;
    --primary-dark: #0a4ee0;
    --primary-light: #edf3ff;
    --primary-gradient:
        radial-gradient(420px 240px at 15% 110%, rgba(82, 182, 255, .35), transparent 70%),
        linear-gradient(135deg, #0c2e9a, #0b2170 55%, #06164a);
    --paper: #f6f8fc;
    --border: #e7edf6;
    --ink: #0f1b3d;
    --ink-soft: #3a4763;
    --muted: #7b869c;
    --shadow: 0 6px 24px rgba(15, 40, 110, .07);
    --shadow-lg: 0 18px 44px rgba(15, 40, 110, .14);
    --radius: 18px;
}
main.container { padding-top: 1.8rem; }

/* دکمه‌ها */
.btn { border-radius: 10px; font-weight: 700; transition: background .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease; }
.btn-primary { background: var(--bz-blue); border-color: var(--bz-blue); box-shadow: 0 8px 18px rgba(20, 99, 255, .22); }
.btn-primary:hover { background: var(--bz-blue-dark); border-color: var(--bz-blue-dark); }
.btn-outline { background: #fff; border: 1px solid var(--bz-line); color: var(--bz-ink-soft); }
.btn-outline:hover { border-color: var(--bz-blue); color: var(--bz-blue); background: #fff; }
.btn-call { background: var(--bz-blue); color: #fff; }
.btn-call:hover { background: var(--bz-blue-dark); color: #fff; }
.btn-directions { background: var(--bz-blue-soft); color: var(--bz-blue); }
.btn-directions:hover { background: #dce8ff; color: var(--bz-blue-dark); }
/* دکمه زرد قدیمی روی بنرهای تیره: سفید با متن آبی */
.btn-yellow { background: #fff; color: var(--bz-blue); border-color: #fff; box-shadow: 0 8px 18px rgba(0, 10, 50, .18); }
.btn-yellow:hover { background: var(--bz-blue-soft); color: var(--bz-blue-dark); }

/* بنرهای رنگی قدیمی (فیروزه‌ای) → سرمه‌ای با درخشش آبی، هم‌خانواده بنر صفحه اصلی */
.promo, .cta-banner, .dash-hero, .mag-cta-card, .mag-newsletter { background: var(--primary-gradient); box-shadow: 0 18px 40px rgba(6, 22, 74, .18); }
.promo { border-radius: 18px; padding: 1.5rem 1.8rem; }
.promo p { color: rgba(255, 255, 255, .75); }

/* تیتر بخش‌ها */
.section-head h2::before { background: var(--bz-blue); border-radius: 4px; }
.section-head a.see-all { color: var(--bz-blue); }

/* ---------- صفحه جستجو ---------- */
.filter-bar { background: #fff; border: 1px solid var(--bz-line); border-radius: 14px; box-shadow: var(--bz-shadow); padding: .8rem 1rem; }
.filter-bar select { border-radius: 9px; border-color: var(--bz-line); }
.business-list { gap: 1.2rem; }
.business-card {
    border-radius: 18px; border-color: var(--bz-line); padding: 1.15rem; box-shadow: var(--bz-shadow);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.business-card:hover { transform: translateY(-2px); box-shadow: var(--bz-shadow-lg); border-color: #cfdcf5; }
.business-card .thumb, .business-card .thumb-placeholder { width: 92px; height: 92px; border-radius: 14px; }
.business-card .thumb-placeholder { background: var(--bz-blue-soft); color: var(--bz-blue); }
.business-card h2, .business-card h3 { font-size: 1rem; line-height: 1.7; }
.business-card h2 a, .business-card h3 a { color: var(--bz-ink); }
.business-card h2 a:hover, .business-card h3 a:hover { color: var(--bz-blue); }
.business-card-actions { gap: .4rem; }
.business-card-actions .btn-sm { padding: .45rem .8rem; font-size: .78rem; border-radius: 9px; }
.business-card.featured { border: 1.5px solid #f3d27a; background: linear-gradient(180deg, #fffaf0, #fff 45%); }

/* ---------- صفحه کسب‌وکار ---------- */
.biz-cover { border-radius: 22px; }
.biz-cover-fallback { position: relative; min-height: 220px; }
.biz-cover-fallback::after {
    content: ''; position: absolute; inset: 0; opacity: .25;
    background-image: radial-gradient(rgba(255, 255, 255, .5) 1px, transparent 1px); background-size: 22px 22px;
    mask-image: linear-gradient(90deg, transparent, #000 40%, #000 60%, transparent);
}
.biz-identity-card, .biz-contact-card { border-radius: 20px; border: 1px solid var(--bz-line); box-shadow: var(--bz-shadow); }
.biz-avatar, .biz-avatar-placeholder { border-radius: 20px; box-shadow: 0 10px 24px rgba(15, 40, 110, .16); border: 4px solid #fff; }
.biz-avatar-placeholder { background: var(--bz-blue-soft); color: var(--bz-blue); }
.biz-contact-card .btn-block { padding: .85rem; font-size: .9rem; }
.biz-sidebar-map { border-radius: 18px; }
.tab-nav { border-bottom-color: var(--bz-line); gap: .2rem; }
.tab-btn { font-weight: 600; color: var(--bz-muted); border-radius: 10px 10px 0 0; }
.tab-btn:hover { color: var(--bz-ink); background: var(--bz-canvas); }
.tab-btn.active { color: var(--bz-blue); border-bottom-color: var(--bz-blue); }
.badge-gold { background: #fff4d6; color: #8a5a00; }

/* ---------- پنل کاربر ---------- */
.dash-hero { border-radius: 22px; }
.dash-hero-eyebrow { background: rgba(255, 255, 255, .14) !important; color: #fff !important; }
.stat-box { background: #fff; border: 1px solid var(--bz-line); border-radius: 16px; box-shadow: var(--bz-shadow); }
.stat-box strong { color: var(--bz-ink); }
.dash-chart-card { border-radius: 20px; border: 1px solid var(--bz-line); box-shadow: var(--bz-shadow); }
.empty-state { border-radius: 20px; border: 1px dashed #cfdcf5; background: #fff; }

/* ---------- ورود ---------- */
.auth-box { border-radius: 22px; border: 1px solid var(--bz-line); box-shadow: var(--bz-shadow-lg); padding: 2.4rem 2.2rem; }
.auth-box h1 { font-size: 1.35rem; }
.auth-box input { border-radius: 12px; border-color: var(--bz-line); background: var(--bz-canvas); letter-spacing: .08em; }
.auth-box input:focus { outline: none; border-color: var(--bz-blue); box-shadow: 0 0 0 3px rgba(20, 99, 255, .12); background: #fff; }
.otp-resend-form { margin: .8rem 0 .4rem; }
.otp-resend-btn { background: none; border: 0; font-family: inherit; color: var(--bz-blue); font-weight: 600; cursor: pointer; font-size: .85rem; }
.otp-resend-btn:disabled { color: var(--bz-muted); cursor: default; }

/* ---------- فرم‌ها و کارت‌های عمومی ---------- */
.business-form input:not([type=checkbox]):not([type=radio]):not([type=file]), .business-form select, .business-form textarea {
    border-radius: 11px; border-color: var(--bz-line);
}
.business-form :is(input, select, textarea):focus { border-color: var(--bz-blue); box-shadow: 0 0 0 3px rgba(20, 99, 255, .12); outline: none; }
.alert { border-radius: 12px; }
.dash-hero .btn-gold { background: #fff; color: var(--bz-blue); border-color: #fff; }
.dash-hero .btn-gold:hover { background: var(--bz-blue-soft); color: var(--bz-blue-dark); }

/* ============================================================
   صفحه مقاله (mza) و دیدگاه‌ها (mzc)
   ============================================================ */
.sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.mza-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 900; pointer-events: none; }
.mza-progress span { display: block; height: 100%; background: linear-gradient(90deg, var(--bz-sky), var(--bz-blue)); transform: scaleX(0); transform-origin: right; transition: transform .1s linear; }
.mza-preview-bar { background: #fff4d6; color: #7a4d00; border: 1px solid #f5dfa0; border-radius: 12px; padding: .7rem 1rem; font-size: .85rem; margin-bottom: 1rem; display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; }
.mza-preview-bar a { margin-inline-start: auto; font-weight: 700; }
.mza { max-width: 1180px; margin: 0 auto; }
.mza-head { max-width: 820px; margin: .6rem auto 1.8rem; text-align: center; }
.mza-crumbs { display: flex; justify-content: center; align-items: center; gap: .5rem; font-size: .78rem; color: var(--bz-muted); margin-bottom: 1.1rem; flex-wrap: wrap; }
.mza-crumbs a { color: var(--bz-muted); }
.mza-crumbs a:hover { color: var(--bz-blue); }
.mza-crumbs i { font-size: .55rem; opacity: .6; }
.mza-head h1 { font-size: clamp(1.5rem, 3.4vw, 2.3rem); line-height: 1.65; font-weight: 800; margin: .9rem 0 .7rem; letter-spacing: -.01em; }
.mza-lead { font-size: 1.02rem; line-height: 2.1; color: var(--bz-ink-soft); margin: 0 auto 1.2rem; max-width: 680px; }
.mza-meta { display: flex; justify-content: center; flex-wrap: wrap; gap: .5rem 1.4rem; font-size: .8rem; color: var(--bz-muted); align-items: center; }
.mza-meta i { margin-inline-end: .35rem; opacity: .75; }
.mza-meta a { color: var(--bz-muted); }
.mza-author { display: inline-flex; align-items: center; gap: .5rem; color: var(--bz-ink); font-weight: 700; }
.mza-author-avatar { --h: 220; width: 32px; height: 32px; border-radius: 50%; display: inline-grid; place-items: center; font-weight: 800; font-size: .85rem; color: hsl(var(--h) 55% 32%); background: hsl(var(--h) 75% 92%); }
.mza-author-avatar.is-lg { width: 56px; height: 56px; font-size: 1.3rem; flex-shrink: 0; }
.mza-cover { margin: 0 0 2.4rem; border-radius: 24px; overflow: hidden; aspect-ratio: 2 / 1; background: var(--bz-blue-soft); box-shadow: var(--bz-shadow-lg); }
.mza-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mza-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; grid-template-areas: "main side"; gap: 3rem; align-items: start; }
.mza-main { grid-area: main; min-width: 0; max-width: 760px; }
.mza-side { grid-area: side; display: flex; flex-direction: column; gap: 1.2rem; position: sticky; top: 96px; }

/* تایپوگرافی متن مقاله */
.mza-body { font-size: 1.04rem; line-height: 2.25; color: #26304d; }
.mza-body > * + * { margin-top: 1.15em; }
.mza-body p { margin: 0; }
.mza-body h2 { font-size: 1.4rem; line-height: 1.7; margin: 2.2em 0 .6em; font-weight: 800; color: var(--bz-ink); scroll-margin-top: 96px; }
.mza-body h3 { font-size: 1.15rem; line-height: 1.7; margin: 1.8em 0 .5em; font-weight: 700; color: var(--bz-ink); scroll-margin-top: 96px; }
.mza-body h4 { font-size: 1rem; margin: 1.5em 0 .4em; }
.mza-body a { color: var(--bz-blue); text-decoration: underline; text-decoration-color: rgba(20, 99, 255, .35); text-underline-offset: 4px; }
.mza-body a:hover { text-decoration-color: var(--bz-blue); }
.mza-body img { max-width: 100%; height: auto; border-radius: 16px; display: block; margin: 1.6em auto; }
.mza-body figure { margin: 1.8em 0; }
.mza-body figcaption { text-align: center; font-size: .82rem; color: var(--bz-muted); margin-top: .5rem; }
.mza-body blockquote { margin: 1.8em 0; padding: 1.1rem 1.4rem; border-inline-start: 4px solid var(--bz-blue); background: var(--bz-blue-soft); border-radius: 0 14px 14px 0; color: var(--bz-ink); font-size: 1.02rem; }
[dir="rtl"] .mza-body blockquote { border-radius: 14px 0 0 14px; }
.mza-body ul, .mza-body ol { padding-inline-start: 1.4rem; }
.mza-body li + li { margin-top: .4em; }
.mza-body li::marker { color: var(--bz-blue); }
.mza-body table { width: 100%; border-collapse: collapse; font-size: .9rem; display: block; overflow-x: auto; }
.mza-body th, .mza-body td { border: 1px solid var(--bz-line); padding: .6rem .8rem; text-align: right; }
.mza-body th { background: var(--bz-canvas); }
.mza-body hr { border: 0; height: 1px; background: var(--bz-line); margin: 2.4em 0; }
.mza-body code { background: var(--bz-canvas); padding: .1em .4em; border-radius: 6px; font-size: .9em; }

/* فهرست مطالب */
.mza-toc ol { list-style: none; margin: 0; padding: 0; counter-reset: toc; }
.mza-toc li { counter-increment: toc; }
.mza-toc li.lv3 { padding-inline-start: 1rem; counter-increment: none; }
.mza-toc a { display: block; padding: .38rem .6rem; border-radius: 8px; font-size: .84rem; color: var(--bz-ink-soft); line-height: 1.8; border-inline-start: 2px solid transparent; }
.mza-toc li.lv2 > a::before { content: counter(toc, persian) ". "; color: var(--bz-muted); }
.mza-toc a:hover { background: var(--bz-canvas); color: var(--bz-ink); }
.mza-toc a.is-active { color: var(--bz-blue); border-inline-start-color: var(--bz-blue); background: var(--bz-blue-soft); font-weight: 700; }
.mza-toc-inline { display: none; background: var(--bz-canvas); border-radius: 16px; padding: 1rem 1.1rem; margin-bottom: 1.8rem; }
.mza-toc-inline summary { cursor: pointer; font-weight: 800; font-size: .92rem; }
.mza-toc-inline ol { margin-top: .7rem; }
.mza-toc-side { max-height: 60vh; overflow-y: auto; }

/* گالری، کسب‌وکارهای مرتبط، پاورقی */
.mza-gallery { margin-top: 2.4rem; }
.mza-gallery h2 { font-size: 1.1rem; margin: 0 0 1rem; }
.mza-gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: .7rem; }
.mza-gallery-grid a { display: block; aspect-ratio: 4 / 3; border-radius: 14px; overflow: hidden; }
.mza-gallery-grid img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.mza-gallery-grid a:hover img { transform: scale(1.05); }
.mza-biz { margin-top: 2.2rem; padding: 1.1rem 1.2rem; border-radius: 16px; background: linear-gradient(135deg, #f1f6ff, #fff); border: 1px solid #dbe6ff; }
.mza-biz strong { display: block; font-size: .92rem; margin-bottom: .7rem; }
.mza-biz strong i { color: var(--bz-blue); margin-inline-end: .3rem; }
.mza-biz div { display: flex; flex-wrap: wrap; gap: .5rem; }
.mza-biz a { display: inline-flex; align-items: center; gap: .45rem; background: #fff; border: 1px solid var(--bz-line); border-radius: 10px; padding: .45rem .8rem; font-size: .84rem; font-weight: 600; color: var(--bz-ink); }
.mza-biz a i { color: var(--bz-blue); }
.mza-biz a:hover { border-color: var(--bz-blue); color: var(--bz-blue); }
.mza-foot { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: 2.4rem; padding-top: 1.4rem; border-top: 1px solid var(--bz-line); }
.mz-tags { display: flex; flex-wrap: wrap; gap: .45rem; }
.mz-tags a { font-size: .78rem; padding: .32rem .8rem; border-radius: 999px; background: var(--bz-canvas); color: var(--bz-ink-soft); border: 1px solid var(--bz-line); }
.mz-tags a:hover { background: var(--bz-blue); color: #fff; border-color: var(--bz-blue); }
.mza-share { display: flex; align-items: center; gap: .4rem; }
.mza-share span { font-size: .8rem; color: var(--bz-muted); margin-inline-end: .3rem; }
.mza-share a, .mza-share button {
    width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--bz-line); background: #fff;
    color: var(--bz-ink-soft); cursor: pointer; font-size: .95rem; transition: all .15s ease;
}
.mza-share a:hover, .mza-share button:hover { background: var(--bz-blue); border-color: var(--bz-blue); color: #fff; transform: translateY(-2px); }
.mza-share button.is-done { background: #16a34a; border-color: #16a34a; color: #fff; }
.mza-authorbox { display: flex; gap: 1rem; align-items: flex-start; margin-top: 1.8rem; padding: 1.3rem; border-radius: 18px; background: var(--bz-canvas); }
.mza-authorbox small { display: block; color: var(--bz-muted); font-size: .74rem; }
.mza-authorbox strong { font-size: 1rem; }
.mza-authorbox p { margin: .35rem 0 0; font-size: .84rem; color: var(--bz-ink-soft); line-height: 1.95; }
.mza-related { margin-top: 3rem; }
.mza-related .mz-grid { grid-template-columns: repeat(3, 1fr); }
.mza-side-ad .adx { box-shadow: none; }

/* دیدگاه‌ها */
.mzc-section { margin-top: 3.2rem; scroll-margin-top: 90px; }
.mzc-top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.1rem; }
.mzc-top h2 { margin: 0; font-size: 1.25rem; display: flex; align-items: center; gap: .5rem; }
.mzc-top h2 span { font-size: .8rem; background: var(--bz-blue-soft); color: var(--bz-blue); padding: .15rem .6rem; border-radius: 999px; }
.mzc-sort { display: flex; gap: .2rem; background: var(--bz-canvas); padding: .25rem; border-radius: 10px; }
.mzc-sort a { font-size: .78rem; padding: .35rem .75rem; border-radius: 8px; color: var(--bz-muted); font-weight: 600; }
.mzc-sort a.active { background: #fff; color: var(--bz-ink); box-shadow: 0 1px 3px rgba(15, 40, 110, .1); }
.mzc-form { background: #fff; border: 1px solid var(--bz-line); border-radius: 18px; padding: 1rem; box-shadow: var(--bz-shadow); margin-bottom: 1.6rem; scroll-margin-top: 110px; transition: border-color .15s ease, box-shadow .15s ease; }
.mzc-form:focus-within { border-color: #b9ceff; box-shadow: 0 0 0 4px rgba(20, 99, 255, .08); }
.mzc-form.is-reply { margin: .6rem 0 1rem; margin-inline-start: 3.2rem; }
.mzc-form textarea { width: 100%; border: 0; outline: none; resize: vertical; min-height: 96px; font-family: inherit; font-size: .92rem; line-height: 2; color: var(--bz-ink); background: transparent; }
.mzc-form-row { display: flex; gap: .6rem; align-items: center; border-top: 1px solid var(--bz-line); padding-top: .8rem; margin-top: .3rem; flex-wrap: wrap; }
.mzc-form-row input { flex: 1; min-width: 150px; border: 1px solid var(--bz-line); border-radius: 10px; padding: .65rem .8rem; font-family: inherit; font-size: .86rem; outline: none; background: var(--bz-canvas); }
.mzc-form-row input:focus { border-color: var(--bz-blue); background: #fff; }
.mzc-form-row .bz-btn { padding: .7rem 1.3rem; }
.mzc-count { font-size: .72rem; color: var(--bz-muted); }
.mzc-note { display: block; font-size: .72rem; color: var(--bz-muted); margin-top: .6rem; line-height: 1.8; }
.mzc-replying { font-size: .8rem; color: var(--bz-blue); background: var(--bz-blue-soft); border-radius: 8px; padding: .4rem .7rem; margin-bottom: .5rem; display: flex; gap: .4rem; align-items: center; }
.mzc-replying button { margin-inline-start: auto; border: 0; background: none; color: var(--bz-muted); cursor: pointer; font-family: inherit; font-size: .78rem; }
.mzc-hp { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.mzc-closed, .mzc-empty { color: var(--bz-muted); font-size: .88rem; background: var(--bz-canvas); border-radius: 14px; padding: 1rem 1.2rem; }
.mzc-list { display: flex; flex-direction: column; }
.mzc { display: flex; gap: .85rem; padding: 1.1rem 0; border-top: 1px solid var(--bz-line); scroll-margin-top: 100px; }
.mzc-list > .mzc:first-child { border-top: 0; }
.mzc:target { background: linear-gradient(90deg, transparent, var(--bz-blue-soft)); border-radius: 12px; }
.mzc-avatar { --h: 220; width: 40px; height: 40px; border-radius: 50%; flex-shrink: 0; display: grid; place-items: center; font-weight: 800; color: hsl(var(--h) 55% 32%); background: hsl(var(--h) 75% 92%); }
.mzc.is-admin .mzc-avatar { background: var(--bz-blue); color: #fff; }
.mzc-main { flex: 1; min-width: 0; }
.mzc-head { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.mzc-head strong { font-size: .9rem; }
.mzc-head time { font-size: .74rem; color: var(--bz-muted); margin-inline-start: auto; }
.mzc-badge { font-size: .68rem; font-weight: 700; padding: .12rem .5rem; border-radius: 6px; background: var(--bz-blue-soft); color: var(--bz-blue); }
.mzc-badge.is-pin { background: #fff4d6; color: #8a5a00; }
.mzc-badge.is-wait { background: #eef1f6; color: #5b6478; }
.mzc.is-pending { opacity: .75; }
.mzc.is-pinned > .mzc-main { background: #fffcf2; border-radius: 12px; padding: .6rem .8rem; margin: -.6rem -.8rem; }
.mzc-text { font-size: .92rem; line-height: 2.05; color: #26304d; margin-top: .35rem; word-break: break-word; }
.mzc-actions { display: flex; gap: .3rem; margin-top: .45rem; }
.mzc-actions form { margin: 0; }
.mzc-like, .mzc-reply { display: inline-flex; align-items: center; gap: .35rem; border: 0; background: none; font-family: inherit; font-size: .78rem; color: var(--bz-muted); cursor: pointer; padding: .3rem .55rem; border-radius: 8px; }
.mzc-like:hover, .mzc-reply:hover { background: var(--bz-canvas); color: var(--bz-ink); }
.mzc-like.is-liked { color: #e5484d; }
.mzc-like.is-liked i { animation: mzcPop .3s ease; }
@keyframes mzcPop { 50% { transform: scale(1.35); } }
.mzc-replies { margin-inline-start: 3.2rem; border-inline-start: 2px solid var(--bz-line); padding-inline-start: 1rem; }
.mzc-replies .mzc { border-top: 0; padding: .7rem 0; }
.mz-404 { text-align: center; max-width: 480px; margin: 4rem auto; }
.mz-404 > i { font-size: 3rem; color: var(--bz-blue); opacity: .6; }

@media (max-width: 1060px) {
    .mza-layout { grid-template-columns: 1fr; grid-template-areas: "main" "side"; gap: 2rem; }
    .mza-main { max-width: none; }
    .mza-side { position: static; }
    .mza-toc-side { display: none; }
    .mza-toc-inline { display: block; }
}
@media (max-width: 640px) {
    .mza-cover { aspect-ratio: 16 / 10; border-radius: 16px; margin-bottom: 1.6rem; }
    .mza-body { font-size: 1rem; line-height: 2.15; }
    .mza-related .mz-grid { grid-template-columns: 1fr; }
    .mzc-replies { margin-inline-start: 1rem; }
    .mzc-form.is-reply { margin-inline-start: 0; }
}
html[data-theme="dark"] body.is-magazine .mza-body, html[data-theme="dark"] body.is-magazine .mzc-text { color: #cfd7ea; }
html[data-theme="dark"] body.is-magazine :is(.mzc-form, .mza-share a, .mza-share button, .mza-biz a) { background: #0e1938; }
html[data-theme="dark"] body.is-magazine :is(.mza-authorbox, .mza-toc-inline, .mzc-sort, .mzc-closed, .mzc-empty) { background: #111c38; }
html[data-theme="dark"] body.is-magazine .mza-biz { background: #111c38; border-color: var(--bz-line); }
html[data-theme="dark"] body.is-magazine .mzc.is-pinned > .mzc-main { background: #1a2442; }
@media (prefers-reduced-motion: reduce) { .mza-progress span, .mzc-like.is-liked i { transition: none; animation: none; } }

/* آگهی عریض بین ردیف‌های مقالات مجله */
.mz-feed-ad { grid-column: 1 / -1; }
.mz-feed-ad .adx-native .adx-media { width: 260px; }

/* ============================================================
   منوی دسته‌بندی‌ها (مگامنو) با آیکون
   ============================================================ */
.bz-dropdown-panel { padding: .5rem; border-radius: 16px; }
.bz-dropdown.is-open .bz-dropdown-panel { animation: bzDrop .16s ease-out; }
@keyframes bzDrop { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.bz-dropdown-wide .bz-dropdown-panel.bz-mega { display: none; width: min(720px, 92vw); max-height: none; padding: 0; overflow: hidden; }
.bz-dropdown-wide.is-open .bz-dropdown-panel.bz-mega { display: block; }
.bz-mega-head { display: flex; justify-content: space-between; align-items: center; padding: .9rem 1.1rem; border-bottom: 1px solid var(--bz-line); background: linear-gradient(180deg, var(--bz-canvas), #fff); }
.bz-mega-head strong { font-size: .88rem; }
.bz-mega-head a { font-size: .78rem; font-weight: 700; color: var(--bz-blue); padding: 0; }
.bz-mega-head a:hover { background: none; }
.bz-mega-head a i { font-size: .65rem; margin-inline-start: .2rem; }
.bz-mega-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .15rem; padding: .6rem; max-height: min(62vh, 520px); overflow-y: auto; }
.bz-dropdown-panel a.bz-mega-item { display: flex; align-items: center; gap: .7rem; padding: .5rem .6rem; border-radius: 10px; }
.bz-mega-icon {
    width: 36px; height: 36px; border-radius: 10px; flex-shrink: 0; display: grid; place-items: center;
    background: var(--bz-blue-soft); color: var(--bz-blue); font-size: .95rem; transition: background .15s ease, color .15s ease;
}
.bz-mega-icon svg { width: 20px; height: 20px; }
.bz-mega-text { display: flex; flex-direction: column; min-width: 0; font-size: .84rem; font-weight: 600; color: var(--bz-ink); line-height: 1.5; }
.bz-mega-text small { font-size: .7rem; color: var(--bz-muted); font-weight: 400; }
.bz-dropdown-panel a.bz-mega-item:hover { background: var(--bz-canvas); }
.bz-dropdown-panel a.bz-mega-item:hover .bz-mega-icon { background: var(--bz-blue); color: #fff; }
.mz-nav .bz-dropdown-panel { min-width: 240px; }
@media (max-width: 960px) {
    .bz-dropdown-wide .bz-dropdown-panel.bz-mega { width: auto; box-shadow: none; border: 0; background: var(--bz-canvas); }
    .bz-mega-head { display: none; }
    .bz-mega-grid { grid-template-columns: 1fr 1fr; max-height: 50vh; padding: .3rem; }
}

/* ============================================================
   لایه ظرافت: تایپوگرافی سبک‌تر، خطوط باریک، سایه‌های نرم، حرکت‌های آرام
   ============================================================ */
:root {
    --bz-line: #e9eef6;
    --bz-shadow: 0 1px 2px rgba(15, 30, 70, .04), 0 8px 24px -6px rgba(15, 40, 110, .08);
    --bz-shadow-lg: 0 2px 6px rgba(15, 30, 70, .05), 0 24px 48px -12px rgba(15, 40, 110, .16);
    --bz-ease: cubic-bezier(.2, .7, .2, 1);
}
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; letter-spacing: -.003em; }
::selection { background: rgba(20, 99, 255, .16); color: inherit; }
h1, h2, h3 { letter-spacing: -.012em; }
.bz-section-head h2, .mz-head h2, .am-card-head h2, .bz-panel-head h2 { font-weight: 800; }
* { scrollbar-width: thin; scrollbar-color: #cfd8e8 transparent; }
*::-webkit-scrollbar { width: 8px; height: 8px; }
*::-webkit-scrollbar-thumb { background: #cfd8e8; border-radius: 8px; border: 2px solid transparent; background-clip: padding-box; }

/* هدر شیشه‌ای که با اسکرول سایه می‌گیرد */
.bz-header, .mz-header { transition: box-shadow .25s var(--bz-ease), background .25s var(--bz-ease); }
.bz-header { background: rgba(255, 255, 255, .86); backdrop-filter: saturate(1.6) blur(14px); -webkit-backdrop-filter: saturate(1.6) blur(14px); }
.bz-header.is-scrolled { box-shadow: 0 6px 24px -10px rgba(15, 40, 110, .18); border-bottom-color: transparent; }
.bz-nav > a, .bz-nav .bz-dropdown-trigger { position: relative; transition: color .15s ease; }
.bz-nav > a:not(.active)::after {
    content: ''; position: absolute; bottom: -1px; left: 50%; right: 50%; height: 2px; background: var(--bz-blue); border-radius: 2px;
    transition: left .2s var(--bz-ease), right .2s var(--bz-ease);
}
.bz-nav > a:not(.active):hover::after { left: 0; right: 0; }
.bz-header-search { transition: border-color .15s ease, box-shadow .15s ease, background .15s ease; }
.bz-header-search:focus-within { background: #fff; border-color: #b9ceff; box-shadow: 0 0 0 4px rgba(20, 99, 255, .08); }

/* دکمه‌ها */
.bz-btn { transition: transform .15s var(--bz-ease), background .15s ease, box-shadow .15s ease, border-color .15s ease, color .15s ease; }
.bz-btn:hover { transform: translateY(-1px); }
.bz-btn:active { transform: translateY(0); }
.bz-btn-primary { background: linear-gradient(180deg, #2a72ff, var(--bz-blue)); box-shadow: 0 1px 0 rgba(255, 255, 255, .25) inset, 0 8px 18px -6px rgba(20, 99, 255, .55); }
.bz-btn-primary:hover { background: linear-gradient(180deg, #1f69fb, var(--bz-blue-dark)); box-shadow: 0 1px 0 rgba(255, 255, 255, .25) inset, 0 12px 22px -8px rgba(20, 99, 255, .6); }

/* کارت‌ها: لبه باریک + بالا آمدن ملایم */
.bz-cat-card, .bz-post, .mz-card, .bz-panel, .mz-widget, .bz-features, .mz-cat-card, .business-card, .am-kpi, .am-card {
    border-color: var(--bz-line);
}
.bz-cat-card, .bz-post, .mz-card, .mz-cat-card { transition: transform .25s var(--bz-ease), box-shadow .25s var(--bz-ease), border-color .2s ease; }
.bz-cat-card:hover, .bz-post:hover, .mz-card:hover, .mz-cat-card:hover { transform: translateY(-3px); box-shadow: var(--bz-shadow-lg); border-color: #dbe5f5; }
.bz-cat-icon { transition: transform .25s var(--bz-ease); }
.bz-cat-card:hover .bz-cat-icon { transform: scale(1.08) rotate(-4deg); }
.mz-card h3, .bz-post h3 { font-weight: 700; }

/* هیرو: کارت‌های شناور با حرکت آرام */
@keyframes bzFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
.bz-float-card.is-top { animation: bzFloat 6s ease-in-out infinite; }
.bz-float-card.is-mid { animation: bzFloat 7s ease-in-out -2s infinite; }
.bz-graph-card { animation: bzFloat 8s ease-in-out -4s infinite; }
.bz-hero-text h1 { font-weight: 800; letter-spacing: -.02em; }
.bz-hero-brand { background: linear-gradient(90deg, #7cc8ff, #52b6ff 40%, #9ad5ff); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* ظاهر شدن آرام بخش‌ها هنگام اسکرول (فقط وقتی جاوااسکریپت فعال است) */
.js-reveal .bz-reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s var(--bz-ease), transform .6s var(--bz-ease); }
.js-reveal .bz-reveal.is-in { opacity: 1; transform: none; }

/* فوتر */
.bz-footer { position: relative; background:
    radial-gradient(600px 240px at 85% 0%, rgba(20, 99, 255, .18), transparent 70%),
    linear-gradient(180deg, #071a54, var(--bz-navy-deep)); }
.bz-footer::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(124, 200, 255, .5), transparent); }
.bz-footer h4 { font-weight: 700; letter-spacing: 0; }
.bz-footer-col > a { transition: color .15s ease, transform .15s var(--bz-ease); width: fit-content; }
.bz-footer-col > a:hover { transform: translateX(-3px); }
.bz-social a { transition: background .15s ease, transform .15s var(--bz-ease); }
.bz-social a:hover { transform: translateY(-2px); }

/* نوار پایین موبایل: شیشه‌ای و ظریف */
@media (max-width: 760px) {
    .mobile-tabbar {
        background: rgba(255, 255, 255, .9) !important; backdrop-filter: saturate(1.6) blur(14px); -webkit-backdrop-filter: saturate(1.6) blur(14px);
        box-shadow: 0 -6px 24px -8px rgba(15, 40, 110, .18) !important; border-top: 1px solid rgba(233, 238, 246, .9) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    .bz-float-card, .bz-graph-card { animation: none !important; }
    .js-reveal .bz-reveal { opacity: 1; transform: none; transition: none; }
    .bz-cat-card:hover, .bz-post:hover, .mz-card:hover, .mz-cat-card:hover, .bz-btn:hover { transform: none; }
}
@media print { .js-reveal .bz-reveal { opacity: 1 !important; transform: none !important; } }

/* ============================================================
   قاب تصویر بدون برش (fitImg): کل تصویر دیده می‌شود؛ فضای خالی قاب
   با نسخه محو همان تصویر پر می‌شود تا کارت‌ها یکدست و زیبا بمانند.
   ============================================================ */
.fit-frame { position: relative; display: block; width: 100%; height: 100%; overflow: hidden; isolation: isolate; background: #eef2f8; }
.fit-frame::before {
    content: ''; position: absolute; inset: -14%; z-index: -1;
    background: var(--fit-bg) center / cover no-repeat;
    filter: blur(22px) saturate(1.15); opacity: .6; transform: translateZ(0);
}
.fit-frame picture { display: block; width: 100%; height: 100%; }
.fit-frame img.fit-img { display: block; width: 100% !important; height: 100% !important; object-fit: contain !important; }
/* لوگوها هم هرگز بریده نمی‌شوند */
.bz-top-thumb img, .bz-float-thumb img, .adx-logo img, .business-card .thumb, .biz-avatar, .am-camp-thumb img { object-fit: contain !important; background: #fff; }
/* کاور صفحه کسب‌وکار و صفحه مقاله */
.biz-cover-frame { height: 260px; }
.mza-cover .fit-frame { height: 100%; }
.mz-slide-visual .mz-slide-frame { width: 100%; height: 100%; border-radius: 16px; box-shadow: 0 20px 40px rgba(0, 0, 0, .35); background: rgba(255, 255, 255, .06); }
.mz-slide-visual .mz-slide-frame::before { opacity: .35; }
@media (max-width: 640px) { .biz-cover-frame { height: 170px; } }

/* صفحه کسب‌وکار واردشده: دعوت صاحب کسب‌وکار به تحویل گرفتن صفحه */
.biz-claim { margin-bottom: 1rem; padding: 1.1rem 1.2rem; border-radius: 18px; border: 1px dashed #b9ceff; background: linear-gradient(160deg, #f4f8ff, #fff); }
.biz-claim strong { display: block; font-size: .95rem; margin-bottom: .35rem; }
.biz-claim strong i { color: var(--bz-blue); margin-inline-end: .3rem; }
.biz-claim p { margin: 0 0 .8rem; font-size: .82rem; color: var(--bz-ink-soft); line-height: 1.9; }
.bz-osm-credit { display: block; margin-top: .4rem; font-size: .72rem; opacity: .75; }
.bz-osm-credit a { color: inherit; text-decoration: underline; }
/* لینک‌های داخلی خودکار: همان ظاهر لینک‌های متن مقاله */
.mza-body a.il-auto { text-decoration-style: dotted; }

/* ---------- مسیریابی با گوگل مپ، نشان، بلد ---------- */
.dir-group { margin-top: .6rem; }
.dir-title { display: block; font-size: .8rem; font-weight: 700; color: var(--bz-ink-soft); margin-bottom: .45rem; }
.dir-title i { color: var(--bz-blue); margin-inline-end: .25rem; }
.dir-apps { display: grid; grid-template-columns: repeat(auto-fit, minmax(92px, 1fr)); gap: .45rem; }
.dir-app {
    display: flex; flex-direction: column; align-items: center; gap: .3rem; padding: .6rem .4rem; border-radius: 12px;
    border: 1px solid var(--bz-line); background: #fff; color: var(--bz-ink); font-size: .8rem; font-weight: 700;
    transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.dir-app:hover { color: var(--bz-ink); border-color: #cfdcf5; transform: translateY(-2px); box-shadow: var(--bz-shadow); }
.dir-logo { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; color: #fff; font-weight: 800; font-size: 1rem; }
.dir-google .dir-logo { background: conic-gradient(#ea4335 0 25%, #fbbc05 0 50%, #34a853 0 75%, #4285f4 0); }
.dir-google .dir-logo::after { content: 'G'; text-shadow: 0 1px 2px rgba(0,0,0,.3); }
.dir-neshan .dir-logo { background: linear-gradient(135deg, #ff6b4a, #e2412b); }
.dir-neshan .dir-logo::after { content: 'ن'; }
.dir-balad .dir-logo { background: linear-gradient(135deg, #7b6cff, #4b3fd6); }
.dir-balad .dir-logo::after { content: 'ب'; }
.dir-geo .dir-logo { background: #eef1f6; color: var(--bz-ink-soft); }
/* منوی کوچک مسیریابی در کارت‌های جستجو */
.dir-menu { position: relative; display: inline-block; }
.dir-menu > summary { list-style: none; cursor: pointer; }
.dir-menu > summary::-webkit-details-marker { display: none; }
.dir-pop { position: absolute; z-index: 30; top: calc(100% + 6px); inset-inline-start: 0; min-width: 170px; background: #fff; border: 1px solid var(--bz-line); border-radius: 14px; box-shadow: var(--bz-shadow-lg); padding: .35rem; display: grid; gap: .15rem; }
.dir-pop .dir-app { flex-direction: row; justify-content: flex-start; border: 0; padding: .45rem .5rem; gap: .55rem; }
.dir-pop .dir-app:hover { background: var(--bz-canvas); transform: none; box-shadow: none; }
.dir-pop .dir-logo { width: 26px; height: 26px; border-radius: 8px; font-size: .8rem; }
/* کارتی که منوی مسیریابی‌اش باز است بالای کارت‌های بعدی قرار می‌گیرد (حرکت hover یک لایه جدا می‌سازد) */
.business-card:has(details.dir-menu[open]), .bz-panel:has(details.dir-menu[open]) { position: relative; z-index: 40; }

/* ============================================================
   امکانات ویژه: وضعیت هوشمند، اشتراک‌گذاری و QR، مقایسه، قدرت ویترین
   ============================================================ */
.smart-status { display: inline-flex; align-items: center; gap: .4rem; font-size: .8rem; padding: .25rem .7rem; border-radius: 999px; background: #eef1f6; color: #5b6478; line-height: 1.6; vertical-align: middle; }
.smart-status strong { font-weight: 800; }
.smart-status .ss-detail { opacity: .85; }
.smart-status .ss-detail::before { content: '·'; margin-inline-end: .35rem; opacity: .6; }
.ss-dot { width: 8px; height: 8px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.smart-status.is-open { background: #e3f7ec; color: #12784a; }
.smart-status.is-open .ss-dot { animation: ssPulse 2s ease-in-out infinite; }
.smart-status.is-closing { background: #fff4d6; color: #8a5a00; }
.smart-status.is-closed { background: #fde8e6; color: #b42318; }
@keyframes ssPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(18, 120, 74, .45); } 50% { box-shadow: 0 0 0 5px rgba(18, 120, 74, 0); } }
.card-meta-row { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }

/* ردیف اقدام صفحه کسب‌وکار */
.biz-actions-row { display: flex; flex-wrap: wrap; gap: .45rem; align-items: center; margin-top: .9rem; }
.biz-act {
    display: inline-flex; align-items: center; gap: .45rem; font-family: inherit; font-size: .82rem; font-weight: 700; cursor: pointer;
    padding: .55rem .95rem; border-radius: 11px; border: 1px solid var(--bz-line); background: #fff; color: var(--bz-ink-soft);
    transition: border-color .15s ease, color .15s ease, background .15s ease, transform .15s ease;
}
.biz-act:hover { color: var(--bz-blue); border-color: #c9d8f5; transform: translateY(-1px); }
.biz-act i { color: var(--bz-blue); }
.biz-act.is-on, .cmp-btn.is-on { background: var(--bz-blue); color: #fff; border-color: var(--bz-blue); }
.biz-act.is-on i, .cmp-btn.is-on i { color: #fff; }
.biz-actions-row .report-link { margin-inline-start: auto; font-size: .78rem; }

/* پنجره اشتراک‌گذاری */
body.bz-modal-open { overflow: hidden; }
.bz-sheet { position: fixed; inset: 0; z-index: 1000; background: rgba(6, 22, 74, .45); backdrop-filter: blur(4px); display: grid; place-items: center; padding: 1rem; animation: bzFade .2s ease; }
@keyframes bzFade { from { opacity: 0; } }
.bz-sheet-box { position: relative; width: min(400px, 100%); background: #fff; border-radius: 24px; padding: 1.6rem 1.4rem 1.4rem; text-align: center; box-shadow: var(--bz-shadow-lg); animation: bzUp .25s var(--bz-ease, ease); }
@keyframes bzUp { from { transform: translateY(16px); opacity: 0; } }
.bz-sheet-box h2 { font-size: 1.05rem; margin: 0 2rem .8rem; }
.bz-sheet-close { position: absolute; top: .8rem; left: .8rem; width: 36px; height: 36px; border-radius: 50%; border: 0; background: var(--bz-canvas); cursor: pointer; color: var(--bz-ink-soft); }
.bz-sheet-qr { width: 190px; height: 190px; margin: 0 auto; padding: 8px; border-radius: 18px; border: 1px solid var(--bz-line); background: #fff; }
.bz-sheet-qr svg { width: 100%; height: 100%; display: block; }
.bz-sheet-box > p { font-size: .78rem; margin: .6rem 0 1rem; }
.bz-sheet-links { display: grid; grid-template-columns: repeat(4, 1fr); gap: .5rem; margin-bottom: 1rem; }
.bz-sheet-links a, .bz-sheet-links button {
    display: flex; flex-direction: column; align-items: center; gap: .35rem; padding: .7rem .2rem; border-radius: 14px; border: 1px solid var(--bz-line);
    background: #fff; color: var(--bz-ink); font-family: inherit; font-size: .72rem; font-weight: 700; cursor: pointer;
}
.bz-sheet-links i { font-size: 1.3rem; color: var(--bz-blue); }
.bz-sheet-links a:hover, .bz-sheet-links button:hover { border-color: var(--bz-blue); }
.bz-sheet-poster { width: 100%; }

/* نوار اقدام ثابت موبایل (صفحه کسب‌وکار)، بالای نوار پایین سایت */
.biz-mobilebar { display: none; }
@media (max-width: 760px) {
    .biz-mobilebar {
        display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: .4rem; position: fixed; z-index: 140;
        inset-inline: .6rem; bottom: calc(96px + env(safe-area-inset-bottom)); padding: .4rem; border-radius: 16px;
        background: rgba(255, 255, 255, .92); backdrop-filter: blur(14px); box-shadow: 0 10px 30px -8px rgba(15, 40, 110, .35); border: 1px solid var(--bz-line);
    }
    .biz-mobilebar a, .biz-mobilebar button {
        display: flex; align-items: center; justify-content: center; gap: .4rem; padding: .7rem .4rem; border-radius: 12px; border: 0;
        background: var(--bz-canvas); color: var(--bz-ink); font-family: inherit; font-size: .82rem; font-weight: 800; cursor: pointer;
    }
    .biz-mobilebar .is-primary { background: var(--bz-blue); color: #fff; }
    body:has(.biz-mobilebar) main.container { padding-bottom: 9rem; }
}

/* سبد مقایسه */
.cmp-tray {
    position: fixed; z-index: 150; bottom: 1rem; left: 50%; transform: translateX(-50%); width: min(760px, calc(100% - 1.2rem));
    display: flex; align-items: center; gap: .6rem; padding: .55rem .6rem; border-radius: 18px;
    background: rgba(11, 33, 112, .96); backdrop-filter: blur(10px); color: #fff; box-shadow: 0 18px 44px -12px rgba(6, 22, 74, .6); animation: bzUp .25s ease;
}
.cmp-items { display: flex; gap: .4rem; flex: 1; min-width: 0; overflow-x: auto; }
.cmp-chip { display: inline-flex; align-items: center; gap: .3rem; background: rgba(255, 255, 255, .12); border-radius: 10px; padding: .35rem .3rem .35rem .65rem; font-size: .8rem; font-weight: 700; white-space: nowrap; max-width: 190px; }
.cmp-chip > span { overflow: hidden; text-overflow: ellipsis; }
.cmp-chip button { border: 0; background: rgba(255, 255, 255, .15); color: #fff; width: 22px; height: 22px; border-radius: 50%; cursor: pointer; line-height: 1; }
.cmp-slot { font-size: .76rem; opacity: .6; border: 1px dashed rgba(255, 255, 255, .4); border-radius: 10px; padding: .35rem .65rem; white-space: nowrap; }
.cmp-go { padding: .6rem 1rem; font-size: .82rem; white-space: nowrap; }
.cmp-go.is-disabled { opacity: .55; }
.cmp-clear { border: 0; background: none; color: rgba(255, 255, 255, .7); font-family: inherit; font-size: .75rem; cursor: pointer; }
@media (max-width: 760px) { .cmp-tray { bottom: calc(76px + env(safe-area-inset-bottom)); } body:has(.biz-mobilebar) .cmp-tray { bottom: calc(166px + env(safe-area-inset-bottom)); } .cmp-slot { display: none; } }
.bz-toast { position: fixed; z-index: 1100; top: 1rem; left: 50%; transform: translate(-50%, -150%); background: var(--bz-ink); color: #fff; padding: .7rem 1.2rem; border-radius: 12px; font-size: .85rem; transition: transform .3s ease; }
.bz-toast.is-on { transform: translate(-50%, 0); }

/* صفحه مقایسه */
.cmp-page { max-width: 1180px; margin: 0 auto; }
.cmp-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.4rem; }
.cmp-head h1 { margin: 0 0 .3rem; font-size: 1.6rem; }
.cmp-head p { margin: 0; }
.cmp-dist-btn { background: #fff; border: 1px solid var(--bz-line); color: var(--bz-ink); }
.cmp-scroll { overflow-x: auto; border-radius: 20px; border: 1px solid var(--bz-line); box-shadow: var(--bz-shadow); background: #fff; }
.cmp-table { width: 100%; min-width: calc(180px + var(--cols) * 240px); border-collapse: collapse; table-layout: fixed; }
.cmp-table th, .cmp-table td { padding: 1rem; border-bottom: 1px solid var(--bz-line); vertical-align: top; text-align: right; font-size: .86rem; }
.cmp-table tbody th { width: 170px; color: var(--bz-muted); font-weight: 700; font-size: .8rem; background: var(--bz-canvas); }
.cmp-table thead th { position: relative; background: linear-gradient(180deg, #f6f9ff, #fff); }
.cmp-table thead th:first-child { width: 170px; }
.cmp-biz { display: flex; flex-direction: column; align-items: center; gap: .4rem; text-align: center; color: var(--bz-ink); }
.cmp-biz strong { font-size: 1rem; }
.cmp-biz small { color: var(--bz-muted); }
.cmp-logo { width: 64px; height: 64px; border-radius: 18px; overflow: hidden; background: var(--bz-blue-soft); color: var(--bz-blue); display: grid; place-items: center; font-size: 1.6rem; box-shadow: var(--bz-shadow); }
.cmp-logo img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.cmp-remove { position: absolute; top: .6rem; left: .6rem; width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--bz-line); background: #fff; cursor: pointer; color: var(--bz-muted); }
.cmp-table td.is-best { background: #f3fbf6; }
.cmp-best { display: inline-block; margin-top: .35rem; font-size: .68rem; font-weight: 800; color: #12784a; background: #d9f3e5; padding: .1rem .5rem; border-radius: 6px; }
.cmp-hours { list-style: none; margin: 0; padding: 0; font-size: .78rem; }
.cmp-hours li { display: flex; justify-content: space-between; gap: .5rem; padding: .12rem .3rem; border-radius: 6px; }
.cmp-hours li.is-today { background: var(--bz-blue-soft); color: var(--bz-blue); font-weight: 700; }
.cmp-hours b { font-weight: 600; }
.cmp-social a { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--bz-canvas); margin-inline-end: .25rem; color: var(--bz-ink-soft); }
.cmp-tag { display: inline-flex; align-items: center; gap: .3rem; font-size: .74rem; padding: .2rem .55rem; border-radius: 8px; background: var(--bz-canvas); margin: 0 0 .3rem .3rem; }
.cmp-tag.ok { background: #e3f7ec; color: #12784a; } .cmp-tag.gold { background: #fff4d6; color: #8a5a00; }
.cmp-actions td { border-bottom: 0; }
.cmp-actions .bz-btn { width: 100%; margin-bottom: .4rem; }
.cmp-empty { text-align: center; max-width: 520px; margin: 2rem auto; background: #fff; border: 1px solid var(--bz-line); border-radius: 22px; padding: 2.4rem 2rem; box-shadow: var(--bz-shadow); }
.cmp-empty > i { font-size: 2.4rem; color: var(--bz-blue); }

/* قدرت ویترین (داشبورد صاحب کسب‌وکار) */
.vstrength { display: flex; gap: 1rem; align-items: flex-start; margin: 1rem 0; padding: 1rem 1.1rem; border-radius: 16px; background: linear-gradient(135deg, #f4f8ff, #fff); border: 1px solid #dbe6ff; }
.vs-ring { --p: 0; --c: #e5484d; width: 64px; height: 64px; border-radius: 50%; flex-shrink: 0; display: grid; place-items: center; background: conic-gradient(var(--c) calc(var(--p) * 1%), #e8edf6 0); }
.vs-ring[data-level=ok] { --c: #e0a800; } .vs-ring[data-level=good] { --c: #16a34a; }
.vs-ring span { width: 50px; height: 50px; border-radius: 50%; background: #fff; display: grid; place-items: center; font-weight: 800; }
.vs-body strong { display: block; margin-bottom: .2rem; }
.vs-body p { margin: 0 0 .5rem; font-size: .8rem; color: var(--bz-muted); }
.vs-body ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; }
.vs-body li { font-size: .8rem; display: flex; flex-direction: column; }
.vs-body li a { font-weight: 700; }
.vs-body li small { color: #16a34a; font-weight: 800; }
.vs-body li span { color: var(--bz-muted); font-size: .74rem; }
@media (prefers-reduced-motion: reduce) { .smart-status.is-open .ss-dot, .bz-sheet, .bz-sheet-box, .cmp-tray { animation: none; } }
.cmp-page { padding-bottom: 6rem; }

/* ---------- جستجوی هوشمند ---------- */
.ss-banner { display: flex; align-items: center; gap: .8rem; flex-wrap: wrap; margin: .4rem 0 1.2rem; padding: .8rem 1rem; border-radius: 14px; background: linear-gradient(135deg, #eef4ff, #f8faff); border: 1px solid #d6e3ff; font-size: .88rem; }
.ss-banner-icon { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; background: var(--bz-blue); color: #fff; flex-shrink: 0; }
.ss-banner > div { flex: 1; min-width: 200px; }
.ss-banner b { color: var(--bz-blue-dark); }
.ss-banner small { color: var(--bz-muted); }
.ss-banner a { font-size: .8rem; font-weight: 700; white-space: nowrap; }
.dist-chip { display: inline-flex; align-items: center; gap: .3rem; font-size: .74rem; font-weight: 700; padding: .2rem .6rem; border-radius: 999px; background: var(--bz-blue-soft); color: var(--bz-blue); }
.ss-drop { position: absolute; z-index: 600; top: calc(100% + 8px); inset-inline: 0; min-width: 300px; background: #fff; border: 1px solid var(--bz-line); border-radius: 16px; box-shadow: 0 24px 50px -16px rgba(15, 40, 110, .35); padding: .35rem; text-align: right; animation: bzUp .16s ease; }
.ss-item { display: flex; align-items: center; gap: .7rem; padding: .55rem .65rem; border-radius: 11px; color: var(--bz-ink); }
.ss-item:hover, .ss-item.is-sel { background: var(--bz-canvas); color: var(--bz-ink); }
.ss-item > i, .ss-item > img { width: 36px; height: 36px; border-radius: 10px; flex-shrink: 0; display: grid; place-items: center; background: var(--bz-blue-soft); color: var(--bz-blue); object-fit: contain; font-size: .9rem; }
.ss-item.ss-intent > i { background: linear-gradient(135deg, #52b6ff, #1463ff); color: #fff; }
.ss-item span { display: flex; flex-direction: column; min-width: 0; }
.ss-item strong { font-size: .88rem; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ss-item small { font-size: .74rem; color: var(--bz-muted); }
.ss-intent strong { color: var(--bz-blue-dark); }
/* خلاصه هوشمند نظرات */
.sn-summary { display: flex; gap: 1.2rem; align-items: center; padding: 1.1rem 1.2rem; margin-bottom: 1.2rem; border-radius: 18px; background: linear-gradient(135deg, #f4f8ff, #fff); border: 1px solid #dbe6ff; }
.sn-gauge { --p: 0; width: 92px; height: 92px; border-radius: 50%; flex-shrink: 0; display: grid; place-items: center; align-content: center; background: radial-gradient(closest-side, #fff 78%, transparent 80% 100%), conic-gradient(#16a34a calc(var(--p) * 1%), #e8edf6 0); }
.sn-gauge span { font-size: 1.25rem; font-weight: 800; line-height: 1.1; }
.sn-gauge small { font-size: .7rem; color: var(--bz-muted); }
.sn-body strong { display: block; margin-bottom: .45rem; }
.sn-body strong i { color: var(--bz-blue); }
.sn-body p { margin: .25rem 0; display: flex; flex-wrap: wrap; gap: .35rem; align-items: center; font-size: .82rem; }
.sn-k { color: var(--bz-muted); }
.sn-tag { display: inline-flex; align-items: center; gap: .3rem; font-size: .76rem; font-weight: 700; padding: .2rem .6rem; border-radius: 999px; }
.sn-tag.pos { background: #e3f7ec; color: #12784a; } .sn-tag.neg { background: #fff4d6; color: #8a5a00; }
@media (max-width: 560px) { .sn-summary { flex-direction: column; text-align: center; } .sn-body p { justify-content: center; } }

/* ---------- هوش بازار ---------- */
.ins-page { max-width: 1080px; margin: 0 auto; }
.ins-hero { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.5rem 1.7rem; border-radius: 22px; color: #fff; margin-bottom: 1.2rem;
    background: radial-gradient(360px 220px at 0% 100%, rgba(82, 182, 255, .4), transparent 70%), linear-gradient(120deg, #06164a, #0b2378 55%, #1463ff); box-shadow: 0 18px 40px -14px rgba(6, 22, 74, .5); }
.ins-hero small { opacity: .75; font-size: .78rem; }
.ins-hero h1 { margin: .2rem 0; font-size: 1.5rem; }
.ins-hero p { margin: 0; opacity: .85; font-size: .9rem; }
.ins-rank { text-align: center; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .2); border-radius: 18px; padding: .8rem 1.4rem; }
.ins-rank span, .ins-rank small { display: block; font-size: .75rem; opacity: .8; }
.ins-rank strong { font-size: 2.4rem; line-height: 1.2; }
.ins-card { background: #fff; border: 1px solid var(--bz-line); border-radius: 20px; padding: 1.3rem 1.4rem; margin-bottom: 1.2rem; box-shadow: var(--bz-shadow); }
.ins-card h2 { font-size: 1.05rem; margin: 0 0 1rem; }
.ins-card h2 i { color: var(--bz-blue); margin-inline-end: .35rem; }
.ins-tips { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
.ins-tips li { display: flex; gap: .8rem; padding: .85rem 1rem; border-radius: 14px; background: #fffbf0; border: 1px solid #f5e3b0; }
.ins-tips li > span { width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: #fff4d6; color: #b07400; flex-shrink: 0; }
.ins-tips strong { font-size: .9rem; }
.ins-tips p { margin: .2rem 0 0; font-size: .82rem; color: var(--bz-ink-soft); line-height: 1.9; }
.ins-row { display: grid; grid-template-columns: 190px 1fr 34px; gap: 1rem; align-items: center; padding: .7rem 0; border-top: 1px solid var(--bz-line); }
.ins-row:first-of-type { border-top: 0; }
.ins-label { font-size: .85rem; font-weight: 700; }
.ins-bars div { display: flex; align-items: center; gap: .5rem; font-size: .8rem; margin: .15rem 0; }
.ins-bars i { height: 10px; border-radius: 6px; background: #d5dcea; min-width: 4px; max-width: 60%; flex-shrink: 0; }
.ins-bars i.me { background: linear-gradient(90deg, #52b6ff, #1463ff); }
.ins-bars small { color: var(--bz-muted); }
.ins-verdict { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; font-size: .75rem; }
.ins-verdict.up { background: #e3f7ec; color: #12784a; } .ins-verdict.down { background: #fde8e6; color: #b42318; }
.ins-heat-wrap { overflow-x: auto; }
.ins-heat { border-collapse: separate; border-spacing: 3px; width: 100%; min-width: 620px; }
.ins-heat th { font-size: .7rem; color: var(--bz-muted); font-weight: 600; text-align: right; padding: 0 .3rem; white-space: nowrap; }
.ins-heat td { height: 26px; border-radius: 5px; background: rgba(20, 99, 255, calc(.06 + var(--a) * .9)); position: relative; }
.ins-heat td.is-closed { outline: 2px solid #f59e0b; outline-offset: -2px; }
.ins-legend { font-size: .78rem; color: var(--bz-muted); display: flex; align-items: center; gap: .4rem; }
.is-closed-key { display: inline-block; width: 16px; height: 12px; border-radius: 3px; outline: 2px solid #f59e0b; outline-offset: -2px; background: rgba(20, 99, 255, .5); }
@media (max-width: 640px) { .ins-hero { flex-direction: column; align-items: flex-start; } .ins-row { grid-template-columns: 1fr 34px; } .ins-label { grid-column: 1 / -1; } }

/* ============================================================
   صفحه اصلی — جلوه‌های تازه
   ============================================================ */
/* هاله‌های نور متحرک در هیرو */
.bz-hero { position: relative; overflow: hidden; isolation: isolate; }
.bz-hero::before, .bz-hero::after {
    content: ''; position: absolute; z-index: -1; border-radius: 50%; filter: blur(70px); opacity: .55; pointer-events: none;
}
.bz-hero::before { width: 520px; height: 520px; top: -180px; right: -120px; background: radial-gradient(circle, #3b8cff, transparent 65%); animation: bzOrb 18s ease-in-out infinite; }
.bz-hero::after { width: 460px; height: 460px; bottom: -220px; left: 18%; background: radial-gradient(circle, #6e5bff, transparent 65%); animation: bzOrb 22s ease-in-out -7s infinite reverse; }
@keyframes bzOrb { 0%, 100% { transform: translate(0, 0) scale(1); } 50% { transform: translate(-60px, 40px) scale(1.15); } }

/* نشان جستجوی هوشمند و جعبه جستجوی درخشان */
.bz-smart-badge {
    display: inline-flex; align-items: center; gap: .45rem; margin-bottom: .8rem; padding: .38rem .9rem; border-radius: 999px; font-size: .8rem; font-weight: 700;
    color: #dbeaff; background: rgba(255, 255, 255, .08); border: 1px solid rgba(124, 200, 255, .35); backdrop-filter: blur(6px);
}
.bz-smart-badge i { color: #7cc8ff; animation: bzSpark 2.6s ease-in-out infinite; }
@keyframes bzSpark { 0%, 100% { transform: rotate(0) scale(1); } 50% { transform: rotate(-12deg) scale(1.18); } }
.bz-search { box-shadow: 0 0 0 1px rgba(124, 200, 255, .25), 0 22px 50px -18px rgba(0, 10, 50, .65), 0 0 60px -10px rgba(82, 182, 255, .45); transition: box-shadow .25s ease; }
.bz-search:focus-within { box-shadow: 0 0 0 3px rgba(124, 200, 255, .55), 0 26px 60px -18px rgba(0, 10, 50, .7), 0 0 80px -6px rgba(82, 182, 255, .6); }
.bz-try { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; margin-top: 1rem; font-size: .8rem; }
.bz-try span { color: rgba(255, 255, 255, .6); }
.bz-try a {
    padding: .32rem .8rem; border-radius: 999px; color: #fff; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .18);
    transition: background .15s ease, transform .15s ease;
}
.bz-try a:hover { background: rgba(255, 255, 255, .2); color: #fff; transform: translateY(-1px); }
.bz-try a:last-child { direction: ltr; font-family: system-ui, sans-serif; }

/* کارت‌های دسته با رنگ اختصاصی هر دسته */
.bz-cat-card:not(.is-all) { background: linear-gradient(180deg, hsl(var(--ch, 220) 90% 97%), #fff 60%); border-color: hsl(var(--ch, 220) 60% 90%); }
.bz-cat-card:not(.is-all) .bz-cat-icon {
    background: linear-gradient(135deg, hsl(var(--ch, 220) 85% 62%), hsl(calc(var(--ch, 220) + 30) 80% 50%)); color: #fff;
    box-shadow: 0 10px 22px -10px hsl(var(--ch, 220) 70% 45% / .7);
}
.bz-cat-card:not(.is-all):hover { border-color: hsl(var(--ch, 220) 60% 78%); }
.bz-cat-card:not(.is-all) .bz-cat-btn { background: hsl(var(--ch, 220) 85% 95%); color: hsl(var(--ch, 220) 70% 38%); }
.bz-cat-card:not(.is-all) .bz-cat-btn:hover { background: hsl(var(--ch, 220) 75% 50%); color: #fff; }

/* ============================================================
   آگهی بنر صفحه اصلی — سبک «ممتاز روشن» با حاشیه گرادیانی چرخان
   ============================================================ */
@property --adx-angle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
.bz-ad-slot .adx-banner, .bz-ad-slot .adx-banner.adx-noimg {
    color: var(--bz-ink); border: 0;
    background:
        radial-gradient(420px 220px at 100% 0%, rgba(82, 182, 255, .16), transparent 70%),
        radial-gradient(380px 220px at 0% 100%, rgba(245, 179, 1, .12), transparent 70%), #fff;
    box-shadow: 0 2px 6px rgba(15, 30, 70, .05), 0 24px 50px -20px rgba(15, 40, 110, .3);
}
.bz-ad-slot .adx-banner::before {
    opacity: 1; padding: 2px; animation: adxSpinBorder 8s linear infinite;
    background: conic-gradient(from var(--adx-angle), #52b6ff, #1463ff, #8b5cf6, #f5b301, #52b6ff);
}
@keyframes adxSpinBorder { to { --adx-angle: 360deg; } }
.bz-ad-slot .adx-banner .adx-title { color: var(--bz-ink); font-size: 1.4rem; }
.bz-ad-slot .adx-banner .adx-desc { color: var(--bz-ink-soft); }
.bz-ad-slot .adx-banner .adx-brand-name { color: var(--bz-ink-soft); }
.bz-ad-slot .adx-banner .adx-logo { background: var(--bz-blue-soft); }
.bz-ad-slot .adx-banner .adx-verified { color: var(--bz-blue); }
.bz-ad-slot .adx-banner .adx-meta, .bz-ad-slot .adx-banner .adx-meta span { color: var(--bz-muted); }
.bz-ad-slot .adx-banner .adx-rating { color: var(--bz-ink); }
.bz-ad-slot .adx-banner .adx-cta { background: linear-gradient(135deg, #2a72ff, #1463ff 60%, #6e5bff); color: #fff; box-shadow: 0 12px 24px -10px rgba(20, 99, 255, .7); padding: .7rem 1.3rem; }
.bz-ad-slot .adx-banner:hover .adx-cta { filter: brightness(1.08); }
.bz-ad-slot .adx-banner .adx-media { box-shadow: 0 18px 36px -14px rgba(15, 40, 110, .45); }
.bz-ad-slot .adx-banner .adx-visual { background: radial-gradient(circle at 30% 25%, hsl(var(--adx-h, 220) 90% 92%), transparent 55%), hsl(var(--adx-h, 220) 60% 96%); border: 0; }
.bz-ad-slot .adx-banner .adx-shine::after { background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .55), transparent); }
/* برچسب آگهی درخشان */
.adx-tag { position: relative; overflow: hidden; }
.adx-tag::after { content: ''; position: absolute; inset: 0; background: linear-gradient(100deg, transparent 30%, rgba(255, 255, 255, .7) 50%, transparent 70%); transform: translateX(-120%); animation: adxTagShine 4s ease-in-out infinite; }
@keyframes adxTagShine { 60%, 100% { transform: translateX(120%); } }

@media (prefers-reduced-motion: reduce) {
    .bz-hero::before, .bz-hero::after, .bz-smart-badge i, .bz-ad-slot .adx-banner::before, .adx-tag::after { animation: none; }
}

/* ============================================================
   صفحه کسب‌وکار — نسخه گسترش‌یافته
   ============================================================ */
/* کاور موزاییکی */
.biz-cover.is-mosaic { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 150px 150px; gap: 6px; height: auto; position: relative; }
.biz-mosaic-item { position: relative; display: block; overflow: hidden; background: var(--bz-blue-soft); }
.biz-mosaic-item.is-main { grid-row: 1 / 3; }
.biz-mosaic-item .fit-frame { height: 100%; transition: transform .4s ease; }
.biz-mosaic-item:hover .fit-frame { transform: scale(1.04); }
.biz-mosaic-more { position: absolute; bottom: 64px; left: 14px; z-index: 2; display: inline-flex; align-items: center; gap: .4rem; padding: .5rem .9rem; border-radius: 12px; background: rgba(255, 255, 255, .92); color: var(--bz-ink); font-weight: 700; font-size: .82rem; box-shadow: var(--bz-shadow); backdrop-filter: blur(6px); }
.biz-cover-fallback { display: grid; place-items: center; }
.biz-cover-emblem { font-size: 4rem; color: rgba(255, 255, 255, .14); transform: translateY(-14px); }
@media (max-width: 760px) {
    .biz-cover.is-mosaic { grid-template-columns: 1fr 1fr; grid-template-rows: 180px 90px; }
    .biz-mosaic-item.is-main { grid-column: 1 / 3; grid-row: 1; }
    .biz-mosaic-item:nth-child(n+4) { display: none; }
}

/* نوار اطلاعات کلیدی */
.biz-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .6rem; margin-top: 1rem; }
.biz-fact { display: flex; gap: .65rem; align-items: flex-start; padding: .75rem .85rem; border-radius: 14px; background: var(--bz-canvas); border: 1px solid var(--bz-line); }
.bf-icon { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; background: #fff; color: var(--bz-blue); flex-shrink: 0; box-shadow: 0 2px 6px rgba(15, 40, 110, .08); }
.biz-fact small { display: block; font-size: .7rem; color: var(--bz-muted); }
.biz-fact b { font-size: .88rem; display: block; }
.biz-fact em { display: block; font-style: normal; font-size: .72rem; color: var(--bz-muted); margin-top: .1rem; }
.biz-fact .smart-status { margin-top: .1rem; font-size: .74rem; }
.bf-link { border: 0; background: none; color: var(--bz-blue); font-family: inherit; font-weight: 700; font-size: .74rem; padding: 0; cursor: pointer; }

/* جدول زمانی ساعات کاری */
.hours-head { margin-bottom: .8rem; }
.hours-timeline { --now: 50; position: relative; }
.ht-scale { position: relative; height: 20px; margin-inline-start: 110px; margin-inline-end: 120px; }
.ht-scale b { position: absolute; top: 0; inset-inline-start: calc(var(--x) * 1%); transform: translateX(50%); font-size: .68rem; color: var(--bz-muted); font-weight: 600; }
.ht-row { display: grid; grid-template-columns: 110px 1fr 120px; align-items: center; gap: 0; padding: .35rem 0; border-radius: 10px; }
.ht-row.is-today { background: var(--bz-blue-soft); }
.ht-day { font-size: .85rem; font-weight: 700; padding-inline-start: .6rem; }
.ht-day small { font-size: .65rem; color: var(--bz-blue); background: #fff; padding: .05rem .4rem; border-radius: 5px; margin-inline-start: .2rem; }
.ht-track { position: relative; height: 12px; border-radius: 6px; background: repeating-linear-gradient(90deg, #eef2f8 0 calc(25% - 1px), #e2e8f2 calc(25% - 1px) 25%); }
.ht-track i { position: absolute; top: 0; bottom: 0; inset-inline-start: calc(var(--s) * 1%); width: calc((var(--e) - var(--s)) * 1%); border-radius: 6px; background: linear-gradient(90deg, #52b6ff, #1463ff); }
.ht-now { position: absolute; top: -5px; bottom: -5px; width: 2px; inset-inline-start: calc(var(--now) * 1%); background: #e5484d; border-radius: 2px; }
.ht-now::after { content: ''; position: absolute; top: -4px; left: -3px; width: 8px; height: 8px; border-radius: 50%; background: #e5484d; }
.ht-text { font-size: .8rem; text-align: center; color: var(--bz-ink-soft); direction: rtl; }
@media (max-width: 560px) { .ht-row { grid-template-columns: 70px 1fr 92px; } .ht-scale { margin-inline-start: 70px; margin-inline-end: 92px; } .ht-text { font-size: .7rem; } }

/* توزیع امتیازها */
.rating-board { display: flex; gap: 1.4rem; align-items: center; padding: 1.1rem 1.2rem; margin-bottom: 1rem; border-radius: 18px; border: 1px solid var(--bz-line); background: #fff; }
.rb-score { text-align: center; min-width: 110px; }
.rb-score strong { display: block; font-size: 2.6rem; font-weight: 800; line-height: 1.1; }
.rb-score small { display: block; color: var(--bz-muted); font-size: .75rem; margin-top: .2rem; }
.rb-bars { flex: 1; display: grid; gap: .3rem; }
.rb-row { display: grid; grid-template-columns: 44px 1fr 40px; align-items: center; gap: .6rem; font-size: .78rem; }
.rb-row i.fa-star { color: var(--bz-star); font-size: .7rem; }
.rb-track { height: 8px; border-radius: 5px; background: #eef2f8; overflow: hidden; }
.rb-track i { display: block; height: 100%; border-radius: 5px; background: linear-gradient(90deg, #ffd25a, #f5b301); }
.rb-pc { color: var(--bz-muted); text-align: left; }

/* در یک نگاه */
.biz-glance { margin-top: 1rem; padding: 1.1rem 1.2rem; border-radius: 20px; background: #fff; border: 1px solid var(--bz-line); box-shadow: var(--bz-shadow); }
.biz-glance h3 { margin: 0 0 .6rem; font-size: .95rem; }
.biz-glance ul { list-style: none; margin: 0; padding: 0; }
.biz-glance li { display: flex; align-items: center; gap: .6rem; padding: .5rem 0; border-bottom: 1px solid var(--bz-line); font-size: .82rem; }
.biz-glance li:last-child { border-bottom: 0; }
.biz-glance li i { width: 18px; color: var(--bz-blue); }
.biz-glance li span { color: var(--bz-muted); }
.biz-glance li b { margin-inline-start: auto; font-weight: 700; }
.g-ok { color: #12784a; }

/* اطراف این کسب‌وکار */
.biz-around, .biz-posts, .biz-faq { margin-top: 2.4rem; }
.biz-around .section-head small { margin-inline-start: .6rem; }
.around-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: .7rem; }
.around-card { display: flex; align-items: center; gap: .7rem; padding: .75rem .85rem; border-radius: 16px; background: #fff; border: 1px solid var(--bz-line); color: var(--bz-ink); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.around-card:hover { color: var(--bz-ink); transform: translateY(-2px); box-shadow: var(--bz-shadow-lg); border-color: hsl(var(--ch) 60% 82%); }
.ac-icon { width: 46px; height: 46px; border-radius: 13px; display: grid; place-items: center; flex-shrink: 0; overflow: hidden;
    background: linear-gradient(135deg, hsl(var(--ch) 85% 62%), hsl(calc(var(--ch) + 30) 80% 50%)); color: #fff; font-size: 1.1rem; }
.ac-icon img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.ac-body { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.ac-body strong { font-size: .86rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ac-body small { font-size: .72rem; color: var(--bz-muted); }
.ac-dist { font-size: .72rem; font-weight: 700; color: var(--bz-blue); background: var(--bz-blue-soft); padding: .15rem .5rem; border-radius: 999px; white-space: nowrap; }

/* مقالات مرتبط */
.biz-posts-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .9rem; }
.bp-card { display: flex; flex-direction: column; gap: .6rem; padding: .6rem; border-radius: 18px; background: #fff; border: 1px solid var(--bz-line); color: var(--bz-ink); transition: transform .2s ease, box-shadow .2s ease; }
.bp-card:hover { color: var(--bz-ink); transform: translateY(-3px); box-shadow: var(--bz-shadow-lg); }
.bp-media { display: grid; place-items: center; aspect-ratio: 16 / 9; border-radius: 13px; overflow: hidden; background: var(--bz-blue-soft); color: var(--bz-blue); font-size: 1.6rem; }
.bp-card strong { font-size: .88rem; line-height: 1.8; padding: 0 .3rem .3rem; }
@media (max-width: 760px) { .biz-posts-grid { grid-template-columns: 1fr; } }

/* سوالات متداول */
.biz-faq details { background: #fff; border: 1px solid var(--bz-line); border-radius: 14px; margin-bottom: .55rem; overflow: hidden; }
.biz-faq summary { cursor: pointer; padding: .9rem 1.1rem; font-weight: 700; font-size: .9rem; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.biz-faq summary::-webkit-details-marker { display: none; }
.biz-faq summary::after { content: '+'; font-size: 1.2rem; color: var(--bz-blue); transition: transform .2s ease; }
.biz-faq details[open] summary::after { transform: rotate(45deg); }
.biz-faq p { margin: 0; padding: 0 1.1rem 1rem; color: var(--bz-ink-soft); font-size: .86rem; line-height: 2; }
/* موزاییک بر اساس تعداد تصاویر (بدون خانه خالی) */
.biz-cover.is-mosaic { margin-bottom: 1.2rem; border-radius: 22px; overflow: hidden; }
.biz-cover.mosaic-n3 { grid-template-columns: 2fr 1fr; }
.biz-cover.mosaic-n4 .biz-mosaic-item:nth-child(4) { grid-column: 2 / 4; }
.biz-cover.is-mosaic .biz-mosaic-more { bottom: 14px; }
@media (max-width: 760px) {
    .biz-cover.mosaic-n3, .biz-cover.mosaic-n4, .biz-cover.mosaic-n5 { grid-template-columns: 1fr 1fr; }
    .biz-cover.mosaic-n4 .biz-mosaic-item:nth-child(4) { grid-column: auto; }
}
/* هویت کسب‌وکار: لوگو کنار نام (نه شناور روی کاور) */
.biz-identity { align-items: flex-start; }
.biz-identity .biz-avatar, .biz-identity .biz-avatar-placeholder { margin-top: 0 !important; width: 84px; height: 84px; flex-shrink: 0; }
.biz-identity-text { padding-top: 0 !important; }
.biz-identity-card { padding-top: 1.4rem; }
@media (max-width: 600px) { .biz-identity .biz-avatar, .biz-identity .biz-avatar-placeholder { width: 64px; height: 64px; } }

/* ============================================================
   صفحه کلمه کلیدی / فهرست: سربرگ با آمار
   ============================================================ */
.kw-hero { position: relative; overflow: hidden; display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; flex-wrap: wrap;
    padding: 1.6rem 1.8rem; margin-bottom: 1.4rem; border-radius: 24px; color: #fff;
    background: radial-gradient(420px 260px at 0% 100%, rgba(82, 182, 255, .35), transparent 70%), radial-gradient(360px 220px at 100% 0%, rgba(110, 91, 255, .35), transparent 70%), linear-gradient(120deg, #06164a, #0b2378 55%, #1453d8);
    box-shadow: 0 20px 44px -18px rgba(6, 22, 74, .55); }
.kw-hero::after { content: ''; position: absolute; inset: 0; background-image: radial-gradient(rgba(255, 255, 255, .12) 1px, transparent 1px); background-size: 22px 22px; mask-image: linear-gradient(90deg, transparent, #000 60%); pointer-events: none; }
.kw-hero-text { flex: 1 1 420px; position: relative; z-index: 1; }
.kw-eyebrow { display: inline-flex; align-items: center; gap: .35rem; font-size: .76rem; font-weight: 700; padding: .25rem .7rem; border-radius: 999px; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .18); }
.kw-hero h1 { color: #fff; margin: .55rem 0 .4rem; font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.6; }
.kw-intro { margin: 0 0 .9rem; font-size: .9rem; line-height: 2; color: rgba(255, 255, 255, .82); max-width: 62ch; }
.kw-chips { display: flex; flex-wrap: wrap; gap: .45rem; }
.kw-chips a { display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .9rem; border-radius: 999px; font-size: .82rem; font-weight: 700; color: #fff; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .22); transition: background .15s ease, transform .15s ease; }
.kw-chips a:hover { color: #fff; background: rgba(255, 255, 255, .2); transform: translateY(-1px); }
.kw-chips a.on { background: #fff; color: var(--bz-blue); }
.kw-stats { display: grid; grid-template-columns: repeat(3, auto); gap: .6rem; position: relative; z-index: 1; }
.kw-stats div { text-align: center; padding: .8rem 1rem; border-radius: 16px; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .16); backdrop-filter: blur(6px); min-width: 96px; }
.kw-stats strong { display: block; font-size: 1.6rem; font-weight: 800; line-height: 1.3; }
.kw-stats span { font-size: .74rem; opacity: .8; }
.kw-faq { margin-top: 2rem; }
@media (max-width: 640px) { .kw-hero { padding: 1.3rem 1.2rem; } .kw-stats { width: 100%; grid-template-columns: repeat(3, 1fr); } .kw-stats div { min-width: 0; padding: .6rem .4rem; } }

/* ============================================================
   مقاله: ابزار مطالعه، بازخورد، مقاله قبلی/بعدی
   ============================================================ */
.mza-tools { display: flex; justify-content: center; flex-wrap: wrap; gap: .45rem; margin-top: 1rem; }
.mza-tools button { display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .9rem; border-radius: 999px; border: 1px solid var(--bz-line); background: #fff; color: var(--bz-ink-soft); font-family: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; transition: all .15s ease; }
.mza-tools button:hover { border-color: var(--bz-blue); color: var(--bz-blue); }
.mza-tools button.on { background: var(--bz-blue); border-color: var(--bz-blue); color: #fff; }
.mza-font { display: inline-flex; border: 1px solid var(--bz-line); border-radius: 999px; overflow: hidden; background: #fff; }
.mza-font button { border: 0 !important; border-radius: 0 !important; padding: .45rem .75rem !important; font-size: .9rem !important; }
.mza-font button + button { border-inline-start: 1px solid var(--bz-line) !important; font-size: 1.05rem !important; }
.mza-font small { font-size: .7rem; margin-inline-start: 1px; }
.mza-left { position: fixed; z-index: 901; top: 10px; left: 14px; padding: .25rem .7rem; border-radius: 999px; background: rgba(15, 27, 61, .82); color: #fff; font-size: .72rem; font-weight: 700; backdrop-filter: blur(6px); }
.mza-body h2[id], .mza-body h3[id] { position: relative; }
.mza-anchor { display: inline-grid; place-items: center; width: 28px; height: 28px; margin-inline-start: .5rem; border-radius: 8px; font-size: .75rem; color: var(--bz-muted); opacity: 0; transition: opacity .15s ease, background .15s ease; vertical-align: middle; text-decoration: none !important; }
.mza-body h2:hover .mza-anchor, .mza-body h3:hover .mza-anchor, .mza-anchor:focus { opacity: 1; background: var(--bz-canvas); }
.mza-anchor.copied { opacity: 1; background: #e3f7ec; color: #12784a; }
.mza-helpful { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .8rem 1rem; margin-top: 2.4rem; padding: 1.1rem 1.2rem; border-radius: 18px; background: linear-gradient(135deg, #f4f8ff, #fff); border: 1px solid #dbe6ff; scroll-margin-top: 100px; }
.mza-helpful strong { font-size: .95rem; }
.mza-helpful form { display: flex; gap: .4rem; margin: 0; }
.mza-helpful button { display: inline-flex; align-items: center; gap: .35rem; padding: .5rem 1rem; border-radius: 12px; border: 1px solid var(--bz-line); background: #fff; font-family: inherit; font-weight: 700; font-size: .84rem; cursor: pointer; color: var(--bz-ink-soft); transition: all .15s ease; }
.mza-helpful button:hover { border-color: var(--bz-blue); color: var(--bz-blue); }
.mza-helpful button.on { background: var(--bz-blue); color: #fff; border-color: var(--bz-blue); }
.mza-helpful-stat { width: 100%; text-align: center; font-size: .78rem; color: var(--bz-muted); }
.mza-helpful-stat:empty { display: none; }
.mza-adjacent { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; margin-top: 2rem; }
.mza-adjacent a { display: flex; flex-direction: column; gap: .3rem; padding: 1rem 1.1rem; border-radius: 16px; border: 1px solid var(--bz-line); background: #fff; color: var(--bz-ink); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.mza-adjacent a:hover { color: var(--bz-ink); transform: translateY(-2px); box-shadow: var(--bz-shadow-lg); border-color: #cfdcf5; }
.mza-adjacent .is-next { text-align: left; }
.mza-adjacent small { font-size: .74rem; color: var(--bz-blue); font-weight: 700; }
.mza-adjacent strong { font-size: .9rem; line-height: 1.8; }
@media (max-width: 640px) { .mza-adjacent { grid-template-columns: 1fr; } .mza-adjacent .is-next { text-align: right; } }

/* مجله: مرتب‌سازی و «مقالات من» */
.mz-sort { display: inline-flex; gap: .2rem; padding: .25rem; border-radius: 12px; background: var(--bz-canvas); margin-bottom: 1rem; }
.mz-sort a { display: inline-flex; align-items: center; gap: .35rem; padding: .45rem .9rem; border-radius: 9px; font-size: .82rem; font-weight: 700; color: var(--bz-muted); }
.mz-sort a:hover { color: var(--bz-ink); }
.mz-sort a.on { background: #fff; color: var(--bz-blue); box-shadow: 0 1px 4px rgba(15, 40, 110, .1); }
.mz-mine { margin: 0 0 1.6rem; padding: 1rem 1.1rem; border-radius: 20px; background: #fff; border: 1px solid var(--bz-line); box-shadow: var(--bz-shadow); }
.mz-mine-tabs { display: flex; gap: .4rem; margin-bottom: .8rem; }
.mz-mine-tabs button { display: inline-flex; align-items: center; gap: .4rem; border: 0; background: none; font-family: inherit; font-weight: 700; font-size: .85rem; color: var(--bz-muted); padding: .35rem .7rem; border-radius: 9px; cursor: pointer; }
.mz-mine-tabs button.on { background: var(--bz-blue-soft); color: var(--bz-blue); }
.mz-mine-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: .7rem; }
.mz-mine-card { display: flex; gap: .7rem; align-items: center; padding: .55rem; border-radius: 14px; border: 1px solid var(--bz-line); color: var(--bz-ink); transition: border-color .15s ease, transform .15s ease; }
.mz-mine-card:hover { color: var(--bz-ink); border-color: #cfdcf5; transform: translateY(-1px); }
.mz-mine-card img, .mz-mine-ph { width: 64px; height: 48px; border-radius: 10px; object-fit: cover; flex-shrink: 0; background: var(--bz-blue-soft); display: grid; place-items: center; color: var(--bz-blue); }
.mz-mine-card > span:last-child { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: .2rem; }
.mz-mine-card strong { font-size: .82rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mz-mine-card small { font-size: .7rem; color: var(--bz-muted); }
.mz-mine-bar { display: block; height: 4px; border-radius: 3px; background: #eef2f8; overflow: hidden; }
.mz-mine-bar b { display: block; height: 100%; background: linear-gradient(90deg, #52b6ff, #1463ff); }
html[data-theme="dark"] body.is-magazine :is(.mza-tools button, .mza-font, .mza-helpful button, .mza-adjacent a, .mz-mine, .mz-mine-card) { background: #0e1938; border-color: #2a3866; color: #cfd7ea; }
html[data-theme="dark"] body.is-magazine .mza-helpful { background: #111c38; border-color: #2a3866; }

/* ساعات شلوغی */
.busy { margin-bottom: 1.4rem; padding: 1rem 1.1rem; border-radius: 18px; background: #fff; border: 1px solid var(--bz-line); }
.busy-head { display: flex; justify-content: space-between; align-items: center; gap: .6rem; flex-wrap: wrap; margin-bottom: .7rem; }
.busy-head strong i { color: var(--bz-blue); margin-inline-end: .3rem; }
.busy-now { font-size: .78rem; font-weight: 700; color: #8a5a00; background: #fff4d6; padding: .2rem .6rem; border-radius: 999px; }
.busy-days { display: flex; gap: .25rem; flex-wrap: wrap; margin-bottom: .8rem; }
.busy-days button { border: 1px solid var(--bz-line); background: #fff; border-radius: 9px; padding: .3rem .65rem; font-family: inherit; font-size: .76rem; font-weight: 600; color: var(--bz-muted); cursor: pointer; }
.busy-days button.on { background: var(--bz-blue); border-color: var(--bz-blue); color: #fff; }
.busy-chart { display: flex; align-items: flex-end; gap: 4px; height: 110px; direction: ltr; padding-bottom: 18px; position: relative; }
.busy-bar { position: relative; flex: 1; height: calc(var(--v) * 100%); border-radius: 6px 6px 3px 3px; background: linear-gradient(180deg, #8cc4ff, #4b8fff); opacity: .75; transition: opacity .15s ease; }
.busy-bar:hover { opacity: 1; }
.busy-bar.is-now { background: linear-gradient(180deg, #ff9a7a, #e5484d); opacity: 1; }
.busy-bar em { position: absolute; bottom: -18px; left: 50%; transform: translateX(-50%); font-style: normal; font-size: .62rem; color: var(--bz-muted); }
.busy small { display: block; margin-top: .3rem; font-size: .72rem; }

/* ============================================================
   بیزی — انیمیشن‌های چهره (شناور، پلک، درخشش آنتن، صحبت)
   ============================================================ */
.bizi-svg { overflow: visible; }
.bizi-svg .bizi-eyes { transform-origin: 60px 56px; animation: biziBlink 5s infinite; }
.bizi-svg .bizi-bulb { animation: biziGlow 2.2s ease-in-out infinite; transform-origin: 60px 8px; }
.bizi-svg.is-talking .bizi-mouth { animation: biziTalk .35s ease-in-out infinite alternate; transform-origin: 60px 71px; }
.bizi-float { animation: biziFloat 4s ease-in-out infinite; }
@keyframes biziBlink { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(.1); } }
@keyframes biziGlow { 0%, 100% { opacity: 1; filter: drop-shadow(0 0 2px #f5b301); } 50% { opacity: .65; filter: drop-shadow(0 0 7px #ffd25a); } }
@keyframes biziTalk { from { transform: scaleY(1); } to { transform: scaleY(1.9); } }
@keyframes biziFloat { 0%, 100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-8px) rotate(2deg); } }
@media (prefers-reduced-motion: reduce) { .bizi-svg *, .bizi-float { animation: none !important; } }

/* بیزی در صفحه اصلی */
.bizi-home { display: flex; align-items: center; gap: 2rem; margin: 2.6rem 0; padding: 1.8rem 2.2rem; border-radius: 26px; position: relative; overflow: hidden;
    background: radial-gradient(420px 260px at 0% 100%, rgba(110, 91, 255, .14), transparent 70%), radial-gradient(380px 240px at 100% 0%, rgba(82, 182, 255, .18), transparent 70%), #fff;
    border: 1px solid #dbe6ff; box-shadow: 0 20px 44px -22px rgba(15, 40, 110, .35); }
.bizi-home-bot { position: relative; width: 150px; flex-shrink: 0; }
.bizi-home-bot .bizi-svg { width: 150px; height: 150px; filter: drop-shadow(0 16px 22px rgba(20, 99, 255, .35)); }
.bizi-shadow { position: absolute; bottom: -10px; left: 30%; width: 40%; height: 10px; border-radius: 50%; background: rgba(11, 33, 112, .15); filter: blur(4px); animation: biziShadow 4s ease-in-out infinite; }
@keyframes biziShadow { 0%, 100% { transform: scaleX(1); opacity: .8; } 50% { transform: scaleX(.75); opacity: .5; } }
.bizi-home-text { flex: 1; min-width: 0; }
.bizi-badge { display: inline-flex; align-items: center; gap: .35rem; font-size: .74rem; font-weight: 800; padding: .25rem .7rem; border-radius: 999px; color: #5b3df5; background: #efebff; }
.bizi-home h2 { margin: .5rem 0 .6rem; font-size: 1.5rem; }
.bizi-home h2 b { background: linear-gradient(90deg, #1463ff, #6e5bff); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bizi-bubble { position: relative; margin: 0 0 1rem; padding: .85rem 1.1rem; border-radius: 18px 18px 18px 6px; background: #f1f6ff; border: 1px solid #d6e3ff; font-size: .9rem; line-height: 2; max-width: 620px; transition: opacity .3s ease, transform .3s ease; }
.bizi-bubble.is-swap { opacity: 0; transform: translateY(4px); }
.bizi-asks { display: flex; flex-wrap: wrap; gap: .45rem; }
.bizi-asks button, .bizi-biz-ask button { border: 1px solid #cfdcf5; background: #fff; color: var(--bz-blue); border-radius: 999px; padding: .45rem .9rem; font-family: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; transition: all .15s ease; }
.bizi-asks button:hover, .bizi-biz-ask button:hover { background: var(--bz-blue); color: #fff; border-color: var(--bz-blue); transform: translateY(-1px); }
@media (max-width: 680px) { .bizi-home { flex-direction: column; text-align: center; padding: 1.5rem 1.2rem; gap: 1rem; } .bizi-home-bot, .bizi-home-bot .bizi-svg { width: 110px; height: 110px; } .bizi-asks { justify-content: center; } .bizi-bubble { border-radius: 18px; } }

/* «از بیزی بپرس» در صفحه کسب‌وکار */
.bizi-biz-ask { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem; margin-top: .9rem; font-size: .8rem; color: var(--bz-ink-soft); }
.bizi-mini { width: 28px; height: 28px; display: inline-block; }
.bizi-mini .bizi-svg { width: 100%; height: 100%; }
.bizi-biz-ask button { padding: .3rem .75rem; font-size: .76rem; }
.mza-bizi { display: flex; align-items: center; justify-content: center; gap: .45rem; margin: 2rem 0 0; font-size: .8rem; color: var(--bz-muted); }
.mza-bizi b { color: var(--bz-blue); }
.mz-h1 { font-size: .8rem; font-weight: 700; color: var(--bz-muted); margin: 0 0 .1rem; letter-spacing: .02em; }

/* ---------- مرکز راهنما ---------- */
.help-hero { text-align: center; padding: 2.2rem 1.4rem 1.6rem; margin-bottom: 1.6rem; border-radius: 26px; color: #fff; position: relative; overflow: hidden;
    background: radial-gradient(420px 260px at 0% 100%, rgba(110, 91, 255, .35), transparent 70%), radial-gradient(380px 240px at 100% 0%, rgba(82, 182, 255, .35), transparent 70%), linear-gradient(120deg, #06164a, #0b2378 55%, #1453d8); }
.help-bot .bizi-svg { width: 84px; height: 84px; filter: drop-shadow(0 12px 18px rgba(0, 0, 0, .3)); }
.help-hero h1 { color: #fff; margin: .4rem 0 .3rem; font-size: clamp(1.4rem, 3vw, 2rem); }
.help-hero p { margin: 0 0 1.1rem; opacity: .85; }
.help-search { position: relative; max-width: 560px; margin: 0 auto 1rem; }
.help-search i { position: absolute; top: 50%; right: 1.1rem; transform: translateY(-50%); color: #7b869c; }
.help-search input { width: 100%; box-sizing: border-box; padding: .95rem 2.8rem .95rem 1.1rem; border-radius: 16px; border: 0; font-family: inherit; font-size: 1rem; box-shadow: 0 16px 34px -14px rgba(0, 0, 0, .5); outline: none; }
.help-cats { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; }
.help-cats a { color: #fff; font-size: .8rem; font-weight: 700; padding: .4rem .85rem; border-radius: 999px; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .2); }
.help-cats a:hover { background: rgba(255, 255, 255, .22); color: #fff; }
.help-cats small { opacity: .7; }
.help-body { max-width: 860px; margin: 0 auto; }
.help-group { margin-bottom: 1.8rem; scroll-margin-top: 90px; }
.help-group h2 { font-size: 1.15rem; margin: 0 0 .7rem; }
.help-group h2 i { color: var(--bz-blue); margin-inline-end: .3rem; }
.help-item { background: #fff; border: 1px solid var(--bz-line); border-radius: 14px; margin-bottom: .5rem; transition: box-shadow .2s ease; }
.help-item[open] { box-shadow: var(--bz-shadow); }
.help-item summary { cursor: pointer; padding: .95rem 1.1rem; font-weight: 700; list-style: none; display: flex; justify-content: space-between; gap: 1rem; }
.help-item summary::-webkit-details-marker { display: none; }
.help-item summary::after { content: '+'; color: var(--bz-blue); font-size: 1.2rem; transition: transform .2s ease; }
.help-item[open] summary::after { transform: rotate(45deg); }
.help-a { padding: 0 1.1rem 1rem; line-height: 2.1; color: var(--bz-ink-soft); font-size: .92rem; }
.help-none { text-align: center; padding: 1.4rem; }
.help-more { display: flex; align-items: center; gap: 1rem; padding: 1.1rem 1.3rem; margin: 2rem 0; border-radius: 20px; background: linear-gradient(135deg, #f3efff, #eef4ff); border: 1px solid #ddd3ff; flex-wrap: wrap; }
.help-more .bizi-mini { width: 54px; height: 54px; }
.help-more > div { flex: 1; min-width: 220px; }
.help-more p { margin: .2rem 0 0; font-size: .86rem; color: var(--bz-ink-soft); }

/* ---------- حباب پیشنهاد بیزی و کارت «نتیجه‌ای پیدا نشد» ---------- */
.bizi-nudge { position: fixed; z-index: 949; left: 20px; bottom: 92px; max-width: 280px; display: flex; gap: .6rem; align-items: flex-start; padding: .8rem .9rem; border-radius: 18px 18px 18px 6px;
    background: #fff; box-shadow: 0 20px 44px -16px rgba(6, 22, 74, .45); border: 1px solid #dbe6ff; animation: bzUp .35s ease; font-size: .85rem; line-height: 1.8; cursor: pointer; }
.bizi-nudge .bizi-mini { width: 34px; height: 34px; flex-shrink: 0; }
.bizi-nudge button { position: absolute; top: -8px; right: -8px; width: 24px; height: 24px; border-radius: 50%; border: 0; background: #0f1b3d; color: #fff; cursor: pointer; font-size: .75rem; line-height: 1; }
@media (max-width: 760px) { .bizi-nudge { left: 12px; right: 12px; max-width: none; bottom: calc(150px + env(safe-area-inset-bottom)); } body:has(.biz-mobilebar) .bizi-nudge { bottom: calc(224px + env(safe-area-inset-bottom)); } }
.bizi-zero { display: flex; gap: 1rem; align-items: flex-start; padding: 1.2rem 1.3rem; border-radius: 20px; background: linear-gradient(135deg, #f3efff, #eef4ff 60%, #fff); border: 1px solid #ddd3ff; margin: 1rem 0; flex-wrap: wrap; }
.bizi-zero .bizi-mini { width: 56px; height: 56px; flex-shrink: 0; }
.bizi-zero > div { flex: 1; min-width: 240px; }
.bizi-zero strong { display: block; margin-bottom: .4rem; }
.bizi-zero ul { margin: .3rem 0 .7rem; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: .4rem; }
.bizi-zero li a { display: inline-block; padding: .35rem .8rem; border-radius: 999px; background: #fff; border: 1px solid #cfdcf5; font-size: .8rem; font-weight: 600; }

/* ============================================================
   کارت کسب‌وکار — نسخه تصویری (جستجو، فهرست‌ها، صفحه اصلی)
   ============================================================ */
.business-list { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 1.1rem; }
.bcard { display: flex !important; flex-direction: column; padding: 0 !important; overflow: hidden; border-radius: 20px !important; background: #fff; border: 1px solid var(--bz-line);
    box-shadow: 0 1px 2px rgba(15, 30, 70, .04), 0 10px 28px -18px rgba(15, 40, 110, .3); transition: transform .25s cubic-bezier(.2, .7, .2, 1), box-shadow .25s ease, border-color .25s ease; }
.bcard:hover { transform: translateY(-4px); box-shadow: 0 2px 4px rgba(15, 30, 70, .05), 0 22px 44px -20px rgba(15, 40, 110, .42); border-color: hsl(var(--ch) 55% 82%); }
.bcard.featured { border-color: #f2d57e; box-shadow: 0 0 0 1px #f2d57e, 0 14px 32px -18px rgba(176, 116, 0, .45); }
.bcard-media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: hsl(var(--ch) 70% 95%); }
.bcard-media .fit-frame { width: 100%; height: 100%; transition: transform .5s ease; }
.bcard:hover .bcard-media .fit-frame { transform: scale(1.05); }
.bcard-fallback { position: absolute; inset: 0; display: grid; place-items: center; font-size: 2.6rem; color: #fff;
    background: radial-gradient(circle at 25% 20%, hsl(var(--ch) 90% 72% / .9), transparent 55%), linear-gradient(135deg, hsl(var(--ch) 75% 58%), hsl(calc(var(--ch) + 35) 70% 45%)); }
.bcard-fallback::after { content: ''; position: absolute; inset: 0; background-image: radial-gradient(rgba(255, 255, 255, .18) 1px, transparent 1px); background-size: 16px 16px; }
.bcard-fallback i { position: relative; z-index: 1; filter: drop-shadow(0 6px 12px rgba(0, 0, 0, .2)); transition: transform .4s ease; }
.bcard:hover .bcard-fallback i { transform: scale(1.12) rotate(-6deg); }
.bcard-media::after { content: ''; position: absolute; inset: auto 0 0 0; height: 45%; background: linear-gradient(transparent, rgba(6, 22, 74, .35)); pointer-events: none; }
.bcard-pills { position: absolute; top: .65rem; right: .65rem; display: flex; gap: .3rem; z-index: 2; }
.bcard-pill { display: inline-flex; align-items: center; gap: .25rem; padding: .22rem .6rem; border-radius: 999px; background: rgba(255, 255, 255, .94); color: var(--bz-ink); font-size: .74rem; font-weight: 800; box-shadow: 0 4px 10px rgba(0, 0, 0, .12); backdrop-filter: blur(6px); }
.bcard-pill i { color: var(--bz-star); font-size: .68rem; }
.bcard-pill.is-gold { background: linear-gradient(135deg, #ffe08a, #f5b301); color: #5a3a00; }
.bcard-pill.is-gold i { color: #5a3a00; }
.bcard-status { position: absolute; bottom: .6rem; right: .65rem; z-index: 2; }
.bcard-status .smart-status { background: rgba(255, 255, 255, .95); box-shadow: 0 4px 10px rgba(0, 0, 0, .12); font-size: .72rem; }
.bcard-body { position: relative; display: flex; flex-direction: column; gap: .3rem; padding: 1.7rem 1rem 1rem; flex: 1; }
.bcard-logo { position: absolute; top: -30px; left: 1rem; width: 56px; height: 56px; border-radius: 16px; overflow: hidden; display: grid; place-items: center; background: #fff; color: hsl(var(--ch) 65% 45%); font-size: 1.4rem;
    border: 3px solid #fff; box-shadow: 0 8px 18px -6px rgba(15, 40, 110, .35); }
.bcard-logo img { width: 100%; height: 100%; object-fit: contain; }
.bcard-cat { font-size: .74rem; font-weight: 700; color: hsl(var(--ch) 60% 40%); }
.bcard h3 { margin: 0 !important; font-size: 1.02rem !important; line-height: 1.6; display: flex; align-items: center; gap: .3rem; }
.bcard h3 a { color: var(--bz-ink); }
.bcard h3 a:hover { color: var(--bz-blue); }
.bcard-addr { margin: .1rem 0 0 !important; font-size: .8rem !important; color: var(--bz-muted); display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.bcard-addr i { color: hsl(var(--ch) 55% 55%); margin-inline-end: .2rem; }
.bcard .business-card-actions { margin-top: auto !important; padding-top: .7rem; display: flex; flex-wrap: wrap; gap: .35rem; align-items: center; border-top: 1px dashed var(--bz-line); }
.bcard .business-card-actions .btn { margin: 0 !important; }
.bcard .btn-call { background: linear-gradient(135deg, #2a72ff, #1463ff); color: #fff; border: 0; }
.bcard-icon { width: 34px; padding: 0 !important; display: inline-grid !important; place-items: center; }
.bcard .favorite-btn.is-fav i { color: #e5484d; }
@media (prefers-reduced-motion: reduce) { .bcard, .bcard-media .fit-frame, .bcard-fallback i { transition: none; } }

/* ============================================================
   صفحه اصلی — ویترین، رتبه‌ها، نقشه و آمار
   ============================================================ */
.bz-eyebrow { display: inline-flex; align-items: center; gap: .35rem; font-size: .74rem; font-weight: 800; padding: .25rem .75rem; border-radius: 999px; color: #8a5a00; background: linear-gradient(135deg, #fff4d6, #ffe7a8); margin-bottom: .45rem; }
.bz-showcase { margin-top: 2.8rem; }
.bz-showcase-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; flex-wrap: wrap; text-align: right !important; }
.bz-showcase-head h2 { margin: 0 0 .25rem; }
.bz-showcase-head p { margin: 0; color: var(--bz-muted); font-size: .88rem; }
.bz-show-tabs { display: flex; gap: .3rem; flex-wrap: wrap; padding: .25rem; border-radius: 14px; background: var(--bz-canvas); }
.bz-show-tabs button { border: 0; background: none; font-family: inherit; font-size: .82rem; font-weight: 700; color: var(--bz-muted); padding: .45rem .9rem; border-radius: 10px; cursor: pointer; transition: all .15s ease; }
.bz-show-tabs button:hover { color: var(--bz-ink); }
.bz-show-tabs button.on { background: #fff; color: var(--bz-blue); box-shadow: 0 2px 8px rgba(15, 40, 110, .12); }
.bz-show-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.1rem; margin-top: 1.2rem; }
.bz-show-grid .bcard[hidden] { display: none !important; }
.bcard-show { position: relative; }
.bcard-show .bcard-link::after { content: ''; position: absolute; inset: 0; z-index: 1; }    /* کل کارت قابل کلیک */
.bcard-show .bcard-body { padding-bottom: 1.1rem; }
@media (max-width: 1100px) { .bz-show-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .bz-show-grid { grid-template-columns: 1fr; } .bz-show-tabs { width: 100%; overflow-x: auto; flex-wrap: nowrap; } }

/* فهرست برترین‌ها: رتبه و وضعیت */
.bz-top-list a { position: relative; }
.bz-top-rank { width: 26px; height: 26px; border-radius: 8px; display: grid; place-items: center; flex-shrink: 0; font-weight: 800; font-size: .78rem; background: var(--bz-canvas); color: var(--bz-ink-soft); }
.bz-top-list li:nth-child(1) .bz-top-rank { background: linear-gradient(135deg, #ffe08a, #f5b301); color: #5a3a00; }
.bz-top-list li:nth-child(2) .bz-top-rank { background: linear-gradient(135deg, #eef1f6, #c9d1de); color: #3d4a66; }
.bz-top-list li:nth-child(3) .bz-top-rank { background: linear-gradient(135deg, #ffe1c6, #e0a074); color: #6b3b14; }
.bz-top-info .smart-status { font-size: .66rem; padding: .08rem .45rem; margin-top: .15rem; align-self: flex-start; }

/* جای نقشه پیش از بارگذاری */
.bz-map:empty { position: relative; background:
    radial-gradient(circle at 30% 40%, rgba(20, 99, 255, .1) 0 40px, transparent 41px), radial-gradient(circle at 70% 65%, rgba(20, 99, 255, .08) 0 30px, transparent 31px),
    repeating-linear-gradient(0deg, transparent 0 38px, rgba(15, 40, 110, .05) 38px 39px), repeating-linear-gradient(90deg, transparent 0 38px, rgba(15, 40, 110, .05) 38px 39px), #f4f7fc; }
.bz-map:empty::before { content: '\f3c5'; font-family: 'Font Awesome 6 Free'; font-weight: 900; position: absolute; top: 42%; left: 50%; transform: translate(-50%, -50%); font-size: 2.4rem; color: var(--bz-blue); animation: bzPin 1.6s ease-in-out infinite; }
.bz-map:empty::after { content: 'نقشه در حال آماده شدن…'; position: absolute; top: 58%; left: 50%; transform: translateX(-50%); font-size: .82rem; color: var(--bz-muted); white-space: nowrap; }
@keyframes bzPin { 0%, 100% { transform: translate(-50%, -50%); } 50% { transform: translate(-50%, -62%); } }

/* نوار آمار */
.bz-stats { gap: 1rem !important; }
.bz-stat { padding: 1.1rem 1.2rem !important; border-radius: 18px !important; background: #fff; border: 1px solid var(--bz-line); box-shadow: 0 10px 26px -20px rgba(15, 40, 110, .35); transition: transform .2s ease; }
.bz-stat:hover { transform: translateY(-3px); }
.bz-stat-icon { width: 48px !important; height: 48px !important; border-radius: 14px !important; color: #fff !important; background: linear-gradient(135deg, #52b6ff, #1463ff) !important; box-shadow: 0 10px 20px -10px rgba(20, 99, 255, .7); }
.bz-stat:nth-child(2) .bz-stat-icon { background: linear-gradient(135deg, #9b8cff, #6e5bff) !important; box-shadow: 0 10px 20px -10px rgba(110, 91, 255, .7); }
.bz-stat:nth-child(3) .bz-stat-icon { background: linear-gradient(135deg, #4ee0a6, #16a34a) !important; box-shadow: 0 10px 20px -10px rgba(22, 163, 74, .6); }
.bz-stat:nth-child(4) .bz-stat-icon { background: linear-gradient(135deg, #ffd25a, #f59e0b) !important; box-shadow: 0 10px 20px -10px rgba(245, 158, 11, .6); }
.bz-stat strong { font-size: 1.6rem !important; }
@media (prefers-reduced-motion: reduce) { .bz-map:empty::before { animation: none; } }
/* ویترین در موبایل: کاروسل افقی با اسکرول گیره‌ای (به‌جای ستونی بلند) */
@media (max-width: 560px) {
    .bz-show-grid { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 82%; overflow-x: auto; scroll-snap-type: x mandatory; gap: .8rem; padding: .2rem .1rem 1rem; margin-inline: -.2rem; scrollbar-width: none; }
    .bz-show-grid::-webkit-scrollbar { display: none; }
    .bz-show-grid .bcard { scroll-snap-align: start; }
}
.bz-show-tabs button { white-space: nowrap; }
@media (max-width: 560px) { .bz-showcase { overflow: hidden; } .bz-show-tabs { scrollbar-width: none; } .bz-show-tabs::-webkit-scrollbar { display: none; } }

/* ============ بیزی — شخصیت اختصاصی (پین نقشه سخنگو) ============ */
.bizi-svg { overflow: visible; }
.bizi-svg .bizi-body { animation: biziBob 3.6s ease-in-out infinite; }
.bizi-svg .bizi-hand-l { animation: biziBob 3.6s ease-in-out infinite; }
.bizi-svg .bizi-ground { transform-origin: 60px 118px; animation: biziGround 3.6s ease-in-out infinite; }
.bizi-svg .bizi-eyes { transform-origin: 60px 51px; animation: biziBlink2 5s infinite; }
.bizi-svg .bizi-star { transform-origin: 65px 8px; animation: biziStar 3s ease-in-out infinite; }
.bizi-svg .bizi-hand { transform-origin: 98px 66px; animation: biziWave 4.5s ease-in-out infinite; }
.bizi-svg.is-thinking .bizi-eyes { animation: biziLookUp 1.1s ease-in-out infinite; }
.bizi-svg.is-thinking .bizi-star { animation: biziSpin .9s linear infinite; }
.bizi-svg.is-talking .bizi-mouth { transform-origin: 60px 63px; animation: biziTalk2 .3s ease-in-out infinite alternate; }
.bizi-float { animation: none !important; }
@keyframes biziBob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
@keyframes biziGround { 50% { transform: scaleX(.78); opacity: .09; } }
@keyframes biziBlink2 { 0%, 93%, 100% { transform: scaleY(1); } 96% { transform: scaleY(.08); } }
@keyframes biziStar { 0%, 100% { transform: scale(1) rotate(0); } 50% { transform: scale(1.2) rotate(20deg); } }
@keyframes biziWave { 0%, 55%, 100% { transform: rotate(0); } 65% { transform: rotate(-24deg); } 75% { transform: rotate(14deg); } 85% { transform: rotate(-18deg); } }
@keyframes biziLookUp { 0%, 100% { transform: translate(0, -2px); } 50% { transform: translate(3px, -3px); } }
@keyframes biziSpin { to { transform: rotate(360deg); } }
@keyframes biziTalk2 { from { transform: scaleY(1); } to { transform: scaleY(1.9); } }
@media (prefers-reduced-motion: reduce) { .bizi-svg *, .bizi-svg { animation: none !important; } }

/* فاصله سفید پایین صفحه در موبایل: فضای نوار پایین (۶۸px) قبلا به body اضافه می‌شد و بعد از فوتر سرمه‌ای
   یک نوار سفید می‌ساخت. حالا همین فضا داخل خود فوتر است (هم‌رنگ فوتر) و محتوای فوتر زیر نوار نمی‌رود. */
@media (max-width: 720px) {
    body { padding-bottom: 0 !important; }
    .bz-footer::after { content: ''; display: block; height: calc(68px + env(safe-area-inset-bottom, 0px)); }
}

/* رفع جابه‌جایی نقشه صفحه اصلی: موقعیت نسبی فقط در حالت خالی (:empty) بود؛ Leaflet هنگام راه‌اندازی آن را می‌دید و خودش
   تنظیم نمی‌کرد، و با اضافه شدن لایه‌ها، :empty دیگر صدق نمی‌کرد و نقشه از کادرش بیرون می‌رفت. حالا همیشه نسبی است. */
.bz-map, .leaflet-container { position: relative; }

/* برچسب قدیمی «آگهی ویژه» (مخصوص کارت‌های نسل قبل، با جای‌گذاری بیرون از لبه کارت) روی کارت جدید غیرفعال است؛
   برچسب درون تصویر کارت جای آن را گرفته است */
.bcard.featured::before { content: none !important; display: none !important; }
.bcard.featured { background: #fff; }

/* ============================================================
   صفحه کسب‌وکار — سربرگ هویت با سلسله‌مراتب روشن
   ============================================================ */
.biz-identity-card { position: relative; overflow: hidden; border-radius: 24px !important; padding: 1.6rem 1.6rem 1.3rem !important; }
.biz-identity-card::before { content: ''; position: absolute; inset: 0 0 auto 0; height: 92px; z-index: 0; pointer-events: none;
    background: radial-gradient(320px 120px at 100% 0%, rgba(82, 182, 255, .2), transparent 70%), radial-gradient(260px 110px at 0% 0%, rgba(110, 91, 255, .13), transparent 70%); }
.biz-identity-card > * { position: relative; z-index: 1; }
.biz-identity .biz-avatar, .biz-identity .biz-avatar-placeholder { width: 92px !important; height: 92px !important; border-radius: 24px; border: 4px solid #fff; box-shadow: 0 14px 30px -12px rgba(15, 40, 110, .45); background: #fff; }
.biz-identity-text h1 { font-size: clamp(1.35rem, 2.6vw, 1.85rem) !important; font-weight: 800; line-height: 1.5; margin: .35rem 0 .45rem !important; letter-spacing: -.01em; }
.business-hero-top .badge { font-size: .72rem; padding: .22rem .65rem; border-radius: 999px; margin-inline-end: .25rem; }
.biz-chips { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0 0 .6rem !important; }
.biz-chip { display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .8rem; border-radius: 999px; font-size: .8rem; font-weight: 700; color: var(--bz-blue); background: var(--bz-blue-soft); transition: background .15s ease, color .15s ease; }
.biz-chip:hover { background: var(--bz-blue); color: #fff; }
.biz-chip i { font-size: .72rem; opacity: .8; }
.business-rating-summary { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; }
.biz-rating-pill { display: inline-flex; align-items: center; gap: .3rem; padding: .3rem .75rem; border-radius: 12px; background: linear-gradient(135deg, #fff7dc, #ffeab0); color: #5a3a00; font-size: .85rem; box-shadow: inset 0 0 0 1px #f3d27a; }
.biz-rating-pill b { font-size: 1.05rem; font-weight: 800; }
.biz-rating-pill i { color: #f5a400; }
.biz-rating-pill span { color: #8a6a2a; font-size: .78rem; }
.biz-rating-pill:hover { color: #5a3a00; filter: brightness(1.03); }
/* نوار اقدام‌ها: دکمه‌های یکدست؛ «گزارش تخلف» کم‌رنگ و در انتها */
.biz-actions-row { display: flex !important; flex-wrap: wrap; align-items: center; gap: .45rem !important; padding-top: .9rem; margin-top: .9rem; border-top: 1px dashed var(--bz-line); }
.biz-act { display: inline-flex !important; align-items: center; gap: .4rem; padding: .5rem .95rem !important; border-radius: 12px !important; border: 1px solid var(--bz-line) !important; background: #fff !important;
    font-size: .82rem !important; font-weight: 700; color: var(--bz-ink) !important; transition: border-color .15s ease, color .15s ease, transform .15s ease; }
.biz-act:hover { border-color: var(--bz-blue) !important; color: var(--bz-blue) !important; transform: translateY(-1px); }
.biz-act i { color: var(--bz-blue); }
.biz-actions-row .report-link { margin-inline-start: auto; font-size: .76rem; color: var(--bz-muted) !important; }
.biz-actions-row .report-link:hover { color: #b42318 !important; }
/* زبانه‌ها: چسبان هنگام پیمایش */
.tab-nav { position: sticky; top: 76px; z-index: 20; background: rgba(255, 255, 255, .92); backdrop-filter: blur(10px); border-radius: 16px; padding: .3rem !important; margin-inline: -.3rem; box-shadow: 0 8px 20px -16px rgba(15, 40, 110, .35); }
/* کسب‌وکارهای مشابه */
.biz-similar { margin-top: 2.4rem; }
.biz-similar .section-head { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.biz-similar-grid { grid-template-columns: repeat(3, 1fr); margin-top: .9rem; }
@media (max-width: 1100px) { .biz-similar-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .biz-identity-card { padding: 1.2rem 1rem 1rem !important; } .biz-identity .biz-avatar, .biz-identity .biz-avatar-placeholder { width: 72px !important; height: 72px !important; } .tab-nav { top: 62px; } }
/* چهار کاشی اطلاعات کلیدی در یک ردیف (به‌جای ۳ + ۱) */
.biz-facts { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important; }
/* کاشی‌ها در شبکه ۲×۲ (هر کاشی جای کافی برای متن بدون شکستن خط) */
.biz-facts { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.biz-fact .smart-status { white-space: nowrap; }

/* ============================================================
   صفحه اصلی — پرداخت نهایی
   ============================================================ */
/* ویترین روی پنل رنگی ملایم (نقطه کانونی صفحه) */
.bz-showcase { padding: 1.7rem 1.7rem 1.9rem; border-radius: 28px; background: radial-gradient(500px 220px at 100% 0%, rgba(82, 182, 255, .1), transparent 70%), linear-gradient(180deg, #f5f8ff, #fff 75%); border: 1px solid #e6eefc; }
@media (max-width: 560px) { .bz-showcase { padding: 1.2rem .9rem 1.2rem; border-radius: 22px; } }
/* نقشه و فهرست برترین‌ها هم‌دیگر را کش نمی‌دهند */
.bz-duo { align-items: start !important; }
.bz-map-panel .bz-map { flex: none !important; height: 460px; min-height: 0 !important; }
@media (max-width: 760px) { .bz-map-panel .bz-map { height: 340px; } }
/* فاصله یکنواخت بین بخش‌ها */
.bz-section, .bz-duo, .bz-cta, .bz-stats, .bizi-home { margin-top: 2.6rem !important; }
.bz-section-head h2 { position: relative; }
/* آمار در گوشی‌های باریک (۳۶۰px): ستون‌ها کوچک‌شونده، آیکون و عدد کمی کوچک‌تر تا صفحه افقی اسکرول نشود */
.bz-stats { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); }
@media (max-width: 760px) { .bz-stats { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 420px) {
    .bz-stat { padding: .8rem .7rem !important; gap: .55rem !important; min-width: 0; }
    .bz-stat > div { min-width: 0; }
    .bz-stat-icon { width: 38px !important; height: 38px !important; border-radius: 11px !important; font-size: .95rem; flex-shrink: 0; }
    .bz-stat strong { font-size: 1.25rem !important; }
    .bz-stat small { font-size: .7rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
}
@media (max-width: 420px) { .bz-stat small { white-space: normal; overflow: visible; text-overflow: clip; line-height: 1.6; } }
.otp-valid { display: flex; align-items: center; justify-content: center; gap: .4rem; margin: .8rem 0 .2rem; font-size: .85rem; color: var(--bz-muted); }
.otp-valid b { color: var(--bz-blue); font-variant-numeric: tabular-nums; min-width: 3ch; }
.otp-valid.is-expired { color: #b42318; font-weight: 700; }

/* ---------- مدیریت تبلیغات پیشرفته ---------- */
.am-ideas { margin: .6rem 0 .4rem; padding: .7rem .8rem; border-radius: 14px; background: linear-gradient(135deg, #f3efff, #eef4ff); border: 1px solid #ddd3ff; }
.am-ideas-head { display: flex; align-items: center; gap: .4rem; font-size: .78rem; font-weight: 700; color: #4b3aa8; margin-bottom: .45rem; }
.am-ideas .bizi-mini { width: 26px; height: 26px; display: inline-block; }
.am-ideas > div { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .3rem; }
.am-ideas button { border: 1px solid #cfdcf5; background: #fff; color: var(--bz-ink); border-radius: 10px; padding: .35rem .7rem; font-family: inherit; font-size: .78rem; cursor: pointer; text-align: right; transition: all .15s ease; }
.am-ideas button.is-desc { font-size: .74rem; color: var(--bz-ink-soft); }
.am-ideas button:hover, .am-ideas button.on { border-color: var(--bz-blue); background: var(--bz-blue-soft); color: var(--bz-blue); }
.am-ideas-inline { background: none; border: 0; padding: 0; margin: .3rem 0 .6rem; }
.am-ab { margin-top: .8rem; border: 1px dashed #b9ceff; border-radius: 14px; padding: .7rem .9rem; background: #fbfcff; }
.am-ab summary { cursor: pointer; font-weight: 700; color: var(--bz-blue); font-size: .88rem; }
.am-ab-help { font-size: .78rem; color: var(--bz-muted); line-height: 1.9; margin: .5rem 0; }
.am-days { display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: .7rem; }
.am-day input { display: none; }
.am-day span { display: inline-block; padding: .4rem .75rem; border-radius: 10px; border: 1px solid var(--bz-line); font-size: .8rem; font-weight: 600; color: var(--bz-muted); cursor: pointer; user-select: none; }
.am-day input:checked + span { background: var(--bz-blue); border-color: var(--bz-blue); color: #fff; }
.am-bidsug { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; margin-top: .45rem; }
.am-bidsug > span { width: 100%; font-size: .74rem; color: var(--bz-muted); }
.am-bidsug button { display: flex; flex-direction: column; align-items: center; min-width: 84px; padding: .35rem .6rem; border-radius: 10px; border: 1px solid var(--bz-line); background: #fff; font-family: inherit; cursor: pointer; }
.am-bidsug button b { font-size: .9rem; }
.am-bidsug button small { font-size: .68rem; color: var(--bz-muted); }
.am-bidsug button.is-rec { border-color: #9fd8b5; background: #f1faf4; }
.am-bidsug button.on { border-color: var(--bz-blue); box-shadow: 0 0 0 2px var(--bz-blue-soft); }
.am-stat-conv strong { color: #12784a; }
.am-abres { display: grid; grid-template-columns: auto 1fr 1fr; gap: .5rem .8rem; align-items: center; margin: .2rem 0 .8rem; padding: .7rem .9rem; border-radius: 14px; background: #fbfcff; border: 1px solid var(--bz-line); font-size: .8rem; }
.am-abres-h { font-weight: 800; color: var(--bz-blue); grid-row: 1 / 3; }
.am-abres > div { display: flex; flex-direction: column; padding: .45rem .6rem; border-radius: 10px; border: 1px solid transparent; }
.am-abres > div.is-win { border-color: #9fd8b5; background: #f1faf4; }
.am-abres > div.is-win b::after { content: ' 🏆'; }
.am-abres small { color: var(--bz-muted); }
.am-abres em { grid-column: 2 / -1; font-style: normal; font-size: .76rem; color: var(--bz-ink-soft); }
@media (max-width: 640px) { .am-abres { grid-template-columns: 1fr 1fr; } .am-abres-h { grid-row: auto; grid-column: 1 / -1; } .am-abres em { grid-column: 1 / -1; } }

/* ============================================================
   ویرایشگر ساعات کاری (پنل کاربر)
   ============================================================ */
.hx { margin: 1.4rem 0 1rem; padding: 1.1rem 1.2rem; border-radius: 20px; background: #fff; border: 1px solid var(--bz-line); box-shadow: 0 10px 28px -22px rgba(15, 40, 110, .35); }
.hx-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; flex-wrap: wrap; margin-bottom: .9rem; }
.hx-head h3 { margin: 0; font-size: 1.05rem; }
.hx-head h3 i { color: var(--bz-blue); margin-inline-end: .3rem; }
.hx-summary { margin: .25rem 0 0; font-size: .8rem; color: var(--bz-muted); }
.hx-presets { display: flex; flex-wrap: wrap; gap: .35rem; }
.hx-presets button { border: 1px solid #cfdcf5; background: var(--bz-blue-soft); color: var(--bz-blue); border-radius: 999px; padding: .35rem .8rem; font-family: inherit; font-size: .76rem; font-weight: 700; cursor: pointer; transition: all .15s ease; }
.hx-presets button:hover { background: var(--bz-blue); color: #fff; border-color: var(--bz-blue); }
.hx-presets button.is-muted { background: #fff; color: var(--bz-muted); border-color: var(--bz-line); }
.hx-days { display: grid; gap: .45rem; }
.hx-day { display: grid; grid-template-columns: 92px auto 1fr auto; align-items: center; gap: .8rem; padding: .55rem .75rem; border-radius: 14px; border: 1px solid var(--bz-line); background: #fbfcfe; transition: background .2s ease, border-color .2s ease, opacity .2s ease; }
.hx-day:hover { border-color: #cfdcf5; }
.hx-day.is-closed { background: #fafafa; }
.hx-day.is-closed .hx-times { opacity: .35; pointer-events: none; }
.hx-name { font-weight: 800; font-size: .9rem; }
/* کلید باز/تعطیل */
.hx-switch { position: relative; display: inline-flex; cursor: pointer; margin: 0 !important; }
.hx-switch input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.hx-switch-ui { display: inline-flex; border-radius: 999px; background: #eef1f6; padding: 3px; }
.hx-switch-ui b { padding: .25rem .7rem; border-radius: 999px; font-size: .74rem; font-weight: 800; color: #8a94a8; transition: all .18s ease; }
.hx-switch input:not(:checked) + .hx-switch-ui .hx-open { background: #16a34a; color: #fff; box-shadow: 0 4px 10px -4px rgba(22, 163, 74, .6); }
.hx-switch input:checked + .hx-switch-ui .hx-off { background: #e5484d; color: #fff; box-shadow: 0 4px 10px -4px rgba(229, 72, 77, .6); }
.hx-switch input:focus-visible + .hx-switch-ui { outline: 2px solid var(--bz-blue); outline-offset: 2px; }
.hx-times { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; transition: opacity .2s ease; }
.hx-time { display: inline-flex; align-items: center; gap: .35rem; margin: 0 !important; padding: .2rem .25rem .2rem .55rem; border-radius: 12px; background: #fff; border: 1px solid var(--bz-line); }
.hx-time small { font-size: .72rem; color: var(--bz-muted); font-weight: 700; }
.hx-time input { border: 0 !important; background: transparent !important; padding: .3rem .25rem !important; font-family: inherit; font-size: .9rem; margin: 0 !important; width: auto !important; min-width: 0; box-shadow: none !important; direction: ltr; }
.hx-time:focus-within { border-color: var(--bz-blue); box-shadow: 0 0 0 3px rgba(20, 99, 255, .12); }
.hx-dash { color: var(--bz-muted); }
.hx-note { font-style: normal; font-size: .72rem; color: #6a3df5; font-weight: 700; }
.hx-note.is-warn { color: #b42318; }
.hx-day.is-empty .hx-time { border-style: dashed; }
.hx-copy { display: inline-flex; align-items: center; gap: .3rem; border: 0; background: none; color: var(--bz-muted); font-family: inherit; font-size: .74rem; cursor: pointer; padding: .3rem .4rem; border-radius: 8px; }
.hx-copy:hover { color: var(--bz-blue); background: var(--bz-blue-soft); }
.hx-copy.is-done { color: #12784a; }
@media (max-width: 640px) {
    .hx-day { grid-template-columns: 1fr auto; gap: .5rem; }
    .hx-times { grid-column: 1 / -1; }
    .hx-copy { grid-column: 1 / -1; justify-self: start; }
    .hx-copy span { display: inline; }
}
.sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* ساعات کاری در موبایل: نام و کلید در یک خط، دو ساعت کنار هم در خط دوم */
@media (max-width: 640px) {
    .hx { padding: .9rem .8rem; }
    .hx-day { grid-template-columns: 1fr auto auto; gap: .45rem .5rem; padding: .6rem .65rem; }
    .hx-times { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr auto 1fr; gap: .35rem; }
    .hx-time { min-width: 0; }
    .hx-time input { width: 100% !important; font-size: .85rem; }
    .hx-note { grid-column: 1 / -1; }
    .hx-copy { grid-column: auto; padding: .3rem; }
    .hx-copy span { display: none; }
    .hx-presets button { font-size: .72rem; padding: .3rem .65rem; }
}
@media (max-width: 640px) {
    .hx-name { order: 1; } .hx-switch { order: 2; } .hx-copy { order: 3; } .hx-times { order: 4; }
    .hx-time { flex-wrap: nowrap; padding: .15rem .35rem; }
    .hx-time small { display: none; }
}

/* ============================================================
   تیکت‌های پشتیبانی (کاربر)
   ============================================================ */
.tk-page { max-width: 900px; margin: 0 auto; }
.tk-hero { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; padding: 1.4rem 1.5rem; margin-bottom: 1.2rem; border-radius: 22px; color: #fff;
    background: radial-gradient(360px 200px at 0% 100%, rgba(110, 91, 255, .4), transparent 70%), linear-gradient(120deg, #06164a, #0b2378 55%, #1453d8); }
.tk-hero h1 { margin: 0 0 .3rem; font-size: 1.4rem; color: #fff; }
.tk-hero p { margin: 0; opacity: .85; font-size: .88rem; }
.tk-hero a:not(.bz-btn) { color: #9fd3ff; }
.tk-card { background: #fff; border: 1px solid var(--bz-line); border-radius: 20px; padding: 1.2rem 1.3rem; margin-bottom: 1rem; box-shadow: 0 10px 28px -22px rgba(15, 40, 110, .35); }
.tk-card h2 { font-size: 1.05rem; margin: 0 0 .8rem; }
.tk-new label { display: block; font-size: .82rem; font-weight: 700; margin: .8rem 0 .35rem; }
.tk-new input[type=text], .tk-new select, .tk-new textarea, .tk-reply textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--bz-line); border-radius: 12px; padding: .65rem .8rem; font-family: inherit; font-size: .9rem; background: #fff; }
.tk-new textarea:focus, .tk-new input:focus, .tk-reply textarea:focus { outline: none; border-color: var(--bz-blue); box-shadow: 0 0 0 3px rgba(20, 99, 255, .12); }
.tk-depts { display: grid; grid-template-columns: repeat(3, 1fr); gap: .45rem; }
.tk-dept { margin: 0 !important; }
.tk-dept input { position: absolute; opacity: 0; }
.tk-dept span { display: flex; align-items: center; gap: .45rem; padding: .6rem .75rem; border-radius: 12px; border: 1px solid var(--bz-line); font-size: .82rem; font-weight: 600; cursor: pointer; transition: all .15s ease; }
.tk-dept span i { color: var(--bz-blue); width: 18px; text-align: center; }
.tk-dept input:checked + span { border-color: var(--bz-blue); background: var(--bz-blue-soft); color: var(--bz-blue); box-shadow: 0 0 0 2px rgba(20, 99, 255, .12); }
.tk-dept input:focus-visible + span { outline: 2px solid var(--bz-blue); }
.tk-row { display: grid; grid-template-columns: 2fr 1fr 1.2fr; gap: .7rem; }
.tk-suggest { margin-top: .8rem; padding: .8rem .9rem; border-radius: 14px; background: linear-gradient(135deg, #f3efff, #eef4ff); border: 1px solid #ddd3ff; font-size: .84rem; }
.tk-suggest strong i { color: #e0a800; }
.tk-suggest details { margin-top: .4rem; background: #fff; border-radius: 10px; padding: .5rem .7rem; }
.tk-suggest summary { cursor: pointer; font-weight: 700; }
.tk-suggest p { margin: .4rem 0 0; line-height: 1.9; color: var(--bz-ink-soft); }
.tk-suggest small { display: block; margin-top: .5rem; color: var(--bz-muted); }
.tk-attach { display: inline-flex !important; align-items: center; gap: .45rem; margin: .7rem 0 0 !important; padding: .45rem .8rem; border-radius: 10px; border: 1px dashed #b9ceff; color: var(--bz-blue); font-size: .8rem !important; cursor: pointer; position: relative; overflow: hidden; }
.tk-attach input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.tk-actions { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; margin-top: .9rem; }
.tk-list-head { display: flex; justify-content: space-between; align-items: center; gap: .8rem; flex-wrap: wrap; }
.tk-filter { display: flex; gap: .2rem; padding: .2rem; border-radius: 10px; background: var(--bz-canvas); }
.tk-filter a { padding: .3rem .8rem; border-radius: 8px; font-size: .8rem; font-weight: 700; color: var(--bz-muted); }
.tk-filter a.on { background: #fff; color: var(--bz-blue); box-shadow: 0 1px 4px rgba(15, 40, 110, .1); }
.tk-list { list-style: none; margin: .6rem 0 0; padding: 0; }
.tk-list a { display: flex; align-items: center; gap: .75rem; padding: .8rem .5rem; border-bottom: 1px solid var(--bz-line); color: var(--bz-ink); }
.tk-list a:hover { background: var(--bz-canvas); color: var(--bz-ink); }
.tk-list a.is-unread b { font-weight: 800; }
.tk-ic { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--bz-blue-soft); color: var(--bz-blue); flex-shrink: 0; }
.tk-main { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.tk-main b { font-size: .9rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tk-main small { font-size: .74rem; color: var(--bz-muted); }
.tk-new-dot { font-size: .7rem; font-weight: 800; padding: .15rem .5rem; border-radius: 999px; background: #e5484d; color: #fff; white-space: nowrap; }
.tk-badge { display: inline-block; padding: .2rem .6rem; border-radius: 999px; font-size: .72rem; font-weight: 800; white-space: nowrap; }
.tk-warn { background: #fff4d6; color: #8a5a00; } .tk-ok { background: #e3f7ec; color: #12784a; } .tk-info { background: #edf3ff; color: #1463ff; } .tk-muted { background: #eef1f6; color: #5b6478; }
.tk-prio { display: inline-block; padding: .15rem .5rem; border-radius: 6px; font-size: .7rem; font-weight: 800; }
.tk-prio-low { background: #eef1f6; color: #5b6478; } .tk-prio-normal { background: #edf3ff; color: #1463ff; } .tk-prio-high { background: #fff4d6; color: #8a5a00; } .tk-prio-urgent { background: #fde8e6; color: #b42318; }
.tk-back { display: inline-flex; align-items: center; gap: .35rem; margin-bottom: .8rem; font-size: .84rem; font-weight: 700; }
.tk-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; flex-wrap: wrap; }
.tk-head small { color: var(--bz-muted); font-size: .76rem; }
.tk-head h1 { margin: .2rem 0 0; font-size: 1.2rem; }
.tk-thread { display: flex; flex-direction: column; gap: .8rem; margin: 1rem 0; }
.tk-msg { max-width: 86%; border-radius: 18px; padding: .8rem 1rem; background: #fff; border: 1px solid var(--bz-line); }
.tk-msg.is-mine { align-self: flex-start; background: linear-gradient(135deg, #f1f6ff, #fff); border-color: #d6e3ff; }
.tk-msg.is-other { align-self: flex-end; }
.tk-msg.is-staff { border-inline-start: 3px solid var(--bz-blue); }
.tk-msg header { display: flex; align-items: center; gap: .45rem; margin-bottom: .45rem; flex-wrap: wrap; }
.tk-msg header b { font-size: .84rem; }
.tk-msg header time { margin-inline-start: auto; font-size: .7rem; color: var(--bz-muted); }
.tk-av { width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; font-size: .78rem; font-weight: 800; color: #fff; background: linear-gradient(135deg, #52b6ff, #1463ff); }
.tk-staff-tag { font-style: normal; font-size: .66rem; font-weight: 800; padding: .1rem .45rem; border-radius: 6px; background: var(--bz-blue); color: #fff; }
.tk-body { font-size: .9rem; line-height: 2; word-break: break-word; }
.tk-img img { display: block; max-width: 280px; max-height: 260px; border-radius: 12px; margin-top: .5rem; }
.tk-file { display: inline-flex; align-items: center; gap: .35rem; margin-top: .5rem; padding: .4rem .7rem; border-radius: 10px; background: var(--bz-canvas); font-size: .82rem; }
.tk-sys { align-self: center; font-size: .74rem; color: var(--bz-muted); background: var(--bz-canvas); padding: .3rem .8rem; border-radius: 999px; }
.tk-reply textarea { min-height: 110px; }
.tk-closed { text-align: center; }
.tk-rate { display: flex; flex-direction: column; align-items: center; gap: .6rem; }
.tk-stars { display: inline-flex; flex-direction: row-reverse; gap: .1rem; }
.tk-stars input { display: none; }
.tk-stars label { font-size: 1.9rem; color: #d5dcea; cursor: pointer; transition: color .1s ease; }
.tk-stars label:hover, .tk-stars label:hover ~ label, .tk-stars input:checked ~ label { color: #f5b301; }
.tk-rate input[type=text] { width: min(420px, 100%); border: 1px solid var(--bz-line); border-radius: 10px; padding: .55rem .8rem; font-family: inherit; }
.tk-close-form { text-align: center; margin-bottom: 1rem; }
.dash-tickets { display: inline-flex; align-items: center; gap: .45rem; margin: .4rem 0 1rem; padding: .5rem .9rem; border-radius: 12px; background: var(--bz-blue-soft); font-weight: 700; font-size: .86rem; }
.dash-tickets b { padding: .1rem .5rem; border-radius: 999px; background: #e5484d; color: #fff; font-size: .72rem; }
@media (max-width: 640px) { .tk-depts { grid-template-columns: repeat(2, 1fr); } .tk-row { grid-template-columns: 1fr; } .tk-msg { max-width: 100%; } }
.dash-admin-entry { display: inline-flex; align-items: center; gap: .45rem; margin: .4rem 0 1rem; margin-inline-end: .5rem; padding: .5rem .9rem; border-radius: 12px; background: linear-gradient(135deg, #0b2170, #1463ff); color: #fff !important; font-weight: 700; font-size: .86rem; }
.dash-admin-entry small { opacity: .75; font-weight: 500; font-size: .72rem; }

/* ---------- اپلیکیشن: بنر نصب و صفحه دانلود ---------- */
.bz-install { position: fixed; z-index: 960; inset-inline: 12px; bottom: calc(84px + env(safe-area-inset-bottom)); display: flex; align-items: center; gap: .7rem; padding: .7rem .8rem; border-radius: 18px;
    background: #fff; box-shadow: 0 20px 44px -14px rgba(6, 22, 74, .45); border: 1px solid #dbe6ff; animation: bzUp .35s ease; }
.bz-install img { border-radius: 12px; flex-shrink: 0; }
.bz-install div { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.bz-install strong { font-size: .9rem; }
.bz-install small { font-size: .74rem; color: var(--bz-muted); }
.bz-install-go { border: 0; border-radius: 12px; padding: .55rem 1rem; font-family: inherit; font-weight: 800; color: #fff; background: linear-gradient(135deg, #2a72ff, #1463ff); cursor: pointer; }
.bz-install-x { border: 0; background: none; font-size: 1.3rem; color: var(--bz-muted); cursor: pointer; padding: 0 .2rem; }
.in-app .bz-install, .is-standalone .bz-install { display: none !important; }
.appx { display: grid; grid-template-columns: 1.3fr 1fr; gap: 2rem; align-items: center; padding: 2rem 2.2rem; margin: 1rem 0 2rem; border-radius: 28px;
    background: radial-gradient(420px 260px at 0% 100%, rgba(110, 91, 255, .14), transparent 70%), radial-gradient(380px 240px at 100% 0%, rgba(82, 182, 255, .18), transparent 70%), #fff; border: 1px solid #dbe6ff; }
.appx h1 { font-size: clamp(1.5rem, 3vw, 2.1rem); margin: .6rem 0 .5rem; }
.appx p { color: var(--bz-ink-soft); line-height: 2.1; }
.appx-btns { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.2rem 0 .8rem; }
.appx-store { display: inline-flex; flex-direction: column; padding: .55rem 1.1rem; border-radius: 14px; background: #0f1b3d; color: #fff !important; border: 0; font-family: inherit; cursor: pointer; text-align: right; min-width: 132px; }
.appx-store b { font-size: .7rem; font-weight: 500; opacity: .75; }
.appx-store span { font-size: 1rem; font-weight: 800; }
.appx-store.is-apk { background: #12784a; }
.appx-store.is-pwa { background: linear-gradient(135deg, #2a72ff, #1463ff 60%, #6e5bff); }
.appx-help summary { cursor: pointer; font-weight: 700; color: var(--bz-blue); font-size: .88rem; }
.appx-help p { font-size: .86rem; margin: .4rem 0; }
.appx-phone { justify-self: center; width: 210px; height: 400px; border-radius: 36px; padding: 10px; background: #0f1b3d; box-shadow: 0 30px 60px -24px rgba(6, 22, 74, .6); }
.appx-screen { height: 100%; border-radius: 28px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .6rem; background: linear-gradient(160deg, #eef4ff, #fff); }
.appx-screen img { width: 96px; height: 96px; border-radius: 26px; box-shadow: 0 14px 28px -12px rgba(20, 99, 255, .6); }
.appx-screen b { font-size: 1.1rem; }
@media (max-width: 760px) { .appx { grid-template-columns: 1fr; padding: 1.4rem 1.1rem; } .appx-phone { display: none; } }

/* ============================================================
   صفحه کسب‌وکار — تعادل ستون کناری و بخش‌های کم‌آیتم
   ============================================================ */
/* دکمه‌های مسیریابی در ستون کناری: سه ستون مساوی (یا ۲×۲ وقتی «سایر برنامه‌ها» در اندروید نمایش داده می‌شود) */
.biz-contact-card .dir-apps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .4rem; }
.biz-contact-card .dir-apps:has(> .dir-geo:not([hidden])) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.biz-contact-card .dir-app { min-width: 0; padding: .55rem .2rem !important; font-size: .78rem; white-space: nowrap; }
.biz-contact-row span:last-child { min-width: 0; overflow-wrap: anywhere; }
.biz-contact-card, .biz-glance { align-self: start; }

/* کسب‌وکارهای مشابه / راهنماهای مرتبط: وقتی کمتر از سه مورد است، کارت افقی و تمام‌عرض (بدون فضای خالی کنار) */
@media (min-width: 761px) {
    .biz-similar-grid:not(:has(> :nth-child(3))) { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)); }
    .biz-similar-grid:not(:has(> :nth-child(3))) > .bcard { flex-direction: row !important; min-height: 190px; }
    .biz-similar-grid:not(:has(> :nth-child(3))) > .bcard .bcard-media { width: 42%; aspect-ratio: auto; flex-shrink: 0; }
    .biz-similar-grid:not(:has(> :nth-child(3))) > .bcard .bcard-body { justify-content: center; padding: 1.2rem 1.4rem; }
    .biz-similar-grid:not(:has(> :nth-child(3))) > .bcard .bcard-logo { position: static; margin-bottom: .4rem; }
    .biz-similar-grid:not(:has(> :nth-child(3))) > .bcard h3 { font-size: 1.15rem !important; }
    .biz-posts-grid:not(:has(> :nth-child(3))) { grid-template-columns: repeat(auto-fit, minmax(0, 1fr)) !important; }
    .biz-posts-grid:not(:has(> :nth-child(3))) > .bp-card { flex-direction: row; align-items: center; gap: 1rem; }
    .biz-posts-grid:not(:has(> :nth-child(3))) > .bp-card .bp-media { width: 200px; flex-shrink: 0; aspect-ratio: 16 / 10; }
}
/* اطراف این کسب‌وکار: کارت‌ها عرض ردیف را پر می‌کنند (auto-fill ستون خالی می‌ساخت و سمت چپ خالی می‌ماند) */
.around-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }

/* ============================================================
   صفحه کسب‌وکار در موبایل
   ============================================================ */
/* کارت‌های ستون کناری همیشه تمام‌عرض (align-self:start در چیدمان ستونی موبایل عرض کارت را کم کرده بود) */
.biz-contact-card, .biz-glance { width: 100%; box-sizing: border-box; }
@media (max-width: 900px) { .biz-contact-card, .biz-glance { align-self: stretch; } }

@media (max-width: 520px) {
    /* کاشی‌ها: آیکون بالای متن تا متن کل عرض کاشی را داشته باشد */
    .biz-fact { flex-direction: column; gap: .45rem; padding: .7rem .75rem; min-width: 0; }
    .biz-fact > div { min-width: 0; width: 100%; }
    .biz-fact .smart-status { white-space: nowrap; }
    .biz-fact em { overflow-wrap: anywhere; }
    /* شماره تماس در یک ردیف کامل؛ هرگز بریده یا شکسته نمی‌شود */
    .biz-fact:has(.fa-phone) { grid-column: 1 / -1; flex-direction: row; align-items: center; }
    .biz-fact:has(.fa-phone) b { font-size: 1.1rem; white-space: nowrap; }
}
@media (max-width: 520px) {
    /* فاصله هم ردیف کامل (کنار شماره تنها نماند)؛ آیکون کنار متن چون عرض کافی دارد */
    .biz-fact:has(.fa-location-dot) { grid-column: 1 / -1; flex-direction: row; align-items: center; }
}
/* صفحه کسب‌وکار در موبایل: دکمه شناور بیزی روی شماره و اطلاعات نیفتد (نوار پایین تماس/مسیریابی دارد و
   دکمه‌های «از بیزی بپرس» در صفحه، گفتگو را باز می‌کنند) */
@media (max-width: 760px) {
    body:has(.biz-mobilebar) .bzs:not(.is-open) .bzs-launch,
    body:has(.biz-mobilebar) .bzs:not(.is-open) .bzs-hint,
    body:has(.biz-mobilebar) .bizi-nudge { display: none !important; }
}

/* تحویل صفحه و پیشنهاد ویرایش */
.biz-claim.is-focus { box-shadow: 0 0 0 3px rgba(20, 99, 255, .35); }
.claim-step { display: flex; gap: .4rem; margin-top: .6rem; }
.claim-step input { flex: 1; min-width: 0; text-align: center; letter-spacing: .3em; font-size: 1.1rem; padding: .55rem; border: 1px solid var(--bz-line); border-radius: 12px; font-family: inherit; }
.claim-step .btn { margin: 0 !important; white-space: nowrap; }
.claim-msg { display: block; margin-top: .5rem; font-size: .78rem; color: var(--bz-muted); line-height: 1.8; }
.claim-msg.is-ok, .sg-msg.is-ok { color: #12784a; } .claim-msg.is-err, .sg-msg.is-err { color: #b42318; }
.biz-suggest-link { display: flex; align-items: center; justify-content: center; gap: .4rem; width: 100%; margin: .6rem 0 1rem; padding: .6rem; border: 1px dashed var(--bz-line); border-radius: 14px; background: #fff; color: var(--bz-muted); font-family: inherit; font-size: .8rem; cursor: pointer; }
.biz-suggest-link:hover { color: var(--bz-blue); border-color: var(--bz-blue); }
.sg-dlg { border: 0; border-radius: 22px; padding: 0; width: min(460px, 94vw); box-shadow: 0 30px 70px -20px rgba(6, 22, 74, .5); }
.sg-dlg::backdrop { background: rgba(6, 22, 74, .45); }
.sg-form { padding: 1.3rem 1.3rem 1.1rem; display: flex; flex-direction: column; gap: .55rem; direction: rtl; }
.sg-form h3 { margin: 0 0 .3rem; font-size: 1.02rem; }
.sg-form label { display: flex; flex-direction: column; gap: .25rem; font-size: .8rem; font-weight: 700; }
.sg-form input[type=text], .sg-form textarea { border: 1px solid var(--bz-line); border-radius: 12px; padding: .55rem .7rem; font-family: inherit; font-size: .9rem; }
.sg-issues { display: grid; grid-template-columns: repeat(2, 1fr); gap: .3rem; }
.sg-issues label { flex-direction: row; align-items: center; font-weight: 500; padding: .45rem .6rem; border: 1px solid var(--bz-line); border-radius: 10px; cursor: pointer; }
.sg-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.sg-msg { margin: 0; font-size: .82rem; min-height: 1.2em; }
.sg-actions { display: flex; gap: .5rem; }
.sg-actions .btn { margin: 0 !important; flex: 1; }

/* صفحه اصلی: یافتن و تحویل گرفتن کسب‌وکار، مرور شهرها */
.bz-cta-claim { margin-top: 1.1rem; max-width: 520px; }
.bz-cta-claim label { display: block; font-size: .84rem; color: rgba(255, 255, 255, .85); margin-bottom: .45rem; }
.bz-cta-claim label i { color: #ffd25a; margin-inline-end: .25rem; }
.bz-cta-claim > div { display: flex; gap: .4rem; background: rgba(255, 255, 255, .12); border: 1px solid rgba(255, 255, 255, .25); border-radius: 14px; padding: .3rem; }
.bz-cta-claim input { flex: 1; min-width: 0; border: 0; background: #fff; border-radius: 10px; padding: .6rem .8rem; font-family: inherit; font-size: .9rem; }
.bz-cta-claim button { border: 0; border-radius: 10px; padding: .6rem 1.1rem; font-family: inherit; font-weight: 800; color: #0b2170; background: linear-gradient(135deg, #ffe08a, #f5b301); cursor: pointer; white-space: nowrap; }
.bz-city-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; margin-top: 1rem; }
.bz-city-chips a { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem 1rem; border-radius: 999px; background: #fff; border: 1px solid var(--bz-line); color: var(--bz-ink); font-weight: 700; font-size: .88rem; box-shadow: 0 6px 16px -14px rgba(15, 40, 110, .4); transition: all .15s ease; }
.bz-city-chips a i { color: var(--bz-blue); font-size: .8rem; }
.bz-city-chips a small { color: var(--bz-muted); font-weight: 500; }
.bz-city-chips a:hover { border-color: var(--bz-blue); color: var(--bz-blue); transform: translateY(-2px); }

/* صفحه کسب‌وکار: منبع اطلاعات و کادر تحویل صفحه */
.biz-source { margin: 0 0 .5rem !important; font-size: .78rem; color: #8a5a00; background: #fff8e6; border-radius: 10px; padding: .35rem .7rem; display: inline-block; }
.biz-source a { font-weight: 800; }
.biz-claim { border: 0 !important; border-radius: 20px !important; padding: 1.2rem !important; background: radial-gradient(260px 140px at 100% 0%, rgba(255, 210, 90, .3), transparent 70%), linear-gradient(160deg, #fffaf0, #fff) !important;
    box-shadow: inset 0 0 0 1.5px #f2d57e, 0 14px 30px -22px rgba(176, 116, 0, .5); scroll-margin-top: 100px; }
.biz-claim strong { display: flex; align-items: center; gap: .45rem; font-size: 1rem; }
.biz-claim strong i { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; color: #fff; background: linear-gradient(135deg, #ffd25a, #f59e0b); }
.biz-claim p { font-size: .84rem; line-height: 2; }
.biz-claim .btn-primary { background: linear-gradient(135deg, #2a72ff, #1463ff) !important; }
