/* ===== Seat Modal 3-Column Layout (Locked Mockup) ===== */
.flyup-ftbs-fe-scratch .ftbs-seat__layout{display:grid;grid-template-columns:320px minmax(520px,1fr) 340px;gap:16px;align-items:start;margin-top:10px}
.flyup-ftbs-fe-scratch .ftbs-seat__tripcard,
.flyup-ftbs-fe-scratch .ftbs-seat__legendcard,
.flyup-ftbs-fe-scratch .ftbs-seat__summarycard,
.flyup-ftbs-fe-scratch .flyup-ftbs-fe-seat__passengers{background:#fff;border:1px solid #e6e8ee;border-radius:14px;box-shadow:0 10px 24px rgba(0,0,0,.06)}
.flyup-ftbs-fe-scratch .ftbs-seat__tripcard{padding:14px}
.flyup-ftbs-fe-scratch .ftbs-seat__legendcard{padding:14px;margin-top:12px}
.flyup-ftbs-fe-scratch .ftbs-seat__legendtitle{font-weight:800;margin:0 0 10px;font-size:18px}
.flyup-ftbs-fe-scratch .ftbs-legend-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.flyup-ftbs-fe-scratch .ftbs-legend-list li{display:flex;align-items:center;gap:10px;font-weight:600;color:#2a2f3a}
.flyup-ftbs-fe-scratch .ftbs-legend-list .dot{width:18px;height:18px;border-radius:50%;display:inline-block;border:2px solid transparent}
.flyup-ftbs-fe-scratch .ftbs-legend-list .dot.available{background:#d1fae5;border-color:#16a34a}
.flyup-ftbs-fe-scratch .ftbs-legend-list .dot.selected{background:#111827;border-color:#111827}
.flyup-ftbs-fe-scratch .ftbs-legend-list .dot.locked{background:#fef3c7;border-color:#b45309}
.flyup-ftbs-fe-scratch .ftbs-legend-list .dot.booked{background:#fee2e2;border-color:#dc2626}
.flyup-ftbs-fe-scratch .ftbs-legend-list .dot.reserved{background:#e5e7eb;border-color:#6b7280}
.flyup-ftbs-fe-scratch .ftbs-legend-list .dot.na{background:#b45309;border-color:#b45309}

.flyup-ftbs-fe-scratch .ftbs-seat__center .flyup-ftbs-fe-seat__gridwrap{background:#fff;border:1px solid #e6e8ee;border-radius:14px;box-shadow:0 10px 24px rgba(0,0,0,.06);padding:14px}

.flyup-ftbs-fe-scratch .ftbs-seat__right .ftbs-seat__summarycard{padding:14px;margin-bottom:12px}
.flyup-ftbs-fe-scratch .ftbs-seat__selectedlist{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.flyup-ftbs-fe-scratch .ftbs-seat__selectedlist .pill{background:#111827;color:#fff;border-radius:10px;padding:6px 10px;font-weight:800;font-size:12px}

.flyup-ftbs-fe-scratch .flyup-ftbs-fe-seat__passengers{padding:14px}
.flyup-ftbs-fe-scratch .flyup-ftbs-fe-seat__passengers h4{margin:0 0 10px;font-size:20px;font-weight:900}
.flyup-ftbs-fe-scratch .flyup-ftbs-fe-pass-row label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:900;color:#25324a;margin-bottom:6px;display:block}
.flyup-ftbs-fe-scratch .flyup-ftbs-fe-pass-row input{width:100%;height:44px;border-radius:10px;border:1px solid #cfd6e4;padding:0 12px;background:#eff6ff;box-sizing:border-box}
.flyup-ftbs-fe-scratch .flyup-ftbs-fe-confirm{width:100%;height:46px;border-radius:10px;border:0;background:#f97316;color:#fff;font-weight:900;cursor:pointer}
.flyup-ftbs-fe-scratch .flyup-ftbs-fe-confirm.is-sent{background:#d1d5db;color:#111827;cursor:not-allowed}

@media (max-width: 1024px){
  .flyup-ftbs-fe-scratch .ftbs-seat__layout{grid-template-columns:1fr;}
}

/* ===== Mockup correction v1.3.1.2 =====
   Fixes:
   - remove old float-based modal layout overrides
   - ensure true 3-column grid like mockup
   - modal width back to wide mockup
   - top-right tools stacked (Close above Hold Time)
   - prevent right panel drifting / overflow
*/

/* Wide modal like mockup */
.flyup-ftbs-fe-seat--modal.is-open{
  width:min(1280px, calc(100vw - 24px)) !important;
  border-radius:16px;
}

/* Tools (top-right) stacked like mockup */
.flyup-ftbs-fe-seat--modal .ftbs-seat__tools{
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}
.flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__close{order:0;}
.flyup-ftbs-fe-seat--modal .ftbs-seat-timerbox{order:1;}

/* ===== Requested small changes (v1.3.1.3) ===== */

/* Remove header empty space; keep tools floating outside the card */
.flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__head{
  padding:0 !important;
  height:0 !important;
  min-height:0 !important;
  border:0 !important;
  background:transparent !important;
}
.flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__title{display:none !important;}

/* Close: fixed top-right (outside box) */
.flyup-ftbs-fe-seat--modal .ftbs-seat__tools{
  position:fixed;
  top:18px;
  right:18px;
  z-index:100000;
  padding:0 !important;
}
.flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__close{
  border-radius:999px;
  padding:10px 18px;
}

/* Timer: fixed bottom-left (outside box) */
.flyup-ftbs-fe-seat--modal .ftbs-seat-timerbox{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:100000;
}

/* Hard override any float layout that may push panels */
@media (min-width: 980px){
  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__gridwrap,
  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__passengers,
  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__summary{
    float:none !important;
    width:auto !important;
    margin:0 !important;
  }

  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__body.ftbs-seat__layout{
    display:grid !important;
    grid-template-columns:340px minmax(0, 1fr) 360px !important;
    gap:18px !important;
    align-items:start;
  }

  /* Ensure center grid can shrink without creating horizontal scroll */
  .flyup-ftbs-fe-seat--modal .ftbs-seat__center,
  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__grid,
  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__gridwrap{min-width:0 !important;}
}

/* Prevent double scrollbars inside modal */
.flyup-ftbs-fe-seat--modal.is-open{overflow:auto;}
.flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__body{overflow:visible;}

/* tiny corner copyright inside modal */
.flyup-ftbs-fe-seat--modal .ftbs-seat__copyright{
  position:absolute;
  right:14px;
  bottom:10px;
  font-size:10px;
  opacity:.55;
  pointer-events:none;
}

/* On mobile, keep the copyright visible without needing to scroll */
@media (max-width: 768px){
  /* Mobile: fixed tiny footer banner (10px height) */
  .flyup-ftbs-fe-seat--modal .ftbs-seat__copyright{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    height:10px;
    line-height:10px;
    text-align:center;
    font-size:9px;
    opacity:.85;
    background:rgba(255,255,255,.88);
    backdrop-filter:blur(6px);
    z-index:5;
    pointer-events:none;
  }

  /* Ensure seats/buttons never overlap the fixed footer */
  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__body{
    position:relative;
    z-index:6;
    padding-bottom:calc(12px + env(safe-area-inset-bottom));
  }
}

/* Small spacing tune for right column like mockup */
.flyup-ftbs-fe-seat--modal .ftbs-seat__right .ftbs-seat__summarycard{
  margin-bottom:14px;
}

/* Mobile: stack columns */
@media (max-width: 1024px){
  .flyup-ftbs-fe-seat--modal .flyup-ftbs-fe-seat__body.ftbs-seat__layout{
    grid-template-columns:1fr !important;
  }
}
