/* Doaba Cabs V9.19 cache-safe GPS quotation, unchanged Nawanshahr market fares and booking interface. */
.dc-native-route-grid{display:grid;grid-template-columns:minmax(0,1fr) 46px minmax(0,1fr);gap:14px;align-items:end}.dc-native-route-grid label,.dc-fare-primary-grid label{display:flex;flex-direction:column;gap:7px}.dc-native-route-grid label>span,.dc-fare-primary-grid label>span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.dc-native-route-grid input,.dc-fare-primary-grid input,.dc-fare-primary-grid select,.dc-stop-row input{width:100%;min-height:53px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);padding:12px 14px;outline:none}.dc-native-route-grid input:focus,.dc-fare-primary-grid input:focus,.dc-fare-primary-grid select:focus,.dc-stop-row input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(23,104,165,.1)}.dc-place-field small{color:var(--muted);font-size:10px}.dc-native-route-grid .dc-route-swap{margin-bottom:25px;width:44px;height:44px}.dc-route-stops{margin-top:15px;padding:13px 15px;border:1px dashed #b7cad4;border-radius:13px;background:#f8fbfc}.dc-route-stops-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.dc-route-stops-head>span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.dc-route-stops-head button,.dc-text-button{border:0;background:transparent;color:var(--blue);font-size:11px;font-weight:800;cursor:pointer}.dc-stop-row{display:grid;grid-template-columns:26px 1fr 35px;align-items:center;gap:8px;margin-top:10px}.dc-stop-row>span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-size:10px;font-weight:800}.dc-stop-row>button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--danger);font-size:18px;cursor:pointer}.dc-fare-primary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:17px}.dc-route-calculator{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(440px,1.25fr);gap:0;min-height:430px;margin-top:22px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--mist)}.dc-route-calculator>*{min-width:0}.dc-route-control{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:34px;background:linear-gradient(145deg,#fff,#edf6f8)}.dc-route-status>span{display:block;margin-bottom:10px;color:var(--teal);font-size:9px;font-weight:800;letter-spacing:.15em}.dc-route-status h3{margin-bottom:10px;font-size:27px}.dc-route-status p{margin-bottom:25px;color:var(--muted);font-size:13px}.dc-route-status.is-loading>span{color:var(--blue)}.dc-route-status.is-error>span,.dc-route-status.is-error h3{color:var(--danger)}.dc-route-status.is-success>span{color:var(--success)}.dc-route-control>.dc-action{margin-bottom:10px}.dc-route-map{position:relative;width:100%;min-width:0;min-height:430px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#dceaf0,#eef5f7);isolation:isolate}.dc-route-map:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.28;background-image:linear-gradient(rgba(23,104,165,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(23,104,165,.15) 1px,transparent 1px);background-size:35px 35px}.dc-route-map>.dc-map-placeholder{text-align:center;max-width:330px;padding:25px}.dc-route-map>.dc-map-placeholder span{display:block;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:.16em}.dc-route-map>.dc-map-placeholder strong{display:block;margin:8px 0;color:var(--ink);font:700 22px Manrope}.dc-route-map>.dc-map-placeholder small{color:var(--muted)}.dc-route-map.is-google-map-ready{display:block}.dc-route-map.is-google-map-ready:before{display:none}.dc-route-map.is-google-map-ready>div{width:100%!important;height:100%!important;max-width:none!important;padding:0!important;text-align:initial!important}.dc-route-map.is-map-error{display:grid;background:#fff4f2}.pac-container{z-index:10000!important;border:0!important;border-radius:0 0 13px 13px!important;box-shadow:0 18px 48px rgba(6,26,47,.2)!important;font-family:"DM Sans",Arial,sans-serif!important}.pac-item{padding:10px 13px!important;font-size:12px!important;cursor:pointer}.pac-item-query{font-size:13px!important}.dc-native-quote{margin-top:22px;padding:26px;border:1px solid #a9ddcf;border-radius:19px;background:linear-gradient(135deg,#edfaf5,#fff)}.dc-quote-summary{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(500px,1.3fr);align-items:center;gap:30px;padding-bottom:22px;border-bottom:1px solid #cce7de}.dc-quote-summary>div:first-child>span{display:block;color:var(--teal);font-size:9px;font-weight:800;letter-spacing:.14em}.dc-quote-summary>div:first-child>strong{display:block;margin:4px 0;color:var(--ink);font:800 38px Manrope}.dc-quote-summary>div:first-child>small{color:var(--muted)}.dc-route-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.dc-route-metrics span{padding:13px;border:1px solid #cce7de;border-radius:11px;background:#fff;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.dc-route-metrics b{display:block;margin-bottom:3px;color:var(--ink);font:800 14px Manrope;text-transform:none;letter-spacing:0}.dc-vehicle-quotes{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:20px}.dc-vehicle-quotes button{min-height:116px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:left;cursor:pointer;transition:.18s}.dc-vehicle-quotes button:hover,.dc-vehicle-quotes button.is-selected{border-color:var(--blue);box-shadow:0 10px 24px rgba(23,104,165,.12);transform:translateY(-2px)}.dc-vehicle-quotes button.is-selected{background:var(--sky)}.dc-vehicle-quotes span{color:var(--muted);font-size:10px;font-weight:800}.dc-vehicle-quotes strong{margin:4px 0;color:var(--ink);font:800 21px Manrope}.dc-vehicle-quotes small{color:var(--muted);font-size:9px}.dc-quote-disclaimer{margin:16px 0 0;color:var(--muted);font-size:11px}.dc-native-quote .dc-live-quote-actions{margin-top:18px;padding-top:18px;border-top:1px solid #cce7de}.dc-native-fare-page .dc-standard-hero p{max-width:760px;color:#dce7ee;font-size:18px}.dc-native-fare-page .dc-book-page{background:var(--mist)}
@media(max-width:1180px){.dc-fare-primary-grid{grid-template-columns:repeat(3,1fr)}.dc-route-calculator{grid-template-columns:1fr}.dc-route-control{min-height:300px}.dc-route-map{min-height:440px}.dc-quote-summary{grid-template-columns:1fr}.dc-vehicle-quotes{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.dc-native-route-grid{grid-template-columns:1fr}.dc-native-route-grid .dc-route-swap{margin:0 auto;transform:rotate(90deg)}.dc-fare-primary-grid{grid-template-columns:1fr 1fr}.dc-route-calculator{margin-left:-14px;margin-right:-14px;border-radius:15px}.dc-route-control{padding:26px 22px;min-height:280px}.dc-route-map{min-height:360px}.dc-native-quote{padding:18px}.dc-route-metrics{grid-template-columns:1fr 1fr}.dc-vehicle-quotes{grid-template-columns:1fr 1fr}.dc-live-quote-actions{justify-content:stretch}.dc-live-quote-actions .dc-action{width:100%}.dc-quote-summary>div:first-child>strong{font-size:32px}}
.dc-place-field-group{display:flex;flex-direction:column;gap:7px}.dc-current-location{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:38px;border:1px solid #9fd8cf;border-radius:10px;padding:8px 12px;background:#eaf8f4;color:#07685f;font-size:11px;font-weight:850;cursor:pointer}.dc-current-location:hover{background:#dff4ee;border-color:var(--teal)}.dc-current-location b{font-size:9px;letter-spacing:.12em}.dc-current-location:disabled{opacity:.7;cursor:wait}
@media(max-width:480px){.dc-fare-primary-grid{grid-template-columns:1fr}.dc-route-metrics,.dc-vehicle-quotes{grid-template-columns:1fr}.dc-route-map{min-height:310px}}

/* V8.2 real vehicle fare cards */
.dc-vehicle-quotes button{min-height:318px;justify-content:flex-start;padding:0;overflow:hidden;background:#fff}
.dc-vehicle-quote-photo{position:relative;display:block;width:100%;height:142px;overflow:hidden;background:linear-gradient(145deg,#eef5f7,#fff)}
.dc-vehicle-quote-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.dc-vehicle-photo-fallback{display:none!important;position:absolute;inset:0;place-items:center;padding:18px;color:var(--navy)!important;font:800 14px Manrope!important;text-align:center}
.dc-vehicle-quote-photo.is-missing img{display:none}
.dc-vehicle-quote-photo.is-missing .dc-vehicle-photo-fallback{display:grid!important}
.dc-vehicle-quote-body{display:flex!important;flex:1;width:100%;flex-direction:column;align-items:flex-start;padding:14px}
.dc-vehicle-quote-label{color:var(--navy)!important;font-size:11px!important;font-weight:800!important}
.dc-vehicle-quote-body>strong{margin:5px 0 9px;font-size:22px}
.dc-vehicle-capacity{display:grid!important;grid-template-columns:1fr;gap:5px;width:100%;margin-bottom:9px}
.dc-vehicle-capacity>span{display:block;padding:5px 7px;border-radius:7px;background:var(--mist);color:var(--text)!important;font-size:9px!important;font-weight:700!important;line-height:1.35}
.dc-vehicle-quote-body>small{margin-top:auto;line-height:1.35}
.dc-vehicle-quotes button.is-selected .dc-vehicle-capacity>span{background:#fff}
.dc-capacity-note{margin:14px 0 0;color:var(--text);font-size:10px;line-height:1.6}
.dc-vehicle-photo-sources{display:flex;flex-wrap:wrap;gap:6px 12px;margin:7px 0 0;color:var(--muted);font-size:9px}
.dc-vehicle-photo-sources:before{content:"Real vehicle photo sources:";font-weight:800;color:var(--text)}
.dc-vehicle-photo-sources a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.dc-vehicle-photo-sources[hidden]{display:none}
@media(max-width:1180px){.dc-vehicle-quotes button{min-height:305px}.dc-vehicle-quote-photo{height:150px}}
@media(max-width:760px){.dc-vehicle-quotes button{min-height:292px}.dc-vehicle-quote-photo{height:136px}}
@media(max-width:480px){.dc-vehicle-quotes button{min-height:0}.dc-vehicle-quote-photo{height:190px}.dc-vehicle-quote-body{min-height:154px}}

/* V8.3 NRI family and Delhi one-way booking tools */
.dc-oneway-helper{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(540px,1.25fr);gap:26px;align-items:center;margin:0 0 20px;padding:20px;border:1px solid #f0ce8d;border-radius:16px;background:linear-gradient(135deg,#fffaf0,#fff)}
.dc-oneway-helper[hidden]{display:none}
.dc-oneway-helper>div:first-child>span,.dc-nri-booking-head span{display:block;margin-bottom:4px;color:#a76800;font-size:9px;font-weight:900;letter-spacing:.14em}
.dc-oneway-helper h3,.dc-nri-booking-head h3{margin:0;font-size:18px}
.dc-oneway-helper p,.dc-nri-booking-head p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.55}
.dc-oneway-helper>small{grid-column:1/-1;color:var(--muted);font-size:10px}
.dc-oneway-helper-controls{display:grid;grid-template-columns:1fr 1.2fr auto;gap:10px;align-items:end}
.dc-oneway-helper-controls label,.dc-nri-booking-grid label{display:flex;flex-direction:column;gap:6px}
.dc-oneway-helper-controls label>span,.dc-nri-booking-grid label>span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.dc-oneway-helper-controls select,.dc-nri-booking-grid input,.dc-nri-booking-grid select{width:100%;min-height:47px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}
.dc-oneway-helper-controls .dc-action{min-height:47px;white-space:nowrap}
.dc-nri-booking-panel{margin-top:18px;padding:20px;border:1px solid #b9ded6;border-radius:16px;background:linear-gradient(145deg,#effaf7,#fff)}
.dc-nri-booking-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px}
.dc-nri-booking-head>p{max-width:480px;text-align:right}
.dc-nri-booking-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}
.dc-assistance-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.dc-assistance-options label{display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid #cce7de;border-radius:9px;background:#fff;color:var(--text);font-size:10px;font-weight:700;cursor:pointer}
.dc-assistance-options input{accent-color:var(--teal)}
.dc-assistance-options label:has(input:checked){border-color:var(--teal);background:#e7f7f3;color:var(--navy)}
.dc-nri-safety-note{margin:12px 0 0;padding-top:11px;border-top:1px solid #cce7de;color:var(--muted);font-size:10px;line-height:1.55}
.dc-oneway-charge-breakdown{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px;padding:14px 16px;border:1px solid #f0c46f;border-radius:12px;background:#fff8e8}
.dc-oneway-charge-breakdown[hidden]{display:none}
.dc-oneway-charge-breakdown span{display:block;color:#a76800;font-size:8px;font-weight:900;letter-spacing:.13em}
.dc-oneway-charge-breakdown strong{display:block;margin-top:2px;color:var(--navy);font:800 15px Manrope}
.dc-oneway-charge-breakdown p{max-width:590px;margin:0;color:#775512;font-size:10px;line-height:1.55;text-align:right}
.dc-mountain-charge-breakdown{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px;padding:14px 16px;border:1px solid #b5c8e7;border-radius:12px;background:#f2f6ff}.dc-mountain-charge-breakdown[hidden]{display:none}.dc-mountain-charge-breakdown span{display:block;color:#315d9b;font-size:8px;font-weight:900;letter-spacing:.13em}.dc-mountain-charge-breakdown strong{display:block;margin-top:2px;color:var(--navy);font:800 15px Manrope}.dc-mountain-charge-breakdown p{max-width:590px;margin:0;color:#405d80;font-size:10px;line-height:1.55;text-align:right}.dc-mountain-charge-breakdown p b{color:#244b7d}
.dc-short-return-breakdown{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px;padding:14px 16px;border:1px solid #e6bc64;border-radius:12px;background:#fff9e9}.dc-short-return-breakdown[hidden]{display:none}.dc-short-return-breakdown span{display:block;color:#986000;font-size:8px;font-weight:900;letter-spacing:.13em}.dc-short-return-breakdown strong{display:block;margin-top:2px;color:var(--navy);font:800 15px Manrope}.dc-short-return-breakdown p{max-width:650px;margin:0;color:#745718;font-size:10px;line-height:1.55;text-align:right}
.dc-oneway-availability-ack{display:flex;align-items:flex-start;gap:10px;margin:15px 0 0;padding:13px 14px;border:1px solid #e5b957;border-radius:11px;background:#fff8e8;color:#684b12;font-size:11px;font-weight:700;line-height:1.5}
.dc-oneway-availability-ack[hidden]{display:none}
.dc-oneway-availability-ack input{margin-top:3px;accent-color:#a76800}
@media(max-width:1180px){.dc-oneway-helper{grid-template-columns:1fr}.dc-oneway-helper>small{grid-column:auto}.dc-nri-booking-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.dc-oneway-helper-controls{grid-template-columns:1fr 1fr}.dc-oneway-helper-controls .dc-action{grid-column:1/-1}.dc-nri-booking-head{display:block}.dc-nri-booking-head>p{text-align:left}.dc-nri-booking-grid{grid-template-columns:1fr 1fr}.dc-oneway-charge-breakdown,.dc-mountain-charge-breakdown,.dc-short-return-breakdown{display:block}.dc-oneway-charge-breakdown p,.dc-mountain-charge-breakdown p,.dc-short-return-breakdown p{margin-top:7px;text-align:left}}
@media(max-width:480px){.dc-oneway-helper{padding:16px}.dc-oneway-helper-controls,.dc-nri-booking-grid{grid-template-columns:1fr}.dc-oneway-helper-controls .dc-action{grid-column:auto}.dc-nri-booking-panel{padding:16px}.dc-assistance-options{display:grid;grid-template-columns:1fr}.dc-assistance-options label{min-height:43px}}
.dc-google-place-element{display:block;width:100%;min-height:53px;--gmp-mat-color-primary:#1768a5;--gmp-mat-color-surface:#fff;--gmp-mat-font-family:"DM Sans",Arial,sans-serif}
@media(min-width:761px){.dc-route-metrics{grid-template-columns:repeat(4,1fr)}}

/* V9.6: explicit return-fare distance proof */
.dc-route-metrics small{display:block;color:var(--muted);font-size:8px;font-weight:700;line-height:1.25}.dc-return-fare-proof{display:grid;grid-template-columns:auto 1fr;gap:4px 22px;align-items:center;margin-top:16px;padding:16px 18px;border:1px solid #94d3c3;border-radius:13px;background:#fff}.dc-return-fare-proof[hidden]{display:none}.dc-return-fare-proof>span{grid-row:1/3;color:var(--teal);font-size:8px;font-weight:900;letter-spacing:.13em}.dc-return-fare-proof strong{color:var(--navy);font:800 16px Manrope}.dc-return-fare-proof p{margin:0;color:var(--muted);font-size:10px}@media(max-width:760px){.dc-return-fare-proof{grid-template-columns:1fr;gap:5px}.dc-return-fare-proof>span{grid-row:auto}}

/* V9.13: simple quotation first, booking details second */
.dc-booking-stage{margin-top:26px;padding:26px;border:1px solid #b8d7e5;border-radius:20px;background:linear-gradient(145deg,#f7fbfd,#fff);scroll-margin-top:110px}.dc-booking-stage[hidden]{display:none}.dc-booking-stage-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.dc-booking-stage-head>div>span{display:block;color:var(--teal);font-size:9px;font-weight:900;letter-spacing:.15em}.dc-booking-stage-head h3{margin:4px 0 0;font-size:24px}.dc-booking-stage-head>p{max-width:590px;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.dc-booking-trip-grid{margin:0 0 22px}.dc-terms-acceptance{padding:13px;border:1px solid #c9dce5;border-radius:11px;background:#fff}.dc-terms-acceptance a{color:var(--blue);font-weight:800;text-decoration:underline}.dc-trip-tabs button[data-trip="smart"]{flex:1.2}.dc-trip-tabs button[data-trip="delhi_one_way"]{flex:1}.dc-trip-tabs button[data-trip="tour"]{flex:1.2}
@media(max-width:760px){.dc-booking-stage{margin-left:-6px;margin-right:-6px;padding:18px 14px}.dc-booking-stage-head{display:block}.dc-booking-stage-head>p{margin-top:9px}.dc-trip-tabs button{min-width:180px}}

/* V9.14: exact-route, fail-closed toll verification */
.dc-verified-toll-panel{margin-top:16px;padding:18px;border:1px solid #b8d7e4;border-radius:14px;background:#f7fbfd}.dc-verified-toll-panel.is-verified{border-color:#91d1bd;background:#effaf6}.dc-verified-toll-panel.is-pending{border-color:#e4c67f;background:#fffaf0}.dc-verified-toll-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.dc-verified-toll-head span{display:block;color:var(--teal);font-size:8px;font-weight:900;letter-spacing:.13em}.dc-verified-toll-panel.is-pending .dc-verified-toll-head span{color:#946300}.dc-verified-toll-head strong{display:block;margin-top:3px;color:var(--navy);font:800 16px Manrope}.dc-verified-toll-head>b{white-space:nowrap;color:var(--navy);font:800 22px Manrope}.dc-verified-toll-panel>p{margin:8px 0 0;color:var(--muted);font-size:10px}.dc-toll-table{display:grid;gap:7px;margin-top:13px}.dc-toll-table:empty{display:none}.dc-toll-table>div{display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid #d7e7e3;border-radius:10px;background:#fff}.dc-toll-table>div>span{color:var(--teal);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.dc-toll-table strong,.dc-toll-table small{display:block}.dc-toll-table strong{color:var(--ink);font-size:11px}.dc-toll-table small{color:var(--muted);font-size:9px}.dc-toll-table>div>b{color:var(--navy);font:800 14px Manrope}@media(max-width:620px){.dc-verified-toll-head{align-items:flex-start}.dc-toll-table>div{grid-template-columns:1fr auto}.dc-toll-table>div>span{grid-column:1/-1}.dc-verified-toll-head>b{font-size:18px}}
