/* BIDLUNA Ads — Premium booking wizard */
.bidluna-booking{
  --bb-bg:#f3f7ff;
  --bb-card:#ffffff;
  --bb-line:rgba(15,55,122,.12);
  --bb-line-strong:rgba(15,55,122,.22);
  --bb-text:#10254a;
  --bb-muted:#5e6f8f;
  --bb-blue:#0e4bb3;
  --bb-blue-2:#2f7dff;
  --bb-green:#0f8f67;
  --bb-red:#cc4b4b;
  --bb-shadow:0 20px 60px rgba(14,75,179,.12);
  max-width:1280px;
  margin:0 auto;
  padding:24px 16px 48px;
  color:var(--bb-text);
}

.bidluna-booking *{box-sizing:border-box}
.bidluna-booking a{color:inherit}

.bidluna-booking-alert{
  border-radius:18px;
  padding:14px 18px;
  margin:0 0 18px;
  border:1px solid var(--bb-line);
  background:#fff;
  box-shadow:var(--bb-shadow);
  font-weight:700;
}
.bidluna-booking-alert--success{border-color:rgba(15,143,103,.22);background:rgba(15,143,103,.08)}
.bidluna-booking-alert--info{border-color:rgba(14,75,179,.18);background:rgba(14,75,179,.06)}
.bidluna-booking-alert--error{border-color:rgba(204,75,75,.20);background:rgba(204,75,75,.08)}

.bidluna-booking-hero{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.95fr);
  gap:18px;
  align-items:stretch;
  margin-bottom:18px;
}
.bidluna-booking-hero__copy,
.bidluna-booking-hero__card{
  background:
    radial-gradient(circle at top right, rgba(47,125,255,.18), transparent 44%),
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(245,249,255,.98));
  border:1px solid rgba(14,75,179,.12);
  border-radius:28px;
  padding:28px;
  box-shadow:var(--bb-shadow);
}
.bidluna-booking-hero__eyebrow,
.bidluna-booking-section-head__eyebrow,
.bidluna-booking-step-panel__eyebrow,
.bidluna-booking-creative-card__eyebrow{
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--bb-blue);
  opacity:.92;
  margin:0 0 8px;
}
.bidluna-booking-hero h1,
.bidluna-booking-section-head h2,
.bidluna-booking-step-panel h2{
  margin:0;
  font-size:clamp(30px, 3.6vw, 46px);
  line-height:1.05;
}
.bidluna-booking-step-panel h2{font-size:clamp(24px, 3vw, 34px)}
.bidluna-booking-hero__lead{
  margin:16px 0 0;
  max-width:65ch;
  color:var(--bb-muted);
  font-size:17px;
  line-height:1.65;
}
.bidluna-booking-hero__chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.bidluna-booking-hero__chips span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(14,75,179,.08);
  border:1px solid rgba(14,75,179,.12);
  font-weight:800;
  font-size:13px;
}
.bidluna-booking-hero__card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
}
.bidluna-booking-hero__card-kicker{
  font-size:14px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--bb-blue);
}
.bidluna-booking-hero__list{
  margin:0;
  padding:0 0 0 18px;
  display:grid;
  gap:12px;
  color:var(--bb-muted);
  line-height:1.55;
}
.bidluna-booking-hero__currency{
  margin-top:auto;
  padding:16px;
  border-radius:18px;
  background:rgba(14,75,179,.06);
  border:1px solid rgba(14,75,179,.12);
  font-size:14px;
  color:var(--bb-text);
}
.bidluna-booking-login-note{
  margin:0 0 18px;
  padding:14px 18px;
  border-radius:16px;
  background:rgba(14,75,179,.06);
  border:1px solid rgba(14,75,179,.12);
  color:var(--bb-text);
  line-height:1.6;
}

.bidluna-booking-layout{
  display:grid;
  grid-template-columns:320px minmax(0,1fr);
  gap:20px;
  align-items:start;
}
.bidluna-booking-sidebar{
  position:sticky;
  top:18px;
  display:grid;
  gap:16px;
}
.bidluna-booking-sidebar__card{
  background:var(--bb-card);
  border:1px solid var(--bb-line);
  border-radius:24px;
  padding:18px;
  box-shadow:var(--bb-shadow);
}
.bidluna-booking-sidebar__kicker{
  margin-bottom:12px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--bb-blue);
}
.bidluna-booking-sidebar__steps{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.bidluna-booking-sidebar__step button{
  width:100%;
  border:0;
  background:transparent;
  padding:10px 12px;
  border-radius:16px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  text-align:left;
  cursor:pointer;
  color:inherit;
}
.bidluna-booking-sidebar__step.is-current button{
  background:linear-gradient(145deg, rgba(14,75,179,.12), rgba(47,125,255,.08));
  border:1px solid rgba(14,75,179,.10);
}
.bidluna-booking-sidebar__step.is-complete button{
  background:rgba(15,143,103,.08);
}
.bidluna-booking-sidebar__step-num{
  flex:0 0 auto;
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-weight:900;
  background:rgba(14,75,179,.12);
  color:var(--bb-blue);
}
.bidluna-booking-sidebar__step.is-complete .bidluna-booking-sidebar__step-num{
  background:rgba(15,143,103,.16);
  color:var(--bb-green);
}
.bidluna-booking-sidebar__step strong{display:block;font-size:15px}
.bidluna-booking-sidebar__step small{display:block;font-size:12px;color:var(--bb-muted);margin-top:4px;line-height:1.4}
.bidluna-booking-mini{
  display:grid;
  gap:10px;
}
.bidluna-booking-mini__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px dashed rgba(15,55,122,.12);
}
.bidluna-booking-mini__row:last-child{border-bottom:0;padding-bottom:0}
.bidluna-booking-mini__row span{color:var(--bb-muted);font-size:14px}
.bidluna-booking-mini__status{
  margin-top:14px;
  padding:12px 14px;
  border-radius:16px;
  background:var(--bb-bg);
  border:1px solid rgba(14,75,179,.08);
  line-height:1.55;
  font-size:14px;
}
.bidluna-booking-mini__creatives{
  margin-top:14px;
}
.bidluna-booking-mini__label{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--bb-muted);
  margin-bottom:6px;
}

