/*
 * صفحه تک‌آگهی (public/templates/parts/ad-detail.php، طراحی ۲۰۲۶-۱۰-۱۸).
 *
 * ظاهر از شیوه‌نامه (DESIGN-SYSTEM.md): کارت فقط حاشیه با گوشه ۱۶ و بی‌سایه، دکمه واحد .fap-btn،
 * برچسب fap_badge، ردیف‌های هاب (fap-hub.css)، رنگ و اندازه از توکن‌ها. این‌جا فقط چیدمان و
 * گونه‌های همین صفحه است. وزن دوکلاسه عمدی است تا قانون لینک و عنوان کیت قالب (۰،۱،۱) را ببرد.
 */

.fap-adp {
    max-width: 1290px;
    margin: 0 auto;
    direction: rtl;
}

/* مسیر راهنما: جزء واحد .fap-crumbs (fap-msg.css)، بی‌قاب مثل فهرست؛ این‌جا فقط جای آن */
.fap-adp .fap-adp__crumbs { padding: 14px 12px 0; }

.fap-adp .fap-adp__grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
    align-items: start;
    padding: 10px;
}

.fap-adp .fap-adp__grid > * { grid-column: span 3; min-width: 0; }
.fap-adp .fap-adp__gallery { grid-column: span 3; }
.fap-adp .fap-adp__side { grid-column: span 2; grid-row: span 3; display: flex; flex-direction: column; gap: 12px; min-width: 0; }

