.glossia-booking-form label,
.glossia-tracker-form,
.glossia-booking-addons legend,
.glossia-addon-option{display:block}
.glossia-tracker-form{display:grid;grid-template-columns:1fr auto;gap:12px}
.glossia-booking-form span{display:block;color:var(--glossia-text-soft);margin-bottom:10px}
.glossia-tracker-result strong{display:block;font-size:22px;margin-bottom:8px}
.glossia-booking-addons{margin:0;padding:16px;border:1px solid rgba(25,199,255,.14);border-radius:18px;background:linear-gradient(180deg,rgba(25,199,255,.05),rgba(255,255,255,.02))}
.glossia-booking-addons legend{padding:0 8px;color:#fff;font-weight:700}
.glossia-booking-addons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.glossia-addon-option{position:relative;padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);cursor:pointer;transition:.25s ease}
.glossia-addon-option input{position:absolute;top:14px;right:14px}
.glossia-addon-option__title{display:block;color:#fff;font-weight:600;line-height:1.45;margin:0 30px 6px 0}
.glossia-addon-option__price{display:block;color:var(--glossia-accent);font-size:14px}
.glossia-addon-option:has(input:checked){border-color:rgba(25,199,255,.28);box-shadow:0 0 0 1px rgba(25,199,255,.12) inset,0 0 24px rgba(25,199,255,.10)}
.glossia-booking-addons small{display:block;margin-top:10px;color:var(--glossia-text-soft)}
.glossia-inline-notice{margin-top:16px;padding:16px 18px;border-radius:16px;border:1px solid rgba(25,199,255,.18);background:rgba(25,199,255,.06)}
@media (max-width:700px){
    .glossia-tracker-form,.glossia-booking-addons-grid{grid-template-columns:1fr}
}


.glossia-addon-option{display:flex;flex-direction:column;justify-content:space-between;gap:10px;min-height:132px}
.glossia-addon-option input{appearance:none;-webkit-appearance:none;position:absolute;top:16px;right:16px;width:18px;height:18px;border-radius:999px;border:1px solid rgba(25,199,255,.34);background:rgba(255,255,255,.02);box-shadow:none;outline:none}
.glossia-addon-option input:checked{background:radial-gradient(circle at center,#19C7FF 0 48%,transparent 52% 100%);border-color:rgba(25,199,255,.55);box-shadow:0 0 0 4px rgba(25,199,255,.08)}
.glossia-addon-option__included{display:none;color:var(--glossia-text-soft);font-size:13px;line-height:1.45}
.glossia-addon-option.is-included{opacity:.76;border-color:rgba(25,199,255,.18);background:linear-gradient(180deg,rgba(25,199,255,.06),rgba(255,255,255,.02))}
.glossia-addon-option.is-included input{opacity:.4;cursor:not-allowed}
.glossia-addon-option.is-included .glossia-addon-option__included{display:block}
.glossia-addon-option.is-included .glossia-addon-option__price{color:var(--glossia-text-soft)}

.glossia-booking-shell--form-only{grid-template-columns:1fr;max-width:100%}
.glossia-booking-shell--form-only .glossia-booking-card{width:100%}


/* final fix: prevent theme input styles from stretching addon checkboxes */
.glossia-addon-option input[type="checkbox"]{
  width:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  height:18px !important;
  min-height:18px !important;
  max-height:18px !important;
  padding:0 !important;
  margin:0 !important;
  flex:0 0 18px !important;
  display:block;
  appearance:none;
  -webkit-appearance:none;
  border-radius:999px;
}
.glossia-addon-option{overflow:hidden;}


/* v2.4.1 hard fix: fully hide native addon checkbox and render custom dot via label pseudo-element */
.glossia-addon-option{
  position:relative;
  padding-right:56px;
}
.glossia-addon-option input[type="checkbox"]{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
  width:1px !important;
  height:1px !important;
  min-width:1px !important;
  min-height:1px !important;
  max-width:1px !important;
  max-height:1px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}
.glossia-addon-option::after{
  content:"";
  position:absolute;
  top:18px;
  right:18px;
  width:18px;
  height:18px;
  border-radius:999px;
  border:1px solid rgba(25,199,255,.34);
  background:rgba(255,255,255,.02);
  box-shadow:none;
}
.glossia-addon-option:has(input:checked)::after{
  background:radial-gradient(circle at center,#19C7FF 0 48%,transparent 52% 100%);
  border-color:rgba(25,199,255,.55);
  box-shadow:0 0 0 4px rgba(25,199,255,.08);
}
.glossia-addon-option.is-included::after{
  border-color:rgba(25,199,255,.20);
  background:rgba(255,255,255,.02);
  box-shadow:none;
}


/* v2.5.0 compact rebuilt booking */
.glossia-booking-card{position:relative}
.glossia-booking-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.glossia-booking-summary__item{display:flex;flex-direction:column;gap:4px}
.glossia-booking-form label{display:block}
.glossia-booking-form span{display:block;color:var(--glossia-text-soft);margin-bottom:6px}
.glossia-addon-option{display:flex;flex-direction:column;justify-content:flex-start}
@media (max-width:720px){.glossia-booking-summary{grid-template-columns:1fr}}


/* v2.6.0 ultra compact booking */
.glossia-booking-shell--form-only .glossia-booking-card{width:100%;max-width:none}
.glossia-booking-summary{gap:8px !important;margin-bottom:10px !important}
.glossia-booking-summary__item{padding:8px 10px !important;border-radius:14px !important}
.glossia-booking-summary__label{font-size:10px !important;margin-bottom:3px !important}
.glossia-booking-summary__value{font-size:15px !important}
.glossia-booking-form span{margin-bottom:4px !important;font-size:11px !important;line-height:1.3}
.glossia-booking-form input:not([type="checkbox"]):not([type="radio"]),
.glossia-booking-form select,
.glossia-booking-form textarea{min-height:40px !important;padding:9px 11px !important;border-radius:13px !important}
.glossia-booking-form textarea{min-height:60px !important}
.glossia-booking-form-grid{gap:10px !important}
.glossia-booking-addons{padding:10px !important;border-radius:16px !important}
.glossia-booking-addons legend{font-size:11px !important}
.glossia-booking-addons-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:8px !important}
.glossia-addon-option{min-height:68px !important;padding:10px 38px 10px 12px !important;border-radius:13px !important;gap:4px !important}
.glossia-addon-option::after{top:12px !important;right:12px !important;width:16px !important;height:16px !important}
.glossia-addon-option__title{font-size:12px !important;line-height:1.22 !important;margin:0 !important}
.glossia-addon-option__price{font-size:11px !important;line-height:1.2 !important}
.glossia-addon-option__included{font-size:10px !important;line-height:1.25 !important}
.glossia-booking-addons small,.glossia-form-notice{font-size:11px !important;line-height:1.35 !important}
.glossia-form-actions{margin-top:10px !important;gap:10px !important}
@media (max-width: 1100px){
  .glossia-booking-addons-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media (max-width: 700px){
  .glossia-booking-summary{grid-template-columns:1fr !important}
  .glossia-booking-addons-grid{grid-template-columns:1fr !important}
  .glossia-addon-option{min-height:58px !important;padding:9px 36px 9px 11px !important}
}
