.arm-wrap .description{margin:8px 0 18px}
.arm-bookings-table{border-collapse:collapse}
.arm-bookings-table tbody tr.arm-order-row td{background:#f0f0f1!important;border-top:2px solid #dcdcde;border-bottom:1px solid #dcdcde;font-size:14px;font-weight:500}
.arm-bookings-table tbody tr.arm-booking-row td{background:#fff!important;vertical-align:middle;border-bottom:1px solid #f0f0f1}
.arm-bookings-table tbody tr.arm-booking-row:hover td{background:#fbfbfb!important}
.arm-order-row .button{margin-left:12px}.arm-muted{color:#646970;margin-left:8px}.arm-kind{display:inline-block;padding:2px 8px;border-radius:999px;background:#e9eef6}.arm-kind-accessory{background:#f3e8ff}.arm-modal[hidden]{display:none}.arm-modal{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:100000;display:flex;align-items:center;justify-content:center}.arm-modal-card{background:#fff;width:min(560px,92vw);padding:24px;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.25);position:relative}.arm-modal-close{position:absolute;right:12px;top:8px;border:0;background:transparent;font-size:28px;cursor:pointer}.arm-modal-card label{display:block;font-weight:600;margin-top:14px}.arm-modal-card input,.arm-modal-card select{width:100%;max-width:100%;margin-top:4px}.arm-response{min-height:22px}.arm-response.error{color:#b32d2e}.arm-response.success{color:#008a20}

.arm-readonly-resource{margin-top:4px;padding:8px 10px;background:#f6f7f7;border:1px solid #dcdcde;border-radius:4px;color:#1d2327}

#arm-line-price{font-size:16px}
.arm-current-price{margin-top:4px;margin-bottom:6px;color:#50575e}


.arm-panel{background:#fff;border:1px solid #dcdcde;padding:18px 20px;max-width:1180px}
.arm-panel h2{margin-top:24px;border-bottom:1px solid #f0f0f1;padding-bottom:8px}
.arm-panel h2:first-child{margin-top:0}
.arm-grid{display:grid;gap:14px;margin:10px 0 14px}
.arm-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.arm-grid-4{grid-template-columns:2fr 1fr 1fr 1fr}
.arm-grid label{font-weight:600;color:#1d2327}
.arm-grid input,.arm-grid select{display:block;width:100%;margin-top:5px;font-weight:400}
.arm-booking-line{border:1px solid #dcdcde;background:#fbfbfb;padding:12px;margin:10px 0;position:relative}
.arm-main-line{background:#fff}
.arm-remove-accessory{position:absolute;right:12px;top:8px;color:#b32d2e}
@media (max-width: 960px){.arm-grid-3,.arm-grid-4{grid-template-columns:1fr}}
.arm-price-row{align-items:end}
.arm-help-box{background:#f6f7f7;border:1px solid #dcdcde;border-radius:4px;padding:9px 10px;color:#50575e;line-height:1.35}
.arm-grid input[readonly], .arm-modal-card input[readonly]{background:#f6f7f7;color:#50575e}
#arm-add-accessory[disabled]{opacity:.55;cursor:not-allowed}

.arm-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.arm-billing-grid label{min-height:68px}
.arm-vehicle-line{background:#fff;border-left:4px solid #2271b1;padding-top:14px}
.arm-vehicle-line h3{margin:0 0 10px;font-size:16px}
.arm-vehicle-line h4{margin:18px 0 8px}
.arm-remove-vehicle{position:absolute;right:12px;top:12px;color:#b32d2e}
.arm-accessory-line{background:#fff;border-left:4px solid #8c8f94;margin-left:18px}
.arm-line-insurance,.arm-line-total{font-weight:600}
@media (max-width: 960px){.arm-grid-2{grid-template-columns:1fr}.arm-accessory-line{margin-left:0}}


/* V3.2.1 layout refinements */
.arm-new-booking-wrap .arm-panel{max-width:1280px;padding:22px 18px 26px}
.arm-new-booking-wrap .arm-panel h2{font-size:18px;margin-top:28px}
.arm-new-booking-wrap .arm-panel h2:first-child{margin-top:0}
.arm-booking-line{border-radius:0;box-shadow:none}
.arm-vehicle-line{border-left:4px solid #2271b1;padding:14px 14px 16px;background:#fff}
.arm-vehicle-line h3{margin:0 0 12px;font-size:17px}
.arm-vehicle-line h4{margin:18px 0 8px;font-size:16px}
.arm-grid-5{grid-template-columns:1.1fr 1.2fr 1fr 1fr 1fr}
.arm-main-prices,.arm-accessory-prices{grid-template-columns:1fr 1fr 1fr}
.arm-main-row,.arm-accessory-row,.arm-main-prices,.arm-accessory-prices{align-items:end}
.arm-grid label{margin:0;font-weight:600}
.arm-grid label .arm-inline-help{font-weight:400;color:#646970;margin-left:6px}
.arm-grid input,.arm-grid select{height:40px}
.arm-grid input[readonly]{background:#f6f7f7}
.arm-accessory-info{margin-bottom:10px}
.arm-accessory-line{margin-left:18px;margin-top:10px;padding:12px 12px 14px;border-left:4px solid #8c8f94;background:#fff}
.arm-accessory-line .arm-grid-4{grid-template-columns:1.45fr 1fr 1fr 1fr}
.arm-line-insurance,.arm-line-total{font-weight:600}
.arm-remove-vehicle,.arm-remove-accessory{top:12px;right:12px;z-index:2;text-decoration:none}
.arm-add-accessory{margin-top:8px}
@media (max-width: 1200px){
  .arm-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .arm-main-prices,.arm-accessory-prices,.arm-accessory-line .arm-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 782px){
  .arm-grid-5,.arm-main-prices,.arm-accessory-prices,.arm-accessory-line .arm-grid-4{grid-template-columns:1fr}
  .arm-accessory-line{margin-left:0}
}


/* V3.3.2 frontend operator booking */
.arm-operator-booking-wrap{max-width:1280px;margin:0 auto;padding:20px 10px}
.arm-operator-booking-wrap .arm-panel{max-width:100%;box-sizing:border-box;background:#fff}
.arm-frontend-title{font-size:26px;line-height:1.2;margin:0 0 18px}
.arm-frontend-message{max-width:760px;margin:30px auto;padding:18px 20px;border:1px solid #dcdcde;background:#fff;border-radius:4px}
.arm-operator-booking-wrap .button,.arm-operator-booking-wrap button{cursor:pointer}
body:not(.wp-admin) .arm-operator-booking-wrap .button{display:inline-block;border:1px solid #2271b1;background:#f6f7f7;color:#2271b1;border-radius:3px;padding:6px 12px;text-decoration:none;line-height:1.4}
body:not(.wp-admin) .arm-operator-booking-wrap .button-primary{background:#2271b1;color:#fff}
body:not(.wp-admin) .arm-operator-booking-wrap input,
body:not(.wp-admin) .arm-operator-booking-wrap select,
body:not(.wp-admin) .arm-operator-booking-wrap textarea{box-sizing:border-box;max-width:100%}


/* V3.3.3 select visibility and operator form controls */
.arm-wrap select,
.arm-operator-booking-wrap select,
.arm-new-booking-wrap select,
body:not(.wp-admin) .arm-operator-booking-wrap select{
  color:#1d2327!important;
  -webkit-text-fill-color:#1d2327!important;
  background-color:#fff!important;
  background-image:none!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:none!important;
  appearance:auto!important;
  -webkit-appearance:menulist!important;
}
.arm-wrap select option,
.arm-operator-booking-wrap select option,
.arm-new-booking-wrap select option{
  color:#1d2327!important;
  background:#fff!important;
  -webkit-text-fill-color:#1d2327!important;
}
.arm-wrap select:disabled,
.arm-operator-booking-wrap select:disabled,
.arm-new-booking-wrap select:disabled{
  color:#646970!important;
  -webkit-text-fill-color:#646970!important;
  background-color:#f6f7f7!important;
}


.arm-tools-box{margin:12px 0 16px;padding:12px;background:#f6f7f7;border:1px solid #dcdcde}
.arm-tools-box form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.arm-tools-box .description{margin:0;color:#646970}


/* V3.4.4 hard fix: visible selected values in ARM selects */
.arm-wrap select,
.arm-wrap .arm-panel select,
.arm-new-booking-wrap select,
.arm-operator-booking-wrap select,
body:not(.wp-admin) .arm-operator-booking-wrap select,
body:not(.wp-admin) .arm-operator-booking-wrap .arm-panel select{
  display:block!important;
  width:100%!important;
  min-height:40px!important;
  height:40px!important;
  padding:0 32px 0 10px!important;
  margin-top:5px!important;
  border:1px solid #8c8f94!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  background-color:#fff!important;
  color:#1d2327!important;
  -webkit-text-fill-color:#1d2327!important;
  opacity:1!important;
  visibility:visible!important;
  font-size:14px!important;
  font-weight:400!important;
  font-family:inherit!important;
  line-height:38px!important;
  text-indent:0!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  text-shadow:none!important;
  direction:ltr!important;
  filter:none!important;
  transform:none!important;
  clip:auto!important;
  overflow:visible!important;
  white-space:normal!important;
  appearance:auto!important;
  -webkit-appearance:menulist!important;
  -moz-appearance:auto!important;
}
.arm-wrap select option,
.arm-wrap .arm-panel select option,
.arm-new-booking-wrap select option,
.arm-operator-booking-wrap select option,
body:not(.wp-admin) .arm-operator-booking-wrap select option{
  color:#1d2327!important;
  -webkit-text-fill-color:#1d2327!important;
  background-color:#fff!important;
  font-size:14px!important;
  font-weight:400!important;
  text-indent:0!important;
}
.arm-wrap select:disabled,
.arm-wrap .arm-panel select:disabled,
.arm-new-booking-wrap select:disabled,
.arm-operator-booking-wrap select:disabled,
body:not(.wp-admin) .arm-operator-booking-wrap select:disabled{
  color:#646970!important;
  -webkit-text-fill-color:#646970!important;
  background-color:#f6f7f7!important;
  opacity:1!important;
}


/* V3.4.5 select padding fix: selected values were hidden by inherited vertical padding */
.arm-wrap select,
.arm-wrap .arm-panel select,
.arm-new-booking-wrap select,
.arm-operator-booking-wrap select,
body:not(.wp-admin) .arm-operator-booking-wrap select,
body:not(.wp-admin) .arm-operator-booking-wrap .arm-panel select{
  padding-top:0!important;
  padding-bottom:0!important;
  padding-left:8px!important;
  padding-right:28px!important;
  line-height:38px!important;
  text-indent:0!important;
}


/* V3.4.6 definitive select/input normalization for ARM forms */
.arm-wrap select,
.arm-wrap .arm-panel select,
.arm-new-booking-wrap select,
.arm-new-booking-wrap .arm-panel select,
.arm-operator-booking-wrap select,
.arm-operator-booking-wrap .arm-panel select,
body:not(.wp-admin) .arm-operator-booking-wrap select,
body:not(.wp-admin) .arm-operator-booking-wrap .arm-panel select{
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  line-height:40px!important;
  padding:0!important;
  text-indent:0!important;
  font-size:14px!important;
  font-weight:400!important;
  color:#1d2327!important;
  -webkit-text-fill-color:#1d2327!important;
  background-color:#fff!important;
  border:1px solid #8c8f94!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  vertical-align:middle!important;
}
.arm-wrap input[type="text"],
.arm-wrap input[type="email"],
.arm-wrap input[type="date"],
.arm-wrap input[type="number"],
.arm-wrap .arm-panel input[type="text"],
.arm-wrap .arm-panel input[type="email"],
.arm-wrap .arm-panel input[type="date"],
.arm-wrap .arm-panel input[type="number"],
.arm-new-booking-wrap input[type="text"],
.arm-new-booking-wrap input[type="email"],
.arm-new-booking-wrap input[type="date"],
.arm-new-booking-wrap input[type="number"],
.arm-operator-booking-wrap input[type="text"],
.arm-operator-booking-wrap input[type="email"],
.arm-operator-booking-wrap input[type="date"],
.arm-operator-booking-wrap input[type="number"],
body:not(.wp-admin) .arm-operator-booking-wrap input[type="text"],
body:not(.wp-admin) .arm-operator-booking-wrap input[type="email"],
body:not(.wp-admin) .arm-operator-booking-wrap input[type="date"],
body:not(.wp-admin) .arm-operator-booking-wrap input[type="number"]{
  height:40px!important;
  min-height:40px!important;
  line-height:40px!important;
  box-sizing:border-box!important;
  vertical-align:middle!important;
}
.arm-wrap .arm-grid select,
.arm-wrap .arm-billing-grid select,
.arm-wrap .arm-main-row select,
.arm-wrap .arm-accessory-row select,
.arm-new-booking-wrap .arm-grid select,
.arm-operator-booking-wrap .arm-grid select{
  padding:0!important;
}
.arm-wrap select option,
.arm-new-booking-wrap select option,
.arm-operator-booking-wrap select option{
  padding:0!important;
  color:#1d2327!important;
  background:#fff!important;
}

/* V3.5.0 backend-first period range picker */
.arm-wrap .arm-main-row{
  grid-template-columns:1.05fr 1.2fr 1.55fr .8fr!important;
}
.arm-wrap .arm-accessory-row{
  grid-template-columns:1.25fr 1.55fr .8fr!important;
}
.arm-wrap .arm-date-range,
.arm-new-booking-wrap .arm-date-range,
.arm-operator-booking-wrap .arm-date-range{
  cursor:pointer!important;
  background:#fff!important;
  color:#1d2327!important;
  -webkit-text-fill-color:#1d2327!important;
  padding:0 12px!important;
}
.arm-wrap .arm-range-label input[type="hidden"]{display:none!important}
.ui-datepicker.arm-datepicker,
#ui-datepicker-div.arm-datepicker{
  z-index:100001!important;
  background:#fff;
  border:1px solid #c3c4c7;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  padding:10px;
  width:auto!important;
}
#ui-datepicker-div.arm-datepicker .ui-datepicker-group{float:left;margin:0 8px}
#ui-datepicker-div.arm-datepicker .ui-datepicker-header{background:#f6f7f7;border:0;padding:6px 8px;font-weight:600;text-align:center}
#ui-datepicker-div.arm-datepicker .ui-datepicker-title{font-size:13px;text-transform:lowercase}
#ui-datepicker-div.arm-datepicker table{border-collapse:collapse;margin:6px 0 0;width:220px}
#ui-datepicker-div.arm-datepicker th{padding:5px 3px;font-size:12px;color:#50575e;text-align:center}
#ui-datepicker-div.arm-datepicker td{padding:0;border:0;text-align:center}
#ui-datepicker-div.arm-datepicker td a,
#ui-datepicker-div.arm-datepicker td span{display:block;padding:7px 8px;text-decoration:none;border:0;color:#1d2327;background:#fff}
#ui-datepicker-div.arm-datepicker td a:hover{background:#e5f0fa;color:#0a4b78}
#ui-datepicker-div.arm-datepicker td.arm-date-in-range a{background:#2271b1!important;color:#fff!important}
#ui-datepicker-div.arm-datepicker .ui-datepicker-prev,
#ui-datepicker-div.arm-datepicker .ui-datepicker-next{cursor:pointer;color:#2271b1;text-decoration:none;padding:3px 6px}
#ui-datepicker-div.arm-datepicker .ui-datepicker-prev{float:left}
#ui-datepicker-div.arm-datepicker .ui-datepicker-next{float:right}
#ui-datepicker-div.arm-datepicker .ui-datepicker-buttonpane{clear:both;padding-top:8px;text-align:right}
#ui-datepicker-div.arm-datepicker .ui-datepicker-close{margin-left:6px}
@media (max-width: 1200px){
  .arm-wrap .arm-main-row,
  .arm-wrap .arm-accessory-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width: 782px){
  .arm-wrap .arm-main-row,
  .arm-wrap .arm-accessory-row{grid-template-columns:1fr!important}
}

/* V3.5.2 availability-aware range picker */
.arm-datepicker .ui-datepicker-calendar td.arm-date-unavailable a,
.arm-datepicker .ui-datepicker-calendar td.arm-date-unavailable span{
  background:#f6d7d7!important;
  border-color:#d63638!important;
  color:#8a1f11!important;
  text-decoration:line-through;
  cursor:not-allowed!important;
}
.arm-datepicker .ui-datepicker-calendar td.arm-date-available a{
  position:relative;
}
.arm-datepicker .ui-datepicker-calendar td.arm-date-available a::after{
  content:'';
  display:block;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#00a32a;
  margin:2px auto 0;
}
.arm-datepicker .ui-datepicker-calendar td.arm-date-in-range a,
.arm-datepicker .ui-datepicker-calendar td.arm-date-in-range span{
  background:#2271b1!important;
  border-color:#135e96!important;
  color:#fff!important;
}
.arm-datepicker .ui-datepicker-calendar td.arm-date-in-range a::after{
  background:#fff;
}


/* V3.5.3 range picker availability/navigation fixes */
#ui-datepicker-div.arm-datepicker .ui-datepicker-prev,
#ui-datepicker-div.arm-datepicker .ui-datepicker-next{
  display:block!important;
  width:30px!important;
  height:30px!important;
  line-height:28px!important;
  text-align:center!important;
  top:4px!important;
  color:#1d2327!important;
  background:#fff!important;
  border:1px solid #c3c4c7!important;
  border-radius:4px!important;
  font-size:22px!important;
  font-weight:700!important;
  opacity:1!important;
}
#ui-datepicker-div.arm-datepicker .ui-datepicker-prev span,
#ui-datepicker-div.arm-datepicker .ui-datepicker-next span{
  display:block!important;
  position:static!important;
  margin:0!important;
  width:auto!important;
  height:auto!important;
  overflow:visible!important;
  text-indent:0!important;
  background:none!important;
}
#ui-datepicker-div.arm-datepicker .ui-datepicker-prev{left:6px!important;float:none!important;position:absolute!important}
#ui-datepicker-div.arm-datepicker .ui-datepicker-next{right:6px!important;float:none!important;position:absolute!important}
#ui-datepicker-div.arm-datepicker .ui-datepicker-header{position:relative!important;padding:8px 42px!important}
.arm-datepicker .ui-datepicker-calendar td.arm-date-available a::after{display:none!important;content:none!important}
.arm-datepicker .ui-datepicker-calendar td.arm-date-booked a,
.arm-datepicker .ui-datepicker-calendar td.arm-date-booked span{
  background:#fff4e5!important;
  color:#8a4b00!important;
}
.arm-datepicker .ui-datepicker-calendar td.arm-date-booked a::after{
  content:'';
  display:block;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#d63638;
  margin:2px auto 0;
}

.arm-delete-order{margin-left:8px!important;color:#b32d2e!important;border-color:#d63638!important}
.arm-delete-order:hover{background:#fcf0f1!important;border-color:#b32d2e!important;color:#8a2424!important}

/* V3.6.0 component prices and delivery fields */
.arm-delivery-box{margin:12px 0 16px;padding:12px;background:#f6f7f7;border:1px solid #dcdcde}
.arm-delivery-box h4,.arm-edit-delivery-block h3{margin:0 0 10px}
.arm-delivery-site-fields{display:none}
.arm-edit-price-grid{margin-top:10px}
.arm-modal-card{width:min(780px,94vw)}
.arm-edit-delivery-block{margin-top:14px;padding:12px;background:#f6f7f7;border:1px solid #dcdcde}
.arm-edit-delivery-block label{margin-top:10px}
.ui-autocomplete{z-index:100002!important;background:#fff;border:1px solid #c3c4c7;max-height:260px;overflow:auto;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.ui-autocomplete .ui-menu-item-wrapper{padding:7px 10px;cursor:pointer}
.ui-autocomplete .ui-state-active{background:#2271b1;color:#fff;border:0;margin:0}
@media (max-width: 782px){.arm-main-prices,.arm-edit-price-grid{grid-template-columns:1fr!important}}
