/* ==========================================================================
 * css/ft12.css  -  «نوین», the flytoday-structured UI (the *12 pages)
 *
 * Not a skin over the old markup: search12 / hotel12 / book12 / review12 /
 * result12 / account12 render their own markup and load ONLY this sheet (plus
 * the panel's own IRANYekan face). Nothing here can reach a classic page.
 *
 * Measured off flytoday.ir with getComputedStyle / their Tailwind build:
 *   ink ramp      slate  #0f172a #1e293b #334155 #475569 #64748b #94a3b8 #cbd5e1 #e2e8f0
 *   border        #cbd5e1 (gray-300), fields #0f172a / #475569
 *   brand         #3662db ramp (blue)  - here the DEFAULT is green, see below
 *   success       #158554 / #116b46  (amenities, prices)
 *   error         #ca2e2b / #b12724
 *   popover       0 1px 16px #0000001f, radius 24px
 *   container     1440 max, 72px gutters (1296 content) ... 12px on phones
 *   type          IRANYekanX FaNum -> this panel's own "primary-font"
 *
 * THE COLOUR SWITCH. html[data-ft-brand="green"|"blue"] swaps only the
 * --b-* ramp; every component reads the ramp, so one attribute repaints the
 * whole site. Green is ASA's own and the default.
 * ========================================================================== */

@font-face{font-family:"ft-yekan";src:url("../assets/fonts/farsi-fonts/iran-yekan-300.woff2") format("woff2"),url("../assets/fonts/farsi-fonts/iran-yekan-300.woff") format("woff");font-weight:300;font-display:swap}
@font-face{font-family:"ft-yekan";src:url("../assets/fonts/farsi-fonts/iran-yekan-400.woff2") format("woff2"),url("../assets/fonts/farsi-fonts/iran-yekan-400.woff") format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"ft-yekan";src:url("../assets/fonts/farsi-fonts/iran-yekan-500.woff2") format("woff2"),url("../assets/fonts/farsi-fonts/iran-yekan-500.woff") format("woff");font-weight:500;font-display:swap}
@font-face{font-family:"ft-yekan";src:url("../assets/fonts/farsi-fonts/iran-yekan-700.woff2") format("woff2"),url("../assets/fonts/farsi-fonts/iran-yekan-700.woff") format("woff");font-weight:600 800;font-display:swap}

:root,
html[data-ft-brand="green"]{
    --b-50:#effcf6; --b-100:#dcf7eb; --b-200:#b2ecd4; --b-300:#7bd8b4; --b-400:#3bbd8f;
    --b-500:#13a172; --b-600:#08805b; --b-700:#076a4c; --b-800:#07563e; --b-900:#074533; --b-950:#03271d;
    --hero-a:#03271d; --hero-b:#0a4a37; --hero-line:#1fbf8c;
}
html[data-ft-brand="blue"]{
    --b-50:#eff6ff; --b-100:#e5effe; --b-200:#cbe2fe; --b-300:#a1c4f4; --b-400:#72a3ed;
    --b-500:#5385e7; --b-600:#3662db; --b-700:#2c4ec9; --b-800:#2a40a3; --b-900:#273a81; --b-950:#1c264f;
    --hero-a:#0b1733; --hero-b:#13306b; --hero-line:#e2463f;
}
:root{
    --g-20:#fafbfc; --g-50:#f7f9fa; --g-100:#ebeff2; --g-200:#e2e8f0; --g-300:#cbd5e1; --g-400:#94a3b8;
    --g-500:#64748b; --g-600:#475569; --g-700:#334155; --g-800:#1e293b; --g-900:#0f172a; --g-950:#020617;
    --ok-50:#f0fdf4; --ok-100:#d8f5e2; --ok-600:#158554; --ok-700:#116b46;
    --er-50:#fef2f2; --er-300:#fca5a5; --er-500:#e6514e; --er-600:#ca2e2b; --er-700:#b12724;
    --y-50:#fefce8; --y-600:#ca8a04; --y-700:#a16207; --warn:#f59e0b;
    --pop:0 1px 16px 0 #0000001f;
    --ease:cubic-bezier(0,0,.2,1);
}

/* ---------------------------------------------------------------- base -- */
html{-webkit-text-size-adjust:100%;color-scheme:only light}
*,*::before,*::after{box-sizing:border-box}
body.ft{margin:0;background:#fff;color:#212529;font:400 16px/1.5 "ft-yekan","primary-font","IRANYekanX",tahoma,sans-serif;
    direction:rtl;text-align:right;-webkit-font-smoothing:antialiased}
/* resets at ZERO specificity (:where) so every component class wins over them */
:where(.ft) a{color:inherit;text-decoration:none}
:where(.ft) button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
:where(.ft) input,:where(.ft) select,:where(.ft) textarea{font:inherit;color:inherit}
:where(.ft) img{max-width:100%;display:block}
:where(.ft) :is(h1,h2,h3,h4,h5,h6,p){margin:0}
:where(.ft) ul{margin:0;padding:0;list-style:none}
.ft [hidden]{display:none!important}
.ft svg.i{width:24px;height:24px;flex:none;stroke:currentColor;fill:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}
.ft svg.i--s{width:20px;height:20px}
.ft svg.i--xs{width:16px;height:16px}
.ft svg.i--xxs{width:14px;height:14px}
.ft svg.i--b{stroke-width:1.5}
.ft ::selection{background:var(--b-100)}

.ft-container{width:100%;margin-inline:auto;padding-inline:12px}
@media (min-width:576px){.ft-container{max-width:576px;padding-inline:28px}}
@media (min-width:768px){.ft-container{max-width:768px;padding-inline:34px}}
@media (min-width:992px){.ft-container{max-width:992px;padding-inline:26px}}
@media (min-width:1200px){.ft-container{max-width:1200px;padding-inline:40px}}
@media (min-width:1440px){.ft-container{max-width:1440px;padding-inline:72px}}

.ft-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ------------------------------------------------------------- buttons -- */
.ft-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;border:1px solid var(--b-600);
    background:var(--b-600);color:#fff!important;font-weight:600;font-size:14px;line-height:20px;min-height:36px;padding:0 20px;
    transition:background .15s,border-color .15s,color .15s;white-space:nowrap;text-align:center}