/* کارت (.fap-card شیوه‌نامه) */
.fap-adp .fap-adp-card {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 22px;
    background: var(--fap-c-surface, #fff);
    border: 1px solid var(--fap-c-line, #e0e8e9);
    border-radius: var(--fap-r-lg, 16px);
}
.fap-adp .fap-adp-card__title { margin: 0; color: var(--fap-c-ink, #13292d); font-size: var(--fap-fs-xl, 18px); font-weight: 700; line-height: 1.6; }

/* ---------------------------------------------------------------- کارت خلاصه */
.fap-adp .fap-adp-sum { gap: 12px; }
.fap-adp .fap-adp-sum__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 44px; }
.fap-adp .fap-adp-sum__badges { display: flex; flex-wrap: wrap; gap: 6px; }
.fap-adp .fap-adp-sum__tools { display: flex; gap: 8px; margin-inline-start: auto; }
.fap-adp .fap-adp-sum__title { margin: 0; color: var(--fap-c-ink, #13292d); font-size: var(--fap-fs-2xl, 22px); font-weight: 800; line-height: 1.55; }
.fap-adp .fap-adp-sum__loc { display: flex; align-items: center; gap: 6px; margin: -6px 0 0; color: var(--fap-c-muted, #566a6e); font-size: var(--fap-fs-md, 14px); line-height: 1.7; }
.fap-adp .fap-adp-sum__loc .fap-i { flex: 0 0 auto; color: var(--fap-c-faint, #98aaae); }

/* علاقه‌مندی و اشتراک: قلب «ذخیره‌شده» توپر و قرمز (single-ad.js کلاس را می‌گذارد) */
.fap-adp .fap-adp-icon-btn__ico { display: inline-flex; line-height: 0; }
.fap-adp .fap-adp-icon-btn.is-favorited .fap-adp-icon-btn__ico { color: var(--fap-c-error, #c81e1e); }
.fap-adp .fap-adp-icon-btn.is-favorited .fap-adp-icon-btn__ico svg path { fill: currentColor; }

/* چهار کاشی کلیدی: همان کاشی آیکن بخش مشخصات */
.fap-adp .fap-adp-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.fap-adp .fap-adp-facts li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    margin: 0;
    padding: 10px 12px;
    border-radius: var(--fap-r-md, 12px);
    background: var(--fap-c-bg, #f3f7f7);
}
.fap-adp .fap-adp-facts__ic {
    display: flex;
    grid-row: 1 / 3;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: var(--fap-r-sm, 10px);
    background: var(--fap-c-surface, #fff);
    color: var(--fap-brand-600, #0d8276);
}
.fap-adp .fap-adp-facts__k { color: var(--fap-c-muted, #566a6e); font-size: var(--fap-fs-xs, 12px); line-height: 1.6; }
.fap-adp .fap-adp-facts__v { overflow: hidden; color: var(--fap-c-ink, #13292d); font-size: var(--fap-fs-md, 14px); font-weight: 700; line-height: 1.6; white-space: nowrap; text-overflow: ellipsis; }

/* قیمت و تماس */
.fap-adp .fap-adp-sum__buy { display: flex; flex-direction: column; gap: 12px; padding-top: 14px; border-top: 1px solid var(--fap-c-line-soft, #edf2f2); }
.fap-adp .fap-adp-price { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.fap-adp .fap-adp-price__k { color: var(--fap-c-muted, #566a6e); font-size: var(--fap-fs-md, 14px); font-weight: 600; }
.fap-adp .fap-adp-price__v { margin: 0; color: var(--fap-brand-600, #0d8276); font-size: var(--fap-fs-2xl, 22px); font-weight: 800; line-height: 1.5; }
.fap-adp .fap-ad-price-off { display: inline-flex; align-items: baseline; gap: 8px; white-space: nowrap; }
.fap-adp .fap-ad-price-old { color: var(--fap-c-faint, #98aaae); font-size: .72em; font-weight: 400; text-decoration: line-through; }

/* «مشاهده شماره تماس فروشنده» = .fap-btn--primary --lg --block؛ گوشی رو به متن */
.fap-adp .fap-adp-phone { width: 100%; }
.fap-adp .fap-adp-phone__btn .fap-i,
.fap-adp .fap-adp-bar__call .fap-i { transform: scaleX(-1); }

/* ---------------------------------------------------------------- کارت شعبه */
.fap-adp .fap-adp-branch { gap: 10px; background: var(--fap-brand-50, #eef8f6); border-color: var(--fap-brand-200, #c6e9e4); }
.fap-adp .fap-adp-branch__head { display: flex; align-items: center; gap: 12px; }
.fap-adp .fap-adp-branch__ic {
    display: flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    height: 44px;
    border-radius: var(--fap-r-md, 12px);
    background: var(--fap-c-surface, #fff);
    color: var(--fap-brand-600, #0d8276);
}
.fap-adp .fap-adp-branch__kicker { display: block; color: var(--fap-brand-700, #0b6c62); font-size: var(--fap-fs-xs, 12px); font-weight: 600; line-height: 1.6; }
.fap-adp .fap-adp-branch__name { margin: 0; color: var(--fap-c-ink, #13292d); font-size: var(--fap-fs-lg, 16px); font-weight: 800; line-height: 1.6; }
.fap-adp .fap-adp-branch__row { display: flex; align-items: flex-start; gap: 8px; margin: 0; color: var(--fap-c-text, #34494d); font-size: var(--fap-fs-md, 14px); line-height: 1.8; }
.fap-adp .fap-adp-branch__row .fap-i { flex: 0 0 auto; margin-top: 3px; color: var(--fap-brand-600, #0d8276); }
.fap-adp .fap-adp-branch__acts { display: flex; flex-wrap: wrap; gap: 8px; }
.fap-adp .fap-adp-branch__acts .fap-btn { flex: 1 1 auto; }

/* کادر نمایشگاه (آگهی نمایشگاه): کارت کلیک‌خور، هاور فقط حاشیه */
.fap-adp a.fap-adp-showroom {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: var(--fap-c-surface, #fff);
    border: 1px solid var(--fap-c-line, #e0e8e9);
    border-radius: var(--fap-r-lg, 16px);
    color: var(--fap-c-ink, #13292d);
    text-decoration: none;
    transition: border-color var(--fap-dur-fast, .15s) ease;
}
.fap-adp a.fap-adp-showroom:hover { border-color: var(--fap-brand-200, #c6e9e4); color: var(--fap-c-ink, #13292d); }
.fap-adp .fap-adp-showroom__logo { flex: 0 0 auto; max-width: 96px; line-height: 0; }
.fap-adp .fap-adp-showroom__text { display: flex; flex-direction: column; justify-content: center; gap: 4px; min-width: 0; }
.fap-adp .fap-adp-showroom__text strong { color: var(--fap-c-ink, #13292d); font-size: var(--fap-fs-lg, 16px); font-weight: 700; }
.fap-adp .fap-adp-showroom__text span { color: var(--fap-c-muted, #566a6e); font-size: var(--fap-fs-md, 14px); line-height: 1.7; }

/* ابزارهای فرمولا: همان ردیف‌های هاب «حساب من» (fap-hub.css)؛ عنوان هم‌وزن عنوان بقیه کارت‌ها */
.fap-adp .fap-adp-tools { margin: 0; }
.fap-adp .fap-adp-tools .fap-hub-group__title { padding: 18px 16px 6px; color: var(--fap-c-ink, #13292d); font-size: var(--fap-fs-xl, 18px); font-weight: 700; }

/* گزارش اشکال: پیوند آرام */
.fap-adp .fap-adp-report { display: flex; justify-content: center; }
.fap-adp .fap-adp-report a.fap-report-ad-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 6px;
    color: var(--fap-c-muted, #566a6e);
    font-size: var(--fap-fs-sm, 13px);
    font-weight: 600;
    line-height: 1.6;
    text-decoration: none;
    transition: color var(--fap-dur-fast, .15s) ease;
}
.fap-adp .fap-adp-report a.fap-report-ad-btn:hover { color: var(--fap-c-error, #c81e1e); }

/* توضیحات با «بیشتر بخوانید» (ad-detail.js فقط وقتی متن بلندتر از قاب است دکمه را نشان می‌دهد) */
.fap-adp .fap-adp-desc__text { color: var(--fap-c-text, #34494d); font-size: var(--fap-fs-lg, 16px); line-height: 2; overflow-wrap: anywhere; }
.fap-adp .fap-adp-desc__text.is-clamped { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 7; }
.fap-adp .fap-adp-more { align-self: flex-start; margin-top: -6px; }
.fap-adp .fap-adp-more[hidden] { display: none; }

/* مشخصات (شورت‌کد fap_ad_specs، استایل درون‌خطی خودش): همان کاشی افقی کارت خلاصه در همه عرض‌ها؛
   عنوان هم‌اندازه بقیه کارت‌ها و دکمه کاتالوگ کنار آن مثل «مشاهده همه». کاشی کلیک‌خور نیست، پس هاور ندارد. */
.fap-adp .fap-adp-specs .fap-specs-head { flex-wrap: wrap; align-items: center; gap: 10px; margin: 0; }
.fap-adp .fap-adp-specs .fap-specs-head .fap-specs-title { font-size: var(--fap-fs-xl, 18px); }
.fap-adp .fap-adp-specs .fap-specs-cta { display: inline-flex; width: auto; margin-inline-start: auto; }
.fap-adp .fap-adp-specs .fap-specs-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.fap-adp .fap-adp-specs .fap-spec-card {
    flex-direction: row;
    justify-content: flex-start;
    gap: 10px;
    padding: 10px 12px;
    border-radius: var(--fap-r-md, 12px);
    text-align: right;
    transition: none;
}
.fap-adp .fap-adp-specs .fap-spec-card:hover { background: var(--fap-c-bg, #f3f7f7); }
.fap-adp .fap-adp-specs .fap-spec-icon { width: 36px; height: 36px; border-radius: var(--fap-r-sm, 10px); background: var(--fap-c-surface, #fff); color: var(--fap-brand-600, #0d8276); }
.fap-adp .fap-adp-specs .fap-spec-icon svg { width: 18px; height: 18px; }
.fap-adp .fap-adp-specs .fap-spec-text { gap: 0; width: auto; text-align: right; }
.fap-adp .fap-adp-specs .fap-spec-label { font-size: var(--fap-fs-xs, 12px); line-height: 1.6; }

/* آگهی‌های مشابه: سربرگ هم‌وزن بقیه بخش‌ها و «مشاهده همه» */
.fap-adp .fap-adp__similar { padding: 0 10px; }
.fap-adp .fap-adp__similar .fap-rec-title { margin: 0; color: var(--fap-c-ink, #13292d); font-size: var(--fap-fs-xl, 18px); font-weight: 700; line-height: 1.6; }
.fap-adp .fap-adp__similar .fap-rec-more { margin-inline-start: auto; }

/* نوار تماس چسبان (فقط موبایل و تبلت؛ پایین‌تر) */
.fap-adp .fap-adp-bar { display: none; }

/* ---------------------------------------------------------------- تبلت */
@media (max-width: 1024px) {
    .fap-adp .fap-adp__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 15px; }
    .fap-adp .fap-adp-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }

    /* ستون کناری باز می‌شود (display: contents) تا هر کارتش جای خودش را در ترتیب بگیرد:
       گالری، خلاصه، شعبه و نمایشگاه، توضیحات، ویدیو و کارشناسی، مشخصات، گزارش اشکال، و ابزارها ته
       صفحه درست پیش از آگهی‌های مشابه (خواست کاربر) */
    .fap-adp .fap-adp__side { display: contents; }
    .fap-adp .fap-adp__side > * { grid-column: 1 / -1; min-width: 0; }
    .fap-adp .fap-adp__gallery { order: 0; }
    .fap-adp .fap-adp-sum { order: 1; }
    .fap-adp .fap-adp-branch { order: 2; }
    .fap-adp .fap-adp-showroom { order: 3; }
    .fap-adp .fap-adp-desc { order: 4; }
    .fap-adp .fap-adp-video, .fap-adp .fap-adp-expert { order: 5; }
    .fap-adp .fap-adp-specs { order: 6; }
    .fap-adp .fap-adp-report { order: 7; }
    .fap-adp .fap-adp-tools { order: 8; }

    /* علاقه‌مندی و اشتراک در سربرگ اپی قالب‌اند (همین دکمه‌ها را می‌زنند؛ theme.js) */
    body.fml-kit .fap-adp .fap-adp-sum__tools { display: none; }
    body.fml-kit .fap-adp .fap-adp-sum__top { min-height: 0; }
    body.fml-kit .fap-adp .fap-adp-sum__top.is-nobadge { display: none; }

    /* نوار تماس چسبان بالای نوار پایین (fap-tabbar.css: ۶۶ پیکسل) */
    .fap-adp .fap-adp-bar {
        position: fixed;
        inset-inline: 0;
        bottom: calc(66px + env(safe-area-inset-bottom, 0px));
        z-index: 89;
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 10px 16px;
        background: var(--fap-c-surface, #fff);
        border-top: 1px solid var(--fap-c-line, #e0e8e9);
        transform: translateY(calc(100% + 66px));
        visibility: hidden;
        transition: transform var(--fap-dur, .25s) ease, visibility 0s linear var(--fap-dur, .25s);
    }
    .fap-adp .fap-adp-bar.is-on { transform: none; visibility: visible; transition: transform var(--fap-dur, .25s) ease; }
    .fap-adp .fap-adp-bar__price { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; line-height: 1.4; }
    .fap-adp .fap-adp-bar__price span { color: var(--fap-c-muted, #566a6e); font-size: var(--fap-fs-xs, 12px); }
    .fap-adp .fap-adp-bar__price b { overflow: hidden; color: var(--fap-brand-600, #0d8276); font-size: var(--fap-fs-lg, 16px); font-weight: 800; white-space: nowrap; text-overflow: ellipsis; }
    .fap-adp .fap-adp-bar__price .fap-ad-price-old { display: none; }
    .fap-adp .fap-adp-bar__call { flex: 0 0 auto; min-width: 128px; }

    /* جای نوار تماس (۶۵ پیکسل) ته صفحه، زیر فوتر؛ نه بالای فوتر */
    body.fap-has-tabbar:has(.fap-adp-bar) { padding-bottom: calc(66px + 65px + env(safe-area-inset-bottom, 0px)); }
}

@media (max-width: 1024px) and (prefers-reduced-motion: reduce) {
    .fap-adp .fap-adp-bar,
    .fap-adp .fap-adp-bar.is-on { transition: none; }
}

/* ---------------------------------------------------------------- موبایل */
@media (max-width: 767px) {
    .fap-adp .fap-adp__grid { gap: 12px; padding: 10px; }

    .fap-adp .fap-adp__crumbs { padding: 8px 16px; }
    .fap-adp .fap-adp-specs .fap-specs-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    /* گالری لبه‌به‌لبه مثل اپ */
    .fap-adp .fap-adp__gallery { margin: -10px -10px 0; }
    .fap-adp .fap-adp__gallery .slider-wrapper { border-radius: 0; }

    .fap-adp .fap-adp-card { padding: 16px; }
    .fap-adp .fap-adp-sum__title { font-size: var(--fap-fs-xl, 18px); }
    .fap-adp .fap-adp-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .fap-adp .fap-adp-desc__text { font-size: var(--fap-fs-md, 14px); }
    .fap-adp .fap-adp-showroom__logo { max-width: 80px; }
}

/* ---------------------------------------------------------------- پنجره اشتراک‌گذاری (single-ad.js) */
.fap-share-mdl .fap-share__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 4px 0 18px; }
.fap-share-mdl a.fap-share__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 10px 4px;
    border-radius: var(--fap-r-md, 12px);
    color: var(--fap-c-text, #34494d);
    font-size: var(--fap-fs-sm, 13px);
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    transition: background-color .15s;
}
.fap-share-mdl a.fap-share__item:hover { background: var(--fap-c-bg-soft, #f8fafa); color: var(--fap-c-ink, #13292d); }
.fap-share-mdl a.fap-share__item:focus-visible { outline: 2px solid var(--fap-brand-600, #0d8276); outline-offset: 2px; }
.fap-share-mdl .fap-share__ico {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: var(--fap-r-lg, 16px);
    background: var(--fap-brand-50, #eef8f6);
    color: var(--fap-brand-600, #0d8276);
}
/* تلگرام و واتساپ با لوگوی واقعی (fap_icon telegram/whatsapp، توپر): رنگ برند با color روی خود آیکن */
.fap-share-mdl .fap-share__item--telegram .fap-share__ico { background: transparent; color: var(--fap-share-telegram, #26a5e4); }
.fap-share-mdl .fap-share__item--telegram .fap-share__ico .fap-i { width: 52px; height: 52px; }
.fap-share-mdl .fap-share__item--whatsapp .fap-share__ico { background: var(--fap-share-whatsapp, #25d366); color: var(--fap-c-surface, #fff); }
.fap-share-mdl .fap-share__item--whatsapp .fap-share__ico .fap-i { width: 30px; height: 30px; }
.fap-share-mdl .fap-share__copy { display: flex; gap: 8px; }
.fap-share-mdl .fap-share__copy .fap-share__url { flex: 1 1 auto; min-width: 0; text-align: left; }
.fap-share-mdl .fap-share__copy .fap-btn { flex: 0 0 auto; }
