/* ==========================================================================
   UTours — hotel pages (/ggs/offers/, /ggs/hview/, /ggs/breakdown/).
   Loaded on those pages only, after ux.css (tokens, buttons, chips).
   ========================================================================== */
body.ux-htpage{background:var(--ux-tint)}
.ux-htpage .content{min-height:0}
.ux-htpage .ux-footer{margin-top:0}
.ux-ht{padding:18px 0 72px;color:var(--ux-text);font:400 15px/1.55 var(--ux-font)}
.ux-ht *,.ux-ht *::before,.ux-ht *::after{box-sizing:border-box}
.ux-ht :focus-visible{outline:3px solid var(--ux-sky);outline-offset:2px;border-radius:6px}
.ux-ht h1,.ux-ht h2,.ux-ht h3{margin:0;font-family:var(--ux-font-head);letter-spacing:-.02em;color:var(--ux-heading)}
.ux-ht p{margin:0}
.ux-ht ul,.ux-ht ol{list-style:none;margin:0;padding:0}
.ux-ht img{max-width:100%;display:block}
.ux-ht a:not([class]){color:var(--ux-sky)}
/* legacy style.css spaces / frames every label, fieldset, legend, select and textarea */
.ux-ht label{margin:0;letter-spacing:normal;font-size:inherit;user-select:auto}
.ux-ht fieldset{margin:0;padding:0;border:0;border-radius:0;min-width:0}
.ux-ht legend{margin:0;padding:0;color:inherit;font-size:inherit}
.ux-ht [hidden]{display:none!important}
/* legacy apis.css / style.css style every article / header */
.ux-ht dl{display:block;gap:0}
.ux-ht dl>*{background:none;padding:0}
.ux-ht dt{font:500 13px var(--ux-font);color:var(--ux-muted)}
.ux-ht dd{display:block;margin:0;padding:0}
.ux-ht article,.ux-ht header{position:static;max-width:none;margin:0;padding:0;background:none;box-shadow:none}
.ux-vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ux-ht-muted{color:var(--ux-muted);font-size:14px}
.ux-ht-link{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:var(--ux-sky)!important;font:700 13px/1.3 var(--ux-font);text-decoration:none;cursor:pointer}
.ux-ht-link:hover{text-decoration:underline}
.ux-ht-link .ux-i{width:15px;height:15px}
.ux-ht--narrow .ux-container{max-width:720px}

/* ---------- head: name, stars, location, price ---------- */
.ux-ht .ux-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:16px;font-size:13px;font-weight:600;color:var(--ux-muted)}
.ux-ht .ux-crumbs a{color:var(--ux-heading)!important;text-decoration:none}
.ux-ht .ux-crumbs a:hover{color:var(--ux-sky)!important}
.ux-ht .ux-crumbs .ux-i{width:14px;height:14px;opacity:.5}
.ux-ht .ux-crumbs [aria-current]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}
.ux-ht-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.ux-ht-head__text{min-width:0}
.ux-ht-stars{display:flex;gap:2px;margin-bottom:6px!important;color:var(--ux-gold)}
.ux-ht-stars .ux-i{width:16px;height:16px;fill:currentColor}
.ux-ht-title{font:800 clamp(26px,3.2vw,40px)/1.1 var(--ux-font-head)!important;letter-spacing:-.03em!important;text-wrap:balance}
.ux-ht-where{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:10px!important;font-size:14px;color:var(--ux-muted)}
.ux-ht-where .ux-i{color:var(--ux-accent)}
.ux-ht-where a{font-weight:700;color:var(--ux-sky)!important;text-decoration:none}
.ux-ht-where a:hover{text-decoration:underline}
.ux-ht-head__cta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex:none;text-align:right}
.ux-ht-from{font-size:14px;color:var(--ux-muted)}
.ux-ht-from b{font:800 30px/1 var(--ux-font-head);letter-spacing:-.03em;color:var(--ux-heading)}
.ux-ht-from__sub{margin-bottom:10px!important;font-size:13px;color:var(--ux-muted)}

