/* Appointment modal control and typography polish — local QA 20260726qa701. */

.appointment-create-modal-v1,
.appointment-create-modal-v1 :is(h2,h3,strong,small,span,button,input,select,textarea,label){
  text-shadow:none!important;
  filter:none!important;
  text-rendering:auto!important;
  -webkit-font-smoothing:auto!important;
  -moz-osx-font-smoothing:auto!important;
}
.appointment-create-modal-v1 :is(svg,i){
  filter:none!important;
  shape-rendering:geometricPrecision;
}
.appointment-create-panel-v1 h3{
  color:#f8fbff!important;
  font-size:20px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.appointment-create-panel-v1 h3 svg{
  stroke-width:2!important;
}
.appointment-add-customer-v1 strong{
  color:#f8fbff!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.appointment-add-customer-v1 small{
  color:#c7d4e2!important;
  font-size:13px!important;
  font-weight:650!important;
  line-height:1.35!important;
}
.appointment-add-customer-v1>span svg,
.appointment-kind-v1 svg{
  stroke-width:2!important;
}
.appointment-kind-v1 span{
  color:#f7f9fc!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.15!important;
}
.appointment-field-v1>span,
.appointment-crew-picker-v1>span{
  color:#dce6ef!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.appointment-field-v1 :is(input:not([type="hidden"]),select,textarea):hover,
.appointment-field-v1 :is(input:not([type="hidden"]),select,textarea):focus,
.appointment-field-v1 :is(input:not([type="hidden"]),select,textarea):focus-visible,
.appointment-crew-picker-v1>input:hover,
.appointment-crew-picker-v1>input:focus,
.appointment-crew-picker-v1>input:focus-visible{
  border-color:#ff7a00!important;
  outline:1px solid #ff7a00!important;
  outline-offset:1px!important;
  background-color:#071521!important;
  box-shadow:none!important;
}
.appointment-field-v1 :is(input:not([type="hidden"]),select,textarea):focus,
.appointment-field-v1 :is(input:not([type="hidden"]),select,textarea):focus-visible,
.appointment-crew-picker-v1>input:focus,
.appointment-crew-picker-v1>input:focus-visible{
  outline-width:2px!important;
}
.appointment-field-v1 input[type="date"]{
  accent-color:#ff7a00!important;
}
.appointment-field-v1 input[type="date"]::-webkit-calendar-picker-indicator{
  cursor:pointer;
  opacity:1;
  filter:sepia(1) saturate(8) hue-rotate(338deg) brightness(1.12)!important;
}

.appointment-time-field-v2{
  position:relative;
}
.appointment-time-picker-v2{
  position:relative;
  display:block;
  min-width:0;
}
.appointment-time-picker-v2>input[type="hidden"]{
  display:none;
}
.appointment-time-trigger-v2{
  width:100%;
  height:45px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 12px;
  color:#f8fbff;
  background:#071521;
  border:1px solid #415a73;
  border-radius:9px;
  font-size:14px;
  font-weight:750;
  text-align:left;
  cursor:pointer;
}
.appointment-time-trigger-v2 svg{
  width:17px!important;
  height:17px!important;
  flex:0 0 17px;
  color:#d1dce7!important;
  stroke:currentColor!important;
  transition:transform .14s ease,color .14s ease;
}
.appointment-time-trigger-v2:hover,
.appointment-time-trigger-v2:focus,
.appointment-time-trigger-v2:focus-visible,
.appointment-time-trigger-v2[aria-expanded="true"]{
  border-color:#ff7a00!important;
  outline:2px solid #ff7a00!important;
  outline-offset:1px!important;
  background:#071521!important;
  color:#fff!important;
  box-shadow:none!important;
}
.appointment-time-trigger-v2:hover svg,
.appointment-time-trigger-v2:focus-visible svg,
.appointment-time-trigger-v2[aria-expanded="true"] svg{
  color:#ff9a3d!important;
}
.appointment-time-trigger-v2[aria-expanded="true"] svg{
  transform:rotate(180deg);
}
.appointment-time-options-v2{
  position:absolute;
  z-index:40;
  top:calc(100% + 7px);
  right:0;
  left:0;
  display:grid;
  gap:3px;
  max-height:176px;
  padding:5px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#ff7a00 #071521;
  background:#07131e;
  border:1px solid #ff7a00;
  border-radius:8px;
  box-shadow:0 16px 36px rgba(0,0,0,.5);
}
.appointment-time-options-v2[hidden]{
  display:none!important;
}
.appointment-time-options-v2::-webkit-scrollbar{
  width:6px;
}
.appointment-time-options-v2::-webkit-scrollbar-track{
  background:#071521;
}
.appointment-time-options-v2::-webkit-scrollbar-thumb{
  background:#ff7a00;
  border-radius:999px;
}
.appointment-time-options-v2 button{
  width:100%;
  min-height:34px;
  padding:6px 9px;
  color:#e7eef6;
  background:#07131e;
  border:1px solid transparent;
  border-radius:6px;
  font-size:13px;
  font-weight:750;
  line-height:1.2;
  text-align:left;
  cursor:pointer;
}
.appointment-time-options-v2 button:hover,
.appointment-time-options-v2 button:focus,
.appointment-time-options-v2 button:focus-visible{
  color:#fff!important;
  background:#20150d!important;
  border-color:#ff7a00!important;
  outline:0!important;
  box-shadow:none!important;
}
.appointment-time-options-v2 button[aria-selected="true"]{
  color:#ffad66;
  background:#17130f;
  border-color:rgba(255,122,0,.58);
}