.bidluna-booking-main{display:grid;gap:20px}
.bidluna-booking-form,
.bidluna-booking-compare,
.bidluna-booking-faq{
  background:var(--bb-card);
  border:1px solid var(--bb-line);
  border-radius:28px;
  padding:22px;
  box-shadow:var(--bb-shadow);
}

.bidluna-booking-step-panel{display:none}
.bidluna-booking-step-panel.is-active{display:block}
.bidluna-booking-step-panel__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
}
.bidluna-booking-step-panel__aside{
  max-width:320px;
  font-size:14px;
  line-height:1.55;
  color:var(--bb-muted);
}
.bidluna-booking-step-panel__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:24px;
}
.bidluna-booking-nav-btn,
.bidluna-booking-upload-btn,
.bidluna-booking-submit{
  appearance:none;
  border:0;
  border-radius:16px;
  padding:13px 18px;
  font-size:15px;
  font-weight:900;
  cursor:pointer;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.bidluna-booking-nav-btn{
  background:#eef3ff;
  color:var(--bb-text);
}
.bidluna-booking-nav-btn--primary,
.bidluna-booking-submit,
.bidluna-booking-upload-btn{
  color:#fff;
  background:linear-gradient(135deg, var(--bb-blue), var(--bb-blue-2));
  box-shadow:0 14px 28px rgba(14,75,179,.24);
}
.bidluna-booking-submit{width:100%;padding:16px 18px;font-size:16px}
.bidluna-booking-nav-btn:hover,
.bidluna-booking-upload-btn:hover,
.bidluna-booking-submit:hover{transform:translateY(-1px)}

.bidluna-booking-pack-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
}
.bidluna-booking-pack-card{position:relative;display:block}
.bidluna-booking-pack-card input{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
}
.bidluna-booking-pack-card__surface{
  display:grid;
  gap:16px;
  height:100%;
  padding:22px;
  border-radius:24px;
  background:
    linear-gradient(180deg, rgba(247,250,255,1), rgba(255,255,255,1));
  border:1px solid rgba(15,55,122,.12);
  box-shadow:0 16px 40px rgba(14,75,179,.08);
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.bidluna-booking-pack-card.is-selected .bidluna-booking-pack-card__surface{
  border-color:rgba(14,75,179,.32);
  box-shadow:0 20px 50px rgba(14,75,179,.16);
  transform:translateY(-2px);
}
.bidluna-booking-pack-card__badge{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(14,75,179,.08);
  color:var(--bb-blue);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.bidluna-booking-pack-card h3{margin:0;font-size:28px}
.bidluna-booking-pack-card__tagline{margin:-4px 0 0;color:var(--bb-muted);line-height:1.6}
.bidluna-booking-pack-card__price strong{display:block;font-size:34px;line-height:1}
.bidluna-booking-pack-card__price span{display:block;margin-top:6px;color:var(--bb-muted);font-size:14px}
.bidluna-booking-pack-card__placements{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.bidluna-booking-pack-card__placements li{
  position:relative;
  padding-left:18px;
  line-height:1.5;
}
.bidluna-booking-pack-card__placements li::before{
  content:"";
  position:absolute;
  left:0;
  top:.65em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--bb-blue-2);
}
.bidluna-booking-pack-card__zones{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.bidluna-booking-zone-chip{
  display:inline-flex;
  flex-direction:column;
  gap:4px;
  min-width:110px;
  padding:10px 12px;
  border-radius:16px;
  background:#f5f8ff;
  border:1px solid rgba(15,55,122,.10);
}
.bidluna-booking-zone-chip strong{font-size:13px}
.bidluna-booking-zone-chip em{font-style:normal;font-size:12px;color:var(--bb-muted)}
.bidluna-booking-zone-chip--full{background:rgba(204,75,75,.08);border-color:rgba(204,75,75,.16)}
.bidluna-booking-zone-chip--low{background:rgba(240,159,10,.10);border-color:rgba(240,159,10,.20)}
.bidluna-booking-zone-chip--ok{background:rgba(15,143,103,.08);border-color:rgba(15,143,103,.14)}
.bidluna-booking-pack-card__footer{
  margin-top:auto;
  padding-top:8px;
  border-top:1px dashed rgba(15,55,122,.12);
  color:var(--bb-muted);
  line-height:1.55;
}

.bidluna-booking-region-topline,
.bidluna-booking-creatives-intro{
  margin-bottom:16px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(14,75,179,.10);
  background:rgba(14,75,179,.05);
  line-height:1.65;
}
.bidluna-booking-region-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}
.bidluna-booking-region-card{display:block;position:relative}
.bidluna-booking-region-card input{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
}
.bidluna-booking-region-card__surface{
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(15,55,122,.12);
  background:linear-gradient(180deg, #fff, #f8fbff);
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, opacity .18s ease;
}
.bidluna-booking-region-card.is-selected .bidluna-booking-region-card__surface{
  border-color:rgba(14,75,179,.32);
  transform:translateY(-2px);
}
.bidluna-booking-region-card.is-full .bidluna-booking-region-card__surface{
  border-color:rgba(204,75,75,.16);
  background:rgba(204,75,75,.06);
}
.bidluna-booking-region-card.is-disabled .bidluna-booking-region-card__surface{opacity:.55}
.bidluna-booking-region-card__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.bidluna-booking-region-card__badge{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  min-width:28px;
}
.bidluna-booking-region-card__hint{
  color:var(--bb-muted);
  line-height:1.5;
  font-size:14px;
}
.bidluna-booking-region-card__meta{
  font-weight:800;
  font-size:14px;
}
.bidluna-booking-region-note{
  margin-top:14px;
  color:var(--bb-red);
  font-weight:700;
}

.bidluna-booking-fields{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:16px;
}
.bidluna-booking-field{
  display:grid;
  gap:8px;
}
.bidluna-booking-field--full{grid-column:1/-1}
.bidluna-booking-field span{font-weight:800}
.bidluna-booking-field input{
  width:100%;
  border:1px solid rgba(15,55,122,.16);
  background:#fff;
  border-radius:16px;
  padding:14px 16px;
  font-size:15px;
  color:var(--bb-text);
}
.bidluna-booking-field input:focus{
  outline:0;
  border-color:rgba(14,75,179,.40);
  box-shadow:0 0 0 4px rgba(14,75,179,.10);
}
.bidluna-booking-helper{
  grid-column:1/-1;
  color:var(--bb-muted);
  line-height:1.6;
}

.bidluna-booking-creative-card{
  display:grid;
  gap:16px;
  padding:20px;
  border:1px solid rgba(15,55,122,.12);
  border-radius:26px;
  background:linear-gradient(180deg, #fff, #f8fbff);
}
.bidluna-booking-creative-card + .bidluna-booking-creative-card{margin-top:16px}
.bidluna-booking-creative-card__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.bidluna-booking-creative-card__header h3{
  margin:4px 0 0;
  font-size:28px;
}
.bidluna-booking-creative-card__header p{
  margin:10px 0 0;
  color:var(--bb-muted);
  line-height:1.6;
}
.bidluna-booking-creative-card__specs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
}
.bidluna-booking-creative-card__specs span,
.bidluna-booking-language-tabs__item,
.bidluna-booking-required-pill{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:#eef3ff;
  border:1px solid rgba(14,75,179,.12);
  font-size:12px;
  font-weight:900;
  color:var(--bb-blue);
}
.bidluna-booking-required-pill{
  background:rgba(15,143,103,.08);
  border-color:rgba(15,143,103,.14);
  color:var(--bb-green);
}
.bidluna-booking-creative-card__constraints{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  list-style:none;
  margin:0;
  padding:0;
}
.bidluna-booking-creative-card__constraints li{
  padding:10px 12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(15,55,122,.10);
  font-size:14px;
  line-height:1.5;
}

.bidluna-booking-language-tabs{display:flex;flex-wrap:wrap;gap:8px}
.bidluna-booking-language-stack{display:grid;gap:16px}
.bidluna-booking-asset{
  padding:18px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(15,55,122,.10);
}
.bidluna-booking-asset__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.bidluna-booking-asset__head h4{
  margin:0;
  font-size:20px;
}
.bidluna-booking-asset__subtitle{
  margin-top:6px;
  color:var(--bb-muted);
  font-size:14px;
}
.bidluna-booking-asset__grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
  gap:18px;
  align-items:start;
}
.bidluna-booking-asset__workspace{
  display:grid;
  gap:14px;
  min-height:0;
}
.bidluna-booking-asset__input{display:none}
.bidluna-booking-upload-meta{
  font-size:13px;
  color:var(--bb-muted);
  line-height:1.5;
}

.bidluna-booking-upload-limits{
  margin-top:10px;
  padding:12px 14px;
  border-radius:16px;
  border:1px dashed rgba(14,75,179,.18);
  background:#fff;
  color:var(--bb-text);
  font-size:13px;
  line-height:1.6;
}
.bidluna-booking-asset__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.bidluna-booking-save-btn{
  appearance:none;
  border:1px solid rgba(14,75,179,.18);
  background:#fff;
  color:var(--bb-blue);
  border-radius:16px;
  padding:13px 18px;
  font-size:15px;
  font-weight:900;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.bidluna-booking-save-btn:hover{transform:translateY(-1px)}
.bidluna-booking-save-btn:disabled,
.bidluna-booking-upload-btn:disabled,
.bidluna-booking-submit:disabled,
.bidluna-booking-nav-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}
.bidluna-booking-save-feedback{
  padding:10px 12px;
  border-radius:14px;
  font-size:13px;
  line-height:1.6;
  color:var(--bb-muted);
  background:#f7faff;
  border:1px solid rgba(15,55,122,.10);
}
.bidluna-booking-save-feedback.is-success{
  color:var(--bb-green);
  background:rgba(15,143,103,.08);
  border-color:rgba(15,143,103,.16);
}
.bidluna-booking-save-feedback.is-error{
  color:var(--bb-red);
  background:rgba(204,75,75,.08);
  border-color:rgba(204,75,75,.18);
}
.bidluna-booking-save-feedback.is-warning{
  color:#9b5b00;
  background:rgba(240,159,10,.10);
  border-color:rgba(240,159,10,.20);
}
.bidluna-booking-save-feedback.is-info{
  color:var(--bb-blue);
  background:rgba(14,75,179,.06);
  border-color:rgba(14,75,179,.14);
}
.bidluna-booking-stage{
  --booking-stage-ratio:16 / 9;
  position:relative;
  cursor:grab;
  touch-action:none;
  overflow:hidden;
  border-radius:22px;
  min-height:180px;
  aspect-ratio:var(--booking-stage-ratio);
  border:1px solid rgba(15,55,122,.12);
  background:
    linear-gradient(135deg, rgba(14,75,179,.05), rgba(47,125,255,.03)),
    repeating-linear-gradient(135deg, rgba(14,75,179,.05), rgba(14,75,179,.05) 12px, transparent 12px, transparent 24px);
}
.bidluna-booking-stage--logo{min-height:220px}
.bidluna-booking-stage img,
[data-art-frame] img{
  position:absolute;
  inset:auto auto auto auto;
  max-width:none;
  max-height:none;
  object-fit:unset;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}
.bidluna-booking-stage__empty{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  padding:18px;
  text-align:center;
  color:var(--bb-muted);
  line-height:1.6;
}
.bidluna-booking-stage__frame{
  position:absolute;
  inset:0;
  border:2px solid rgba(255,255,255,.92);
  box-shadow:0 0 0 999px rgba(16,37,74,.18), 0 0 0 1px rgba(15,55,122,.08);
  pointer-events:none;
  border-radius:inherit;
}
.bidluna-booking-stage__frame::before,
.bidluna-booking-stage__frame::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
.bidluna-booking-stage__frame::before{
  background:
    linear-gradient(to right, transparent 33.333%, rgba(255,255,255,.35) 33.333%, rgba(255,255,255,.35) 34.333%, transparent 34.333%, transparent 66.666%, rgba(255,255,255,.35) 66.666%, rgba(255,255,255,.35) 67.666%, transparent 67.666%),
    linear-gradient(to bottom, transparent 33.333%, rgba(255,255,255,.35) 33.333%, rgba(255,255,255,.35) 34.333%, transparent 34.333%, transparent 66.666%, rgba(255,255,255,.35) 66.666%, rgba(255,255,255,.35) 67.666%, transparent 67.666%);
}
.bidluna-booking-stage__label{
  position:absolute;
  right:12px;
  bottom:12px;
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(16,37,74,.72);
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
}

.bidluna-booking-stage__mini-wrap{display:grid;gap:8px;margin-top:12px}
.bidluna-booking-stage__mini-head{font-size:12px;font-weight:900;letter-spacing:.04em;color:var(--bb-muted);text-transform:uppercase}
.bidluna-booking-stage__mini{
  position:relative;
  overflow:hidden;
  width:min(100%, 420px);
  min-height:110px;
  max-height:180px;
  border-radius:16px;
  border:1px solid rgba(15,55,122,.10);
  background:#f7faff;
  display:grid;
  place-items:center;
  padding:12px;
}
.bidluna-booking-stage__mini img{
  position:static;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:156px;
  object-fit:contain;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}
.bidluna-booking-stage__mini-empty{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  padding:10px;
  text-align:center;
  color:var(--bb-muted);
  font-size:13px;
}
.bidluna-booking-zoom{
  display:grid;
  gap:8px;
  font-size:13px;
  font-weight:800;
}
.bidluna-booking-asset__help{
  font-size:14px;
  color:var(--bb-muted);
  line-height:1.6;
}

.bidluna-booking-preview{
  min-height:100%;
  padding:16px;
  border-radius:22px;
  background:#f5f8ff;
  border:1px solid rgba(15,55,122,.10);
  min-width:0;
}
@media (min-width: 1081px){
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(200px,240px);
    gap:16px;
    align-items:start;
  }
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview > .bidluna-mock{grid-column:1;min-width:0}
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview > .bidluna-booking-exact-previews{
    grid-column:2;
    margin-top:0;
    position:sticky;
    top:12px;
  }
}
.bidluna-booking-exact-previews{display:grid;gap:12px;margin-top:16px}
.bidluna-booking-exact-preview-card{display:grid;gap:8px;padding:12px;border-radius:18px;background:#fff;border:1px solid rgba(15,55,122,.10)}
.bidluna-booking-exact-preview-card__actions{display:grid;gap:8px}
.bidluna-booking-save-btn--device{width:100%;padding:12px 14px}
.bidluna-booking-exact-preview-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--bb-muted);font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.bidluna-booking-exact-preview-frame{position:relative;overflow:hidden;border-radius:16px;aspect-ratio:var(--booking-exact-preview-ratio, 16 / 9);background:linear-gradient(135deg, rgba(14,75,179,.05), rgba(47,125,255,.03)), rgba(255,255,255,.7);border:1px solid rgba(15,55,122,.10);min-height:110px}
.bidluna-booking-exact-preview-frame img{position:absolute;inset:auto auto auto auto;max-width:none;max-height:none;object-fit:unset;user-select:none;-webkit-user-drag:none;pointer-events:none}
.bidluna-booking-exact-preview-empty{position:absolute;inset:0;display:grid;place-items:center;padding:12px;text-align:center;color:var(--bb-muted);font-size:13px;line-height:1.5}
.bidluna-booking-exact-preview-card.is-active{box-shadow:0 0 0 2px rgba(37,99,235,.14) inset}
[data-art-frame]{
  position:relative;
  overflow:hidden;
  border-radius:18px;
  background:
    linear-gradient(135deg, rgba(14,75,179,.05), rgba(47,125,255,.03)),
    rgba(255,255,255,.7);
}

.bidluna-booking-partners-preview{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) repeat(3, minmax(0,1fr));
  gap:12px;
  align-items:center;
  min-height:220px;
}
.bidluna-booking-partners-preview__slot{
  min-height:180px;
  background:#fff;
  border:1px solid rgba(15,55,122,.10);
}
.bidluna-booking-partners-preview__ghost{
  min-height:100px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#fff;
  border:1px dashed rgba(15,55,122,.14);
  color:var(--bb-muted);
  font-weight:800;
}

