/* Inherits the booking flow's Rubik typography and native spacing. */
.meiso-slot-hold-v1 {
  color: #1A2E35;
  font: inherit;
  line-height: 1.5;
  margin: 8px 0;
}
.meiso-slot-hold-v1__visual {
  border: 1px solid #C7D3D7;
  border-left-width: 3px;
  border-radius: 4px;
  margin: 0;
  padding: 8px 12px;
  background: #DCF2F2;
}
.meiso-slot-hold-v1[data-state="expired"] .meiso-slot-hold-v1__visual,
.meiso-slot-hold-v1[data-state="conflict"] .meiso-slot-hold-v1__visual,
.meiso-slot-hold-v1[data-state="uncertain"] .meiso-slot-hold-v1__visual {
  background: #F4F7FA;
}
.meiso-slot-hold-v1__countdown { font-variant-numeric: tabular-nums; font-weight: 500; }
.meiso-slot-hold-v1__sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.meiso-slot-hold-v1[hidden] { display: none !important; }

/* A changed availability remains disabled throughout its visual transition. */
#content-calendar label.meiso-slot-became-unavailable { animation: meiso-slot-unavailable-v1 450ms ease-out; }
@keyframes meiso-slot-unavailable-v1 {
  from { box-shadow: 0 0 0 2px #23B1B1; opacity: .9; transform: scale(1.025); }
  to { box-shadow: 0 0 0 0 transparent; transform: scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  #content-calendar label.meiso-slot-became-unavailable { animation: none; }
}

.meiso-slot-hold-v1__action { min-height:44px; margin:6px 0 0; padding:8px 14px; font:inherit; cursor:pointer; }
.meiso-slot-hold-v1__action[hidden] { display:none !important; }
.meiso-slot-hold-v1__action:disabled { opacity:.65; cursor:wait; }
.meiso-slot-hold-v1__action:focus-visible { outline:2px solid #044850; outline-offset:3px; }
#btn-form[data-meiso-hold-hidden-v1="1"] { display:none !important; }

.meiso-slot-hold-v1 { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.meiso-slot-hold-v1__visual { flex:1; min-width:0; }
.meiso-slot-hold-v1__action { width:auto; flex-shrink:0; margin:0; }
.meiso-slot-hold-v1[data-state="expired"] .meiso-slot-hold-v1__visual { border:0; padding:0; background:transparent; }
#content_recap .meiso-slot-hold-v1__action { width:100%; }

.meiso-slot-hold-v1__action.outline { color:#044850; text-decoration:underline; text-underline-offset:3px; }
