/* Final shared control refinements. Native selects keep the site's pill shape. */
body.modern-platform #shoppingVehicleContext {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  margin: 12px 0 6px;
}
body.modern-platform #shoppingVehicleContext > label {
  margin: 0;
  color: #526d81;
  font: 600 12px/1.35 'DM Sans', sans-serif;
}
body.modern-platform #shoppingVehicleContext > select#shoppingVehicle {
  -webkit-appearance: none !important;
  appearance: none !important;
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 38px 0 16px !important;
  border: 1px solid #bedbea !important;
  border-radius: 999px !important;
  background-color: #fff !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='m2 2 5 5 5-5' fill='none' stroke='%23456880' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
  box-shadow: inset 0 1px 1px #173b5405 !important;
  color: #294f68 !important;
  font: 400 14px/1.4 'DM Sans', sans-serif !important;
  text-overflow: ellipsis;
  cursor: pointer;
}
body.modern-platform #shoppingVehicleContext > [data-tools-garage] {
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  font-size: 12px !important;
  white-space: nowrap;
}
@media (max-width: 760px) {
  body.modern-platform #shoppingVehicleContext {
    grid-template-columns: minmax(0, 1fr) auto;
    margin-top: 0;
    gap: 6px;
  }
  body.modern-platform #shoppingVehicleContext > label { display: none; }
  body.modern-platform #shoppingVehicleContext > select#shoppingVehicle {
    font-size: 16px !important;
    padding-left: 14px !important;
  }
}

/* Plain corner crosses. The invisible 44px target remains easy to tap. */
html body:is(.modern-platform, .modern-crm) button:is(.drawer-close, .modal-close, .quote-product-image-close, .admin-calculator-close, .plain-window-close):not(.drawer-scrim):not(.modal-backdrop) {
  display: inline-grid !important;
  place-items: center !important;
  flex: 0 0 44px !important;
  box-sizing: border-box !important;
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  transform: none !important;
  color: #526f82 !important;
  font: 400 28px/1 'DM Sans', sans-serif !important;
  cursor: pointer;
  transition: color .15s ease !important;
}
html body:is(.modern-platform, .modern-crm) button:is(.drawer-close, .modal-close, .quote-product-image-close, .admin-calculator-close, .plain-window-close):not(.drawer-scrim):not(.modal-backdrop):is(:hover, :focus, :focus-visible, :active) {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
  text-shadow: none !important;
  filter: none !important;
  transform: none !important;
  color: #0879be !important;
}
html body:is(.modern-platform, .modern-crm) button:is(.drawer-close, .modal-close, .quote-product-image-close, .admin-calculator-close, .plain-window-close):focus-visible {
  text-decoration: underline !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 5px !important;
}
body.modern-crm .news-admin-editor { position: relative; }
body.modern-crm .news-admin-editor > h3 { padding-right: 44px; }
body.modern-crm .news-admin-editor > button[data-cancel].plain-window-close {
  position: absolute;
  top: 8px;
  right: 8px;
  margin: 0 !important;
}