.bidluna-mock{
  display:grid;
  gap:14px;
}
.bidluna-mock button{
  border:0;
  border-radius:12px;
  padding:10px 14px;
  font-weight:900;
  color:#fff;
  background:linear-gradient(135deg, var(--bb-blue), var(--bb-blue-2));
}
.bidluna-mock__pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(14,75,179,.08);
  color:var(--bb-blue);
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.bidluna-mock__url{
  font-size:13px;
  color:var(--bb-muted);
  word-break:break-all;
}

.bidluna-mock--auction{
  background:#fff;
  border-radius:22px;
  border:1px solid rgba(15,55,122,.10);
  overflow:hidden;
}
.bidluna-mock-auction__media{aspect-ratio:var(--bidluna-ads-auction-std-ratio, 2 / 1)}
.bidluna-mock-auction__body{
  display:grid;
  gap:10px;
  padding:16px;
}
.bidluna-mock-auction__body h5{
  margin:0;
  font-size:22px;
}

.bidluna-mock--impact{
  background:#fff;
  border-radius:22px;
  border:1px solid rgba(15,55,122,.10);
  overflow:hidden;
}
.bidluna-mock-impact__media{aspect-ratio:var(--bidluna-ads-auction-imp-ratio-desktop, var(--bidluna-ads-auction-imp-ratio, 252 / 308))}
.bidluna-mock-impact__body{
  display:grid;
  gap:0;
  padding:0 18px 18px;
}
.bidluna-mock-impact__divider{
  height:1px;
  width:100%;
  background:rgba(15,55,122,.12);
  margin:0 0 14px;
}
.bidluna-mock-impact__body h5{
  margin:0;
  font-size:24px;
}

