[hidden]{display:none!important}
.benefit:first-child:not(:hover) .benefit__icon{background:var(--blue);color:#fff}
.benefit:first-child:hover .benefit__icon{background:var(--pink);color:#fff}

/* Verified Trustindex reviews */
.trust-reviews{padding:58px 0 66px;background:#fff}
.trust-reviews .content-width{width:min(1120px,calc(100% - 40px))}
.trust-reviews h2{margin-bottom:28px;font-size:36px}
.trust-reviews__layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:stretch}
.trust-reviews__summary{display:grid;align-content:center;gap:15px;padding:22px;border:1px solid #e5e9ef;border-radius:16px;background:#fff;box-shadow:0 10px 28px #00275912}
.trust-reviews__summary>img{width:58px;height:58px;border-radius:10px;object-fit:cover}
.trust-reviews__summary>div{display:grid;gap:2px}
.trust-reviews__summary strong{font:600 15px Poppins;color:#181a22}
.trust-reviews__summary span:not(.trust-stars){color:#596273;font-size:12px}
.trust-reviews__summary>a{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:9px 12px;border:1px solid #bac4d0;border-radius:8px;color:#18263a;font:600 11px Poppins;transition:.2s}
.trust-reviews__summary>a:hover{border-color:var(--pink);color:var(--pink);transform:translateY(-2px)}
.trust-reviews .reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0}
.trust-review-card{display:flex;min-width:0;min-height:220px;flex-direction:column;padding:20px!important;border:1px solid #e5e9ef;border-radius:16px;background:#fff;box-shadow:0 10px 28px #00275910!important}
.trust-review-card header{display:grid;grid-template-columns:38px minmax(0,1fr) 20px;gap:10px;align-items:center}
.trust-review-card header>div{display:grid;min-width:0}
.trust-review-card header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#181a22;font:600 12px Poppins}
.trust-review-card time{color:#848b98;font-size:10px}
.trust-review-card header>.bi-google{font-size:17px;color:#4285f4}
.trust-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:#fff;background:#0875c1;font:600 15px Poppins}
.trust-avatar--orange{background:#c83d12}.trust-avatar--brown{background:#654033}.trust-avatar--photo{background:linear-gradient(135deg,#ff008f,#002759)}
.trust-stars{display:block;margin-top:14px;color:#f6b600!important;letter-spacing:1px!important;font-size:17px}
.trust-review-card p{margin:10px 0 16px!important;min-height:0!important;color:#333a48!important;font-size:11px!important;line-height:1.55;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.trust-review-card>a{margin-top:auto;color:#667184;font:500 9px Poppins}
.trust-review-card>a:hover{color:var(--pink)}
.trust-reviews__source{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:16px 0 0;color:#6d7583;font-size:10px}
.trust-reviews__source>i{color:#14934b}.trust-reviews__source a{color:var(--blue);font-weight:600}
.trust-reviews--closing{padding:42px 0;border-top:1px solid #edf0f4;background:#f8fafc}
.trust-reviews--closing h2{font-size:28px}
.trust-reviews__closing-card{display:grid;grid-template-columns:auto auto 1fr auto;gap:16px;align-items:center;padding:20px 24px;border:1px solid #dde6ee;border-radius:16px;background:#fff;box-shadow:0 10px 30px #0027590d}
.trust-reviews__score{font:600 30px Poppins;color:var(--blue)}
.trust-reviews__closing-card .trust-stars{margin:0}
.trust-reviews__closing-card>div{display:grid;gap:2px}.trust-reviews__closing-card>div strong{font:600 13px Poppins}.trust-reviews__closing-card>div span{color:#737b89;font-size:10px}

/* Footer icons stay legible at 100% browser zoom. */
.footer__grid>div:not(.footer__about)>a>i,.footer__grid>div:not(.footer__about)>span>i{display:grid;place-items:center;flex:0 0 15px;width:15px;height:15px;font-size:14px;line-height:1;color:var(--pink)}
.footer__grid>div:not(.footer__about)>a,.footer__grid>div:not(.footer__about)>span{min-height:21px;gap:9px}

/* Cancun-time context in hourly booking */
.hourly-time-popover>header{display:grid;grid-template-columns:1fr auto;gap:2px 10px;margin:-4px -4px 10px;padding:10px 10px 9px;border-bottom:1px solid #e1e8ef;background:#f7fafc}
.hourly-time-popover>header span{display:flex;align-items:center;gap:6px;color:#18263a;font:600 10px Poppins}
.hourly-time-popover>header span i{color:var(--pink)}
.hourly-time-popover>header strong{color:var(--blue);font:600 10px Poppins}
.hourly-time-popover>header small{grid-column:1/-1;color:#7b8491;font-size:8px}
.hourly-time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.hourly-dispatch-feedback span small{display:block;margin-top:3px;color:#697587;font-size:8px}

@media(max-width:900px){.trust-reviews__layout{grid-template-columns:1fr}.trust-reviews__summary{grid-template-columns:auto 1fr auto;align-items:center}.trust-reviews__summary>a{grid-column:auto}.trust-reviews .reviews{overflow-x:auto;grid-template-columns:repeat(3,minmax(250px,1fr));padding-bottom:8px}.trust-reviews__closing-card{grid-template-columns:auto auto 1fr}.trust-reviews__closing-card .btn{grid-column:1/-1}}
@media(max-width:620px){.trust-reviews .content-width{width:calc(100% - 28px)}.trust-reviews h2{font-size:27px}.trust-reviews__summary{grid-template-columns:auto 1fr}.trust-reviews__summary>a{grid-column:1/-1}.trust-reviews__closing-card{grid-template-columns:auto 1fr}.trust-reviews__closing-card .trust-stars{grid-column:2}.trust-reviews__closing-card>div{grid-column:1/-1}.trust-reviews__source{align-items:flex-start;justify-content:flex-start;flex-wrap:wrap}.hourly-time-grid{grid-template-columns:repeat(3,1fr)}}

/* SMTP and deployment configuration */
.smtp-settings,.deployment-status{min-width:0}
.settings-panel__title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px;padding-bottom:13px;border-bottom:2px solid var(--violet)}
.settings-panel__title h3,.settings-panel__title p{margin:0}.settings-panel__title p{margin-top:5px!important}
.smtp-settings .fleet-editor-form{display:grid;gap:14px}
.smtp-settings .fleet-editor-form>.checkline{margin:0;padding:10px 12px;border:1px solid #dfe6ee;border-radius:10px;background:#f8fafc}
.smtp-provider-note{min-height:0;transition:all .2s ease}
.smtp-provider-note:empty{display:none}
.smtp-provider-note__content{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:10px;font:500 11px/1.5 Poppins;color:#1a3050}
.smtp-provider-note__content i{flex:0 0 20px;font-size:18px;margin-top:1px}
.smtp-provider-note__content strong{display:block;margin-bottom:2px}
.smtp-provider-note--office365{background:linear-gradient(135deg,#e8f2ff,#f0f4ff);border:1px solid #c5d8f0}
.smtp-provider-note--office365 i{color:#0078d4}
.smtp-provider-note--gmail{background:linear-gradient(135deg,#fef2f2,#fdf4f0);border:1px solid #f0ccc5}
.smtp-provider-note--gmail i{color:#ea4335}
.smtp-main-actions{flex-wrap:wrap}
.btn--accent{background:linear-gradient(135deg,#0078d4,#106ebe);color:#fff;border:0}
.btn--accent:hover{background:linear-gradient(135deg,#106ebe,#005a9e);transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,120,212,.25)}
.smtp-test{display:grid;gap:14px;margin-top:20px;padding:18px;border:1px solid #dce6ef;border-radius:12px;background:#f7fafc}
.smtp-test__info{display:flex;align-items:flex-start;gap:12px}.smtp-test__info>i{flex:0 0 24px;color:var(--violet);font-size:20px;margin-top:2px}
.smtp-test__info strong{font:600 13px Poppins;display:block}.smtp-test__info small{color:#737c89;font-size:10px;line-height:1.45}
.smtp-test__controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.smtp-test input{width:100%;min-width:0;height:42px;padding:0 12px;border:1px solid #d7dfeb;border-radius:9px;background:#fff;outline:0}
.smtp-test .btn{min-width:138px;justify-content:center}
.smtp-test input:focus{border-color:var(--violet);box-shadow:0 0 0 3px #00275912}
.smtp-result{min-height:20px;margin:10px 0 0;padding:0 3px;font:500 10px/1.45 Poppins}
.smtp-result.is-working{color:#665e00}.smtp-result.is-success{color:#087d3c}.smtp-result.is-error{color:#b3233e}
.smtp-settings input[readonly]{color:#5a6272;background:#eef1f6;cursor:default}
.deployment-status .integration-status{grid-template-columns:1fr 1fr}
@media(max-width:900px){.smtp-test__controls{grid-template-columns:1fr}.smtp-test .btn{justify-self:start}.deployment-status .integration-status{grid-template-columns:1fr}}
.service-card.is-selected{box-shadow:var(--shadow);outline:0}
.service-card.is-selected:after{display:none}
.service-card .btn{transition:.25s}
.service-card .btn:hover{background:var(--pink);transform:translateY(-2px)}
.passenger-trigger{position:relative;transition:border-color .18s,box-shadow .18s}
.passenger-trigger[aria-expanded=true],.passenger-control:focus-within .passenger-trigger{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff18}
.passenger-popover{opacity:0;transform:translateY(-6px) scale(.98);animation:popover-in .16s ease forwards}
.passenger-popover:before{content:"";position:absolute;top:-7px;left:50%;width:14px;height:14px;background:#fff;transform:rotate(45deg);box-shadow:-2px -2px 5px #1a17420d}
.passenger-popover button,.alloc-row button{display:inline-grid;place-items:center;line-height:1;padding:0;font-family:Arial,sans-serif;font-weight:400;transition:.18s}
.passenger-popover button:hover,.alloc-row button:hover{background:var(--violet);color:#fff;transform:scale(1.04)}
@keyframes popover-in{to{opacity:1;transform:none}}
.allocation-summary{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#eef5fa;border:1px solid #c8d9e6;border-radius:12px;padding:13px 16px}
.allocation-summary div{display:flex;align-items:baseline;gap:8px}
.allocation-summary strong{font:600 20px Poppins;color:var(--violet)}
.allocation-summary span{font-size:12px;color:#565166}
.allocation-summary.is-warning{background:#fff7ef;border-color:#ffd8b5}
.allocation-summary.is-warning strong{color:#d86b00}
.trip-choice{background:#fff;border:1px solid #f0f0f4;transition:transform .22s,box-shadow .22s,border-color .22s}
.trip-choice:hover{transform:translateY(-3px);box-shadow:0 18px 32px #16163a1f;border-color:#d7e4ee}
.trip-choice__book{display:none}
.route-results__inner{align-items:start}
.admin-page{background:linear-gradient(135deg,#f5f9fc 0,#fff 42%,#fdf4fa 100%)}
.admin-dashboard[hidden]{display:none!important}
.admin-dashboard{animation:fade-up .24s ease both}
.admin-card,.admin-topbar,.admin-kpis article{border:1px solid #e7eef4}
.admin-topbar{background:linear-gradient(135deg,#fff,#f4f8fb)}
.admin-bookings{overflow:auto}
.admin-bookings table{width:100%;border-collapse:collapse;font-size:12px}
.admin-bookings th{position:sticky;top:0;background:#fff;color:#555;text-align:left;font:600 11px Poppins;padding:10px;border-bottom:1px solid #e6e6ef}
.admin-bookings td{padding:10px;border-bottom:1px solid #eeeef6;vertical-align:top}
.admin-bookings tr:hover td{background:#f6f9fc}
.status-pill{display:inline-flex;border-radius:999px;padding:4px 8px;background:#eef5fa;color:var(--violet);font:600 10px Poppins}
.admin-view{border:0;border-radius:8px;background:#0aa6c0;color:#fff;width:32px;height:28px;cursor:pointer}
.admin-modal{position:fixed;inset:0;z-index:200;background:#10101880;display:grid;place-items:center;padding:24px}
.admin-modal__panel{width:min(980px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 30px 80px #0004}
.admin-modal__head{position:sticky;top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid #ececf3}
.admin-modal__body{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;padding:22px}
.admin-modal fieldset{border:1px solid #dadbe5;border-radius:8px}
.admin-modal legend{font:600 18px Poppins;padding:0 10px}
.admin-modal input,.admin-modal textarea{width:100%;border:1px solid #e2e2eb;border-radius:7px;padding:9px;background:#f7f7fa}
.zone-vertex{display:grid!important;place-items:center;width:22px!important;height:22px!important;background:transparent;border:0;cursor:grab}
.zone-vertex:active{cursor:grabbing}
.zone-vertex span{display:block;width:14px;height:14px;background:#fff;border:2px solid var(--zone-color,#002759);border-radius:50%;box-shadow:0 2px 7px #0003}
.flight-row{display:grid;grid-template-columns:1fr 140px auto;gap:10px;align-items:end}
.flight-card{border:1px solid #ddd;border-radius:8px;padding:12px;margin:10px 0 18px;display:grid;grid-template-columns:1fr 42px 1fr;gap:14px;align-items:center}
.flight-card strong{font:600 24px Poppins}
.flight-card small{display:block;color:#555}
.flight-ok{display:flex;align-items:center;gap:10px;color:#188038;font:500 15px Poppins;margin:8px 0}
.flight-search-modal{position:fixed;inset:0;background:#11182799;z-index:300;display:grid;place-items:center;padding:18px}
.flight-search-panel{width:min(680px,100%);background:#fff;border-radius:10px;box-shadow:0 28px 80px #0005;padding:22px}
.flight-search-panel h2{text-align:center;font:600 28px Poppins;margin:0 0 18px}
.flight-result{width:100%;border:1px solid #e8e8ef;background:#fff;text-align:left;border-radius:7px;padding:12px;margin-top:8px;cursor:pointer}
.flight-result:hover{border-color:var(--violet);background:#f3f8fb}
.flight-result strong{font:600 20px Poppins}
.flight-result span{display:grid;grid-template-columns:1fr 30px 1fr;gap:10px;margin-top:4px}
@keyframes fade-up{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:700px){.passenger-popover{position:fixed;left:18px;right:18px;top:auto;bottom:20px;width:auto}.passenger-popover:before{display:none}.trip-choice__body{grid-template-columns:92px 1fr}.trip-choice img{width:92px}.allocation-summary,.flight-row,.flight-card,.admin-modal__body{grid-template-columns:1fr}.flight-card{display:block}.flight-card i{display:block;margin:10px 0}.admin-shell{width:calc(100% - 18px);padding:18px 0}.admin-card{padding:15px}}
.checkout-header{grid-template-columns:180px 1fr;align-items:center;height:116px}
.checkout-header img{width:125px;margin:0 auto}
.checkout-header nav{align-self:stretch;height:auto}
.admin-v2{width:min(1180px,calc(100% - 36px));padding:28px 0}
.admin-app{display:grid;gap:14px}
.admin-hero{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e7eef4;border-radius:18px;box-shadow:0 14px 42px #15154410;padding:18px 24px}
.admin-hero img{width:130px}.admin-hero p{margin:3px 0 0;color:var(--copy);font-size:12px}
.admin-hero__actions{display:flex;align-items:center;gap:10px}
.admin-language{display:grid;grid-template-columns:auto auto minmax(98px,auto);align-items:center;gap:7px;border:1px solid #dfe6ee;border-radius:10px;padding:6px 8px;color:#4d5968;font:600 10px Poppins;background:#f8fafc}
.admin-language i{color:var(--pink);font-size:15px}
.admin-language select{height:32px;border:1px solid #d8e0e8;border-radius:7px;background:#fff;padding:0 26px 0 9px;color:#172033;font:600 11px Poppins}
.admin-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.admin-tabs button{border:1px solid #ececf7;background:#fff;border-radius:14px;padding:12px 14px;text-align:left;cursor:pointer;color:#29293a;font:600 12px Poppins;box-shadow:0 8px 22px #1515440b;transition:.18s}
.admin-tabs button i{display:block;color:var(--pink);font-size:18px;margin-bottom:6px}
.admin-tabs button:hover,.admin-tabs button.is-active{background:var(--blue);color:#fff;transform:translateY(-2px)}
.admin-tabs button:focus { outline: 0; }
.admin-tabs button:focus-visible { box-shadow: 0 0 0 3px rgba(230,36,98,.18); }
.admin-tabs button:hover i,.admin-tabs button.is-active i{color:#fff}
.admin-content{min-height:520px}
.admin-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.admin-stat-grid article{background:#fff;border:1px solid #e7eef4;border-radius:16px;box-shadow:0 12px 35px #15154410;padding:20px}
.admin-stat-grid i{color:var(--pink);font-size:20px}.admin-stat-grid span{display:block;color:#666;font-size:12px;margin:16px 0 6px}.admin-stat-grid strong{font:600 26px Poppins}
.admin-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}
.admin-action-grid button{min-height:120px;border:1px solid #e7eef4;border-radius:16px;background:#fff;box-shadow:0 12px 35px #15154410;padding:18px;text-align:left;cursor:pointer;transition:.18s}
.admin-action-grid button:hover{border-color:var(--violet);transform:translateY(-3px)}
.admin-action-grid i{color:var(--pink);font-size:24px}.admin-action-grid strong{display:block;font:600 18px Poppins;margin:12px 0 5px}.admin-action-grid span{color:#666;font-size:12px}
.admin-wide{padding:22px}.admin-wide h2{font:600 24px Poppins;margin:0 0 18px}
.admin-filters{display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(4,minmax(125px,1fr)) auto auto;gap:10px;align-items:end;margin-bottom:16px}
.admin-filters label{font:600 11px Poppins;color:#444}.admin-filters input,.admin-filters select{display:block;width:100%;height:40px;border:1px solid #ddddeb;border-radius:9px;padding:0 10px;margin-top:5px;background:#fff}
.admin-table{overflow:auto;border:1px solid #e7eef4;border-radius:14px}.admin-table table{width:100%;border-collapse:collapse;font-size:12px;background:#fff}.admin-table th{background:#f7fafc;text-align:left;font:600 11px Poppins;padding:11px;border-bottom:1px solid #e7e7f0}.admin-table td{padding:11px;border-bottom:1px solid #eaf0f5;vertical-align:top}.admin-table tr:hover td{background:#f6f9fc}.admin-table small,.muted{color:#777}
.ops-layout{display:grid;grid-template-columns:230px 1fr;gap:14px}.ops-states{display:grid;gap:8px;align-content:start}.ops-states button{border:1px solid #e8e8f1;border-radius:12px;background:#fff;padding:14px;text-align:left;cursor:pointer}.ops-states button.is-active{background:var(--blue);color:#fff}.ops-states strong{display:block;font:600 17px Poppins}.ops-states span{font-size:12px;color:inherit}
.fleet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.fleet-grid article{border:1px solid #e7eef4;border-radius:14px;padding:16px;background:#fff}.fleet-grid img{height:120px;width:100%;object-fit:contain}.fleet-grid i{font-size:42px;color:var(--violet)}.fleet-grid h3{font:600 16px Poppins}
@media(max-width:900px){.admin-tabs,.admin-stat-grid,.admin-action-grid,.fleet-grid,.ops-layout{grid-template-columns:1fr}.admin-filters{grid-template-columns:1fr}.checkout-header{grid-template-columns:1fr}.checkout-header nav{padding:16px}.checkout-header img{margin:12px auto}}

/* Pro polish pass: aligned controls, checkout header, admin modules and payment states */
.btn--danger{background:#ffecef;color:#c5163f}
.btn--danger:hover{background:#c5163f;color:#fff;transform:translateY(-2px)}
.passenger-popover>div{grid-template-columns:1fr 36px 30px 36px;grid-template-rows:auto auto;column-gap:10px;row-gap:0}
.passenger-popover>div strong{grid-column:1;grid-row:1;align-self:end}
.passenger-popover>div small{grid-column:1;grid-row:2;align-self:start}
.passenger-popover>div button:first-of-type{grid-column:2;grid-row:1/span 2;align-self:center}
.passenger-popover>div span[id$="-count"]{grid-column:3;grid-row:1/span 2;text-align:center;font:500 16px Poppins}
.passenger-popover>div button:last-of-type{grid-column:4;grid-row:1/span 2;align-self:center}
.checkout-header{height:116px;display:grid;grid-template-columns:184px 1fr;align-items:stretch;background:#fff;border-bottom:1px solid #e5e8ef}
.checkout-header img{width:132px;margin:auto}
.checkout-header nav{height:100%;background:#001f4d;color:#aebbd8;display:flex;align-items:center;gap:min(8vw,84px);padding:0 70px;font:600 15px Poppins}
.checkout-header nav span{white-space:nowrap}.checkout-header nav .active{color:#fff}
.select-wrap{position:relative;display:block}
.select-wrap:after{content:"\F282";font-family:"bootstrap-icons";position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:#5b5970;font-size:12px}
.select-wrap select,.admin-filters select,.assign-form select,.manual-payment-form select,.notification-form select{appearance:none;background:#fff!important;border:1px solid #dedeea;border-radius:10px;color:#1f2030;height:42px;padding:0 34px 0 12px;outline:0}
.select-wrap select:focus,.admin-filters input:focus,.admin-filters select:focus{border-color:var(--violet);box-shadow:0 0 0 3px #00275916}
.admin-v2{width:min(1230px,calc(100% - 30px))}
.admin-hero{min-height:118px;padding:16px 22px}
.admin-hero img{width:126px}
.admin-stat-grid{grid-template-columns:repeat(6,1fr)}
.admin-stat-grid article{min-height:118px;display:flex;flex-direction:column;justify-content:space-between}
.admin-stat-grid article:hover,.admin-action-grid button:hover,.ops-states button:hover{border-color:#c8d9e6;box-shadow:0 16px 34px #15154416}
.admin-overview-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-top:14px}
.admin-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.admin-card__head h2{margin:0!important}.admin-card__head span{font-size:12px;color:#777}
.mini-bars{display:grid;gap:10px}
.mini-bars button{position:relative;overflow:hidden;border:1px solid #e7eef4;border-radius:12px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px;text-align:left;cursor:pointer}
.mini-bars button i{position:absolute;left:0;bottom:0;top:0;background:linear-gradient(90deg,#0027591c,#ff008f12);z-index:0}
.mini-bars button span,.mini-bars button b{position:relative;z-index:1}.mini-bars button b{font:600 18px Poppins;color:var(--blue)}
.export-actions{display:grid;gap:10px}.export-actions .btn{justify-content:flex-start;border:1px solid #e7eef4;border-radius:10px}
.admin-table{border-color:#e9e9f3;box-shadow:0 10px 28px #0027590a}.admin-table th{font-size:11px;color:#191923;text-transform:none;background:#f7fafc}.admin-table td{font-size:12px;line-height:1.45}
.admin-table tbody tr:nth-child(even) td{background:#fbfdff}.admin-table tbody tr:hover td{background:#f2f7fb}
.status-pill{gap:6px;align-items:center;padding:6px 10px;font:600 10px Poppins;text-transform:none;white-space:nowrap}
.status-pill--success{background:#eaf8ef;color:#16823b}.status-pill--warning{background:#fff5dd;color:#a96500}.status-pill--danger{background:#ffecef;color:#c5163f}.status-pill--info{background:#eef4ff;color:#2359c4}.status-pill--muted{background:#f2f0f8;color:#536b7f}.status-pill--process{background:#eef5fa;color:var(--violet)}
.row-actions{display:flex;gap:7px}.admin-view{display:inline-grid;place-items:center;border-radius:10px;background:#08a7bd;transition:.18s}.admin-view:hover{background:var(--pink);transform:translateY(-1px)}
.empty{text-align:center;color:#777;padding:24px!important}.passenger-mini i{color:var(--violet);margin-right:5px}
.ops-states button{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;min-height:70px}.ops-states button i{grid-row:1/span 2;color:var(--pink);font-size:23px}.ops-states button.is-active i{color:#fff}.ops-states button span{grid-column:2}
.admin-modal__panel{width:min(1050px,calc(100% - 34px));border-radius:18px;overflow:hidden}
.admin-modal__body{display:block;padding:0}.admin-modal__head{padding:18px 24px}.admin-modal__head h2{display:flex;align-items:center;gap:9px;font:600 20px Poppins;margin:0}.modal-res-icon{display:inline-grid;place-items:center;width:30px;height:24px;border-radius:5px;background:#15a7bd;color:#fff;font:700 12px Poppins}
.booking-detail{display:grid;grid-template-columns:164px minmax(0,1fr);min-height:540px}.booking-detail__tabs{min-width:0;background:#f7f8fb;padding:22px 10px;display:flex;flex-direction:column;gap:7px}.booking-detail__tabs button{width:100%;min-width:0;border:0;border-radius:8px;background:transparent;color:#0070b8;text-align:left;padding:11px 10px;cursor:pointer;font:500 10.5px Poppins;display:flex;gap:8px;align-items:center;white-space:normal;overflow-wrap:anywhere}.booking-detail__tabs button i{flex:0 0 15px}.booking-detail__tabs button:hover,.booking-detail__tabs button.is-active{background:#0787ef;color:#fff}
.booking-detail__content{padding:22px 24px}.booking-tab-grid{display:grid;grid-template-columns:280px 1fr;gap:16px}.booking-tab-grid fieldset,.assign-form fieldset{border:1px solid #cfd2dc;border-radius:6px;padding:14px}.booking-tab-grid legend,.assign-form legend{font:500 20px Poppins;padding:0 8px}.booking-tab-grid label,.assign-form label,.manual-payment-form label,.notification-form label,.fleet-form label{display:block;font:500 12px Poppins;color:#20202d}.booking-tab-grid input,.booking-tab-grid textarea,.assign-form input,.assign-form textarea,.manual-payment-form input,.manual-payment-form textarea,.notification-form input,.notification-form textarea,.fleet-form input{width:100%;border:1px solid #dde0e8;border-radius:7px;background:#f8f9fb;padding:9px 10px;margin-top:5px;font:400 13px Hind}.span-2{grid-column:1/-1}
.service-line{display:grid;grid-template-columns:120px 1fr 120px 1fr;gap:8px;align-items:center;margin-bottom:14px}.service-line span{background:#14a949;color:#fff;border-radius:4px;padding:8px;font:600 12px Poppins}.service-line strong{background:#edf0f5;border-radius:4px;padding:8px;font:500 12px Hind}
.flight-admin-block{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:8px;align-items:center;border-top:1px solid #ececf3;padding:12px 0}.flight-admin-block strong{font:600 12px Poppins}.flight-admin-block span{background:#edf0f5;border-radius:4px;padding:8px;display:flex;gap:7px;align-items:center}.flight-admin-block .ok{background:#e7f8ed;color:#15833a}.flight-admin-block .warn{background:#fff1e6;color:#b35a00}.flight-admin-block small{grid-column:2/-1;color:#676777}
.admin-subpanel h3{font:500 22px Poppins;margin:0 0 14px;background:#e9edf2;padding:10px 14px;color:#444}.admin-table.compact table{font-size:12px}.price-summary{width:min(420px,100%);margin:18px 0 0 auto;border:1px solid #16a9b8}.price-summary h4{margin:0;background:#16a9b8;color:#fff;text-align:center;padding:12px;font:500 14px Poppins}.price-summary dl{padding:14px;margin:0}.price-summary div{display:flex;justify-content:space-between;border-bottom:1px solid #e7e7ef;padding:8px}.price-summary div:last-child{border-bottom:0;font-weight:700}.admin-hint{display:flex;gap:8px;align-items:flex-start;color:#5b5b68;font-size:12px}.admin-hint i{color:var(--violet)}
.tab-toolbar{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:12px}.manual-payment-form,.notification-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;border:1px solid #e7eef4;border-radius:14px;padding:16px;background:#fff}.manual-payment-form h3,.notification-form h3{grid-column:1/-1;background:transparent;padding:0;margin:0;font:600 18px Poppins}
.voucher-language{display:flex;align-items:center;gap:9px;border:1px solid #dfe7ef;border-radius:9px;padding:5px 7px 5px 10px;background:#f8fafc;font:600 10px Poppins;color:#263446}
.voucher-language>span{display:grid;gap:1px}.voucher-language small{font:400 8px Poppins;color:#68778a}
.tab-toolbar>.voucher-language{order:2;flex:0 0 100%;box-sizing:border-box;justify-content:flex-start;gap:18px;padding:10px 12px}
.voucher-language>.ui-control{width:180px;min-width:150px;flex:none}.voucher-language>.ui-control .ui-control__trigger{height:38px;min-height:38px}
.payment-result .payment-eyebrow{font:600 11px Poppins;letter-spacing:2px;text-transform:uppercase;color:var(--pink);margin-bottom:4px}.payment-result[data-tone=success] .payment-icon{background:#eaf8ef;color:#16823b}.payment-result[data-tone=danger] .payment-icon{background:#ffecef;color:#c5163f}.payment-result[data-tone=warning] .payment-icon{background:#fff5dd;color:#a96500}.payment-actions--secondary{margin-top:8px}.payment-actions .btn{gap:8px;border-radius:8px}
@media(max-width:1050px){.admin-stat-grid{grid-template-columns:repeat(3,1fr)}.admin-overview-grid{grid-template-columns:1fr}.booking-tab-grid,.booking-detail{grid-template-columns:1fr}.booking-detail__tabs{flex-direction:row;overflow:auto}.service-line,.flight-admin-block,.manual-payment-form,.notification-form{grid-template-columns:1fr}.fleet-section{grid-template-columns:1fr!important}.fleet-section__form{position:static!important}}
@media(max-width:650px){.admin-stat-grid{grid-template-columns:1fr}.checkout-header{grid-template-columns:1fr;height:auto}.checkout-header nav{height:auto;padding:18px;gap:16px;flex-wrap:wrap}.checkout-header img{margin:14px auto}.passenger-popover{width:auto}}
@media(max-width:650px){.admin-hero{align-items:flex-start}.admin-hero__actions{align-items:flex-end;flex-direction:column}.admin-language{grid-template-columns:auto minmax(94px,auto)}.admin-language>span{display:none}.voucher-language{width:100%;justify-content:space-between}.voucher-language>.ui-control{width:min(150px,48vw)}.tab-toolbar>.btn{flex:1 1 145px}}

/* ═══════════════════════════════════════
   FLEET ADMIN SECTION
   ═══════════════════════════════════════ */

.fleet-admin { padding: 10px 0; }

/* --- Side-by-side layout (list | form) --- */
.fleet-section {
  display: grid;
  grid-template-columns: 1.3fr .7fr;
  gap: 24px;
  margin-top: 22px;
  align-items: start;
}
.fleet-section__list {
  background: #fbfbfe;
  border: 1px solid #eef0f6;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 4px 18px rgba(21,21,68,.02);
  min-width: 0;               /* prevent grid blowout */
}
.fleet-section__form {
  background: #fff;
  border: 1px solid #eef0f6;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 12px 36px rgba(21,21,68,.05);
  position: sticky;
  top: 24px;
}

/* --- Section header --- */
.list-title-header {
  margin-bottom: 20px;
  border-bottom: 1px solid #ececf3;
  padding-bottom: 12px;
}
.list-title-header h3 {
  font: 600 17px/1.3 Poppins;
  color: #1f2030;
  margin: 0 0 4px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.list-title-header h3 i { color: var(--violet); font-size: 17px; }
.list-title-header p {
  font-size: 12px;
  color: #757993;
  margin: 0;
}
.section-divider {
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, #ececf3 50%, transparent);
  margin: 36px 0;
}

/* ═══════════ Vehicle model cards ═══════════ */
.vehicle-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
}
.vehicle-card {
  border: 1px solid #eef0f6;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0,0,0,.02);
  transition: transform .22s, box-shadow .22s;
  display: flex;
  flex-direction: column;
}
.vehicle-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 22px rgba(21,21,68,.08);
}
.vehicle-card.is-inactive {
  opacity: .6;
  border-style: dashed;
}
.vehicle-card__image {
  height: 120px;
  background: #f7f7f9;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #eee;
  padding: 8px;
}
.vehicle-card__image img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.vehicle-card__body {
  padding: 14px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 6px;
}
.vehicle-card__body h4 {
  font: 600 15px/1.2 Poppins;
  color: #1f2030;
  margin: 0;
}
.vehicle-card__body .specs {
  display: flex;
  gap: 10px;
  font-size: 11px;
  color: #4b4f69;
  background: #f4f6fa;
  padding: 5px 8px;
  border-radius: 6px;
}
.vehicle-card__body .specs span { display: flex; align-items: center; gap: 4px; }
.vehicle-card__body .specs i { font-size: 13px; color: var(--violet); }
.vehicle-card__body .price {
  font-size: 12px;
  color: #444;
  margin: 0;
  line-height: 1.5;
}
.vehicle-card__body .price strong { color: var(--blue); }
.card-footer {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-top: 6px;
  border-top: 1px solid #f0f0f5;
  margin-top: auto;
}
.unit-count {
  font-size: 11px;
  color: #757993;
  margin-left: auto;
}
.card-actions {
  display: flex;
  gap: 6px;
  padding-top: 8px;
}

/* --- Small buttons used on cards --- */
.btn--sm {
  padding: 5px 10px;
  font-size: 11px;
  border-radius: 6px;
}
.btn--outline {
  background: transparent;
  border: 1px solid #c5c7db;
  color: #4a4d66;
}
.btn--outline:hover {
  border-color: var(--violet);
  color: var(--violet);
  background: #eef5fa;
  transform: none;
}
.btn--danger.btn--sm {
  padding: 5px 8px;
}

/* ═══════════ Units scrollable table ═══════════ */
.fleet-scrollable-table {
  max-height: 400px;
  overflow-y: auto;
  border: 1px solid #eef0f6;
  border-radius: 12px;
  box-shadow: inset 0 2px 8px rgba(0,0,0,.01);
}
.fleet-scrollable-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  background: #fff;
}
.fleet-scrollable-table th {
  position: sticky;
  top: 0;
  background: #f7f8fb;
  z-index: 10;
  border-bottom: 2px solid #eef0f6;
  font: 600 11px Poppins;
  color: #4a4d66;
  padding: 10px 14px;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .4px;
}
.fleet-scrollable-table td {
  padding: 10px 14px;
  border-bottom: 1px solid #f0f2f8;
  color: #2e3040;
}
.fleet-scrollable-table tr:hover td { background: #f7f6ff; }
.category-tag {
  display: inline-block;
  padding: 2px 8px;
  background: #eef0fd;
  color: #315c82;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 500;
  text-transform: uppercase;
}
.muted { color: #b4b7c8; }

/* --- Search filter --- */
.list-filters { margin-bottom: 16px; }
.search-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.search-input-wrapper i {
  position: absolute;
  left: 14px;
  color: #8c90a6;
  pointer-events: none;
}
.search-input-wrapper input {
  width: 100%;
  padding: 10px 10px 10px 38px;
  border: 1px solid #ddddeb;
  border-radius: 10px;
  background: #fff;
  font-size: 13px;
  transition: border-color .18s;
}
.search-input-wrapper input:focus {
  border-color: var(--violet);
  outline: none;
}

/* ═══════════ Fleet editor forms ═══════════ */
.fleet-editor-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.fleet-editor-form h3 {
  font: 600 16px/1.3 Poppins;
  color: #1f2030;
  margin: 0 0 4px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--violet);
  display: flex;
  align-items: center;
  gap: 8px;
}
.fleet-editor-form h3 i {
  color: var(--violet);
  font-size: 15px;
}
.fleet-editor-form label {
  display: flex;
  flex-direction: column;
  font-size: 11px;
  font-weight: 600;
  font-family: Poppins, sans-serif;
  color: #4a4d66;
  gap: 4px;
  width: 100%;
  box-sizing: border-box;
}
.fleet-editor-form label small {
  font-weight: 400;
  color: #8c90a6;
}
.fleet-editor-form input[type="text"],
.fleet-editor-form input[type="number"],
.fleet-editor-form select,
.fleet-editor-form textarea {
  width: 100%;
  border: 1px solid #ddddeb;
  border-radius: 8px;
  padding: 9px 10px;
  font-size: 12px;
  font-family: Hind, sans-serif;
  background: #fafbfe;
  color: #1f2030;
  transition: border-color .18s, background-color .18s;
  box-sizing: border-box;
}
.fleet-editor-form input:focus,
.fleet-editor-form select:focus,
.fleet-editor-form textarea:focus {
  border-color: var(--violet);
  background: #fff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,39,89,.08);
}

/* Form rows: 2-col default, 3-col variant */
.fleet-editor-form .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.fleet-editor-form .form-row.form-row--3 {
  grid-template-columns: 1fr 1fr 1fr;
}
.fleet-editor-form .form-row.flex-row {
  display: flex;
  gap: 18px;
}

/* Checkbox inline style */
.fleet-editor-form .checkline {
  flex-direction: row;
  align-items: center;
  cursor: pointer;
  font-size: 12px;
  gap: 8px;
  user-select: none;
  margin: 0;
}
.fleet-editor-form .checkline input {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: var(--violet);
  margin: 0;
}

/* Form actions (save / cancel) */
.fleet-editor-form .form-actions {
  display: flex;
  gap: 8px;
  margin-top: 6px;
}
.btn--cancel {
  background: #f3f4f6;
  color: #4b5563;
  cursor: pointer;
}
.btn--cancel:hover {
  background: #e5e7eb;
  transform: none;
}

/* Form inline error */
.fleet-error {
  min-height: 16px;
  color: #c43b58;
  font-size: 12px;
  margin: 0;
}

/* ═══════════ Image uploader ═══════════ */
.image-uploader {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 12px;
  align-items: center;
  background: #fafbfe;
  border: 1px solid #ddddeb;
  border-radius: 10px;
  padding: 10px;
  box-sizing: border-box;
}
.image-uploader__preview {
  width: 72px;
  height: 54px;
  background: #fff;
  border: 1px solid #ececf3;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 4px;
  box-sizing: border-box;
}
.image-uploader__preview img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.image-uploader__inputs {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.image-uploader__inputs label {
  font-size: 10px;
}
.image-uploader__inputs input[type="text"] {
  padding: 6px 8px !important;
  font-size: 11px !important;
}
.btn--upload-trigger {
  width: 100%;
  padding: 6px 10px;
  font-size: 11px;
  border-radius: 6px;
  background: #eef0fd;
  color: #315c82;
  border: 1px dashed #315c82;
  cursor: pointer;
  transition: background .18s;
  font-family: Poppins, sans-serif;
  font-weight: 500;
}
.btn--upload-trigger:hover {
  background: #e2e5fc;
  transform: none;
}

/* ═══════════ Responsive ═══════════ */
@media (max-width: 1050px) {
  .fleet-section {
    grid-template-columns: 1fr !important;
  }
  .fleet-section__form {
    position: static !important;
  }
}
@media (max-width: 650px) {
  .vehicle-grid {
    grid-template-columns: 1fr;
  }
  .fleet-editor-form .form-row,
  .fleet-editor-form .form-row.form-row--3 {
    grid-template-columns: 1fr;
  }
}

/* Final operational polish: fleet, coverage map, reservation drawer and checkout */
.checkout-header {
  grid-template-columns: 184px 1fr;
  background: #001f4d;
  border-bottom: 0;
  box-shadow: 0 5px 18px rgba(0, 31, 77, .16);
}
.checkout-header img {
  position: relative;
  z-index: 2;
  width: 132px;
  margin: auto;
  filter: drop-shadow(0 4px 7px rgba(0, 0, 0, .18));
}
.checkout-header nav {
  background: transparent;
  padding-left: 62px;
}

.admin-modal__panel {
  height: min(760px, calc(100vh - 32px));
  max-height: calc(100vh - 32px);
  display: flex;
  flex-direction: column;
}
.admin-modal__head { flex: 0 0 auto; z-index: 3; }
.admin-modal__body { flex: 1 1 auto; min-height: 0; overflow: hidden; }
.admin-modal__body.admin-modal__body--form {
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
.booking-detail { height: 100%; min-height: 0; }
.booking-detail__tabs { min-height: 0; overflow-y: auto; }
.booking-detail__content {
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
.booking-detail__content::-webkit-scrollbar { width: 10px; }
.booking-detail__content::-webkit-scrollbar-thumb { background: #cbc7de; border: 3px solid #fff; border-radius: 12px; }
.notification-form > label,
.manual-payment-form > label { min-width: 0; }
.notification-form .select-wrap,
.manual-payment-form .select-wrap,
.notification-form select,
.manual-payment-form select { display: block; width: 100%; min-width: 0; box-sizing: border-box; }
.notification-form .select-wrap::after,
.manual-payment-form .select-wrap::after { right: 14px; }

.fleet-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 8px 0 24px;
}
.fleet-kpis article {
  display: grid;
  grid-template-columns: 36px 1fr auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 14px 16px;
  border: 1px solid #ebeaf4;
  border-radius: 14px;
  background: linear-gradient(145deg, #fff, #f7fafc);
}
.fleet-kpis i { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #e6f0f7; color: var(--violet); font-size: 17px; }
.fleet-kpis span { color: #686b7d; font: 500 11px Poppins; }
.fleet-kpis strong { color: #17172c; font: 600 23px Poppins; }
.fleet-section { grid-template-columns: minmax(0, 1.55fr) minmax(380px, .85fr); gap: 20px; }
.fleet-section__form { padding: 20px; border-color: #e5e3f2; box-shadow: 0 16px 38px rgba(26, 24, 72, .07); }
.vehicle-card { position: relative; }
.vehicle-card__body { padding: 15px; }
.entity-actions { display: flex; align-items: center; justify-content: flex-end; gap: 7px; margin-top: 8px; }
.entity-action {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 10px;
  border: 1px solid transparent;
  cursor: pointer;
  font-size: 13px;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease;
}
.entity-action--edit { color: #0a467a; background: #e6f0f7; border-color: #c8d9e6; }
.entity-action--edit:hover { color: #fff; background: var(--violet); box-shadow: 0 7px 16px rgba(0, 39, 89, .24); transform: translateY(-2px); }
.entity-action--delete { color: #bb2344; background: #fff1f4; border-color: #ffd7e0; }
.entity-action--delete:hover { color: #fff; background: #c81e43; box-shadow: 0 7px 16px rgba(200, 30, 67, .2); transform: translateY(-2px); }
.fleet-scrollable-table .row-actions { flex-wrap: nowrap; min-width: 82px; }
.fleet-editor-form input[readonly] { color: #6a6c7b; background: #eff0f5; cursor: not-allowed; }

.confirm-dialog { position: fixed; inset: 0; z-index: 400; display: grid; place-items: center; padding: 20px; background: rgba(14, 15, 30, .56); backdrop-filter: blur(4px); }
.confirm-dialog section { width: min(440px, 100%); display: grid; grid-template-columns: 48px 1fr; gap: 15px; padding: 24px; border-radius: 18px; background: #fff; box-shadow: 0 30px 80px rgba(0, 0, 0, .28); }
.confirm-dialog h2 { margin: 0 0 5px; font: 600 19px Poppins; }
.confirm-dialog p { margin: 0; color: #646676; font-size: 13px; line-height: 1.5; }
.confirm-dialog__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; font-size: 20px; }
.confirm-dialog__icon--danger { color: #c81e43; background: #fff0f3; }
.confirm-dialog__icon--primary { color: var(--violet); background: #e6f0f7; }
.confirm-dialog__actions { grid-column: 1 / -1; display: flex; flex-wrap:wrap; justify-content: flex-end; gap: 9px; margin-top: 8px; }
.unsaved-changes-dialog section{width:min(560px,100%)}.unsaved-changes-dialog .unsaved-discard{color:#a43b21;border-color:#e8c4ba;background:#fff8f5}.unsaved-changes-dialog .unsaved-discard:hover{color:#fff;border-color:#a43b21;background:#a43b21}
@media(max-width:560px){.unsaved-changes-dialog .confirm-dialog__actions{display:grid;grid-template-columns:1fr}.unsaved-changes-dialog .confirm-dialog__actions .btn{justify-content:center;width:100%}}

.zones-head-actions { display: flex; gap: 9px; flex-wrap: wrap; justify-content: flex-end; }
.zones-admin__grid { grid-template-columns: 230px minmax(380px, 1fr) 330px; align-items: start; }
.zone-map-wrap #zone-map { height: 510px; }
.zone-list { max-height: 558px; }
.zone-list button { border-left: 3px solid transparent; padding: 11px 12px; }
.zone-list button.is-active { border-left-color: var(--violet); background: #eaf2f8; }
.zone-list button.is-incomplete { border-left-color: #d97706; }
.zone-list__row { display: flex!important; align-items: center; justify-content: space-between; gap: 8px; margin: 0!important; }
.zone-list__row i { color: #16823b; }
.zone-list button.is-incomplete .zone-list__row i { color: #d97706; }
.zone-list button.is-disabled { border-left-color: #98a0ad; color: #747b87; background: #f2f4f7; opacity: .72; }
.zone-list button.is-disabled:hover { color: #555d69; background: #e9edf1; opacity: .9; }
.zone-list button.is-disabled .zone-list__row i { color: #7f8793; }
.zone-list__row strong { display: flex; min-width: 0; align-items: center; gap: 6px; }
.zone-list__test-badge { flex: 0 0 auto; padding: 2px 6px; border: 1px solid #e7bfd0; border-radius: 999px; color: #9e2855; background: #fff3f8; font: 600 7px Poppins; letter-spacing: .35px; text-transform: uppercase; }
.payment-test-control { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 14px 0 16px; padding: 14px 16px; border: 1px solid #d8dee7; border-radius: 14px; background: #f5f7fa; }
.payment-test-control.is-enabled { border-color: #e3a2b8; background: #fff3f7; box-shadow: 0 0 0 3px rgba(225,48,108,.06); }
.payment-test-control.is-partial { border-color: #e6b65d; background: #fff8e8; }
.payment-test-control__copy { display: flex; min-width: 0; align-items: flex-start; gap: 11px; }
.payment-test-control__copy > span { display: grid; flex: 0 0 38px; height: 38px; place-items: center; border-radius: 11px; color: #fff; background: #697586; }
.payment-test-control.is-enabled .payment-test-control__copy > span { background: #c22559; }
.payment-test-control__copy strong,.payment-test-control__copy small { display: block; }
.payment-test-control__copy strong { color: #202735; font: 600 12px Poppins; }
.payment-test-control__copy small { max-width: 750px; margin-top: 3px; color: #677181; font: 500 10px/1.55 Poppins; }
.payment-test-switch { flex: 0 0 auto; min-width: 132px; justify-content: flex-end; padding: 9px 11px; border: 1px solid #d8dee7; border-radius: 10px; background: #fff; }
.payment-test-switch input:checked + span { background: #c22559; }
.payment-test-switch b { color: #525c6b; white-space: nowrap; }
.payment-test-control.is-enabled .payment-test-switch b { color: #a21f4c; }
@media(max-width:720px){.payment-test-control{align-items:stretch;flex-direction:column}.payment-test-switch{justify-content:center;width:100%}}
.zone-side { min-width: 0; }
.zone-overview-panel,
.zone-form { padding: 18px; border: 1px solid #e5e3f2; border-radius: 16px; background: #fff; box-shadow: 0 14px 36px rgba(24, 24, 70, .06); }
.zone-overview-panel__title { display: flex; gap: 12px; align-items: flex-start; padding-bottom: 14px; border-bottom: 1px solid #ecebf3; }
.zone-overview-panel__title > i { display: grid; place-items: center; flex: 0 0 40px; height: 40px; border-radius: 11px; color: #fff; background: var(--violet); }
.zone-overview-panel h3 { margin: 0; font: 600 16px Poppins; }
.zone-overview-panel p { margin: 3px 0 0; color: #77798a; font-size: 11px; line-height: 1.45; }
.zone-overview-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin: 15px 0; }
.zone-overview-stats article { padding: 12px; border-radius: 11px; background: #f7f7fb; }
.zone-overview-stats strong { display: block; font: 600 21px Poppins; color: #17172c; }
.zone-overview-stats span { color: #727487; font-size: 10px; }
.zone-legend { display: grid; gap: 8px; padding: 13px 0; border-top: 1px solid #ecebf3; border-bottom: 1px solid #ecebf3; }
.zone-legend span { display: flex; align-items: center; gap: 8px; color: #55586a; font-size: 11px; }
.legend-dot { width: 10px; height: 10px; border-radius: 50%; background: #002759; }
.legend-dot--manual { background: #d32424; box-shadow: inset 0 0 0 2px #fff; outline: 1px dashed #d32424; }
.legend-dot--incomplete { background: #9ba0ae; }
.zone-overview-panel .admin-hint { margin: 14px 0 0; }
.zone-form__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding-bottom: 10px; border-bottom: 1px solid #ecebf3; }
.zone-form__head small { color: var(--pink); font: 600 9px Poppins; letter-spacing: 1px; text-transform: uppercase; }
.zone-form__head h3 { margin: 2px 0 0; font: 600 17px Poppins; }
.zone-form__head-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.zone-save-top{min-height:36px;padding:8px 11px;font-size:9px;white-space:nowrap}
.icon-close { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid #e2e1eb; border-radius: 9px; background: #fff; color: #585a6c; cursor: pointer; }
.icon-close:hover { color: #fff; background: var(--violet); border-color: var(--violet); }
.zone-map-tooltip { border: 0!important; border-radius: 7px!important; box-shadow: 0 5px 14px rgba(0,0,0,.15)!important; font: 600 10px Poppins!important; color: #24243a!important; }
.zone-map-tooltip--context{opacity:.78}

@media (max-width: 1120px) {
  .fleet-section { grid-template-columns: 1fr; }
  .fleet-section__form { position: static; }
  .zones-admin__grid { grid-template-columns: 210px 1fr; }
  .zone-side { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .fleet-kpis { grid-template-columns: 1fr 1fr; }
  .zones-admin__grid { grid-template-columns: 1fr; }
  .zone-side { grid-column: auto; }
  .zone-map-wrap #zone-map { height: 390px; }
  .admin-modal { padding: 8px; }
  .admin-modal__panel { width: 100%; height: calc(100vh - 16px); max-height: calc(100vh - 16px); border-radius: 13px; }
  .booking-detail { grid-template-columns: 1fr; grid-template-rows: auto minmax(0, 1fr); }
  .booking-detail__tabs { flex-direction: row; overflow-x: auto; overflow-y: hidden; padding: 8px; }
  .checkout-header { grid-template-columns: 1fr; }
  .checkout-header nav { padding: 16px 18px; }
}

/* Unified dashboard form language: no browser-native dropdowns or calendars */
.fleet-admin { padding: 26px!important; }
.fleet-admin > .admin-card__head { padding: 0 2px 4px; }
.fleet-section__list { padding: 24px; }
.fleet-section__form { padding: 26px; }
.vehicle-card__body { padding: 18px; }
.vehicle-card__body h4 { margin-bottom: 2px; }
.vehicle-card__body h4 { display:flex; align-items:center; gap:8px; }
.vehicle-card__body h4 > i { display:grid; place-items:center; width:27px; height:27px; border-radius:8px; color:var(--violet); background:#e7f0f7; font-size:13px; }
.fleet-editor-form .form-row--service { grid-template-columns:minmax(0,1.45fr) minmax(170px,.55fr); }
.list-title-header { padding: 0 2px 16px; }
.list-title-header p { line-height: 1.55; }

.admin-page input:not([type="checkbox"]):not([type="radio"]):not(.control-native),
.admin-page textarea {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid #dcddea;
  border-radius: 10px;
  background: #fbfbfe;
  color: #202033;
  padding: 10px 12px;
  outline: 0;
  font: 400 13px/1.35 Hind, sans-serif;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.admin-page input:not([type="checkbox"]):not([type="radio"]):not(.control-native):hover,
.admin-page textarea:hover { border-color: #c7c4dc; background: #fff; }
.admin-page input:not([type="checkbox"]):not([type="radio"]):not(.control-native):focus,
.admin-page textarea:focus { border-color: var(--violet); background: #fff; box-shadow: 0 0 0 4px rgba(0, 39, 89, .10); }
.admin-page input[readonly]:not(.control-native),
.admin-page textarea[readonly] { background: #f4f5f8; color: #5e6070; }
.fleet-editor-form input:not([type="checkbox"]),
.fleet-editor-form textarea { min-height: 42px; margin: 0; }
.fleet-editor-form textarea { min-height: 90px; resize: vertical; }

.control-native {
  position: absolute!important;
  width: 1px!important;
  height: 1px!important;
  min-width: 1px!important;
  padding: 0!important;
  margin: 0!important;
  opacity: 0!important;
  pointer-events: none!important;
  clip-path: inset(50%)!important;
}
.select-wrap.is-enhanced::after { display: none; }
.ui-control { position: relative; display: block; width: 100%; min-width: 0; margin-top: 5px; font-family: Poppins, sans-serif; }
.ui-control__trigger {
  width: 100%;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 0 13px;
  border: 1px solid #dcddea;
  border-radius: 10px;
  background: #fff;
  color: #202033;
  cursor: pointer;
  text-align: left;
  font: 500 12px Poppins;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.ui-control__trigger:hover { border-color: #a9bfd1; background: #fbfdff; }
.ui-control.is-open .ui-control__trigger,
.ui-control__trigger:focus-visible { border-color: var(--violet); box-shadow: 0 0 0 4px rgba(0, 39, 89, .10); outline: 0; }
.ui-control__trigger > i { color: var(--violet); font-size: 11px; transition: transform .18s ease; }
.ui-control.is-open .ui-control__trigger > i { transform: rotate(180deg); }
.ui-control__popover {
  position: absolute;
  z-index: 120;
  top: calc(100% + 7px);
  left: 0;
  width: max(100%, 190px);
  border: 1px solid #e2e0ef;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 18px 45px rgba(24, 22, 68, .18);
  overflow: hidden;
  animation: control-pop .15s ease both;
}
@keyframes control-pop { from { opacity: 0; transform: translateY(-5px) scale(.98); } to { opacity: 1; transform: none; } }
.ui-select__menu { padding: 6px; max-height: 270px; overflow-y: auto; }
.ui-select__menu button {
  width: 100%;
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #303044;
  cursor: pointer;
  text-align: left;
  font: 500 12px Poppins;
}
.ui-select__menu button i { opacity: 0; color: #fff; }
.ui-select__menu button:hover { background: #ecf3f8; color: var(--violet); }
.ui-select__menu button.is-selected { background: var(--violet); color: #fff; }
.ui-select__menu button.is-selected i { opacity: 1; }

.ui-date .ui-control__trigger span { display: flex; align-items: center; gap: 9px; min-width: 0; }
.ui-date .ui-control__trigger span i { color: var(--violet); font-size: 14px; }
.ui-date .ui-control__trigger b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 500 12px Poppins; }
.ui-date__calendar { width: 296px; padding: 14px; overflow: visible; }
.ui-date__head { display: grid; grid-template-columns: 34px 1fr 34px; align-items: center; gap: 6px; margin-bottom: 11px; }
.ui-date__head strong { text-align: center; text-transform: capitalize; font: 600 13px Poppins; }
.ui-date__head button { display: grid; place-items: center; width: 34px; height: 34px; border: 0; border-radius: 9px; background: #eef5fa; color: var(--violet); cursor: pointer; }
.ui-date__head button:hover { color: #fff; background: var(--violet); }
.ui-date__week,
.ui-date__days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 3px; }
.ui-date__week { margin-bottom: 5px; }
.ui-date__week span { color: #8a8b99; text-align: center; font: 600 9px Poppins; }
.ui-date__days > span,
.ui-date__days > button { aspect-ratio: 1; display: grid; place-items: center; }
.ui-date__days button { border: 0; border-radius: 9px; background: transparent; color: #272739; cursor: pointer; font: 500 11px Poppins; }
.ui-date__days button:hover { color: var(--violet); background: #eaf2f8; }
.ui-date__days button.is-today { box-shadow: inset 0 0 0 1px #9fb9ce; color: var(--violet); }
.ui-date__days button.is-selected { color: #fff; background: var(--violet); box-shadow: 0 5px 12px rgba(0, 39, 89, .25); }
.ui-date__footer { display: flex; justify-content: space-between; gap: 8px; margin-top: 10px; padding-top: 10px; border-top: 1px solid #ecebf3; }
.ui-date__footer button { border: 0; background: transparent; color: var(--violet); cursor: pointer; font: 600 10px Poppins; }
.ui-date__footer button:hover { color: var(--pink); }
.admin-filters .ui-control { margin-top: 5px; }
.admin-filters .ui-control__trigger { height: 40px; }
.fleet-editor-form .ui-control { margin-top: 0; }

@media (max-width: 650px) {
  .fleet-admin { padding: 18px!important; }
  .fleet-section__list,
  .fleet-section__form { padding: 18px; }
  .ui-control__popover { width: 100%; min-width: 0; }
  .ui-date__calendar { width: min(296px, calc(100vw - 52px)); }
}

/* Interaction and hierarchy pass */
.admin-page .btn {
  min-height: 40px;
  gap: 8px;
  padding: 10px 16px;
  border: 1px solid #dedceb;
  border-radius: 10px;
  background: #fff;
  color: #323246;
  box-shadow: 0 3px 10px rgba(28, 27, 72, .04);
  letter-spacing: .6px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease, color .18s ease;
}
.admin-page .btn:hover { border-color: #a9bfd1; color: var(--violet); background: #f7fafc; box-shadow: 0 8px 18px rgba(0, 39, 89, .09); transform: translateY(-1px); }
.admin-page .btn.btn--primary { color: #fff; border-color: var(--blue); background: var(--blue); }
.admin-page .btn.btn--primary:hover { color: #fff; border-color: var(--pink); background: var(--pink); }
.admin-page .btn.btn--danger { color: #c5163f; border-color: #ffd4dd; background: #fff0f3; }
.admin-page .btn.btn--danger:hover { color: #fff; border-color: #c5163f; background: #c5163f; }
.admin-page .btn--compact { min-height: 34px; padding: 7px 11px; font-size: 10px; }
.admin-modal__head #modal-close { min-width: 92px; }
.tab-toolbar .btn { border-color: #cadbe8; color: var(--violet); background: #eef5fa; }
.tab-toolbar .btn:hover { color: #fff; background: var(--violet); }

.booking-detail { gap: 0; background: #eef0f6; }
.booking-detail__tabs { border-right: 1px solid #e1e3ec; background: #f1f3f8; }
.booking-detail__content { padding: 26px 28px; background: #f7f8fb; }
.booking-detail__content > * { width: min(920px, 100%); margin-left: auto; margin-right: auto; }
.booking-tab-grid { gap: 20px; }
.booking-tab-grid fieldset,
.admin-subpanel,
.manual-payment-form,
.notification-form {
  border: 1px solid #e0e2eb;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(26, 26, 72, .045);
}
.booking-tab-grid fieldset { padding: 18px 20px 20px; }
.booking-tab-grid legend { padding: 0 10px; background: #fff; border-radius: 8px; }
.booking-section-heading{display:flex;align-items:center;gap:9px;margin-bottom:15px;padding-bottom:12px;border-bottom:1px solid #e5eaf2}
.booking-section-heading h3{margin:0;padding:0;background:transparent;color:#002759;font:600 15px Poppins}
.booking-section-heading>i{display:grid;place-items:center;flex:0 0 30px;height:30px;border:1px solid #dce6f0;border-radius:9px;color:#002759;background:#eef4fa;font-size:16px}
.service-line strong,.flight-admin-block span{min-height:40px;box-sizing:border-box;border:1px solid #d9e2ed;border-radius:8px;background:#f5f7fb}
.service-line strong{display:flex;align-items:center;overflow-wrap:anywhere}
.service-line span{display:flex;align-items:center;gap:7px;min-height:40px;box-sizing:border-box;border:1px solid transparent;border-radius:8px}
.flight-admin-block .ok{border-color:#bfe4cb}.flight-admin-block .warn{border-color:#f0d1af}
.booking-detail__tabs{background:#f7f9fc;padding:18px 12px;gap:8px}
.booking-detail__tabs button{min-height:42px;padding:10px 12px;border:1px solid transparent;border-radius:10px;color:#002759;font:500 11px Poppins;overflow-wrap:normal}
.booking-detail__tabs button>i{display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;font-size:14px;line-height:1}
.booking-detail__tabs button:hover{color:#002759;background:#edf3f9;border-color:#dbe5ef}
.booking-detail__tabs button.is-active{color:#fff;background:var(--blue);border-color:var(--blue);box-shadow:0 5px 12px #00275919}
.audit-timeline__marker>i,.admin-subpanel__title>span>i,.consent-status>i,.service-line i,.flight-admin-block i{display:grid;place-items:center;line-height:1}
.audit-timeline__marker>i::before,.admin-subpanel__title>span>i::before,.consent-status>i::before,.service-line i::before,.flight-admin-block i::before,.booking-detail__tabs button>i::before,.booking-section-heading>i::before{display:block;line-height:1;vertical-align:0}
.consent-status>i{flex:0 0 20px;height:20px;font-size:16px}
@media(max-width:800px){.booking-detail__tabs{padding:8px;gap:6px}.booking-detail__tabs button{flex:0 0 auto;width:auto;white-space:nowrap;padding:9px 11px}}
.admin-subpanel { padding: 20px; }
.admin-subpanel > h3 { margin: -20px -20px 18px; border-radius: 14px 14px 0 0; background: #eef0f6; }
.admin-subpanel__title { display: flex; align-items: center; gap: 13px; margin-bottom: 20px; padding-bottom: 17px; border-bottom: 1px solid #e7e8f0; }
.admin-subpanel__title > span { display: grid; place-items: center; flex: 0 0 42px; height: 42px; border-radius: 12px; color: #fff; background: linear-gradient(145deg, var(--violet), #0b5d96); box-shadow: 0 8px 18px rgba(0,39,89,.18); }
.admin-subpanel__title h3 { margin: 0; padding: 0; border-radius: 0; background: transparent; font: 600 19px Poppins; color: #1f2030; }
.admin-subpanel__title p { margin: 3px 0 0; color: #727587; font-size: 11px; }
.admin-subpanel--costs { padding: 24px; }
.admin-subpanel--costs .admin-table { overflow: hidden; border: 1px solid #e4e5ed; border-radius: 12px; box-shadow: none; }
.admin-subpanel--costs .admin-table table { margin: 0; }
.admin-subpanel--costs .price-summary { margin-top: 22px; border: 1px solid #dfe4eb; border-radius: 14px; overflow: hidden; box-shadow: 0 12px 28px rgba(0,39,89,.07); }
.admin-subpanel--costs .price-summary h4 { background: var(--violet); }
.admin-subpanel--costs .admin-hint { margin: 18px 0 0; padding: 12px 14px; border-radius: 10px; background: #f3f7fa; }
.fare-method { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; color: #164f78; font-weight: 600; }
.fare-method i { display: grid; place-items: center; width: 25px; height: 25px; border-radius: 7px; color: #0a467a; background: #e7f0f7; }

.ui-control__trigger > span { display: flex; align-items: center; min-width: 0; gap: 9px; }
.ui-control__trigger > span b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 500 12px Poppins; }
.ui-control__leading,
.ui-select__option-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  border-radius: 7px;
  color: #0a467a;
  background: #e7f0f7;
  font-size: 12px;
}
.ui-select__menu button .ui-select__option-icon { opacity: 1; color: #0a467a; }
.ui-select__menu button .ui-select__check { opacity: 0; }
.ui-control__leading[data-tone="approved"],
.ui-control__leading[data-tone="success"],
.ui-select__menu [data-tone="approved"] .ui-select__option-icon { color: #16823b; background: #e9f8ee; }
.ui-control__leading[data-tone="rejected"],
.ui-select__menu [data-tone="rejected"] .ui-select__option-icon { color: #c5163f; background: #fff0f3; }
.ui-control__leading[data-tone="pending"],
.ui-control__leading[data-tone="mock_preference_created"],
.ui-select__menu [data-tone="pending"] .ui-select__option-icon,
.ui-select__menu [data-tone="mock_preference_created"] .ui-select__option-icon { color: #b36a00; background: #fff4dc; }
.ui-control__leading[data-tone="whatsapp"],
.ui-select__menu [data-tone="whatsapp"] .ui-select__option-icon { color: #128c48; background: #e8f8ef; }
.ui-select__menu button { justify-content: flex-start; }
.ui-select__menu button span { flex: 1; }
.ui-select__menu .ui-select__check { opacity: 0; color: currentColor; }
.ui-select__menu button.is-selected .ui-select__option-icon { color: var(--violet); background: #fff; }
.ui-select__menu button.is-selected .ui-select__check { opacity: 1; color: #fff; }

.ui-date__head { grid-template-columns: 34px 1fr 34px; }
.ui-date__selectors { display: flex; align-items: center; justify-content: center; gap: 4px; }
.ui-date__selectors button {
  width: auto;
  height: 32px;
  padding: 0 8px;
  color: #27273b;
  background: transparent;
  text-transform: capitalize;
  font: 600 12px Poppins;
}
.ui-date__selectors button:hover { color: var(--violet); background: #e6f0f7; }
.ui-date__months,
.ui-date__years { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; padding: 5px 0 8px; }
.ui-date__months button,
.ui-date__years button { min-height: 42px; border: 0; border-radius: 9px; background: #f7f7fb; color: #343447; cursor: pointer; text-transform: capitalize; font: 500 11px Poppins; }
.ui-date__months button:hover,
.ui-date__years button:hover { color: var(--violet); background: #e5eff6; }
.ui-date__months button.is-selected,
.ui-date__years button.is-selected { color: #fff; background: var(--violet); }
.ui-date__year-range { display: grid; grid-template-columns: 32px 1fr 32px; align-items: center; gap: 6px; margin-bottom: 7px; }
.ui-date__year-range strong { text-align: center; color: #6d6e80; font: 600 10px Poppins; }
.ui-date__year-range button { display: grid; place-items: center; width: 32px; height: 30px; border: 0; border-radius: 8px; color: var(--violet); background: #e9f2f8; cursor: pointer; }

.vehicle-feature-editor { display: grid; gap: 10px; padding: 13px; border: 1px solid #e1dfed; border-radius: 12px; background: #f9f9fc; }
.vehicle-feature-editor__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.vehicle-feature-editor__head strong { display: block; color: #303044; font: 600 11px Poppins; }
.vehicle-feature-editor__head small { display: block; margin-top: 2px; color: #858697; font-size: 10px; }
#v-feature-rows { display: grid; gap: 8px; }
.vehicle-feature-row { display: grid; grid-template-columns: minmax(0, 1fr) 150px 34px; align-items: end; gap: 8px; padding: 10px; border: 1px solid #e5e4ee; border-radius: 10px; background: #fff; }
.vehicle-feature-row label { margin: 0; }
.vehicle-feature-row input { min-height: 38px!important; }
.vehicle-feature-row .ui-control__trigger { height: 38px; }
.vehicle-feature-row .entity-action { margin-bottom: 2px; }

@media (max-width: 720px) {
  .booking-detail__content { padding: 18px; }
  .vehicle-feature-row { grid-template-columns: 1fr 42px; }
  .vehicle-feature-row label:first-child { grid-column: 1 / -1; }
}

.route-toggle {
  width: fit-content;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 9px 0;
  padding: 7px 10px;
  border: 1px solid #e2e0ed;
  border-radius: 10px;
  background: #fff;
  color: #4f5060;
  cursor: pointer;
  box-shadow: 0 5px 14px rgba(24, 22, 68, .05);
  font: 500 10px Poppins;
  transition: border-color .18s ease, box-shadow .18s ease, color .18s ease;
}
.route-toggle:hover { color: var(--violet); border-color: #adc4d6; box-shadow: 0 8px 18px rgba(0, 39, 89, .09); }
.route-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.route-toggle__icon { display: grid; place-items: center; width: 25px; height: 25px; border-radius: 7px; color: var(--violet); background: #e6f0f7; }
.route-toggle__switch { position: relative; width: 30px; height: 17px; margin-left: 2px; border-radius: 999px; background: #c7c8d2; transition: background-color .18s ease; }
.route-toggle__switch::after { content: ""; position: absolute; top: 2px; left: 2px; width: 13px; height: 13px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,.22); transition: transform .18s ease; }
.route-toggle input:checked ~ .route-toggle__switch { background: var(--violet); }
.route-toggle input:checked ~ .route-toggle__switch::after { transform: translateX(13px); }
.route-toggle:focus-within { border-color: var(--violet); box-shadow: 0 0 0 4px rgba(0, 39, 89, .10); }

/* Flight finder */
.flight-search-modal { padding: 22px; background: rgba(9, 14, 31, .62); backdrop-filter: blur(7px); }
.flight-search-panel {
  width: min(820px, 100%);
  max-height: min(760px, calc(100vh - 44px));
  overflow-y: auto;
  padding: 0;
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 20px;
  background: #f7f8fc;
  box-shadow: 0 35px 95px rgba(5, 10, 28, .36);
}
.flight-search-header { position: sticky; top: 0; z-index: 8; display: grid; grid-template-columns: 52px 1fr 40px; align-items: center; gap: 14px; padding: 22px 26px; border-bottom: 1px solid #e5e6ef; background: rgba(255,255,255,.96); backdrop-filter: blur(10px); }
.flight-search-header__icon { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 15px; color: #fff; background: linear-gradient(145deg, var(--blue), var(--violet)); box-shadow: 0 10px 22px rgba(0, 39, 89, .22); font-size: 21px; }
.flight-search-header span { color: var(--pink); font: 600 9px Poppins; letter-spacing: 1.5px; }
.flight-search-header h2 { margin: 2px 0 1px; text-align: left; font: 600 25px Poppins; }
.flight-search-header p { margin: 0; color: #747687; font-size: 11px; }
.flight-search-close { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #e0e1e9; border-radius: 11px; color: #56586a; background: #fff; cursor: pointer; transition: .18s ease; }
.flight-search-close:hover { color: #fff; border-color: var(--pink); background: var(--pink); transform: rotate(4deg); }
.flight-search-context { display: grid; grid-template-columns: 1fr 230px; gap: 13px; padding: 22px 26px 13px; }
.flight-context-field { position: relative; min-width: 0; padding: 13px 15px; border: 1px solid #e0e1eb; border-radius: 13px; background: #fff; }
.flight-context-field:focus-within { border-color: var(--violet); box-shadow: 0 0 0 4px rgba(0,39,89,.08); }
.flight-context-field > span,
.flight-search-query label > span { display: block; margin-bottom: 6px; color: #77798b; font: 600 9px Poppins; letter-spacing: .45px; text-transform: uppercase; }
.flight-context-field strong { display: flex; align-items: center; gap: 8px; min-width: 0; color: #27283a; font: 500 13px Poppins; }
.flight-context-field strong i { color: var(--violet); }
.flight-context-field strong small { margin-left: auto; padding: 3px 7px; border-radius: 999px; color: var(--violet); background: #e5eff6; font: 600 9px Poppins; }
.flight-date-control > input { position: absolute; width: 1px!important; height: 1px; opacity: 0; pointer-events: none; }
#flight-date-trigger { width: 100%; height: 28px; display: flex; align-items: center; gap: 8px; padding: 0; border: 0; color: #2d2e42; background: transparent; cursor: pointer; text-align: left; }
#flight-date-trigger:focus,
#flight-date-trigger:focus-visible { outline: 0; box-shadow: none; }
#flight-date-trigger > i:first-child { color: var(--violet); }
#flight-date-trigger b { flex: 1; font: 500 13px Poppins; }
#flight-date-trigger > i:last-child { color: var(--violet); font-size: 11px; transition: transform .18s; }
#flight-date-trigger.is-open > i:last-child { transform: rotate(180deg); }
#flight-date-popover { position: absolute; z-index: 20; top: calc(100% + 7px); right: 0; width: 292px; padding: 14px; border: 1px solid #e1dfed; border-radius: 14px; background: #fff; box-shadow: 0 20px 48px rgba(0, 39, 89, .2); }
#flight-date-popover header { display: grid; grid-template-columns: 34px 1fr 34px; align-items: center; gap: 6px; margin-bottom: 10px; }
#flight-date-popover header strong { justify-content: center; text-transform: capitalize; font: 600 12px Poppins; }
#flight-date-popover header button { display: grid; place-items: center; width: 34px; height: 34px; border: 0; border-radius: 9px; color: var(--violet); background: #eaf2f8; cursor: pointer; }
#flight-date-popover header button:disabled { color: #b9b7c9; background: #f6f5fa; cursor: not-allowed; opacity: .6; }
.flight-date-range { display: grid; grid-template-columns: 24px 1fr; align-items: center; gap: 0 8px; margin: 0 0 11px; padding: 9px 10px; border: 1px solid #d5e3ed; border-radius: 10px; color: #55566a; background: #f4f8fb; font: 500 9px Poppins; }
.flight-date-range i { grid-row: 1 / 3; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; color: var(--violet); background: #e3edf5; font-size: 11px; }
.flight-date-range b { color: #27283a; font: 600 9px Poppins; }
.flight-date-week,.flight-date-days { display: grid; grid-template-columns: repeat(7,1fr); gap: 3px; }
.flight-date-week span { color: #9192a0; text-align: center; font: 600 8px Poppins; }
.flight-date-days { margin-top: 5px; }
.flight-date-days > span,.flight-date-days button { aspect-ratio: 1; }
.flight-date-days button { border: 0; border-radius: 8px; color: #313244; background: transparent; cursor: pointer; font: 500 10px Poppins; }
.flight-date-days button:hover { color: var(--violet); background: #eaf2f8; }
.flight-date-days button:disabled { color: #c3c3cd; background: transparent; cursor: not-allowed; opacity: .42; }
.flight-date-days button:disabled:hover { color: #c3c3cd; background: transparent; }
.flight-date-days button.is-today:not(.is-selected) { color: var(--violet); box-shadow: inset 0 0 0 1px #8faec7; font-weight: 700; }
.flight-date-days button.is-selected { color: #fff; background: var(--violet); box-shadow: 0 5px 12px rgba(0,39,89,.24); }
.flight-search-query { display: grid; grid-template-columns: minmax(0,1fr) 170px 150px; align-items: end; gap: 11px; padding: 0 26px 20px; }
.flight-search-query label { min-width: 0; }
.flight-search-query label > div { height: 44px; display: flex; align-items: center; gap: 9px; padding: 0 12px; border: 1px solid #dcddea; border-radius: 11px; background: #fff; transition: .18s ease; }
.flight-search-query label > div:focus-within { border-color: var(--violet); box-shadow: 0 0 0 4px rgba(0,39,89,.09); }
.flight-search-query label i { color: var(--violet); }
.flight-search-query input { min-width: 0; height: auto; padding: 0!important; border: 0!important; border-radius: 0!important; outline: 0!important; background: transparent!important; box-shadow: none!important; appearance: none; -webkit-appearance: none; font: 500 13px Poppins!important; }
.flight-search-query input:focus,
.flight-search-query input:focus-visible { border: 0!important; outline: 0!important; box-shadow: none!important; }
.flight-search-query label small { color: #8a8b98; font: 500 10px Poppins; }
.flight-search-query .btn { height: 44px; border-radius: 11px; }
.flight-results-title { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 15px 26px; border-top: 1px solid #e5e6ef; border-bottom: 1px solid #e5e6ef; background: #fff; }
.flight-results-title strong { display: block; font: 600 13px Poppins; }
.flight-results-title span { color: #7c7d8e; font-size: 10px; }
.flight-results-title > i { color: #198647; font-size: 18px; }
.flight-results-list { display: grid; gap: 10px; padding: 16px 26px 26px; }
.flight-search-empty { min-height: 150px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; padding: 24px; border: 1px dashed #cddde9; border-radius: 14px; color: #77798b; background: #f6f9fc; text-align: center; }
.flight-search-empty > i { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: var(--violet); background: #e7f0f7; font-size: 18px; }
.flight-search-empty strong { color: #303142; font: 600 13px Poppins; }
.flight-search-empty span { max-width: 390px; font-size: 10px; line-height: 1.5; }
.flight-search-empty.is-loading { min-height: 110px; }
.flight-result { min-height: 94px; display: grid; grid-template-columns: 170px 1fr 90px; align-items: center; gap: 18px; margin: 0; padding: 14px 16px; border: 1px solid #e2e3ec; border-radius: 14px; background: #fff; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.flight-result:hover { border-color: #adc4d6; background: #fff; box-shadow: 0 12px 26px rgba(0,39,89,.10); transform: translateY(-2px); }
.flight-result__airline { display: flex!important; align-items: center; gap: 10px; margin: 0!important; }
.flight-result__airline > i { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border-radius: 11px; color: #fff; background: var(--violet); }
.flight-result__airline span { display: block!important; margin: 0!important; }
.flight-result__airline strong { display: block; font: 600 16px Poppins; }
.flight-result__airline small { display: block; color: #77798b; font-size: 10px; }
.flight-result__route { display: grid!important; grid-template-columns: 1fr 28px 1fr!important; align-items: center; gap: 9px!important; margin: 0!important; }
.flight-result__route > span { display: grid!important; grid-template-columns: auto 1fr!important; gap: 1px 7px!important; margin: 0!important; }
.flight-result__route small { color: #999aa6; font: 600 8px Poppins; text-transform: uppercase; }
.flight-result__route b { grid-row: 1 / 3; font: 600 17px Poppins; }
.flight-result__route em { color: #555768; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; font-style: normal; }
.flight-result__route > i { color: var(--violet); text-align: center; }
.flight-result__select { display: flex!important; align-items: center; justify-content: flex-end; gap: 6px!important; margin: 0!important; color: var(--violet); font: 600 10px Poppins; }

@media(max-width:700px){
  .flight-search-modal{padding:8px}.flight-search-panel{max-height:calc(100vh - 16px);border-radius:14px}.flight-search-header{grid-template-columns:42px 1fr 36px;padding:17px}.flight-search-header__icon{width:42px;height:42px}.flight-search-header h2{font-size:20px}.flight-search-header p{display:none}.flight-search-context,.flight-search-query{grid-template-columns:1fr;padding-left:17px;padding-right:17px}.flight-search-query{padding-bottom:17px}.flight-results-title{padding:13px 17px}.flight-results-list{padding:12px 17px 20px}.flight-result{grid-template-columns:1fr;gap:10px}.flight-result__select{justify-content:flex-start}.flight-result__route{grid-template-columns:1fr 24px 1fr!important}#flight-date-popover{right:auto;left:0;width:min(292px,calc(100vw - 50px))}
}

/* Passenger details and record actions */
.checkout-header { position: relative; }
.checkout-header nav { padding-right: 180px; }
.checkout-language { position: absolute; z-index: 4; right: 26px; top: 50%; display: flex; gap: 6px; transform: translateY(-50%); }
.checkout-language button { display: flex; align-items: center; gap: 6px; min-width: 54px; height: 36px; padding: 5px 8px; border: 1px solid rgba(255,255,255,.22); border-radius: 10px; color: #cbd6ed; background: rgba(255,255,255,.08); cursor: pointer; font: 600 10px Poppins; transition: .18s ease; }
.checkout-language button:hover { color: #fff; background: rgba(255,255,255,.15); }
.checkout-language button.is-active { color: #001f4d; border-color: #fff; background: #fff; box-shadow: 0 6px 16px rgba(0,0,0,.15); }
.checkout-language img { width: 20px; height: 14px; margin: 0; object-fit: cover; filter: none; }
.checkout-form > h1 { margin-bottom: 18px; }
.passenger-data-card { padding: 22px; border: 1px solid #e1e3eb; border-radius: 16px; background: #fff; box-shadow: 0 12px 32px rgba(0,39,89,.07); }
.passenger-data-card > header { display: flex; align-items: center; gap: 12px; margin-bottom: 19px; padding-bottom: 15px; border-bottom: 1px solid #ececf2; }
.passenger-data-card > header > span { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 11px; color: #fff; background: linear-gradient(145deg,var(--blue),var(--violet)); }
.passenger-data-card > header h3 { margin: 0; font-size: 16px; }
.passenger-data-card > header p { margin: 2px 0 0; color: #797b8b; font-size: 10px; }
.passenger-data-card .form-grid,
.passenger-data-card .phone-row { gap: 16px; margin-bottom: 15px; }
.checkout-field { display: block; min-width: 0; margin-bottom: 15px; }
.form-grid .checkout-field,
.phone-row .checkout-field { margin-bottom: 0; }
.checkout-field > span { display: block; margin: 0 0 6px 2px; color: #4d4e5d; font: 600 10px Poppins; }
.checkout-field > div { height: 48px; display: flex; align-items: center; gap: 10px; padding: 0 13px; border: 1px solid #dcdde7; border-radius: 11px; background: #fbfbfd; transition: .18s ease; }
.checkout-field > div:hover { border-color: #b7c9d7; background: #fff; }
.checkout-field > div:focus-within { border-color: var(--violet); background: #fff; box-shadow: 0 0 0 4px rgba(0,39,89,.09); }
.checkout-field > div > i { flex: 0 0 auto; color: var(--violet); font-size: 13px; }
.checkout-field input { min-width: 0; height: auto!important; padding: 0!important; border: 0!important; border-radius: 0!important; background: transparent!important; box-shadow: none!important; font-size: 13px!important; }
.passenger-data-card .phone-row { grid-template-columns: 175px 1fr; }
.checkout-consent { display: flex; align-items: flex-start; gap: 11px; margin-top: 18px; padding: 13px 14px; border-radius: 11px; background: #eef5fa; cursor: pointer; }
.checkout-consent > input { position: absolute; width: 1px!important; height: 1px!important; padding: 0!important; opacity: 0; pointer-events: none; }
.checkout-consent__box { display: grid; place-items: center; flex: 0 0 20px; width: 20px; height: 20px; margin-top: 1px; border: 1px solid #a5bdd0; border-radius: 6px; color: transparent; background: #fff; transition: .18s; }
.checkout-consent input:checked + .checkout-consent__box { color: #fff; border-color: var(--violet); background: var(--violet); }
.checkout-consent strong { display: block; color: #333447; font: 500 11px Poppins; }
.checkout-consent small { display: block; margin-top: 3px; color: #767889; font-size: 9px; line-height: 1.45; }
.checkout-consent:focus-within { box-shadow: 0 0 0 4px rgba(0,39,89,.09); }

.admin-table td.row-actions { display: table-cell; min-width: 62px; padding: 10px!important; text-align: center; vertical-align: middle; }
.admin-table td.row-actions .admin-view { width: 36px; height: 36px; margin: auto; border: 1px solid #ccecf1; border-radius: 11px; color: #087d91; background: #e9f8fb; box-shadow: none; }
.admin-table td.row-actions .admin-view:hover { color: #fff; border-color: var(--violet); background: var(--violet); box-shadow: 0 7px 16px rgba(0,39,89,.22); transform: translateY(-1px); }

@media(max-width:780px){
  .checkout-header nav{padding-right:18px}.checkout-language{position:static;grid-column:1/-1;justify-content:center;padding:0 0 14px;transform:none}.passenger-data-card{padding:17px}.passenger-data-card .phone-row{grid-template-columns:1fr}.checkout-shell{width:min(100% - 28px,1120px)}
}

/* Booking selector, dynamic allocation and landing content alignment */
.booking .passenger-trigger {
  height: 36px;
  width: 100%;
  padding: 0 11px;
  border: 1px solid #d9d9e5!important;
  border-radius: 8px;
  background: #fff;
  box-shadow: inset 0 0 0 1px transparent;
  cursor: pointer;
}
.booking .passenger-trigger:hover { border-color: #98b2c7!important; background: #fbfdff; }
.booking .passenger-trigger[aria-expanded="true"] { border-color: var(--violet)!important; box-shadow: 0 0 0 3px rgba(0,39,89,.12); }
.booking .passenger-trigger::after { content: "\F282"; margin-left: auto; color: var(--violet); font-family: "bootstrap-icons"; font-size: 9px; transition: transform .18s; }
.booking .passenger-trigger[aria-expanded="true"]::after { transform: rotate(180deg); }
.booking__row--details .field,.booking__row--details .booking__search { height: 42px; }
.booking__row--details { grid-template-columns: .92fr .92fr 1.28fr .88fr; }
.passenger-trigger .field__copy > small { display: none; }
.passenger-summary { display: grid; min-width: 0; gap: 2px; text-align: left; line-height: 1.05; }
.passenger-summary b { overflow: hidden; color: #252637; text-overflow: ellipsis; white-space: nowrap; font: 600 10px Poppins; }
.passenger-summary em { display: flex; min-width: 0; gap: 3px 7px; overflow: hidden; color: #686b7c; white-space: nowrap; font: normal 7px Poppins; }
.passenger-summary em span { position: relative; flex: 0 0 auto; }
.passenger-summary em span + span::before { content: "·"; position: absolute; left: -5px; color: #a5a7b3; }
.passenger-popover { width: 310px; padding: 10px; border: 1px solid #e3e1ef; box-shadow: 0 20px 48px rgba(25,22,70,.18); }
.passenger-popover > div { grid-template-columns: minmax(0,1fr) 34px 24px 34px; padding: 14px 10px; }
.passenger-popover > div strong { font: 600 14px Poppins; }
.passenger-popover > div small { margin-top: 2px; color: #7b7d8c; font: 400 9px Poppins; }
.passenger-count-input { grid-column: 3; grid-row: 1/span 2; align-self: center; width: 38px; height: 32px; padding: 0!important; border: 1px solid #d6d9e5!important; border-radius: 9px!important; color: #252637; background: #f8f9fc; outline: 0; text-align: center; font: 600 13px Poppins!important; transition: border-color .16s, box-shadow .16s, background .16s; }
.passenger-count-input:hover { border-color: #9ab2c5!important; background: #fff; }
.passenger-count-input:focus { border-color: var(--violet)!important; background: #fff; box-shadow: 0 0 0 3px rgba(0,39,89,.1)!important; }
.passenger-popover button { width: 32px; height: 32px; border-color: #b8cbd9; font-size: 16px; }

.calendar__day.is-today { position: relative; }
.calendar__day.is-today::after { content: attr(data-tooltip); position: absolute; z-index: 5; left: 50%; bottom: calc(100% + 5px); padding: 3px 6px; border-radius: 5px; color: #fff; background: #242536; opacity: 0; pointer-events: none; transform: translate(-50%,3px); transition: .15s; white-space: nowrap; font: 500 7px Poppins; }
.calendar__day.is-today:hover::after,.calendar__day.is-today:focus-visible::after { opacity: 1; transform: translate(-50%,0); }
.calendar__day{display:grid;width:27px;height:27px;justify-self:center;place-items:center;padding:0;line-height:1}
.calendar__legend{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:9px;padding-top:8px;border-top:1px solid #edf0f4;color:#687587;font:500 8px Poppins}
.calendar__legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.calendar__legend i{display:block;width:10px;height:10px;border-radius:50%}
.calendar__legend-today{border:1.5px solid var(--pink);background:#fff}
.calendar__legend-selected{border:1.5px solid var(--blue);background:var(--blue)}

.flight-fallback-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 9px; }
.flight-fallback-actions .btn { min-height: 36px; padding: 8px 13px; border-radius: 9px; font-size: 9px; }
.flight-manual-hint { display: inline-flex; align-items: center; gap: 7px; margin-top: 8px; padding: 7px 10px; border-radius: 8px; color: #815100; background: #fff4dc; font: 500 10px Poppins; }

.allocation-units { position: relative; display: inline-flex; align-items: center; gap: 5px; margin-left: auto; padding: 5px 8px; border: 1px solid #c8d9e6; border-radius: 9px; color: var(--violet); background: #eef5fa; cursor: help; font: 500 10px Poppins; }
.allocation-units > i:first-child { color: var(--violet); margin: 0; }
.allocation-units > i:last-child { color: #657d91; margin: 0 0 0 2px; font-size: 9px; }
.allocation-units::after { content: attr(data-tooltip); position: absolute; z-index: 20; right: 0; bottom: calc(100% + 8px); width: 210px; padding: 9px 11px; border-radius: 9px; color: #fff; background: #25243a; box-shadow: 0 10px 24px rgba(0,0,0,.2); opacity: 0; pointer-events: none; transform: translateY(4px); transition: .16s; font: 500 10px/1.4 Poppins; }
.allocation-units:hover::after,.allocation-units:focus::after { opacity: 1; transform: none; }
.trip-choice__head h3 > i:first-child { display: inline-grid; place-items: center; width: 27px; height: 27px; margin-right: 3px; border-radius: 8px; color: var(--violet); background: #e7f0f7; font-size: 13px; }

.services .section-heading { display: flex; flex-direction: column; align-items: center; }
.services .service-grid { grid-template-columns: repeat(auto-fit,minmax(300px,1fr)); }
.services .services-kicker { order: 0; margin: 0 0 18px; color: var(--pink); }
.services .section-heading h2 { order: 1; margin-bottom: 22px; font-size: 42px; }
.services .section-heading > p:last-child { order: 2; margin: 0; color: #262626; font-size: 15px; }
.service-card__rating { justify-content: flex-start; }
.other-card > div { height: 250px; }
.other-card h3 { margin: 18px 20px 12px; font-size: 18px; }
.other-card p { min-height: 58px; margin: 0 20px 18px; font-size: 13px; }
.trust-banner { height: 410px; background-image: url('assets/driver.webp'); background-position: center 44%; background-size: cover; }
.trust-banner__shade { background: rgba(26,38,52,.66); }
.trust-banner__content { position: relative; z-index: 1; width: min(1160px,calc(100% - 50px)); text-align: center; }
.trust-banner__content h2 { max-width: 1160px; margin: 0 auto 26px; font: 600 38px/1.25 Poppins; }
.trust-banner__content .btn { min-width: 164px; border-radius: 7px; }

@media(max-width:700px){
  .services .section-heading h2{font-size:30px}.services .section-heading>p:last-child{font-size:12px}.other-card>div{height:210px}.trust-banner{height:390px;background-attachment:scroll}.trust-banner__content h2{font-size:25px}.allocation-units::after{right:auto;left:0}.passenger-popover{left:18px;right:18px;width:auto}
}
@media(max-width:900px){.booking__row--details{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.booking__row--details{grid-template-columns:1fr}}

/* Stable, in-place fare recalculation */
.trip-options {
  position: relative;
  overflow-anchor: none;
  transition: min-height .22s ease;
}
.trip-options > .trip-choice,
.trip-options > .allocation-summary {
  transition: opacity .18s ease, transform .18s ease, filter .18s ease;
}
.trip-options.is-updating {
  pointer-events: none;
}
.trip-options.is-updating > .trip-choice,
.trip-options.is-updating > .allocation-summary {
  opacity: .58;
  filter: saturate(.82);
  transform: scale(.997);
}
.trip-update-status {
  position: absolute;
  z-index: 30;
  top: 14px;
  right: 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid #c8d9e6;
  border-radius: 999px;
  color: var(--violet);
  background: rgba(255,255,255,.96);
  box-shadow: 0 9px 24px rgba(0,39,89,.14);
  font: 600 10px Poppins;
  animation: tripStatusIn .16s ease both;
}
.trip-options.has-just-updated > .trip-choice,
.trip-options.has-just-updated > .allocation-summary {
  animation: tripContentIn .22s ease both;
}
@keyframes tripStatusIn { from { opacity: 0; transform: translateY(-4px); } }
@keyframes tripContentIn { from { opacity: .7; transform: translateY(3px); } }
@media (prefers-reduced-motion: reduce) {
  .trip-options,
  .trip-options > .trip-choice,
  .trip-options > .allocation-summary,
  .trip-update-status { transition: none; animation: none; }
}

/* Hotfix 2026-07-23: progressive directional reveals and review carousel. */
html,body{overflow-x:hidden}
.reveal{opacity:1;transform:none}
.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(42px);transition:opacity .78s cubic-bezier(.2,.65,.3,1),transform .78s cubic-bezier(.2,.65,.3,1)}
.motion-ready .reveal--left:not(.is-visible),.motion-ready .reveal.from-left:not(.is-visible){transform:translateX(-54px)}
.motion-ready .reveal--right:not(.is-visible){transform:translateX(54px)}
.motion-ready .reveal--scale:not(.is-visible){transform:scale(.94)}
.motion-ready .reveal--fade:not(.is-visible){transform:none}
.reveal.is-visible{opacity:1;transform:none}
.reveal--delay-1{transition-delay:.1s!important}
.reveal--delay-2{transition-delay:.2s!important}
.reveal--delay-3{transition-delay:.3s!important}
.booking.reveal{transform:translateX(-50%)}
.motion-ready .booking.reveal:not(.is-visible){transform:translate(-50%,42px)}
.booking.reveal.is-visible{transform:translateX(-50%)}

.trust-reviews__layout{grid-template-columns:220px minmax(0,1fr)}
.trust-reviews__summary{align-self:stretch}
.trust-reviews__selection{display:inline-flex;align-items:center;gap:7px;padding:9px 10px;border-radius:8px;background:#eef8f2;color:#166f3d!important;font:600 10px Poppins}
.trust-reviews__selection i{font-size:14px}
.reviews-carousel{display:grid;min-width:0;gap:14px}
.trust-reviews .reviews{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 28px)/3);grid-template-columns:none;gap:14px;margin:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}
.trust-reviews .reviews::-webkit-scrollbar{display:none}
.trust-review-card{scroll-snap-align:start;min-height:220px}
.trust-review-card p{font-size:11px!important}
.trust-avatar--green{background:#27834b}
.trust-avatar--violet{background:#7050a2}
.trust-avatar--pink{background:#c53c79}
.trust-avatar--navy{background:#173b68}
.trust-avatar--teal{background:#087f78}
.trust-avatar--gold{background:#a86a08}
.trust-avatar--blue{background:#2967b2}
.reviews-carousel__controls{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.reviews-carousel__controls button{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d8e0e8;border-radius:50%;background:#fff;color:var(--blue);cursor:pointer;transition:transform .2s,border-color .2s,color .2s,background .2s}
.reviews-carousel__controls button:hover:not(:disabled){transform:translateY(-2px);border-color:var(--pink);background:var(--pink);color:#fff}
.reviews-carousel__controls button:disabled{cursor:not-allowed;opacity:.35}
.reviews-carousel__controls span{min-width:68px;color:#6d7583!important;text-align:center;font:600 10px Poppins;letter-spacing:0!important}
.trust-reviews__source{justify-content:flex-start}

@media(max-width:900px){
  .trust-reviews .reviews{grid-auto-columns:calc((100% - 14px)/2)}
}
@media(max-width:620px){
  .trust-reviews__summary{grid-template-columns:auto 1fr}
  .trust-reviews__selection{grid-column:1/-1}
  .trust-reviews .reviews{grid-auto-columns:100%}
  .reviews-carousel__controls{justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .motion-ready .reveal:not(.is-visible){opacity:1;transform:none;transition:none}
  .reviews{scroll-behavior:auto}
}

/* Hourly private service and final control alignment */
.checkout-home { display: grid; align-self: stretch; place-items: center; min-width: 184px; background: #001f4d; }
.checkout-home img { margin: auto!important; }
.payment-home { display: inline-grid; place-items: center; border-radius: 12px; transition: background .18s, transform .18s; }
.payment-home:hover { background: #eef5fa; transform: translateY(-2px); }
.payment-home img { width: 140px; margin: 0 auto 18px; }

.passenger-popover > div { grid-template-columns: minmax(0,1fr) 34px 40px 34px; }
.passenger-count-input { display: block; width: 38px!important; margin: 0 auto; line-height: 30px; }

.booking { width: 790px; }
.booking__tabs { width: 100%; grid-template-columns: repeat(3,minmax(0,1fr)); }
.booking__tab { min-width: 0; white-space: nowrap; }
.booking__tab span { overflow: hidden; text-overflow: ellipsis; }
.booking.is-hourly { padding-bottom: 15px; }
.booking.is-hourly .booking__row--places { grid-template-columns: 1fr; }
.booking.is-hourly .booking-origin { grid-column: 1/-1; }
.booking.is-hourly .booking__row--details { grid-template-columns: .9fr .9fr .9fr 1.15fr .8fr; }
.booking.is-hourly .booking-origin .field { height: 42px; }
.hourly-time-control { position: relative; min-width: 0; }
.hourly-time-trigger { width: 100%; border: 1px solid #d9d9e5; cursor: pointer; }
.hourly-time-trigger strong { color: #252637; font: 600 11px Poppins; }
.hourly-time-trigger > .bi-chevron-down { margin-left: auto; color: var(--violet); font-size: 9px; transition: transform .18s; }
.hourly-time-trigger[aria-expanded="true"] > .bi-chevron-down { transform: rotate(180deg); }
.hourly-time-popover { position: absolute; z-index: 150; top: calc(100% + 7px); left: 0; display: block; width: 270px; max-height: 285px; overflow: auto; padding: 10px; border: 1px solid #e0e4ec; border-radius: 12px; background: #fff; box-shadow: 0 18px 42px rgba(0,39,89,.2); }
.hourly-time-popover[hidden] { display: none; }
.hourly-time-popover button { display: flex; align-items: center; justify-content: center; gap: 5px; min-height: 34px; border: 1px solid transparent; border-radius: 8px; color: #45485a; background: #f6f8fb; cursor: pointer; font: 500 10px Poppins; }
.hourly-time-popover button:hover { color: var(--violet); border-color: #c8d9e6; background: #eef5fa; }
.hourly-time-popover button.is-selected { color: #fff; background: var(--violet); }
.booking.is-hourly .booking__row--details .field { min-height: 58px; }
.hourly-duration-control .field { padding: 5px 8px; gap: 6px; }
.hourly-duration-control .field__icon { display: none; }
.hourly-duration-control .field__copy { gap: 3px; align-items: center; }
.hourly-duration-control .field__copy > .hourly-stepper { display: grid; grid-template-columns: 32px 42px 32px; align-items: center; gap: 0; border: 1px solid #cfdae7; border-radius: 8px; background: #f6f9fc; overflow: hidden; }
.hourly-duration-control button { display: grid; place-items: center; width: 32px; height: 30px; padding: 0; border: 0; border-radius: 0; color: var(--blue); background: transparent; cursor: pointer; font: 500 20px/1 Arial,sans-serif; touch-action: manipulation; transition: background .15s; }
.hourly-duration-control button:hover { background: #e5eef7; }
.hourly-duration-control button:active { background: #d5e3f1; }
.hourly-duration-control button:focus-visible { outline: 2px solid var(--blue); outline-offset: -3px; }
.hourly-duration-value { display: flex; align-items: center; justify-content: center; gap: 2px; height: 30px; border-inline: 1px solid #dce4ee; background: #fff; }
.hourly-duration-value > span { color: #607086; font: 500 11px/1 Poppins,Arial,sans-serif; }
.hourly-duration-control #hourly-hours { width: 23px; min-width: 0; height: 30px; padding: 0; text-align: center; color: var(--blue); font: 600 13px/1 Poppins,Arial,sans-serif; font-variant-numeric: tabular-nums; box-sizing: border-box; }
.hourly-booking-hint { display: flex; align-items: center; justify-content: center; gap: 7px; margin: 10px 0 0; color: #657184; font: 500 9px Poppins; }
.hourly-booking-hint i { color: var(--violet); }
.trip-choice.is-unavailable { border: 1px dashed #e1b5bd; opacity: .72; }
.trip-choice.is-unavailable .alloc-row button { cursor: not-allowed; opacity: .45; }
.trip-choice__availability { display: flex; align-items: center; gap: 7px; margin: 10px 0 0; padding: 7px 9px; border-radius: 8px; color: #a42e49; background: #fff0f3; font: 500 10px Poppins; }

.hourly-config-editor { margin: 16px 0; padding: 16px; border: 1px solid #dce7f0; border-radius: 14px; background: linear-gradient(145deg,#f8fbfd,#fff); }
.hourly-config-editor > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 15px; padding-bottom: 12px; border-bottom: 1px solid #e5edf3; }
.hourly-config-editor > header > div { display: flex; align-items: center; gap: 10px; }
.hourly-config-editor > header > div > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; color: #fff; background: var(--violet); }
.hourly-config-editor header strong,.hourly-config-editor header small { display: block; }
.hourly-config-editor header strong { font: 600 13px Poppins; }
.hourly-config-editor header small { margin-top: 2px; color: #73798a; font-size: 10px; }
.hourly-config-editor > p { display: flex; gap: 7px; margin: 8px 0 0; color: #697183; font-size: 10px; }
.switch-check { display: flex!important; align-items: center; gap: 7px; cursor: pointer; }
.switch-check input { position: absolute; opacity: 0; pointer-events: none; }
.switch-check span { position: relative; width: 34px; height: 18px; border-radius: 999px; background: #b8bfca; transition: .18s; }
.switch-check span::after { content: ""; position: absolute; top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 50%; background: #fff; transition: .18s; }
.switch-check input:checked + span { background: var(--violet); }
.switch-check input:checked + span::after { transform: translateX(16px); }
.switch-check b { font: 600 10px Poppins; }
.hourly-vat { margin-bottom: 7px!important; }
.hourly-price { display: flex; align-items: center; gap: 5px; margin: 8px 0 0!important; padding: 7px 8px; border-radius: 7px; color: #17496e; background: #eef5fa; font-size: 9px!important; }
.hourly-price.is-off { color: #777; background: #f3f3f5; }

.hourly-checkout-card { display: grid; grid-template-columns: 1.5fr 1fr 1fr .75fr; gap: 10px; margin: 14px 0 22px; }
.hourly-checkout-card > div { min-width: 0; padding: 14px; border: 1px solid #dce5ee; border-radius: 12px; background: #f8fbfd; }
.hourly-checkout-card span { display: grid; place-items: center; width: 30px; height: 30px; margin-bottom: 10px; border-radius: 8px; color: var(--violet); background: #e7f0f7; }
.hourly-checkout-card small,.hourly-checkout-card strong { display: block; }
.hourly-checkout-card small { color: #7c8190; font: 500 9px Poppins; }
.hourly-checkout-card strong { margin-top: 4px; color: #202433; font: 600 11px/1.35 Poppins; }
.hourly-admin-service { display: grid; grid-template-columns: 1.4fr 1fr 1fr .7fr; gap: 10px; margin-bottom: 14px; }
.hourly-admin-service > div { padding: 12px; border: 1px solid #dce7f0; border-radius: 10px; background: #f8fbfd; }
.hourly-admin-service span,.hourly-admin-service strong { display: block; }
.hourly-admin-service span { color: #6e7585; font-size: 10px; }
.hourly-admin-service span i { margin-right: 5px; color: var(--violet); }
.hourly-admin-service strong { margin-top: 5px; font: 600 12px Poppins; }

@media(max-width:900px){
  .booking{width:680px}.booking.is-hourly .booking__row--details{grid-template-columns:1fr 1fr}.hourly-checkout-card,.hourly-admin-service{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .booking__tabs{grid-template-columns:1fr}.booking__tab{padding:8px}.booking.is-hourly .booking__row--details{grid-template-columns:1fr}.hourly-time-popover{position:fixed;left:50%;top:50%;width:min(330px,calc(100vw - 30px));transform:translate(-50%,-50%)}.hourly-checkout-card,.hourly-admin-service{grid-template-columns:1fr}.checkout-home{min-width:0;padding:12px}
}

/* Operations, drivers and hourly dispatch */
.field.is-invalid { border-color: #e62462!important; box-shadow: 0 0 0 3px rgba(230,36,98,.12)!important; }
.hourly-dispatch-feedback { width: 100%; display: flex; align-items: center; gap: 9px; margin-top: 9px; padding: 10px 12px; border: 1px solid #d8e4ee; border-radius: 10px; background: #f8fbfd; color: #33465a; font: 500 9px/1.45 Poppins; }
.hourly-dispatch-feedback[hidden] { display: none; }
.hourly-dispatch-feedback > i { flex: 0 0 auto; font-size: 15px; }
.hourly-dispatch-feedback span { display: grid; gap: 2px; }
.hourly-dispatch-feedback strong { color: #18263a; font-size: 10px; }
.hourly-dispatch-feedback.is-ok > i { color: #14934b; }
.hourly-dispatch-feedback.is-warning { border-color: #ffd0df; background: #fff5f8; }
.hourly-dispatch-feedback.is-warning > i { color: var(--pink); }
.hourly-dispatch-feedback button { margin-left: auto; padding: 7px 10px; border: 0; border-radius: 8px; color: #fff; background: var(--pink); cursor: pointer; white-space: nowrap; font: 600 9px Poppins; }
.hourly-price-explainer { grid-column: 1/-1; display: flex; align-items: flex-start; gap: 12px; margin-top: 8px; padding: 14px 15px; border: 1px solid #d9e5ef; border-radius: 12px; background: #f7fbfe; }
.hourly-price-explainer > i { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; border-radius: 9px; color: #fff; background: var(--blue); }
.hourly-price-explainer strong { display: block; color: #18263a; font: 600 12px Poppins; }.hourly-price-explainer p { margin: 4px 0 0; color: #667184; font-size: 10px; line-height: 1.5; }

.hourly-config-editor { padding: 20px; }
.hourly-config-editor .form-row { gap: 14px; margin-bottom: 14px; }
.hourly-config-editor label { min-width: 0; line-height: 1.35; }
.hourly-config-editor input { margin-top: 7px!important; }

.status-stack,.row-action-stack { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.row-action-stack .admin-view { margin: 0!important; }
.admin-table td.row-actions { min-width: 62px; }
.notification-form,.notification-form > *,.booking-detail__content,.admin-subpanel { min-width: 0; }
.notification-form textarea,.notification-form input { overflow-wrap: anywhere; }
.notification-form + .admin-table td { max-width: 220px; overflow-wrap: anywhere; word-break: break-word; }
.booking-detail__content { overflow-x: hidden; }
.service-line span:nth-of-type(1) { background: var(--blue); }
.service-line span:nth-of-type(2) { background: var(--pink); }
.assign-form { padding: 22px; }
.assign-form fieldset { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: end; gap: 16px; padding: 20px; }
.assign-form legend,.assign-form__hint { grid-column: 1/-1; }
.assign-form__hint { display: flex; gap: 8px; margin: -5px 0 2px; color: #626b79; font-size: 10px; }
.assign-form > fieldset > .btn { min-height: 42px; }
.assign-form .ui-control__popover { z-index: 240; }
.no-show-confirmation{grid-column:1/-1;padding:14px;border:1px solid #ebc98b;border-radius:11px;background:#fff8e8}.no-show-confirmation>div{display:flex;align-items:flex-start;gap:9px}.no-show-confirmation>div>i{color:#ad6b00;font-size:18px}.no-show-confirmation strong,.no-show-confirmation small{display:block}.no-show-confirmation strong{font:600 10px Poppins}.no-show-confirmation small{margin-top:2px;color:#706249;font-size:9px}.no-show-confirmation>label{margin-top:11px}.no-show-confirmation .checkline{display:flex;align-items:flex-start;gap:8px}

.driver-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin: 18px 0; }
.driver-kpis article { display: grid; grid-template-columns: 40px 1fr auto; align-items: center; gap: 10px; min-width: 0; padding: 15px; border: 1px solid #e2e3ee; border-radius: 13px; background: #fbfbfe; }
.driver-kpis article > i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; color: #fff; background: var(--blue); }
.driver-kpis span { color: #656779; font-size: 10px; }.driver-kpis strong { font: 600 22px Poppins; }
.driver-admin-grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(390px,.75fr); gap: 20px; }
.driver-list-panel,.driver-forms > form { padding: 22px; border: 1px solid #e2e3ee; border-radius: 15px; background: #fff; }
.driver-forms { display: grid; gap: 18px; align-content: start; }
.driver-list { display: grid; gap: 10px; }
.driver-list article { display: grid; grid-template-columns: 42px minmax(0,1fr) auto auto; align-items: center; gap: 13px; padding: 14px; border: 1px solid #e8e8f0; border-radius: 12px; background: #fbfbfd; }
.driver-avatar { display: grid; place-items: center; width: 42px; height: 42px; overflow:hidden; border-radius: 11px; color: #fff; background: var(--blue); }
.driver-avatar img { width:100%;height:100%;object-fit:cover; }
.driver-photo-uploader{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:11px;border:1px solid #e0e2ec;border-radius:12px;background:#fafbfe}
.driver-photo-preview{display:grid;place-items:center;width:72px;height:72px;overflow:hidden;border-radius:14px;color:#fff;background:var(--blue);font-size:25px}
.driver-photo-preview img{width:100%;height:100%;object-fit:cover}.driver-photo-uploader>div{display:grid;gap:8px;min-width:0}
.driver-list article > div:nth-child(2) { min-width: 0; }.driver-list strong,.driver-list small,.driver-list em { display: block; }
.driver-list small { margin-top: 2px; color: #77798a; font-size: 10px; }.driver-list em { margin-top: 6px; color: var(--blue); font: 500 9px Poppins; }.driver-list em i { margin-right: 5px; color: var(--pink); }
.driver-list .entity-actions { display: flex; gap: 6px; }
.dispatch-editor > p { margin: 0 0 14px; color: #727486; font-size: 10px; line-height: 1.5; }
.field-help { position: relative; display: inline-grid; place-items: center; width: 18px; height: 18px; margin-left: 4px; padding: 0; border: 0; border-radius: 50%; color: var(--blue); background: transparent; cursor: help; vertical-align: middle; }
.field-help:hover,.field-help:focus { color: var(--pink); outline: 0; }
.field-help::after { content: attr(data-tooltip); position: absolute; z-index: 400; left: 50%; bottom: calc(100% + 8px); width: 230px; padding: 9px 11px; border-radius: 9px; color: #fff; background: #17243a; box-shadow: 0 10px 28px rgba(0,0,0,.2); opacity: 0; pointer-events: none; transform: translate(-50%,5px); transition: .16s; font: 500 9px/1.45 Poppins; text-align: left; }
.field-help:hover::after,.field-help:focus::after { opacity: 1; transform: translate(-50%,0); }
.zone-vehicle-prices { display: grid; gap: 10px; margin: 12px 0; padding: 13px; border: 1px solid #e1e3ec; border-radius: 12px; background: #fafbfe; }
.zone-vehicle-prices > header { display: flex; align-items: center; gap: 5px; padding-bottom: 9px; border-bottom: 1px solid #e8e9f0; }
.zone-vehicle-price { display:grid;gap:9px;padding:11px;border:1px solid #e4e6ef;border-radius:11px;background:#fff; }
.zone-vehicle-name{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.zone-vehicle-name span{display:flex;align-items:center;gap:7px;min-width:0;font:600 10px Poppins}.zone-vehicle-name span i{color:var(--pink)}.zone-vehicle-name small{color:#6e7283;font-size:8.5px;text-align:right}
.zone-global-check{display:flex!important;flex-direction:row!important;align-items:center;gap:7px!important;padding:7px 9px;border-radius:8px;background:#f1f5f9;font:500 9px Poppins!important;cursor:pointer}.zone-global-check input{width:15px!important;height:15px;margin:0!important;accent-color:var(--blue)}
.zone-price-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.zone-price-fields>label:last-child{grid-column:1/-1}.zone-vehicle-price.is-global .zone-price-fields{opacity:.45}.zone-vehicle-price.is-global .zone-vehicle-name small{color:#16823b;font-weight:600}
.unit-validity { display: block; margin-top: 6px; color: #77798a; white-space: nowrap; font-size: 9px; }
.settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 18px; }.settings-panel { min-width: 0; padding: 22px; border: 1px solid #e1e3ec; border-radius: 15px; background: #fff; }.settings-panel > h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 15px; }.settings-panel > h3 i { color: var(--pink); }.settings-panel > p { color: #6f7282; font-size: 10px; line-height: 1.55; }.backup-panel { grid-column: 1/-1; }.role-note { display: grid; grid-template-columns: 120px 1fr; gap: 6px 12px; margin-bottom: 16px; padding: 12px; border-radius: 10px; background: #f5f7fb; font-size: 10px; }.user-list { display: grid; gap: 8px; }.user-list article { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid #e8e9f0; border-radius: 10px; }.user-list article > i { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 9px; color: #fff; background: var(--blue); }.user-list small { display: block; color: #77798a; }.user-form { margin-top: 18px; padding-top: 16px; border-top: 1px solid #e7e8ef; }.user-form h4 { margin: 0 0 12px; }.tab-toolbar { flex-wrap: wrap; gap: 8px; align-items: center; }.btn--whatsapp { color: #fff!important; border-color: #18a957!important; background: #18a957!important; }

@media(max-width:1050px){.driver-admin-grid{grid-template-columns:1fr}.assign-form fieldset{grid-template-columns:1fr 1fr}.assign-form__hint,.assign-form legend{grid-column:1/-1}}
@media(max-width:650px){.driver-kpis{grid-template-columns:1fr}.driver-list article{grid-template-columns:42px 1fr}.driver-list article > .status-pill,.driver-list article > .entity-actions{grid-column:2}.assign-form fieldset{grid-template-columns:1fr}}
@media(max-width:900px){.settings-grid{grid-template-columns:1fr}.backup-panel{grid-column:auto}.zone-vehicle-price{grid-template-columns:1fr 1fr}.zone-vehicle-price>span{grid-column:1/-1}}

/* Configuration layout, permissions and zone positioning */
.admin-page .admin-shell { width: min(1460px, calc(100% - 32px)); }
.admin-content,.admin-card,.settings-admin,.settings-grid,.settings-panel { min-width: 0; max-width: 100%; box-sizing: border-box; }
.settings-grid { grid-template-columns: minmax(0,1.08fr) minmax(380px,.92fr); gap: 22px; }
.settings-grid > :only-child { grid-column: 1 / -1; }
.settings-panel { overflow: visible; padding: 24px; }
.settings-panel > p { margin: -5px 0 18px; }
.settings-panel .fleet-editor-form,.settings-panel.fleet-editor-form,.user-edit-form { gap: 20px; }
.settings-panel .fleet-editor-form label,.settings-panel.fleet-editor-form label,.user-edit-form label { gap: 7px; }
.settings-panel .form-row,.user-edit-form .form-row { gap: 16px; }
.settings-panel fieldset,.user-edit-form fieldset { min-width: 0; margin: 2px 0; padding: 16px; border: 1px solid #e2e4ef; border-radius: 12px; }
.settings-panel fieldset legend,.user-edit-form fieldset legend { padding: 0 7px; color: #25273b; font: 600 12px Poppins; }
.settings-panel fieldset > p { margin: 0 0 12px; color: #737687; font-size: 10px; }
.settings-panel input,.settings-panel textarea,.settings-panel .ui-control { min-width: 0; max-width: 100%; box-sizing: border-box; }
.field-help::after { left: -8px; right: auto; width: min(250px, calc(100vw - 40px)); transform: translateY(5px); }
.form-row > label:last-child .field-help::after { left: auto; right: -8px; }
.field-help:hover::after,.field-help:focus::after { transform: translateY(0); }
.user-list article.user-card { display: block; padding: 0; overflow: hidden; }
.user-card__summary { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 12px; }
.user-card__summary > i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; color: #fff; background: var(--blue); }
.user-card__summary .entity-actions { display: flex; align-items: center; gap: 7px; }
.user-edit-form { display: flex; flex-direction: column; padding: 18px; border-top: 1px solid #e5e7f0; background: #fafbfe; }
.user-edit-form[hidden] { display: none; }
.permission-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.permission-option { display: grid!important; grid-template-columns: 18px 30px minmax(0,1fr); align-items: start; gap: 8px!important; min-width: 0; padding: 10px; border: 1px solid #e4e6f0; border-radius: 10px; background: #fff; cursor: pointer; }
.permission-option:hover { border-color: #aabed1; background: #f6f9fc; }
.permission-option > input { width: 16px!important; height: 16px; margin: 5px 0 0; accent-color: var(--violet); }
.permission-option > i { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 8px; color: var(--blue); background: #edf3f8; }
.permission-option span { min-width: 0; }
.permission-option strong,.permission-option small { display: block; overflow-wrap: anywhere; }
.permission-option strong { font: 600 10px Poppins; }
.permission-option small { margin-top: 2px; color: #777a8a; font: 400 9px/1.35 Poppins; }
.zone-map-actions { flex-wrap: wrap; }
.zone-reference-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin-bottom:8px}.zone-reference-search label{min-width:0}.zone-reference-search label span{display:block;margin-bottom:5px;color:#444;font:600 10px Poppins}.zone-reference-search input{display:block;width:100%;height:42px;box-sizing:border-box;border:1px solid #dedee8;border-radius:9px;padding:0 12px;outline:0;font:400 12px Hind}.zone-reference-search input:focus{border-color:var(--violet);box-shadow:0 0 0 3px #00275916}.zone-reference-search .btn{min-height:42px}.zone-reference-results{position:relative;top:auto;margin-bottom:8px}.zone-reference-status{margin:0 2px 7px!important}.zone-reference-marker{background:transparent!important;border:0!important}.zone-reference-marker span{display:grid;place-items:center;width:30px;height:36px;border:3px solid #fff;border-radius:15px 15px 15px 2px;color:#fff;background:#16823b;box-shadow:0 5px 15px rgba(0,39,89,.28);transform:rotate(-45deg)}.zone-reference-marker i{font-size:15px;transform:rotate(45deg)}.zone-reference-tooltip{color:#0b6930!important}
.zone-reference-note{display:flex;align-items:flex-start;gap:7px;margin:-1px 2px 8px;padding:8px 10px;border:1px solid #ded5f5;border-radius:8px;color:#50378a;background:#f7f4ff;font:500 9px/1.45 Poppins}.zone-reference-note i{margin-top:1px;color:#6f42c1}.zone-reference-marker span{background:#6f42c1;transition:opacity .16s ease,filter .16s ease}.zone-reference-marker:hover span{opacity:.24;filter:saturate(.55)}.zone-reference-tooltip{color:#5b2ca0!important}
.zone-google-reference{overflow:hidden;height:460px;border:1px solid #d8dce9;border-radius:11px;background:#f7f8fb}.zone-google-reference[hidden]{display:none}.zone-google-reference header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #dedfed;background:#fff}.zone-google-reference header div{min-width:0}.zone-google-reference header span,.zone-google-reference header strong,.zone-google-reference header small{display:block}.zone-google-reference header span{color:#6f42c1;font:700 8px Poppins;letter-spacing:1px}.zone-google-reference header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 12px Poppins}.zone-google-reference header small{margin-top:2px;color:#686c7c;font:400 8.5px Poppins}.zone-google-reference iframe{display:block;width:100%;height:calc(100% - 67px);border:0;background:#eef1f5}
.zone-map-help { display: flex; align-items: flex-start; gap: 7px; min-height: 20px; margin: 8px 2px 0; color: #676a7b; font-size: 10px; line-height: 1.45; }
#zone-map.is-placing-zone { cursor: crosshair; }
#zone-map.is-moving-zone .leaflet-interactive { cursor: grab; }
#zone-map.is-moving-zone .leaflet-interactive:active { cursor: grabbing; }
.zone-center-handle { display: grid!important; place-items: center; width: 58px!important; height: 58px!important; background: transparent!important; border: 0!important; touch-action: none; pointer-events:none!important; }
.zone-center-handle span { position: relative; display: grid; place-items: center; width: 36px; height: 36px; border: 3px solid #fff; border-radius: 12px; color: #fff; background: var(--pink); box-shadow: 0 5px 16px rgba(0,39,89,.3); cursor: move; pointer-events:auto; touch-action:none; }
.zone-center-handle span::after { content: ''; position: absolute; inset: -8px; border: 1px dashed var(--pink); border-radius: 15px; }
.zone-center-handle span::before{content:'MOVER';position:absolute;left:50%;bottom:calc(100% + 8px);padding:3px 6px;border-radius:5px;color:#fff;background:#002759;transform:translateX(-50%);font:600 7px Poppins;letter-spacing:.4px;white-space:nowrap;box-shadow:0 4px 10px rgba(0,39,89,.22)}
.integration-status{display:grid;gap:9px}.integration-status article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;border:1px solid #e4e6ef;border-radius:11px;background:#fafbfe}.integration-status article>i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#fff;background:var(--blue)}.integration-status strong,.integration-status span{display:block}.integration-status span{margin-top:2px;color:#737687;font-size:9px}.integration-status b{padding:5px 8px;border-radius:999px;color:#9a5b00;background:#fff3d7;font:600 8px Poppins}.integration-status b.is-ready{color:#137333;background:#e7f6ec}.secret-policy{display:flex;gap:9px;margin-top:13px;padding:11px;border-radius:10px;color:#536174;background:#eef4f8}.secret-policy p{margin:0;font-size:9.5px;line-height:1.5}.secret-policy code{font-size:8.5px}

@media(max-width:1180px){
  .settings-grid{grid-template-columns:1fr}.backup-panel{grid-column:auto}
  .admin-page .admin-shell{width:min(1120px,calc(100% - 24px))}
}
@media(max-width:680px){
  .permission-grid{grid-template-columns:1fr}
  .user-card__summary{grid-template-columns:38px minmax(0,1fr)}
  .user-card__summary .entity-actions{grid-column:2}
  .settings-panel{padding:18px}
}

/* Final operational polish: compact settings, visual dispatch and previews */
.operations-alert,.operations-clear{width:100%;margin:2px 0 15px;padding:13px;border:1px solid #ffd0df;border-radius:12px;background:#fff5f8;color:#202638}
.operations-alert{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;cursor:pointer}
.operations-alert>i:first-child{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#fff;background:var(--pink)}
.operations-alert span,.operations-alert strong,.operations-alert small{display:block}.operations-alert small{margin-top:2px;color:#6f7483;font-size:9px}.operations-clear{display:flex;align-items:center;gap:8px;color:#137333;border-color:#ccebd6;background:#f0faf3;font-size:10px}.operations-clear i{font-size:17px}

#driver-form>.form-row:first-of-type{align-items:end}
#driver-form>.form-row:first-of-type label{min-width:0}
#driver-form>.form-row:first-of-type .field-help{vertical-align:-4px}
.dispatch-map-picker{display:grid;gap:9px;margin:4px 0 15px;padding:12px;border:1px solid #dce6ee;border-radius:12px;background:#f8fbfd}
.dispatch-map-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px}
.dispatch-map-search .btn{min-height:42px}.dispatch-map-picker #dispatch-base-map{height:250px;border:1px solid #d8e1e9;border-radius:10px;overflow:hidden}
.dispatch-map-picker>p{display:flex;gap:7px;margin:0;color:#637084;font-size:9px}

.settings-section-nav{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0;padding:7px;border:1px solid #e0e4ed;border-radius:14px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.settings-section-nav button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:43px;border:0;border-radius:9px;color:#3e4655;background:transparent;cursor:pointer;font:600 10px Poppins}
.settings-section-nav button i{color:var(--pink);font-size:15px}.settings-section-nav button.is-active{color:#fff;background:var(--blue);box-shadow:0 8px 18px rgba(0,39,89,.16)}.settings-section-nav button.is-active i{color:#fff}
.settings-panel[hidden]{display:none!important}
.field-explanation{display:block;margin-top:6px;color:#667385;font:500 9px/1.4 Poppins}
.fx-reference{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid #dbe5ed;border-radius:11px;background:#f6fafc}
.fx-reference>i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#fff;background:var(--blue)}.fx-reference strong,.fx-reference small{display:block}.fx-reference small{margin-top:2px;color:#697487;font-size:9px}.fx-reference .btn{padding:10px 12px}
.fx-config-row label.is-readonly input{color:#334154;background:#f1f5f8;cursor:not-allowed}.pricing-rule-note{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #dfe7ee;border-radius:11px;color:#4d5a6b;background:#f8fafc}.pricing-rule-note>i{margin-top:2px;color:var(--violet)}.pricing-rule-note strong,.pricing-rule-note small{display:block}.pricing-rule-note strong{font:600 10px/1.45 Poppins}.pricing-rule-note small{margin-top:3px;color:#6b7586;font:500 9px/1.5 Poppins}
.pricing-disclaimer-toggle{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:start!important;gap:10px!important;padding:12px!important;border:1px solid #dfe7ee;border-radius:11px;background:#f8fafc}.pricing-disclaimer-toggle>input{margin-top:2px}.pricing-disclaimer-toggle strong,.pricing-disclaimer-toggle small{display:block}.pricing-disclaimer-toggle strong{font:600 10px/1.45 Poppins}.pricing-disclaimer-toggle small{margin-top:3px;color:#6b7586;font:500 9px/1.5 Poppins}
.company-brand-editor,.company-contact-editor{display:grid;gap:12px;margin:2px 0 16px;padding:14px;border:1px solid #e2e5ed;border-radius:12px;background:#fafbfe}
.company-logo-editor{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:14px}.company-logo-editor>img{width:110px;height:74px;object-fit:contain;padding:7px;border:1px solid #e0e3eb;border-radius:10px;background:#fff}.company-logo-editor>div{display:grid;gap:7px;min-width:0}.company-logo-editor small{color:#6f7483;font-size:9px}.company-logo-editor input{font-size:9px!important}
.company-contact-editor>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.company-contact-editor header strong,.company-contact-editor header small{display:block}.company-contact-editor header small{color:#6f7483;font-size:9px}.company-contact-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(110px,.8fr) minmax(145px,1fr) auto 34px;align-items:end;gap:8px;padding:10px;border:1px solid #e5e7ee;border-radius:10px;background:#fff}.company-contact-row label{min-width:0}.company-contact-row .contact-primary{display:flex;flex-direction:row;align-items:center;gap:6px;height:42px;white-space:nowrap}.company-contact-row .contact-primary input{width:16px;height:16px;margin:0;accent-color:var(--blue)}
.integration-refresh{margin-top:13px}.integration-checked{display:block;margin-top:7px;color:#777b88;font-size:8.5px}

.currency-reference{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:7px;margin-top:13px;padding:10px;border:1px solid #dfe7ee;border-radius:10px;background:#f7fafc}.currency-reference>i{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;color:#fff;background:#17496e}.currency-reference span,.currency-reference strong,.currency-reference small{font-size:9px}.currency-reference small{grid-column:2/-1;color:#6b7586}.currency-reference strong{color:#17496e}
.currency-reference .currency-disclaimer{margin-top:2px;padding-top:6px;border-top:1px solid #e2e9ef;color:#586577;line-height:1.45}
.checkout-test-dialog{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:rgba(16,24,40,.62);backdrop-filter:blur(4px)}.checkout-test-dialog>section{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;width:min(540px,100%);padding:24px;border-radius:18px;background:#fff;box-shadow:0 28px 70px rgba(0,0,0,.28)}.checkout-test-dialog>section>span{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;color:#fff;background:var(--blue);font-size:22px}.checkout-test-dialog small{color:var(--pink);font:600 9px Poppins;letter-spacing:1px}.checkout-test-dialog h2{margin:3px 0 8px;font:600 19px Poppins}.checkout-test-dialog p{margin:0;color:#677286;font-size:11px;line-height:1.55}.checkout-test-dialog footer{grid-column:1/-1;display:flex;justify-content:flex-end;gap:9px;margin-top:6px}

.whatsapp-preview-dialog{position:fixed;z-index:1050;inset:0;display:grid;place-items:center;padding:18px;background:rgba(12,18,27,.72);backdrop-filter:blur(5px)}.whatsapp-preview-dialog>section{width:min(680px,100%);max-height:calc(100vh - 36px);overflow:auto;border-radius:18px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.35)}.whatsapp-preview-dialog>section>header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e7e9ee}.whatsapp-preview-dialog header small{color:#149b55;font:600 9px Poppins;letter-spacing:.7px}.whatsapp-preview-dialog header h2{margin:3px 0 0;font:600 17px Poppins}.whatsapp-phone{width:min(390px,calc(100% - 34px));margin:20px auto;border:8px solid #18212b;border-radius:25px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.22)}.whatsapp-phone__top{display:grid;grid-template-columns:40px minmax(0,1fr) 22px 22px;align-items:center;gap:8px;padding:10px;color:#fff;background:#075e54}.whatsapp-phone__top img{width:40px;height:40px;object-fit:contain;padding:3px;border-radius:50%;background:#fff}.whatsapp-phone__top strong,.whatsapp-phone__top small{display:block}.whatsapp-phone__top small{opacity:.8;font-size:8px}.whatsapp-phone__chat{min-height:330px;padding:18px 12px;background-color:#efeae2;background-image:radial-gradient(#00000009 1px,transparent 1px);background-size:12px 12px}.whatsapp-encryption{width:82%;margin:0 auto 25px;padding:7px;border-radius:7px;color:#766e5e;background:#fff3c5;text-align:center;font-size:8px}.whatsapp-bubble{position:relative;width:82%;margin-left:auto;padding:10px 10px 18px;border-radius:8px 0 8px 8px;color:#202a32;background:#d9fdd3;box-shadow:0 1px 2px #0002;font:400 11px/1.5 Arial}.whatsapp-bubble>a{display:flex;align-items:center;gap:9px;margin:10px 0 2px;padding:9px;border-radius:7px;color:#223;background:#c7edc2}.whatsapp-bubble>a>i{color:#d92d20;font-size:25px}.whatsapp-bubble>a strong,.whatsapp-bubble>a small{display:block}.whatsapp-bubble time{position:absolute;right:7px;bottom:4px;color:#66756c;font-size:7px}.whatsapp-bubble time i{color:#34b7f1}.whatsapp-preview-dialog>section>footer{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:16px 20px;border-top:1px solid #e7e9ee}.whatsapp-preview-dialog footer p{flex:1;margin:0;color:#687284;font-size:9px}
.whatsapp-bubble__link{display:grid;gap:3px;margin-top:8px}.whatsapp-bubble__link span{font-weight:600}.whatsapp-bubble__link a{color:#0077a8;text-decoration:underline;overflow-wrap:anywhere;word-break:break-word}
.whatsapp-link-mode{display:flex;align-items:center;justify-content:center;gap:6px;padding:12px 18px 0}.whatsapp-link-mode>span{margin-right:4px;color:#687284;font:600 9px Poppins;text-transform:uppercase;letter-spacing:.5px}.whatsapp-link-mode button{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:7px 10px;border:1px solid #d8e2e9;border-radius:9px;color:#425466;background:#fff;cursor:pointer;font:600 9px Poppins}.whatsapp-link-mode button:hover{background:#eef5fa}.whatsapp-link-mode button.is-active{border-color:#18a957;color:#fff;background:#18a957;box-shadow:0 6px 14px rgba(24,169,87,.18)}
.whatsapp-preview-dialog{padding:12px}
.whatsapp-preview-dialog>section{display:flex;flex-direction:column;max-height:calc(100dvh - 24px);overflow:visible}
.whatsapp-preview-dialog>section>header{flex:none;padding:12px 18px}
.whatsapp-preview-options{flex:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;padding:10px 16px}
.whatsapp-preview-options .whatsapp-link-mode{padding:0}
.whatsapp-voucher-language{display:flex;align-items:center;gap:10px;color:#425466;font:600 10px Poppins}
.whatsapp-voucher-language>.ui-control{width:165px;flex:none}
.whatsapp-preview-dialog .whatsapp-phone{flex:0 1 auto;min-height:0;display:flex;flex-direction:column;width:min(430px,calc(100% - 32px));margin:2px auto 12px;box-shadow:0 8px 20px #0002}
.whatsapp-phone__top{flex:none;padding:7px 10px}
.whatsapp-preview-dialog .whatsapp-phone__chat{min-height:0;overflow:auto;padding:12px;max-height:300px}
.whatsapp-encryption{margin-bottom:12px;padding:5px}
.whatsapp-preview-dialog .whatsapp-bubble{width:90%;box-sizing:border-box}
.whatsapp-bubble__link a{overflow-wrap:anywhere}
.whatsapp-preview-dialog>section>footer{flex:none;padding:10px 16px}
@media(max-width:560px){.whatsapp-preview-options .whatsapp-link-mode{flex-direction:row;flex-wrap:wrap;align-items:center}.whatsapp-preview-options .whatsapp-link-mode button{width:auto}.whatsapp-preview-dialog>section>footer{flex-direction:row;flex-wrap:wrap}.whatsapp-preview-dialog footer p{flex-basis:100%}.whatsapp-preview-dialog header h2{font-size:14px}}
@media(max-width:560px){.whatsapp-link-mode{align-items:stretch;flex-direction:column}.whatsapp-link-mode>span{margin:0}.whatsapp-link-mode button{justify-content:center;width:100%}}
.consent-status{display:flex;align-items:center;gap:8px;margin-top:9px;padding:10px;border-radius:9px;color:#687182;background:#f1f3f6}.consent-status.is-approved{color:#137333;background:#eaf7ee}.consent-status span,.consent-status strong,.consent-status small{display:block}.consent-status small{font-size:8px}

.fleet-editor-form,.fleet-editor-form label,.form-row>*{min-width:0}.fleet-editor-form input,.fleet-editor-form textarea,.fleet-editor-form select,.fleet-editor-form .ui-control{width:100%;max-width:100%;box-sizing:border-box}.form-row,.form-row--3{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}.unit-availability-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.hourly-config-editor>header>div{flex:1;min-width:0}.hourly-config-editor>header>div>span{flex:0 0 36px}.hourly-config-editor>header>div>div{min-width:0}

@media(max-width:820px){
  .settings-section-nav{grid-template-columns:repeat(2,1fr);position:static}
  .company-contact-row{grid-template-columns:1fr 1fr}.company-contact-row label:nth-child(3){grid-column:1/-1}.company-contact-row .contact-primary{height:auto}.company-logo-editor{grid-template-columns:1fr}.company-logo-editor>img{width:140px}.fx-reference{grid-template-columns:38px 1fr}.fx-reference .btn{grid-column:1/-1}.dispatch-map-search{grid-template-columns:1fr}.whatsapp-preview-dialog>section>footer{align-items:stretch;flex-direction:column}.whatsapp-preview-dialog footer p{margin-bottom:5px}
}
@media(max-width:520px){
  .company-contact-row,.unit-availability-row{grid-template-columns:1fr!important}.company-contact-row label:nth-child(3){grid-column:auto}.checkout-test-dialog>section{grid-template-columns:1fr}.checkout-test-dialog footer{flex-direction:column}.dispatch-map-picker #dispatch-base-map{height:220px}
}

/* Access directory, hourly editor and dispatch-map interaction */
.hourly-config-editor > header > div {
  flex: 1 1 auto;
  width: auto;
}
.hourly-config-editor .switch-check {
  flex: 0 0 auto;
  flex-direction: row;
  width: auto;
  min-width: max-content;
  margin-left: auto;
}
.hourly-config-editor .switch-check span {
  flex: 0 0 34px;
}

.users-settings {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(390px,.9fr);
  gap: 16px 22px;
}
.users-settings > h3,
.users-settings > p,
.users-settings > .role-note {
  grid-column: 1 / -1;
}
.users-settings > .role-note {
  margin-bottom: 4px;
}
.users-settings > .user-form,
.users-settings > .user-list {
  align-self: start;
  min-width: 0;
  margin: 0;
  padding: 20px;
  border: 1px solid #e2e5ed;
  border-radius: 13px;
  background: #fafbfe;
}
.users-settings > .user-form {
  grid-column: 1;
  grid-row: 4;
  border-top: 1px solid #e2e5ed;
}
.users-settings > .user-list {
  grid-column: 2;
  grid-row: 4;
}
.user-list__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 4px;
  padding: 0 1px 12px;
  border-bottom: 1px solid #e3e6ee;
}
.user-list__header strong,
.user-list__header small {
  display: block;
}
.user-list__header strong {
  color: #1f2634;
  font: 600 14px Poppins;
}
.user-list__header small {
  margin-top: 3px;
  color: #73798a;
  font-size: 9px;
}
.user-list__header > span {
  display: grid;
  place-items: center;
  min-width: 30px;
  height: 30px;
  padding: 0 8px;
  border-radius: 999px;
  color: #fff;
  background: var(--blue);
  font: 600 10px Poppins;
}
.user-card--system {
  border-color: #cfe3d5!important;
  background: #f7fcf8;
}
.user-card__notice {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin: 0;
  padding: 0 13px 13px 62px;
  color: #607067;
  font: 400 9px/1.45 Poppins;
}
.user-card__notice i {
  color: #16823b;
}

.dispatch-map-picker {
  position: relative;
}
.dispatch-map-results {
  z-index: 500;
  display: grid;
  max-height: 250px;
  overflow: auto;
  padding: 5px;
  border: 1px solid #cfdbe5;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(0,39,89,.13);
}
.dispatch-map-results[hidden] {
  display: none;
}
.dispatch-map-result {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr) 20px;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 9px;
  border: 0;
  border-radius: 8px;
  color: #273346;
  background: transparent;
  text-align: left;
  cursor: pointer;
}
.dispatch-map-result:hover,
.dispatch-map-result:focus {
  outline: 0;
  background: #eef5fa;
}
.dispatch-map-result > i:first-child {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 9px;
  color: #fff;
  background: var(--blue);
}
.dispatch-map-result > i:last-child {
  color: #8b94a3;
}
.dispatch-map-result strong,
.dispatch-map-result small {
  display: block;
}
.dispatch-map-result strong {
  font: 600 10px Poppins;
}
.dispatch-map-result small {
  margin-top: 2px;
  color: #747d8d;
  font: 400 8.5px/1.35 Poppins;
}
.dispatch-map-status {
  min-height: 15px;
  margin: -2px 2px 0!important;
  color: #5d6d80!important;
  font: 500 9px/1.4 Poppins!important;
}
.dispatch-map-picker #dispatch-base-map {
  cursor: grab;
  touch-action: none;
  overscroll-behavior: contain;
}
.dispatch-map-picker #dispatch-base-map:active {
  cursor: grabbing;
}
.dispatch-map-help {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  color: #637084;
  font-size: 9px;
}
.dispatch-map-help span {
  display: flex;
  align-items: center;
  gap: 6px;
}
.dispatch-map-help i {
  color: var(--blue);
}
.dispatch-base-marker {
  display: grid!important;
  place-items: center;
  border: 0!important;
  background: transparent!important;
  touch-action: none!important;
  cursor: grab!important;
  user-select: none;
  -webkit-user-drag: none;
}
.dispatch-base-marker span {
  position: relative;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 3px solid #fff;
  border-radius: 50% 50% 50% 1px;
  color: #fff;
  background: var(--blue);
  box-shadow: 0 8px 20px rgba(0,39,89,.32);
  transform: rotate(-45deg);
  pointer-events: none;
}
.dispatch-base-marker i {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  line-height: 1;
  font-size: 18px;
  transform: rotate(45deg);
  transform-origin: center;
}
.dispatch-base-marker i::before { display: block; line-height: 1; }
.dispatch-base-marker:active,
.is-interacting-dispatch-map .dispatch-base-marker {
  cursor: grabbing!important;
}
.is-interacting-dispatch-map,
.is-interacting-dispatch-map body {
  overscroll-behavior: none;
}

@media(max-width:1050px) {
  .users-settings {
    grid-template-columns: 1fr;
  }
  .users-settings > .user-form {
    grid-column: 1;
    grid-row: 4;
  }
  .users-settings > .user-list {
    grid-column: 1;
    grid-row: 5;
  }
}
@media(max-width:560px) {
  .hourly-config-editor > header {
    align-items: flex-start;
    flex-direction: column;
  }
  .hourly-config-editor .switch-check {
    margin-left: 46px;
  }
  .users-settings > .user-form,
  .users-settings > .user-list {
    padding: 15px;
  }
  .user-card__notice {
    padding-left: 13px;
  }
  .dispatch-map-help {
    display: grid;
  }
}

/* Unified passenger, flight and payment checkout */
.checkout-section-card {
  margin-top: 22px;
  padding: 22px;
  border: 1px solid #e1e3eb;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(0,39,89,.07);
}
.checkout-section-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; padding-bottom: 15px; border-bottom: 1px solid #ececf2; }
.checkout-section-heading > span { display: grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; border-radius: 11px; color: #fff; background: var(--blue); box-shadow: 0 8px 18px rgba(0,39,89,.18); }
.checkout-section-heading h3 { margin: 0; font-size: 16px; }
.checkout-section-heading p { margin: 2px 0 0; color: #797b8b; font-size: 10px; }
.flight-leg-card { padding: 18px; border: 1px solid #e5e5ee; border-radius: 14px; background: #fbfbfd; }
.flight-leg-card + .flight-leg-card { margin-top: 14px; }
.flight-leg-title { display: flex; align-items: center; gap: 10px; margin-bottom: 15px; }
.flight-leg-title > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; color: var(--violet); background: #e7f0f7; }
.flight-leg-title small { display: block; color: var(--pink); font: 600 9px Poppins; letter-spacing: .7px; text-transform: uppercase; }
.flight-leg-title h3 { margin: 2px 0 0; font-size: 13px; }
.flight-details-card .flight-row { grid-template-columns: minmax(220px,1fr) 132px 144px; align-items: end; gap: 10px; }
.flight-number-field > span { display: block; margin: 0 0 6px 2px; color: #4d4e5d; font: 600 10px Poppins; }
.flight-number-field > div { height: 46px; display: flex; align-items: center; gap: 10px; padding: 0 13px; border: 1px solid #dcdde7; border-radius: 11px; background: #fff; transition: .18s ease; }
.flight-number-field > div:focus-within { border-color: var(--violet); box-shadow: 0 0 0 4px rgba(0,39,89,.09); }
.flight-number-field i { color: var(--violet); }
.flight-number-field input { height: auto!important; min-width: 0; padding: 0!important; border: 0!important; border-radius: 0!important; background: transparent!important; box-shadow: none!important; }
.flight-action { height: 46px; justify-content: center; border: 1px solid #dcd9ed; border-radius: 11px; color: #294c6b; background: #fff; }
.flight-action:hover { color: var(--violet); border-color: #a3bccf; background: #f4f8fb; }
.flight-action--primary { color: #fff; border-color: var(--violet); background: var(--violet); }
.flight-action--primary:hover { color: #fff; background: var(--blue); }
.flight-schedule-grid { gap: 12px; margin: 14px 0 0; }
.flight-schedule-grid .checkout-field { margin: 0; }
.flight-schedule-grid .checkout-field > div { background: #fff; }
.checkout-date-control { position: relative; }
.checkout-date-control > input { display: none!important; }
.checkout-date-trigger { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; height: 100%; padding: 0; border: 0; outline: 0; color: #252638; background: transparent; cursor: pointer; text-align: left; }
.checkout-date-trigger b { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 500 13px Poppins; }
.checkout-date-trigger > i { color: var(--violet); font-size: 11px; transition: transform .18s ease; }
.checkout-date-trigger.is-open > i { transform: rotate(180deg); }
.checkout-date-popover { position: absolute; z-index: 45; top: calc(100% + 8px); left: -14px; width: 304px; padding: 14px; border: 1px solid #e1dfed; border-radius: 14px; background: #fff; box-shadow: 0 20px 48px rgba(0,39,89,.20); }
.checkout-date-popover[hidden] { display: none; }
.checkout-date-popover header { display: grid; grid-template-columns: 34px 1fr 34px; align-items: center; gap: 6px; margin-bottom: 11px; }
.checkout-date-popover header > button { display: grid; place-items: center; width: 34px; height: 34px; border: 0; border-radius: 9px; color: var(--violet); background: #e9f2f8; cursor: pointer; }
.checkout-date-popover header > button:hover { color: #fff; background: var(--violet); }
.checkout-date-selectors { display: flex; align-items: center; justify-content: center; gap: 4px; }
.checkout-date-selectors button { height: 32px; padding: 0 8px; border: 0; border-radius: 8px; color: #27273b; background: transparent; cursor: pointer; text-transform: capitalize; font: 600 12px Poppins; }
.checkout-date-selectors button:hover { color: var(--violet); background: #e6f0f7; }
.checkout-date-week,.checkout-date-days { display: grid; grid-template-columns: repeat(7,1fr); gap: 3px; }
.checkout-date-week { margin-bottom: 5px; }
.checkout-date-week span { color: #8a8b99; text-align: center; font: 600 9px Poppins; }
.checkout-date-days > span,.checkout-date-days > button { aspect-ratio: 1; display: grid; place-items: center; }
.checkout-date-days button { border: 0; border-radius: 9px; color: #272739; background: transparent; cursor: pointer; font: 500 11px Poppins; }
.checkout-date-days button:hover { color: var(--violet); background: #eaf2f8; }
.checkout-date-days button.is-today { color: var(--violet); box-shadow: inset 0 0 0 1px #9fb9ce; }
.checkout-date-days button.is-selected { color: #fff; background: var(--violet); box-shadow: 0 5px 12px rgba(0,39,89,.25); }
.checkout-date-months,.checkout-date-years { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; }
.checkout-date-months button,.checkout-date-years button { min-height: 42px; border: 0; border-radius: 9px; color: #343447; background: #f7f7fb; cursor: pointer; text-transform: capitalize; font: 500 11px Poppins; }
.checkout-date-months button:hover,.checkout-date-years button:hover { color: var(--violet); background: #e5eff6; }
.checkout-date-months button.is-selected,.checkout-date-years button.is-selected { color: #fff; background: var(--violet); }
.checkout-date-year-range { margin: -3px 0 9px; color: #77798a; text-align: center; font: 600 10px Poppins; }
.checkout-date-popover footer { display: flex; justify-content: flex-end; margin-top: 10px; padding-top: 10px; border-top: 1px solid #ecebf3; }
.checkout-date-popover footer button { display: inline-flex; align-items: center; gap: 6px; border: 0; color: var(--violet); background: transparent; cursor: pointer; font: 600 10px Poppins; }
.checkout-date-popover footer button:hover { color: var(--pink); }
.flight-search-empty.is-error > i { color: #b54a63; background: #fff0f3; }
.flight-search-retry { min-height: 38px; margin-top: 6px; padding: 8px 16px; border: 1px solid #c8d9e6; border-radius: 10px; color: #fff; background: var(--violet); }
.flight-search-retry:hover { color: #fff; background: var(--blue); transform: translateY(-1px); }
.flight-search-query .btn:disabled { cursor: wait; opacity: .7; transform: none; }
.checkout-notes { margin: 16px 0 0; }
.checkout-notes > div { height: auto; align-items: flex-start; padding-top: 13px; background: #fbfbfd; }
.checkout-notes textarea { min-height: 104px; padding: 0!important; border: 0!important; border-radius: 0!important; background: transparent!important; box-shadow: none!important; resize: vertical; }
.checkout-submit-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 18px; padding: 16px; border: 1px solid #c8d9e6; border-radius: 13px; background: linear-gradient(100deg,#f3f8fb,#fff); }
.checkout-submit-bar > div { display: flex; align-items: center; gap: 11px; }
.checkout-submit-bar > div > i { display: grid; place-items: center; flex: 0 0 35px; width: 35px; height: 35px; border-radius: 10px; color: #187b45; background: #eaf8ef; }
.checkout-submit-bar strong,.checkout-submit-bar small { display: block; }
.checkout-submit-bar strong { color: #30313f; font: 600 11px Poppins; }
.checkout-submit-bar small { max-width: 390px; margin-top: 2px; color: #787989; font-size: 9px; line-height: 1.4; }
.checkout-submit-bar .btn { min-width: 190px; height: 46px; justify-content: center; border-radius: 11px; }
.checkout-summary { padding: 20px; border: 1px solid #e1e3eb; border-radius: 16px; background: #fff; box-shadow: 0 12px 32px rgba(0,39,89,.09); }
.checkout-summary h3 { display: flex; align-items: center; gap: 7px; color: var(--violet); font-size: 13px; }
.checkout-summary h3::before { content: "\F26A"; font-family: "bootstrap-icons"; }
.checkout-summary .total { padding: 12px; border-radius: 10px; background: #eef5fa; }
.checkout-summary .total strong { color: var(--violet); }
.checkout-price-breakdown{display:grid;gap:8px;padding:13px;border:1px solid #d9e4ec;border-radius:11px;background:#f7fafc}
.checkout-price-breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#4d5969;font-size:11px}
.checkout-price-breakdown>div strong{display:inline;margin:0;color:#27364a;font:600 12px Poppins;text-align:right}
.checkout-price-breakdown>.is-total{margin-top:3px;padding-top:9px;border-top:1px solid #d9e4ec;color:#001f4d;font:600 13px Poppins}
.checkout-price-breakdown>.is-total strong{color:var(--violet);font-size:16px}
.checkout-price-breakdown>small{display:flex;gap:6px;margin-top:2px;color:#5c6978;font-size:9px;line-height:1.45}
.checkout-price-breakdown>small i{flex:0 0 auto;color:#17496e}
.flight-ok { margin-top: 12px; border-radius: 10px; background: #eaf8ef; }

/* Selector horario consistente en checkout y edición administrativa */
.nadria-time-picker{position:relative;flex:1;min-width:0;width:100%;font-family:Poppins,sans-serif}
.nadria-time-trigger{display:flex;align-items:center;gap:8px;width:100%;min-height:42px;padding:0 11px;border:1px solid #d9dfea;border-radius:10px;color:#20243a;background:#fff;cursor:pointer;text-align:left}
.nadria-time-trigger>span{flex:1;font:500 13px Poppins}
.nadria-time-trigger>i{color:var(--violet);font-size:10px;transition:transform .18s ease}
.nadria-time-picker.is-empty .nadria-time-trigger>span{color:#858797}
.nadria-time-picker.is-open .nadria-time-trigger{border-color:var(--violet);box-shadow:0 0 0 4px rgba(0,39,89,.09)}
.nadria-time-picker.is-open .nadria-time-trigger>i{transform:rotate(180deg)}
.checkout-field>div>.nadria-time-picker .nadria-time-trigger{min-height:0;height:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.nadria-time-popover{position:absolute;z-index:90;top:calc(100% + 8px);right:0;width:326px;padding:14px;border:1px solid #dfe4ee;border-radius:15px;background:#fff;box-shadow:0 22px 55px rgba(0,31,73,.22)}
.nadria-time-popover[hidden]{display:none}
.nadria-time-popover header{display:grid;grid-template-columns:38px 1fr 32px;align-items:center;gap:9px;margin-bottom:12px;padding-bottom:11px;border-bottom:1px solid #edf0f5}
.nadria-time-popover header>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#fff;background:var(--violet)}
.nadria-time-popover header div{display:flex;flex-direction:column;min-width:0}
.nadria-time-popover header small{color:#818493;font:600 8px Poppins;letter-spacing:.08em;text-transform:uppercase}
.nadria-time-popover header strong{overflow:hidden;color:#171c31;font:600 13px Poppins;text-overflow:ellipsis;white-space:nowrap}
.nadria-time-popover header button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:0;border-radius:8px;color:#596071;background:#f2f5f8;cursor:pointer}
.nadria-time-preview{display:flex;align-items:baseline;justify-content:center;gap:8px;margin:2px 0 13px;color:var(--violet)}
.nadria-time-preview b{font:700 28px Poppins;letter-spacing:.02em}
.nadria-time-preview span{font:700 12px Poppins}
.nadria-time-section{margin-top:10px}
.nadria-time-section>small{display:block;margin:0 0 6px;color:#747888;font:600 8px Poppins;letter-spacing:.08em;text-transform:uppercase}
.nadria-time-hours,.nadria-time-minutes{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}
.nadria-time-periods{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.nadria-time-hours button,.nadria-time-minutes button,.nadria-time-periods button{min-height:32px;padding:0;border:0;border-radius:8px;color:#30364a;background:#f3f6f9;cursor:pointer;font:600 10px Poppins}
.nadria-time-hours button:hover,.nadria-time-minutes button:hover,.nadria-time-periods button:hover{color:var(--violet);background:#e7f0f7}
.nadria-time-hours button.is-selected,.nadria-time-minutes button.is-selected,.nadria-time-periods button.is-selected{color:#fff;background:var(--violet);box-shadow:0 4px 10px rgba(0,39,89,.20)}
.nadria-time-popover footer{display:flex;justify-content:flex-end;gap:7px;margin-top:13px;padding-top:11px;border-top:1px solid #edf0f5}
.nadria-time-popover footer button{min-height:34px;padding:0 13px;border:0;border-radius:8px;color:var(--violet);background:#edf3f8;cursor:pointer;font:600 10px Poppins}
.nadria-time-popover footer button.is-primary{color:#fff;background:var(--violet)}
.booking-edit-form .nadria-time-picker{margin-top:6px}
.booking-edit-form .nadria-time-trigger{height:42px}

.flight-time-warning{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:9px;margin:10px 0;padding:10px 12px;border:1px solid #f1cf86;border-radius:10px;color:#694500;background:#fff7e6}
.flight-time-warning>i{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:#a86400;background:#ffe8b7}
.flight-time-warning strong,.flight-time-warning small{display:block}
.flight-time-warning strong{font:600 11px Poppins}
.flight-time-warning small{margin-top:2px;font:400 9px/1.45 Poppins}
.flight-time-warning.is-blocked{border-color:#f0b8c0;color:#7a1523;background:#fff0f2}
.flight-time-warning.is-blocked>i{color:#b31d35;background:#ffdce1}

@media(max-width:700px){
  .nadria-time-popover{position:fixed;z-index:250;top:auto;right:12px;bottom:12px;left:12px;width:auto;max-height:calc(100vh - 24px);overflow:auto;overscroll-behavior:contain;border-radius:18px;box-shadow:0 18px 65px rgba(0,21,51,.35)}
  .nadria-time-hours button,.nadria-time-minutes button,.nadria-time-periods button{min-height:38px;touch-action:manipulation}
  .nadria-time-popover footer button{min-height:40px;touch-action:manipulation}
}

@media(max-width:850px){
  .flight-details-card .flight-row{grid-template-columns:1fr 1fr}.flight-number-field{grid-column:1/-1}.checkout-submit-bar{align-items:flex-start;flex-direction:column}.checkout-submit-bar .btn{width:100%}
}
@media(max-width:560px){
  .checkout-section-card{padding:15px}.flight-leg-card{padding:14px}.flight-details-card .flight-row{grid-template-columns:1fr}.flight-number-field{grid-column:auto}.checkout-submit-bar{padding:13px}.checkout-date-popover{left:-14px;width:min(304px,calc(100vw - 82px))}
}

/* Email approval workflow: preview first, send second */
.notification-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.notification-actions small{flex:1 1 220px;color:#6f7282;font-size:9.5px;line-height:1.4}.btn:disabled{cursor:not-allowed;opacity:.48;transform:none!important}
.notification-direct-actions{margin:0 0 14px;padding:18px;border:1px solid #dce7f2;border-radius:14px;background:#f8fbfe}.notification-direct-actions h3{margin:0 0 5px;color:#002759;font:600 16px Poppins}.notification-direct-actions p{margin:0 0 12px;color:#5f6b7d;font-size:12px;line-height:1.5}.operational-recipient-list{display:flex;flex-wrap:wrap;gap:8px 18px;margin:12px 0}.operational-recipient-list .checkline{display:inline-flex;align-items:center;gap:6px;font-size:12px}
.notification-direct-actions h3{display:flex;align-items:center;gap:8px;padding:0;background:transparent;font-size:14px}
.notification-direct-actions h3>i{color:#002759;font-size:17px}
.notification-direct-actions p{font-size:11px}
.notification-confirmation-controls{display:grid;grid-template-columns:minmax(160px,210px) max-content;align-items:end;gap:14px;margin:14px 0 10px}
.notification-confirmation-controls>label{display:grid;gap:6px;min-width:0;color:#4c5c71;font:500 10px Poppins}
.notification-confirmation-controls .btn{min-height:42px;margin:0;font-size:11px}
.notification-confirmation .notification-destination{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:0;color:#647386;font-size:10px}
.notification-destination span{color:#253b57;overflow-wrap:anywhere}
.notification-channel-note{grid-column:1/-1;display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;border:1px solid #dce7f1;border-radius:9px;background:#f2f7fb;color:#53697f;font:400 11px/1.5 Hind}
.notification-channel-note>i{flex:none;color:#002759;font-size:14px;line-height:1.5}
.user-setting-switch{position:relative;display:flex!important;align-items:center;gap:16px;padding:14px 15px;border:1px solid #dce4ef;border-radius:11px;background:#fff;cursor:pointer}
.user-setting-switch:has(input:checked){border-color:#b8cede;background:#f3f8fc}
.user-setting-switch>input[type=checkbox]{position:absolute!important;opacity:0;width:1px!important;height:1px!important;min-height:0;margin:0!important;padding:0!important}
.user-setting-switch__copy{flex:1;min-width:0}
.user-setting-switch__copy strong,.user-setting-switch__copy small{display:block}
.user-setting-switch__copy strong{color:#173250;font:600 12px Poppins}
.user-setting-switch__copy small{margin-top:4px;color:#647589;font:400 11px/1.45 Hind}
.user-setting-switch__track{position:relative;flex:0 0 40px;width:40px;height:24px;border:1px solid #bbc8d6;border-radius:999px;background:#dce4ed;transition:background .15s,border-color .15s}
.user-setting-switch__track::before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0b294333;transition:transform .15s}
.user-setting-switch input:checked~.user-setting-switch__track{border-color:#002759;background:#002759}
.user-setting-switch input:checked~.user-setting-switch__track::before{transform:translateX(16px)}
.user-setting-switch input:focus-visible~.user-setting-switch__track{outline:3px solid #ff008455;outline-offset:3px}
.user-edit-form .form-actions{display:flex;flex-wrap:wrap;gap:9px}
.operational-recipient-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:8px;margin:12px 0}
.operational-recipient-list .checkline{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid #dde6ef;border-radius:9px;background:#fff}
.operational-recipient-list .checkline input{flex:0 0 16px;width:16px;height:16px;min-height:0;margin:0;padding:0}
.operational-recipient-list .checkline span{min-width:0;line-height:1.4}
.operational-recipient-list .checkline strong,.operational-recipient-list .checkline small{display:block;overflow-wrap:anywhere}
.operational-recipient-list .checkline strong{font:600 11px Poppins;color:#243b58}
.operational-recipient-list .checkline small{margin-top:2px;color:#647386;font-size:10px}
.settings-grid:has(.integrations-panel:not([hidden])){align-items:start;grid-template-areas:"integrations smtp" "deployment smtp";grid-template-rows:auto 1fr}
.integrations-panel{grid-area:integrations;align-self:start;padding:18px}
.settings-grid:has(.integrations-panel:not([hidden]))>.smtp-settings{grid-area:smtp}
.deployment-status{grid-area:deployment;align-self:start}
.integrations-panel>h3{margin-bottom:10px;font-size:15px}
.integrations-panel>p{margin:0 0 12px}
.integrations-panel .integration-status{gap:7px}
.integrations-panel .integration-status article{grid-template-columns:32px minmax(0,1fr) auto;padding:9px;gap:9px}
.integrations-panel .integration-status article>i{width:32px;height:32px;border-radius:9px}
.integrations-panel .integration-status strong{font-size:12px}
.integrations-panel .integration-status span{overflow-wrap:anywhere}
.integrations-panel .secret-policy{margin-top:10px;padding:9px}
.integrations-panel .integration-refresh{margin-top:10px}
@media(max-width:1180px){.settings-grid:has(.integrations-panel:not([hidden])){grid-template-areas:"integrations" "smtp" "deployment";grid-template-rows:auto auto auto}}
@media(max-width:600px){.notification-confirmation-controls{grid-template-columns:minmax(0,1fr)}.notification-confirmation-controls>.btn{justify-content:center;width:100%}}
.audit-timeline dd.audit-flight-change{display:grid;grid-template-columns:minmax(90px,.65fr) 14px minmax(0,1.35fr);align-items:start}
.audit-flight-change del,.audit-flight-change ins{white-space:pre-line;line-height:1.65}
@media(max-width:720px){.audit-timeline dd.audit-flight-change{grid-template-columns:minmax(0,1fr)}}
.booking-adjustments{margin:18px 0;padding:18px;border:1px solid #dce7f2;border-radius:14px;background:#f8fbfe}.booking-adjustments h3{margin:0 0 12px;color:#002759;font:600 16px Poppins}.booking-adjustments article{display:grid;gap:6px;padding:13px;background:#fff;border:1px solid #e0e9f2;border-radius:10px;margin:10px 0}.booking-adjustments article strong{font-size:13px}.booking-adjustments article span,.booking-adjustments article small{font-size:12px;color:#526277}.refund-register-form{display:grid;gap:10px;margin-top:8px}.refund-register-form label{font-size:12px}.refund-register-form input:not([type=checkbox]){display:block;width:100%;max-width:350px;padding:10px;border:1px solid #d8e2ee;border-radius:8px}.refund-register-form .checkline,.adjustment-form .checkline{display:flex;align-items:flex-start;gap:8px;line-height:1.4}.adjustment-form .checkline input{width:auto;margin:3px 0 0}
.admin-phone-booking{margin:0 0 18px;border:1px solid #dce7f2;border-radius:14px;background:#f8fbfe}.admin-phone-booking summary{cursor:pointer;padding:15px 18px;font:600 14px Poppins;color:#052756}.admin-phone-booking summary i{margin-right:8px}.admin-phone-booking form{display:grid;gap:13px;padding:0 18px 18px}.admin-phone-booking form p{margin:0;color:#637187;font-size:12px}.admin-phone-booking .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-phone-booking label{display:block;font-size:12px}.admin-phone-booking input:not([type=checkbox]),.admin-phone-booking select,.admin-phone-booking textarea{display:block;width:100%;padding:10px;border:1px solid #d8e2ee;border-radius:8px;background:#fff}.admin-phone-booking .checkline{display:flex;align-items:flex-start;gap:8px}.admin-phone-booking .checkline input{width:auto;margin:2px 0 0}.admin-phone-booking [hidden]{display:none!important}@media(max-width:680px){.admin-phone-booking .form-row{grid-template-columns:1fr}}
.email-preview-dialog{position:fixed;inset:0;z-index:900;display:grid;place-items:center;padding:18px;background:rgba(6,16,34,.72);backdrop-filter:blur(4px)}
.email-preview-dialog>section{display:flex;flex-direction:column;width:min(980px,100%);height:min(820px,calc(100vh - 36px));overflow:hidden;border:1px solid rgba(255,255,255,.32);border-radius:18px;background:#f4f7fa;box-shadow:0 35px 90px rgba(0,0,0,.38)}
.email-preview-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 21px;color:#fff;background:#002759}
.email-preview-dialog header small{display:block;margin-bottom:3px;color:#ff75bc;font:600 8px Poppins;letter-spacing:1.2px}.email-preview-dialog header h2{margin:0;font:600 17px/1.35 Poppins}.email-preview-dialog header .icon-close{flex:0 0 auto;color:#fff;border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.08)}
.email-preview-meta{display:flex;flex-wrap:wrap;gap:9px 20px;padding:11px 20px;border-bottom:1px solid #dfe4eb;color:#5d6573;background:#fff;font-size:10px}.email-preview-meta span{display:flex;align-items:center;gap:6px}.email-preview-meta i{color:#65758b}.email-preview-meta .is-ready,.email-preview-meta .is-ready i{color:#16823b}
.email-preview-toolbar{display:flex;justify-content:center;gap:4px;padding:9px;border-bottom:1px solid #dfe4eb}.email-preview-toolbar button{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid transparent;border-radius:8px;color:#596273;background:transparent;cursor:pointer;font:600 9px Poppins}.email-preview-toolbar button:hover,.email-preview-toolbar button.is-active{color:#002759;border-color:#cdd9e4;background:#fff}
.email-preview-canvas{flex:1;min-height:0;display:grid;place-items:start center;overflow:auto;padding:20px;background:repeating-linear-gradient(45deg,#e9edf2,#e9edf2 8px,#eef1f5 8px,#eef1f5 16px)}.email-preview-canvas iframe{width:min(760px,100%);height:100%;min-height:560px;border:0;border-radius:10px;background:#fff;box-shadow:0 14px 36px rgba(0,39,89,.16);transition:width .2s ease}.email-preview-canvas.is-mobile iframe{width:390px;max-width:100%}
.email-preview-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 18px;border-top:1px solid #dfe4eb;background:#fff}.email-preview-dialog footer p{display:flex;align-items:center;gap:7px;margin:0;color:#5d6674;font-size:10px}.email-preview-dialog footer p i{color:#16823b}
@media(max-width:620px){.email-preview-dialog{padding:6px}.email-preview-dialog>section{height:calc(100vh - 12px);border-radius:12px}.email-preview-dialog header{padding:14px}.email-preview-meta{display:grid;padding:10px 14px}.email-preview-canvas{padding:10px}.email-preview-dialog footer{align-items:stretch;flex-direction:column}.email-preview-dialog footer .btn{justify-content:center}}

/* Backups and controlled operational reset */
.data-management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.data-management-grid>article{display:flex;flex-direction:column;gap:12px;min-width:0;padding:17px;border:1px solid #e2e6ee;border-radius:13px;background:#fafbfd}.data-management-grid>article>i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#fff;background:#002759;font-size:17px}.data-management-grid strong,.data-management-grid small{display:block}.data-management-grid strong{font:600 12px Poppins}.data-management-grid small{margin-top:3px;color:#707485;font-size:9.5px;line-height:1.45}.data-management-grid .export-actions{margin-top:auto}.data-management-grid .btn{justify-content:center}.data-danger-zone{border-color:#f2cbd5!important;background:#fff8fa!important}.data-danger-zone>i{background:#bd2448!important}.data-management-result{min-height:18px;margin:0;color:#6e7180;font-size:9.5px;line-height:1.4}.data-management-result.is-working{color:#805f00}.data-management-result.is-success{color:#16823b}.data-management-result.is-error{color:#bd2448}.typed-confirm-dialog label{grid-column:1/-1;display:grid;gap:6px;padding:11px;border-radius:10px;color:#55586a;background:#f7f8fb;font:500 10px Poppins}.typed-confirm-dialog label strong{color:#bd2448}.typed-confirm-dialog input{width:100%;height:42px;padding:0 11px;border:1px solid #d8dce6;border-radius:8px;background:#fff;font:500 12px Poppins;letter-spacing:.2px}.typed-confirm-dialog input:focus{outline:0;border-color:#bd2448;box-shadow:0 0 0 3px rgba(189,36,72,.1)}
@media(max-width:980px){.data-management-grid{grid-template-columns:1fr}} 
.data-management-grid{align-items:start}.data-management-grid .export-actions{margin-top:0}
.data-delete-example{margin:0;color:#824456;font:400 11px/1.5 Hind}
.backup-last-generated{margin:0;color:#647589;font:400 10px/1.5 Hind}.backup-last-generated span{display:block;color:#283e59}
.database-delete-dialog>section{display:flex;flex-direction:column;gap:13px;width:min(660px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:24px}
.database-delete-dialog header{display:flex;align-items:center;gap:12px}.database-delete-dialog header>span{display:grid;place-items:center;flex:0 0 42px;height:42px;border:1px solid #f1c7d2;border-radius:11px;color:#b91f46;background:#fff0f4;font-size:23px}
.database-delete-dialog header>div{flex:1;min-width:0}.database-delete-dialog header small{color:#b91f46;font:600 9px Poppins;letter-spacing:.7px}.database-delete-dialog h2{margin:2px 0 0;font:600 18px Poppins}
.database-delete-dialog p{margin:0;color:#56677b;font:400 12px/1.5 Hind}
.database-delete-counts{padding:10px 12px;border:1px solid #f0c8d2;border-radius:9px;background:#fff3f6;color:#a51e40;font:600 11px/1.6 Poppins}
.database-delete-purpose{padding:11px 12px;border:1px solid #e1e7ef;border-radius:9px;background:#f7f9fc}.database-delete-purpose strong{color:#243c59;font:600 11px Poppins}.database-delete-purpose p{margin-top:4px}
.database-delete-backup{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;border:1px solid #cddfeb;border-radius:10px;background:#f1f7fb}.database-delete-backup>div{flex:1 1 230px}.database-delete-backup strong,.database-delete-backup span,.database-delete-backup small{display:block}.database-delete-backup strong{font:600 11px Poppins;color:#173250}.database-delete-backup span{margin:4px 0;color:#28425f;font:400 11px Hind}.database-delete-backup small{color:#687a8d;font:400 10px/1.4 Hind}
.database-delete-dialog .database-delete-result{font-size:11px;color:#895324}
.database-delete-check{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid #dde5ee;border-radius:9px;color:#3c536e;font:400 12px/1.45 Hind;cursor:pointer}
.database-delete-check input{flex:0 0 16px;width:16px;height:16px;margin:1px 0 0;accent-color:#002759}
.database-delete-phrase{display:grid;gap:6px;color:#52657b;font:500 11px Poppins}.database-delete-phrase strong{color:#b91f46}.database-delete-phrase input{width:100%;height:42px;padding:0 11px;border:1px solid #cdd8e4;border-radius:8px;font:400 12px Poppins;box-sizing:border-box}
.database-delete-dialog footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:9px;border-top:1px solid #e3e8ef;padding-top:12px}
@media(max-width:600px){.database-delete-dialog>section{padding:17px}.database-delete-dialog h2{font-size:16px}.database-delete-dialog footer .btn{flex:1;justify-content:center}}

/* Booking corrections, audit trail and explicit zone price precedence */
/* Assisted booking and consistent controls. */
.admin-page .user-setting-switch{display:flex!important;flex-direction:row!important;align-items:center!important;text-align:left!important}
.admin-page .user-setting-switch__track{display:block!important;flex:0 0 auto!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:24px!important;min-height:24px!important;max-height:24px!important;box-sizing:content-box!important;align-self:center!important}
.admin-page .user-setting-switch__copy{display:block!important;flex:1!important;min-width:0;text-align:left}
.admin-table td.row-actions .admin-view{background:#f0f5fb;border-color:#d1deee;color:var(--blue)}
.admin-page :is(.admin-view,.entity-action,.icon-close,.driver-avatar,.admin-subpanel__title>span,.audit-timeline__marker,.user-list article>i,.phone-summary-icon){display:inline-grid;place-items:center;line-height:1}
.admin-page :is(.admin-view,.entity-action,.icon-close,.driver-avatar,.admin-subpanel__title>span,.audit-timeline__marker,.phone-summary-icon)>i{display:grid;place-items:center;width:100%;height:100%;margin:0;line-height:1}
.admin-page :is(.admin-view,.entity-action,.icon-close,.driver-avatar,.admin-subpanel__title>span,.audit-timeline__marker,.phone-summary-icon)>i::before{display:block;line-height:1;vertical-align:0}
.admin-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.admin-filter-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;grid-column:span 2}.admin-filter-actions .btn{min-height:40px;flex:1}
.admin-search-field{position:relative}.admin-search-matches,.phone-place-results{position:absolute;top:100%;left:0;right:0;z-index:120;max-height:280px;overflow:auto;padding:5px;border:1px solid #d5e0ed;border-radius:10px;background:#fff;box-shadow:0 12px 24px #00275926}
.admin-search-matches button,.phone-place-results button{display:flex;align-items:center;gap:10px;width:100%;padding:10px;text-align:left;border:0;border-bottom:1px solid #edf1f6;background:#fff;color:var(--blue);cursor:pointer;font:400 12px Hind}.admin-search-matches button:hover,.phone-place-results button:hover,.phone-place-results button:focus{background:#f0f5fb;outline:0}.admin-search-matches span,.phone-place-results span{min-width:0}.admin-search-matches strong,.phone-place-results strong,.admin-search-matches small,.phone-place-results small{display:block;overflow-wrap:anywhere}.admin-search-matches small,.phone-place-results small{color:#718098;font-size:10px}.admin-search-matches p{padding:8px}
.admin-phone-booking summary{display:flex;align-items:center;gap:12px;list-style:none}.admin-phone-booking summary::-webkit-details-marker{display:none}.admin-phone-booking summary>span:nth-child(2){flex:1}.admin-phone-booking summary strong,.admin-phone-booking summary small{display:block}.admin-phone-booking summary small{margin-top:3px;font:400 11px Hind;color:#718098}.phone-summary-icon{flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:var(--blue);color:#fff}.admin-phone-booking summary i{margin:0}.phone-collapse{display:flex;align-items:center;gap:7px;font-size:10px;padding:8px 12px;border:1px solid #d0deeb;border-radius:9px;background:#fff}.phone-close-label{display:none}.admin-phone-booking[open] .phone-open-label{display:none}.admin-phone-booking[open] .phone-close-label{display:inline}.admin-phone-booking[open] .phone-collapse>i{transform:rotate(180deg)}
.phone-form-intro{display:flex;align-items:center;justify-content:space-between;gap:12px}.phone-form-intro p{flex:1}.phone-form-intro .btn{flex:none}
.phone-section{padding:18px;border:1px solid #dce5f0;border-radius:12px;background:#fff;display:grid;gap:14px}.phone-section>h3{display:flex;align-items:center;gap:8px;margin:0;padding-bottom:12px;border-bottom:1px solid #e7edf5;color:var(--blue);font:600 14px Poppins}.phone-section h3>i{color:var(--pink)}
.phone-section label{min-width:0}.phone-section label>i,.phone-passengers i{color:var(--blue);margin-right:4px}.phone-place{position:relative}.phone-place>span{display:flex;gap:7px;align-items:center}.phone-route-note{font-size:11px!important}.phone-map{height:235px;border:1px solid #d5dfec;border-radius:10px;background:#f2f6fa;z-index:0}.phone-contact{display:grid;grid-template-columns:132px minmax(0,1fr);gap:8px}.phone-contact>[data-phone-custom-code]{grid-column:1/-1}.phone-passengers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.phone-return{padding:14px;background:#f5f8fc;border:1px solid #d5e0ee;border-radius:10px}.phone-return h4{margin:0 0 12px;color:var(--blue)}
.phone-flight{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.phone-flight-results{grid-column:1/-1;color:#64758d;font:400 11px/1.6 Hind}.phone-flight-results article{padding:12px;border:1px solid #d8e3ef;border-radius:10px;background:#f5f8fc;margin-top:7px}.phone-flight-results strong,.phone-flight-results small{display:block}.phone-flight-results .btn{margin-top:8px}.phone-quote{padding:12px;border:1px solid #c8dbee;border-radius:10px;background:#f2f7fc;color:var(--blue);font:500 13px Poppins}.phone-pricing>[data-phone-calculate]{justify-self:start}.phone-policy{display:flex!important;align-items:flex-start;gap:10px;padding:12px;border:1px solid #dce4ed;border-radius:9px;background:#f7f9fc;font:400 11px/1.5 Hind}.phone-policy>input{flex:none;width:16px!important;height:16px!important;margin:1px 0 0;accent-color:var(--blue)}.phone-form-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.phone-section input[readonly]{background:#f5f8fc}
.dashboard-analytics{margin-top:18px}.analytics-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end;margin-bottom:16px}.analytics-filters label{font:500 10px Poppins;min-width:0}.analytics-filters input,.analytics-filters select{width:100%;height:40px;padding:0 10px;border:1px solid #d8e2ed;border-radius:9px;background:#fff}.analytics-minicards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.analytics-minicards article{padding:13px;border:1px solid #dce6f0;background:#f5f8fc;border-radius:10px}.analytics-minicards strong,.analytics-minicards small{display:block}.analytics-minicards small{color:#61728b;font:400 10px Hind}.analytics-minicards strong{margin-top:5px;color:var(--blue);font:600 18px Poppins;overflow-wrap:anywhere}.analytics-disclaimer{font:400 10px Hind;color:#667890}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.analytics-chart{min-width:0;padding:16px;border:1px solid #dbe5ef;border-radius:12px;background:#fff}.analytics-chart header,.analytics-dialog header{display:flex;align-items:center;gap:12px;justify-content:space-between}.analytics-chart h3{margin:0;font:600 13px Poppins;color:var(--blue)}.analytics-chart header small{font:400 10px Hind;color:#6b7d95}.analytics-bars{display:grid;gap:8px;margin-top:16px}.analytics-bars>div{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:10px;align-items:center;min-height:37px;padding:8px 10px;border:1px solid #e0e7f0;border-radius:7px;isolation:isolate;overflow:hidden}.analytics-bars span{font:400 11px/1.5 Hind;overflow-wrap:anywhere;color:#183452}.analytics-bars b{font:600 12px Poppins;color:var(--blue);text-align:right}.analytics-bars i{position:absolute;z-index:-1;left:0;top:0;bottom:0;width:var(--bar);background:linear-gradient(90deg,#00275914,#ff008410)}.analytics-chart footer{margin-top:13px;border-top:1px solid #e6ecf3;padding-top:9px;font:400 10px Hind;color:#6b7b91}.analytics-chart footer small{display:block}
.analytics-dialog>section{display:block;width:min(940px,100%);max-height:calc(100dvh - 40px);overflow:auto;padding:24px}.analytics-dialog h2{font:600 18px Poppins;color:var(--blue);margin:0}.analytics-dialog header small{font:400 11px Hind;color:#6c7d95}.analytics-dialog .analytics-bars{gap:10px}.analytics-dialog .analytics-bars span{font-size:14px}
.widget-language{display:flex;justify-content:flex-end;gap:3px;margin:0 0 7px}.widget-language button{border:1px solid transparent;border-radius:7px;background:#f5f8fb;color:var(--blue);font:600 9px Poppins;padding:4px 7px;cursor:pointer}.widget-language button.is-active{background:var(--blue);color:#fff;border-color:var(--blue)}.widget-language button:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
@media(max-width:800px){.admin-filters,.analytics-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-minicards{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid{grid-template-columns:1fr}.admin-filter-actions{grid-column:1/-1}}
@media(max-width:520px){.phone-contact{grid-template-columns:118px minmax(0,1fr)}.phone-section{padding:12px}.phone-passengers{gap:8px}.phone-flight{grid-template-columns:1fr}.phone-flight-results{grid-column:auto}.phone-form-intro{align-items:flex-start;flex-direction:column}.admin-phone-booking summary{padding:12px;gap:8px}.phone-summary-icon{display:none!important}.phone-collapse{padding:6px}.analytics-filters,.admin-filters{grid-template-columns:1fr}.admin-phone-booking form{padding:0 10px 12px}.phone-form-actions .btn{width:100%}.analytics-minicards strong{font-size:15px}}
.booking-tab-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.admin-page .admin-phone-booking .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.analytics-grid{align-items:start}
.ui-control__leading.has-flag::before,.ui-select__option-icon.has-flag::before{display:none}.ui-select-flag{display:block;width:22px;height:16px;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px #00275918}.ui-control__leading.has-flag,.ui-select__option-icon.has-flag{display:grid;place-items:center}
.phone-section label{font:500 11px/18px Poppins}.phone-section label>input:not([type=checkbox]):not([type=hidden]):not(.control-native),.phone-section label>textarea{margin-top:6px;min-height:42px}.phone-section .ui-control,.phone-section .nadria-time-picker{margin-top:6px}.phone-contact{align-items:end}.phone-place-input{position:relative;margin-top:6px}.phone-place-input input{height:42px;padding-right:40px!important;margin:0!important}.phone-place-clear{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:7px;background:#f1f5fa;color:var(--blue);cursor:pointer}.phone-place-clear:hover{background:#fce8f2;color:var(--pink)}.phone-place-clear i{margin:0!important}.phone-schedule-warning{padding:12px;border:1px solid #e8a4b2;border-radius:9px;background:#fff2f5;color:#a62043!important}.phone-tariff-help{margin-left:auto!important;flex:none}.phone-tariff-help::after{width:min(290px,calc(100vw - 65px));right:0;left:auto}.phone-flight-dialog>section{display:block;width:min(880px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:22px;background:#f8fbfe}.phone-flight-panel>header{display:grid;grid-template-columns:44px minmax(0,1fr) 36px;align-items:center;gap:12px}.phone-flight-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--blue);color:#fff}.phone-flight-panel h2{margin:0;color:var(--blue);font:600 20px Poppins}.phone-flight-panel header small{color:var(--pink);font:500 10px Poppins}.phone-flight-panel>p{font:400 12px/1.6 Hind;color:#60738a}.phone-flight-query{display:grid;grid-template-columns:1.1fr 1fr .7fr auto;align-items:end;gap:10px;margin:20px 0}.phone-flight-query label{font:500 10px/18px Poppins;min-width:0}.phone-flight-query input:not(.control-native){display:block;width:100%;height:42px;margin-top:6px;border:1px solid #d8e2ee;border-radius:9px;padding:0 10px;background:#fff}.phone-flight-query .ui-control{margin-top:6px}.phone-flight-query .btn{height:42px}.phone-flight-list{display:grid;gap:10px}.phone-flight-panel footer{margin-top:18px;border-top:1px solid #dce6f0;padding-top:14px}.phone-flight-dialog .flight-result__airline>i{background:var(--blue)}.phone-flight-dialog .flight-result__select{color:var(--blue)}
@media(max-width:680px){.phone-flight-query{grid-template-columns:1fr 1fr}.phone-flight-dialog>section{padding:16px}.phone-flight-panel h2{font-size:17px}.phone-flight-dialog .flight-result{grid-template-columns:1fr}.phone-flight-query .btn{font-size:10px}}
.analytics-chart-kind{display:inline-flex;margin:12px 0 0;padding:4px 8px;border-radius:5px;background:#f0f4f9;color:#526780;font:500 9px/1.4 Poppins}
.analytics-visual{margin-top:14px;min-width:0}
.analytics-svg{display:block;width:100%;height:auto;overflow:visible}
.analytics-gridline{stroke:#e2e9f2;stroke-width:1;vector-effect:non-scaling-stroke}
.analytics-tick{fill:#60738b;font:400 10px Hind}
.analytics-value{fill:var(--blue);font:600 11px Poppins}
.analytics-plot-scroll{overflow-x:auto;padding-bottom:5px;overscroll-behavior-x:contain;scrollbar-width:thin}
.analytics-line-area{fill:#0027590d}
.analytics-trend-line{fill:none;stroke:var(--blue);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.analytics-trend-point{fill:var(--pink);stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke}
.analytics-donut{display:grid;grid-template-columns:minmax(140px,210px) minmax(0,1fr);gap:18px;align-items:center;min-height:225px}
.analytics-ring-track{stroke:#edf2f7}
.analytics-ring-total{fill:var(--blue);font:600 29px Poppins}
.analytics-ring-label{fill:#687b92;font:500 11px Poppins}
.analytics-legend{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:10px;min-width:0}
.analytics-legend li{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:9px;align-items:center;font:400 11px/1.4 Hind;color:#294461}
.analytics-legend i{width:9px;height:9px;border-radius:3px;background:var(--chart-color)}
.analytics-legend span{overflow-wrap:anywhere}
.analytics-legend strong{color:var(--blue);font:600 12px Poppins;text-align:right}
.analytics-legend small{display:block;color:#667a94;font:400 10px Hind}
.analytics-visual--columns .analytics-legend{grid-template-columns:repeat(2,minmax(0,1fr))}
.analytics-category-chart{display:grid;gap:15px;padding:5px 0 9px}
.analytics-category-axis,.analytics-category-row{display:grid;grid-template-columns:minmax(100px,1.2fr) minmax(70px,1fr) 25px;gap:13px;align-items:center}
.analytics-category-axis{color:#79889d;font:400 10px Hind}
.analytics-category-axis>div{display:flex;justify-content:space-between}
.analytics-category-label{color:#294461;font:400 11px/1.5 Hind;overflow-wrap:anywhere}
.analytics-category-row>strong{text-align:right;color:var(--blue);font:600 12px Poppins}
.analytics-category-track{position:relative;height:16px;border-radius:4px;background:#eef3f9;min-width:0}
.analytics-horizontal-bar{display:block;width:var(--chart-share);height:100%;border-radius:4px;background:var(--chart-color)}
.analytics-category-chart--dots .analytics-category-track{height:2px;border-radius:0;background:#e2e9f2;margin:7px 0}
.analytics-lollipop-stem{position:absolute;inset:0 auto 0 0;width:var(--chart-share);background:var(--chart-color)}
.analytics-lollipop-dot{position:absolute;left:var(--chart-share);top:50%;width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:var(--chart-color);transform:translate(-50%,-50%);box-shadow:0 0 0 1px var(--chart-color)}
.analytics-exact{margin-top:15px;border-top:1px solid #e7edf4;padding-top:9px;color:#526980;font:400 10px Hind}
.analytics-exact summary{cursor:pointer;color:var(--blue);font:500 10px Poppins;width:fit-content;padding:3px 0}
.analytics-exact>div{overflow:auto;margin-top:8px;max-height:270px}
.analytics-exact table{width:100%;border-collapse:collapse;table-layout:fixed;font:400 11px Hind}
.analytics-exact caption{text-align:left;color:#526980;margin-bottom:6px}
.analytics-exact th,.analytics-exact td{padding:6px 8px;border-bottom:1px solid #edf1f6;text-align:left;overflow-wrap:anywhere;font-weight:400}
.analytics-exact thead th{background:#f5f8fc;color:var(--blue);font-weight:600}
.analytics-exact th:last-child,.analytics-exact td:last-child{width:70px;text-align:right}
.analytics-empty{min-height:225px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7c8da4;font:400 12px Hind;background:#f9fbfd;border:1px dashed #dfe7f0;border-radius:9px;margin-top:14px}
.analytics-empty>i{font-size:26px;color:#8d9fb5}
.analytics-dialog .analytics-visual{margin-top:20px}
.analytics-dialog .analytics-donut{grid-template-columns:minmax(180px,300px) minmax(0,1fr);gap:35px}
.analytics-dialog .analytics-legend li,.analytics-dialog .analytics-category-label{font-size:14px}
.analytics-dialog .analytics-category-chart{gap:19px}
@media(max-width:600px){.analytics-donut{grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:10px}.analytics-chart{padding:14px}.analytics-category-axis,.analytics-category-row{grid-template-columns:minmax(95px,1.15fr) minmax(55px,1fr) 24px;gap:10px}.analytics-dialog .analytics-donut{grid-template-columns:minmax(130px,180px) minmax(0,1fr);gap:15px}.analytics-dialog>section{padding:16px}}
@media(max-width:380px){.analytics-donut,.analytics-dialog .analytics-donut{grid-template-columns:1fr}.analytics-donut>.analytics-svg{max-width:180px;justify-self:center}.analytics-visual--columns .analytics-legend{grid-template-columns:1fr}}
@media(max-width:680px){.admin-page .admin-phone-booking .form-row{grid-template-columns:1fr}.phone-passengers{grid-template-columns:1fr}}
.phone-contact .ui-control__trigger{padding-left:8px;padding-right:24px;gap:5px;font-size:11px}.phone-contact .ui-control__icon{width:19px;height:19px;flex-basis:19px}
.booking-edit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 16px;padding:12px 14px;border:1px solid #dce6ed;border-radius:12px;background:#f1f7fa}
.booking-edit-toolbar>div{display:flex;align-items:center;gap:10px;min-width:0}.booking-edit-toolbar>div>i{flex:0 0 auto;color:#bd2448;font-size:20px}.booking-edit-toolbar span,.booking-edit-toolbar strong,.booking-edit-toolbar small{display:block}.booking-edit-toolbar strong{font:600 10px Poppins}.booking-edit-toolbar small{margin-top:2px;color:#6f7481;font-size:9px;line-height:1.4}
.booking-edit-toolbar .booking-edit-toolbar__actions{justify-content:flex-end;flex-wrap:wrap}.btn--danger-soft{border-color:#edc7c7!important;background:#fff6f6!important;color:#a12828!important}
.booking-edit-form{display:grid;gap:16px;padding:20px;border:1px solid #dfe3ea;border-radius:15px;background:#fff;box-shadow:0 14px 34px rgba(0,39,89,.08)}
.booking-edit-form>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid #e5e8ed}.booking-edit-form>header small{display:block;color:var(--pink);font:600 8px Poppins;letter-spacing:1px}.booking-edit-form>header h3{margin:3px 0 0;font:600 19px Poppins}
.booking-edit-warning{display:flex;gap:12px;padding:13px;border:1px solid #f0d4a7;border-radius:11px;background:#fff8e9}.booking-edit-warning>i{flex:0 0 auto;color:#b16a00;font-size:21px}.booking-edit-warning strong{font:600 10px Poppins}.booking-edit-warning p{margin:4px 0 0;color:#6b5a42;font-size:9.5px;line-height:1.5}
.booking-edit-route-policy{display:flex;gap:12px;padding:13px;border:1px solid #cfe0ee;border-radius:11px;background:#f2f8fc}.booking-edit-route-policy>i{flex:0 0 auto;color:#006fae;font-size:20px}.booking-edit-route-policy strong{font:600 10px Poppins}.booking-edit-route-policy p{margin:4px 0 0;color:#4d6474;font-size:9.5px;line-height:1.5}
.booking-edit-form fieldset{min-width:0;padding:15px;border:1px solid #e1e4eb;border-radius:12px}.booking-edit-form legend{padding:0 7px;font:600 12px Poppins}.booking-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.booking-edit-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.booking-edit-form label,.manual-quote-workflow label{display:grid;gap:5px;min-width:0;color:#292b38;font:500 10px Poppins}.booking-edit-form input,.booking-edit-form textarea,.booking-edit-form select,.manual-quote-workflow input,.manual-quote-workflow textarea{box-sizing:border-box;width:100%;min-width:0;padding:9px 10px;border:1px solid #d9dee7;border-radius:8px;background:#fafbfd;font:400 12px Hind}.booking-edit-form input:focus,.booking-edit-form textarea:focus,.booking-edit-form select:focus,.manual-quote-workflow input:focus,.manual-quote-workflow textarea:focus{outline:0;border-color:#1680bd;box-shadow:0 0 0 3px rgba(22,128,189,.1)}
.booking-edit-form .checkline{display:flex;align-items:center;flex-direction:row}.booking-edit-form .checkline input{width:16px;height:16px}.booking-edit-reason{padding:13px;border-radius:11px;background:#f5f7fa}.booking-edit-ack{display:flex!important;align-items:flex-start!important;grid-template-columns:17px 1fr!important;gap:8px!important;padding:11px;border:1px solid #dfe3ea;border-radius:10px;background:#f9fafc;line-height:1.45!important}.booking-edit-ack input{width:16px!important;height:16px!important;margin:1px 0 0!important;accent-color:var(--blue)}
.booking-edit-form>footer{display:flex;justify-content:flex-end;gap:9px;padding-top:4px}
.booking-cancellation-form{width:min(920px,calc(100% - 36px));margin:20px auto}.booking-route-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px;border:1px solid #dce4ec;border-radius:12px;background:#f8fafc}.booking-route-summary span{display:grid;gap:4px;min-width:0}.booking-route-summary small{color:var(--pink);font:600 8px Poppins;letter-spacing:.8px}.booking-route-summary strong{font:600 11px Poppins;overflow-wrap:anywhere}.booking-route-summary strong i{margin:0 6px;color:#1680bd}.booking-cancellation-steps{padding:15px 17px;border-radius:12px;background:#f5f7fa}.booking-cancellation-steps>strong{font:600 11px Poppins}.booking-cancellation-steps ol{margin:8px 0 0;padding-left:19px;color:#515868;font-size:10px;line-height:1.7}.booking-cancellation-form>label>small{display:block;color:#747a87;font:400 9px Hind}
.audit-integrity{display:flex;align-items:flex-start;gap:9px;margin-bottom:18px;padding:11px 13px;border-radius:10px;color:#4f5d69;background:#eef5f8;font-size:9.5px;line-height:1.5}.audit-integrity i{margin-top:2px;color:#16823b}
.audit-timeline{display:grid;gap:0}.audit-timeline>article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;position:relative;padding-bottom:18px}.audit-timeline>article:not(:last-child)::before{content:"";position:absolute;left:18px;top:35px;bottom:0;width:1px;background:#d9e1e8}.audit-timeline__marker{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#fff;background:var(--violet);box-shadow:0 5px 14px rgba(0,39,89,.18)}
.audit-timeline__body{min-width:0;padding:13px;border:1px solid #e2e5eb;border-radius:12px;background:#fbfcfd}.audit-timeline__body>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.audit-timeline__body header strong,.audit-timeline__body header span{display:block}.audit-timeline__body header strong{font:600 11px Poppins}.audit-timeline__body header span,.audit-timeline__body time{color:#747986;font-size:8.5px}.audit-timeline__body>p{margin:9px 0;color:#4e5260;font-size:9.5px;line-height:1.5}.audit-timeline dl{display:grid;gap:7px;margin:11px 0 0}.audit-timeline dl>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;padding:8px;border-radius:8px;background:#f1f4f7}.audit-timeline dt{font:600 9px Poppins}.audit-timeline dd{display:flex;align-items:center;gap:7px;min-width:0;margin:0;font-size:9px}.audit-timeline del,.audit-timeline ins{overflow-wrap:anywhere;text-decoration:none}.audit-timeline del{color:#a53d55}.audit-timeline ins{color:#13713a;font-weight:600}.audit-timeline details{margin-top:9px}.audit-timeline summary{cursor:pointer;color:#536779;font-size:8.5px}.audit-timeline pre{max-height:160px;overflow:auto;padding:9px;border-radius:8px;background:#17243a;color:#eef5fa;font:8px/1.5 Consolas}.audit-no-diff{display:block;margin-top:8px;color:#818592}
.manual-quote-workflow{display:grid;gap:14px;margin-bottom:18px;padding:15px;border:1px solid #f0ce8e;border-radius:13px;background:#fff9ea}.manual-quote-workflow>div{display:flex;align-items:center;gap:10px}.manual-quote-workflow>div>i{color:#b36c00;font-size:22px}.manual-quote-workflow span,.manual-quote-workflow strong,.manual-quote-workflow small{display:block}.manual-quote-workflow strong{font:600 11px Poppins}.manual-quote-workflow small{margin-top:3px;color:#6d5e47;font-size:9px;line-height:1.4}.manual-quote-workflow form{display:grid;gap:10px}.manual-quote-workflow form>.btn{justify-self:start}.manual-quote-ready{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding:13px;border:1px solid #bfe3ca;border-radius:11px;background:#edf9f1}.manual-quote-ready>i{color:#16823b;font-size:22px}.manual-quote-ready strong,.manual-quote-ready small{display:block}.manual-quote-ready strong{font:600 10px Poppins}.manual-quote-ready small{margin-top:3px;color:#54705d;font-size:9px}
.operations-alert--quote{margin-top:10px;border-color:#f0ce8e!important;background:#fff9e9!important}.operations-alert--quote>i{color:#b36c00!important}
.zone-vehicle-prices{container-type:inline-size}.zone-vehicle-name{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 10px}.zone-vehicle-name span{align-items:flex-start;line-height:1.45;overflow-wrap:anywhere}.zone-vehicle-name span i{flex:0 0 auto;margin-top:2px}.zone-vehicle-name small{display:block;max-width:110px;line-height:1.45}.zone-price-rule{display:flex;gap:6px;margin:-2px 0 0;color:#777b8c;font-size:8px;line-height:1.45}.zone-price-rule i{flex:0 0 auto;margin-top:2px;color:#0b699e}.zone-price-fields{grid-template-columns:minmax(0,1fr)}.zone-price-fields>label:last-child{grid-column:auto}.zone-price-fields input,.zone-price-fields select{box-sizing:border-box;width:100%}.zone-vehicle-price.is-global .zone-price-rule{opacity:.45}
@container (max-width:280px){.zone-vehicle-name{grid-template-columns:1fr}.zone-vehicle-name small{max-width:none;text-align:left}.zone-global-check{align-items:flex-start}.zone-global-check input{margin-top:1px!important}}
@media(max-width:720px){.booking-edit-toolbar{align-items:stretch;flex-direction:column}.booking-edit-toolbar .booking-edit-toolbar__actions{align-items:stretch;flex-direction:column}.booking-edit-grid,.booking-edit-grid--3{grid-template-columns:1fr}.booking-edit-form>footer{flex-direction:column-reverse}.booking-edit-form>footer .btn{justify-content:center}.booking-cancellation-form{width:calc(100% - 20px);margin:10px auto}.booking-route-summary{align-items:stretch;flex-direction:column}.audit-timeline__body>header{flex-direction:column}.audit-timeline dl>div{grid-template-columns:1fr}.audit-timeline dd{align-items:flex-start;flex-direction:column}.audit-timeline dd>i{transform:rotate(90deg)}}

/* Commercial policies and explicit per-zone tax treatment */
.policy-pending-note,.booking-policy-assessment{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;border-radius:11px;font-size:9.5px;line-height:1.5}
.policy-pending-note{border:1px solid #efd69c;background:#fff9e9}.policy-pending-note>i{color:#a66a00;font-size:18px}.policy-pending-note span,.policy-pending-note strong,.policy-pending-note small{display:block}.policy-pending-note strong{font:600 10px Poppins}.policy-pending-note small{margin-top:2px;color:#6d624e}
.policy-pending-note.is-confirmed{border-color:#b8dfc6;background:#effaf3}.policy-pending-note.is-confirmed>i{color:#18834a}.policy-number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.checkout-policy-card{margin-top:18px;padding:17px;border:1px solid #cbdbe7;border-radius:13px;background:#f8fbfd}.checkout-policy-card>header{display:flex;align-items:center;gap:11px;padding-bottom:13px;border-bottom:1px solid #dde8ef}.checkout-policy-card>header>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;color:#fff;background:#002759}.checkout-policy-card h3,.checkout-policy-card p{margin:0}.checkout-policy-card h3{font:600 13px Poppins;color:#172b49}.checkout-policy-card p{margin-top:2px;color:#647386;font-size:9.5px}.checkout-policy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:13px}.checkout-policy-summary article{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid #e0e8ee;border-radius:10px;background:#fff}.checkout-policy-summary article>i{color:#ff0084;font-size:15px}.checkout-policy-summary strong,.checkout-policy-summary span{display:block}.checkout-policy-summary strong{font:600 9.5px Poppins;color:#1e314c}.checkout-policy-summary span{margin-top:3px;color:#637083;font-size:8.5px;line-height:1.45}.checkout-policy-summary>small{grid-column:1/-1;display:flex;align-items:flex-start;gap:7px;color:#5d6878;font-size:8.5px;line-height:1.45}.checkout-policy-consent{border:1px solid #d4e2eb;background:#eef5fa}.checkout-policy-consent:has(input:invalid){border-color:#e4b1b1}
@media(max-width:760px){.checkout-policy-summary{grid-template-columns:1fr}.policy-number-grid{grid-template-columns:1fr}}

/* Embedded booking flow: compact controls, visible feedback and a checkout header that fits the iframe. */
.checkout-back{display:none}
html.is-embedded .booking{z-index:200;overflow:visible}
html.is-embedded .suggestions{z-index:500;max-height:190px;overscroll-behavior:contain}
html.is-embedded .toast{z-index:1000;top:14px;bottom:auto;max-width:calc(100% - 28px);transform:translate(-50%,-24px);text-align:center}
html.is-embedded .toast.show{transform:translate(-50%,0)}
html.is-embedded .checkout-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;height:auto;min-height:112px;padding:18px 14px 0;background:#001f4d}
html.is-embedded .checkout-home{grid-column:1;grid-row:1;display:flex;min-width:0;width:max-content;padding:8px 10px;border-radius:9px;color:#fff;background:rgba(255,255,255,.08)}
html.is-embedded .checkout-home:hover{background:rgba(255,255,255,.16)}
html.is-embedded .checkout-home img{display:none}
html.is-embedded .checkout-back{display:flex;align-items:center;gap:8px;font:600 11px Poppins}
html.is-embedded .checkout-header nav{grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:space-between;width:100%;min-width:0;height:46px;gap:12px;padding:0;background:transparent;font-size:11px}
html.is-embedded .checkout-header nav span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html.is-embedded .checkout-language{position:static;grid-column:2;grid-row:1;align-self:center;justify-self:end;padding:0;transform:none}
html.is-embedded .checkout-shell{width:min(100% - 28px,1120px);margin:20px auto 48px;gap:22px}
html.is-embedded .checkout-form h1{font-size:clamp(24px,4vw,32px)}
.checkout-page.is-point-to-point .flight-row,
.checkout-page.is-point-to-point #arrival-status,
.checkout-page.is-point-to-point #arrival-card,
.checkout-page.is-point-to-point #return-status,
.checkout-page.is-point-to-point #return-card{display:none}

@media(max-width:780px){
  html.is-embedded .checkout-header{grid-template-columns:minmax(0,1fr) auto;padding-inline:10px}
  html.is-embedded .checkout-language{grid-column:2;grid-row:1;padding:0}
  html.is-embedded .checkout-header nav{grid-column:1/-1;grid-row:2;padding:0 3px;gap:7px;font-size:9px}
  html.is-embedded .checkout-shell{width:calc(100% - 20px);margin-top:14px}
}
@media(max-width:620px){
  html.is-embedded .booking-wrap{padding:24px 0 28px!important}
  html.is-embedded .booking__tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  html.is-embedded .booking__tab{padding:8px 3px;font-size:8px}
  html.is-embedded .booking__tab i{display:block;margin:0 0 3px;font-size:15px}
  html.is-embedded .suggestions{max-height:170px}
  html.is-embedded .checkout-language button{min-width:43px;padding:5px}
  html.is-embedded .checkout-language button span{display:none}
  html.is-embedded .checkout-header nav span{white-space:normal;text-align:center;line-height:1.25}
  html.is-embedded .passenger-data-card{padding:15px}
}
.booking-policy-assessment{border:1px solid #dce4ec;background:#f7fafc}.booking-policy-assessment>i{flex:0 0 auto;font-size:20px}.booking-policy-assessment strong{font:600 10px Poppins}.booking-policy-assessment p{margin:3px 0 0;color:#56606d;font-size:9.5px}.booking-policy-assessment.is-free{border-color:#bfe1c9;background:#eff9f2}.booking-policy-assessment.is-free>i{color:#16823b}.booking-policy-assessment.is-penalty{border-color:#edc8c8;background:#fff6f6}.booking-policy-assessment.is-penalty>i{color:#ad2929}
.zone-price-fields{grid-template-columns:minmax(0,1fr)!important}.zone-price-fields>label{grid-column:auto!important}
.admin-login .login-password{display:block;position:relative}.admin-login .login-password input{padding-right:46px}.admin-login .login-password button{position:absolute;right:5px;top:11px;width:34px;height:34px;border:0;border-radius:7px;background:transparent;color:#002759;cursor:pointer}.admin-login .login-password button:hover,.admin-login .login-password button:focus-visible{background:#eef5fa;outline:0}.admin-login button:disabled{cursor:wait;opacity:.7}

/* Zone workspace: the map keeps its width and dynamic vehicle cards use the lower area. */
.zones-admin__grid.is-editing .zone-side{display:none}
.zones-admin__grid.is-editing .zone-map-wrap{grid-column:2;grid-row:1}
.zone-form--workspace:not([hidden]){display:contents}
.zone-form--workspace .zone-form__meta{display:grid;grid-column:3;grid-row:1;align-self:start;gap:10px;min-width:0;padding:14px;border:1px solid #e1e3ec;border-radius:12px;background:#fff}
.zone-form--workspace .zone-form__basics{display:grid;gap:10px;min-width:0}
.zone-form--workspace .zone-vehicle-prices{grid-column:2/-1;grid-row:2;min-width:0;margin:0}
.zone-vehicle-prices__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;min-width:0}
.zone-form--workspace .zone-vehicle-price{align-content:start;min-width:0}
.zone-form--workspace .zone-price-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.zone-form--workspace .zone-form__actions{position:sticky;bottom:12px;z-index:260;display:flex;grid-column:2/-1;grid-row:3;align-items:center;justify-content:flex-end;gap:14px;padding:10px 12px;border:1px solid rgba(202,215,227,.92);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 10px 26px rgba(0,39,89,.12);backdrop-filter:blur(8px)}
.zone-form--workspace .zone-form__actions .admin-error{flex:1;margin:0;text-align:left}

.zones-admin{position:relative;z-index:0;isolation:isolate}
.admin-unsaved-banner{position:fixed;z-index:100000;pointer-events:none;left:22px;bottom:22px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;width:min(400px,calc(100vw - 44px));box-sizing:border-box;padding:10px 12px;border:1px solid #e5c983;border-radius:11px;color:#4c411f;background:#fff9e8;box-shadow:0 12px 30px rgba(0,39,89,.18)}
.admin-unsaved-banner[hidden]{display:none}.admin-unsaved-banner>i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#fff;background:#b17200;font-size:16px}.admin-unsaved-banner strong,.admin-unsaved-banner small{display:block}.admin-unsaved-banner strong{font:600 10px Poppins}.admin-unsaved-banner small{margin-top:2px;color:#6e6243;font-size:8.5px;line-height:1.4}

@media(max-width:1120px){
  .zones-admin__grid.is-editing .zone-map-wrap{grid-column:2}
  .zone-form--workspace .zone-form__meta{grid-column:2;grid-row:2}
  .zone-form--workspace .zone-vehicle-prices{grid-column:2;grid-row:3}
  .zone-form--workspace .zone-form__actions{grid-column:2;grid-row:4}
}
@media(max-width:760px){
  .zone-google-reference{height:390px}.zone-google-reference header{align-items:flex-start;flex-direction:column}.zone-google-reference header .btn{width:100%;justify-content:center}.zone-google-reference iframe{height:calc(100% - 115px)}
  .zones-admin__grid.is-editing .zone-map-wrap{grid-column:1;grid-row:auto}
  .zone-form--workspace .zone-form__meta,.zone-form--workspace .zone-vehicle-prices,.zone-form--workspace .zone-form__actions{grid-column:1;grid-row:auto}
  .zone-vehicle-prices__grid{grid-template-columns:1fr}
  .zone-reference-search{grid-template-columns:1fr}.zone-reference-search .btn{width:100%;justify-content:center}
}
@media(max-width:520px){
  .zone-form__head{align-items:stretch;flex-direction:column}.zone-form__head-actions{justify-content:space-between}.zone-save-top{flex:1;justify-content:center}
  .zone-form--workspace .zone-price-fields{grid-template-columns:1fr!important}
  .zone-form--workspace .zone-form__actions{align-items:stretch;flex-direction:column}
  .zone-form--workspace .zone-form__actions .btn{justify-content:center;width:100%}
  .admin-unsaved-banner{right:12px;bottom:12px;left:12px;grid-template-columns:30px minmax(0,1fr);width:auto;padding:8px 9px}.admin-unsaved-banner>i{width:30px;height:30px;border-radius:8px}
}

/* Compact driver-side tools: driver records and dispatch policy share one tabbed panel. */
.driver-forms{gap:0}
.driver-tool-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:7px;border:1px solid #e2e3ee;border-bottom:0;border-radius:15px 15px 0 0;background:#fff}
.driver-tool-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:0;border-radius:9px;color:#465164;background:#f3f6f9;cursor:pointer;font:600 10px Poppins}
.driver-tool-tabs button i{color:var(--pink);font-size:15px}
.driver-tool-tabs button:hover,.driver-tool-tabs button:focus-visible{outline:0;background:#e8f0f6}
.driver-tool-tabs button.is-active{color:#fff;background:var(--blue);box-shadow:0 7px 17px rgba(0,39,89,.18)}
.driver-tool-tabs button.is-active i{color:#fff}
.driver-forms>.driver-tool-panel{border-radius:0 0 15px 15px}
.driver-tool-panel[hidden]{display:none!important}

/* The model editor keeps its categories compact; physical units remain a separate card. */
.vehicle-editor-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:5px;border:1px solid #e2e3ee;border-radius:12px;background:#f7f9fb}
.vehicle-editor-tabs button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:39px;padding:6px;border:0;border-radius:8px;color:#465164;background:transparent;cursor:pointer;font:600 8px Poppins;line-height:1.2;text-align:center}
.vehicle-editor-tabs button i{flex:none;color:var(--pink);font-size:13px}
.vehicle-editor-tabs button span{min-width:0}
.vehicle-editor-tabs button:hover,.vehicle-editor-tabs button:focus-visible{outline:0;background:#e8f0f6}
.vehicle-editor-tabs button.is-active{color:#fff;background:var(--blue);box-shadow:0 6px 14px rgba(0,39,89,.18)}
.vehicle-editor-tabs button.is-active i{color:#fff}
.vehicle-editor-tab-panel{display:grid;gap:14px}
.vehicle-editor-tab-panel[hidden]{display:none!important}
.currency-field-caption{margin-top:2px;color:#687587!important;font:500 8px/1.2 Poppins!important}

/* Checkout header: one bar, no logo, process centered and one language toggle. */
.checkout-header,
html.is-embedded .checkout-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:1fr;align-items:center;width:100%;height:76px;min-height:76px;padding:0 16px;background:#001f4d;border:0}
.checkout-home,
html.is-embedded .checkout-home{grid-column:1;grid-row:1;display:flex;align-items:center;align-self:center;min-width:0;width:auto;padding:9px 11px;border-radius:9px;color:#fff;background:rgba(255,255,255,.09)}
.checkout-home:hover,
html.is-embedded .checkout-home:hover{background:rgba(255,255,255,.17)}
.checkout-back,
html.is-embedded .checkout-back{display:flex;align-items:center;gap:7px;font:600 10px Poppins}
.checkout-header nav,
html.is-embedded .checkout-header nav{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;align-self:stretch;width:100%;height:auto;min-width:0;gap:clamp(16px,5vw,72px);padding:0 14px;background:transparent;font:600 12px Poppins}
.checkout-header nav span,
html.is-embedded .checkout-header nav span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.checkout-language,
html.is-embedded .checkout-language{position:static;grid-column:3;grid-row:1;align-self:center;justify-self:end;padding:0;transform:none}
.checkout-language button,
html.is-embedded .checkout-language button{display:flex;min-width:54px}

/* Embedded panels remain anchored to their controls and use the free space below. */
html.is-embedded .suggestions{
  max-height:260px;
  border:1px solid #dbe4ec;
  border-radius:12px;
  box-shadow:0 18px 42px rgba(0,39,89,.18);
  scrollbar-width:thin;
  scrollbar-color:#9aabba transparent;
}
html.is-embedded .suggestions::-webkit-scrollbar{width:8px}
html.is-embedded .suggestions::-webkit-scrollbar-thumb{border:2px solid #fff;border-radius:999px;background:#9aabba}
html.is-embedded .suggestion{padding:10px 12px;border-color:#e8edf2}
html.is-embedded .suggestion:first-child{border-radius:11px 11px 0 0}
html.is-embedded .suggestion:last-child{border-radius:0 0 11px 11px}
html.is-embedded .calendar{position:absolute;z-index:600;top:calc(100% + 6px);right:auto;bottom:auto;left:0;width:250px;max-height:none;padding:12px;overflow:visible;border:1px solid #dbe4ec;border-radius:12px;box-shadow:0 18px 42px rgba(0,39,89,.18);transform:none}
html.is-embedded .calendar:before{display:none}
html.is-embedded .passenger-popover{position:absolute;z-index:600;top:calc(100% + 10px);right:0;bottom:auto;left:auto;width:310px;max-height:none;overflow:visible;border:1px solid #dbe4ec;border-radius:12px;box-shadow:0 18px 42px rgba(0,39,89,.18)}

@media(max-width:520px){
  .calendar__day{width:36px;height:36px}
  html.is-embedded .suggestions{max-height:220px}
  html.is-embedded .calendar{position:fixed;top:50%;left:50%;width:min(330px,calc(100vw - 28px));padding:14px;transform:translate(-50%,-50%)}
  html.is-embedded .passenger-popover{position:fixed;top:auto;right:14px;bottom:14px;left:14px;width:auto;max-height:calc(100vh - 28px);overflow:auto;opacity:1;animation:none;transform:none}
  html.is-embedded .passenger-popover:before{display:none}
}

@media(max-width:620px){
  .checkout-header,
  html.is-embedded .checkout-header{height:100px;min-height:100px;padding:20px 9px 0}
  .checkout-home,
  html.is-embedded .checkout-home{width:38px;height:36px;justify-content:center;padding:0}
  .checkout-back>span{display:none}
  .checkout-header nav,
  html.is-embedded .checkout-header nav{gap:5px;padding:0 7px;font-size:8px;line-height:1.2;text-align:center}
  .checkout-header nav span,
  html.is-embedded .checkout-header nav span{flex:1;white-space:normal}
  .checkout-language button,
  html.is-embedded .checkout-language button{min-width:48px;padding:5px 6px}
  html.is-embedded .checkout-language button span{display:inline}
}

@media(min-width:621px){
  .checkout-header,
  html.is-embedded .checkout-header{height:96px;min-height:96px;padding:20px 16px 0}
}

/* Phone booking: explicit optional route and readable live policy cards. */
.phone-map-toolbar{display:flex;gap:16px;align-items:center;justify-content:space-between}
.phone-map-toolbar>[data-phone-map-status]{flex:1;margin:0;font:400 11px/1.6 Hind;color:#506581}
.phone-map-toolbar .phone-route-switch{flex:0 1 390px;margin:0;padding:11px 13px;min-width:260px}
.phone-route-switch:has(input:disabled){background:#f7f9fc}
.phone-route-switch .user-setting-switch__copy strong{display:flex;align-items:center;gap:7px}
.phone-route-switch .user-setting-switch__track{flex:none}
.phone-policies{padding:17px;border:1px solid #d5e1ef;border-radius:12px;background:#f8fbfe}
.phone-policies>header{display:flex;gap:11px;align-items:center;margin-bottom:14px}
.phone-policies>header>i{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:10px;background:var(--blue);color:#fff;font-size:18px}
.phone-policies h4{margin:0;font:600 12px/1.5 Poppins;color:var(--blue)}
.phone-policies p{margin:4px 0 0!important;font:400 12px/1.6 Hind!important;color:#52647c;overflow-wrap:anywhere;white-space:pre-line}
.phone-policies-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.phone-policies-grid article{display:flex;align-items:flex-start;gap:11px;padding:14px;border:1px solid #dce5ef;border-radius:10px;background:#fff;min-width:0}
.phone-policy-icon{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:9px;background:#fff0f7;color:var(--pink);font-size:16px}
.phone-policies-grid article>div{min-width:0}
.phone-policies-grid details{margin-top:9px;border-top:1px solid #e3eaf2;padding-top:9px}
.phone-policies-grid summary{cursor:pointer;font:500 11px/1.5 Poppins;color:var(--blue)}
.phone-policies .phone-policies-pending{display:flex;gap:7px;align-items:flex-start;margin-top:12px!important;padding:10px;border-radius:8px;background:#eef4fa}
@media(max-width:760px){.phone-map-toolbar{flex-direction:column;align-items:stretch;gap:10px}.phone-map-toolbar .phone-route-switch{flex:auto;min-width:0}.phone-policies-grid{grid-template-columns:1fr}.phone-policies{padding:12px}.phone-policies-grid article{padding:12px}}

/* Shared map gestures and operator workflows: clear outcomes, finger-sized controls. */
.map-gesture-help{position:absolute;left:8px;bottom:21px;z-index:700;padding:5px 8px;border:1px solid #d1deec;border-radius:6px;background:#fffffff2;color:#002759;font:500 10px/1.5 Poppins;pointer-events:none;max-width:calc(100% - 16px)}
.map-gesture-tip{position:absolute;inset:0;z-index:800;display:grid;place-items:center;text-align:center;padding:25px;background:#00275999;color:#fff;font:500 15px/1.6 Poppins;opacity:0;pointer-events:none;transition:opacity .15s}.map-gesture-tip.is-visible{opacity:1}
.leaflet-control-zoom a{width:44px!important;height:44px!important;line-height:44px!important}
.widget-language button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:64px;min-height:44px;font-size:10px}
.widget-language img{width:22px;height:15px;object-fit:cover;border-radius:3px;border:1px solid #00275915}
.booking-workflow-notice{display:flex;gap:12px;align-items:center;padding:15px;margin-bottom:15px;border:1px solid #cedff1;border-radius:12px;background:#f3f8fe;color:var(--blue)}
.booking-workflow-notice>i{font-size:21px;flex:none}.booking-workflow-notice>div{flex:1;min-width:0}.booking-workflow-notice strong{font:600 12px Poppins}.booking-workflow-notice p{margin:4px 0 0;font:400 12px/1.6 Hind}.booking-workflow-notice .btn{flex:none}
.trip-adjustment-editor,.manual-payment-extra{margin-top:18px;border:1px solid #d5e1ef;border-radius:12px;background:#f8fbfe;padding:15px}
.trip-adjustment-editor>summary{display:flex;gap:11px;align-items:center;cursor:pointer;min-height:44px;color:var(--blue)}.trip-adjustment-editor>summary>span{flex:1}.trip-adjustment-editor summary strong,.trip-adjustment-editor summary small{display:block}.trip-adjustment-editor summary strong{font:600 13px/1.5 Poppins}.trip-adjustment-editor summary small{font:400 11px/1.6 Hind;color:#596d85;margin-top:4px}.trip-adjustment-editor[open]>summary>i:last-child{transform:rotate(180deg)}
.trip-adjustment-editor .adjustment-form{margin-top:14px}.adjustment-impact{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:#eef5fc;border:1px solid #d5e1ef;border-radius:9px;padding:14px;font:400 12px/1.6 Hind;color:var(--blue)}.adjustment-impact b{display:block;font:600 15px Poppins}.adjustment-impact strong{font:600 12px/1.6 Poppins}.adjustment-tariff-control small{display:block;font:400 11px/1.6 Hind;margin-top:7px;color:#63758c}
.trip-adjustment-editor .adjustment-form,#cancellation-resolution-form{grid-template-columns:repeat(2,minmax(0,1fr))}
.trip-adjustment-editor .adjustment-form>.btn,#cancellation-resolution-form>.btn{grid-column:1/-1;justify-self:start}
.admin-modal .manual-payment-form .phone-policy{display:flex;align-items:center;gap:10px}
.admin-modal .manual-payment-form .phone-policy input{width:20px!important;height:20px!important;flex:none;margin:0}
@media(max-width:760px){.trip-adjustment-editor .adjustment-form,#cancellation-resolution-form{grid-template-columns:minmax(0,1fr)}.trip-adjustment-editor .adjustment-form>.btn,#cancellation-resolution-form>.btn{width:100%}}
.contact-manual-steps{display:grid;gap:10px;padding:14px;border:1px solid #d5e1ef;border-radius:10px;background:#f5f9fe;font:400 12px/1.7 Hind;color:#405879}.contact-manual-steps>span{display:flex;gap:9px;align-items:center}.contact-manual-steps b{display:grid;place-items:center;flex:none;width:25px;height:25px;background:var(--blue);color:#fff;border-radius:50%;font:600 12px Poppins}.contact-manual-steps small{font-size:11px;color:#536a87}
.contact-history{margin-top:20px}.contact-history>h3{margin:0;font:600 16px Poppins;color:var(--blue)}.contact-history>p{color:#63758c;font:400 11px/1.6 Hind}.contact-history article{margin-top:12px;padding:14px;border:1px solid #d5e1ef;border-radius:11px;background:#f8fbfe;overflow-wrap:anywhere}.contact-history article header{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.contact-history article header strong{font:600 12px Poppins;color:var(--blue)}.contact-history time{font:400 11px Hind;color:#617590}.contact-history article p{margin:8px 0;font:400 12px/1.6 Hind;white-space:pre-wrap}.contact-history article small{font:400 11px Hind;color:#617590}.contact-history summary,.manual-payment-extra>summary{cursor:pointer;padding:8px 0;min-height:44px;font:500 12px/1.6 Poppins;color:var(--blue)}
.workflow-toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:99999;background:var(--blue);border-radius:11px;box-shadow:0 7px 25px #00275930;color:#fff;padding:14px 20px;max-width:calc(100% - 32px);font:500 12px/1.6 Poppins}

/* The iframe supplies the viewport: center the idle widget without fake page height. */
.widget-page{min-height:100dvh}
.widget-page>main{min-height:100dvh;display:flex;flex-direction:column}
.widget-page .booking-wrap{display:grid;align-items:center;min-height:100dvh;height:auto;padding:24px 16px!important;box-sizing:border-box}
.widget-page .booking{position:relative;top:auto;left:auto;transform:none!important;margin:0 auto;width:min(790px,100%);max-width:100%;min-width:0;opacity:1!important;animation:none;transition:none}
.widget-page .booking__tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.widget-page .passenger-dismiss-layer{position:fixed;inset:0;z-index:599;background:rgba(0,39,89,.08)}
.widget-page .passenger-dismiss-layer[hidden]{display:none!important}
.widget-page .passenger-popover{z-index:600}
.widget-page .passenger-popover__footer{padding-top:10px}
.widget-page .passenger-popover .passenger-done{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;height:auto;padding:10px 16px;border:1px solid var(--blue);border-radius:9px;background:var(--blue);color:#fff;font:600 13px Poppins;transform:none}
.widget-page .passenger-popover .passenger-done:hover{background:#07386d;transform:none}
@media(min-width:521px){.widget-page .passenger-popover{position:fixed!important;right:auto!important;bottom:auto!important;max-height:calc(100dvh - 24px);overflow:auto;width:min(310px,calc(100vw - 24px))}}
.widget-page:has(#route-results:not([hidden])) .booking-wrap{min-height:0}
.widget-page .calendar{position:fixed;right:auto;bottom:auto;width:min(300px,calc(100vw - 24px))!important;max-height:calc(100dvh - 24px);transform:none!important;overflow:auto}
.widget-page .calendar:before{display:none}
.booking-swap{display:grid;place-items:center;padding:0}
.booking-swap svg{display:block;width:20px;height:20px;flex:none}
.map-gesture-help[hidden],.map-gesture-tip[hidden]{display:none!important}
@media(max-width:520px){
  .widget-page .booking-wrap{padding:16px 12px!important}
  .widget-page .booking__row--places{grid-template-columns:minmax(0,1fr) 44px;gap:10px}
  .widget-page .booking-origin{grid-column:1;grid-row:1}
  .widget-page .booking-destination{grid-column:1;grid-row:2}
  .widget-page .booking-swap{grid-column:2;grid-row:1/span 2;width:44px;height:44px;align-self:center;justify-self:center}
  .widget-page .booking-roundtrip{grid-column:1/-1;grid-row:3;min-height:44px}
  .widget-page .booking__row--details{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .widget-page .booking__row--details>*{min-width:0}
  .widget-page .field,.widget-page .booking__search{min-height:48px;height:auto}
  .widget-page .booking__tab{min-height:64px;font-size:10px;line-height:1.35;white-space:normal}
  .widget-page .booking__tab span{overflow-wrap:normal}
  .widget-page .booking.is-hourly .booking__row--places{grid-template-columns:minmax(0,1fr)}
  .widget-page .booking.is-hourly .booking-origin{grid-column:1/-1}
  .widget-page .passenger-popover>div{grid-template-columns:minmax(0,1fr) 44px 36px 44px;gap:6px;padding:10px 0}
  .widget-page .passenger-popover button{width:44px;height:44px}
  .widget-page .passenger-count-input{width:36px;min-width:0;height:44px}
  .widget-page .hourly-duration-control{grid-column:1/-1}
  .widget-page .hourly-duration-control .field{min-height:58px;padding:6px 10px;gap:10px}
  .widget-page .hourly-duration-control .field__icon{display:block}
  .widget-page .hourly-duration-control .field__copy{flex-direction:row;align-items:center;justify-content:space-between;gap:8px}
  .widget-page .hourly-duration-control .field__copy>small{font-size:11px;color:#607086}
  .widget-page .hourly-duration-control .field__copy>.hourly-stepper{grid-template-columns:44px 48px 44px;gap:0;flex-shrink:0}
  .widget-page .hourly-duration-control button{width:44px;height:44px}
  .widget-page .hourly-duration-value{height:44px}
  .widget-page .hourly-duration-control #hourly-hours{width:26px;height:44px;font-size:16px}
  .widget-page .hourly-time-trigger{text-align:left}
  .widget-page .hourly-time-trigger .field__copy{align-items:flex-start}
  .widget-page .hourly-time-trigger strong{font-size:14px}
  .widget-page .alloc-row button{width:44px;height:44px}
}

/* True borders and tabular figures keep day markers crisp at browser zoom levels. */
.calendar__day,.ui-date__days button,.flight-date-days button,.checkout-date-days button{display:flex;align-items:center;justify-content:center;padding:0;border:2px solid transparent;box-sizing:border-box;font-family:Poppins,Arial,sans-serif;font-variant-numeric:tabular-nums;font-size:12px;line-height:1}
.calendar__day{width:28px;height:28px;border-radius:50%}
.calendar__day.is-today{border-color:var(--pink);box-shadow:none}
.calendar__day.is-selected{background:var(--blue);color:#fff;box-shadow:none}
.ui-date__days button.is-today,.flight-date-days button.is-today:not(.is-selected),.checkout-date-days button.is-today{border-color:#8faec7;box-shadow:none}
.ui-date__days button.is-selected,.flight-date-days button.is-selected,.checkout-date-days button.is-selected{background:var(--blue);color:#fff;box-shadow:none}
@media(max-width:520px){.calendar__day{width:min(36px,100%);height:auto;aspect-ratio:1}}
@media(max-width:650px){.admin-page:has(#admin-unsaved-banner:not([hidden])) .admin-modal__body{padding-bottom:100px}.admin-page:has(#admin-unsaved-banner:not([hidden])) .confirm-dialog,.admin-page:has(#admin-unsaved-banner:not([hidden])) .email-preview-dialog,.admin-page:has(#admin-unsaved-banner:not([hidden])) .whatsapp-preview-dialog{padding-bottom:100px}}
.widget-page .route-results{padding:18px 0 28px;scroll-margin-top:8px;min-height:100dvh;box-sizing:border-box}
.widget-page .route-results__inner{width:min(1120px,calc(100% - 32px));max-width:none;grid-template-columns:minmax(0,1fr) minmax(240px,.55fr);gap:20px}
.widget-page .route-results__copy{min-width:0;opacity:1;transform:none}
.widget-page .route-results .kicker{margin:0 0 8px}
.widget-page .route-results h2{margin:0 0 12px}
.widget-page .route-message{margin:0 0 8px;padding:6px 0}
.widget-page .route-message strong{display:none}
.widget-page .route-message p{margin:0;line-height:1.6}
.widget-page .trip-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.widget-page .trip-choice{min-width:0;padding:15px}
.widget-page .allocation-summary{padding:9px 14px}
.widget-page .trip-choice h3{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.widget-page .trip-choice__body{grid-template-columns:minmax(80px,112px) minmax(0,1fr);gap:10px}
.widget-page .trip-choice img{width:100%;height:72px;object-fit:contain}
.widget-page .trip-card{min-width:0;position:static;padding:14px;border:1px solid #dce5ef;border-radius:12px;opacity:1;transform:none}
.widget-page #map{height:250px;min-height:0}
.map-gesture-help[hidden],.map-gesture-tip[hidden]{display:none!important}
.payment-schedule-warning,.payment-review-warning{margin:0 0 16px;padding:14px;border:1px solid #e9c180;border-radius:11px;background:#fff8ec;color:#6f450b;font:400 13px/1.6 Hind}
.payment-schedule-warning strong,.payment-review-warning strong{display:block;font:600 13px Poppins;margin-bottom:5px}
@media(max-width:800px){.widget-page .route-results__inner{grid-template-columns:minmax(0,1fr);gap:16px}.widget-page #map{height:220px}}
@media(max-width:520px){.widget-page .trip-options{grid-template-columns:minmax(0,1fr)}.widget-page .route-results__inner{width:calc(100% - 24px)}}
.payment-request-panel small{display:block;font:400 11px/1.6 Hind;color:#5b6f87;margin-top:10px}
.payment-check-result:empty{display:none}.payment-check-result{padding:12px;border-radius:10px;background:#f1f6fb;font:400 13px/1.6 Hind;color:var(--blue)}.payment-check-result.admin-error{background:#fff4f6;color:#a52347}
.ui-control__trigger:disabled,.nadria-time-trigger:disabled{cursor:not-allowed;background:#f0f3f7;color:#64758a;opacity:.75}
@media(max-width:650px){.admin-page input:not([type=checkbox]):not([type=radio]),.admin-page select,.admin-page textarea{font-size:16px;min-height:44px}.admin-page .ui-control__trigger,.admin-page .btn,.admin-page [data-settings-section],.admin-page .ui-select__menu [role=option]{min-height:44px}.admin-page .entity-action{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}.admin-page .ui-date__calendar{position:fixed;top:50%;left:50%;width:min(370px,calc(100vw - 16px));transform:translate(-50%,-50%);animation:none;z-index:99990;max-height:calc(100dvh - 24px);overflow:auto;padding:12px}.admin-page .ui-date__days button{min-height:44px;aspect-ratio:auto;font-size:14px}.admin-page .ui-date__head button,.admin-page .ui-date__footer button,.admin-page .ui-date__months button,.admin-page .ui-date__years button{min-height:44px}}
.admin-modal .btn,.admin-phone-booking .btn{min-height:44px}.admin-modal .ui-control__trigger,.admin-modal input:not([type=checkbox]):not([type=hidden]),.admin-phone-booking .ui-control__trigger,.admin-phone-booking input:not([type=checkbox]):not([type=hidden]){min-height:44px}
.admin-modal .nadria-time-trigger,.admin-phone-booking .nadria-time-trigger{min-height:44px}
.contact-history h3{background:transparent;padding:0;color:var(--blue);font:600 16px Poppins}
.recovery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:14px;margin-top:18px}.recovery-card{padding:18px;border:1px solid #dce5ef;border-radius:14px;background:#fff;overflow-wrap:anywhere}.recovery-card h3{font:600 14px Poppins;margin:0 0 8px}.recovery-card p,.recovery-card small{font-size:11px;line-height:1.6}.recovery-card .form-actions{display:flex;flex-wrap:wrap;gap:8px}.recovery-card .btn{min-height:44px}.booking-delete-action{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;margin:12px 0;border:1px solid #e6dfd7;border-radius:10px;background:#fff9f2;font-size:11px}.typed-confirm-dialog textarea{width:100%;min-height:76px;box-sizing:border-box;padding:10px;border:1px solid #d8e0ec;border-radius:8px;font:12px Poppins}.typed-confirm-dialog input{min-height:44px}.typed-confirm-dialog section{max-height:calc(100dvh - 32px);overflow:auto}.typed-confirm-dialog label{display:block;margin:12px 0}.typed-confirm-dialog .btn{min-height:44px}.typed-confirm-dialog section>form{display:block;grid-column:1/-1;min-width:0;width:100%}.typed-confirm-dialog form>label{width:100%;box-sizing:border-box}.typed-confirm-dialog form input{width:100%;box-sizing:border-box}.typed-confirm-dialog form .confirm-dialog__actions{display:flex;flex-wrap:wrap;gap:8px}.typed-confirm-dialog form .confirm-dialog__actions button{flex:1;white-space:normal}@media(max-width:620px){.booking-delete-action{flex-direction:column;align-items:stretch}.recovery-card .form-actions .btn{flex:1;min-width:140px}}
@media(max-width:760px){.booking .field{min-height:48px;height:auto}.booking .autocomplete input{min-height:44px;font-size:13px}.booking .booking__tab,.booking .booking__search,.booking #passenger-trigger,.booking .roundtrip{min-height:48px}.booking .swap{width:44px;height:44px}.booking .date-control .field{height:48px}.booking .date-control input{min-height:26px;font-size:12px}}
@media(max-width:760px){.admin-modal__head{padding:12px;gap:10px;align-items:flex-start}.admin-modal__head h2{min-width:0;flex:1;flex-wrap:wrap;font-size:16px;overflow-wrap:anywhere}.admin-modal__head #modal-close{min-width:70px;flex:none;padding:10px}.admin-modal .booking-detail__content{padding:12px}.admin-modal .admin-subpanel{padding:10px}.admin-modal .manual-payment-form,.admin-modal .notification-form{padding:12px}.admin-modal .trip-adjustment-editor{padding:10px}}
@media(max-width:760px){.booking-workflow-notice{flex-wrap:wrap}.booking-workflow-notice .btn{width:100%}.trip-adjustment-editor,.manual-payment-extra{padding:12px}.payment-request-panel .notification-actions{align-items:stretch}.payment-request-panel .btn{width:100%}.phone-contact{grid-column:1/-1;grid-template-columns:110px minmax(0,1fr)}.admin-modal .notification-actions>.btn{min-height:46px}.contact-history article header{flex-direction:column}.booking-edit-toolbar__actions .btn{min-height:46px}}
