/* Shared visual treatment; original native selects and locale handlers are retained. */
body .mybus-language-modern-v296 {
  position:relative!important;display:grid!important;grid-template-columns:32px 64px minmax(0,1fr)!important;
  align-items:center!important;gap:8px!important;width:246px!important;max-width:100%!important;min-width:0!important;
  flex:0 1 246px!important;min-height:48px!important;padding:6px 10px!important;box-sizing:border-box;
  border:1px solid #d4e3dc!important;border-radius:14px!important;background:linear-gradient(145deg,#fff,#f5faf7)!important;
  box-shadow:0 3px 12px #062e2310!important;color:#173f31!important;
  transition:border-color .16s ease,box-shadow .16s ease;
}
body .mybus-language-modern-v296::before {
  content:"";display:block;width:32px;height:32px;border-radius:10px;background-color:#e4f2eb;
  background-position:center;background-repeat:no-repeat;background-size:20px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23087858' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c5 5 5 13 0 18-5-5-5-13 0-18M5 7.5h14M5 16.5h14'/%3E%3C/svg%3E");
}
body .mybus-language-modern-v296::after {
  content:"";position:absolute;right:14px;top:calc(50% - 4px);width:6px;height:6px;
  border-right:1.8px solid #497663;border-bottom:1.8px solid #497663;transform:rotate(45deg);pointer-events:none;
}
body .mybus-language-modern-v296:hover {border-color:#9ac7b3!important;box-shadow:0 4px 15px #062e2318!important}
body .mybus-language-modern-v296:focus-within {border-color:#12865e!important;box-shadow:0 0 0 3px #46b98740!important}
body .mybus-language-modern-v296 .mybus-language-icon {display:none!important}
body .mybus-language-modern-v296 .mybus-language-caption {
  display:block!important;min-width:0;margin:0!important;padding:0!important;color:#526e61!important;
  font:600 10px/1.3 "Segoe UI",Arial,sans-serif!important;letter-spacing:.02em;white-space:normal!important;
}
body .mybus-language-modern-v296 .mybus-language-caption b {font:inherit;color:inherit}
body .mybus-language-modern-v296 .mybus-language-caption small {display:none!important}
body .mybus-language-modern-v296 select {
  appearance:none!important;-webkit-appearance:none!important;display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
  height:34px!important;min-height:34px!important;margin:0!important;padding:5px 18px 5px 9px!important;
  border:0!important;border-left:1px solid #dce8e1!important;border-radius:0!important;outline:0;
  background:transparent!important;box-shadow:none!important;color:#153e2d!important;
  font:650 14px/1.25 "Segoe UI",Arial,sans-serif!important;cursor:pointer;text-overflow:ellipsis;
}
body .mybus-language-modern-v296 select option {background:#fff;color:#173f31;font-weight:500}
body .mybus-language-modern-v296 select:disabled {opacity:.55;cursor:not-allowed}
body .mybus-language-modern-v296.mybus-language-login-v296 {width:100%!important;max-width:330px!important;margin:18px 0!important;flex:0 0 auto!important;height:48px!important;align-self:flex-start}
@media (max-width:1100px) {
  body .mybus-language-modern-v296 {width:216px!important;flex-basis:216px!important;grid-template-columns:30px 48px minmax(0,1fr)!important;gap:6px!important}
}
@media (max-width:620px) {
  body .mybus-language-modern-v296 {width:144px!important;flex:0 1 144px!important;grid-template-columns:28px minmax(0,1fr)!important;gap:6px!important;padding:6px 8px!important;border-radius:12px!important}
  body .mybus-language-modern-v296::before {width:28px;height:30px;background-size:18px}
  body .mybus-language-modern-v296 .mybus-language-caption {display:none!important}
  body .mybus-language-modern-v296 select {font-size:13px!important;padding-left:5px!important;border-left:0!important}
  body .mybus-language-modern-v296::after {right:12px}
}
@media (prefers-reduced-motion:reduce) {body .mybus-language-modern-v296 {transition:none}}
@media (forced-colors:active) {
  body .mybus-language-modern-v296 select {appearance:auto!important}
  body .mybus-language-modern-v296::after {display:none}
}
/* The central header visually hides its caption at tablet widths.
   Keep the select in the remaining track instead of the 48px caption track. */
@media (min-width:621px) and (max-width:820px) {
  body.central-management .cm-header .mybus-language-modern-v296 {
    grid-template-columns:30px minmax(0,1fr)!important;
  }
}
/* Reserve enough room for native language names in the tablet header. */
@media (min-width:621px) and (max-width:1100px) {
  body .mybus-language-modern-v296 {
    width:190px!important;flex:0 0 190px!important;
    grid-template-columns:30px minmax(0,1fr)!important;
  }
  body .mybus-language-modern-v296 .mybus-language-caption {display:none!important}
}
/* Localized filter labels must fit their existing grid columns. */
.central-management .cm-personnel-filters label,
.central-management .cm-fleet-filters label {
  min-width:0;overflow-wrap:anywhere;white-space:normal;
}
.central-management .cm-personnel-filters label > span,
.central-management .cm-fleet-filters label > span {
  min-width:0;white-space:normal;overflow-wrap:anywhere;
}
.central-management .cm-personnel-filters input,
.central-management .cm-personnel-filters select,
.central-management .cm-fleet-filters input,
.central-management .cm-fleet-filters select {
  min-width:0;max-width:100%;width:100%;box-sizing:border-box;
}
/* The selected language must remain legible beside long translated page titles. */
body.central-management .cm-header .mybus-language-modern-v296 {flex-shrink:0!important}
/* Keep translated page titles fully readable in the existing responsive header. */
@media (max-width:820px) {
  body.central-management .cm-header h1 {
    white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;
  }
}
/* Long localized tracking labels and example numbers must remain readable on phones. */
@media (max-width:620px) {
  #cargoView .cargo-search {flex-direction:column;align-items:stretch}
  #cargoView .cargo-search > label,
  #cargoView .cargo-search > button {width:100%;min-width:0;box-sizing:border-box}
  #cargoView .cargo-search input {width:100%;min-width:0;box-sizing:border-box}
  #cargoView .cargo-search > button {white-space:normal;overflow-wrap:anywhere}
}
/* Keep translated account-dialog labels and controls inside the phone viewport. */
@media (max-width:620px) {
  #customerAuthModal {grid-template-columns:minmax(0,1fr)}
  #customerAuthModal .customer-auth-card {width:100%;max-width:100%;min-width:0;box-sizing:border-box;justify-self:center}
  #customerAuthModal .customer-auth-form input,
  #customerAuthModal .customer-auth-form select {min-width:0;max-width:100%;box-sizing:border-box}
}
/* Keep translated ticket-search headers readable in the existing scroll area. */
body.mybus-customer-reference .customer-faq .faq-list summary {
  padding-inline-end: 3rem;
}
#centralFleetDetail .cm-fleet-commands-v146 {
  min-width: 0;
}
@media (min-width: 981px) {
  #centralFleetDetail .cm-fleet-commands-v146 form {
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  }
  #centralFleetDetail .cm-fleet-commands-v146 form button {
    grid-column: 1 / -1;
    white-space: normal;
  }
}
#modalBody #tkResults .table-wrap th {
  overflow-wrap: normal;
  word-break: normal;
}
#modalBody #tkResults .table-wrap th:nth-child(3),
#modalBody #tkResults .table-wrap td:nth-child(3) {
  min-width: 10rem;
}
@media (max-width: 620px) {
  #centralFleetDetailTitle,
  #centralPersonnelDetailTitle,
  #centralTripDetailTitle,
  #centralCargoDetailTitle {
    clear: both;
    padding-top: 0.5rem;
  }
  #modalBody .toolbar:has(#tkQuery) {
    flex-wrap: wrap;
    overflow-x: visible;
  }
  #modalBody #tkQuery {
    flex: 1 1 100%;
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
  }
  #modalBody .toolbar:has(#tkQuery) button {
    flex-shrink: 0;
    white-space: normal;
  }
}
/* Keep the locale formatter's own month capitalization. */
body.mybus-operations-reference .ops-calendar-head-v291 strong { text-transform: none; }
/* Keep translated directory filters and their results reachable on narrow screens. */
@media (max-width: 720px) {
  #modal .all-trips-dialog-v281 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
  }
  .all-trips-dialog-v281 #modalBody {
    overflow-y: auto;
    overflow-x: hidden;
    min-width: 0;
  }
  .all-trips-directory-v281 {
    height: auto;
    min-width: 0;
    grid-template-rows: auto auto auto minmax(240px, auto);
  }
  .all-trips-filter-actions-v281 button {
    white-space: normal;
    overflow-wrap: anywhere;
  }
}
@media (max-width: 720px) {
  .all-trips-empty-v281 > span {
    display: block;
    position: sticky;
    left: 10px;
    width: calc(100vw - 65px);
    max-width: 100%;
    white-space: normal;
    overflow-wrap: break-word;
  }
}