.bidluna-mock--home{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(15,55,122,.10);
  background:#fff;
}
.bidluna-mock-home__media{
  min-height:170px;
  aspect-ratio:7 / 1;
}
.bidluna-mock-home__overlay{
  position:absolute;
  inset:0;
  display:grid;
  align-content:center;
  gap:10px;
  padding:24px;
  background:linear-gradient(90deg, rgba(16,37,74,.75), rgba(16,37,74,.18) 60%, transparent);
  color:#fff;
}
.bidluna-mock-home__overlay .bidluna-mock__url{color:rgba(255,255,255,.85)}

.bidluna-mock--product{
  grid-template-columns:minmax(0,1fr) 280px;
  align-items:start;
}
.bidluna-mock-product__main{
  display:grid;
  gap:12px;
}
.bidluna-mock-product__main span{
  display:block;
  height:82px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(14,75,179,.06), rgba(15,55,122,.04));
}
.bidluna-mock-product__sidebar{
  display:grid;
  gap:12px;
}
.bidluna-mock-product__card{
  aspect-ratio:var(--booking-live-ratio, 4 / 3);
  border-radius:18px;
  border:1px solid rgba(15,55,122,.10);
  background:#fff;
}

.bidluna-mock--account{
  grid-template-columns:minmax(0,1fr) 300px;
  align-items:start;
}
.bidluna-mock-account__main{
  display:grid;
  gap:12px;
}
.bidluna-mock-account__main span{
  display:block;
  height:92px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(14,75,179,.06), rgba(15,55,122,.04));
}
.bidluna-mock-account__sidebar{
  display:grid;
}
.bidluna-mock-account__card{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(15,55,122,.10);
  background:#fff;
}
.bidluna-mock-account__media{
  min-height:160px;
  aspect-ratio:4 / 3;
}


