/* VL_UI_FIXES_20261112 */
/* Sort box: one line, text centred vertically, arrow at the right (it wrapped and made the box 62 px tall). */
.products-sort-order .select-title {
  display: flex !important; align-items: center; justify-content: space-between; gap: 8px;
  height: auto; min-height: 42px; padding: 8px 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.products-sort-order .select-title .material-icons { float: none !important; flex-shrink: 0; margin: 0; }

/* Product cards: the photo box follows the photo instead of a fixed 230/170 px, so no empty band under it. */
#main .product-miniature .thumbnail-top { height: auto !important; }
#main .product-miniature .product-thumbnail { height: auto; }
#main .product-miniature .product-thumbnail img { display: block; width: 100%; height: auto; object-fit: contain; }
#main .product-miniature .product-description { min-height: 0; padding-top: 8px; }

/* Empty cart: only the message and the way back, no zero totals and faded checkout button. */
body#cart .cart-grid:has(.no-items) .cart-grid-right { display: none; }
body#cart .cart-grid:has(.no-items) .cart-grid-body { width: 100%; max-width: 100%; flex: 0 0 100%; }

/* Sign-in page: the form in a readable column in the middle instead of the left third. */
body#authentication #content.page-authentication, body#authentication #main { max-width: 520px; margin-left: auto; margin-right: auto; }
body#authentication .login-form .col-md-6, body#authentication .login-form .col-md-7,
body#authentication .login-form .col-md-8 { width: 100%; max-width: 100%; flex: 0 0 100%; }

/* Information pages: left aligned and a comfortable line length. */
body#cms #content.page-cms { max-width: 880px; }
body#cms #content.page-cms p, body#cms #content.page-cms li, body#cms #content.page-cms div { text-align: left !important; }

@media (max-width: 767px) {
  /* Breadcrumb: one short line on phones; the page title already says where you are. */
  #wrapper .breadcrumb li:last-child { display: none; }
  #wrapper .breadcrumb li:nth-last-child(2)::after { display: none; }
  #wrapper .breadcrumb li { font-size: 14px; }
  /* Cart count level with the cart icon. */
  #header #_mobile_cart .header { display: flex; align-items: center; gap: 2px; }
}