/* ---------- gallery: 1 large + 4 small on desktop, swipe slider on phones ---------- */
.ux-hg{position:relative;margin-bottom:20px}
.ux-hg__track{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:200px 200px;gap:8px;border-radius:var(--ux-r-lg);overflow:hidden}
.ux-hg__tile{position:relative;display:block;width:100%;height:100%;padding:0;border:0;background:var(--ux-line-2);cursor:zoom-in;overflow:hidden}
.ux-hg__tile:first-child{grid-row:1/3}
.ux-hg__tile:nth-child(n+6){display:none}
.ux-hg__tile img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ux-ease),filter .3s}
.ux-hg__tile:hover img{transform:scale(1.04);filter:brightness(1.05)}
.ux-hg.is-few .ux-hg__track{grid-template-columns:2fr 1fr;grid-template-rows:200px 200px}
.ux-hg.is-few .ux-hg__tile:nth-child(n+4){display:none}
.ux-hg__all{position:absolute;right:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:0;border-radius:999px;background:var(--ux-glass);color:var(--ux-heading);font:700 14px var(--ux-font);box-shadow:var(--ux-shadow);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ux-hg__all:hover{background:var(--ux-surface)}
.ux-hg__count{display:none}
.ux-hg__none{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:220px;border-radius:var(--ux-r-lg);background:var(--ux-surface);border:1px dashed var(--ux-line);color:var(--ux-muted)}
.ux-hg__none .ux-i{width:32px;height:32px}

/* lightbox */
.ux-lb{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:rgba(6,8,30,.96);color:#fff;opacity:0;transition:opacity .25s}
.ux-lb.is-open{opacity:1}
.ux-lb__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;font:600 14px var(--ux-font)}
.ux-lb__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ux-lb__btn{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;flex:none;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;transition:background .2s}
.ux-lb__btn:hover{background:rgba(255,255,255,.24)}
.ux-lb__btn .ux-i{width:22px;height:22px}
.ux-lb__stage{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:0 72px;touch-action:pan-y}
.ux-lb__stage img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;user-select:none;-webkit-user-drag:none;transition:opacity .2s}
.ux-lb__stage img.is-loading{opacity:.3}
.ux-lb__nav{position:absolute;top:50%;transform:translateY(-50%)}
.ux-lb__nav--prev{left:14px}
.ux-lb__nav--next{right:14px}
.ux-lb__thumbs{display:flex;gap:6px;padding:14px 18px 18px;overflow-x:auto;scrollbar-width:none}
.ux-lb__thumbs::-webkit-scrollbar{display:none}
.ux-lb__thumbs button{flex:none;width:76px;height:52px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#222;opacity:.55;cursor:pointer;transition:opacity .2s,border-color .2s}
.ux-lb__thumbs button.is-active{opacity:1;border-color:var(--ux-cyan)}
.ux-lb__thumbs img{width:100%;height:100%;object-fit:cover}
body.ux-lb-open{overflow:hidden}

/* ---------- trip bar + section tabs ---------- */
.ux-ht-trip{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin-bottom:16px;padding:14px 18px;border-radius:var(--ux-r);background:var(--ux-surface);box-shadow:var(--ux-shadow-sm)}
.ux-ht-trip ul{display:flex;flex-wrap:wrap;gap:8px 22px}
.ux-ht-trip li{display:inline-flex;align-items:center;gap:8px;font:600 14px var(--ux-font);color:var(--ux-heading)}
.ux-ht-trip li .ux-i{color:var(--ux-sky)}
.ux-ht-tabs{position:sticky;top:var(--ux-header-h);z-index:30;display:flex;gap:4px;margin:0 0 20px;padding:6px;border-radius:var(--ux-r);background:var(--ux-glass);box-shadow:var(--ux-shadow-sm);overflow-x:auto;scrollbar-width:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.ux-ht-tabs::-webkit-scrollbar{display:none}
.ux-ht-tabs a{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 16px;border-radius:12px;color:var(--ux-text)!important;font:700 14px var(--ux-font);text-decoration:none;white-space:nowrap;transition:background .2s,color .2s}
.ux-ht-tabs a:hover{background:var(--ux-tint);color:var(--ux-heading)!important}
.ux-ht-tabs a.is-active{background:var(--ux-primary);color:#fff!important}
.ux-ht-tabs small{display:inline-grid;place-items:center;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:rgba(127,135,190,.2);font:800 11px var(--ux-font)}

/* ---------- sections ---------- */
.ux-ht-sec{margin-bottom:20px;padding:26px;border-radius:var(--ux-r-lg);background:var(--ux-surface);box-shadow:var(--ux-shadow-sm);scroll-margin-top:calc(var(--ux-header-h) + 70px)}
.ux-ht-sec>h2,.ux-ht-sec__head h2{font:800 22px/1.2 var(--ux-font-head)}
.ux-ht-sec>h2{margin-bottom:16px}
.ux-ht-sec__head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;margin-bottom:16px}
.ux-ht-sec__head .ux-ht-muted{margin-top:4px!important}
.ux-ht-more{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:0;border:0;background:none;color:var(--ux-sky);font:700 14px var(--ux-font);cursor:pointer}
.ux-ht-more .ux-i{transition:transform .2s}
.ux-ht-more.is-open .ux-i{transform:rotate(180deg)}
.ux-ht-link{scroll-margin-top:120px}

/* about */
.ux-ht-about{position:relative;display:grid;gap:16px}
.ux-ht-about.is-clamped{max-height:300px;overflow:hidden}
.ux-ht-about.is-clamped::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(transparent,var(--ux-surface))}
.ux-ht-about h3{margin-bottom:4px;font:800 16px var(--ux-font-head)}
.ux-ht-about p+p{margin-top:6px}
.ux-ht-lang{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 4px 0 12px;border:1.5px solid var(--ux-line);border-radius:999px;color:var(--ux-muted)}
.ux-ht-lang select,.ux-ht-sort select{height:34px;padding:0 6px;border:0;background:transparent;color:var(--ux-heading);font:600 14px var(--ux-font);outline:none;cursor:pointer;width:auto}

/* facilities */
.ux-ht-facs{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.ux-ht-fac h3{display:flex;align-items:center;gap:8px;margin-bottom:12px;font:800 16px var(--ux-font-head)}
.ux-ht-fac h3 .ux-i{color:var(--ux-sky)}
.ux-ht-fac ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}
.ux-ht-fac li{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.4}
.ux-ht-fac li .ux-i{width:18px;height:18px;margin-top:1px;color:var(--ux-green)}
.ux-ht-fac li.is-extra{display:none}
.ux-ht-fac.is-open li.is-extra{display:flex}

/* map */
.ux-ht-map{height:360px;margin-top:10px;border-radius:var(--ux-r);overflow:hidden;background:var(--ux-line-2)}
.ux-ht-map iframe{display:block;width:100%;height:100%;border:0}
.ux-ht-sec .ux-ht-where{margin:0 0 6px!important}

.ux-ht-sort{display:inline-flex;align-items:center;gap:4px;height:38px;padding:0 4px 0 12px;border:1.5px solid var(--ux-line);border-radius:999px;color:var(--ux-muted)}
/* switch */
.ux-ht-switch{position:relative;display:inline-flex;align-items:center;gap:10px;font:600 14px var(--ux-font);color:var(--ux-heading);cursor:pointer}
.ux-ht-switch input{position:absolute;opacity:0;width:1px;height:1px}
.ux-ht-switch__ui{position:relative;flex:none;width:42px;height:24px;border-radius:999px;background:var(--ux-line);transition:background .2s}
.ux-ht-switch__ui::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s var(--ux-ease)}
.ux-ht-switch input:checked+.ux-ht-switch__ui{background:var(--ux-green)}
.ux-ht-switch input:checked+.ux-ht-switch__ui::after{transform:translateX(18px)}
.ux-ht-switch input:focus-visible+.ux-ht-switch__ui{outline:3px solid var(--ux-sky);outline-offset:2px}