.bidluna-booking-asset{min-width:0}
.bidluna-booking-asset__workspace,
.bidluna-booking-preview,
.bidluna-mock,
.bidluna-mock--home,
.bidluna-mock--account{min-width:0}

.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-booking-asset__grid{
  grid-template-columns:minmax(0,1fr) minmax(300px,360px);
  align-items:start;
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-booking-stage{
  width:min(100%, 560px);
  justify-self:start;
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-booking-preview{
  overflow:hidden;
  min-width:0;
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-mock-home__media{
  min-height:0;
  aspect-ratio:var(--booking-live-ratio, 7 / 1);
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-mock-home__overlay{
  padding:16px 18px;
  gap:8px;
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-mock-home__overlay h5{
  margin:0;
  font-size:16px;
  line-height:1.1;
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-mock-home__overlay strong{
  font-size:14px;
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-mock-home__overlay .bidluna-mock__url{
  font-size:12px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-mock-home__overlay button{
  justify-self:start;
  padding:8px 12px;
  font-size:13px;
}

.bidluna-booking-asset[data-base="img_account"] .bidluna-booking-stage{
  width:min(100%, 520px);
  justify-self:start;
}
.bidluna-booking-asset[data-base="img_account"] .bidluna-booking-preview{
  overflow:hidden;
}
.bidluna-booking-asset[data-base="img_account"] .bidluna-mock-account__media{
  min-height:0;
  aspect-ratio:var(--booking-live-ratio, 4 / 3);
}

@media (max-width: 980px){
  .bidluna-booking-asset[data-base="img_home_banner"] .bidluna-booking-asset__grid{
    grid-template-columns:minmax(0,1fr);
  }
  .bidluna-booking-asset[data-base="img_home_banner"] .bidluna-booking-stage,
  .bidluna-booking-asset[data-base="img_account"] .bidluna-booking-stage{
    width:100%;
    max-width:none;
  }
  .bidluna-booking-stage__mini{width:100%;max-width:none}
}

.bidluna-booking-final{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
  gap:18px;
}
.bidluna-booking-final__summary,
.bidluna-booking-final__payment{
  display:grid;
  gap:16px;
}
.bidluna-booking-final-card{
  background:#fff;
  border:1px solid rgba(15,55,122,.10);
  border-radius:24px;
  padding:20px;
  box-shadow:0 16px 34px rgba(14,75,179,.06);
}
.bidluna-booking-final-card__title{
  margin-bottom:14px;
  font-size:19px;
  font-weight:900;
}
.bidluna-booking-final-card__list{
  display:grid;
  gap:12px;
  margin:0;
}
.bidluna-booking-final-card__list div{
  display:grid;
  grid-template-columns:140px minmax(0,1fr);
  gap:10px;
}
.bidluna-booking-final-card__list dt{
  margin:0;
  color:var(--bb-muted);
}
.bidluna-booking-final-card__list dd{
  margin:0;
  font-weight:800;
}
.bidluna-booking-final-creatives{
  display:grid;
  gap:10px;
}
.bidluna-booking-final-creatives__empty{
  color:var(--bb-muted);
  line-height:1.6;
}
.bidluna-booking-final-creative{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px;
  border-radius:16px;
  background:var(--bb-bg);
}
.bidluna-booking-final-creative__thumb{
  flex:0 0 72px;
  width:72px;
  height:56px;
  overflow:hidden;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid rgba(15,55,122,.10);
  color:var(--bb-muted);
  font-weight:900;
  font-size:12px;
}
.bidluna-booking-final-creative__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.bidluna-booking-final-creative__meta{
  display:grid;
  gap:4px;
}
.bidluna-booking-final-creative__meta strong{font-size:14px}
.bidluna-booking-final-creative__meta small{color:var(--bb-muted)}
.bidluna-booking-check{
  display:flex;
  gap:12px;
  align-items:flex-start;
  line-height:1.6;
  margin:16px 0;
}
.bidluna-booking-check input{margin-top:4px}
.bidluna-booking-payment-note{
  margin-top:12px;
  color:var(--bb-muted);
  line-height:1.6;
  font-size:14px;
}


.bidluna-booking-price-stack{
  display:grid;
  gap:4px;
  justify-items:end;
}
.bidluna-booking-price-stack--align-left{
  justify-items:start;
}
.bidluna-booking-price-old{
  color:var(--bb-muted);
  font-size:13px;
  font-weight:700;
  text-decoration:line-through;
}
.bidluna-booking-price-current{
  font-weight:900;
}
.bidluna-booking-price-note{
  color:#0f5cc0;
  font-size:12px;
  line-height:1.4;
}
.bidluna-booking-promo-box{
  display:grid;
  gap:12px;
  padding:16px;
  border-radius:18px;
  background:#f7faff;
  border:1px solid rgba(15,55,122,.10);
  margin-bottom:16px;
}
.bidluna-booking-promo-box__actions{
  display:grid;
  gap:10px;
}
.bidluna-booking-promo-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  border:0;
  background:linear-gradient(135deg, #0f4fbf, #2f7dff);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(15,79,191,.24);
}
.bidluna-booking-promo-btn[disabled]{
  opacity:.65;
  cursor:wait;
  box-shadow:none;
}
.bidluna-booking-promo-box__status{
  font-size:14px;
  line-height:1.5;
}
.bidluna-booking-promo-box__status[data-kind="success"]{
  color:#0c8a61;
}
.bidluna-booking-promo-box__status[data-kind="error"]{
  color:#bf1e2e;
}
.bidluna-booking-promo-box__status[data-kind="info"]{
  color:var(--bb-muted);
}
.bidluna-booking-promo-box__preview{
  display:grid;
  gap:6px;
  padding:12px 14px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(15,55,122,.08);
}
.bidluna-booking-promo-box__preview-label{
  font-size:13px;
  color:var(--bb-muted);
  font-weight:700;
}

.bidluna-booking-section-head{margin-bottom:16px}
.bidluna-booking-compare__table{
  display:grid;
  gap:10px;
}
.bidluna-booking-compare__row{
  display:grid;
  grid-template-columns:minmax(220px,1.3fr) repeat(3, minmax(120px,1fr));
  gap:10px;
  align-items:center;
}
.bidluna-booking-compare__row > div{
  padding:12px 14px;
  border-radius:16px;
  background:#f7faff;
  border:1px solid rgba(15,55,122,.10);
  line-height:1.5;
}
.bidluna-booking-compare__row--head > div{
  background:linear-gradient(135deg, rgba(14,75,179,.10), rgba(47,125,255,.06));
  font-weight:900;
}
.bidluna-booking-faq__list{display:grid;gap:12px}
.bidluna-booking-faq__item{
  border:1px solid rgba(15,55,122,.10);
  border-radius:18px;
  background:#f7faff;
  padding:0 16px;
}
.bidluna-booking-faq__item summary{
  cursor:pointer;
  padding:16px 0;
  font-weight:900;
}
.bidluna-booking-faq__item p{
  margin:0 0 16px;
  color:var(--bb-muted);
  line-height:1.7;
}

@media (max-width: 1180px){
  .bidluna-booking-layout{grid-template-columns:1fr}
  .bidluna-booking-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width: 1024px){
  .bidluna-booking-hero{grid-template-columns:1fr}
  .bidluna-booking-pack-grid{grid-template-columns:1fr}
  .bidluna-booking-region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bidluna-booking-asset__grid,
  .bidluna-booking-final{grid-template-columns:1fr}
  .bidluna-mock--product,
  .bidluna-mock--account{grid-template-columns:1fr}
}

@media (max-width: 760px){
  .bidluna-booking{padding:16px 12px 40px}
  .bidluna-booking-form,
  .bidluna-booking-compare,
  .bidluna-booking-faq,
  .bidluna-booking-sidebar__card,
  .bidluna-booking-hero__copy,
  .bidluna-booking-hero__card{padding:18px}
  .bidluna-booking-sidebar{grid-template-columns:1fr}
  .bidluna-booking-step-panel__header,
  .bidluna-booking-creative-card__header{display:grid}
  .bidluna-booking-region-grid,
  .bidluna-booking-fields{grid-template-columns:1fr}
  .bidluna-booking-asset{padding:14px}
  .bidluna-booking-asset__actions{flex-direction:column;align-items:stretch}
  .bidluna-booking-save-btn,
  .bidluna-booking-upload-btn{width:100%}
  .bidluna-booking-stage{min-height:160px}
  .bidluna-booking-compare__row{grid-template-columns:1fr}
  .bidluna-booking-final-card__list div{grid-template-columns:1fr}
  .bidluna-booking-step-panel__footer{flex-direction:column-reverse;align-items:stretch}
  .bidluna-booking-nav-btn{width:100%}
}

@media (prefers-reduced-motion: reduce){
  .bidluna-booking *{scroll-behavior:auto !important;transition:none !important}
}

.bidluna-booking-preview--auction_impact [data-booking-exact-preview-card="desktop"] .bidluna-booking-exact-preview-frame{max-width:252px;min-height:240px;margin:0 auto}
.bidluna-booking-preview--auction_impact [data-booking-exact-preview-card="mobile"] .bidluna-booking-exact-preview-frame{max-width:168px;min-height:260px;margin:0 auto}
@media (max-width: 1080px){
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview{display:block}
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview > .bidluna-booking-exact-previews{position:static;margin-top:16px}
}



/* =====================================================================
   V5.1.94 — booking wizard premium polish
===================================================================== */
.bidluna-booking-pack-card__surface{
  position:relative;
  overflow:hidden;
}
.bidluna-booking-pack-card__surface::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:linear-gradient(90deg,#0e4bb3,#2f7dff);
}
.bidluna-booking-pack-card__price{
  display:grid;
  gap:6px;
  padding:16px 18px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(14,75,179,.08),rgba(14,75,179,.03));
  border:1px solid rgba(14,75,179,.10);
}
.bidluna-booking-pack-card__footer{
  margin-top:auto;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(15,143,103,.08);
  border:1px solid rgba(15,143,103,.14);
  color:#0f8f67;
  font-weight:900;
}
.bidluna-booking-pack-card[data-pack-card="starter"] .bidluna-booking-pack-card__surface{
  background:linear-gradient(180deg,#ffffff,#f8fbff);
}
.bidluna-booking-pack-card[data-pack-card="starter"] .bidluna-booking-pack-card__surface::before{
  background:linear-gradient(90deg,#64748b,#94a3b8);
}
.bidluna-booking-pack-card[data-pack-card="visibility"] .bidluna-booking-pack-card__surface{
  background:linear-gradient(180deg,#ffffff,#f4fbff);
}
.bidluna-booking-pack-card[data-pack-card="visibility"] .bidluna-booking-pack-card__surface::before{
  background:linear-gradient(90deg,#0ea5e9,#06b6d4);
}
.bidluna-booking-pack-card[data-pack-card="premium"] .bidluna-booking-pack-card__surface{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,247,255,.98));
  box-shadow:0 22px 48px rgba(14,75,179,.12);
}
.bidluna-booking-pack-card[data-pack-card="premium"] .bidluna-booking-pack-card__surface::before{
  background:linear-gradient(90deg,#0e4bb3,#6d3ff2 55%,#10b981);
}
.bidluna-booking-pack-card[data-pack-card="premium"] .bidluna-booking-pack-card__badge{
  background:rgba(109,63,242,.10);
  color:#5b34dc;
}
.bidluna-booking-pack-card.is-selected .bidluna-booking-pack-card__surface{
  transform:translateY(-4px);
}

.bidluna-booking-creative-card{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,255,.98));
  box-shadow:0 18px 42px rgba(14,75,179,.08);
}
.bidluna-booking-creative-card__header{
  padding-bottom:4px;
  border-bottom:1px solid rgba(15,55,122,.08);
}
.bidluna-booking-asset{
  box-shadow:0 12px 34px rgba(14,75,179,.06);
}
.bidluna-booking-preview{
  background:linear-gradient(180deg,rgba(244,248,255,.96),rgba(236,243,255,.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
.bidluna-booking-exact-preview-card{
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  box-shadow:0 10px 26px rgba(14,75,179,.08);
}
.bidluna-booking-exact-preview-frame{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 12px 24px rgba(15,23,42,.10);
}
.bidluna-booking-exact-preview-card__head strong{
  color:#10254a;
  font-size:12px;
  letter-spacing:.05em;
}
.bidluna-booking-exact-preview-card__head span{
  color:#64748b;
}

@media (min-width: 1081px){
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview{
    grid-template-columns:minmax(0,1fr) minmax(220px,260px);
    gap:18px;
  }
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview--exact-only{
    grid-template-columns:minmax(220px,260px);
    justify-content:end;
    gap:0;
  }
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview--exact-only > .bidluna-booking-exact-previews{
    grid-column:1;
    margin-top:0;
    position:sticky;
    top:12px;
  }
}

.bidluna-booking-creative-card--logo .bidluna-booking-asset__grid{
  grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);
}
.bidluna-booking-partners-preview{
  grid-template-columns:minmax(120px,.95fr) minmax(0,1.05fr);
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:12px;
  min-height:260px;
}
.bidluna-booking-partners-preview__slot{
  grid-row:1 / span 3;
  min-height:220px;
  border-radius:22px;
  box-shadow:0 14px 28px rgba(15,23,42,.08);
}
.bidluna-booking-partners-preview__ghost{
  min-height:68px;
  padding:0 14px;
  text-align:center;
  font-size:14px;
  line-height:1.25;
  border-style:solid;
  background:rgba(255,255,255,.82);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}

.bidluna-booking-stage__mini,
.bidluna-booking-stage,
[data-art-frame]{
  box-shadow:0 10px 26px rgba(15,23,42,.08);
}

.bidluna-booking-hero__copy,
.bidluna-booking-hero__card,
.bidluna-booking-form,
.bidluna-booking-compare,
.bidluna-booking-faq,
.bidluna-booking-sidebar__card{
  backdrop-filter:saturate(1.08) blur(4px);
}

.bidluna-booking-step-panel__footer{
  padding-top:18px;
  border-top:1px solid rgba(15,55,122,.08);
}

.bidluna-booking-final-card{
  box-shadow:0 16px 40px rgba(14,75,179,.07);
}

@media (max-width: 1024px){
  .bidluna-booking-creative-card--logo .bidluna-booking-asset__grid{
    grid-template-columns:1fr;
  }
  .bidluna-booking-partners-preview{
    grid-template-columns:minmax(110px,.9fr) minmax(0,1fr);
    min-height:0;
  }
}

@media (max-width: 760px){
  .bidluna-booking-hero h1{font-size:clamp(28px,8vw,38px)}
  .bidluna-booking-pack-card h3{font-size:24px}
  .bidluna-booking-pack-card__price strong{font-size:30px}
  .bidluna-booking-partners-preview{
    grid-template-columns:1fr;
    grid-template-rows:auto;
  }
  .bidluna-booking-partners-preview__slot{grid-row:auto;min-height:160px}
  .bidluna-booking-preview{padding:14px}
}


/* =====================================================================
   V5.1.97 — exact preview cleanup + logo preview simplification
===================================================================== */
.bidluna-booking-preview--exact-only{
  min-height:auto;
  align-self:start;
}
.bidluna-booking-preview--exact-only > .bidluna-booking-exact-previews{
  align-content:start;
}

@media (min-width: 1081px){
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview--exact-only{
    grid-template-columns:minmax(0,1fr);
    justify-content:stretch;
  }
  .bidluna-booking-asset[data-crop="1"] .bidluna-booking-preview--exact-only > .bidluna-booking-exact-previews{
    width:100%;
    max-width:none;
  }
}

.bidluna-booking-preview--logo{
  min-height:auto;
  overflow:hidden;
  position:relative;
}
.bidluna-booking-stage--logo{
  contain:paint;
}
.bidluna-booking-partners-preview--logo-only{
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto;
  gap:0;
  min-height:0;
}
.bidluna-booking-partners-preview__slot--logo-only{
  grid-row:auto;
  width:100%;
  max-width:360px;
  min-height:0;
  aspect-ratio:3 / 1;
  justify-self:center;
}

@media (max-width: 760px){
  .bidluna-booking-partners-preview__slot--logo-only{
    max-width:none;
  }
}

/* =====================================================================
   V5.1.98 — exact preview scroll + logo exact preview sizing
===================================================================== */
.bidluna-booking-exact-preview-scroll,
.bidluna-booking-logo-exact-scroll{
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom:8px;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.bidluna-booking-exact-preview-scroll::-webkit-scrollbar,
.bidluna-booking-logo-exact-scroll::-webkit-scrollbar{
  height:8px;
}
.bidluna-booking-exact-preview-scroll::-webkit-scrollbar-thumb,
.bidluna-booking-logo-exact-scroll::-webkit-scrollbar-thumb{
  background:rgba(59,130,246,.35);
  border-radius:999px;
}
.bidluna-booking-exact-preview-scroll::-webkit-scrollbar-track,
.bidluna-booking-logo-exact-scroll::-webkit-scrollbar-track{
  background:rgba(148,163,184,.16);
  border-radius:999px;
}

.bidluna-booking-exact-preview-scroll .bidluna-booking-exact-preview-frame{
  min-width:100%;
}
.bidluna-booking-exact-preview-scroll.is-wide .bidluna-booking-exact-preview-frame{
  width:calc(var(--booking-exact-preview-display-h, 120px) * var(--booking-exact-preview-w, 16) / var(--booking-exact-preview-h, 9));
  height:var(--booking-exact-preview-display-h, 120px);
  min-height:0;
  aspect-ratio:auto;
}

.bidluna-booking-asset[data-base="img_home_banner"] .bidluna-booking-stage{
  width:min(100%, 640px);
}

.bidluna-booking-creative-card--logo .bidluna-booking-asset__grid{
  grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);
  align-items:start;
}
.bidluna-booking-creative-card--logo .bidluna-booking-asset__workspace{
  min-width:0;
  overflow:hidden;
}
.bidluna-booking-stage--logo{
  min-height:240px;
}
.bidluna-booking-preview--logo{
  display:grid;
  align-content:start;
}
.bidluna-booking-logo-exact-card{
  display:grid;
  gap:12px;
  padding:12px;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  border:1px solid rgba(15,55,122,.10);
  box-shadow:0 10px 26px rgba(14,75,179,.08);
}
.bidluna-booking-logo-exact-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-size:12px;
  color:var(--bb-muted);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.bidluna-booking-logo-exact-card__head strong{
  color:#10254a;
  font-size:12px;
  letter-spacing:.05em;
}
.bidluna-booking-logo-exact-card__head span{
  color:#64748b;
}
.bidluna-booking-logo-exact-scroll .bidluna-booking-partners-preview--logo-only{
  display:block;
  min-width:360px;
  width:max(100%, 360px);
}
.bidluna-booking-logo-exact-scroll .bidluna-booking-partners-preview__slot--logo-only{
  width:100%;
  max-width:none;
  min-height:0;
  aspect-ratio:3 / 1;
  justify-self:stretch;
}

@media (max-width: 1024px){
  .bidluna-booking-creative-card--logo .bidluna-booking-asset__grid{
    grid-template-columns:1fr;
  }
  .bidluna-booking-logo-exact-scroll .bidluna-booking-partners-preview--logo-only{
    min-width:0;
    width:100%;
  }
}


/* =====================================================================
   V5.1.99 — logo exact preview layout cleanup
===================================================================== */
.bidluna-booking-exact-preview-scroll,
.bidluna-booking-logo-exact-scroll{
  overflow-x:scroll;
  overflow-y:hidden;
  scrollbar-gutter:stable both-edges;
}

.bidluna-booking-creative-card--logo .bidluna-booking-asset__grid{
  grid-template-columns:minmax(0,1.18fr) minmax(280px,320px);
  align-items:start;
}
.bidluna-booking-creative-card--logo .bidluna-booking-asset__workspace{
  min-width:0;
}
.bidluna-booking-creative-card--logo .bidluna-booking-stage{
  width:100%;
  max-width:100%;
}
.bidluna-booking-preview--logo{
  min-width:0;
  overflow:hidden;
}
.bidluna-booking-logo-exact-card{
  display:grid;
  gap:12px;
  align-content:start;
  width:100%;
  min-width:0;
}
.bidluna-booking-logo-exact-frame{
  position:relative;
  width:100%;
  min-width:0;
  overflow:hidden;
  border-radius:18px;
  aspect-ratio:3 / 1;
  min-height:120px;
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  border:1px solid rgba(15,55,122,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95), 0 12px 24px rgba(15,23,42,.10);
}
.bidluna-booking-logo-exact-frame img{
  position:absolute;
  inset:auto auto auto auto;
  max-width:none;
  max-height:none;
  object-fit:unset;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}
.bidluna-booking-logo-exact-empty{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  padding:12px;
  text-align:center;
  color:var(--bb-muted);
  font-size:13px;
  line-height:1.5;
}
.bidluna-booking-logo-exact-card__actions{
  display:grid;
}
.bidluna-booking-logo-exact-card__actions .bidluna-booking-save-btn{
  width:100%;
}

@media (max-width: 1024px){
  .bidluna-booking-creative-card--logo .bidluna-booking-asset__grid{
    grid-template-columns:1fr;
  }
}


/* =====================================================================
   V5.2.00 — logo exact card matches generic exact preview card
===================================================================== */
.bidluna-booking-preview--logo{
  display:grid;
  align-content:start;
  min-width:0;
  overflow:hidden;
}
.bidluna-booking-logo-exact-card{
  width:100%;
  min-width:0;
  max-width:none;
  align-content:start;
}
.bidluna-booking-logo-exact-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.bidluna-booking-logo-exact-card__head strong{
  white-space:nowrap;
}
.bidluna-booking-logo-exact-frame{
  width:100%;
  min-width:0;
  aspect-ratio:var(--booking-exact-preview-ratio, 3 / 1);
  min-height:110px;
}
.bidluna-booking-logo-exact-empty{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  padding:12px;
  text-align:center;
  color:var(--bb-muted);
  font-size:13px;
  line-height:1.5;
}
.bidluna-booking-logo-exact-frame img:not([hidden]) + .bidluna-booking-logo-exact-empty{
  display:none;
}
.bidluna-booking-logo-exact-card__actions{
  display:grid;
  gap:8px;
}
.bidluna-booking-logo-exact-card__actions .bidluna-booking-save-btn{
  width:100%;
}


/* =====================================================================
   V5.2.00 — logo exact card matches standard exact preview card
===================================================================== */
.bidluna-booking-preview--logo{
  display:grid !important;
  align-content:start !important;
  min-width:0;
}
.bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card{
  display:grid !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
  align-content:start !important;
  justify-self:stretch !important;
}
.bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  width:100% !important;
}
.bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__head strong{
  display:block;
  flex:1 1 auto;
  min-width:0;
}
.bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__head span{
  flex:0 0 auto;
  white-space:nowrap;
}
.bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-frame{
  position:relative;
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:3 / 1 !important;
  overflow:hidden;
}
.bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__actions{
  display:grid !important;
  gap:8px !important;
  width:100% !important;
}
.bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__actions .bidluna-booking-save-btn{
  width:100% !important;
}


/* =====================================================================
   V5.2.01 — logo exact preview uses full right column width
   The logo preview panel must not inherit the generic 2-column crop grid.
===================================================================== */
@media (min-width: 1081px){
  .bidluna-booking-asset[data-field="logo"] .bidluna-booking-preview--logo{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:0 !important;
    align-content:start !important;
    justify-items:stretch !important;
  }
  .bidluna-booking-asset[data-field="logo"] .bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card{
    grid-column:1 !important;
    width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
    align-self:start !important;
  }
}
.bidluna-booking-asset[data-field="logo"] .bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card{
  display:grid !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
}
.bidluna-booking-asset[data-field="logo"] .bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__head,
.bidluna-booking-asset[data-field="logo"] .bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-frame,
.bidluna-booking-asset[data-field="logo"] .bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__actions{
  width:100% !important;
  min-width:0 !important;
}
.bidluna-booking-asset[data-field="logo"] .bidluna-booking-preview--logo > .bidluna-booking-logo-exact-card > .bidluna-booking-logo-exact-card__actions .bidluna-booking-save-btn{
  width:100% !important;
}