.ft-btn:hover{background:var(--b-700);border-color:var(--b-700)}
.ft-btn:active{background:var(--b-900);border-color:var(--b-900)}
.ft-btn:disabled,.ft-btn[aria-disabled="true"]{background:var(--g-300);border-color:var(--g-300);color:var(--g-400)!important;cursor:not-allowed}
.ft-btn--lg{min-height:48px;font-size:16px;font-weight:700;padding:0 24px}
.ft-btn--md{min-height:44px;font-size:16px;font-weight:500}
.ft-btn--sm{min-height:32px;font-size:12px;padding:0 16px}
.ft-btn--block{width:100%}
.ft-btn--ghost{background:#fff;color:var(--b-600)!important;border-color:var(--b-400)}
.ft-btn--ghost:hover{background:var(--g-50);color:var(--b-700)!important;border-color:var(--b-400)}
.ft-btn--line{background:#fff;color:var(--g-900)!important;border-color:var(--g-300);font-weight:500}
.ft-btn--line:hover{background:var(--b-50);border-color:var(--g-900)}
.ft-link{color:var(--b-600)!important;font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:4px}
.ft-link:hover{text-decoration:underline}
.ft-link--sm{font-size:14px}

/* --------------------------------------------------------------- header -- */
.ft-head{position:sticky;top:0;z-index:1030;background:#fff}
.ft-head__in{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.ft-head--line .ft-head__in{border-bottom:1px solid var(--g-300)}
.ft-head__r{display:flex;align-items:center;height:100%;min-width:0}
.ft-logo{display:flex;align-items:center;gap:8px;margin-inline-end:40px;color:var(--g-900)!important;font-weight:800;font-size:26px;letter-spacing:-.5px;white-space:nowrap}
.ft-logo__mark{width:34px;height:34px;border-radius:10px;background:var(--b-600);display:grid;place-items:center;color:#fff;font-size:15px;font-weight:800;letter-spacing:0}
.ft-logo small{font-size:12px;font-weight:500;color:var(--g-500);letter-spacing:0;margin-top:6px}
.ft-nav{display:flex;height:100%}
.ft-nav__a{position:relative;display:flex;align-items:center;padding:0 16px;font-size:14px;font-weight:700;color:var(--g-900)!important;height:100%}
.ft-nav__a::after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:transparent;transition:background .2s}
.ft-nav__a:hover::after{background:var(--g-900)}
.ft-nav__a.is-on{color:var(--g-900)!important}
.ft-nav__a.is-on::after{background:var(--b-600)}
.ft-nav__more{gap:6px}
.ft-nav__drop{position:relative;height:100%}
.ft-nav__menu{position:absolute;top:64px;inset-inline-start:0;min-width:200px;background:#fff;border-radius:16px;box-shadow:var(--pop);padding:8px;z-index:20}
.ft-nav__menu a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;font-size:14px;color:var(--g-800)!important}
.ft-nav__menu a:hover{background:var(--g-50)}
.ft-head__l{display:flex;align-items:center;gap:16px}
.ft-user{position:relative}
.ft-user__btn{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--g-900);height:40px}
.ft-user__av{width:24px;height:24px;border-radius:50%;background:var(--g-900);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700;line-height:1}
.ft-user__menu{position:absolute;top:52px;inset-inline-end:0;width:280px;background:#fff;border-radius:16px;box-shadow:0 4px 24px #0000001f;z-index:40;overflow:hidden;text-align:center}
.ft-user__hi{padding:20px 16px 16px;border-bottom:1px solid var(--g-300)}
.ft-user__hi b{display:block;font-size:14px;font-weight:700;color:var(--g-900)}
.ft-user__hi span{display:block;font-size:14px;color:var(--g-900);margin-top:6px}
.ft-user__lvl{display:inline-flex;margin-top:12px;padding:4px 10px;border-radius:4px;background:#d7843f;color:#fff;font-size:12px;font-weight:700}
.ft-user__bal{margin-top:12px;font-size:14px;color:var(--g-900)}
.ft-user__bal b{font-size:16px;font-weight:800}
.ft-user__menu a{display:block;padding:18px 24px;text-align:right;font-size:14px;color:var(--g-900)!important}
.ft-user__menu a:hover{background:var(--g-50)}
.ft-login{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--g-900)!important}

/* the two switches (UI + colour) - where flytoday has «میزبان شوید» */
.ft-sw{display:flex;align-items:center;gap:8px}
.ft-sw__ui{height:32px;padding:0 14px;border-radius:999px;background:var(--b-600);color:#fff!important;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:6px}
.ft-sw__ui:hover{background:var(--b-700)}
.ft-sw__color{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 4px;border:1px solid var(--g-300);border-radius:999px;background:#fff}
.ft-sw__dot{width:22px;height:22px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--g-300);transition:transform .15s,box-shadow .15s}
.ft-sw__dot[data-c="green"]{background:#08805b}
.ft-sw__dot[data-c="blue"]{background:#3662db}
html[data-ft-brand="green"] .ft-sw__dot[data-c="green"],
html[data-ft-brand="blue"] .ft-sw__dot[data-c="blue"]{box-shadow:0 0 0 2px var(--g-900);transform:scale(1.05)}

/* ----------------------------------------------------------------- hero -- */
.ft-hero{position:relative}
.ft-hero__band{position:absolute;inset:0 0 auto 0;height:145px;overflow:hidden;
    background:
      radial-gradient(120% 180% at 85% -40%, color-mix(in srgb,var(--hero-line) 30%,transparent) 0, transparent 45%),
      radial-gradient(90% 160% at 10% 140%, color-mix(in srgb,var(--hero-line) 22%,transparent) 0, transparent 50%),
      linear-gradient(180deg,var(--hero-a),var(--hero-b))}
.ft-hero__band svg{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.ft-hero__band::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#0000004d,transparent)}
.ft-hero__title{position:relative;z-index:1;color:#fff;text-align:center;font-size:24px;line-height:32px;font-weight:700;padding:32px 0}
.ft-hero .ft-card-search{position:relative;z-index:5;margin-top:-4px}

/* ---------------------------------------------------------- search card -- */
.ft-card-search{background:#fff;border:1px solid var(--g-300);border-radius:10px;margin-bottom:48px}
.ft-card-search--inner{border-radius:16px;padding:24px;margin:24px 0 0}
.ft-tabs{display:flex;justify-content:center;align-items:flex-end;height:64px;border-bottom:1px solid var(--g-300);margin-top:-16px;position:relative}
.ft-tabs__t{position:relative;padding:1px 24px 12px;font-size:16px;font-weight:700;color:#343b53!important;line-height:20px;white-space:nowrap}
.ft-tabs__t::after{content:"";position:absolute;inset-inline:0;bottom:-1px;height:2px;background:transparent;transition:background .25s}
.ft-tabs__t:hover::after{background:var(--g-900)}
.ft-tabs__t.is-on{color:var(--b-600)!important}
.ft-tabs__t.is-on::after{background:var(--b-600)}
.ft-sform{display:flex;flex-wrap:wrap;gap:16px;padding:24px}
.ft-card-search--inner .ft-sform{padding:0}
.ft-sform__dest{position:relative;flex:0 0 100%}
.ft-sform__dates{position:relative;display:flex;gap:12px;flex:2 1 0}
.ft-sform__pax{position:relative;flex:1 1 0}
.ft-sform__go{display:flex;align-items:flex-start;justify-content:center}
.ft-sform__go .ft-btn{min-height:48px;min-width:90px;max-width:92px;font-size:16px;font-weight:700}
@media (min-width:992px){.ft-sform__dest{flex:0 0 calc(33.333% - 11px)}}
@media (min-width:1200px){.ft-sform__dest{flex:0 0 calc(41.666% - 10px)}.ft-sform__dates{flex:0 1 300px}.ft-sform__dates .ft-field{min-width:0}}
.ft-card-search--inner .ft-sform__dest{flex:0 0 332px;max-width:100%}
.ft-card-search--inner .ft-sform__dates .ft-field{width:214px}

/* the floating-label field - one component for every box on every page */
.ft-field{position:relative;display:flex;align-items:center;gap:8px;width:100%;height:48px;padding:4px 12px;background:#fff;
    border:1px solid var(--g-900);border-radius:8px;overflow:hidden;text-align:right;cursor:pointer;flex:1 1 0;min-width:9rem}
.ft-field--soft{border-color:var(--g-600)}
.ft-field:focus-within,.ft-field.is-open{border-color:var(--b-600);box-shadow:0 0 0 1px var(--b-600)}
.ft-field__box{position:relative;flex:1;min-width:0;height:100%;display:flex;align-items:center}
.ft-field__lbl{position:absolute;inset-inline-start:0;top:calc(50% - .75rem);font-size:16px;line-height:24px;color:var(--g-900);pointer-events:none;
    transform-origin:top right;transition:transform .2s var(--ease)}
.ft-field.has-v .ft-field__lbl{transform:translateY(-12px) scale(.75)}
.ft-field__v{display:block;width:100%;margin-top:16px;line-height:20px;font-size:16px;color:var(--g-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;outline:0;background:transparent;padding:0;text-align:right}
.ft-field:not(.has-v) .ft-field__v{opacity:0}
.ft-field input.ft-field__v{cursor:text}
.ft-field.is-bad{border-color:var(--er-600)!important;box-shadow:0 0 0 1px var(--er-600)}
.ft-field.is-bad .ft-field__lbl{color:var(--er-600)}

/* ------------------------------------------------ destination dropdown -- */
.ft-pop{position:absolute;z-index:1093;background:#fff;box-shadow:var(--pop)}
.ft-dest{top:54px;inset-inline-start:0;width:100%;min-width:320px;max-height:420px;overflow:auto;border-radius:16px;padding:8px}
.ft-dest__h{font-size:12px;font-weight:700;color:var(--g-500);padding:8px 12px 4px}
.ft-dest__i{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:10px;text-align:right}
.ft-dest__i:hover,.ft-dest__i.is-hl{background:var(--g-50)}
.ft-dest__ic{width:36px;height:36px;border-radius:50%;background:var(--g-100);display:grid;place-items:center;color:var(--g-700);flex:none}
.ft-dest__t{display:flex;flex-direction:column;min-width:0}
.ft-dest__t b{font-size:14px;font-weight:500;color:var(--g-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ft-dest__t span{font-size:12px;color:var(--g-500)}
.ft-dest__none{padding:24px;text-align:center;font-size:14px;color:var(--g-500)}

/* --------------------------------------------------------- the calendar -- */
.ft-cal{top:-5px;inset-inline-start:-5px;border-radius:24px;width:max-content;max-width:calc(100vw - 24px);will-change:transform,opacity;
    animation:ft-pop .15s var(--ease)}
@keyframes ft-pop{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}
.ft-cal__in{width:720px;max-width:100%;user-select:none}
.ft-cal__head{display:flex;flex-direction:column-reverse;gap:16px;padding:24px 24px 0}
.ft-cal__seg{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--b-50);border-radius:999px}
.ft-cal__half{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;height:56px;font-size:14px;font-weight:700;color:var(--g-900);border-radius:999px;cursor:pointer}
.ft-cal__half b{font-weight:700}
.ft-cal__half span{font-weight:500}
.ft-cal__half .i{width:20px;height:20px;color:var(--g-900)}
.ft-cal__half.is-on .i{color:var(--b-600);animation:ft-pulse 1s infinite}
@keyframes ft-pulse{50%{opacity:.4}}
.ft-cal__sep{width:1px;height:24px;background:var(--g-400)}
.ft-cal__bar{position:absolute;bottom:0;inset-inline:0;display:flex;justify-content:center;transition:transform .3s var(--ease);pointer-events:none}
.ft-cal__bar i{display:block;width:25%;height:2px;border-radius:2px;background:var(--b-500)}
.ft-cal__seg[data-on="in"] .ft-cal__bar{transform:translateX(25%)}
.ft-cal__seg[data-on="out"] .ft-cal__bar{transform:translateX(-25%)}
.ft-cal__tools{display:flex;align-items:center;gap:16px}
.ft-cal__moon{width:32px;height:32px;border-radius:50%;border:1px solid var(--g-300);display:grid;place-items:center;color:var(--g-300)}
.ft-cal__moon .i{width:18px;height:18px}
.ft-cal__pill{height:32px;padding:0 16px;border-radius:999px;border:1px solid var(--b-400);color:var(--b-600)!important;font-size:12px;display:inline-flex;align-items:center}
.ft-cal__pill:hover{background:var(--g-50);color:var(--b-700)!important}
.ft-cal__body{position:relative;padding:16px 24px 0}
.ft-cal__nav{position:absolute;top:12px;inset-inline:28px;display:flex;justify-content:space-between;z-index:2;pointer-events:none}
.ft-cal__arrow{pointer-events:auto;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--b-50);border:1px solid var(--b-200);color:var(--b-600)}
.ft-cal__arrow:hover{background:var(--b-100)}
.ft-cal__arrow:disabled{background:var(--g-50);border-color:var(--g-200);color:var(--g-300);cursor:not-allowed}
.ft-cal__arrow .i{width:18px;height:18px;stroke-width:1.5}
.ft-cal__months{display:flex;gap:28px}
.ft-cal__m{width:322px;flex:none}
.ft-cal__mt{text-align:center;font-size:14px;font-weight:700;line-height:20px;height:20px;margin-bottom:20px}
.ft-cal__wd{display:flex;margin-bottom:20px}
.ft-cal__wd span{flex:1;text-align:center;font-size:14px;font-weight:500;color:var(--g-500)}
.ft-cal__g{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px}
.ft-cal__d{position:relative;display:flex;align-items:center;justify-content:center;height:46px;background:transparent}
.ft-cal__c{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:calc(100% - 1px);max-width:46px;height:46px;min-width:40px;
    border:2px solid transparent;border-radius:50%;color:var(--g-900);font-size:16px;cursor:pointer}
.ft-cal__n{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;line-height:1}
.ft-cal__d.is-fri .ft-cal__n{color:var(--er-500)}
.ft-cal__d.is-off .ft-cal__c{cursor:default}
.ft-cal__d.is-off .ft-cal__n{color:var(--g-300)}
.ft-cal__d.is-off.is-fri .ft-cal__n{color:var(--er-300)}
.ft-cal__d.is-na .ft-cal__n{color:var(--g-300);text-decoration:line-through}
.ft-cal__d:not(.is-off):not(.is-na) .ft-cal__c:hover{border-color:var(--g-900)}
.ft-cal__d.is-today .ft-cal__n{background:var(--b-600);color:#fff!important}
.ft-cal__d.is-range::before{content:"";position:absolute;inset:3px 0;background:var(--b-50);z-index:1}
.ft-cal__d.has-r::before{content:"";position:absolute;top:3px;bottom:3px;width:50%;background:var(--b-50);z-index:1}
.ft-cal__d.has-r.is-a::before{left:0}
.ft-cal__d.has-r.is-b::before{right:0}
.ft-cal__d.is-a .ft-cal__c,.ft-cal__d.is-b .ft-cal__c{background:var(--b-600);border-color:var(--b-600)}
.ft-cal__d.is-a .ft-cal__n,.ft-cal__d.is-b .ft-cal__n{color:#fff!important;background:transparent}
.ft-cal__tip{position:absolute;z-index:10;top:calc(-50% + 2px);left:50%;transform:translateX(-50%);height:32px;min-width:44px;padding:0 12px;border-radius:8px;
    background:var(--b-600);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;white-space:nowrap;pointer-events:none;
    opacity:0;transition:opacity .3s;box-shadow:0 0 10px #00000026}
.ft-cal__tip::after{content:"";position:absolute;bottom:-4px;left:50%;width:8px;height:8px;background:var(--b-600);transform:translateX(-50%) rotate(45deg)}
.ft-cal__d:not(.is-off):not(.is-na):hover .ft-cal__tip{opacity:1}
.ft-cal__foot{padding:16px 24px 24px}
.ft-cal[data-gmode="1"] .ft-cal__pill[data-greg]{background:var(--b-50)}
@media (max-width:991px){
    .ft-cal__in{width:360px}
    .ft-cal__months{flex-direction:column;gap:12px;max-height:60vh;overflow:auto}
    .ft-cal__m{width:100%}
    .ft-cal__head{padding:12px 12px 0}
    .ft-cal__body{padding:12px}
    .ft-cal__foot{padding:12px}
}

/* ------------------------------------------------------ passenger picker -- */
.ft-pax{top:54px;inset-inline-start:0;width:320px;min-width:100%;border-radius:8px;padding:16px 24px 16px}
.ft-pax__room{display:flex;flex-direction:column;gap:16px;padding-bottom:12px}
.ft-pax__room + .ft-pax__room{border-top:1px solid var(--g-300);padding-top:12px}
.ft-pax__rh{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700}
.ft-pax__rm{font-size:12px;font-weight:500;color:var(--er-600)!important}
.ft-pax__row{display:flex;align-items:center;justify-content:space-between;height:40px}
.ft-pax__lab b{display:block;font-size:14px;font-weight:500;color:var(--g-900)}
.ft-pax__lab span{display:block;font-size:12px;color:var(--g-600)}
.ft-step{display:flex;align-items:center;gap:14px}
.ft-step__b{width:32px;height:32px;border-radius:50%;border:1px solid var(--g-600);color:var(--g-600);display:grid;place-items:center}
.ft-step__b:hover{background:var(--g-50)}
.ft-step__b:active{border-color:var(--b-600)}
.ft-step__b:disabled{border-color:var(--g-300);color:var(--g-300);cursor:not-allowed;background:none}
.ft-step__b .i{width:18px;height:18px;stroke-width:1.5}
.ft-step__n{min-width:14px;text-align:center;font-size:14px;font-weight:700}
.ft-pax__ages{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ft-pax__ages select{height:40px;border:1px solid var(--g-400);border-radius:8px;padding:0 10px;font-size:13px;background:#fff}
.ft-pax__foot{display:flex;align-items:center;justify-content:space-between;padding-top:12px}
.ft-pax__add{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--b-600)!important;font-weight:500}
.ft-pax__add .i{width:20px;height:20px;stroke-width:1.5}

/* ------------------------------------------------------ landing blocks -- */
.ft-intro{font-size:16px;line-height:1.9;color:var(--g-700);text-align:justify;margin-top:24px}
.ft-intro b{font-weight:700;color:var(--g-900)}
.ft-cities{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:24px 0 48px}
@media (min-width:768px){.ft-cities{grid-template-columns:repeat(3,1fr)}}
@media (min-width:992px){.ft-cities{grid-template-columns:repeat(5,1fr)}}
.ft-city{position:relative;display:block;aspect-ratio:3/4;border-radius:16px;overflow:hidden;background:var(--g-200)}
.ft-city img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.ft-city:hover img{transform:scale(1.04)}
.ft-city__t{position:absolute;inset:0;display:flex;align-items:flex-end;padding:12px;background:linear-gradient(180deg,#0000 40%,#000000a6);color:#fff;font-weight:600;font-size:18px}
.ft-city__t small{display:block;font-size:12px;font-weight:400;opacity:.85}
.ft-city--txt{display:flex;align-items:flex-end;background:linear-gradient(160deg,var(--b-700),var(--b-950))}
.ft-city--txt .ft-city__t{background:none}
.ft-h2{font-size:20px;line-height:28px;font-weight:700;color:var(--g-900)}
.ft-sub{font-size:14px;color:var(--g-600);margin-top:4px}

/* --------------------------------------------------------- results page -- */
.ft-res{display:flex;gap:24px;align-items:flex-start;margin:32px 0 64px}
.ft-res__side{width:204px;flex:none;display:flex;flex-direction:column;gap:20px;position:sticky;top:88px}
.ft-res__main{flex:1;min-width:0}
@media (max-width:991px){.ft-res{flex-direction:column}.ft-res__side{width:100%;position:static}}
.ft-mapcard{border:1px solid var(--g-300);border-radius:16px;overflow:hidden;background:#fff}
.ft-mapcard__img{height:82px;background:
    linear-gradient(35deg,transparent 46%,#f3a58f 47% 49%,transparent 50%) ,
    repeating-linear-gradient(0deg,#e6e8eb 0 1px,transparent 1px 22px),
    repeating-linear-gradient(90deg,#e6e8eb 0 1px,transparent 1px 26px),#f1f3f5}
.ft-mapcard__a{display:block;text-align:center;padding:8px;font-size:14px;color:var(--b-600)!important;font-weight:500}
.ft-sidebox{border-top:1px solid var(--g-300);padding-top:20px}
.ft-sidebox__t{font-size:18px;font-weight:700;color:var(--g-900);margin-bottom:16px}
.ft-sidebox__st{font-size:14px;font-weight:700;color:var(--g-900);margin:16px 0 8px}
.ft-search-in{position:relative}
.ft-search-in input{width:100%;height:48px;border:1px solid var(--g-600);border-radius:8px;padding:0 12px 0 40px;font-size:16px;outline:0}
.ft-search-in input:focus{border-color:var(--b-600)}
.ft-search-in .i{position:absolute;left:12px;top:12px;color:var(--g-600)}
.ft-chk{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;font-size:14px;color:var(--g-900);cursor:pointer}
.ft-chk__l{display:flex;align-items:center;gap:8px}
.ft-chk input{appearance:none;width:18px;height:18px;border:1.5px solid var(--g-600);border-radius:4px;display:grid;place-items:center;margin:0;flex:none;cursor:pointer;background:#fff}
.ft-chk input:checked{background:var(--b-600);border-color:var(--b-600)}
.ft-chk input:checked::after{content:"";width:9px;height:5px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.ft-chk small{font-size:12px;color:var(--g-500)}
.ft-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--g-300);border-radius:16px;padding:12px 16px;font-size:14px;font-weight:700;cursor:pointer}
.ft-toggle input{appearance:none;width:38px;height:22px;border-radius:999px;background:var(--g-300);position:relative;margin:0;cursor:pointer;transition:background .2s;flex:none}
.ft-toggle input::after{content:"";position:absolute;top:3px;right:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s}
.ft-toggle input:checked{background:var(--b-600)}
.ft-toggle input:checked::after{transform:translateX(-16px)}
.ft-seg{display:flex;background:var(--g-100);border-radius:999px;padding:4px;height:44px;margin-bottom:12px}
.ft-seg button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;font-size:14px;font-weight:500;color:var(--g-900)}
.ft-seg button.is-on{background:#fff;box-shadow:0 1px 3px #0000001a;font-weight:700}
.ft-seg .i{width:18px;height:18px}
.ft-resbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px;flex-wrap:wrap}
.ft-resbar__n{font-size:12px;color:var(--g-700)}
.ft-sort{position:relative}
.ft-sort select{appearance:none;height:32px;border:1px solid var(--g-400);border-radius:999px;background:#fff;padding:0 14px 0 34px;font-size:12px;color:var(--g-900);cursor:pointer}
.ft-sort .i{position:absolute;left:10px;top:8px;width:16px;height:16px;pointer-events:none}
.ft-hcard{display:flex;background:#fff;border:2px solid var(--g-300);border-radius:16px;overflow:hidden;min-height:164px;margin-bottom:16px;cursor:pointer;transition:box-shadow .3s,border-color .2s;
    content-visibility:auto;contain-intrinsic-size:auto 200px}
.ft-hcard:hover{box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a;border-color:var(--g-400)}
.ft-hcard__img{position:relative;width:252px;flex:none;background:var(--g-200)}
.ft-hcard__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ft-hcard__fav{position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background:#ffffffe6;display:grid;place-items:center;color:var(--er-600)}
.ft-hcard__fav .i{width:18px;height:18px}
.ft .ft-hcard__fav.is-on svg.i{fill:var(--er-600)}
.ft-hcard__src{position:absolute;bottom:8px;right:8px;background:#fff;border-radius:6px;font-size:10px;padding:1px 6px;color:var(--g-700)}
.ft-hcard__body{flex:1;min-width:0;padding:12px 16px;display:flex;flex-direction:column;gap:8px}
.ft-hcard__t{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ft-hcard__t h3{font-size:18px;font-weight:700;color:var(--g-900);line-height:28px}
.ft-stars{display:inline-flex;gap:2px;color:var(--g-600);direction:ltr}
.ft .ft-stars svg.i{width:14px;height:14px;fill:var(--g-600);stroke:var(--g-600)}
.ft-chip{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:var(--g-100);color:var(--g-900);font-size:12px}
.ft-hcard__addr{font-size:12px;color:var(--g-700);display:flex;gap:8px;align-items:center}
.ft-hcard__feat{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--g-800)}
.ft-hcard__feat span{display:inline-flex;align-items:center;gap:6px}
.ft-hcard__feat .i{width:18px;height:18px;color:var(--g-700)}
.ft-tags{display:flex;gap:8px;flex-wrap:wrap}
.ft-tag{display:inline-flex;align-items:center;height:28px;padding:0 10px;border:1px solid var(--b-200);background:var(--b-50);color:var(--b-800);border-radius:6px;font-size:12px}
.ft-okbadge{align-self:flex-start;display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:4px;background:var(--ok-600);color:#fff;font-size:13px;font-weight:700}
.ft-hcard__buy{width:220px;flex:none;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:16px;border-inline-start:0}
.ft-hcard__left{font-size:10px;color:var(--er-600)}
.ft-hcard__from{font-size:12px;color:var(--g-800)}
/* the same hotel elsewhere, only when dearer than ours (rival12.php) */
.ft-rv{display:flex;flex-direction:column;gap:2px;padding-bottom:6px;margin-bottom:2px;border-bottom:1px dashed var(--g-200)}
.ft-rv[hidden]{display:none}
.ft-rv__r{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;color:var(--g-600);white-space:nowrap}
.ft-rv__r i{font-style:normal}
.ft-rv__r s{font-size:13px;font-weight:600;color:var(--g-700);text-decoration-line:line-through;text-decoration-color:rgba(229,72,77,.75);text-decoration-thickness:1px}
.ft-hcard__old{font-size:12px;color:var(--g-500);text-decoration:line-through}
.ft-price{color:var(--ok-700);font-weight:700;font-size:16px;white-space:nowrap}
.ft-price small{font-size:14px;font-weight:500}
.ft-hcard__date{font-size:12px;color:var(--g-700)}
@media (max-width:767px){
    .ft-hcard{flex-direction:column}
    .ft-hcard__img{width:100%;height:190px}
    .ft-hcard__buy{width:100%;flex-direction:row;align-items:center;justify-content:space-between;border-top:1px solid var(--g-200)}
    .ft-hcard__buy{flex-wrap:wrap}
    .ft-rv{width:100%;flex-direction:row;flex-wrap:wrap;gap:4px 14px}
}
.ft-skel{border:2px solid var(--g-200);border-radius:16px;height:190px;margin-bottom:16px;display:flex;overflow:hidden}
.ft-skel i{display:block;background:linear-gradient(90deg,var(--g-200),var(--g-100),var(--g-200));background-size:200% 100%;animation:ft-sh 1.2s infinite linear;border-radius:999px}
@keyframes ft-sh{to{background-position:-200% 0}}
.ft-empty{text-align:center;padding:64px 16px;border:1px dashed var(--g-300);border-radius:16px;color:var(--g-600)}
.ft-empty .i{width:48px;height:48px;color:var(--g-400);margin:0 auto 12px}
.ft-empty b{display:block;font-size:18px;color:var(--g-900);margin-bottom:6px}
.ft-more{display:flex;justify-content:center;margin-top:8px}

/* the "no room on this date" rescue - real, bookable alternatives instead of
   telling the visitor to go and guess a date */
.ft-empty span{display:block;font-size:14px;color:var(--g-600);margin-bottom:14px}
.ft-altdates{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.ft-altdate{display:inline-flex;flex-direction:column;align-items:center;gap:2px;
  min-width:104px;padding:10px 16px;border:1px solid var(--g-300);border-radius:10px;
  background:#fff;color:var(--g-900)!important;line-height:1.5;
  transition:border-color .15s ease,background .15s ease}
.ft-altdate:hover{border-color:var(--b-600);background:var(--b-50)}
.ft-altdate b{display:block;font-size:15px;font-weight:700;color:var(--g-900);margin:0}
.ft-altdate small{font-size:12px;color:var(--g-600)}
.ft-altdate:hover b,.ft-altdate:hover small{color:var(--b-700)}

/* ------------------------------------------------------------ hotel page -- */
.ft-crumbs{display:flex;align-items:center;justify-content:space-between;margin-top:16px;gap:12px}
.ft-crumbs__r{display:flex;align-items:center;gap:16px;min-width:0}
.ft-back{width:40px;height:40px;border-radius:6px;background:var(--b-50);display:grid;place-items:center;color:var(--b-600);flex:none}
.ft-back .i{width:22px;height:22px}
.ft-crumbs__p{display:flex;align-items:center;font-size:14px;color:var(--g-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ft-crumbs__p a:hover{color:var(--b-600)}
.ft-crumbs__p i{font-style:normal;padding:0 4px;color:var(--g-600)}
.ft-crumbs__l{display:flex;gap:4px}
.ft-pillbtn{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border:1px solid var(--g-200);border-radius:999px;background:#fff;font-size:12px;color:var(--g-600)}
.ft-pillbtn:hover{border-color:var(--g-900);background:var(--b-50)}
.ft-pillbtn .i{width:20px;height:20px;color:var(--b-600)}
.ft-pillbtn--fav .i{color:var(--er-600)}
.ft .ft-pillbtn--fav.is-on svg.i{fill:var(--er-600)}
.ft-gal{position:relative;margin:16px 0;border-radius:8px;overflow:hidden}
.ft-gal__g{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);gap:2px;height:286px;background:#fff}
.ft-gal__g > button{position:relative;overflow:hidden;background:var(--g-200)}
.ft-gal__g > button:first-child{grid-area:1/1/3/3}
.ft-gal__g img{width:100%;height:100%;object-fit:cover;transition:opacity .2s}
.ft-gal__g > button:hover img{opacity:.95}
.ft-gal__all{position:absolute;left:16px;bottom:16px;height:28px;padding:0 8px;border-radius:999px;background:#0f172a99;color:#fff;font-size:12px;display:flex;align-items:center;gap:4px}
.ft-gal__all:hover{background:#0f172ae6}
.ft-gal__all .i{width:16px;height:16px;color:#fff}
@media (max-width:767px){.ft-gal__g{height:244px}.ft-gal__g > button:nth-child(n+4){display:none}.ft-gal__g{grid-template-columns:2fr 1fr}.ft-gal__g > button:first-child{grid-area:1/1/3/2}}
.ft-anchor{position:sticky;top:72px;z-index:1020;background:#fff;margin-top:22px}
.ft-anchor__in{display:flex;align-items:stretch;justify-content:space-between;min-height:60px;border-bottom:1px solid var(--g-300)}
.ft-anchor__l{display:flex;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0}
.ft-anchor__l::-webkit-scrollbar{display:none}
.ft-anchor__a{display:flex;align-items:center;padding:0 8px;font-size:14px;line-height:24px;font-weight:500;color:var(--g-700);white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .2s}
.ft-anchor__a:hover{color:var(--g-900)}
.ft-anchor__a.is-on{border-bottom-color:var(--b-600);color:var(--b-600);font-weight:700}
.ft-anchor__go{display:flex;align-items:center;padding:8px 0}
.ft-anchor__go .ft-btn{height:44px;min-width:103px;font-weight:500;gap:6px}
/* the count riding inside the sticky basket button */
.ft-btn__n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;
  border-radius:999px;background:#ffffff2e;font-size:12px;font-weight:700;line-height:1}
.ft-btn--line .ft-btn__n{background:var(--b-50);color:var(--b-700)}
.ft-sec{scroll-margin-top:140px}
.ft-info{display:flex;gap:40px;margin-top:32px}
.ft-info__main{flex:1;min-width:0}
.ft-info__side{width:326px;flex:none}
@media (max-width:991px){.ft-info{flex-direction:column}.ft-info__side{width:100%}}
.ft-h1{font-size:28px;line-height:28px;font-weight:700;color:var(--g-900)}
.ft-meta{display:flex;align-items:center;gap:8px;margin-top:4px}
.ft .ft-meta .ft-stars svg.i{width:16px;height:16px}
.ft-chip--h{min-height:28px;padding:0 12px}
.ft-rate{display:flex;align-items:center;gap:12px;margin-top:8px}
.ft-rate__b{display:inline-flex;align-items:center;gap:4px;direction:ltr}
.ft-rate__n{min-width:32px;height:24px;border-radius:4px;background:var(--ok-600);color:#fff;font-size:14px;font-weight:500;display:grid;place-items:center;padding:0 4px}
.ft-rate__w{font-size:14px;font-weight:700;color:var(--g-900)}
.ft-hl{margin-top:24px}
.ft-hl__t{font-size:20px;font-weight:700;color:var(--g-900);margin-bottom:12px}
.ft-hl__i{display:flex;align-items:center;gap:16px;padding:4px 0}
.ft-hl__ic{width:44px;height:44px;border-radius:50%;background:var(--b-50);display:grid;place-items:center;color:var(--b-600);flex:none}
.ft-hl__ic .i{width:20px;height:20px}
.ft-hl__i b{display:block;font-size:14px;font-weight:700;color:var(--g-900);line-height:24px}
.ft-hl__i span{display:block;font-size:12px;color:var(--g-600);line-height:24px}
.ft-map{border:1px solid var(--g-300);border-radius:16px;overflow:hidden;margin-bottom:22px}
.ft-map__img{display:block;height:140px;position:relative;background:
    linear-gradient(118deg,transparent 47%,#e9a38e 47.5% 49%,transparent 49.5%),
    linear-gradient(28deg,transparent 60%,#fff 60.5% 62.5%,transparent 63%),
    radial-gradient(40% 55% at 70% 45%,#a8dcb5 0 60%,transparent 61%),
    repeating-linear-gradient(64deg,#fff 0 3px,transparent 3px 34px),
    repeating-linear-gradient(-26deg,#fff 0 2px,transparent 2px 41px),#eceef1}
.ft-map__pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);color:var(--b-600)}
.ft-map__pin .i{width:32px;height:32px;fill:#fff;stroke-width:1.5}
.ft-map__a{font-size:14px;color:var(--g-900);padding:12px 12px 0}
.ft-map__l{padding:4px 12px 10px}
.ft-near{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--g-700);font-size:14px;line-height:26px}
.ft-near span{display:flex;align-items:center;gap:12px}
.ft-near em{font-style:normal;color:var(--g-600)}
.ft-rooms__h{font-size:20px;line-height:32px;font-weight:700;color:var(--g-900);margin-bottom:16px;padding-top:48px}
.ft-rsearch{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.ft-rsearch .ft-field{border-color:var(--g-900)}
.ft-rsearch__dates{display:flex;gap:12px;width:576px;max-width:100%;position:relative}
.ft-rsearch__pax{flex:1;position:relative;min-width:240px}
.ft-rfilter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.ft-rfilter__chips{display:flex;gap:8px;flex-wrap:wrap}
.ft-dd{position:relative}
.ft-dd__b{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 8px 0 6px;border:1px solid var(--g-400);border-radius:999px;background:#fff;color:var(--g-900);font-size:12px}
.ft-dd__b span{padding-inline:6px 2px}
.ft-dd__b .i{width:16px;height:16px}
.ft-dd.is-on .ft-dd__b{border-color:var(--b-600);background:var(--b-50);color:var(--b-700)}
.ft-dd__m{position:absolute;top:40px;inset-inline-start:0;min-width:200px;background:#fff;border-radius:12px;box-shadow:var(--pop);padding:8px;z-index:30}
.ft-dd__m label{display:flex;align-items:center;gap:8px;padding:8px;border-radius:8px;font-size:13px;cursor:pointer}
.ft-dd__m label:hover{background:var(--g-50)}
.ft-rfilter__n{font-size:14px;font-weight:500;color:var(--g-700)}
.ft-rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:1199px){.ft-rgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){.ft-rgrid{grid-template-columns:1fr}}
.ft-room{display:flex;flex-direction:column;justify-content:space-between;background:#fff;border:1px solid var(--g-300);border-radius:12px;overflow:hidden;padding-bottom:12px;position:relative}
.ft-room__img{position:relative;height:250px;cursor:pointer;background:var(--g-200)}
.ft-room__img img{width:100%;height:100%;object-fit:cover}
.ft-room__rib{position:absolute;top:0;inset-inline:0;height:38px;background:var(--b-600);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;z-index:2}
.ft-room__cnt{position:absolute;left:12px;bottom:12px;height:32px;padding:0 12px;border-radius:999px;background:#000000b3;color:#fff;display:flex;align-items:center;gap:8px;font-size:16px;font-weight:500}
.ft-room__cnt .i{width:18px;height:18px}
.ft-room__t{display:block;width:100%;padding:12px 12px 8px;font-size:16px;line-height:24px;font-weight:600;color:var(--g-900);text-align:right}
.ft-room__b{padding:0 12px;display:flex;flex-direction:column;flex:1}
.ft-ok{display:flex;align-items:center;gap:4px;color:var(--ok-600);font-size:14px;line-height:26px}
.ft-ok__sq{width:18px;height:18px;border-radius:4px;background:var(--ok-600);color:#fff;display:grid;place-items:center;flex:none}
.ft-ok__sq .i{width:13px;height:13px;stroke-width:1.5}
.ft-ok__ic{width:18px;height:18px;display:grid;place-items:center;flex:none}
.ft-ok__ic .i{width:16px;height:16px}
.ft-ok--muted{color:var(--g-900)}
.ft-refund{display:flex;align-items:center;gap:4px;font-size:14px;cursor:pointer;margin-top:12px}
.ft-refund .i{width:14px;height:14px;stroke-width:1.5}
.ft-refund--ok{color:var(--ok-600)}
.ft-refund--no{color:var(--er-600)}
.ft-refund:hover span{text-decoration:underline}
.ft-more-l{display:inline-flex;align-items:center;gap:2px;font-size:14px;color:var(--b-600);margin-top:8px;cursor:pointer}
.ft-more-l:hover span{text-decoration:underline}
.ft-more-l .i{width:16px;height:16px}
.ft-room__f{display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--g-300);margin:12px 12px 0;padding-top:12px}
.ft-room__fr{display:flex;justify-content:space-between;align-items:flex-end;gap:8px}
.ft-left{font-size:10px;line-height:12px;height:24px;display:flex;align-items:center}
.ft-left--few{color:var(--er-700)}
.ft-left--ok{color:var(--ok-700)}
.ft-coin{display:inline-flex;align-items:center;gap:3px;border-radius:999px;padding:4px 8px;background:var(--y-50);font-size:10px;min-width:75px}
.ft-coin i{width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fde68a,#f59e0b);box-shadow:inset 0 0 0 1.5px #fbbf24;flex:none}
.ft-coin b{color:var(--y-600);font-weight:700}
.ft-coin span{color:var(--y-700)}
.ft-pr{display:flex;flex-direction:column;align-items:flex-end}
.ft-pr__old{font-size:12px;color:var(--g-500);text-decoration:line-through}
.ft-pr__v{color:var(--ok-700);font-size:16px;white-space:nowrap}
.ft-pr__v b{font-weight:600}
.ft-pr__v span{font-weight:500;font-size:14px}
.ft-pr__u{font-size:10px;color:var(--g-500)}
.ft-room .ft-btn{min-height:36px;font-size:14px;font-weight:600;margin:0 12px}
.ft-room__f .ft-btn{margin:0}
.ft-noroom{grid-column:1/-1}
.ft-block{margin-top:48px}
.ft-block__t{font-size:20px;font-weight:700;color:var(--g-900);margin-bottom:16px}
.ft-about{font-size:14px;line-height:2;color:var(--g-700);text-align:justify}
.ft-about.is-cut{max-height:168px;overflow:hidden;position:relative}
.ft-about.is-cut::after{content:"";position:absolute;inset:auto 0 0;height:56px;background:linear-gradient(transparent,#fff)}
.ft-fac{display:grid;grid-template-columns:repeat(4,1fr);gap:12px 16px}
@media (max-width:991px){.ft-fac{grid-template-columns:repeat(2,1fr)}}
.ft-fac span{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--g-900)}
.ft-fac .i{width:20px;height:20px;color:var(--b-600)}
.ft-rules{border:1px solid var(--g-300);border-radius:16px;padding:16px 24px}
.ft-rules__io{display:flex;gap:48px;padding-bottom:16px;border-bottom:1px dashed var(--g-300);margin-bottom:16px;flex-wrap:wrap}
.ft-rules__io div{display:flex;align-items:center;gap:8px;font-size:14px}
.ft-rules__io b{font-weight:700}
.ft-rules__io .i{color:var(--b-600)}
.ft-rules ul{padding-inline-start:18px;list-style:disc}
.ft-rules li{font-size:14px;line-height:2.1;color:var(--g-800)}
.ft-rules h4{font-size:15px;font-weight:700;margin:12px 0 4px}

/* ------------------------------------------------------------ the modal -- */
.ft-modal{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:16px}
.ft-modal__scrim{position:absolute;inset:0;background:#0f172a80;animation:ft-fade .2s}
@keyframes ft-fade{from{opacity:0}}
.ft-modal__box{position:relative;background:#fff;border-radius:16px;max-height:100%;display:flex;flex-direction:column;min-width:250px;overflow:hidden;animation:ft-pop .18s var(--ease)}
.ft-modal__head{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#fff;flex:none}
.ft-modal__x{width:48px;height:48px;display:grid;place-items:center}
.ft-modal__x span{width:36px;height:36px;border-radius:50%;border:1px solid var(--b-600);display:grid;place-items:center;color:var(--b-600)}
.ft-modal__x .i{width:22px;height:22px;stroke-width:1.5}
.ft-modal__title{font-size:16px;font-weight:500;color:var(--g-900)}
.ft-modal__body{width:720px;max-width:calc(100vw - 32px);max-height:80vh;overflow:auto;padding:0 24px 16px;scrollbar-width:none}
.ft-modal__body::-webkit-scrollbar{display:none}
.ft-modal--sm .ft-modal__body{width:440px}
.ft-mtabs{position:sticky;top:0;z-index:5;background:#fff;display:flex;border-bottom:1px solid var(--g-300);margin-bottom:22px;min-height:44px}
.ft-mtabs a{display:flex;align-items:center;padding:0 8px;font-size:14px;font-weight:500;color:var(--g-700);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;cursor:pointer}
.ft-mtabs a.is-on{border-bottom-color:var(--b-600);color:var(--b-600);font-weight:700}
.ft-mimg{border-radius:16px;overflow:hidden;background:var(--g-200);aspect-ratio:3/1}
.ft-mimg img{width:100%;height:100%;object-fit:cover}
.ft-mh{font-size:20px;font-weight:700;padding:16px 0;margin-bottom:12px}
.ft-mst{font-size:16px;font-weight:600;color:var(--g-900);padding:12px 0}
.ft-msub{font-size:14px;font-weight:500;color:var(--g-900)}
.ft-mchk{display:flex;flex-wrap:wrap;row-gap:8px;margin:12px 0 16px}
.ft-mchk span{width:50%;display:flex;align-items:center;gap:8px;font-size:14px;color:var(--g-900)}
.ft-mchk .i{width:16px;height:16px;stroke-width:1.5}
@media (max-width:600px){.ft-mchk span{width:100%}}
.ft-opts{border:1px solid var(--g-300);border-radius:16px;padding:16px 12px 4px;margin-top:12px;background:#fff}
.ft-opts__row{display:flex;gap:12px;overflow-x:auto;padding-bottom:4px}
.ft-opt{width:236px;flex:none;display:flex;flex-direction:column;gap:8px;border-radius:12px;padding:12px;border:1.5px solid var(--b-600);background:var(--b-50)}
.ft-opt__mid{border-top:1px dashed var(--g-200);padding:8px 0 4px;display:flex;flex-direction:column}
.ft-opt__f{margin-top:auto;border-top:1px solid var(--g-200);padding-top:8px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.ft-opt__sel{width:100%;height:32px;border-radius:999px;border:1px solid var(--g-300);background:#fff;display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:600;color:var(--b-700)}
.ft-opt__sel .i{width:16px;height:16px;stroke-width:1.5}
.ft-opt__q{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:12px;color:var(--g-800)}
.ft-opt__q .ft-step{gap:10px}
.ft-opt__q .ft-step__b{width:28px;height:28px}
.ft-mfoot{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--g-300);margin-top:16px;padding-top:12px;display:flex;flex-direction:column;gap:12px}
.ft-mfoot__r{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ft-light{position:fixed;inset:0;z-index:1200;background:#020617f2;display:flex;flex-direction:column}
.ft-light__top{display:flex;justify-content:space-between;align-items:center;color:#fff;padding:12px 16px;font-size:14px}
.ft-light__x{width:40px;height:40px;border-radius:50%;background:#ffffff1f;color:#fff;display:grid;place-items:center}
.ft-light__stage{flex:1;display:flex;align-items:center;justify-content:center;position:relative;min-height:0}
.ft-light__stage img{max-width:92vw;max-height:78vh;object-fit:contain;border-radius:8px}
.ft-light__nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#ffffff26;color:#fff;display:grid;place-items:center}
.ft-light__nav:hover{background:#ffffff40}
.ft-light__nav--p{right:16px}.ft-light__nav--n{left:16px}
.ft-light__thumbs{display:flex;gap:6px;overflow-x:auto;padding:12px 16px;justify-content:center}
.ft-light__thumbs button{width:72px;height:52px;border-radius:6px;overflow:hidden;opacity:.5;flex:none;border:2px solid transparent}
.ft-light__thumbs button.is-on{opacity:1;border-color:#fff}
.ft-light__thumbs img{width:100%;height:100%;object-fit:cover}

/* ------------------------------------------------------ booking steps -- */
.ft-steps{display:flex;align-items:flex-start;justify-content:space-between;margin:32px 0 32px;position:relative}
.ft-steps__s{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:var(--g-400);z-index:1;background:#fff;padding:0 10px;min-width:120px}
.ft-steps__s .i{width:22px;height:22px}
.ft-steps__s.is-on,.ft-steps__s.is-done{color:var(--b-600)}
.ft-steps__line{flex:1;height:2px;background:var(--g-300);margin-top:10px;border-radius:2px}
.ft-steps__line.is-done{background:var(--b-600)}
.ft-book{display:flex;gap:24px;align-items:flex-start;margin-bottom:64px}
.ft-book__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}
.ft-book__side{width:420px;flex:none;display:flex;flex-direction:column;gap:12px;position:sticky;top:88px}
@media (max-width:1199px){.ft-book__side{width:360px}}
@media (max-width:991px){.ft-book{flex-direction:column-reverse}.ft-book__side{width:100%;position:static}}
.ft-alert{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--b-200);background:var(--b-50);border-radius:12px;padding:12px 16px;font-size:12px;line-height:22px;color:var(--b-800)}
.ft-alert .i{width:16px;height:16px;margin-top:3px;color:var(--b-700)}
.ft-alert--bad{border-color:var(--er-300);background:var(--er-50);color:var(--er-700)}
.ft-alert--bad .i{color:var(--er-700)}
.ft-alert--ok{border-color:#b6f0ce;background:var(--ok-50);color:var(--ok-700)}
.ft-box{border:1px solid var(--g-300);border-radius:16px;padding:24px;background:#fff}
.ft-box--p16{padding:16px}
.ft-box__t{font-size:18px;font-weight:700;color:var(--g-900);margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.ft-box__t small{font-size:14px;font-weight:600;color:var(--ok-600)}
.ft-sect{font-size:18px;font-weight:700;color:var(--g-900);margin:4px 0 -4px;display:flex;justify-content:space-between;align-items:center}
.ft-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ft-grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media (max-width:767px){.ft-grid3,.ft-grid4{grid-template-columns:1fr}}
.ft-in{position:relative;height:56px;border:1px solid var(--g-900);border-radius:8px;background:#fff;display:flex;align-items:center;transition:box-shadow .15s,border-color .15s}
.ft-in--soft{border-color:var(--g-400)}
.ft-in:focus-within{border-color:var(--b-600);box-shadow:0 0 0 1px var(--b-600)}
.ft-in label{position:absolute;inset-inline-start:12px;top:16px;font-size:16px;color:var(--g-900);pointer-events:none;transition:transform .2s var(--ease),color .2s;transform-origin:top right}
.ft-in input,.ft-in select{width:100%;height:100%;border:0;outline:0;background:transparent;padding:20px 12px 4px;font-size:16px;color:var(--g-900);border-radius:8px;appearance:none}
.ft-in select{cursor:pointer}
.ft-in input::placeholder{color:transparent}
.ft-in.has-v label,.ft-in:focus-within label{transform:translateY(-9px) scale(.75)}
.ft-in__chev{position:absolute;left:12px;top:18px;width:18px;height:18px;pointer-events:none;color:var(--g-700)}
.ft-in--flag input{padding-inline-start:40px}
.ft-in__flag{position:absolute;inset-inline-start:12px;top:26px;width:18px;height:12px;border-radius:2px;background:linear-gradient(#239f40 0 33%,#fff 33% 66%,#da0000 66%)}
.ft-in--flag label{inset-inline-start:40px}
.ft-in.is-bad{border-color:var(--er-600);box-shadow:0 0 0 1px var(--er-600)}
.ft-in.is-bad label{color:var(--er-600)}
.ft-in:has(input:disabled),.ft-in:has(select:disabled){border-color:var(--g-200);background:var(--g-50)}
.ft-in:has(select:disabled) label{color:var(--g-400)}
.ft-err{font-size:12px;color:var(--er-600);margin-top:4px;min-height:0}
.ft-err:empty{display:none}
.ft-ta{position:relative;border:1px solid var(--g-900);border-radius:12px;padding:16px 12px 24px}
.ft-ta:focus-within{border-color:var(--b-600);box-shadow:0 0 0 1px var(--b-600)}
.ft-ta textarea{width:100%;min-height:96px;border:0;outline:0;resize:vertical;font-size:14px;line-height:1.8;background:transparent}
.ft-ta textarea::placeholder{color:var(--g-900);font-size:16px}
.ft-ta small{position:absolute;left:12px;bottom:8px;font-size:12px;color:var(--g-600)}
.ft-cb{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--g-900);cursor:pointer;font-weight:500}
.ft-cb input{appearance:none;width:20px;height:20px;border:1.5px solid var(--g-600);border-radius:4px;margin:0;display:grid;place-items:center;cursor:pointer;background:#fff;flex:none}
.ft-cb input:checked{background:var(--b-600);border-color:var(--b-600)}
.ft-cb input:checked::after{content:"";width:10px;height:5px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.ft-note{font-size:14px;line-height:28px;color:var(--g-800)}
.ft-rh{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.ft-rh b{font-size:16px;font-weight:700;color:var(--g-900)}
.ft-rh b em{font-style:normal;color:var(--ok-600);font-weight:600}
.ft-pl{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.ft-pl b{font-size:14px;font-weight:700;color:var(--g-900)}
.ft-acc{border:1px solid var(--g-300);border-radius:16px;background:#fff}
.ft-acc__h{display:flex;justify-content:space-between;align-items:center;width:100%;padding:24px;font-size:16px;font-weight:700;color:var(--g-900)}
.ft-acc__h .i{width:18px;height:18px;transition:transform .2s;color:var(--g-600)}
.ft-acc.is-open .ft-acc__h .i{transform:rotate(180deg)}
.ft-acc__b{padding:0 24px 24px;font-size:14px;line-height:2.1;color:var(--g-800)}
.ft-acc:not(.is-open) .ft-acc__b{display:none}
.ft-acc__b ul{list-style:none}
.ft-acc__b h5{font-size:14px;font-weight:700;margin:10px 0 4px;color:var(--g-900)}
.ft-acc__io{display:flex;gap:25%;margin-bottom:16px;font-size:16px}
.ft-acc__io b{font-weight:700}
.ft-kv{display:flex;flex-wrap:wrap;gap:8px 36px;font-size:14px;color:var(--g-700)}
.ft-kv b{font-weight:700;color:var(--g-900);margin-inline-start:4px}
.ft-sumbox{border:1px solid var(--g-300);border-radius:16px;background:#fff;overflow:hidden}
.ft-sumbox__head{background:var(--b-50);padding:16px;font-size:14px;line-height:1.9;color:var(--g-800);border-bottom:1px solid var(--g-300)}
.ft-sumbox__head .ft-kv{margin-top:12px}
.ft-sumbox__row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px;flex-wrap:wrap}
.ft-sumbox__room{padding:16px;background:var(--b-50);font-size:16px;font-weight:700;border-bottom:1px solid var(--g-300)}
.ft-sumbox__room em{font-style:normal;color:var(--ok-600);font-weight:600}

/* sidebar recap */
.ft-hbox{border:1px solid var(--g-300);border-radius:16px;overflow:hidden;background:#fff}
.ft-hbox__img{height:180px;position:relative;background:var(--g-200)}
.ft-hbox__img img{width:100%;height:100%;object-fit:cover}
.ft-hbox__nav{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--g-800);box-shadow:0 1px 3px #0003}
.ft-hbox__nav .i{width:14px;height:14px;stroke-width:2}
.ft-hbox__b{padding:12px}
.ft-hbox__n{font-size:20px;font-weight:700;color:var(--g-900);margin:4px 0}
.ft-hbox__a{font-size:12px;color:var(--g-700);line-height:1.8}
.ft-hbox__r{display:flex;align-items:center;gap:8px;margin:10px 0}
.ft-hbox__r .ft-rate__n{background:#e1a42e}
.ft-dates{background:var(--g-50);border-radius:12px;padding:12px;margin:8px 0}
.ft-dates div{display:flex;justify-content:space-between;font-size:14px;color:var(--g-900);line-height:26px}
.ft-dates div span:first-child{color:var(--g-700)}
.ft-dates__pill{display:inline-flex!important;margin-top:8px;height:24px;padding:0 12px;border-radius:999px;background:var(--g-900);color:#fff!important;font-size:12px;font-weight:700;align-items:center;justify-content:center}
.ft-hbox__room{font-size:14px;color:var(--g-900);line-height:26px}
.ft-hbox__room em{display:block;font-style:normal;color:var(--ok-600)}
.ft-hbox__dd{display:flex;justify-content:space-between;align-items:center;width:100%;padding:14px 12px;border-top:1px solid var(--g-300);font-size:14px;font-weight:700;color:var(--g-900)}
.ft-hbox__dd .i{width:16px;height:16px}
.ft-buy{border:1px solid var(--g-300);border-radius:16px;padding:16px 12px;background:#fff}
.ft-buy__t{font-size:18px;font-weight:700;color:var(--g-900);margin-bottom:24px}
.ft-buy__l{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--g-800);padding-bottom:12px}
.ft-buy__l b{font-size:14px;font-weight:500;color:var(--g-900)}
.ft-buy__l--minus b{color:var(--ok-600)}
.ft-buy__hr{border-top:1px solid var(--g-300);margin:4px 0 16px}
.ft-buy__tot{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.ft-buy__tot span{font-size:14px;font-weight:700;color:var(--g-900)}
.ft-buy__tot b{font-size:20px;font-weight:800;color:var(--ok-600)}
.ft-buy__tot b small{font-size:14px;font-weight:500}
.ft-buy__no{display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;color:var(--er-600);margin-top:12px}
.ft-buy__no .i{width:14px;height:14px;stroke-width:1.5}
.ft-buy__ok{color:var(--ok-600)}
.ft-disc{display:flex;gap:8px;margin-bottom:16px}
.ft-disc input{flex:1;min-width:0;height:40px;border:1px solid var(--g-400);border-radius:8px;padding:0 12px;font-size:14px;outline:0}
.ft-disc input:focus{border-color:var(--b-600)}
.ft-disc button{height:40px;padding:0 14px;border-radius:8px;border:1px solid var(--b-600);color:var(--b-600);font-size:13px;font-weight:700}
.ft-disc__m{font-size:12px;margin:-8px 0 12px}
.ft-disc__m.is-ok{color:var(--ok-600)}.ft-disc__m.is-bad{color:var(--er-600)}
.ft-club{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--g-300);border-radius:16px;padding:16px 12px;font-size:14px;font-weight:700}
.ft-club span{display:flex;align-items:center;gap:8px}
.ft-club .ft-coin i{width:22px;height:22px}

/* pay methods */
.ft-pm{border:1px solid var(--g-300);border-radius:16px;background:#fff;padding:0 12px}
.ft-pm__o{display:block;padding:24px 0;border-bottom:1px solid var(--g-300);cursor:pointer}
.ft-pm__o:last-child{border-bottom:0}
.ft-pm__h{display:flex;align-items:center;gap:8px}
.ft-pm__h input{appearance:none;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--g-600);margin:0;display:grid;place-items:center;cursor:pointer;flex:none}
.ft-pm__h input:checked{border-color:var(--b-600)}
.ft-pm__h input:checked::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--b-600)}
.ft-pm__h .i{width:22px;height:22px;color:var(--g-500)}
.ft-pm__h b{font-size:16px;font-weight:700;color:var(--g-900)}
.ft-pm__d{font-size:12px;color:var(--g-700);margin:4px 60px 0 0}
.ft-pm__banks{display:flex;gap:12px;margin:16px 60px 0 0;flex-wrap:wrap}
.ft-bank{width:48px;height:48px;border-radius:10px;border:1px solid var(--g-200);background:#fff;display:grid;place-items:center;cursor:pointer;position:relative;overflow:hidden}
.ft-bank input{position:absolute;opacity:0;pointer-events:none}
.ft-bank:has(input:checked){border:2px solid var(--b-600);box-shadow:0 0 0 1px var(--b-600)}
.ft-bank img{width:34px;height:34px;object-fit:contain}
.ft-bank__m{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:13px}
.ft-bank__n{font-size:11px;color:var(--g-700);text-align:center;margin-top:4px;width:60px}
.ft-bankw{display:flex;flex-direction:column;align-items:center}
.ft-pm__o.is-off{opacity:.55;cursor:not-allowed}
.ft-pm__credit{margin:10px 60px 0 0;font-size:13px;color:var(--g-800)}
.ft-pm__credit b{color:var(--ok-700)}

/* ------------------------------------------------------ receipt page -- */
.ft-rcpt-page{min-height:100vh;background:#fff;padding:40px 16px 64px}
.ft-rcpt-logo{display:flex;justify-content:center;margin-bottom:32px}
.ft-rcpt-logo .ft-logo{margin:0;font-size:34px}
.ft-rcpt{width:480px;max-width:100%;margin:0 auto;position:relative}
.ft-rcpt__roll{height:9px;border-radius:9px;background:linear-gradient(#b8bcc2,#8d9299);box-shadow:0 2px 3px #0003;position:relative;z-index:2;margin:0 -2px}
.ft-rcpt__paper{margin:-4px 8px 0;background:#fff;border:1px solid #e5e7eb;border-top:0;padding:40px 32px 48px;position:relative;
    -webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/14px 100%;
            mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) 50%/14px 100%;
    padding-bottom:64px;animation:ft-print .6s var(--ease)}
@keyframes ft-print{from{transform:translateY(-24px);opacity:0}}
.ft-rcpt__ic{display:flex;justify-content:center}
.ft-rcpt__ic svg{width:56px;height:56px}
.ft-rcpt__t{text-align:center;font-size:18px;font-weight:700;color:var(--g-900);margin:16px 0 40px}
.ft-rcpt__r{display:flex;justify-content:space-between;align-items:center;padding:16px 0;font-size:14px}
.ft-rcpt__r span{color:var(--g-500)}
.ft-rcpt__r b{font-weight:500;color:var(--g-900);direction:ltr}
.ft-rcpt__r--b b{font-weight:800}
.ft-rcpt__r--d{border-bottom:1px dashed var(--g-300)}
.ft-rcpt__go{margin-top:28px;display:flex;flex-direction:column;gap:10px}
.ft-rcpt__go .ft-btn{border-radius:4px;min-height:44px;font-weight:500;background:var(--b-800);border-color:var(--b-800)}
.ft-rcpt__go .ft-btn:hover{background:var(--b-900)}
.ft-rcpt__go .ft-btn--line{background:#fff;border-color:var(--g-300)}
.ft-rcpt__go .ft-btn--line:hover{background:var(--b-50);border-color:var(--g-900)} /* the dark hover above made the dark text invisible */
.ft-rcpt__sup{text-align:center;font-size:14px;color:var(--g-900);margin-top:28px}
.ft-rcpt__msg{font-size:13px;line-height:1.9;color:var(--g-700);text-align:center;margin:-24px 0 24px}
.ft-rcpt__spin{width:28px;height:28px;border-radius:50%;border:3px solid var(--b-100);border-top-color:var(--b-600);animation:ft-rot 1s linear infinite;margin:0 auto}
@keyframes ft-rot{to{transform:rotate(360deg)}}

/* -------------------------------------------------------- account -- */
.ft-acct{display:flex;gap:32px;align-items:flex-start;margin:32px 0 64px}
.ft-acct__side{width:312px;flex:none;display:flex;flex-direction:column;gap:12px}
.ft-acct__main{flex:1;min-width:0}
@media (max-width:991px){.ft-acct{flex-direction:column}.ft-acct__side{width:100%}}
.ft-acct__hi{display:flex;justify-content:space-between;align-items:flex-end;padding:0 12px 12px}
.ft-acct__hi small{display:block;font-size:12px;color:var(--g-900)}
.ft-acct__hi b{display:block;font-size:20px;font-weight:700;color:var(--g-900)}
.ft-lvl{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:4px;background:#d7843f;color:#fff;font-size:13px;font-weight:700}
.ft-lvl--silver{background:#94a3b8}.ft-lvl--gold{background:#d4a017}
.ft-wallet{border:1px solid var(--g-300);border-radius:16px;padding:20px 12px;text-align:center}
.ft-wallet small{font-size:14px;font-weight:700;color:var(--g-900)}
.ft-wallet > b{display:block;font-size:18px;font-weight:800;margin:8px 0 16px;color:var(--g-900)}
.ft-wallet div{display:flex;justify-content:space-between;font-size:14px;color:var(--g-900);padding:6px 0}
.ft-wallet div b{font-weight:700}
.ft-mi{display:flex;align-items:center;gap:12px;border:1px solid var(--g-300);border-radius:16px;padding:16px 12px;background:#fff;transition:background .15s,border-color .15s}
.ft-mi:hover{border-color:var(--g-400)}
.ft-mi.is-on{background:var(--b-50);border-color:var(--b-600);box-shadow:0 0 0 1px var(--b-600)}
.ft-mi > .i{width:26px;height:26px;color:var(--g-800)}
.ft-mi__t{flex:1;min-width:0}
.ft-mi__t b{display:block;font-size:14px;font-weight:700;color:var(--g-900)}
.ft-mi__t span{display:block;font-size:12px;color:var(--g-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ft-mi__c{width:20px;height:20px;color:var(--g-700)}
.ft-mi--out b{color:var(--er-600)}
.ft-at{font-size:20px;font-weight:700;color:var(--g-900);margin:0 0 16px}
.ft-at + .ft-sub{margin:-12px 0 16px}
.ft-cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:32px}
@media (max-width:767px){.ft-cards3{grid-template-columns:1fr}}
.ft-ic{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--g-300);border-radius:16px;padding:16px 12px;min-height:64px;text-align:right;width:100%;background:#fff}
button.ft-ic:hover,a.ft-ic:hover{border-color:var(--g-400);background:var(--g-20)}
.ft-ic b{display:block;font-size:14px;font-weight:700;color:var(--g-900)}
.ft-ic span{display:block;font-size:14px;color:var(--g-900);margin-top:8px;direction:ltr;text-align:right}
.ft-ic span.is-empty{color:var(--g-400);direction:rtl}
.ft-ic .i{width:20px;height:20px;color:var(--g-700);flex:none}
.ft-otabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.ft-otabs a{height:36px;padding:0 16px;border-radius:999px;border:1px solid var(--g-300);display:inline-flex;align-items:center;font-size:14px;color:var(--g-800)!important}
.ft-otabs a.is-on{background:var(--b-600);border-color:var(--b-600);color:#fff!important;font-weight:700}
.ft-order{border:1px solid var(--g-300);border-radius:16px;background:#fff;margin-bottom:12px;overflow:hidden}
.ft-order__h{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--g-200);flex-wrap:wrap}
.ft-order__h b{font-size:16px;font-weight:700;color:var(--g-900);display:flex;align-items:center;gap:8px}
.ft-order__h b .i{color:var(--b-600)}
.ft-st{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--g-100);color:var(--g-700)}
.ft-st--ok{background:var(--ok-100);color:var(--ok-700)}
.ft-st--wait{background:#fef3c7;color:#92400e}
.ft-st--bad{background:var(--er-50);color:var(--er-700)}
.ft-order__b{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px}
@media (max-width:767px){.ft-order__b{grid-template-columns:repeat(2,1fr)}}
.ft-order__b span{display:block;font-size:12px;color:var(--g-600)}
.ft-order__b b{display:block;font-size:14px;font-weight:700;color:var(--g-900);margin-top:4px}
.ft-order__f{display:flex;justify-content:flex-end;gap:8px;padding:0 16px 16px;flex-wrap:wrap}
.ft-pager{display:flex;gap:6px;justify-content:center;margin-top:16px}
.ft-pager a{min-width:36px;height:36px;border-radius:8px;border:1px solid var(--g-300);display:grid;place-items:center;font-size:14px;padding:0 8px}
.ft-pager a.is-on{background:var(--b-600);border-color:var(--b-600);color:#fff!important}
.ft-mates{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}
@media (max-width:767px){.ft-mates{grid-template-columns:1fr}}
.ft-mate{display:flex;align-items:center;gap:12px;border:1px solid var(--g-300);border-radius:16px;padding:14px 12px}
.ft-mate__av{width:40px;height:40px;border-radius:50%;background:var(--b-50);color:var(--b-700);display:grid;place-items:center;font-weight:700;flex:none}
.ft-mate__t{flex:1;min-width:0}
.ft-mate__t b{display:block;font-size:14px;font-weight:700}
.ft-mate__t span{display:block;font-size:12px;color:var(--g-600);direction:ltr;text-align:right}
.ft-mate form{margin:0}
.ft-iconbtn{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--er-600);border:1px solid var(--g-200)}
.ft-iconbtn:hover{background:var(--er-50)}
.ft-iconbtn .i{width:18px;height:18px}
.ft-flash{margin-bottom:16px}

/* the sign-in dialog */
.ft-auth{width:420px;max-width:calc(100vw - 32px);padding:8px 24px 24px}
.ft-auth__logo{display:flex;justify-content:center;margin:8px 0 16px}
.ft-auth__logo .ft-logo{margin:0}
.ft-auth h2{font-size:20px;font-weight:700;text-align:center;color:var(--g-900)}
.ft-auth p.ft-auth__lead{font-size:14px;color:var(--g-600);text-align:center;margin:8px 0 20px;line-height:1.9}
.ft-auth form{display:flex;flex-direction:column;gap:12px}
.ft-auth__alt{text-align:center;font-size:14px;margin-top:8px;color:var(--g-700)}
.ft-auth__alt button,.ft-auth__alt a{color:var(--b-600)!important;font-weight:700}
.ft-auth__msg{font-size:13px;color:var(--er-600);text-align:center;min-height:0}
.ft-auth__msg:empty{display:none}

/* ------------------------------------------------------------ footer -- */
.ft-foot{border-top:1px solid var(--g-300);margin-top:48px;padding:32px 0;background:var(--g-20)}
.ft-foot__in{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13px;color:var(--g-600)}
.ft-foot__in a:hover{color:var(--b-600)}
.ft-foot__l{display:flex;gap:20px;flex-wrap:wrap}
.ft-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--g-900);color:#fff;padding:12px 20px;border-radius:12px;font-size:14px;z-index:1300;box-shadow:var(--pop);animation:ft-pop .2s}
.ft-top{position:fixed;left:48px;bottom:48px;width:56px;height:56px;border-radius:50%;background:var(--b-600);color:#fff;display:grid;place-items:center;z-index:900;box-shadow:0 4px 14px #0000002e;opacity:0;pointer-events:none;transition:opacity .2s}
.ft-top.is-on{opacity:1;pointer-events:auto}
.ft-top .i{width:24px;height:24px;stroke-width:1.5}
@media (max-width:991px){
    .ft-nav,.ft-sw__ui span{display:none}
    .ft-logo{margin-inline-end:0}
    .ft-sform__dates{flex:1 1 100%}
    .ft-sform__pax{flex:1 1 100%}
    .ft-sform__go{flex:1 1 100%}
    .ft-sform__go .ft-btn{max-width:none;width:100%}
    .ft-card-search--inner .ft-sform__dest{flex:1 1 100%}
    .ft-card-search--inner .ft-sform__dates .ft-field{width:auto}
    .ft-top{left:16px;bottom:16px}
}
/* Where the pill is hidden is decided once, further down, by
   `@media (max-width:1100px){.ft-sw .ft-skins{display:none}}` - the header also
   carries the FA/EN/AR switch and the basket, and below that width they win.
   All four skins stay reachable from the «بیشتر» menu. */
@media (max-width:575px){.ft-head__l .ft-user__btn span{display:none}.ft-sw__color{display:none}.ft-head__l{gap:10px}}
@media print{.ft-head,.ft-foot,.ft-top,.ft-sw{display:none!important}}

/* ------------------------------------------------- password reset («نوین») --
   userforgot11.php keeps its own three-step logic and its own field names; it
   only borrows this shell. These rules dress its u11/pay11 classes in ft12's
   language, scoped to .ft-authpage so nothing else can be reached. */
.ft-authpage{max-width:460px;margin:40px auto 72px}
.ft-authpage .u11-card,
.ft-authpage .pay11-card{border:1px solid var(--g-300);border-radius:16px;padding:32px 24px;background:#fff;box-shadow:none}
.ft-authpage .u11-card__title{font-size:22px;font-weight:700;color:var(--g-900);margin:0 0 8px;text-align:center}
.ft-authpage .u11-card__lead{font-size:14px;color:var(--g-600);margin:0 0 24px;text-align:center;line-height:2}

.ft-authpage .pay11-field{display:block;margin-bottom:16px}
.ft-authpage .pay11-field__label{display:block;font-size:12px;color:var(--g-600);margin-bottom:6px}
.ft-authpage .pay11-field__input{width:100%;height:48px;padding:0 14px;background:#fff;color:var(--g-900);
  border:1px solid var(--g-300);border-radius:10px;font:inherit;font-size:15px;
  transition:border-color .15s ease,box-shadow .15s ease}
.ft-authpage .pay11-field__input:focus{outline:none;border-color:var(--b-600);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--b-600) 16%,transparent)}

.ft-authpage .pay11-btn,
.ft-authpage .u11-submit{display:flex;width:100%;align-items:center;justify-content:center;min-height:48px;
  border-radius:999px;border:1px solid var(--b-600);background:var(--b-600);color:#fff!important;
  font:inherit;font-size:15px;font-weight:600;cursor:pointer;margin-top:8px;
  transition:background .15s ease,border-color .15s ease}
.ft-authpage .pay11-btn:hover,
.ft-authpage .u11-submit:hover{background:var(--b-700);border-color:var(--b-700)}

.ft-authpage .pay11-alert{border-radius:10px;padding:10px 14px;font-size:14px;margin:0 0 16px;line-height:1.9}
.ft-authpage .pay11-alert--bad{background:var(--er-50);color:var(--er-700);border:1px solid var(--er-300)}
.ft-authpage .pay11-alert--ok{background:var(--ok-50,#e7f5ef);color:var(--ok-700,#116b46);border:1px solid var(--ok-300,#b6e0cd)}

.ft-authpage .u11-otp{background:var(--g-100);border:1px dashed var(--g-300);border-radius:10px;
  padding:10px 14px;font-size:13px;color:var(--g-600);text-align:center;margin:0 0 16px}
.ft-authpage .u11-otp b{color:var(--g-900);font-size:17px;letter-spacing:.22em}

.ft-authpage .u11-links{margin-top:20px;text-align:center;font-size:14px;color:var(--g-600)}
.ft-authpage .u11-links a{color:var(--b-600)!important;font-weight:600}
.ft-authpage .u11-links a:hover{text-decoration:underline}
.ft-authpage .u11-linkbtn{background:none;border:0;padding:0;font:inherit;font-weight:600;
  color:var(--b-600);cursor:pointer}
.ft-authpage .u11-linkbtn:hover{text-decoration:underline}
.ft-authpage .u11-linkbtn[disabled]{color:var(--g-400);cursor:not-allowed;text-decoration:none}
.ft-authpage .u11-resend{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:14px}
.ft-authpage .u11-timer,
.ft-authpage .u11-count{font-variant-numeric:tabular-nums;color:var(--g-600)}
.ft-authpage .u11-hint{display:block;margin-top:6px;font-size:12px;color:var(--g-600)}

@media(max-width:600px){.ft-authpage{margin:24px auto 48px;padding:0 16px}
  .ft-authpage .u11-card,.ft-authpage .pay11-card{padding:24px 18px}}

/* ------------------------------------------------------------- voucher12 --
   The document a guest takes to a hotel desk. Same paper metaphor as the
   receipt, but it has to print cleanly, and it must never look settled while
   the money is still outstanding. */
.ft-vch{max-width:720px;margin:0 auto 64px}
.ft-vch__paper{background:#fff;border:1px solid var(--g-300);border-radius:16px;padding:28px}
.ft-vch__paper.is-unpaid{border-color:var(--er-300)}

.ft-vch__top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  padding-bottom:18px;border-bottom:1px solid var(--g-300)}
.ft-vch__hotel h1{font-size:22px;font-weight:700;color:var(--g-900);margin:0 0 4px}
.ft-vch__hotel p{font-size:13px;color:var(--g-600);margin:0;line-height:1.9}
.ft-vch__code{flex:none;text-align:center;border:1px solid var(--g-300);border-radius:12px;
  padding:10px 14px;min-width:132px}
.ft-vch__code span{display:block;font-size:11px;color:var(--g-600)}
.ft-vch__code b{display:block;font-size:20px;font-weight:700;color:var(--g-900);
  font-variant-numeric:tabular-nums;margin:2px 0 6px}
.ft-vch__code em{display:block;font-style:normal;font-size:11px;font-weight:600;
  border-radius:6px;padding:3px 6px}
.ft-vch__code em.is-ok{background:var(--ok-50,#e7f5ef);color:var(--ok-700,#116b46)}
.ft-vch__code em.is-unpaid{background:var(--er-50);color:var(--er-700)}

.ft-vch__warn{margin:18px 0 0;background:var(--er-50);border:1px solid var(--er-300);
  border-radius:10px;padding:12px 14px;font-size:14px;line-height:2;color:var(--er-700)}
.ft-vch__warn b{display:block;font-weight:700}

.ft-vch__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 12px;margin:22px 0 0}
.ft-vch__grid dt{font-size:12px;color:var(--g-600);margin-bottom:4px}
.ft-vch__grid dd{margin:0;font-size:14px;font-weight:600;color:var(--g-900);
  font-variant-numeric:tabular-nums}
.ft-vch__msg{margin:18px 0 0;background:var(--g-100);border-radius:10px;padding:12px 14px;
  font-size:14px;color:var(--g-900);line-height:2}
.ft-vch__msg span{color:var(--g-600)}

.ft-vch__tw{margin-top:22px;overflow-x:auto}
.ft-vch__t{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;
  border:1px solid var(--g-300);border-radius:12px;overflow:hidden}
.ft-vch__t th{background:var(--g-100);color:var(--g-600);font-weight:600;
  padding:10px 12px;text-align:center;white-space:nowrap}
.ft-vch__t td{padding:10px 12px;text-align:center;color:var(--g-900);
  border-top:1px solid var(--g-300);font-variant-numeric:tabular-nums}
.ft-vch__none{margin-top:22px;text-align:center;color:var(--g-600);font-size:14px}

.ft-vch__total{margin-top:22px;display:flex;align-items:center;justify-content:space-between;
  gap:12px;background:var(--ok-50,#e7f5ef);border-radius:12px;padding:16px 18px}
.ft-vch__total.is-unpaid{background:var(--er-50)}
.ft-vch__total span{font-size:14px;color:var(--g-900);font-weight:600}
.ft-vch__total b{font-size:20px;font-weight:700;color:var(--ok-700,#116b46);
  font-variant-numeric:tabular-nums}
.ft-vch__total.is-unpaid b{color:var(--er-700)}
.ft-vch__total small{font-size:12px;font-weight:500}

.ft-vch__go{display:flex;flex-direction:column;gap:10px;margin-top:22px}
.ft-vch__go--row{flex-direction:row;flex-wrap:wrap;justify-content:flex-end}
.ft-vch__empty{text-align:center;padding:32px 8px}
.ft-vch__empty b{display:block;font-size:18px;color:var(--g-900);margin-bottom:8px}
.ft-vch__empty p{font-size:14px;color:var(--g-600);line-height:2;margin:0}

@media(max-width:700px){
  .ft-vch{padding:0 16px}
  .ft-vch__paper{padding:20px 16px}
  .ft-vch__top{flex-direction:column}
  .ft-vch__code{align-self:stretch}
  .ft-vch__grid{grid-template-columns:repeat(2,1fr)}
  .ft-vch__go--row{flex-direction:column}
}
@media print{
  .ft-rcpt-logo,.ft-vch__go{display:none!important}
  .ft-vch__paper{border:0;padding:0}
  .ft-vch__warn{border:1px solid #b12724}
}

/* ------------------------------------------------------- profile editing --
   The account page used to print the guest's own details as read-only cards.
   These are the same fields as a form. A locked field (mobile, and کد ملی once
   it exists) stays visible but greyed, with the reason under it - hiding it
   would just make the guest wonder where it went. */
.ft-prof__g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}
.ft-prof__a{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.ft-in.is-locked input{background:var(--g-100);color:var(--g-600);cursor:not-allowed}
.ft-in.is-locked label{color:var(--g-600)}
.ft-fw{display:flex;flex-direction:column;min-width:0}
.ft-lock{display:block;margin-top:6px;font-size:11px;color:var(--g-600);line-height:1.9}
@media(max-width:700px){.ft-prof__g{grid-template-columns:1fr}}

/* --------------------------------------------- highlights + advert slots --
   The trust row went from three items to four (کمترین نرخ joined it), so it
   needs its own grid rather than borrowing the three-up one. */
.ft-grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ft-hlc{display:flex;gap:14px;align-items:center;border:1px solid var(--g-300);
  border-radius:16px;padding:16px;background:#fff;min-width:0}
.ft-hlc b{font-size:15px;display:block}
.ft-hlc .ft-sub{margin:2px 0 0}

/* Advertising slots. Deliberately empty and deliberately labelled: a blank
   grey rectangle looks like a failed image, this looks like inventory. */
.ft-ads{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 8px}
.ft-ad{position:relative;display:block;border-radius:16px;overflow:hidden;
  aspect-ratio:16/9;background:var(--g-200);border:1px solid var(--g-300)}
.ft-ad img{width:100%;height:100%;object-fit:cover;display:block}
.ft-ad__v{position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:4px;text-align:center;padding:16px;
  background:linear-gradient(0deg,rgba(0,0,0,.45),rgba(0,0,0,.15))}
.ft-ad__t{font-size:17px;font-weight:700;color:#fff}
.ft-ad__s{font-size:12px;color:rgba(255,255,255,.85)}
.ft-ad:hover img{transform:scale(1.03);transition:transform .3s ease}

@media(max-width:900px){.ft-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ft-ads{grid-template-columns:1fr}}
@media(max-width:560px){.ft-grid4{grid-template-columns:1fr}}

/* ----------------------------------------------------------- the footer --
   flytoday's structure: link columns, a newsletter block with the support
   numbers under it, a row of trust marks, then the legal bar. */
.ft-foot{background:var(--g-100);border-top:1px solid var(--g-300);margin-top:56px;padding:40px 0 20px}
.ft-foot__top{display:grid;grid-template-columns:2fr 1.1fr;gap:40px;align-items:start}
.ft-foot__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ft-foot__col h4{font-size:15px;font-weight:700;color:var(--g-900);margin:0 0 14px}
.ft-foot__col a{display:block;font-size:13px;color:var(--g-600);padding:5px 0;line-height:1.9}
.ft-foot__col a:hover{color:var(--b-600)}

.ft-foot__news b{display:block;font-size:14px;color:var(--g-900);margin-bottom:12px;line-height:2}
.ft-foot__sub{display:flex;gap:8px;margin-bottom:16px}
.ft-foot__sub input{flex:1;min-width:0;height:44px;padding:0 14px;background:#fff;
  border:1px solid var(--g-300);border-radius:10px;font:inherit;font-size:14px;color:var(--g-900)}
.ft-foot__sub input:focus{outline:none;border-color:var(--b-600);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--b-600) 16%,transparent)}
.ft-foot__sub .ft-btn{height:44px;min-height:44px;flex:none}
.ft-foot__contact{display:flex;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--g-300);
  border-radius:12px;padding:12px 14px}
.ft-foot__contact div{display:flex;flex-direction:column;gap:2px;min-width:140px}
.ft-foot__contact span{font-size:11px;color:var(--g-600)}
.ft-foot__contact b{font-size:14px;color:var(--g-900);font-variant-numeric:tabular-nums}

.ft-foot__marks{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 8px}
.ft-mark{display:grid;place-items:center;text-align:center;width:104px;min-height:74px;
  padding:8px;background:#fff;border:1px solid var(--g-300);border-radius:10px;
  font-size:10px;line-height:1.7;color:var(--g-600)}

.ft-foot__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;
  border-top:1px solid var(--g-300);margin-top:20px;padding-top:16px;
  font-size:12px;color:var(--g-600);line-height:2}
.ft-foot__soc{display:flex;gap:10px;flex:none}
.ft-foot__soc a{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
  background:#fff;border:1px solid var(--g-300);color:var(--g-600)}
.ft-foot__soc a:hover{color:var(--b-600);border-color:var(--b-600)}
.ft-foot__soc .i{width:17px;height:17px}

@media(max-width:900px){
  .ft-foot__top{grid-template-columns:1fr;gap:28px}
  .ft-foot__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ft-foot__bar{flex-direction:column;align-items:flex-start}
}
@media(max-width:520px){.ft-foot__cols{grid-template-columns:1fr}.ft-foot__sub{flex-direction:column}}

/* ==========================================================================
 * THE SKIN PICKER, THE BASKET, AND THE WAY BACK
 * ========================================================================== */

/* ---- three skins, one control ------------------------------------------ *
 * «کلاسیک» / «مدرن» / «نوین» are three whole front ends, not three colours,
 * so this is a segmented control with a real pressed state - not a dropdown
 * that hides which one you are on. */
.ft-skins{display:inline-flex;align-items:center;height:32px;padding:3px;gap:2px;
  background:var(--g-100);border:1px solid var(--g-300);border-radius:999px}
.ft-skins__b{display:inline-flex;align-items:center;padding:0 9px;height:24px;border-radius:999px;
  font-size:12px;font-weight:500;color:var(--g-600)!important;white-space:nowrap;
  transition:background .15s var(--ease),color .15s var(--ease)}
.ft-skins__b:hover{color:var(--g-900)!important;background:#fff}
.ft-skins__b.is-on{background:var(--b-600);color:#fff!important;font-weight:700;box-shadow:0 1px 3px #0000001f}

/* ---- the basket button in the header ----------------------------------- */
.ft-cartbtn{position:relative;display:inline-grid;place-items:center;width:38px;height:38px;flex:none;
  border-radius:50%;border:1px solid var(--g-300);background:#fff;color:var(--g-700)!important}
.ft-cartbtn:hover{border-color:var(--b-600);color:var(--b-600)!important}
.ft-cartbtn .i{width:20px;height:20px}
.ft-cartbtn__n{position:absolute;top:-5px;inset-inline-start:-5px;min-width:19px;height:19px;padding:0 5px;
  display:grid;place-items:center;border-radius:999px;background:var(--er-600);color:#fff;
  font-size:11px;font-weight:700;line-height:1;border:2px solid #fff}
.ft-cartbtn.is-bump{animation:ft-bump .42s var(--ease)}
@keyframes ft-bump{0%{transform:scale(1)}35%{transform:scale(1.18)}100%{transform:scale(1)}}

/* ---- «بازگشت» و «صفحه اصلی» -------------------------------------------- *
 * Quiet by default: they are a safety net, not a call to action. */
.ft-navb{display:flex;align-items:center;gap:8px;margin:16px 0 4px}
.ft-navb__b{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:999px;
  border:1px solid var(--g-300);background:#fff;font-size:13px;font-weight:500;color:var(--g-700)!important}
.ft-navb__b:hover{border-color:var(--b-600);color:var(--b-600)!important;background:var(--b-50)}
.ft-navb__b .i{width:16px;height:16px}
.ft-navb__b--home{margin-inline-start:auto}
@media(max-width:600px){.ft-navb{margin:12px 0 0}.ft-navb__b span{font-size:12px}}

/* ---- meal plans priced side by side ------------------------------------ *
 * The point of the row: two plans, two prices, no arithmetic. */
.ft-mopts{display:flex;flex-direction:column;gap:2px;margin-bottom:2px}
.ft-mopt{display:flex;align-items:center;justify-content:space-between;gap:10px;
  font-size:14px;line-height:26px;color:var(--ok-600)}
.ft-mopt__m{display:inline-flex;align-items:center;gap:4px;min-width:0}
.ft-mopt__p{flex:none;font-size:13px;color:var(--g-700);font-variant-numeric:tabular-nums}
.ft-mopt__p b{font-size:14px;font-weight:700;color:var(--g-900)}
.ft-mopt + .ft-mopt{border-top:1px dashed var(--g-200);padding-top:2px}
.ft-pr__from{font-size:12px;font-weight:400;color:var(--g-600)}

.ft-room__acts{display:flex;flex-direction:column;gap:8px}
.ft-room__acts .ft-btn{margin:0}
.ft-mfoot__acts{display:flex;gap:8px}
.ft-mfoot__acts .ft-btn{flex:1;margin:0}
.ft-mfoot__acts .i{width:18px;height:18px}
@media(max-width:520px){.ft-mfoot__acts{flex-direction:column}}

/* ---- the stay panel (nights / نفر / تخت اضافه) ------------------------- */
.ft-pax__stay{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:12px;
  border:1px solid var(--g-200);border-radius:12px;background:var(--g-50);cursor:pointer;text-align:start}
.ft-pax__stay:hover{border-color:var(--b-400);background:var(--b-50)}
.ft-pax__stay.is-empty{border-style:dashed}
.ft-pax__stayic{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:10px;
  background:#fff;border:1px solid var(--g-200);color:var(--b-600)}
.ft-pax__stayic .i{width:18px;height:18px}
.ft-pax__stay b{display:block;font-size:14px;font-weight:700;color:var(--g-900)}
.ft-pax__stay span{display:block;font-size:11px;color:var(--g-600)}

/* ---- certificate marks: pictures, and every one a link ----------------- */
.ft-mark{display:grid;place-items:center;width:104px;min-height:88px;padding:4px;
  background:#fff;border:1px solid var(--g-300);border-radius:10px;overflow:hidden;
  transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}
.ft-mark:hover{border-color:var(--b-600);box-shadow:0 2px 10px #0000001a}
.ft-mark img{max-width:100%;max-height:78px;object-fit:contain;display:block}

/* ---- the advertising row ----------------------------------------------- */
.ft-ad__v{pointer-events:none}

/* ==========================================================================
 * cart12.php  -  سبد رزرو
 * ========================================================================== */
.ft-cart{margin:8px 0 48px}
.ft-cart__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}
.ft-cart__head .ft-h1{margin:0}
.ft-cart__empty .i{width:52px;height:52px}
.ft-cart__empty b{display:block;font-size:18px;color:var(--g-900);margin-bottom:6px}
.ft-cart__empty span{display:block;max-width:420px;margin:0 auto 20px;font-size:14px;line-height:2}
.ft-cart__empty .ft-vch__go{max-width:260px;margin:0 auto}

.ft-cart__note{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;margin-bottom:20px;
  border:1px solid var(--b-200);background:var(--b-50);border-radius:12px;
  font-size:13px;line-height:2.1;color:var(--g-700)}
.ft-cart__note .i{width:20px;height:20px;flex:none;margin-top:4px;color:var(--b-600)}
.ft-cart__note b{color:var(--g-900)}

.ft-cart__grid{display:grid;grid-template-columns:minmax(0,1fr) 316px;gap:20px;align-items:start}
.ft-cart__list{display:flex;flex-direction:column;gap:16px;min-width:0}

.ft-cgroup{border:1px solid var(--g-300);border-radius:16px;background:#fff;overflow:hidden}
.ft-cgroup__h{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid var(--g-200);
  background:var(--g-20)}
.ft-cgroup__img{width:76px;height:60px;flex:none;border-radius:10px;overflow:hidden;background:var(--g-200)}
.ft-cgroup__img img{width:100%;height:100%;object-fit:cover;display:block}
.ft-cgroup__id{min-width:0;flex:1}
.ft-cgroup__id b{display:block;font-size:15px;font-weight:700;margin-bottom:3px}
.ft-cgroup__id b a{color:var(--g-900)!important}
.ft-cgroup__id b a:hover{color:var(--b-600)!important}
.ft-cgroup__id span{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--g-600);line-height:2}
.ft-cgroup__id .i{width:14px;height:14px;flex:none}
.ft-cgroup__n{flex:none;align-self:flex-start}
.ft-cgroup__n span{display:inline-block;padding:3px 10px;border-radius:999px;background:var(--b-100);
  color:var(--b-800);font-size:11px;font-weight:700}

.ft-cline{display:flex;align-items:center;gap:12px;padding:12px}
.ft-cline + .ft-cline{border-top:1px dashed var(--g-200)}
.ft-cline__t{flex:1;min-width:0}
.ft-cline__t b{display:block;font-size:14px;font-weight:700}
.ft-cline__t span{display:block;font-size:12px;color:var(--g-600);line-height:2}
.ft-cline__q{display:flex;gap:10px;flex:none}
.ft-cline__q label{display:flex;flex-direction:column;gap:3px}
.ft-cline__q span{font-size:11px;color:var(--g-600)}
.ft-cline__q select{height:34px;min-width:62px;border:1px solid var(--g-300);border-radius:8px;
  padding:0 8px;font:inherit;font-size:13px;background:#fff;color:var(--g-900)}
.ft-cline__p{flex:none;text-align:start;min-width:112px;font-variant-numeric:tabular-nums}
.ft-cline__p b{font-size:15px;font-weight:700}
.ft-cline__p span{font-size:11px;color:var(--g-600);margin-inline-start:3px}
.ft-cline__x button{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;
  border:1px solid var(--g-300);background:#fff;color:var(--g-500)}
.ft-cline__x button:hover{border-color:var(--er-500);color:var(--er-600);background:var(--er-50)}

.ft-cgroup__f{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:12px;border-top:1px solid var(--g-200);background:var(--g-20)}
.ft-cgroup__sum span{display:block;font-size:12px;color:var(--g-600)}
.ft-cgroup__sum b{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}
.ft-cgroup__sum small{font-size:12px;font-weight:400;color:var(--g-600)}
.ft-cgroup__f .ft-btn{margin:0}

.ft-csum{position:sticky;top:16px;border:1px solid var(--g-300);border-radius:16px;background:#fff;padding:16px}
.ft-csum__t{font-size:16px;font-weight:700;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--g-200)}
.ft-csum__r{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 0;font-size:13px;color:var(--g-600)}
.ft-csum__r b{font-size:14px;font-weight:700;color:var(--g-900);font-variant-numeric:tabular-nums}
.ft-csum__r--big{border-top:1px solid var(--g-200);margin-top:4px;padding-top:12px}
.ft-csum__r--big b{font-size:20px}
.ft-csum__r--big small{font-size:12px;font-weight:400;color:var(--g-600)}
.ft-csum__n{font-size:11px;line-height:2;color:var(--g-600);margin:4px 0 14px}
.ft-csum .ft-btn{margin:0}

@media(max-width:920px){
  .ft-cart__grid{grid-template-columns:1fr}
  .ft-csum{position:static}
}
@media(max-width:620px){
  .ft-cline{flex-wrap:wrap}
  .ft-cline__t{flex:1 0 100%}
  .ft-cline__p{margin-inline-start:auto}
  .ft-cgroup__f{flex-direction:column;align-items:stretch}
  .ft-cgroup__f .ft-btn{width:100%}
  .ft-skins__b{padding:0 8px;font-size:11px}
}

/* phones: the header keeps the mark, the basket and the account icon - the
   skin choices live in the «بیشتر» menu, so nothing is lost */
@media (max-width:575px){
  .ft-logo > span:not(.ft-logo__mark){display:none}
  .ft .ft-skins{display:none}
  .ft-login{font-size:0;gap:0}
  .ft-head__l{gap:10px}
}
/* small screens: the nav links go, but «بیشتر» stays - it carries the
   account, the basket, the rules, support and the skin switch */
@media (max-width:991px){
  .ft .ft-nav{display:flex}
  .ft .ft-nav > .ft-nav__a{display:none}
  .ft-nav__more{padding:0 8px}
  .ft-nav__menu{inset-inline-start:auto;inset-inline-end:-120px}
}

/* «جستجو بر اساس تعداد مسافر» - the switch inside the stay popover */
.ft-pax__occ{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 4px;padding:12px;
  border:1px solid var(--g-200);border-radius:12px;cursor:pointer;background:#fff}
.ft-pax__occ b{display:block;font-size:13px;font-weight:700;color:var(--g-900)}
.ft-pax__occ small{display:block;font-size:11px;line-height:1.7;color:var(--g-600);margin-top:2px}
.ft-pax__occ input{appearance:none;flex:none;width:40px;height:22px;border-radius:999px;background:var(--g-300);position:relative;margin:0;cursor:pointer;transition:background .2s}
.ft-pax__occ input::after{content:"";position:absolute;top:3px;right:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .2s}
.ft-pax__occ input:checked{background:var(--b-600)}
.ft-pax__occ input:checked::after{transform:translateX(-18px)}
.ft-pax__occ:has(input:checked){border-color:var(--b-200);background:var(--b-50)}

/* hotel list: hotels that cannot take the party */
.ft-fitbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:12px 16px;
  border:1px solid var(--b-200);background:var(--b-50);border-radius:12px;font-size:13px;color:var(--b-800)}
.ft-fitbar b{font-weight:700}
.ft-fitbar button{font-size:13px;font-weight:700;color:var(--b-700)}
.ft-hcard.is-unfit{display:none}
.ft-res.is-showall .ft-hcard.is-unfit{display:flex;opacity:.55}
.ft-hcard__fit{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--ok-700);background:var(--ok-50);
  border:1px solid #b6f0ce;border-radius:6px;padding:2px 8px}
.ft-hcard__unfit{font-size:12px;color:var(--er-600)}

/* hotel page: the proposed combination for the whole party */
.ft-combo{border:1.5px solid var(--b-600);background:var(--b-50);border-radius:16px;padding:16px;margin-bottom:20px}
.ft-combo__h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.ft-combo__h b{font-size:16px;font-weight:700;color:var(--g-900)}
.ft-combo__h span{font-size:13px;color:var(--g-700)}
.ft-combo__plans{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.ft-combo__plan{height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--g-300);background:#fff;font-size:12px;color:var(--g-800)}
.ft-combo__plan.is-on{border-color:var(--b-600);background:var(--b-600);color:#fff;font-weight:700}
.ft-combo__rows{display:flex;flex-direction:column;gap:8px}
.ft-combo__row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--g-200);border-radius:12px;padding:10px 12px;font-size:14px}
.ft-combo__row em{font-style:normal;color:var(--g-600);font-size:12px}
.ft-combo__row b{white-space:nowrap;color:var(--ok-700)}
.ft-combo__f{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}
.ft-combo__f .ft-price{font-size:18px}
.ft-combo--none{border-color:var(--er-300);background:var(--er-50);color:var(--er-700);font-size:14px}
.ft-room.is-unfit{opacity:.55}
.ft-room__fit{position:absolute;top:10px;right:10px;z-index:3;background:var(--ok-600);color:#fff;font-size:11px;font-weight:700;border-radius:6px;padding:3px 8px}
.ft-room__unfit{font-size:12px;color:var(--er-600);margin-top:6px}

/* room dialog: the «تخت اضافه» section of an option card */
.ft-xbed{margin-top:8px;padding:8px 10px;border-radius:10px;background:#fff;border:1px dashed var(--b-300)}
.ft-xbed__h{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px;font-size:12px;font-weight:700;color:var(--g-900)}
.ft-xbed__h span{display:inline-flex;align-items:center;gap:4px}
.ft-xbed__h small{font-size:10px;font-weight:500;color:var(--g-600)}
.ft-xbed--no{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--g-500);border-style:solid;border-color:var(--g-200);background:var(--g-50)}
.ft-xbed__h{flex-direction:column;align-items:flex-start;gap:2px}
.ft-xbed__h span{white-space:nowrap}

/* ===================================================== EN / AR (i18n12) ==
 * The switch, and the mirror image of every physical left/right above for
 * English (html[dir=ltr]). Arabic stays right-to-left like Persian. */
.ft-lang{display:inline-flex;align-items:center;height:32px;padding:3px;gap:2px;background:var(--g-100);
  border:1px solid var(--g-300);border-radius:999px}
.ft-lang a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:24px;padding:0 8px;border-radius:999px;
  font-size:12px;font-weight:600;color:var(--g-600)!important;text-decoration:none;font-family:inherit}
.ft-lang a:hover{background:#fff;color:var(--g-900)!important}
.ft-lang a.is-on{background:var(--b-600);color:#fff!important;box-shadow:0 1px 3px #0000001f}
.ft-nav__lang{display:none;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid var(--g-200)}
@media (max-width:860px){.ft-sw .ft-lang{display:none}.ft-nav__lang{display:flex}}
/* IRANYekan draws even 0-9 as Persian digits, so EN/AR get Dubai (Latin +
   Arabic-Indic digits, same x-height feel). Persian keeps Yekan. */
@font-face{font-family:"ft-dubai";src:url("../assets/fonts/farsi-fonts/dubai-400.woff2") format("woff2"),url("../assets/fonts/farsi-fonts/dubai-400.woff") format("woff");font-weight:300 400;font-display:swap}
@font-face{font-family:"ft-dubai";src:url("../assets/fonts/farsi-fonts/dubai-500.woff2") format("woff2"),url("../assets/fonts/farsi-fonts/dubai-500.woff") format("woff");font-weight:500;font-display:swap}
@font-face{font-family:"ft-dubai";src:url("../assets/fonts/farsi-fonts/dubai-700.woff2") format("woff2"),url("../assets/fonts/farsi-fonts/dubai-700.woff") format("woff");font-weight:600 800;font-display:swap}
/* ...and this build of Dubai ALSO maps 0-9 to Persian shapes, so the digits
   come from whatever real Latin/Arabic font the device has (unicode-range:
   only digits use it; a glyph it lacks falls through to the next family). */
@font-face{font-family:"ft-digits";src:local("Segoe UI"),local("SegoeUI"),local("Roboto"),local("Helvetica Neue"),local("Arial"),local("Tahoma"),local("DejaVu Sans"),local("Noto Sans");unicode-range:U+0030-0039,U+0660-0669,U+066B-066C}
html[lang=en] body.ft{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","DejaVu Sans","ft-dubai",sans-serif}
html[lang=ar] body.ft{font-family:"ft-digits","ft-dubai","Segoe UI",Tahoma,Arial,sans-serif}
.ft-nav__a,.ft-login,.ft-field__lbl{white-space:nowrap}
html[lang=en] .ft :is(input,button,select,textarea),html[lang=ar] .ft :is(input,button,select,textarea){font-family:inherit;letter-spacing:0}

html[dir=ltr] body.ft{direction:ltr;text-align:left}
html[dir=ltr] .i--dir{transform:scaleX(-1)}
html[dir=ltr] .ft-user__menu a,html[dir=ltr] .ft-field,html[dir=ltr] .ft-field__v,html[dir=ltr] .ft-dest__i,
html[dir=ltr] .ft-room__t,html[dir=ltr] .ft-ic,html[dir=ltr] .ft-ic span,html[dir=ltr] .ft-mate__t span{text-align:left}
html[dir=ltr] .ft-cal__seg[data-on="in"] .ft-cal__bar{transform:translateX(-25%)}
html[dir=ltr] .ft-cal__seg[data-on="out"] .ft-cal__bar{transform:translateX(25%)}
html[dir=ltr] .ft-cal__d.has-r.is-a::before{left:auto;right:0}
html[dir=ltr] .ft-cal__d.has-r.is-b::before{right:auto;left:0}
html[dir=ltr] .ft-search-in .i{left:auto;right:12px}
html[dir=ltr] .ft-sort .i{left:auto;right:10px}
html[dir=ltr] .ft-sort select{padding:0 34px 0 14px}
html[dir=ltr] .ft-toggle input::after{right:auto;left:3px}
html[dir=ltr] .ft-toggle input:checked::after{transform:translateX(16px)}
html[dir=ltr] .ft-pax__occ input::after{right:auto;left:3px}
html[dir=ltr] .ft-pax__occ input:checked::after{transform:translateX(18px)}
html[dir=ltr] .ft-hcard__fav{right:auto;left:10px}
html[dir=ltr] .ft-hcard__src{right:auto;left:8px}
html[dir=ltr] .ft-room__fit{right:auto;left:10px}
html[dir=ltr] .ft-gal__all{left:auto;right:16px}
html[dir=ltr] .ft-room__cnt{left:auto;right:12px}
html[dir=ltr] .ft-light__nav--p{right:auto;left:16px}
html[dir=ltr] .ft-light__nav--n{left:auto;right:16px}
html[dir=ltr] .ft-in__chev{left:auto;right:12px}
html[dir=ltr] .ft-ta small{left:auto;right:12px}
html[dir=ltr] .ft-hbox__nav{right:auto;left:8px}
html[dir=ltr] .ft-top{left:auto;right:48px}
@media (max-width:860px){html[dir=ltr] .ft-top{left:auto;right:16px}}
html[dir=ltr] .ft-rules{padding:0 0 0 18px!important}
@media (max-width:1440px){.ft-nav__a{padding:0 11px}.ft-head__l{gap:10px}.ft-lang a{min-width:24px;padding:0 6px}.ft-skins__b{padding:0 8px}}
@media (max-width:767px){.ft-sw .ft-skins{display:none}}
html[dir=ltr] .ft-step{flex-direction:row-reverse}

/* ==========================================================================
 * Neshan maps (pay11/map12.php)
 * ========================================================================== */
.ft-nmap{width:100%;background:var(--g-100);position:relative;z-index:0}
/* the SDK is Leaflet: its panes must not sit above the header or the modals */
.ft-nmap .leaflet-pane,.ft-nmap .leaflet-top,.ft-nmap .leaflet-bottom{z-index:1}
.ft-nmap .leaflet-control-attribution{font-size:10px;opacity:.75}
.ft-map .ft-nmap{border-bottom:1px solid var(--g-200)}

/* said out loud, not implied: this pin was found by name, not recorded */
.ft-map__approx{display:flex;align-items:center;gap:5px;padding:7px 12px;
  background:var(--y-50);border-bottom:1px solid var(--g-200);
  font-size:11px;line-height:1.7;color:var(--y-700)}
.ft-map__approx .i{width:14px;height:14px;flex:none}

.ft-mapcard__live{border-radius:16px 16px 0 0}
@media(max-width:600px){.ft-nmap{max-height:200px}}

/* ---- hotel12: rooms right under the photos (coworker note ۶) ---------------
   The name/stars block moved out of #overview so the rooms can follow it
   directly; #overview (highlights + map) now sits after the rooms. */
.ft-htitle{margin-top:24px}
.ft-htitle + #rooms .ft-rooms__h{padding-top:24px}

/* ---- hotel12: the basket bar (coworker note ۲) ------------------------------
   Stays on screen once the basket has a room, with the button that moves the
   booking forward. Replaces the 2.6s toast guests kept missing. */
.ft-cartbar{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:1200;
  width:min(820px,calc(100% - 32px));display:flex;align-items:center;gap:14px;
  background:#fff;border:1px solid var(--b-200);border-radius:16px;padding:12px 14px 12px 12px;
  box-shadow:0 10px 32px #0f172a2e}
.ft-cartbar[hidden]{display:none}
.ft-cartbar.is-new{animation:ft-cartbar-in .32s var(--ease)}
@keyframes ft-cartbar-in{from{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%,0)}}
.ft-cartbar__ic{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--b-50);color:var(--b-600)}
.ft-cartbar__ic .i{width:22px;height:22px}
.ft-cartbar__t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ft-cartbar__t b{font-size:15px;font-weight:700;color:var(--g-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ft-cartbar__t > span{font-size:13px;color:var(--g-600)}
.ft-cartbar__go{flex:none;height:48px;padding:0 22px;font-weight:700;font-size:15px}
.ft-cartbar__x{flex:none;width:32px;height:32px;border:0;background:none;border-radius:50%;color:var(--g-500);display:grid;place-items:center;cursor:pointer}
.ft-cartbar__x:hover{background:var(--g-100)}
.ft-cartbar__hint{font-style:normal}
body.has-cartbar{padding-bottom:96px}
body.has-cartbar .ft-top{bottom:112px}
body.has-cartbar .ft-toast{bottom:104px}
@media(max-width:600px){
  .ft-cartbar{flex-wrap:wrap;gap:10px;padding:12px;bottom:8px;width:calc(100% - 16px)}
  .ft-cartbar__ic{display:none}
  .ft-cartbar__hint{display:none}
  .ft-cartbar__go{order:3;flex:1 1 100%;height:44px}
  body.has-cartbar{padding-bottom:148px}
  body.has-cartbar .ft-top{bottom:156px}
}

/* ---- bigger, easier-to-find basket (request 2026-09-26) --------------------
   The header button was a 38px grey outline circle next to the language and
   colour switches, and guests did not spot it. Now a solid green pill with the
   word «سبد خرید»; on phones the word drops and the icon stays large. The
   hotel page's tab-bar basket button grows with it. */
.ft-cartbtn{display:inline-flex;gap:8px;width:auto;height:44px;padding:0 18px 0 16px;border-radius:999px;
  border:0;background:var(--b-600);color:#fff!important;font-size:15px;font-weight:700;
  box-shadow:0 4px 14px #0000001f}
.ft-cartbtn:hover{background:var(--b-700);color:#fff!important}
.ft-cartbtn .i{width:24px;height:24px}
.ft-cartbtn__n{top:-7px;min-width:22px;height:22px;font-size:12px}
.ft-anchor__go .ft-btn{height:50px;min-width:150px;padding:0 22px;font-size:16px;font-weight:700;gap:8px}
.ft-anchor__go .ft-btn .i{width:24px;height:24px}
.ft-anchor__go .ft-btn__n{min-width:24px;height:24px;font-size:13px}
@media(max-width:600px){
  .ft-cartbtn{width:46px;height:46px;padding:0;justify-content:center}
  .ft-cartbtn__t{display:none}
  .ft-anchor__go .ft-btn{min-width:0;height:46px;padding:0 16px}
}
.ft-cgroup__fx{display:block;font-style:normal;font-size:12px;color:var(--g-600);margin-top:2px}

/* ---- ایران / عراق (pay11/nation11.php) ------------------------------------ */
.ft-nation{border:0;margin:0 0 12px;padding:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ft-nation legend{float:right;font-size:13px;color:var(--g-600);margin-inline-end:6px}
.ft-nation__o{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--g-300);border-radius:999px;padding:6px 14px;cursor:pointer;font-size:14px}
.ft-nation__o:has(input:checked){border-color:var(--b-600);background:var(--b-50);color:var(--b-700);font-weight:700}
.ft-nation__o input{accent-color:var(--b-600)}

/* ---- card12.php: کارت به کارت ---------------------------------------------- */
.ft-c12 .ft-alert{margin:10px 0}
.ft-c12__list{margin:12px 0}
.ft-c12__amt{display:flex;justify-content:space-between;align-items:center;background:var(--b-50);border:1px solid var(--b-200);border-radius:12px;padding:12px 16px;margin:12px 0}
.ft-c12__amt b{font-size:20px;color:var(--b-700)}
.ft-c12__card{background:linear-gradient(135deg,#0f3d2e,#147a57);color:#fff;border-radius:16px;padding:18px 20px;margin:12px 0;box-shadow:0 8px 24px #0f3d2e40}
.ft-c12__bank{font-weight:700;letter-spacing:.06em;font-size:13px;opacity:.9}
.ft-c12__no{font-size:22px;letter-spacing:.12em;margin:14px 0;font-family:ui-monospace,monospace;user-select:all}
.ft-c12__h small{display:block;font-size:10px;opacity:.7}
.ft-c12__steps{margin:12px 0;padding-inline-start:20px;font-size:13px;line-height:1.9;color:var(--g-700)}
.ft-c12__up{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0}
.ft-c12__up input[type=file]{flex:1;min-width:0;font-size:13px}
.ft-c12__files{display:flex;flex-direction:column;gap:6px;margin:8px 0 14px}
.ft-c12__f{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--g-200);border-radius:10px;padding:8px 12px;font-size:13px}
.ft-c12__f button{background:none;border:0;color:var(--er-600);cursor:pointer}

/* ==========================================================================
 * کیف پول  (wallet12.php, pay11/wallet12_ui.php)  -  2026-09-26
 * Everything is w12-*; no existing component is restyled. Colours come from
 * the --b-* ramp, so the green/blue switch repaints the wallet too, plus one
 * warm accent (the card chip / gold edge) that reads as "money".
 * ========================================================================== */
.ft{--w12-gold:#f4c152;--w12-gold-2:#d99a1c}
.w12-ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* the wallet button: a richer brand gradient than the flat .ft-btn */
.ft .w12-btn{background:linear-gradient(135deg,var(--b-500),var(--b-700) 60%,var(--b-800));border-color:transparent;
    box-shadow:0 6px 18px -8px rgba(2,32,22,.55),inset 0 1px 0 #ffffff33;position:relative;overflow:hidden}
.ft .w12-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffff40 50%,transparent 70%);
    transform:translateX(-120%);transition:transform .7s var(--ease)}
.ft .w12-btn:hover::after{transform:translateX(120%)}
.ft .w12-btn:hover{background:linear-gradient(135deg,var(--b-600),var(--b-800) 60%,var(--b-900));border-color:transparent}
.ft .w12-btn .w12-ic{width:20px;height:20px}
.ft .w12-btn:disabled{background:var(--g-300);box-shadow:none}
.ft .is-busy{opacity:.85;cursor:progress}

/* header pill */
.w12-chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px 0 10px;border-radius:999px;
    background:linear-gradient(135deg,var(--b-50),#fff);border:1px solid var(--b-200);color:var(--b-800);font-size:12px;
    white-space:nowrap;transition:box-shadow .2s var(--ease),border-color .2s}
.w12-chip:hover{border-color:var(--b-400);box-shadow:0 2px 12px -4px var(--b-300)}
.w12-chip .w12-ic{width:18px;height:18px;color:var(--b-600)}
.w12-chip__n{font-weight:800;font-size:13px;color:var(--b-900)}
@media (max-width:767px){.w12-chip__t{display:none}.w12-chip{padding:0 10px}}

/* page */
.w12{padding:8px 0 48px}
.w12-grid{display:grid;gap:20px}
@media (min-width:992px){.w12-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start}}
.w12-col{display:grid;gap:20px;grid-template-columns:minmax(0,1fr);min-width:0} /* the column never grows past its track */

/* the card */
.w12-hero{position:relative;overflow:hidden;border-radius:24px;padding:22px 22px 18px;color:#fff;min-height:210px;
    background:radial-gradient(120% 140% at 100% 0%,var(--b-500) 0%,transparent 55%),
               linear-gradient(140deg,var(--hero-b),var(--hero-a) 70%);
    box-shadow:0 24px 48px -24px var(--hero-a),inset 0 1px 0 #ffffff26;isolation:isolate}
.w12-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.14;
    background:repeating-linear-gradient(115deg,#fff 0 1px,transparent 1px 14px)}
.w12-hero__glow{position:absolute;width:260px;height:260px;left:-80px;bottom:-140px;border-radius:50%;z-index:-1;
    background:radial-gradient(closest-side,var(--hero-line),transparent);opacity:.55;animation:w12glow 7s ease-in-out infinite alternate}
@keyframes w12glow{to{transform:translate(40px,-30px) scale(1.15)}}
@media (prefers-reduced-motion:reduce){.w12-hero__glow{animation:none}.ft .w12-btn::after{display:none}}
.w12-hero__row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.w12-hero__brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;opacity:.95}
.w12-hero__chip{width:42px;height:32px;border-radius:7px;background:linear-gradient(135deg,var(--w12-gold),var(--w12-gold-2));
    box-shadow:inset 0 0 0 1px #0000001a;position:relative}
.w12-hero__chip::before,.w12-hero__chip::after{content:"";position:absolute;inset:7px 0;border-block:1px solid #00000026}
.w12-hero__chip::after{inset:0 13px;border-block:0;border-inline:1px solid #00000026}
.w12-hero__lbl{margin-top:26px;font-size:12px;opacity:.75}
.w12-hero__bal{display:flex;align-items:baseline;gap:8px;margin-top:2px}
.w12-hero__bal b{font-size:clamp(30px,6vw,42px);font-weight:800;letter-spacing:-.5px;line-height:1.2;text-shadow:0 2px 12px #0003}
.w12-hero__bal span{font-size:14px;opacity:.85}
.w12-hero__foot{margin-top:22px;font-size:12px;opacity:.8}

.w12-steps{display:grid;gap:8px;margin:0;padding:0;list-style:none}
@media (min-width:576px){.w12-steps{grid-template-columns:repeat(3,1fr)}}
.w12-steps li{display:flex;align-items:center;gap:10px;background:var(--g-50);border:1px solid var(--g-100);border-radius:14px;padding:10px 12px;font-size:12px;line-height:18px;color:var(--g-700)}
.w12-steps b{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--b-600);color:#fff;font-size:13px}

.w12-box{background:#fff;border:1px solid var(--g-200);border-radius:20px;padding:18px}
.w12-box h2{font-size:16px;font-weight:800;margin:0 0 14px;color:var(--g-900)}

/* charge form */
.w12-top{display:grid;gap:12px}
.w12-amt{display:flex;align-items:center;gap:10px;border:1.5px solid var(--g-300);border-radius:16px;padding:6px 14px;background:var(--g-20);
    transition:border-color .2s,box-shadow .2s}
.w12-amt:focus-within{border-color:var(--b-500);box-shadow:0 0 0 4px var(--b-100);background:#fff}
.w12-amt span{font-size:12px;color:var(--g-500);white-space:nowrap}
.w12-amt input{flex:1;width:0;min-width:0;border:0;background:transparent;outline:0;font-size:24px;font-weight:800;text-align:left;color:var(--g-900);padding:6px 0}
.w12-amt em{font-style:normal;font-size:13px;color:var(--g-600)}
.w12-words{min-height:18px;margin-top:-6px;font-size:12px;color:var(--b-700);text-align:left}
.w12-words:empty{display:none} /* no hole under the amount until there is a number to spell */
.w12-quick{display:flex;flex-wrap:wrap;gap:8px}
.w12-q{border:1px solid var(--g-300);background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600;color:var(--g-800);
    display:inline-flex;align-items:center;gap:6px;transition:all .15s var(--ease)}
.w12-q:hover{border-color:var(--b-400);color:var(--b-700)}
.w12-q.is-on{background:var(--b-600);border-color:var(--b-600);color:#fff}
.w12-q--cart{border-style:dashed;border-color:var(--b-400);color:var(--b-700);background:var(--b-50)}
.w12-fine{font-size:11px;line-height:18px;color:var(--g-500)}

/* pending bookings / basket link / ledger */
.w12-pend{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px dashed var(--g-200)}
.w12-pend:first-of-type{border-top:0;padding-top:0}
.w12-pend b{display:block;font-size:14px}
.w12-pend span{font-size:12px;color:var(--g-500)}
.w12-cartlink{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;border:1px solid var(--b-200);
    background:linear-gradient(135deg,var(--b-50),#fff);color:var(--b-900);transition:box-shadow .2s}
.w12-cartlink:hover{box-shadow:0 6px 20px -10px var(--b-400)}
.w12-cartlink>span{flex:1;display:grid}
.w12-cartlink small{color:var(--g-600);font-size:12px}
.w12-cartlink em{font-style:normal;font-size:12px;font-weight:700;color:var(--b-700)}
.w12-none{display:flex;align-items:center;gap:10px;color:var(--g-500);font-size:13px;padding:8px 0}
.w12-none .w12-ic{width:28px;height:28px;color:var(--g-400)}
.w12-tx li{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--g-100)}
.w12-tx li:first-child{border-top:0;padding-top:0}
.w12-tx__ic{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:12px}
.w12-tx .is-in .w12-tx__ic{background:var(--ok-50);color:var(--ok-600)}
.w12-tx .is-out .w12-tx__ic{background:var(--g-50);color:var(--g-600)}
.w12-tx__t{flex:1;min-width:0;display:grid}
.w12-tx__t b{font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.w12-tx__t small,.w12-tx__a small{font-size:11px;color:var(--g-500)}
.w12-tx__a{display:grid;text-align:left}
.w12-tx__a b{font-size:14px;font-weight:800}
.w12-tx .is-in .w12-tx__a b{color:var(--ok-600)}
.w12-tx .is-out .w12-tx__a b{color:var(--g-900)}

/* back from the bank */
.w12-rcpt{max-width:520px;margin:8px auto 24px;text-align:center;background:#fff;border:1px solid var(--g-200);border-radius:24px;
    padding:28px 22px;box-shadow:var(--pop);animation:w12pop .45s var(--ease)}
@keyframes w12pop{from{opacity:0;transform:translateY(10px) scale(.98)}}
.w12-rcpt__ic svg{width:64px;height:64px}
.w12-rcpt__ic circle{fill:var(--g-400)}
.w12-rcpt__ic path{fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.w12-rcpt.is-ok .w12-rcpt__ic circle{fill:var(--ok-600)}
.w12-rcpt.is-ok .w12-rcpt__ic path{stroke-dasharray:40;stroke-dashoffset:40;animation:w12tick .6s .2s var(--ease) forwards}
@keyframes w12tick{to{stroke-dashoffset:0}}
.w12-rcpt.is-wait .w12-rcpt__ic circle{fill:var(--b-600)}
.w12-rcpt.is-bad .w12-rcpt__ic circle{fill:var(--er-600)}
.w12-rcpt h1{font-size:20px;font-weight:800;margin:12px 0 4px}
.w12-rcpt__amt{font-size:28px;font-weight:800;color:var(--b-800);margin-bottom:14px}
.w12-rcpt dl{margin:0 0 12px;display:grid;gap:0;text-align:right}
.w12-rcpt dl div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px dashed var(--g-200);font-size:13px}
.w12-rcpt dt{color:var(--g-500)}
.w12-rcpt dd{margin:0;font-weight:600}
.w12-rcpt__msg{font-size:12px;color:var(--g-600);margin:4px 0 12px}
.w12-rcpt__go{display:grid;gap:8px}

/* «پرداخت از کیف پول» box (result12 / pay12) */
.w12-pay{margin-top:16px;border-radius:18px;padding:14px;background:linear-gradient(160deg,var(--b-50),#fff 70%);
    border:1px solid var(--b-200);text-align:right}
.w12-pay.is-ready{border-color:var(--b-400);box-shadow:0 10px 26px -18px var(--b-600)}
.w12-pay__h{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.w12-pay__ic{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:#fff;
    background:linear-gradient(135deg,var(--b-500),var(--b-800))}
.w12-pay__t{display:grid}
.w12-pay__t b{font-size:14px}
.w12-pay__t span{font-size:12px;color:var(--g-600)}
.w12-pay__t em{font-style:normal;font-weight:800;color:var(--b-800)}
.w12-pay__after{font-size:11px;color:var(--g-500);margin-top:8px;text-align:center}
.w12-pay__short{display:flex;justify-content:space-between;font-size:13px;margin:8px 0 12px}
.w12-pay__short b{color:var(--er-600)}
.w12-meter{height:8px;border-radius:99px;background:var(--g-100);overflow:hidden}
.w12-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--b-400),var(--b-600));transition:width .8s var(--ease)}
.w12-meter--light{background:#ffffff2e}
.w12-meter--light i{background:linear-gradient(90deg,var(--w12-gold),#fff)}

/* cart side card */
.w12-card{position:relative;overflow:hidden;border-radius:22px;padding:16px 16px 14px;margin-bottom:16px;color:#fff;
    background:radial-gradient(120% 120% at 0% 0%,var(--b-500),transparent 55%),linear-gradient(150deg,var(--hero-b),var(--hero-a));
    box-shadow:0 18px 36px -22px var(--hero-a)}
.w12-card::before{content:"";position:absolute;inset:0;opacity:.12;background:repeating-linear-gradient(115deg,#fff 0 1px,transparent 1px 12px);pointer-events:none}
.w12-card__top{display:flex;align-items:center;justify-content:space-between;position:relative}
.w12-card__lbl{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700}
.w12-card__more{font-size:12px;opacity:.85;text-decoration:underline;text-underline-offset:3px}
.w12-card__bal{display:flex;align-items:baseline;gap:6px;margin:14px 0 10px;position:relative}
.w12-card__bal b{font-size:30px;font-weight:800;line-height:1.1}
.w12-card__bal span{font-size:12px;opacity:.8}
.w12-card__cap{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:11px;margin:8px 0 12px;opacity:.95;position:relative}
.w12-ok{display:inline-flex;align-items:center;gap:4px;color:#b9f5d8;font-weight:700}
.w12-card__go{position:relative;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border-radius:999px;
    background:linear-gradient(135deg,var(--w12-gold),var(--w12-gold-2));color:#3b2a00!important;font-weight:800;font-size:14px;
    box-shadow:0 8px 20px -10px #000,inset 0 1px 0 #ffffff80;transition:transform .15s var(--ease)}
.w12-card__go:hover{transform:translateY(-1px)}
.w12-card__go:disabled{opacity:.7}
.w12-card__alt{display:block;text-align:center;font-size:11px;margin-top:8px;opacity:.85;position:relative}
.w12-card__hint{font-size:11px;line-height:18px;opacity:.9;position:relative}
.ft-cgroup__acts{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}

/* review12: the wallet as a payment method */
.w12-pm{border-color:var(--b-300)!important;background:linear-gradient(160deg,var(--b-50),#fff 60%)}
.w12-pm .ft-pm__h .w12-ic{color:var(--b-600)}
.w12-pm__bal{margin-inline-start:auto;font-size:12px;font-weight:700;color:var(--b-800);background:#fff;border:1px solid var(--b-200);border-radius:999px;padding:2px 10px}
.w12-pm.is-short .w12-pm__bal{color:var(--er-600);border-color:var(--er-300)}

/* account side + receipts */
.w12-mini{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:12px 14px;border-radius:16px;color:#fff;
    background:linear-gradient(140deg,var(--hero-b),var(--hero-a))}
.w12-mini>span{flex:1;display:grid}
.w12-mini small{font-size:11px;opacity:.8}
.w12-mini b{font-size:16px;font-weight:800}
.w12-mini em{font-style:normal;font-size:11px;display:inline-flex;align-items:center;gap:2px;opacity:.9}
.w12-paidby{display:inline-flex;align-items:center;gap:4px;color:var(--b-700)}
.w12-paidby .w12-ic{width:16px;height:16px}
.w12-card__test{position:relative;display:inline-block;margin:0 0 8px;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700;
    background:#ffe08a;color:#5a3d00}
/* checkout12.php - the whole basket on one page */
.c12-g__h{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.c12-g__h img{width:64px;height:48px;object-fit:cover;border-radius:10px}
.c12-g__h div{flex:1;display:grid}
.c12-g__h span{font-size:12px;color:var(--g-500)}
.c12-g__h em{font-style:normal;font-size:12px;font-weight:700;color:var(--b-700);background:var(--b-50);border-radius:999px;padding:2px 10px}
.c12-room{padding-top:12px;border-top:1px dashed var(--g-200);margin-top:12px}
.c12-room:first-of-type{border-top:0;margin-top:0;padding-top:0}
.c12-pay{display:grid;gap:8px;margin-top:14px}
.c12-pay>b{font-size:13px}
.c12-pm{display:flex;align-items:center;gap:10px;border:1px solid var(--g-300);border-radius:14px;padding:10px 12px;cursor:pointer}
.c12-pm:has(input:checked){border-color:var(--b-500);box-shadow:0 0 0 3px var(--b-100)}
.c12-pm:has(input:disabled){opacity:.6;cursor:not-allowed}
.c12-pm>span{display:grid;gap:2px}
.c12-pm>span b{display:inline-flex;align-items:center;gap:6px;font-size:14px}
.c12-pm small{font-size:11px;color:var(--g-500)}
a.w12-card__go{text-decoration:none}
.c12-flow{margin:4px 0 0;padding:0 18px 0 0;font-size:12px;line-height:22px;color:var(--g-700)}
.c12-flow li{list-style:persian}
.c12-sel{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--b-300);background:var(--b-50);border-radius:999px;padding:6px 12px;cursor:pointer;font-size:12px;white-space:nowrap}
.c12-sel input{width:18px;height:18px;accent-color:var(--b-600)}
.c12-sel b{color:var(--b-800)}
.c12-g.is-off{opacity:.45}
.c12-g.is-off .c12-room{display:none}
.c12-g.is-off .c12-sel{background:#fff;border-color:var(--g-300)}
.c12-row.is-off{opacity:.4;text-decoration:line-through}
.c12-charge{display:grid;gap:8px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--b-200)}
.c12-charge>b{font-size:13px}
.c12-charge small{font-size:11px;line-height:18px;color:var(--g-500)}
.w12-amt--sm{padding:2px 12px;border-radius:12px}
.w12-amt--sm input{font-size:18px;padding:6px 0}
.c12-charge__go{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;border-radius:999px;font-weight:800;font-size:14px;
    background:linear-gradient(135deg,var(--w12-gold),var(--w12-gold-2));color:#3b2a00;box-shadow:inset 0 1px 0 #ffffff80}
.c12-charge__go:hover{filter:brightness(1.04)}
@media (max-width:575px){.c12-g__h{flex-wrap:wrap}.c12-sel{width:100%;justify-content:space-between}}
.ft-unbook{margin:0 0 16px;font-size:13px}
.ft-unbook b{display:block;margin-bottom:2px}
.c12-sel--bad{border-color:var(--er-300);background:var(--er-50);color:var(--er-700);cursor:default}
.c12-g.is-bad{opacity:1}
.c12-g.is-bad .c12-g__h{opacity:.6}

/* ======================================================= 2026-09-28 ==
   checkout12: the locked buyer, the passport + phone book, late arrival per
   hotel, the «پرداخت» box; wallet12's custom-amount line; the voucher's
   logo + watermark. */
.c12-me{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:0}
.c12-me>div{background:var(--g-50);border:1px solid var(--g-200);border-radius:10px;padding:8px 12px;min-width:0}
.c12-me dt{font-size:11px;color:var(--g-500);margin-bottom:2px}
.c12-me dd{margin:0;font-size:14px;font-weight:700;color:var(--g-900);overflow-wrap:anywhere}
.c12-me__n{display:flex;align-items:flex-start;gap:6px;margin:10px 0 0;font-size:12px;line-height:20px;color:var(--g-500)}
.c12-me__n .i--xs{flex:none;margin-top:3px}
.c12-pp{margin-top:10px;padding:14px;border:1px dashed var(--b-300);border-radius:12px;background:var(--b-50)}
.c12-pp[hidden]{display:none}
.c12-pp__t{display:flex;align-items:center;gap:6px;font-weight:800;font-size:14px;color:var(--b-800);margin-bottom:12px}
.c12-pp .ft-in{background:#fff}
.c12-tel{margin-top:4px}
.c12-tel__l{display:block;font-size:12px;color:var(--g-600);margin-bottom:6px}
.c12-tel__row{display:flex;direction:ltr;height:52px;border:1px solid var(--g-900);border-radius:8px;background:#fff;overflow:hidden}
.c12-tel__row.is-bad{border-color:#c0392b}
.c12-tel__row select{flex:0 0 auto;max-width:48%;border:0;border-inline-end:1px solid var(--g-200);background:var(--g-50);padding:0 10px;font-size:14px;cursor:pointer;direction:rtl}
.c12-tel__row input{flex:1;min-width:0;border:0;outline:0;padding:0 12px;font-size:16px;letter-spacing:.5px}
.c12-late{margin-top:12px;padding-top:12px;border-top:1px dashed var(--g-200);width:100%}
.c12-paybox{margin-top:14px;padding:14px;border:1.5px solid var(--b-300);border-radius:14px;background:var(--b-50);display:grid;gap:6px}
.c12-paybox__h{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--b-800)}
.c12-paybox .ft-csum__r{padding:4px 0}
.c12-paybox [hidden]{display:none}
.c12-paybox .ft-btn{margin-top:6px;gap:8px}
.c12-paybox__n{margin:0;font-size:11.5px;line-height:19px;color:var(--g-600)}
.w12-custom{display:flex;align-items:flex-start;gap:6px;margin:10px 0 0;padding:8px 12px;border-radius:10px;background:var(--b-50);color:var(--b-800);font-size:12.5px;line-height:20px}
.w12-custom .i--xs{flex:none;margin-top:3px}

.ft-vch__paper--wm{position:relative;overflow:hidden;isolation:isolate}
.ft-vch__wm{position:absolute;inset:-35% -25%;z-index:-1;pointer-events:none;display:flex;align-items:center;justify-content:center;transform:rotate(-24deg)}
.ft-vch__wm>div{display:grid;gap:64px}
.ft-vch__wm p{margin:0;display:flex;gap:72px;white-space:nowrap}
.ft-vch__wm span{display:inline-flex;align-items:center;gap:10px;font-size:28px;font-weight:800;color:var(--b-700);opacity:.07}
.ft-vch__wm i{font-style:normal;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:3px solid currentColor;font-size:14px}
.ft-vch__brand{display:flex;align-items:center;gap:10px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--g-200)}
.ft-vch__brand .ft-logo__mark{width:44px;height:44px;border-radius:12px;font-size:17px;flex:none}
.ft-vch__brand>div{display:grid;flex:1;min-width:0}
.ft-vch__brand b{font-size:20px;font-weight:800;color:var(--g-900)}
.ft-vch__brand small{font-size:12px;color:var(--g-500);justify-self:start}
.ft-vch__brand em{font-style:normal;font-size:12px;font-weight:700;color:var(--b-700);background:var(--b-50);border:1px solid var(--b-200);border-radius:999px;padding:4px 12px;white-space:nowrap}
@media print{
  .ft-vch__paper--wm,.ft-vch__wm,.ft-vch__brand .ft-logo__mark{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ======================================================= 2026-09-28 (2) ==
   «سبد و پرداخت» - the basket merged into checkout12: room lines with their
   own count/remove, the quiet «روش پرداخت» (wallet default, every gateway
   listed), the passport expiry as three selects, wallet − / +, sample voucher. */
.ft-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:767px){.ft-grid2{grid-template-columns:1fr}}
.c12-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:8px 0 16px}
.c12-head .ft-h1{margin:0 0 4px}
.c12-head .ft-note{margin:0}
.c12-head .ft-link{white-space:nowrap;background:none;border:0;cursor:pointer}
.c12-g__h b a{color:inherit}
.c12-room{padding-top:14px;border-top:1px dashed var(--g-200);margin-top:14px}
.c12-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.c12-line__t{flex:1 1 180px;display:grid;gap:2px;min-width:0}
.c12-line__t b{font-size:14px}
.c12-line__t span{font-size:12px;color:var(--g-500)}
.c12-line__q{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--g-600)}
.c12-line__q select{height:34px;min-width:58px;border:1px solid var(--g-300);border-radius:8px;background:#fff;padding:0 8px;font-size:14px;cursor:pointer}
.c12-line__p{display:inline-flex;align-items:baseline;gap:4px;min-width:120px;justify-content:flex-end}
.c12-line__p b{font-size:15px;font-variant-numeric:tabular-nums}
.c12-line__p span{font-size:11px;color:var(--g-500)}
.c12-line__x{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--g-200);border-radius:8px;background:#fff;color:var(--g-500);cursor:pointer}
.c12-line__x:hover{color:#c0392b;border-color:#e5b4ae}
.c12-fx{margin:8px 0 0;font-size:12px;color:var(--g-500)}
.c12-more{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 0 16px;padding:12px;border:1.5px dashed var(--g-300);border-radius:14px;color:var(--g-600)!important;font-size:13px;font-weight:600}
.c12-more:hover{border-color:var(--b-400);color:var(--b-700)!important}
.c12-exp{margin-top:4px}
.c12-exp__row{display:grid;grid-template-columns:1fr 1.6fr 1.1fr;gap:8px}
.c12-exp__row select{height:48px;border:1px solid var(--g-900);border-radius:8px;background:#fff;padding:0 10px;font-size:14px;cursor:pointer}
.c12-exp__row.is-bad select{border-color:#c0392b}
.c12-pp .ft-grid2{margin-bottom:4px}

.c12-side{position:sticky;top:88px}
.c12-pay2{margin-top:14px;padding-top:14px;border-top:1px solid var(--g-200);display:grid;gap:8px}
.c12-pay2__t{font-size:13px;font-weight:700;color:var(--g-800)}
.c12-opt{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--g-200);border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s}
.c12-opt[hidden]{display:none}
.c12-opt input{margin-top:3px;width:16px;height:16px;accent-color:var(--b-600);flex:none}
.c12-opt:has(input:checked){border-color:var(--b-400);background:var(--b-50)}
.c12-opt__b{display:grid;gap:2px;min-width:0}
.c12-opt__b b{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:var(--g-900)}
.c12-opt__b em{font-style:normal;font-size:10.5px;font-weight:600;color:var(--g-500);background:var(--g-100);border-radius:999px;padding:1px 8px}
.c12-opt__b small{font-size:11.5px;color:var(--g-500)}
.c12-gws{display:flex;flex-wrap:wrap;gap:6px;padding:0 4px}
.c12-gws[hidden]{display:none}
.c12-gw{cursor:pointer}
.c12-gw input{position:absolute;opacity:0;pointer-events:none}
.c12-gw span{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--g-300);border-radius:999px;font-size:12.5px;color:var(--g-700);background:#fff}
.c12-gw input:checked+span{border-color:var(--b-500);color:var(--b-800);box-shadow:0 0 0 2px var(--b-100)}
.c12-gw input:focus-visible+span{outline:2px solid var(--b-400);outline-offset:2px}
.c12-pay2__sum [hidden]{display:none}
.c12-pay2 .ft-btn{gap:8px}
.c12-pay2 .c12-paybox__n:empty{display:none}
@media (max-width:991px){.c12-side{position:static}}

.w12-step{display:flex;align-items:stretch;gap:8px}
.w12-step .w12-amt{flex:1;min-width:0}
.w12-step__b{flex:none;width:52px;border:1px solid var(--g-300);border-radius:14px;background:#fff;font-size:24px;font-weight:600;line-height:1;color:var(--b-700);cursor:pointer;transition:background .15s,border-color .15s}
.w12-step__b:hover{background:var(--b-50);border-color:var(--b-300)}
.w12-step__b:active{transform:scale(.96)}
.ft-vch__warn--sample{border-color:var(--b-300)!important;background:var(--b-50)!important;color:var(--b-800)!important}

/* ======================================================= 2026-09-28 (3) ==
   The passport card: one field style throughout (floating label), the expiry
   as ONE field of three quiet selects, the phone as ONE field with its country
   code. And an unticked stay is no longer a faded ghost: it stays readable,
   its checkbox is clear, only the passenger boxes fold away. */
.c12-pp{margin-top:12px;padding:18px 16px 14px;border:1px solid var(--b-200);border-radius:16px;background:linear-gradient(180deg,var(--b-50),#fff 120px);position:relative;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.c12-pp::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--b-700),var(--b-300))}
.c12-pp__h{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.c12-pp__ic{width:42px;height:42px;border-radius:12px;background:var(--b-600);color:#fff;display:grid;place-items:center;flex:none;box-shadow:0 4px 12px -4px var(--b-600)}
.c12-pp__ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.c12-pp__h b{display:block;font-size:15px;font-weight:800;color:var(--g-900)}
.c12-pp__h small{display:block;font-size:12px;line-height:19px;color:var(--g-500);margin-top:2px}
.c12-pp__r2{margin-top:4px}
.c12-pp .ft-grid2>div>.ft-err,.c12-pp__r2 .ft-err{margin-bottom:4px}
.c12-upper{text-transform:uppercase;letter-spacing:.6px;font-variant-numeric:tabular-nums}
.c12-upper::placeholder{text-transform:none}

.c12-fld{position:relative;height:56px;border:1px solid var(--g-900);border-radius:8px;background:#fff;padding:24px 12px 0;transition:box-shadow .15s,border-color .15s}
.c12-fld:focus-within{border-color:var(--b-600);box-shadow:0 0 0 1px var(--b-600)}
.c12-fld.is-bad{border-color:var(--er-600);box-shadow:0 0 0 1px var(--er-600)}
.c12-fld__l{position:absolute;inset-inline-start:12px;top:7px;font-size:12px;color:var(--g-700);pointer-events:none}
.c12-fld__l small{color:var(--g-400);font-size:11px}
.c12-fld.is-bad .c12-fld__l{color:var(--er-600)}
.c12-fld__ic{position:absolute;inset-inline-end:12px;top:19px;width:18px;height:18px;color:var(--g-500);pointer-events:none}
.c12-date{display:flex;align-items:center;gap:2px;height:28px;padding-inline-end:26px}
.c12-date select{appearance:none;border:0;outline:0;background:transparent;font-size:16px;font-weight:500;color:var(--g-900);padding:2px 4px;border-radius:6px;cursor:pointer;font-variant-numeric:tabular-nums;field-sizing:content}
.c12-date select:hover,.c12-date select:focus{background:var(--b-50)}
.c12-date select.is-empty{color:var(--g-400);font-weight:400}
.c12-date i{font-style:normal;color:var(--g-300);padding:0 1px}
.c12-phone{display:flex;align-items:center;gap:10px;height:28px}
.c12-phone__cc{position:relative;display:inline-flex;align-items:center;height:26px;border-radius:7px;background:var(--g-100);padding:0 24px 0 8px;flex:none}
.c12-phone__cc:focus-within{background:var(--b-50);box-shadow:0 0 0 1px var(--b-300)}
.c12-phone__cc select{appearance:none;border:0;outline:0;background:transparent;font-size:13.5px;font-weight:600;color:var(--g-800);cursor:pointer;field-sizing:content;max-width:170px}
.c12-phone__chev{position:absolute;right:6px;top:6px;width:14px;height:14px;color:var(--g-500);pointer-events:none}
.c12-phone input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:16px;letter-spacing:.4px;color:var(--g-900);font-variant-numeric:tabular-nums}
.c12-phone input::placeholder{color:var(--g-300)}

.c12-sel{border-width:1.5px;padding:8px 14px;font-size:13px}
.c12-sel input{appearance:none;width:20px;height:20px;border:2px solid var(--b-500);border-radius:5px;background:#fff;display:grid;place-items:center;cursor:pointer;margin:0;flex:none}
.c12-sel input:checked{background:var(--b-600);border-color:var(--b-600)}
.c12-sel input:checked::after{content:"";width:10px;height:5px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.c12-g__off{display:none;align-items:flex-start;gap:6px;margin:4px 0 0;font-size:12px;line-height:20px;color:var(--g-600)}
.c12-g.is-off:not(.is-bad){opacity:1;background:var(--g-50);border-style:dashed;border-color:var(--g-300)}
.c12-g.is-off:not(.is-bad) .c12-room{display:block}
.c12-g.is-off:not(.is-bad) .c12-room .ft-rh,.c12-g.is-off:not(.is-bad) .c12-room .ft-grid4,.c12-g.is-off:not(.is-bad) .c12-late{display:none}
.c12-g.is-off:not(.is-bad) .c12-line{margin-bottom:0}
.c12-g.is-off:not(.is-bad) .c12-g__off{display:flex}
.c12-g.is-off:not(.is-bad) .c12-sel{background:#fff;border-color:var(--b-400);box-shadow:0 0 0 3px var(--b-50);color:var(--g-800)}
.c12-g.is-off:not(.is-bad) .c12-sel b{color:var(--g-700)}
.c12-g.is-off:not(.is-bad) .c12-g__h img{filter:grayscale(.35)}
/* (3b) the date row is LTR while the calendar icon sits on the physical left;
   the code pill's arrow is a flex item, not laid over the text */
.c12-date{padding-inline-end:0;padding-left:30px}
.c12-phone__cc{padding:0 8px;gap:4px;direction:ltr}
.c12-phone__chev{position:static;width:14px;height:14px;flex:none}
.c12-phone__cc select{direction:ltr;text-align:left}
.c12-g.is-off:not(.is-bad) .c12-g__off{margin:6px 0 2px}

/* ======================================================= 2026-09-28 (4) ==
   A sent form (js/ft12.js data-w12-once): the pressed button keeps its size
   and colour and shows a spinner - no grey slab, no text crammed into the
   small room-line buttons. */
.ft-btn.is-busy:disabled,.ft-btn.is-busy[disabled]{opacity:.9;cursor:progress;background:var(--b-600);color:#fff;border-color:var(--b-600)}
.ft-btn.ft-btn--line.is-busy:disabled{background:#fff;color:var(--b-700)}
.is-busy{cursor:progress}
.w12-spin{display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-inline-end-color:transparent;animation:w12spin .7s linear infinite;vertical-align:-3px;flex:none}
@keyframes w12spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.w12-spin{animation-duration:2s}}
.c12-amt{margin-inline-start:auto;white-space:nowrap;font-size:13px}.c12-amt b{color:var(--g-900)}

/* ======================================================= 2026-10-01 ==
   (1) FOLDS. The look (نوین/آوا), the language and the skin are each ONE small
   button in the header; a click drops a horizontal strip of the choices just
   BELOW it (pay11/ft12.php ft12_theme_switch / ft12_lang_fold / ft12_skin_bar,
   js/ft12-ava.js). The first version slid the skins sideways OVER the basket
   and the guest's name - the strip now never covers the header row.
   (2) The basket bar never sits on top of an open dialog. */
.ft-sw .ft-fold{position:relative;display:inline-flex;align-items:center;height:auto;padding:0;gap:0;background:none;border:0;border-radius:0}
.ft-fold__tog{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px 0 9px;border-radius:999px;
  background:var(--g-100);border:1px solid var(--g-300);font-size:12px;font-weight:600;color:var(--g-800);white-space:nowrap;cursor:pointer;
  transition:background .15s,border-color .15s,box-shadow .15s}
.ft-fold__tog:hover{background:#fff;border-color:var(--g-400)}
.ft-fold.is-open .ft-fold__tog{background:#fff;border-color:var(--b-400);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 15%,transparent)}
.ft-fold__ic{width:16px;height:16px;flex:none}
svg.ft-fold__ic--line{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.ft-fold--thm .ft-fold__ic{fill:var(--b-600);stroke:none}
.ft-fold__chev{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex:none;opacity:.7;transition:transform .3s var(--ease)}
.ft-fold.is-open .ft-fold__chev{transform:rotate(180deg)}
html:not([data-ft-theme="ava"]) .ft-thm__is-ava,html[data-ft-theme="ava"] .ft-thm__is-nv{display:none}
/* the strip opens IN the header row: the open fold becomes one white pill
   (button + choices) that grows sideways. Nothing on the page is covered; while
   it is open the menu links fade out to give it the room, and below 1200px the
   other folds step aside too. */
.ft-fold__list{display:flex;align-items:center;gap:4px;white-space:nowrap;overflow:hidden;
  max-width:0;opacity:0;visibility:hidden;margin-inline-start:0;
  transition:max-width .38s var(--ease),opacity .22s,margin .38s var(--ease),visibility 0s .38s}
.ft-fold.is-open .ft-fold__list,.ft-fold:not([data-js]):focus-within .ft-fold__list{max-width:480px;opacity:1;visibility:visible;margin-inline-start:6px;
  transition:max-width .38s var(--ease),opacity .22s .06s,margin .38s var(--ease)}
.ft-sw .ft-fold.is-open{padding:2px;background:#fff;border:1px solid var(--g-200);border-radius:999px;box-shadow:var(--pop)}
.ft-fold.is-open .ft-fold__tog{border-color:transparent;box-shadow:none;background:var(--g-100)}
/* room is made only when it is really missing (js/ft12-ava.js measures the
   open strip against the menu): first the other two switches step aside,
   and only if that is still not enough do the menu links fade */
.ft-nav{transition:opacity .2s}
.ft-head.is-crowded2 .ft-sw .ft-fold:not(.is-open){display:none}
.ft-head.is-crowded .ft-nav{opacity:0;pointer-events:none}
/* what sits inside a strip loses its own pill frame */
.ft-sw .ft-fold__list > :is(.ft-thm,.ft-lang){display:inline-flex;height:auto;padding:0;gap:4px;background:none;border:0;box-shadow:none}
.ft-fold__list :is(.ft-thm__b,.ft-lang a,.ft-skins__b){flex:none;height:30px;padding:0 13px;border-radius:11px;font-size:12.5px}
.ft-fold__list .ft-lang a{min-width:40px;justify-content:center}
@media (max-width:767px){.ft-sw .ft-fold--lang{display:none}}
@media (max-width:575px){.ft-fold--thm .ft-fold__chev{display:none}.ft-fold__tog{padding:0 9px}}
body:has(.ft-modal:not([hidden])) .ft-cartbar{display:none}
/* (3) the FA/EN/ع pill is a fold now (it used to hide below 1440px) */
.ft-head__l{flex:none}
.ft-skins__sep{flex:none;width:1px;height:18px;margin:0 4px;background:var(--g-300)}
.ft-skins__colors{display:inline-flex;align-items:center;gap:6px;padding:0 4px 0 2px;flex:none}
/* (4) below 1200px the text links fold into «بیشتر» (it was 992px): a
   signed-in header no longer runs its switches over the menu */
.ft-nav__menu .ft-nav__sm{display:none}
@media (max-width:1199px){
  .ft .ft-nav{display:flex}
  .ft .ft-nav > .ft-nav__a{display:none}
  .ft-nav__menu .ft-nav__sm{display:flex}
  .ft-nav__more{padding:0 8px}
}
/* (5) tablets: the skins go to «بیشتر» (the menu lists them), the basket and
   the wallet keep only their icon and number */
@media (max-width:991px){
  .ft-sw .ft-skins{display:none}
  .ft-cartbtn{width:46px;padding:0;justify-content:center}
  .ft-cartbtn__t,.w12-chip__t{display:none}
  .w12-chip{padding:0 10px}
}
.ft-opt__mid .ft-ok{gap:8px}
.ft-opt__mid .ft-ok__ic{width:22px}
/* the «درگاه پرداخت:» label in front of the gateway chips (checkout12, wallet12) */
.c12-gws__t{align-self:center;font-size:12px;color:var(--g-600);margin-inline-end:2px}
.w12-gws{margin:2px 0 4px}

/* ======================================================= 2026-10-01 (6) ==
   checkout12: «انتخاب از دفترچه مسافران» beside every «سرپرست اتاق». One
   popover, moved under the room that asked; picking a person fills gender,
   name, surname and کد ملی and leaves a ✓ tag. */
.c12-rh{flex-wrap:wrap;gap:8px}
.c12-book{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:999px;cursor:pointer;
  border:1px solid var(--b-200);background:var(--b-50);color:var(--b-700);font-size:12.5px;font-weight:700;transition:background .15s,border-color .15s,box-shadow .15s}
.c12-book:hover,.c12-book[aria-expanded="true"]{background:#fff;border-color:var(--b-400);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 14%,transparent)}
.c12-book em{font-style:normal;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--b-600);color:#fff;font-size:11px;display:inline-grid;place-items:center}
.c12-book .i--xxs{transition:transform .2s}
.c12-book[aria-expanded="true"] .i--xxs{transform:rotate(180deg)}
.c12-picked{font-size:12px;font-weight:600;color:var(--ok-700);background:var(--ok-50);border-radius:999px;padding:3px 10px}
.c12-bookpop{margin:-4px 0 14px;padding:12px;border:1px solid var(--g-200);border-radius:16px;background:#fff;box-shadow:var(--pop);animation:ft-pop .16s var(--ease)}
.c12-bookpop__h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.c12-bookpop__h b{font-size:14px;color:var(--g-900)}
.c12-bookpop__h a{font-size:12px;font-weight:600;color:var(--b-700)!important}
.c12-bookpop__q{width:100%;height:40px;border:1px solid var(--g-300);border-radius:10px;padding:0 12px;margin-bottom:10px;font:inherit;font-size:13px;outline:0}
.c12-bookpop__q:focus{border-color:var(--b-500);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 14%,transparent)}
.c12-bookpop__l{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;max-height:264px;overflow:auto;padding:2px}
.c12-mate{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--g-200);border-radius:12px;background:#fff;text-align:start;cursor:pointer;min-width:0;
  transition:border-color .15s,background .15s,transform .15s}
.c12-mate:hover{border-color:var(--b-400);background:var(--b-50);transform:translateY(-1px)}
.c12-mate__av{width:36px;height:36px;flex:none;border-radius:11px;display:grid;place-items:center;font-weight:800;font-size:15px;color:var(--b-700);background:var(--b-100)}
.c12-mate.is-self .c12-mate__av{background:var(--b-600);color:#fff}
.c12-mate__t{display:grid;min-width:0}
.c12-mate__t b{font-size:13.5px;color:var(--g-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c12-mate__t b small{font-size:10.5px;font-weight:700;color:var(--b-700);background:var(--b-50);border-radius:999px;padding:1px 7px;margin-inline-start:4px}
.c12-mate__t span{font-size:11.5px;color:var(--g-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.c12-bookpop__none{grid-column:1/-1;padding:14px;text-align:center;font-size:12.5px;line-height:2;color:var(--g-600)}
@media (max-width:575px){.c12-book span{display:none}.c12-book{padding:0 10px}}

/* ============================================ page loader (2026-10-03) ==
   js/ft12.js «page loader». Reads only the --b-* ramp, so green, blue and
   «آوا» repaint it with no extra rules. */
.ft-topbar{position:fixed;inset:0 0 auto 0;height:3px;z-index:100001;pointer-events:none;transform-origin:0 50%;
  transform:scaleX(0);opacity:0;background:linear-gradient(90deg,var(--b-300),var(--b-500),var(--b-700),var(--b-400));
  background-size:200% 100%;box-shadow:0 0 12px var(--b-400)}
html[dir="rtl"] .ft-topbar,.ft-topbar:dir(rtl){transform-origin:100% 50%}
.ft-topbar.is-on{opacity:1;animation:ft-topbar-grow 9s cubic-bezier(.08,.6,.2,1) forwards,ft-topbar-flow 1.4s linear infinite}
.ft-topbar.is-done{opacity:0;transform:scaleX(1);transition:opacity .35s ease .1s}
@keyframes ft-topbar-grow{0%{transform:scaleX(0)}12%{transform:scaleX(.35)}45%{transform:scaleX(.7)}100%{transform:scaleX(.94)}}
@keyframes ft-topbar-flow{to{background-position:-200% 0}}

.ft-load{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:16px;
  background:color-mix(in srgb,#fff 62%,transparent);-webkit-backdrop-filter:blur(7px) saturate(1.2);backdrop-filter:blur(7px) saturate(1.2);
  opacity:0;visibility:hidden;transition:opacity .28s ease,visibility 0s linear .28s}
.ft-load.is-on{opacity:1;visibility:visible;transition:opacity .28s ease}
.ft-load__card{display:grid;justify-items:center;gap:14px;min-width:220px;padding:28px 34px 24px;border-radius:28px;
  background:color-mix(in srgb,#fff 88%,var(--b-50));border:1px solid color-mix(in srgb,var(--b-200) 70%,transparent);
  box-shadow:0 30px 80px -24px color-mix(in srgb,var(--b-900) 45%,transparent),0 2px 0 #fff inset;
  transform:translateY(10px) scale(.96);transition:transform .38s cubic-bezier(.2,.9,.25,1.25)}
.ft-load.is-on .ft-load__card{transform:none}
.ft-load__orb{position:relative;width:96px;height:96px}
.ft-load__ring{position:absolute;inset:0;border-radius:50%;border:2px dashed color-mix(in srgb,var(--b-300) 70%,transparent);animation:ft-rot 14s linear infinite reverse}
.ft-load__arc{position:absolute;inset:6px;border-radius:50%;
  background:conic-gradient(from 0deg,transparent 0 55%,color-mix(in srgb,var(--b-400) 40%,transparent) 70%,var(--b-600) 100%);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));
          mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 calc(100% - 4px));
  animation:ft-rot 1.25s linear infinite}
.ft-load__rider{position:absolute;inset:6px;animation:ft-rot 1.25s linear infinite}
.ft-load__rider b{position:absolute;top:-9px;left:50%;width:22px;height:22px;margin-left:-11px;color:var(--b-700);
  transform:rotate(90deg);filter:drop-shadow(0 3px 4px color-mix(in srgb,var(--b-800) 35%,transparent))}
.ft-load__rider svg{width:100%;height:100%;display:block}
.ft-load__core{position:absolute;inset:28px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,var(--b-300),var(--b-600) 70%,var(--b-800));
  box-shadow:0 10px 24px -8px var(--b-600),inset 0 2px 6px rgba(255,255,255,.45);animation:ft-load-breathe 1.8s ease-in-out infinite}
@keyframes ft-load-breathe{50%{transform:scale(.86);box-shadow:0 4px 14px -6px var(--b-600),inset 0 2px 6px rgba(255,255,255,.45)}}
.ft-load__t{font:700 15px/1.6 "ft-yekan",IRANYekan,Tahoma,sans-serif;color:var(--g-900,#0f172a);text-align:center;max-width:260px}
.ft-load__dots{display:flex;gap:6px;margin-top:-6px}
.ft-load__dots i{width:6px;height:6px;border-radius:50%;background:var(--b-500);animation:ft-load-dot 1.1s ease-in-out infinite}
.ft-load__dots i:nth-child(2){animation-delay:.15s}.ft-load__dots i:nth-child(3){animation-delay:.3s}
@keyframes ft-load-dot{0%,80%,100%{transform:translateY(0);opacity:.35}40%{transform:translateY(-6px);opacity:1}}
@media (prefers-color-scheme:dark){
  html[data-ft-dark="auto"] .ft-load{background:color-mix(in srgb,#0b1220 60%,transparent)}
}
html[data-ft-dark="1"] .ft-load,html.ft-dark .ft-load{background:color-mix(in srgb,#0b1220 60%,transparent)}
html[data-ft-dark="1"] .ft-load__card,html.ft-dark .ft-load__card{background:#111a2b;border-color:#24324a;box-shadow:0 30px 80px -24px #000}
html[data-ft-dark="1"] .ft-load__t,html.ft-dark .ft-load__t{color:#e2e8f0}
@media (prefers-reduced-motion:reduce){
  .ft-load__ring,.ft-load__arc,.ft-load__rider,.ft-load__core,.ft-load__dots i{animation-duration:3s}
  .ft-topbar.is-on{animation:none;transform:scaleX(.9)}
}
@media print{.ft-load,.ft-topbar{display:none!important}}

/* ================================= «تراکنش‌ها و فاکتورها» (2026-10-03) == */
.ft-txl{display:grid;gap:10px}
.ft-txr{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid var(--g-200);
  text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}
.ft-txr:hover{border-color:var(--b-300);box-shadow:0 8px 24px -14px color-mix(in srgb,var(--b-800) 40%,transparent);transform:translateY(-1px)}
.ft-txr__ic{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--b-50);color:var(--b-700)}
.ft-txr--bad .ft-txr__ic{background:#fdeceb;color:#b12724}
.ft-txr--wait .ft-txr__ic{background:#fff6e6;color:#b46a00}
.ft-txr__ic svg{width:22px;height:22px}
.ft-txr__m{flex:1;min-width:0;display:grid;gap:4px}
.ft-txr__m b{font-size:15px;font-weight:700;color:var(--g-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ft-txr__m small{font-size:12.5px;color:var(--g-500);line-height:1.7}
.ft-txr__x{color:#b12724!important;font-weight:600}
.ft-txr__a{flex:none;display:grid;justify-items:end;gap:6px}
.ft-txr__a b{font-size:15px;font-weight:800;color:var(--g-900);white-space:nowrap}
@media (max-width:640px){
  .ft-txr{flex-wrap:wrap;gap:10px 12px}
  .ft-txr__a{width:100%;grid-auto-flow:column;justify-content:space-between;align-items:center}
}
.ft-inv .ft-vch__code em.is-unpaid{background:#fdeceb;color:#b12724}
.ft-vch__h{margin:22px 0 10px;font-size:15px;font-weight:800;color:var(--g-900);display:flex;align-items:center;gap:8px}
.ft-vch__h::before{content:"";width:4px;height:16px;border-radius:4px;background:var(--b-600)}
.ft-order__b a.ft-st{text-decoration:none}
.ft-order__ref{display:block;margin-top:4px;font-size:11.5px;font-weight:500;color:var(--g-500)}
.c12-rules{display:flex;align-items:flex-start;gap:8px;margin:4px 0 12px;padding:12px;border-radius:12px;background:var(--g-50);border:1px solid var(--g-200);font-size:13px;line-height:1.8}
.c12-rules:has(input:checked){background:var(--b-50);border-color:var(--b-200)}
.c12-paybox__n.is-alert{color:#e5181f;font-weight:800;font-size:13px}

/* ============================ nicer pickers: js/ft12.js FT12Pick (2026-10-03) == */
.ft-ns__native,.ft-nd__native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
.ft-ns{display:flex;align-items:center;gap:8px;width:100%;height:100%;border:0;background:transparent;font:inherit;color:var(--g-900);cursor:pointer;text-align:start;padding:20px 12px 4px;border-radius:8px}
.ft-ns:disabled{cursor:default;opacity:.6}
.ft-ns__fl{font-size:18px;line-height:1;flex:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}
.ft-ns>span:not(.ft-ns__fl):not(.ft-ns__ph){flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.ft-ns__ph{flex:1;color:var(--g-400);font-size:14px}
.ft-ns__chev{flex:none;width:9px;height:9px;margin-inline-start:auto;border:solid var(--g-500);border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg);transition:transform .2s}
.ft-ns.is-open .ft-ns__chev{transform:translateY(2px) rotate(-135deg)}
.ft-in:has(.ft-ns){cursor:pointer}
.ft-in:has(.ft-ns.is-open){border-color:var(--b-600);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 18%,transparent)}
.ft-in:has(.ft-ns) label{transform:translateY(-9px) scale(.75)}
/* the dial code: a compact pill */
.c12-phone__cc:has(.ft-ns){padding:0;background:transparent}
.c12-phone__cc:has(.ft-ns) .c12-phone__chev{display:none}
.c12-phone__cc .ft-ns{height:30px;padding:0 10px;gap:6px;border-radius:999px;background:var(--b-50);border:1px solid var(--b-100);direction:ltr;transition:background .15s,border-color .15s}
.c12-phone__cc .ft-ns:hover,.c12-phone__cc .ft-ns.is-open{background:var(--b-100);border-color:var(--b-300)}
.c12-phone__cc .ft-ns b{font-size:14px;font-weight:700;color:var(--b-800)}
.c12-phone__cc .ft-ns__chev{width:7px;height:7px;border-color:var(--b-700)}
/* the date face */
.c12-fld:has(.ft-nd){cursor:pointer}
.c12-fld:has(.ft-nd.is-open){border-color:var(--b-600);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 18%,transparent)}
.ft-nd{position:absolute;inset:0;display:flex;align-items:center;gap:10px;padding:22px 42px 4px 12px;border:0;background:transparent;font:inherit;cursor:pointer;text-align:start;border-radius:8px}
.ft-nd:disabled{cursor:default;opacity:.6}
.ft-nd b{font-size:16px;font-weight:700;color:var(--g-900);letter-spacing:.3px}
.ft-nd small{font-size:12px;color:var(--g-500)}
html[dir="rtl"] .ft-nd{padding:22px 12px 4px 42px}

/* the popover */
.ft-np{position:absolute;z-index:100002;min-width:280px;max-width:min(380px,calc(100vw - 16px));background:#fff;border:1px solid var(--g-200);border-radius:18px;
  box-shadow:0 24px 60px -18px color-mix(in srgb,var(--b-950) 40%,transparent),0 4px 14px -6px rgba(15,23,42,.14);overflow:hidden;animation:ft-np-in .18s cubic-bezier(.2,.9,.3,1.2)}
@keyframes ft-np-in{from{opacity:0;transform:translateY(-6px) scale(.98)}}
.ft-np__s{padding:10px;border-bottom:1px solid var(--g-100);background:var(--g-20)}
.ft-np__s input{width:100%;height:42px;border:1px solid var(--g-200);border-radius:12px;padding:0 38px 0 12px;font:inherit;font-size:14px;outline:0;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat right 12px center/18px}
.ft-np__s input:focus{border-color:var(--b-500);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 18%,transparent)}
.ft-np__l{list-style:none;margin:0;padding:6px;max-height:300px;overflow:auto;overscroll-behavior:contain}
.ft-np__l li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;cursor:pointer;font-size:14px;color:var(--g-800)}
.ft-np__l li b{margin-inline-start:auto;font-size:13px;font-weight:700;color:var(--g-500);font-variant-numeric:tabular-nums}
.ft-np__l li.is-hi,.ft-np__l li:hover{background:var(--g-50)}
.ft-np__l li.is-sel{background:var(--b-50);color:var(--b-800);font-weight:700}
.ft-np__l li.is-sel b{color:var(--b-700)}
.ft-np__l li.is-sel::after{content:"";width:6px;height:11px;border:solid var(--b-600);border-width:0 2px 2px 0;transform:rotate(45deg);margin-inline-start:6px}
.ft-np__n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ft-np__none{justify-content:center;color:var(--g-400)!important;cursor:default!important}
/* date */
.ft-np--date{width:340px}
.ft-nd__p{padding:14px}
.ft-nd__hd{display:grid;gap:2px;margin-bottom:12px}
.ft-nd__hd b{font-size:15px;font-weight:800;color:var(--g-900)}
.ft-nd__hd small{font-size:12px;color:var(--g-500)}
.ft-nd__tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;margin-bottom:12px;border-radius:14px;background:var(--g-50)}
.ft-nd__tabs button{display:grid;gap:1px;padding:7px 4px;border:0;border-radius:10px;background:transparent;font:inherit;cursor:pointer;transition:background .15s,box-shadow .15s}
.ft-nd__tabs button small{font-size:11px;color:var(--g-500)}
.ft-nd__tabs button b{font-size:14px;color:var(--g-800)}
.ft-nd__tabs button.is-on{background:#fff;box-shadow:0 2px 8px -2px rgba(15,23,42,.15)}
.ft-nd__tabs button.is-on b{color:var(--b-700)}
.ft-nd__tabs button:disabled{opacity:.45;cursor:default}
.ft-nd__g{display:grid;gap:6px}
.ft-nd__g button{border:1px solid var(--g-200);background:#fff;border-radius:12px;font:inherit;cursor:pointer;transition:background .12s,border-color .12s,transform .12s;color:var(--g-800)}
.ft-nd__g button:hover{border-color:var(--b-300);background:var(--b-50);transform:translateY(-1px)}
.ft-nd__g button.is-sel{background:linear-gradient(135deg,var(--b-500),var(--b-700));border-color:transparent;color:#fff;box-shadow:0 8px 18px -8px var(--b-600)}
.ft-nd__g button.is-sel small{color:rgba(255,255,255,.85)}
.ft-nd__g--y{grid-template-columns:repeat(4,1fr);max-height:228px;overflow:auto}
.ft-nd__g--y button,.ft-nd__g--m button{display:grid;gap:1px;padding:9px 4px}
.ft-nd__g--y b,.ft-nd__g--m b{font-size:14px;font-weight:700}
.ft-nd__g--y small,.ft-nd__g--m small{font-size:10.5px;color:var(--g-400)}
.ft-nd__g--m{grid-template-columns:repeat(3,1fr)}
.ft-nd__wk{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;text-align:center;font-size:11.5px;color:var(--g-400);font-weight:700}
.ft-nd__g--d{grid-template-columns:repeat(7,1fr);gap:4px}
.ft-nd__g--d button{aspect-ratio:1;padding:0;font-size:14px;font-weight:600;border-color:transparent;background:var(--g-50)}
/* phones: a bottom sheet */
.ft-np.is-sheet{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;max-width:none;min-width:0;border-radius:22px 22px 0 0;padding-bottom:env(safe-area-inset-bottom);animation:ft-np-up .24s cubic-bezier(.2,.9,.3,1)}
.ft-np.is-sheet .ft-np__l{max-height:55vh}
@keyframes ft-np-up{from{transform:translateY(100%)}}
.ft-np__grab{width:40px;height:4px;border-radius:4px;background:var(--g-300);margin:8px auto 2px}
.ft-np__l li b,.ft-ns b[dir="ltr"]{direction:ltr;unicode-bidi:isolate}
/* the transaction chip on an order card: its own width, not the cell's */
.ft-order__b .ft-st{display:inline-flex;align-items:center;width:auto;max-width:100%;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}
.ft-order__b b:has(> .ft-st){display:flex;flex-direction:column;align-items:flex-start;gap:4px}

/* «رزروهای شما» card (2026-10-03) */
.ft-stc{position:relative;display:grid;gap:12px;padding:18px 16px;border-radius:20px;overflow:hidden;isolation:isolate;text-decoration:none;color:#fff;
  background:linear-gradient(140deg,var(--b-600) 0%,var(--b-800) 55%,var(--b-950) 100%);
  box-shadow:0 18px 40px -20px color-mix(in srgb,var(--b-800) 70%,transparent);transition:transform .2s,box-shadow .2s}
.ft-stc:hover{transform:translateY(-2px);box-shadow:0 24px 48px -20px color-mix(in srgb,var(--b-800) 80%,transparent)}
.ft-stc__glow{position:absolute;z-index:-1;width:180px;height:180px;border-radius:50%;top:-70px;left:-50px;background:radial-gradient(circle,color-mix(in srgb,var(--b-300) 55%,transparent),transparent 70%);animation:w12glow 6s ease-in-out infinite alternate}
.ft-stc::after{content:"";position:absolute;z-index:-1;inset:auto -30px -60px auto;width:160px;height:160px;border-radius:50%;border:22px solid rgba(255,255,255,.06)}
.ft-stc__top{display:flex;align-items:center;gap:10px}
.ft-stc__ic{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.14);backdrop-filter:blur(4px)}
.ft-stc__ic svg{width:20px;height:20px;color:#fff}
.ft-stc__top small{font-size:14px;font-weight:700;opacity:.92}
.ft-stc__big{display:flex;align-items:baseline;gap:8px}
.ft-stc__big b{font-size:40px;font-weight:800;line-height:1}
.ft-stc__big em{font-style:normal;font-size:15px;opacity:.85}
.ft-stc__row{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}
.ft-stc__t{display:grid;gap:3px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12)}
.ft-stc__t small{font-size:11.5px;opacity:.8}
.ft-stc__t b{font-size:15px;font-weight:800;white-space:nowrap}
@media (prefers-reduced-motion:reduce){.ft-stc__glow{animation:none}}
/* one arrow: the picker draws its own, the field's old chevron goes */
.ft-in:has(.ft-ns) .ft-in__chev{display:none}
/* room dialog: price + «افزودن به سبد» is the dialog's own footer bar (2026-10-03) */
.ft-modal__box>.ft-mfoot--bar{position:static;flex:none;margin:0;padding:12px 24px 16px;background:#fff;border-top:1px solid var(--g-200);
  box-shadow:0 -10px 24px -18px rgba(15,23,42,.35)}
.ft-modal__box:has(>.ft-mfoot--bar) .ft-modal__body{max-height:min(80vh,calc(100vh - 220px))}
.ft-opts:not(:has(.ft-mfoot)){padding-bottom:12px}
/* one palette button for every look (2026-10-04): «نوین» / «آوا» light up from the html attribute */
html:not([data-ft-theme="ava"]) .ft-skins__b[data-ft-theme-set="nv"],
html[data-ft-theme="ava"] .ft-skins__b[data-ft-theme-set="ava"]{background:var(--b-600);color:#fff!important;font-weight:700;box-shadow:0 1px 3px #0000001f}
.ft-fold--thm{display:none!important}

/* ======================================= voucher print, A4 (2026-10-04) == */
.ft-vch__printfoot{display:none}
@media print{
  @page{size:A4;margin:10mm 11mm}
  html,body{background:#fff!important}
  body.ft{font-size:12px}
  .ft-head,.ft-foot,.ft-top,.ft-sw,.ft-navbtns,.ft-rcpt-logo,.ft-vch__go,.ft-load,.ft-topbar,.ft-cartbar,.ft-vch__noprint,[data-ft-chat]{display:none!important}
  .ft-rcpt-page{padding:0!important;margin:0!important;min-height:0!important;background:none!important}
  .ft-vch{max-width:none;margin:0}
  .ft-vch__paper{border:1.5px solid #cfd6de!important;border-radius:14px;padding:0 0 10px!important;overflow:hidden}
  .ft-vch__paper>*:not(.ft-vch__wm):not(.ft-vch__brand){margin-inline:18px}
  .ft-vch__brand{margin:0 0 12px!important;padding:12px 18px!important;border:0!important;
    background:linear-gradient(135deg,var(--b-700),var(--b-900))!important;color:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .ft-vch__brand b{color:#fff!important;font-size:18px}
  .ft-vch__brand small{color:#ffffffc0!important}
  .ft-vch__brand em{background:#ffffff26!important;color:#fff!important;border-color:#ffffff55!important}
  .ft-vch__top{padding-bottom:10px;margin-top:4px}
  .ft-vch__hotel h1{font-size:19px}
  .ft-vch__hotel p{font-size:11.5px;line-height:1.7}
  .ft-vch__code{padding:8px 14px;border:1.5px solid var(--b-600)!important}
  .ft-vch__code b{font-size:18px}
  .ft-vch__grid{gap:8px 10px;margin-top:10px;grid-template-columns:repeat(4,1fr)}
  .ft-vch__grid dt{font-size:10.5px;margin-bottom:1px}
  .ft-vch__grid dd{font-size:12px;overflow-wrap:anywhere}
  .ft-vch__h{margin:12px 18px 4px!important;font-size:13px}
  .ft-vch__tw{margin-top:10px;overflow:visible}
  .ft-vch__t{font-size:11.5px}
  .ft-vch__t th,.ft-vch__t td{padding:6px 8px}
  .ft-vch__t th{background:#f1f4f7!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .ft-vch__msg{margin-top:10px;padding:8px 10px;font-size:11.5px}
  .ft-vch__total{margin-top:12px;padding:10px 14px;border:1.5px solid #bfe7d3}
  .ft-vch__total b{font-size:17px}
  .ft-vch__total,.ft-st,.ft-vch__code em{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .ft-vch__printfoot{display:flex;justify-content:space-between;gap:12px;margin-top:10px;font-size:10px;color:#64748b;line-height:1.7}
  .ft-vch__printfoot span{white-space:nowrap}
  .ft-vch__wm span{opacity:.05}
  .ft-vch__top,.ft-vch__grid,.ft-vch__tw,.ft-vch__total,.ft-vch__h{break-inside:avoid;page-break-inside:avoid}
}
@media print{.ft-vch__paper{display:flex;flex-direction:column}.ft-vch__printfoot{order:99;margin-top:10px}}

.ft-order__exp{font-size:12px;color:var(--er-700,#b12724);font-weight:600;align-self:center}

/* early/late check-in, late check-out per hotel (pay11/stay11.php, 2026-10-04) */
.st11{margin-top:14px;border:1px solid var(--g-200);border-radius:14px;padding:12px 14px;background:var(--g-20,#fafbfc)}
.st11__h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.st11__h b{font-size:14px;color:var(--g-900)}
.st11__h small{font-size:11.5px;color:var(--g-500)}
.st11__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:10px;align-items:center;padding:8px 0;border-top:1px dashed var(--g-200)}
.st11__row:first-of-type{border-top:0}
.st11__cb{display:flex;align-items:center;gap:10px;cursor:pointer}
.st11__cb input{width:18px;height:18px;accent-color:var(--b-600);flex:none}
.st11__cb span{display:grid;line-height:1.5}
.st11__cb b{font-size:13.5px;font-weight:700;color:var(--g-900)}
.st11__cb small{font-size:11.5px;color:var(--g-500)}
.st11__row.is-on .st11__cb b{color:var(--b-700)}
.st11__sel .ft-in{height:50px}
.st11__sel .ft-ns{padding-top:18px}
.ft-np--short{min-width:240px}
.ft-np--short .ft-np__l{max-height:320px}
@media (max-width:640px){.st11__row{grid-template-columns:1fr}}

/* ============================== «پشتیبانی آنلاین» chat, look only (2026-10-04) == */
.ftc{position:fixed;inset-inline-start:20px;bottom:20px;z-index:1100;font-family:inherit}
body.has-cartbar .ftc{bottom:96px}
.ftc__fab{position:relative;width:58px;height:58px;border-radius:50%;border:0;cursor:pointer;display:grid;place-items:center;color:#fff;
  background:linear-gradient(140deg,var(--b-500),var(--b-800));box-shadow:0 14px 30px -10px color-mix(in srgb,var(--b-800) 70%,transparent),0 2px 6px rgba(15,23,42,.18);
  transition:transform .2s cubic-bezier(.2,.9,.3,1.3)}
.ftc__fab:hover{transform:translateY(-2px) scale(1.04)}
.ftc__fab::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid color-mix(in srgb,var(--b-400) 55%,transparent);animation:ftc-ring 2.6s ease-out infinite}
@keyframes ftc-ring{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.35);opacity:0}}
.ftc.is-open .ftc__fab::after{display:none}
.ftc__ic{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s,opacity .2s}
.ftc__ic--x{position:absolute;opacity:0;transform:rotate(-90deg)}
.ftc.is-open .ftc__ic--chat{opacity:0;transform:rotate(90deg)}
.ftc.is-open .ftc__ic--x{opacity:1;transform:none}
.ftc__dot{position:absolute;top:6px;inset-inline-end:6px;width:12px;height:12px;border-radius:50%;background:#ef4444;border:2px solid #fff}
.ftc__panel{position:absolute;bottom:74px;inset-inline-start:0;width:min(370px,calc(100vw - 32px));max-height:min(560px,calc(100vh - 140px));
  display:flex;flex-direction:column;background:#fff;border-radius:22px;overflow:hidden;
  box-shadow:0 30px 70px -24px color-mix(in srgb,var(--b-950) 45%,transparent),0 4px 16px -6px rgba(15,23,42,.18);
  transform-origin:bottom left;animation:ftc-in .24s cubic-bezier(.2,.9,.3,1.2)}
html[dir="rtl"] .ftc__panel{transform-origin:bottom right}
@keyframes ftc-in{from{opacity:0;transform:translateY(10px) scale(.96)}}
.ftc__head{display:flex;align-items:center;gap:10px;padding:14px 16px;color:#fff;background:linear-gradient(135deg,var(--b-600),var(--b-900))}
.ftc__av{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:#ffffff26;font-weight:800;font-size:13px;flex:none}
.ftc__head div{flex:1;display:grid;line-height:1.5}
.ftc__head b{font-size:14.5px}
.ftc__head small{font-size:11.5px;opacity:.85;display:flex;align-items:center;gap:6px}
.ftc__head small i{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px #4ade8040}
.ftc__x{width:34px;height:34px;border:0;border-radius:10px;background:#ffffff1f;color:#fff;cursor:pointer;display:grid;place-items:center}
.ftc__x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.ftc__body{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:var(--g-50,#f7f9fa);min-height:200px}
.ftc__msg{max-width:84%;padding:9px 12px;border-radius:16px;font-size:13.5px;line-height:1.8;animation:ftc-msg .2s ease}
@keyframes ftc-msg{from{opacity:0;transform:translateY(4px)}}
.ftc__msg--in{align-self:flex-start;background:#fff;color:var(--g-900);border:1px solid var(--g-200);border-start-start-radius:6px}
.ftc__msg--out{align-self:flex-end;background:var(--b-600);color:#fff;border-start-end-radius:6px}
.ftc__msg.is-typing{letter-spacing:3px;color:var(--g-400)}
.ftc__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.ftc__chips button{border:1px solid var(--b-200);background:#fff;color:var(--b-700);border-radius:999px;padding:6px 12px;font:inherit;font-size:12.5px;cursor:pointer;transition:background .15s}
.ftc__chips button:hover{background:var(--b-50)}
.ftc__form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--g-200);background:#fff}
.ftc__form input{flex:1;min-width:0;height:42px;border:1px solid var(--g-200);border-radius:12px;padding:0 12px;font:inherit;font-size:13.5px;outline:0}
.ftc__form input:focus{border-color:var(--b-500);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 18%,transparent)}
.ftc__form button{width:42px;height:42px;border:0;border-radius:12px;background:var(--b-600);color:#fff;cursor:pointer;display:grid;place-items:center}
.ftc__form button svg{width:18px;height:18px;fill:currentColor;transform:scaleX(-1)}
html[dir="ltr"] .ftc__form button svg{transform:none}
.ftc__tel{display:flex;align-items:center;justify-content:center;gap:8px;padding:9px;font-size:12.5px;color:var(--g-600);text-decoration:none;background:#fff;border-top:1px dashed var(--g-200)}
.ftc__tel svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
.ftc__tel:hover{color:var(--b-700)}
@media (max-width:640px){.ftc{inset-inline-start:14px;bottom:14px}.ftc__fab{width:52px;height:52px}.ftc__panel{bottom:66px}}
@media (prefers-reduced-motion:reduce){.ftc__fab::after{animation:none}}

/* the domain's own socials / address / pages from the Admin panel (pay11/site11.php, 2026-10-04) */
.ft-foot__soc a.ft-soc{font-size:13px;font-weight:700;text-decoration:none}
.ft-foot__addr{flex-basis:100%}
.ft-foot__addr b{font-weight:500;line-height:1.8}
.ft-pgtext{font-size:14px;line-height:2;color:var(--g-800,#1e293b);margin:0 0 12px;white-space:normal}

/* ترانسفر فرودگاهی per hotel (pay11/transfer11.php, 2026-10-04) */
.tr11{margin-top:12px;border:1px solid var(--g-200);border-radius:14px;background:#fff;overflow:hidden}
.tr11__h{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:0;background:var(--g-20,#fafbfc);cursor:pointer;font:inherit;text-align:start;color:inherit}
.tr11__ic{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--b-50,#e8f5ef);color:var(--b-700);flex:none}
.tr11__ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tr11__ht{display:grid;gap:2px;flex:1}
.tr11__ht b{font-size:14px;color:var(--g-900)}
.tr11__ht small{font-size:11.5px;color:var(--g-500)}
.tr11__chev{width:10px;height:10px;border:solid var(--g-500);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .2s;margin-inline-end:4px}
.tr11.is-open .tr11__chev{transform:rotate(-135deg)}
.tr11__body{padding:4px 14px 14px}
.tr11__leg{padding:10px 0;border-top:1px dashed var(--g-200)}
.tr11__leg:first-child{border-top:0}
.tr11__cb{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13.5px}
.tr11__cb input{width:18px;height:18px;accent-color:var(--b-600);flex:none}
.tr11__leg.is-on .tr11__cb b{color:var(--b-700)}
.tr11__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.tr11__grid .ft-in{height:50px}
.tr11__grid .ft-ns{padding-top:18px}
.tr11__x,.tr11__wide{grid-column:1/-1}
.tr11__common{border-top:1px dashed var(--g-200);padding-top:10px}
.tr11__fee{margin:10px 0 0;font-size:12px;color:var(--g-600,#475569);line-height:1.8;background:var(--g-20,#fafbfc);border-radius:10px;padding:8px 10px}
.tr11__f .ft-err{margin:4px 2px 0}
@media (max-width:640px){.tr11__grid{grid-template-columns:1fr}}
.ft-order__tr{grid-column:1/-1}
.ft-order__tr b{font-weight:500;font-size:12.5px;line-height:1.9}
.ft-order__tr small.ft-st{font-size:10.5px;padding:1px 7px;margin-inline-start:4px}

/* ===================================== flights on «نوین / آوا» (flight12 / flightbook12, 2026-10-04) == */
.fl12-hero{background:linear-gradient(180deg,var(--b-50,#e8f5ef),transparent);padding:22px 0 18px}
.fl12-hero--sm{padding:14px 0 6px}
.fl12-tabs{margin-bottom:10px}
.fl12-h1{font-size:20px;margin:6px 0 14px;color:var(--g-900)}
.fl12-form{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr) auto;gap:12px;align-items:end;padding:14px}
.fl12-form__route{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:end}
.fl12-f{display:grid;gap:5px;font-size:12.5px;color:var(--g-600,#475569);position:relative}
.fl12-f>span{font-weight:600}
.fl12-f select,.fl12-f input{height:46px;border:1px solid var(--g-300);border-radius:12px;padding:0 12px;font:inherit;font-size:14px;color:var(--g-900);background:#fff;width:100%}
.fl12-f .ft-ns{height:46px;border-radius:12px}
.fl12-f.is-bad select,.fl12-f.is-bad input,.fl12-f.is-bad .ft-ns{border-color:var(--er-600,#d92d20)}
.fl12-f em{font-style:normal;font-size:11.5px;color:var(--er-600,#d92d20);min-height:0}
.fl12-swap{width:38px;height:38px;margin-bottom:4px;border:1px solid var(--g-300);border-radius:50%;background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--b-700)}
.fl12-swap.is-no{animation:fl12shake .35s}
@keyframes fl12shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
.fl12-pax{display:flex;gap:8px;flex-wrap:wrap}
.fl12-step{display:flex;align-items:center;gap:8px;border:1px solid var(--g-300);border-radius:12px;padding:5px 8px;background:#fff;flex:1;min-width:150px;justify-content:space-between}
.fl12-step>span{display:grid;line-height:1.3}
.fl12-step b{font-size:13px}
.fl12-step small{font-size:10.5px;color:var(--g-500)}
.fl12-step>div{display:flex;align-items:center;gap:4px}
.fl12-step button{width:28px;height:28px;border-radius:50%;border:1px solid var(--g-300);background:var(--g-20,#fafbfc);cursor:pointer;font-size:16px;line-height:1}
.fl12-step input{width:26px;text-align:center;border:0;font:inherit;font-weight:700;background:none}
.fl12-go{height:46px;padding:0 22px;white-space:nowrap}
.fl12-days{grid-column:1/-1;display:flex;gap:8px;overflow-x:auto;padding:4px 0 2px;scrollbar-width:thin}
.fl12-day{display:grid;gap:2px;min-width:104px;padding:8px 10px;border:1px solid var(--g-300);border-radius:12px;background:#fff;cursor:pointer;text-align:center;font:inherit}
.fl12-day b{font-size:12px;color:var(--g-600,#475569)}
.fl12-day span{font-size:13.5px;font-weight:700;color:var(--g-900)}
.fl12-day em{font-style:normal;font-size:12px;color:var(--b-700)}
.fl12-day:hover,.fl12-day.is-on{border-color:var(--b-600);background:var(--b-50,#e8f5ef)}
.fl12-none{margin:4px 0;font-size:13px;color:var(--g-500)}
.fl12-res{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start;margin-top:14px;margin-bottom:30px}
.fl12-filt{position:sticky;top:84px;padding:14px;display:grid;gap:14px}
.fl12-filt__h{font-size:15px}
.fl12-filt__g{display:grid;gap:7px;font-size:13px}
.fl12-filt__g>span{font-weight:700;color:var(--g-700,#334155)}
.fl12-filt__g label{display:flex;gap:8px;align-items:center;cursor:pointer}
.fl12-filt__g input{accent-color:var(--b-600);width:16px;height:16px}
.fl12-list{display:grid;gap:12px}
.fl12-list__h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.fl12-list__h b{font-size:16px;display:inline-flex;align-items:center;gap:6px}
.fl12-list__h>span{font-size:12.5px;color:var(--g-500)}
.fl12-card{display:grid;grid-template-columns:130px minmax(0,1fr) 190px;grid-template-areas:"al path buy" "al tags buy";gap:8px 16px;padding:14px 16px;align-items:center}
.fl12-card.is-off{opacity:.72}
.fl12-card__al{grid-area:al;display:grid;justify-items:center;gap:4px;text-align:center}
.fl12-card__al img{width:46px;height:46px;object-fit:contain}
.fl12-card__al b{font-size:13px}
.fl12-card__al small{font-size:11.5px;color:var(--g-500)}
.fl12-card__path{grid-area:path;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}
.fl12-card__pt{display:grid;text-align:center;gap:2px}
.fl12-card__pt b{font-size:20px;color:var(--g-900)}
.fl12-card__pt span{font-size:12.5px;color:var(--g-600,#475569)}
.fl12-card__ln{display:grid;gap:3px;text-align:center;font-size:11px;color:var(--g-500)}
.fl12-card__ln i{display:block;height:2px;background:repeating-linear-gradient(90deg,var(--g-300) 0 6px,transparent 6px 10px);position:relative}
.fl12-card__ln i::after{content:"";position:absolute;left:-2px;top:-4px;border:5px solid transparent;border-right-color:var(--b-600)}
.fl12-card__tags{grid-area:tags;display:flex;flex-wrap:wrap;gap:6px}
.fl12-card__tags span{font-size:11.5px;padding:2px 9px;border-radius:99px;background:var(--g-100,#f1f5f9);color:var(--g-700,#334155)}
.fl12-card__tags span.is-low{background:#fdecec;color:var(--er-700,#b12724)}
.fl12-card__buy{grid-area:buy;display:grid;gap:6px;justify-items:stretch;text-align:center;border-inline-start:1px dashed var(--g-200);padding-inline-start:14px}
.fl12-card__pp{font-size:12px;color:var(--g-600,#475569)}
.fl12-card__pp b{font-size:18px;color:var(--b-700)}
.fl12-card__pp small{display:block;font-size:11px;color:var(--g-500)}
.fl12-card__tot{font-size:11.5px;color:var(--g-600,#475569)}
.fl12-card__buy .is-dis{cursor:not-allowed;opacity:.8;font-size:12.5px}
.fl12-empty{display:grid;justify-items:center;gap:8px;padding:28px 16px;text-align:center}
.fl12-empty svg{width:34px;height:34px;color:var(--b-600)}
.fl12-empty span{font-size:13px;color:var(--g-500)}
@media (max-width:900px){
  .fl12-form{grid-template-columns:1fr}
  .fl12-res{grid-template-columns:1fr}
  .fl12-filt{position:static}
  .fl12-card{grid-template-columns:80px minmax(0,1fr);grid-template-areas:"al path" "tags tags" "buy buy"}
  .fl12-card__buy{border:0;padding:0;grid-template-columns:1fr auto;align-items:center;text-align:start}
  .fl12-card__buy .ft-btn,.fl12-card__buy .is-dis{grid-column:2;grid-row:1/3}
}
/* the booking step */
.fl12-book{margin-top:14px;margin-bottom:30px}
.fl12-bk{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.fl12-bk__main{display:grid;gap:12px}
.fl12-bk__side{position:sticky;top:84px}
.fl12-sum{display:flex;gap:14px;align-items:center;padding:14px 16px}
.fl12-sum img{width:52px;height:52px;object-fit:contain;flex:none}
.fl12-sum>div{display:grid;gap:4px;font-size:13px;color:var(--g-600,#475569)}
.fl12-sum>div>b{font-size:16px;color:var(--g-900);display:inline-flex;align-items:center;gap:6px}
.fl12-hint{font-weight:400;font-size:12px;color:var(--g-500);margin-inline-start:6px}
.fl12-px{padding:12px 16px}
.fl12-px__h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.fl12-px__h em{font-style:normal;font-size:11.5px;font-weight:600;padding:1px 9px;border-radius:99px;background:var(--b-50,#e8f5ef);color:var(--b-700);margin-inline-start:6px}
.fl12-px__pick{height:36px;border:1px solid var(--g-300);border-radius:10px;padding:0 10px;font:inherit;font-size:12.5px;background:#fff;max-width:260px}
.fl12-px__g{display:grid;grid-template-columns:110px repeat(2,minmax(0,1fr));gap:10px}
.fl12-px__g .fl12-f--birth{grid-column:span 2}
.fl12-birth{display:grid;grid-template-columns:70px 1fr 90px;gap:6px}
.fl12-birth select{height:46px;border:1px solid var(--g-300);border-radius:12px;padding:0 8px;font:inherit;background:#fff}
.fl12-f.is-bad .fl12-birth select{border-color:var(--er-600,#d92d20)}
.fl12-contact{padding:12px 16px;font-size:13px}
.fl12-contact p{margin:6px 0 0;color:var(--g-600,#475569)}
.fl12-price{padding:14px 16px;display:grid;gap:9px;font-size:13px}
.fl12-price>div:not(.c12-pay2){display:flex;justify-content:space-between;gap:10px}
.fl12-price small{color:var(--g-500)}
.fl12-price__t{border-top:1px dashed var(--g-200);padding-top:10px;font-size:14px}
.fl12-price__t b{font-size:18px;color:var(--b-700)}
.fl12-price__n{margin:0;font-size:11.5px;color:var(--g-500);text-align:center}
.fl12-rules{font-size:12.5px}
.fl12-rules.is-bad span{color:var(--er-700,#b12724)}
@media (max-width:900px){
  .fl12-bk{grid-template-columns:1fr}
  .fl12-bk__side{position:static}
  .fl12-px__g{grid-template-columns:1fr 1fr}
  .fl12-px__g .fl12-f--birth{grid-column:1/-1}
}

/* ======================== the «پرواز» tab of search12.php (pay11/flight12_ui.php, 2026-10-04) ==
   html[data-ft-tab] flips with no reload (js/flight12.js): the search bar, the
   hero photographs and the section under the hero change together. */
html:not([data-ft-tab="flight"]) [data-fl-pane="flight"],
html[data-ft-tab="flight"] [data-fl-pane="hotel"]{display:none!important}
[data-fl-pane]{animation:fl12in .55s cubic-bezier(.2,.7,.2,1) both}
.ft-hero__title [data-fl-pane]{animation:none}
@keyframes fl12in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* the hero photographs: both sets stacked, the tab cross-fades them */
[data-ft-media]{transition:opacity .9s ease,visibility .9s}
html[data-ft-tab="flight"] [data-ft-media="hotel"],
html:not([data-ft-tab="flight"]) [data-ft-media="flight"]{opacity:0;visibility:hidden}
button.ft-tabs__t{border:0;background:none;font:inherit;font-size:16px;font-weight:700;cursor:pointer}

/* the flight bar - the hotel bar's own boxes */
.fl12-route{display:flex;align-items:center;gap:8px}
.fl12-route>.ft-field{flex:1 1 0;min-width:0}
.fl12-sform .fl12-swap{flex:none;width:36px;height:36px;margin:0;border:1px solid var(--g-300);border-radius:50%;background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--b-700);transition:transform .25s}
.fl12-sform .fl12-swap:hover{transform:rotate(180deg)}
.fl12-sform .ft-field{cursor:pointer;text-align:start}
.fl12-sform .ft-field.is-bad{box-shadow:0 0 0 2px var(--er-600) inset}
.fl12-pop{border-radius:14px;padding:10px;top:calc(100% + 6px)}
.fl12-pop--city{inset-inline-start:0;width:340px;max-width:calc(100vw - 32px)}
.fl12-pop--city.is-dst{inset-inline-start:auto;inset-inline-end:0}
.fl12-pop--date{inset-inline-start:0;width:min(600px,calc(100vw - 32px))}
.fl12-pop--pax{padding:14px 16px}
.fl12-pop__h{font-size:13px;font-weight:700;color:var(--g-700,#334155);padding:4px 6px 8px}
.fl12-pop__q input{width:100%;height:40px;border:1px solid var(--g-300);border-radius:10px;padding:0 12px;font:inherit;margin-bottom:6px}
.fl12-pop__l{list-style:none;margin:0;padding:0;max-height:300px;overflow:auto}
.fl12-pop__l button{display:flex;width:100%;align-items:center;gap:8px;padding:10px 12px;border:0;border-radius:10px;background:none;font:inherit;font-size:14px;cursor:pointer;text-align:start;color:var(--g-900)}
.fl12-pop__l button::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--g-300);flex:none}
.fl12-pop__l button:hover,.fl12-pop__l button.is-sel{background:var(--b-50,#e8f5ef);color:var(--b-700)}
.fl12-pop__l button.is-sel::before{background:var(--b-600)}
.fl12-pop__none{padding:14px 8px;font-size:13px;color:var(--g-500);list-style:none;margin:0}
.fl12-pop__days{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;max-height:320px;overflow:auto}
.fl12-pop__n{margin:8px 4px 0;font-size:11.5px;color:var(--g-500)}
.fl12-pop .fl12-step{border:0;border-bottom:1px solid var(--g-200);border-radius:0;padding:10px 0;min-width:0}
.fl12-pop .fl12-step output{width:26px;text-align:center;font-weight:700}
.fl12-pop .ft-btn--block{margin-top:10px}
/* results page: a compact hero */
html[data-ft-tab="flight"] .ft-hero--compact .av-hero__copy{display:none}
.fl12-resw .fl12-days{display:flex;margin:18px 0 0}
.fl12-resw .fl12-day{text-decoration:none}
.fl12-resw .fl12-res{margin-top:14px}

/* under the hero, flight tab: the photographs, the routes on sale */
.fl12-land{padding-top:28px}
.fl12-show{position:relative;height:360px;border-radius:24px;overflow:hidden;display:flex;align-items:flex-end;color:#fff;margin-bottom:34px;background:#0d2a22}
.fl12-show__pics{position:absolute;inset:0}
.fl12-show__pics img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);animation:fl12kb 21s ease-in-out infinite}
.fl12-show__pics.fl12-n1 img{opacity:1;animation:none}
.fl12-show__pics.fl12-n2 img{animation-duration:14s}
.fl12-show__pics.fl12-n2 img:nth-child(2){animation-delay:-7s}
.fl12-show__pics.fl12-n3 img:nth-child(2){animation-delay:-14s}
.fl12-show__pics.fl12-n3 img:nth-child(3){animation-delay:-7s}
@keyframes fl12kb{0%{opacity:0;transform:scale(1.1)}7%{opacity:1}33%{opacity:1}40%{opacity:0;transform:scale(1)}100%{opacity:0}}
.fl12-show::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,18,14,.05) 20%,rgba(6,18,14,.78) 100%),linear-gradient(90deg,transparent 45%,rgba(6,18,14,.45))}
.fl12-show__copy{position:relative;z-index:1;padding:28px 32px;max-width:640px}
.fl12-show__eye{display:inline-flex;align-items:center;height:30px;padding:0 14px;border-radius:99px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);font-size:12.5px;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.fl12-show__copy h2{margin:12px 0 8px;font-size:clamp(22px,3vw,34px);line-height:1.35;color:#fff}
.fl12-show__copy p{margin:0;font-size:14.5px;line-height:1.9;color:rgba(255,255,255,.86)}
.fl12-routes{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;margin:8px 0 34px}
.fl12-route-c{display:flex;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.fl12-route-c:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.10)}
.fl12-route-c__ic{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--b-50,#e8f5ef);color:var(--b-700);flex:none}
.fl12-route-c__t{display:grid;gap:4px;flex:1;min-width:0}
.fl12-route-c__t b{display:inline-flex;align-items:center;gap:6px;font-size:15px}
.fl12-route-c__t small{font-size:12px;color:var(--g-500)}
.fl12-route-c__p{display:grid;justify-items:end;line-height:1.3}
.fl12-route-c__p b{font-size:17px;color:var(--b-700)}
.fl12-route-c__p small{font-size:11px;color:var(--g-500)}
.fl12-land .av-sec-h{display:block}
.fl12-land .av-sec-h span{display:block;font-size:12.5px;color:var(--b-700);font-weight:700}
.fl12-land .av-sec-h h2{margin:4px 0 12px;font-size:20px}
@media (max-width:767px){.fl12-show{height:280px}.fl12-show__copy{padding:20px}.fl12-route{gap:4px}}

/* Jalali date picker (js/jdate12.js, 2026-10-04) */
.jd12{position:relative}
.jd12__btn{display:flex;align-items:center;gap:10px;width:100%;height:46px;padding:0 12px;border:1px solid var(--g-300);border-radius:12px;background:#fff;font:inherit;font-size:14px;color:var(--g-900);cursor:pointer;text-align:start;transition:border-color .15s,box-shadow .15s}
.jd12__btn svg{width:20px;height:20px;fill:none;stroke:var(--b-600);stroke-width:1.7;stroke-linecap:round;flex:none}
.jd12__btn span{color:var(--g-500);flex:1}
.jd12__btn b{flex:1;font-weight:600}
.jd12__chev{width:8px;height:8px;border:solid var(--g-500);border-width:0 1.8px 1.8px 0;transform:rotate(45deg);margin-top:-4px;transition:transform .2s}
.jd12.is-open .jd12__btn{border-color:var(--b-600);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-600) 15%,transparent)}
.jd12.is-open .jd12__chev{transform:rotate(-135deg);margin-top:4px}
.jd12.is-bad .jd12__btn{border-color:var(--er-600,#d92d20)}
.jd12__pop{position:absolute;z-index:1095;top:calc(100% + 6px);inset-inline-start:0;width:330px;max-width:calc(100vw - 32px);background:#fff;border-radius:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.18),0 2px 8px rgba(15,23,42,.08);padding:12px;animation:jd12in .18s ease}
@keyframes jd12in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.jd12__pop.is-sheet{position:fixed;top:auto;bottom:0;inset-inline:0;width:auto;max-width:none;border-radius:20px 20px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));animation:jd12up .22s ease}
@keyframes jd12up{from{transform:translateY(100%)}to{transform:none}}
.jd12__scrim{position:fixed;inset:0;z-index:1094;background:rgba(15,23,42,.45)}
.jd12__h{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.jd12__h b{font-size:14.5px;display:flex;gap:6px;align-items:center}
.jd12__back,.jd12__x{width:32px;height:32px;border:0;border-radius:10px;background:var(--g-100,#f1f5f9);font-size:18px;line-height:1;cursor:pointer;color:var(--g-700,#334155)}
.jd12__hb{border:0;background:var(--b-50,#e8f5ef);color:var(--b-700);font:inherit;font-weight:700;font-size:14px;padding:4px 10px;border-radius:9px;cursor:pointer}
.jd12__type{display:flex;gap:6px;margin-bottom:10px}
.jd12__type input{flex:1;min-width:0;height:36px;border:1px solid var(--g-300);border-radius:10px;padding:0 10px;font:inherit;font-size:13px;direction:rtl}
.jd12__type input.is-bad{border-color:var(--er-600,#d92d20)}
.jd12__type button{border:0;border-radius:10px;padding:0 12px;background:var(--b-600);color:#fff;font:inherit;font-size:13px;cursor:pointer}
.jd12__grid{display:grid;gap:6px}
.jd12__grid button{height:40px;border:0;border-radius:10px;background:var(--g-20,#f8fafc);font:inherit;font-size:14px;color:var(--g-900);cursor:pointer;transition:background .12s,color .12s}
.jd12__grid button:hover{background:var(--b-50,#e8f5ef);color:var(--b-700)}
.jd12__grid button.is-hi{box-shadow:inset 0 0 0 1.5px var(--b-400,#4fb38f)}
.jd12__grid button.is-sel{background:var(--b-600);color:#fff;font-weight:700}
.jd12__grid--y{grid-template-columns:repeat(4,1fr);max-height:240px;overflow:auto;padding:2px}
.jd12__grid--m{grid-template-columns:repeat(3,1fr)}
.jd12__grid--d{grid-template-columns:repeat(7,1fr);gap:4px}
.jd12__grid--d button{height:36px}
.jd12__wd{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}
.jd12__wd span{text-align:center;font-size:11.5px;font-weight:700;color:var(--g-500)}
.jd12__wd span:last-child{color:var(--er-600,#d92d20)}
.jd12__nav{display:flex;justify-content:space-between;margin-bottom:8px}
.jd12__nav button{border:0;background:none;font:inherit;font-size:12.5px;color:var(--b-700);cursor:pointer;padding:4px 6px}
html[data-ft-theme="ava"] .jd12__btn{border-radius:14px;height:50px}
.fl12-ads{margin:0 0 30px}
.fl12-ads .ft-ad{cursor:default}
.fl12-land .ft-ads.fl12-ads{margin:0 0 30px}