.ux-ht-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 16px;text-align:center}
.ux-ht-empty>.ux-i{width:40px;height:40px;color:var(--ux-muted)}
.ux-ht-empty h3{font:800 18px var(--ux-font-head)}
.ux-ht-empty p{max-width:460px;margin-bottom:8px!important;color:var(--ux-muted)}

/* ---------- rooms: filters ---------- */
.ux-rf{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:14px 20px;padding:16px;border-radius:var(--ux-r);background:var(--ux-tint)}
.ux-rf__group{display:flex;flex-direction:column;gap:8px;min-width:0}
.ux-rf__label{display:inline-flex;align-items:center;gap:6px;font:700 12px var(--ux-font);letter-spacing:.06em;text-transform:uppercase;color:var(--ux-muted)}
.ux-rf__label .ux-i{width:14px;height:14px}
.ux-seg{display:inline-flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:14px;background:var(--ux-surface);box-shadow:inset 0 0 0 1px var(--ux-line)}
.ux-ht .ux-seg button{height:38px;padding:0 14px;border:0;border-radius:10px;background:none;color:var(--ux-text);font:600 14px var(--ux-font);white-space:nowrap;cursor:pointer;transition:background .2s,color .2s}
.ux-seg button:hover{background:var(--ux-tint);color:var(--ux-heading)}
.ux-seg button.is-active{background:var(--ux-primary);color:#fff!important;box-shadow:0 4px 12px -4px rgba(12,15,74,.5)}
.ux-rf__end{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.ux-rf__chip{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 16px 0 12px;border:1.5px solid var(--ux-line);border-radius:12px;background:var(--ux-surface);color:var(--ux-heading);font:600 14px var(--ux-font);cursor:pointer;transition:border-color .2s,background .2s}
.ux-rf__chip:hover{border-color:var(--ux-green)}
.ux-rf__box{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;border:1.5px solid var(--ux-line);color:transparent;transition:all .2s}
.ux-rf__box .ux-i{width:14px;height:14px}
.ux-rf__chip.is-active{border-color:var(--ux-green);background:var(--ux-green-bg)}
.ux-rf__chip.is-active .ux-rf__box{border-color:var(--ux-green);background:var(--ux-green);color:#fff}
.ux-rf__sort{display:inline-flex;align-items:center;gap:6px;height:46px;padding:0 6px 0 14px;border:1.5px solid var(--ux-line);border-radius:12px;background:var(--ux-surface);font:600 13px var(--ux-font);color:var(--ux-muted)}
.ux-ht .ux-rf__sort select{width:auto;height:40px;padding:0 6px;border:0;background:transparent;color:var(--ux-heading);font:700 14px var(--ux-font);outline:none;cursor:pointer}
.ux-rf__count{margin:14px 2px 0!important;font:600 13px var(--ux-font);color:var(--ux-muted)}
.ux-rf__count:empty{display:none}

/* features of every room */
.ux-every{display:flex;align-items:flex-start;gap:10px 16px;flex-wrap:wrap;margin-top:14px;padding:12px 16px;border:1px dashed var(--ux-line);border-radius:var(--ux-r)}
.ux-every__ttl{display:inline-flex;align-items:center;gap:6px;font:700 13px var(--ux-font);color:var(--ux-heading);white-space:nowrap;padding-top:3px}
.ux-every__ttl .ux-i{color:var(--ux-accent)}
.ux-every ul{display:flex;flex-wrap:wrap;gap:6px 16px;flex:1;min-width:0}
.ux-every li{display:inline-flex;align-items:center;gap:6px;padding-top:3px;font-size:13px;color:var(--ux-text)}
.ux-every li .ux-i{width:15px;height:15px;color:var(--ux-green)}


.ux-ht-morerooms{display:flex;margin:20px auto 0}
.ux-ht-sec.is-loading{opacity:.55;pointer-events:none;transition:opacity .2s}

/* ---------- rooms: cards ---------- */
.ux-rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start;margin-top:18px}
.ux-rc{display:flex;flex-direction:column;border-radius:var(--ux-r-lg);overflow:hidden;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),var(--ux-shadow-sm);transition:box-shadow .25s,transform .25s var(--ux-ease)}
.ux-rc:hover{box-shadow:0 0 0 1px var(--ux-line),var(--ux-shadow);transform:translateY(-2px)}
.ux-rc__media{position:relative;aspect-ratio:16/10;background:var(--ux-line-2);overflow:hidden}
.ux-rc__img{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.ux-rc__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ux-ease)}
.ux-rc:hover .ux-rc__img img{transform:scale(1.05)}
.ux-rc__media::after{content:"";position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(transparent,rgba(6,8,30,.72));pointer-events:none}
.ux-rc__noimg{display:grid;place-items:center;height:100%;background:var(--ux-icon-bg);color:var(--ux-sky)}
.ux-rc__noimg .ux-i{width:56px;height:56px;opacity:.6}
.ux-rc__tag{position:absolute;top:12px;left:12px;z-index:1;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:rgba(6,8,30,.55);color:#fff;font:700 11px var(--ux-font);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}
.ux-rc__tag .ux-i{width:13px;height:13px}
.ux-rc__best{position:absolute;top:12px;right:12px;z-index:1;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:var(--ux-green);color:#fff;font:800 11px var(--ux-font);pointer-events:none}
.ux-rc__best .ux-i{width:13px;height:13px}
.ux-rc__from{position:absolute;left:16px;bottom:12px;z-index:1;color:#fff;pointer-events:none;text-shadow:0 1px 12px rgba(0,0,0,.35)}
.ux-rc__from small{font:600 13px var(--ux-font);opacity:.9}
.ux-rc__from b{font:800 26px/1 var(--ux-font-head);letter-spacing:-.02em}
.ux-rc__body{display:flex;flex-direction:column;flex:1;padding:18px 18px 16px}
.ux-rc__name{font:800 19px/1.25 var(--ux-font-head)!important}
.ux-rc__facts{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px!important}
.ux-rc__facts li{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border-radius:999px;background:var(--ux-tint);color:var(--ux-text);font:600 12px var(--ux-font)}
.ux-rc__facts .ux-i{width:13px;height:13px;color:var(--ux-sky)}
.ux-rc__pick{margin:16px 0 8px!important;font:700 13px var(--ux-font);color:var(--ux-muted)}
/* one option: no choice to make — no radio, no "from" price on the photo */
.ux-rc.is-single .ux-rc__pick,.ux-rc.is-single .ux-rc__radio,.ux-rc.is-single .ux-rc__from{display:none}
.ux-rc.is-single .ux-rc__opt{grid-template-columns:minmax(0,1fr) auto;margin-top:14px;cursor:default;border-color:var(--ux-line-2);background:var(--ux-tint);box-shadow:none}
.ux-rc__pick small{font-weight:600}
/* options: selectable rows */
.ux-rc__opts{display:grid;gap:8px}
.ux-rc__opt{position:relative;display:grid!important;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border:1.5px solid var(--ux-line);border-radius:14px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.ux-rc__opt:hover{border-color:var(--ux-sky)}
.ux-rc__opt.is-hidden{display:none!important}
.ux-rc__opt input{position:absolute;opacity:0;width:1px;height:1px}
.ux-rc__radio{width:20px;height:20px;border:2px solid var(--ux-line);border-radius:50%;transition:border .2s}
.ux-rc__opt.is-checked{border-color:var(--ux-primary);background:var(--ux-tint);box-shadow:0 0 0 3px rgba(37,172,255,.12)}
.ux-rc__opt.is-checked .ux-rc__radio{border:6px solid var(--ux-primary)}
html[data-theme="dark"] .ux-rc__opt.is-checked{border-color:var(--ux-sky)}
html[data-theme="dark"] .ux-rc__opt.is-checked .ux-rc__radio{border-color:var(--ux-sky)}
.ux-rc__opt input:focus-visible+.ux-rc__radio{outline:3px solid var(--ux-sky);outline-offset:2px}
.ux-rc__oinfo{display:flex;flex-direction:column;gap:3px;min-width:0}
.ux-rc__oinfo b{display:flex;align-items:center;gap:6px;font:700 14px var(--ux-font);color:var(--ux-heading)}
.ux-rc__oinfo b .ux-i{width:15px;height:15px;color:var(--ux-accent)}
.ux-rc__oinfo small{display:flex;align-items:center;gap:5px;font:600 12px var(--ux-font)}
.ux-rc__oinfo small .ux-i{width:13px;height:13px;flex:none}
.ux-rc__oinfo .is-free{color:var(--ux-green)}
.ux-rc__oinfo .is-nonref{color:var(--ux-muted)}
.ux-rc__oprice{font:800 16px var(--ux-font-head);color:var(--ux-heading);white-space:nowrap}
.ux-rc__more{display:inline-flex;align-items:center;justify-content:center;gap:4px;margin-top:8px;padding:6px;border:0;background:none;color:var(--ux-sky);font:700 13px var(--ux-font);cursor:pointer}
.ux-rc__more .ux-i{width:15px;height:15px;transition:transform .2s}
.ux-rc__more.is-open .ux-i{transform:rotate(180deg)}
/* total + reserve */
.ux-rc__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px}
.ux-rc__foot{border-top:1px solid var(--ux-line-2);margin-top:14px}
.ux-rc__total{display:flex;flex-direction:column;min-width:0}
.ux-rc__total small{font-size:12px;color:var(--ux-muted)}
.ux-rc__total b{font:800 24px/1.15 var(--ux-font-head);letter-spacing:-.02em;color:var(--ux-heading)}
.ux-rc__foot .ux-btn{flex:none}
.ux-rc__details{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:12px;padding:4px;border:0;background:none;color:var(--ux-sky);font:700 13px var(--ux-font);cursor:pointer}
.ux-rc__details .ux-i{width:15px;height:15px}
.ux-rc__details .ux-i:last-child{transition:transform .2s}
.ux-rc__details[aria-expanded=true] .ux-i:last-child{transform:rotate(180deg)}
.ux-rc__panel{display:grid;gap:10px;margin-top:8px;padding:14px;border-radius:14px;background:var(--ux-tint);font-size:13px;line-height:1.55;color:var(--ux-text)}
.ux-rc__panel h4{display:flex;align-items:center;gap:6px;margin:0 0 6px;font:800 13px var(--ux-font-head);color:var(--ux-heading)}
.ux-rc__panel h4 .ux-i{width:14px;height:14px;color:var(--ux-sky)}
.ux-rc__perks{display:flex;flex-wrap:wrap;gap:4px 12px}
.ux-rc__perks li{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--ux-heading)}
.ux-rc__perks .ux-i{width:13px;height:13px;color:var(--ux-green)}
.ux-rc__note{display:flex;align-items:flex-start;gap:6px;color:var(--ux-muted)}
.ux-rc__note .ux-i{width:14px;height:14px;margin-top:2px;flex:none}
.ux-rc__cond p+p{margin-top:6px!important}
.ux-rc__pbd .ux-pbd{padding:0;border-radius:0;background:none;box-shadow:none}
.ux-rc__pbd .ux-pbd__hotel,.ux-rc__pbd .ux-pbd__title,.ux-rc__pbd .ux-pbd__note{display:none}
.ux-rc__pbd .ux-pbd__table th,.ux-rc__pbd .ux-pbd__table td{padding:6px 0}
[data-extra-box]:empty{display:none}
.ux-rc__panel>[data-extra-box]{display:grid;gap:8px}
.ux-rc[hidden]{display:none!important}

/* price breakdown (own page + inside a rate) */
.ux-pbd{padding:28px;border-radius:var(--ux-r-lg);background:var(--ux-surface);box-shadow:var(--ux-shadow-sm)}
.ux-pbd__hotel{display:flex;align-items:center;gap:8px;margin-bottom:6px!important;color:var(--ux-muted);font:700 13px var(--ux-font);text-transform:uppercase;letter-spacing:.06em}
.ux-pbd__title{margin-bottom:16px!important;font:800 26px var(--ux-font-head)}
.ux-pbd__table{width:100%;border-collapse:collapse;font-size:14px}
.ux-pbd__table th,.ux-pbd__table td{padding:10px 0;border-bottom:1px solid var(--ux-line-2);text-align:left;vertical-align:middle}
.ux-pbd__table th span{display:block;font-weight:700;color:var(--ux-heading)}
.ux-pbd__table th small{color:var(--ux-muted);font-weight:500}
.ux-pbd__table td{text-align:right;font-weight:700;color:var(--ux-heading);white-space:nowrap}
.ux-pbd__table tfoot th,.ux-pbd__table tfoot td{border-bottom:0;padding-top:12px;font:800 16px var(--ux-font-head);color:var(--ux-heading)}
.ux-pbd__extra{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:10px!important;font-size:13px}
.ux-pbd__extra span{display:inline-flex;align-items:center;gap:6px}
.ux-pbd__note{display:flex;align-items:flex-start;gap:8px;margin-top:12px!important;font-size:13px;color:var(--ux-muted)}
.ux-pbd .h2-title,.ux-pbd .valuation_wrap p{margin:0 0 8px}

/* ---------- hview: details + "check prices" card ---------- */
.ux-ht-cols{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start}
.ux-ht-side{position:sticky;top:calc(var(--ux-header-h) + 74px)}
.ux-ht-check{padding:24px;border-radius:var(--ux-r-lg);background:var(--ux-surface);box-shadow:var(--ux-shadow);scroll-margin-top:calc(var(--ux-header-h) + 74px)}
.ux-ht-check h2{display:flex;align-items:center;gap:8px;font:800 20px var(--ux-font-head)}
.ux-ht-check h2 .ux-i{color:var(--ux-accent)}
.ux-ht-check>.ux-ht-muted{margin:6px 0 16px!important}
.ux-ht-check .ux-bk__row{grid-template-columns:1fr 1fr;margin-bottom:14px}
.ux-ht-check .ux-bk__row:empty{display:none}

/* ---------- checkout ---------- */
.ux-bk__back{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px;padding:0;border:0;background:none;color:var(--ux-heading);font:700 14px var(--ux-font);cursor:pointer}
.ux-bk__back:hover{color:var(--ux-sky)}
.ux-bk .ux-ht-title{margin-bottom:20px!important}
.ux-bk__grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
.ux-bk__form{display:grid;gap:16px}
.ux-bk__card{padding:24px!important;border-radius:var(--ux-r-lg)!important;background:var(--ux-surface);box-shadow:var(--ux-shadow-sm)}
.ux-bk__card legend{float:left;width:100%;display:flex;align-items:center;gap:10px;margin-bottom:6px!important;font:800 18px var(--ux-font-head)!important;color:var(--ux-heading)!important}
.ux-bk__card legend small{font:500 13px var(--ux-font);color:var(--ux-muted)}
.ux-bk__card legend+*{clear:both}
.ux-bk__num{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:50%;background:var(--ux-primary);color:#fff;font:800 13px var(--ux-font)}
.ux-bk__hint{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px!important;font-size:14px;color:var(--ux-muted)}
.ux-bk__hint .ux-i{margin-top:2px;color:var(--ux-sky)}
.ux-bk__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ux-bk__row--guest{grid-template-columns:96px repeat(4,minmax(0,1fr))}
.ux-bk__f{display:flex;flex-direction:column;gap:6px;min-width:0}
.ux-bk__f--wide{grid-column:1/-1}
.ux-bk__f>span:first-child{font:700 13px var(--ux-font);color:var(--ux-heading)}
.ux-bk__f small{font-size:12px;line-height:1.4;color:var(--ux-muted)}
.ux-ht .ux-bk__f input,.ux-ht .ux-bk__f select,.ux-ht .ux-bk__f textarea{width:100%;height:48px;padding:0 14px;border:1.5px solid var(--ux-line);border-radius:12px;background:var(--ux-surface);color:var(--ux-heading);font:500 15px var(--ux-font);outline:none;box-shadow:none;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.ux-ht .ux-bk__f select{padding-right:34px;background:var(--ux-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%236b7096' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 12px center}
.ux-ht .ux-bk__f textarea{height:auto;min-height:96px;padding:12px 14px;resize:vertical}
.ux-ht .ux-bk__f input::placeholder,.ux-ht .ux-bk__f textarea::placeholder{color:var(--ux-placeholder)}
.ux-ht .ux-bk__f :is(input,select,textarea):focus{border-color:var(--ux-sky);box-shadow:0 0 0 4px rgba(37,172,255,.15)}
.ux-ht .ux-bk__f .is-invalid,.ux-ht .ux-bk__f .is-invalid:focus{border-color:#e5484d;box-shadow:0 0 0 4px rgba(229,72,77,.12)}
.ux-bk__err{font:600 12px var(--ux-font);color:#e5484d}
.ux-bk__pass{position:relative;display:block}
.ux-bk__pass input{padding-right:50px!important}
.ux-bk__pass button{position:absolute;top:50%;right:6px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:10px;background:none;color:var(--ux-muted);cursor:pointer;transform:translateY(-50%)}
.ux-bk__signin{margin-top:14px!important;font-size:14px;color:var(--ux-muted)}
.ux-bk__signin a{font-weight:700;color:var(--ux-sky)!important}
.ux-bk__me{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--ux-tint)}
.ux-bk__me small,.ux-bk__me strong,.ux-bk__me span{display:block}
.ux-bk__me small{font-size:12px;color:var(--ux-muted)}
.ux-bk__me strong{font:800 16px var(--ux-font-head);color:var(--ux-heading)}
.ux-bk__me span{font-size:13px;color:var(--ux-muted)}
.ux-bk__avatar{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;background:var(--ux-icon-bg);color:var(--ux-sky)}
.ux-bk__guest+.ux-bk__guest{margin-top:16px;padding-top:16px;border-top:1px dashed var(--ux-line)}
.ux-bk__gtitle{display:flex;align-items:center;gap:8px;margin-bottom:10px!important;font:800 15px var(--ux-font-head);color:var(--ux-heading)}
.ux-bk__gtitle .ux-i{color:var(--ux-sky)}
.ux-bk__gtitle small{font:500 13px var(--ux-font);color:var(--ux-muted)}
.ux-bk__toggle{align-items:flex-start}
.ux-bk__toggle strong,.ux-bk__toggle small{display:block}
.ux-bk__toggle small{font:400 13px var(--ux-font);color:var(--ux-muted)}
.ux-bk__company{margin-top:18px}
.ux-bk__check{display:flex!important;align-items:flex-start;gap:10px;margin-top:14px!important;font-size:14px;line-height:1.45;color:var(--ux-text);cursor:pointer}
.ux-bk__check input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--ux-primary)}
.ux-bk__check.is-invalid span{color:#e5484d}
.ux-bk__payline{display:flex;align-items:center;gap:10px;margin-top:14px!important;padding:14px 16px;border-radius:12px;background:var(--ux-green-bg);color:var(--ux-heading);font:600 14px var(--ux-font)}
.ux-bk__payline .ux-i{color:var(--ux-green)}
.ux-bk__card .ux-bk__f+.ux-bk__payline{margin-top:16px!important}
.ux-bk__msg{margin:16px 0 0!important;padding:12px 14px;border-radius:12px;background:rgba(229,72,77,.1);color:#d23c41;font:600 14px var(--ux-font)}
.ux-bk__msg.is-ok{background:var(--ux-green-bg);color:var(--ux-green)}
[data-bk-submit]{margin-top:18px}
[data-bk-submit][disabled]{opacity:.7;cursor:progress;transform:none}
.ux-bk__secure{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:10px!important;font-size:12px;color:var(--ux-muted);text-align:center}
.ux-bk__secure .ux-i{color:var(--ux-green)}
/* summary */
.ux-bk__sum{position:sticky;top:calc(var(--ux-header-h) + 16px)}
.ux-bk__sumcard{padding:20px;border-radius:var(--ux-r-lg);background:var(--ux-surface);box-shadow:var(--ux-shadow)}
.ux-bk__hotel{display:flex;gap:14px;margin-bottom:16px}
.ux-bk__hotel img{width:92px;height:92px;flex:none;border-radius:14px;object-fit:cover}
.ux-bk__hotel h2{font:800 17px/1.25 var(--ux-font-head)}
.ux-bk__hotel .ux-ht-stars{margin-bottom:4px!important}
.ux-bk__hotel .ux-ht-stars .ux-i{width:13px;height:13px}
.ux-bk__hotel .ux-ht-muted{margin-top:4px!important;font-size:12px}
.ux-ht .ux-bk__dates{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0 0 14px;border-radius:12px;overflow:hidden;background:var(--ux-line)}
.ux-ht .ux-bk__dates>div{padding:10px 12px;background:var(--ux-tint)}
.ux-bk__dates dt{font-size:12px;color:var(--ux-muted)}
.ux-bk__dates dd{margin:2px 0 0;font:700 14px var(--ux-font);color:var(--ux-heading)}
.ux-bk__facts{display:grid;gap:10px;margin-bottom:12px!important}
.ux-bk__facts li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--ux-text)}
.ux-bk__facts li>.ux-i,.ux-bk__facts li>span:first-child .ux-i{width:18px;height:18px;margin-top:1px;color:var(--ux-sky)}
.ux-bk__facts b,.ux-bk__facts small{display:block}
.ux-bk__facts b{color:var(--ux-heading)}
.ux-bk__facts small{font-size:12px;color:var(--ux-muted)}
.ux-bk__facts li.is-free,.ux-bk__facts li.is-free .ux-i{color:var(--ux-green)!important}
.ux-bk__total{margin:16px 0 0;padding-top:14px;border-top:1px solid var(--ux-line-2)}
.ux-ht .ux-bk__total>div{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:14px}
.ux-ht .ux-bk__total dt{font:500 14px var(--ux-font);color:var(--ux-text)}
.ux-ht .ux-bk__total dd{margin:0;font-weight:700;color:var(--ux-heading)}
.ux-ht .ux-bk__total dd.is-minus{color:var(--ux-green)}
.ux-bk__total .is-grand{margin-top:6px;padding-top:10px;border-top:1px solid var(--ux-line-2)}
.ux-ht .ux-bk__total .is-grand dt{font:800 16px var(--ux-font-head);color:var(--ux-heading)}
.ux-ht .ux-bk__total .is-grand dd{font:800 22px var(--ux-font-head)}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .ux-bk__row--guest{grid-template-columns:96px repeat(2,minmax(0,1fr))}
}
@media (max-width:1180px){
  .ux-rooms{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:960px){
  .ux-ht-cols,.ux-bk__grid{grid-template-columns:1fr}
  .ux-ht-side,.ux-bk__sum{position:static}
  .ux-bk__sum{order:-1}
  .ux-ht-facs{grid-template-columns:1fr}
  .ux-hg__track{grid-template-rows:170px 170px}
}
@media (max-width:640px){
  .ux-ht{padding-top:12px}
  .ux-ht-head{flex-direction:column;align-items:stretch;gap:12px}
  .ux-ht-head__cta{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;text-align:left}
  .ux-ht-from__sub{display:none}
  .ux-ht-from b{font-size:24px}
  /* gallery -> edge-to-edge swipe slider */
  .ux-hg{margin:0 -20px 16px}
  .ux-hg__track,.ux-hg.is-few .ux-hg__track{display:flex;gap:0;height:260px;border-radius:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
  .ux-hg__track::-webkit-scrollbar{display:none}
  .ux-hg__tile,.ux-hg__tile:nth-child(n+4),.ux-hg__tile:nth-child(n+6),.ux-hg.is-few .ux-hg__tile:nth-child(n+4){display:block;flex:0 0 100%;scroll-snap-align:center}
  .ux-hg__tile:hover img{transform:none}
  .ux-hg__count{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:999px;background:rgba(6,8,30,.6);color:#fff;font:700 12px var(--ux-font)}
  .ux-hg__count .ux-i{width:14px;height:14px}
  .ux-hg__all{display:none}
  .ux-hg__none{margin:0 20px}
  .ux-ht-trip{padding:12px 14px}
  .ux-ht-trip ul{gap:6px 14px}
  .ux-ht-trip li{font-size:13px}
  .ux-ht-trip .ux-btn{width:100%}
  .ux-ht-tabs{margin:0 -20px 16px;padding:6px 14px;border-radius:0}
  .ux-ht-sec,.ux-bk__card,.ux-pbd{padding:18px!important;border-radius:var(--ux-r)!important}
  .ux-ht-fac ul{grid-template-columns:1fr}
  .ux-rf{padding:12px;margin:0 -4px}
  .ux-rf__group{width:100%}
  .ux-seg{flex-wrap:nowrap;max-width:100%;overflow-x:auto;scrollbar-width:none}
  .ux-seg::-webkit-scrollbar{display:none}
  .ux-rf__end{width:100%}
  .ux-rf__chip,.ux-rf__sort{flex:1;justify-content:center}
  .ux-rooms{grid-template-columns:1fr;gap:16px}
  .ux-rc__body{padding:16px 14px 14px}
  .ux-rc__best{top:auto;bottom:14px}
  .ux-every{display:block}
  .ux-every ul{margin-top:6px}
  .ux-ht-map{height:260px}
  .ux-bk__row,.ux-bk__row--guest,.ux-ht-check .ux-bk__row{grid-template-columns:1fr 1fr}
  .ux-bk__row--guest .ux-bk__f:not(.ux-bk__f--xs){grid-column:span 2}
  .ux-bk__row:not(.ux-bk__row--guest)>.ux-bk__f{grid-column:1/-1}
  .ux-ht-check .ux-bk__row>.ux-bk__f{grid-column:auto}
  .ux-lb__stage{padding:0}
  .ux-lb__nav{display:none}
  .ux-lb__thumbs{display:none}
}
@media (prefers-reduced-motion:reduce){
  .ux-hg__tile img,.ux-lb,.ux-ht-switch__ui::after{transition:none}
}
