/* DB V2 Order Form v1.1.0 - real flight schedule picker */
html.dbv2of-modal-open,
body.dbv2of-modal-open{
  overflow:hidden!important;
  overscroll-behavior:none;
}

.dbv2of-flight-modal{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  box-sizing:border-box;
  font-family:inherit;
}
.dbv2of-flight-modal.open{display:flex}
.dbv2of-flight-modal *,
.dbv2of-flight-review-card *{box-sizing:border-box}
.dbv2of-flight-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.68);
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
}
.dbv2of-flight-modal-panel{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  width:min(1160px,100%);
  max-height:min(900px,calc(100vh - 56px));
  overflow:hidden;
  background:#f8f9fc;
  color:#15213a;
  border:1px solid rgba(255,255,255,.82);
  border-radius:28px;
  box-shadow:0 32px 90px rgba(15,23,42,.32);
  outline:none;
}
.dbv2of-flight-modal-header{
  position:sticky;
  top:0;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:24px 28px 20px;
  border-bottom:1px solid #e5e8ef;
  background:rgba(255,255,255,.96);
}
.dbv2of-flight-modal-header>div{min-width:0}
.dbv2of-flight-modal-header h2{
  margin:7px 0 4px!important;
  padding:0!important;
  color:#111c36!important;
  font-size:clamp(23px,3vw,32px)!important;
  line-height:1.18!important;
  font-weight:850!important;
  letter-spacing:-.025em;
}
.dbv2of-flight-modal-subtitle{
  margin:0!important;
  color:#667085!important;
  font-size:15px!important;
  line-height:1.5!important;
}
.dbv2of-flight-modal-close{
  flex:0 0 44px;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center;
  border:1px solid #e3e7ef!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#344054!important;
  box-shadow:none!important;
  font:400 30px/1 Arial,sans-serif!important;
  cursor:pointer;
}
.dbv2of-flight-modal-close:hover{background:#f3f4f7!important;color:#111827!important}
.dbv2of-flight-modal-steps{display:flex;align-items:center;gap:7px;min-height:24px}
.dbv2of-flight-modal-steps:empty{display:none}
.dbv2of-flight-modal-steps span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  background:#eef0f5;
  color:#667085;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
}
.dbv2of-flight-modal-steps span.active{background:#f3e8ff;color:#7e22ce}
.dbv2of-flight-modal-steps span.done{background:#ecfdf3;color:#067647}
.dbv2of-flight-modal-content{
  flex:1 1 auto;
  overflow:auto;
  padding:22px 24px 28px;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.dbv2of-flight-results{display:grid;gap:16px}

.dbv2of-flight-result-card{
  display:grid;
  grid-template-columns:minmax(210px,.9fr) minmax(400px,1.75fr) minmax(230px,.85fr);
  align-items:center;
  gap:22px;
  min-height:176px;
  padding:22px 24px;
  margin:0;
  border:1px solid #e1e5ec;
  border-radius:24px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,23,42,.055);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.dbv2of-flight-result-card:hover{
  transform:translateY(-1px);
  border-color:#d8b4fe;
  box-shadow:0 16px 38px rgba(126,34,206,.11);
}
.dbv2of-flight-airline{display:flex;align-items:center;gap:15px;min-width:0}
.dbv2of-flight-airline>div:last-child{min-width:0}
.dbv2of-flight-airline strong{
  display:block;
  overflow:hidden;
  color:#17213b;
  font-size:15px;
  line-height:1.35;
  font-weight:850;
  text-overflow:ellipsis;
}
.dbv2of-flight-airline small{
  display:block;
  margin-top:4px;
  color:#667085;
  font-size:13px;
  font-weight:750;
}
.dbv2of-flight-logo{
  flex:0 0 62px;
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #edf0f4;
  border-radius:17px;
  background:#fff;
}
.dbv2of-flight-logo img{display:block;max-width:50px!important;max-height:50px!important;width:auto!important;height:auto!important;object-fit:contain}
.dbv2of-flight-logo span{width:100%;height:100%;place-items:center;background:linear-gradient(135deg,#ec4899,#7c3aed);color:#fff;font-size:19px;font-weight:900}

.dbv2of-flight-times{
  display:grid;
  grid-template-columns:minmax(105px,1fr) minmax(90px,.75fr) minmax(105px,1fr);
  align-items:center;
  gap:16px;
  min-width:0;
}
.dbv2of-flight-times>div:not(.dbv2of-flight-line){min-width:0}
.dbv2of-flight-time-label{display:block!important;margin:0 0 3px;color:#7e22ce;font-size:10px;line-height:1.25;font-style:normal;font-weight:850;text-transform:uppercase;letter-spacing:.045em}
.dbv2of-flight-line em{display:block;margin:7px 0 0;color:#667085;font-size:9px;line-height:1.2;font-style:normal;font-weight:750;text-transform:uppercase;letter-spacing:.04em}
.dbv2of-flight-times small,
.dbv2of-flight-times strong,
.dbv2of-flight-times b,
.dbv2of-flight-times span{display:block}
.dbv2of-flight-times small{color:#667085;font-size:12px;line-height:1.35}
.dbv2of-flight-times strong{margin:3px 0 1px;color:#17213b;font-size:25px;line-height:1.05;font-weight:850}
.dbv2of-flight-times b{color:#1b2e61;font-size:21px;line-height:1.2;font-weight:900;letter-spacing:.015em}
.dbv2of-flight-times>div:not(.dbv2of-flight-line)>span{margin-top:2px;overflow:hidden;color:#667085;font-size:12px;white-space:nowrap;text-overflow:ellipsis}
.dbv2of-flight-line{text-align:center;color:#667085}
.dbv2of-flight-line>span{position:relative;color:#344054;font-size:24px;line-height:1}
.dbv2of-flight-line>span:before,
.dbv2of-flight-line>span:after{content:"";position:absolute;top:50%;width:24px;height:1px;background:#d0d5dd}
.dbv2of-flight-line>span:before{right:calc(100% + 8px)}
.dbv2of-flight-line>span:after{left:calc(100% + 8px)}
.dbv2of-flight-line small{margin-top:9px;font-size:11px;font-weight:750}

.dbv2of-flight-card-bottom{display:flex;flex-direction:column;justify-content:center;gap:13px;min-width:0}
.dbv2of-flight-tags{display:flex;flex-wrap:wrap;gap:6px}
.dbv2of-flight-tags span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border-radius:999px;
  background:#f2f4f7;
  color:#475467;
  font-size:10px;
  line-height:1.2;
  font-weight:750;
}
.dbv2of-flight-price{text-align:right}
.dbv2of-flight-price small{display:block;color:#667085;font-size:11px;line-height:1.35}
.dbv2of-flight-price strong{display:block;margin:2px 0 10px;color:#be185d;font-size:23px;line-height:1.2;font-weight:900}
.dbv2of-flight-price em{display:block;margin:-7px 0 10px;color:#667085;font-size:12px;line-height:1.35;font-style:normal;font-weight:700}
.dbv2of-flight-price button,
.dbv2of-schedule-primary{
  width:100%!important;
  min-height:48px!important;
  margin:0!important;
  padding:12px 16px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#ec4899,#7c3aed)!important;
  color:#fff!important;
  box-shadow:0 10px 20px rgba(126,34,206,.19)!important;
  font:800 14px/1.25 inherit!important;
  text-align:center!important;
  cursor:pointer;
}
.dbv2of-flight-price button:hover,
.dbv2of-schedule-primary:hover{filter:brightness(.98);transform:translateY(-1px)}
.dbv2of-schedule-back-link{
  margin:0 0 14px!important;
  padding:8px 2px!important;
  border:0!important;
  background:transparent!important;
  color:#7e22ce!important;
  box-shadow:none!important;
  font:800 13px/1.3 inherit!important;
  cursor:pointer;
}
.dbv2of-schedule-secondary{
  min-height:46px!important;
  padding:11px 16px!important;
  border:1px solid #d9dce4!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#344054!important;
  box-shadow:none!important;
  font:800 14px/1.25 inherit!important;
  cursor:pointer;
}

.dbv2of-flight-loading,
.dbv2of-flight-empty{
  min-height:350px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:34px;
  border:1px solid #e4e7ec;
  border-radius:24px;
  background:#fff;
  text-align:center;
}
.dbv2of-flight-loading>span{
  width:44px;
  height:44px;
  border:4px solid #eadcf7;
  border-top-color:#9333ea;
  border-radius:50%;
  animation:dbv2of-flight-spin .8s linear infinite;
}
@keyframes dbv2of-flight-spin{to{transform:rotate(360deg)}}
.dbv2of-flight-loading strong{color:#17213b;font-size:17px}
.dbv2of-flight-loading small{color:#667085;font-size:13px}
.dbv2of-flight-empty-icon{font-size:46px;line-height:1}
.dbv2of-flight-empty h3{max-width:620px;margin:0!important;color:#17213b!important;font-size:21px!important;line-height:1.35!important}
.dbv2of-flight-empty p{margin:0!important;color:#667085!important}
.dbv2of-flight-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:min(540px,100%);margin-top:10px}
.dbv2of-flight-empty-actions>*{flex:1 1 220px}

/* Selected schedule shown on Review Order */
.dbv2of-flight-review-list{display:grid;gap:12px;margin-top:14px}
.dbv2of-flight-review-card{
  display:grid;
  grid-template-columns:minmax(160px,.8fr) minmax(300px,1.5fr) minmax(120px,.55fr);
  align-items:center;
  gap:18px;
  padding:18px;
  border:1px solid #e4e7ec;
  border-radius:17px;
  background:#fbfbfd;
}
.dbv2of-flight-review-card h4{margin:0 0 4px!important;color:#17213b!important;font-size:14px!important}
.dbv2of-flight-review-card p{margin:0!important;color:#667085!important;font-size:12px!important}
.dbv2of-flight-review-route{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}
.dbv2of-flight-review-route>div:last-child{text-align:right}
.dbv2of-flight-review-route strong{display:block;color:#17213b;font-size:18px}
.dbv2of-flight-review-route small{display:block;color:#667085;font-size:11px}
.dbv2of-flight-review-route>span{color:#98a2b3;font-size:20px}
.dbv2of-flight-review-meta{text-align:right;color:#475467;font-size:12px;font-weight:700}

@media(max-width:900px){
  .dbv2of-flight-result-card{grid-template-columns:minmax(180px,.85fr) minmax(340px,1.55fr);gap:18px}
  .dbv2of-flight-card-bottom{grid-column:1/-1;display:grid;grid-template-columns:1fr minmax(210px,.55fr);align-items:end}
  .dbv2of-flight-price{display:grid;grid-template-columns:1fr;justify-items:end}
}

@media(max-width:700px){
  .dbv2of-flight-modal{padding:0;align-items:stretch}
  .dbv2of-flight-modal-panel{width:100%;max-height:none;height:100%;border:0;border-radius:0}
  .dbv2of-flight-modal-header{padding:15px 16px 13px;gap:12px}
  .dbv2of-flight-modal-header h2{font-size:21px!important;margin-top:5px!important}
  .dbv2of-flight-modal-subtitle{font-size:12px!important}
  .dbv2of-flight-modal-close{flex-basis:40px;width:40px!important;height:40px!important;min-width:40px!important;border-radius:12px!important}
  .dbv2of-flight-modal-content{padding:14px 12px calc(22px + env(safe-area-inset-bottom))}
  .dbv2of-flight-results{gap:12px}
  .dbv2of-flight-result-card{display:block;min-height:0;padding:17px;border-radius:19px}
  .dbv2of-flight-airline{padding-bottom:14px;border-bottom:1px solid #edf0f4}
  .dbv2of-flight-logo{flex-basis:52px;width:52px;height:52px;border-radius:14px}
  .dbv2of-flight-logo img{max-width:42px!important;max-height:42px!important}
  .dbv2of-flight-times{grid-template-columns:minmax(82px,1fr) minmax(54px,.45fr) minmax(82px,1fr);gap:8px;margin:17px 0}
  .dbv2of-flight-times strong{font-size:22px}
  .dbv2of-flight-times b{font-size:18px}
  .dbv2of-flight-times>div:last-child{text-align:right}
  .dbv2of-flight-times>div:not(.dbv2of-flight-line)>span{font-size:10px}
  .dbv2of-flight-line>span:before,.dbv2of-flight-line>span:after{width:9px}
  .dbv2of-flight-line>span:before{right:calc(100% + 4px)}
  .dbv2of-flight-line>span:after{left:calc(100% + 4px)}
  .dbv2of-flight-card-bottom{display:block}
  .dbv2of-flight-tags{margin-bottom:14px}
  .dbv2of-flight-price{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label value" "people people" "button button";align-items:end;gap:2px 10px;text-align:left}
  .dbv2of-flight-price small{grid-area:label}
  .dbv2of-flight-price strong{grid-area:value;margin:0;text-align:right;font-size:20px}
  .dbv2of-flight-price em{grid-area:people;margin:0;text-align:right}
  .dbv2of-flight-price button{grid-area:button;margin-top:10px!important}
  .dbv2of-flight-loading,.dbv2of-flight-empty{min-height:calc(100vh - 155px);padding:24px 18px;border-radius:18px}
  .dbv2of-flight-empty-actions{display:grid}
  .dbv2of-flight-empty-actions>*{width:100%}
  .dbv2of-flight-review-card{grid-template-columns:1fr;gap:12px}
  .dbv2of-flight-review-route{grid-template-columns:1fr auto 1fr}
  .dbv2of-flight-review-meta{text-align:left}
}

/* Actual Review Order markup emitted by the plugin. */
.dbv2of-selected-flights-review{display:grid;gap:12px;margin-top:18px}
.dbv2of-selected-flight-card{overflow:hidden;border:1px solid #e4e7ec;border-radius:17px;background:#fbfbfd}
.dbv2of-selected-flight-heading{padding:9px 14px;background:#f3e8ff;color:#7e22ce;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}
.dbv2of-selected-flight-main{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(330px,1.5fr);align-items:center;gap:20px;padding:16px}
.dbv2of-selected-airline{display:flex;align-items:center;gap:12px;min-width:0}
.dbv2of-selected-airline img,.dbv2of-selected-airline-fallback{flex:0 0 48px;width:48px;height:48px;border:1px solid #e4e7ec;border-radius:13px;background:#fff;object-fit:contain;padding:5px}
.dbv2of-selected-airline-fallback{place-items:center;padding:0;background:linear-gradient(135deg,#ec4899,#7c3aed);color:#fff;font-weight:900}
.dbv2of-selected-airline strong,.dbv2of-selected-airline small{display:block}.dbv2of-selected-airline strong{color:#17213b;font-size:14px}.dbv2of-selected-airline small{margin-top:3px;color:#667085;font-size:12px;font-weight:750}
.dbv2of-selected-route{display:grid;grid-template-columns:1fr minmax(70px,.55fr) 1fr;align-items:center;gap:12px}
.dbv2of-selected-route>div:last-child{text-align:right}.dbv2of-selected-route small,.dbv2of-selected-route strong,.dbv2of-selected-route span{display:block}.dbv2of-selected-route small{color:#667085;font-size:11px}.dbv2of-selected-route strong{margin:2px 0;color:#17213b;font-size:20px}.dbv2of-selected-route span{color:#1b2e61;font-size:17px;font-weight:900}
.dbv2of-selected-flight-arrow{text-align:center;color:#98a2b3;font-size:19px}.dbv2of-selected-flight-arrow small{margin-top:5px!important;font-size:10px!important;font-weight:750}
.dbv2of-selected-flight-meta{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 14px}.dbv2of-selected-flight-meta span{padding:5px 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:10px;font-weight:750}
.dbv2of-schedule-pending{margin-top:16px;padding:14px 16px;border:1px solid #fedf89;border-radius:14px;background:#fffaeb;color:#93370d;font-weight:750}
@media(max-width:700px){.dbv2of-selected-flight-main{grid-template-columns:1fr}.dbv2of-selected-route{grid-template-columns:1fr auto 1fr}.dbv2of-selected-flight-meta{padding-top:2px}}

/* v1.1.8 — compact Review Order flight details. */
.dbv2of-selected-flight-details{border-top:1px solid #eaecf0;background:#fff}
.dbv2of-selected-flight-details summary{cursor:pointer;list-style:none;padding:10px 16px;color:#7e22ce;font-size:12px;font-weight:850}
.dbv2of-selected-flight-details summary::-webkit-details-marker{display:none}
.dbv2of-selected-flight-details summary::after{content:'+';float:right;font-size:16px;line-height:1}
.dbv2of-selected-flight-details[open] summary::after{content:'−'}
.dbv2of-selected-flight-details .dbv2of-selected-flight-meta{padding:0 16px 14px}
