:root{--detail-header-height:83px;--detail-scroll-offset:160px}
[data-section-nav]{position:sticky;top:var(--detail-header-height);z-index:40;background:#fff;border-block:1px solid var(--border);display:flex;flex-wrap:nowrap;gap:12px;padding:12px;overflow-x:auto;scrollbar-width:thin}
[data-section-nav] a{flex:none;padding:8px 12px;white-space:nowrap;border-radius:6px;color:var(--brand)}
[data-section-nav] a[aria-current=location]{background:var(--brand);color:white}
.country-content section[id],.hotel-section[id]{scroll-margin-top:var(--detail-scroll-offset)}
.back-to-top{--detail-back-to-top-gap:24px;position:fixed;inset-inline-end:22px;bottom:calc(var(--detail-bottom-navigation-height,0px) + max(var(--detail-back-to-top-gap),env(safe-area-inset-bottom,0px)));display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--brand);color:#fff;z-index:45;box-shadow:0 2px 8px #0002;cursor:pointer}
.back-to-top svg{width:22px;height:22px;pointer-events:none}
.back-to-top[hidden]{display:none}.detail-lightbox{width:min(1000px,94vw);max-height:94dvh;padding:20px;border:0;border-radius:12px;background:#fff;color:var(--brand)}
.detail-lightbox::backdrop{background:#142a32df}.detail-lightbox header,.detail-lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:16px}.detail-lightbox h2{font-size:20px;margin:0}.detail-lightbox button{border:1px solid var(--border);border-radius:8px;background:#fff;padding:8px 16px;min-height:44px;cursor:pointer}
.detail-lightbox figure{margin:16px 0}.detail-lightbox img{display:block;max-width:100%;width:100%;height:60dvh;object-fit:contain}.detail-lightbox figcaption{padding-top:12px;line-height:1.8}.detail-lightbox button:disabled{opacity:.4}
[data-gallery-image]{padding:0;border:0;background:var(--surface);cursor:zoom-in;color:inherit;font:inherit}[data-gallery-image] img{display:block}
.country-text,.hotel-text{text-align:justify;max-width:80ch}.detail-lightbox :focus-visible,[data-gallery-image]:focus-visible,.back-to-top:focus-visible,[data-section-nav] a:focus-visible{outline:3px solid var(--brand);outline-offset:4px}
@media(max-width:600px){.detail-lightbox{padding:14px}.detail-lightbox img{height:52dvh}.back-to-top{inset-inline-end:14px;--detail-back-to-top-gap:20px}[data-section-nav]{gap:4px;padding:8px}.country-text,.hotel-text{line-height:2}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
.detail-lightbox{max-width:1000px}.detail-lightbox img{max-height:60dvh;margin:0}.detail-lightbox output{direction:ltr;unicode-bidi:isolate}
[data-section-nav] a { display:inline-flex; align-items:center; gap:7px; }
[data-section-nav] a img { flex:none; }
[data-section-nav] a[aria-current=location] img { filter:brightness(0) invert(1); }
.detail-gallery-open { overflow:hidden; }
.detail-lightbox { width:min(1120px,96vw); max-width:1120px; max-height:96dvh; padding:18px; }
.detail-lightbox[open] { display:grid; grid-template-rows:auto minmax(0,1fr) auto auto; gap:12px; }
.detail-lightbox figure { margin:0; min-height:0; }
.detail-lightbox [data-gallery-current] { height:58dvh; max-height:58dvh; }
.detail-lightbox figcaption { font-size:13px; max-height:4em; overflow:auto; padding-top:8px; }
.detail-lightbox-thumbnails { display:flex; gap:8px; overflow-x:auto; overflow-y:hidden; min-width:0; max-width:100%; padding:5px; direction:rtl; scrollbar-width:thin; overscroll-behavior-inline:contain; touch-action:pan-x; scroll-padding-inline:5px; }
.detail-lightbox-thumbnails button { flex:0 0 72px; height:58px; padding:3px; min-height:0; border:2px solid transparent; border-radius:8px; }
.detail-lightbox-thumbnails button[aria-pressed=true] { border-color:var(--brand); background:#edf2f3; }
.detail-lightbox-thumbnails img { width:100%; height:100%; max-height:none; object-fit:cover; border-radius:4px; }
@media(max-width:600px) {
    .detail-lightbox { width:100vw; max-width:100vw; height:100dvh; max-height:100dvh; margin:0; padding:14px; border-radius:0; }
    .detail-lightbox[open] { grid-template-rows:auto minmax(0,1fr) 80px auto; }
    .detail-lightbox figure { display:flex; flex-direction:column; justify-content:center; }
    .detail-lightbox [data-gallery-current] { height:100%; min-height:0; max-height:calc(100dvh - 240px); }
    .detail-lightbox-thumbnails { align-items:center; }
    .detail-lightbox-thumbnails button { flex-basis:70px; }
}

/* کنترل‌های شخصی مقصد، فقط در سربرگ همان مقصد. */
/* Personal destination controls stay scoped to the contextual header. */
.private-destination-actions { inline-size:fit-content; max-inline-size:100%; min-inline-size:0; margin-block:16px 4px; text-align:start; }
.private-destination-actions__controls { display:flex; flex-wrap:wrap; align-items:center; gap:8px; max-inline-size:100%; }
.private-destination-actions__form { display:flex; flex:0 1 auto; min-inline-size:0; max-inline-size:100%; margin:0; }
.private-destination-actions__button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-inline-size:44px; min-block-size:44px; max-inline-size:100%; padding:9px 12px; border:1px solid var(--border,#cfddd8); border-radius:999px; background:#fff; color:var(--brand,#163e4c); font:inherit; font-size:14px; line-height:1.5; text-align:start; transition:background-color .12s,border-color .12s; }
.private-destination-actions__button [data-private-state-label] { min-inline-size:0; overflow-wrap:anywhere; }
.private-destination-actions__button:hover:not(:disabled) { border-color:var(--primary,#23705b); background:#f3f8f5; }
.private-destination-actions__button[aria-pressed=true] { border-color:var(--primary,#23705b); background:#e5f2eb; background:color-mix(in srgb,var(--primary,#23705b) 14%,white); }
.private-destination-actions__button:focus-visible,.private-destination-actions__status:focus-visible { outline:3px solid var(--accent,#d6a449); outline-offset:3px; }
.private-destination-actions__icon,.private-destination-actions__check { flex:none; inline-size:19px; block-size:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.private-destination-actions__symbol { display:inline-grid; place-items:center; flex:none; inline-size:19px; block-size:19px; }
.private-destination-actions__symbol > svg { grid-area:1 / 1; }
.private-destination-actions__check { stroke-width:2.4; visibility:hidden; }
.private-destination-actions__button[aria-pressed=true]:not(.private-destination-actions__button--favorite) .private-destination-actions__icon { visibility:hidden; }
.private-destination-actions__button[aria-pressed=true]:not(.private-destination-actions__button--favorite) .private-destination-actions__check { visibility:visible; }
.private-destination-actions__button--favorite { inline-size:44px; padding-inline:0; gap:0; }
.private-destination-actions__button[aria-pressed=true] .private-destination-actions__heart { fill:currentColor; }
.private-destination-actions .private-destination-actions__hint { margin:7px 0 0; font-size:12px; line-height:1.7; opacity:.85; letter-spacing:normal; }
.private-destination-actions .private-destination-actions__status { max-inline-size:42ch; margin:8px 0 0; padding:8px 12px; border:1px solid var(--border,#cfddd8); border-radius:8px; background:#fff; color:var(--brand,#163e4c); font-size:13px; line-height:1.8; overflow-wrap:anywhere; }
@media(prefers-reduced-motion:reduce) { .private-destination-actions__button { transition:none; } }
