/* Booking Activities · customer rescheduling, cancellation and refund dialogs. */
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog){
  --jcba-gold:rgb(var(--jcs-accent,221,183,122));--jcba-fill:rgb(var(--jcs-fill,221,183,122));
  --jcba-bg:rgb(var(--jcs-bg,7,19,27));
  --jcba-panel:rgb(var(--jcs-surface,12,29,39));
  --jcba-line:rgb(var(--jcs-line,64,81,90));
  --jcba-text:rgb(var(--jcs-text,243,240,233));
  --jcba-muted:rgb(var(--jcs-muted,189,200,205));
  box-sizing:border-box;
  position:fixed!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%);
  width:min(760px,calc(100vw - 32px))!important;
  min-width:0!important;
  max-width:calc(100vw - 32px)!important;
  max-height:min(88dvh,860px);
  display:flex;
  flex-direction:column;
  padding:0!important;
  overflow:hidden;
  border:1px solid var(--jcba-line)!important;
  border-radius:4px!important;
  background:linear-gradient(145deg,var(--jcba-panel),var(--jcba-bg) 63%)!important;
  color:var(--jcba-text)!important;
  box-shadow:0 26px 85px #000b,0 0 0 1px #ddb77a18!important;
  font:14px/1.65 var(--jca-sans,Montserrat,Arial,sans-serif)!important;
}

body.jca-site .bookacti-dialog:has(#bookacti-cancel-booking-dialog),
body.jca-site .bookacti-dialog:has(#bookacti-refund-booking-dialog),
body.jca-site .bookacti-dialog:has(#bookacti-refund-booking-confirm-dialog){width:min(570px,calc(100vw - 32px))!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog)::before{content:"";height:2px;flex:0 0 2px;background:var(--jcba-gold)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) *,
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) *::before,
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) *::after{box-sizing:border-box}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-titlebar{
  display:flex;align-items:center;gap:16px;flex:none;
  margin:0;padding:21px 26px 14px!important;
  border:0!important;border-bottom:1px solid var(--jcba-line)!important;
  border-radius:0;background:transparent!important;color:var(--jcba-text)!important
}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-title{
  float:none;width:auto;margin:0;overflow:visible;white-space:normal;
  font:400 clamp(25px,3vw,34px)/1.1 var(--jca-serif,'Cormorant Garamond',Georgia,serif)!important;
  color:var(--jcba-text)
}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-titlebar-close{
  position:relative;margin:0 0 0 auto;padding:0;width:34px;height:34px;flex:0 0 34px;
  border:1px solid var(--jcba-line)!important;border-radius:50%;background:transparent!important;color:var(--jcba-text)!important
}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-titlebar-close:hover,
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-titlebar-close:focus-visible{border-color:var(--jcba-gold)!important;background:#ddb77a20!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-titlebar-close .ui-icon{display:none!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-titlebar-close::after{content:"×";position:absolute;inset:0;display:grid;place-items:center;font:300 25px/1 Arial,sans-serif;color:var(--jcba-text)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-content{
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
  flex:1 1 auto;overflow:auto!important;padding:22px 26px!important;
  border:0!important;background:transparent!important;color:var(--jcba-text)!important
}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) :is(p,li,label,span,strong){color:inherit}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) p{margin:0 0 13px;font:14px/1.7 var(--jca-sans,Montserrat,Arial,sans-serif)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) :is(input:not([type=hidden]),select,textarea){background:var(--jcba-panel)!important;color:var(--jcba-text)!important;border:1px solid var(--jcba-line)!important;border-radius:3px;padding:10px 12px}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) :is(input[type=checkbox],input[type=radio]){accent-color:var(--jcba-gold)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) textarea{display:block;max-width:100%;width:100%;min-height:100px}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) a{color:var(--jcba-gold)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) a:hover{text-decoration:underline}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane{
  flex:none;margin:0;padding:17px 26px 22px!important;border:0!important;border-top:1px solid var(--jcba-line)!important;
  background:transparent!important;color:var(--jcba-text)!important
}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane .ui-dialog-buttonset{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;float:none!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane button{
  margin:0!important;min-height:42px;padding:9px 18px!important;
  border:1px solid var(--jcba-line)!important;border-radius:2px!important;
  background:transparent!important;color:var(--jcba-text)!important;
  font:600 11px/1.3 var(--jca-sans,Montserrat,Arial,sans-serif)!important;letter-spacing:.07em;text-transform:uppercase;
  box-shadow:none!important;cursor:pointer
}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane button.bookacti-dialog-delete-button{
  border-color:var(--jcba-gold)!important;background:var(--jcba-fill)!important;color:#08141a!important
}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane button:hover,
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane button:focus-visible{border-color:var(--jcba-gold)!important;box-shadow:0 0 17px #ddb77a44!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane button.bookacti-dialog-delete-button:hover{filter:brightness(1.12)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--jcba-gold);outline-offset:2px}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .bookacti-calendar{width:100%;min-width:0;color:var(--jcba-text);--fc-border-color:var(--jcba-line);--fc-page-bg-color:transparent;--fc-neutral-bg-color:#ffffff0a;--fc-today-bg-color:#ddb77a12;--fc-event-bg-color:#94754a;--fc-event-border-color:var(--jcba-gold)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .bookacti-calendar :is(.fc,.fc-scrollgrid,.fc-view-harness){background:transparent;color:var(--jcba-text)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 17px!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc-toolbar-title{font:400 25px/1.1 var(--jca-serif,'Cormorant Garamond',Georgia,serif)!important;color:var(--jcba-text)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-button{background:transparent!important;border:1px solid var(--jcba-line)!important;color:var(--jcba-text)!important;border-radius:2px!important;box-shadow:none!important;padding:7px 10px!important;text-transform:none}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-button:hover,
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-button:focus-visible{background:#ddb77a25!important;border-color:var(--jcba-gold)!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc :is(table,thead,tbody,tr,th,td){background:transparent!important;color:var(--jcba-text)!important;border-color:var(--jcba-line)!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-col-header-cell-cushion{display:block;padding:8px 2px;color:var(--jcba-muted)!important;font:600 11px var(--jca-sans,Montserrat,Arial,sans-serif)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-daygrid-day-number{padding:5px 7px;color:var(--jcba-text)!important;text-decoration:none}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-daygrid-day-frame{min-height:49px}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-day-today{background:#ddb77a12!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-day-past{opacity:.6}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-event{border-color:var(--jcba-gold)!important;background:var(--jcba-fill)!important;color:#121414!important;font:600 11px var(--jca-sans,Montserrat,Arial,sans-serif);cursor:pointer}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-event.bookacti-picked-event{background:var(--jcba-fill)!important;color:#07131b!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .bookacti-picked-events:not(:empty){margin-top:14px;padding:13px 16px;border:1px solid var(--jcba-line);background:#ffffff08;color:var(--jcba-text)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .bookacti-notices{color:var(--jcba-text)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .bookacti-error-list{padding:12px 16px;background:#7c323230;border-left:2px solid #e6a099;color:var(--jcba-text)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) #bookacti-refund-amount-container{display:flex;justify-content:space-between;gap:15px;padding:13px 16px;border:1px solid var(--jcba-line);background:#ffffff08}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) #bookacti-refund-amount{color:var(--jcba-gold)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .bookacti-refund-option{display:table-row;color:var(--jcba-text)}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .bookacti-refund-option-description{color:var(--jcba-muted);font-size:12px}
body.jca-site .ui-widget-overlay{position:fixed!important;inset:0!important;background:#02080de0!important;opacity:1!important;backdrop-filter:blur(4px)}
@media(max-width:600px){
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog){width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)}
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-titlebar{padding:16px 16px 12px!important}
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-content{padding:16px!important}
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane{padding:12px 16px 16px!important}
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .ui-dialog-buttonpane button{flex:1 1 auto}
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc-toolbar-title{font-size:21px!important}
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-daygrid-day-frame{min-height:40px}
  body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-event{font-size:10px}
}
/* FullCalendar v3/v5/v6 date and event labels, including nested plugin colours. */
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc :is(.fc-day-number,.fc-daygrid-day-number,.fc-day-header,.fc-col-header-cell-cushion,.fc-axis,.fc-timegrid-slot-label,.fc-list-day-text,.fc-list-day-side-text){color:var(--jcba-text)!important;opacity:1;text-decoration:none}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc :is(.fc-day-number,.fc-daygrid-day-number):is(:hover,:focus-visible){color:var(--jcba-gold)!important;text-decoration:underline}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc :is(.fc-day-past,.fc-other-month,.fc-day-other){opacity:1}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc :is(.fc-other-month,.fc-day-other) :is(.fc-day-number,.fc-daygrid-day-number){color:var(--jcba-muted)!important;opacity:1}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-event :is(.fc-event-main,.fc-content,.fc-title,.fc-time,.fc-event-title,.fc-event-time,.fc-event-title-container,span,a){color:#121414!important;opacity:1}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-event:is(:hover,:focus-visible,.bookacti-picked-event){background:var(--jcba-fill)!important;color:#121414!important;outline:2px solid var(--jcba-text);outline-offset:1px}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) .fc .fc-button-active{background:var(--jcba-fill)!important;color:#121414!important}
body.jca-site .bookacti-dialog:has(.bookacti-bookings-dialog) :is(.fc-button,.ui-dialog-buttonpane button) :is(span,strong){color:inherit!important}
/* A visible, fixed-size close control even in narrow booking dialogs. */
body.jca-site .bookacti-dialog.bookacti-dialog .ui-dialog-titlebar{display:flex!important;align-items:center;gap:12px;flex-shrink:0}
body.jca-site .bookacti-dialog.bookacti-dialog .ui-dialog-titlebar .ui-dialog-title{min-width:0;flex:1;white-space:normal;overflow-wrap:anywhere}
body.jca-site .bookacti-dialog.bookacti-dialog .ui-dialog-titlebar button.ui-dialog-titlebar-close{position:relative!important;inset:auto!important;transform:none!important;display:block!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px;min-height:44px;margin:0!important;padding:0!important;opacity:1!important;overflow:hidden;background:#071820!important;color:#edc587!important;border:1px solid rgb(var(--jcs-accent,237,197,135))!important;border-radius:4px;font-size:0!important;text-indent:0!important;cursor:pointer}
body.jca-site .bookacti-dialog.bookacti-dialog .ui-dialog-titlebar button.ui-dialog-titlebar-close::after{content:"×";position:absolute;inset:0;display:grid;place-items:center;color:#edc587!important;font:400 30px/1 Arial,sans-serif!important;text-indent:0!important;opacity:1!important;visibility:visible!important}
body.jca-site .bookacti-dialog.bookacti-dialog .ui-dialog-titlebar button.ui-dialog-titlebar-close .ui-icon{display:none!important}
body.jca-site .bookacti-dialog.bookacti-dialog .ui-dialog-titlebar button.ui-dialog-titlebar-close:is(:hover,:focus-visible){background:#142b36!important;outline:2px solid rgb(var(--jcs-text,244,240,232));outline-offset:2px}
