/* VetXtend (VX) overrides for colours hard-coded in css/site.css, plus logo sizing.
   Loaded only by the VX _Host, after site.css and responsive.css. */

.btn.btn-hollow { color: #006380; border-color: #006380; }      /* site.css:454-458 */
span.dark-blue { color: #1B2D61; }                               /* site.css:616 */
span.light-blue { color: #006FB0; }                              /* site.css:620 */
.carousel-indicators li { color: #1B2D61; }                      /* site.css:4515 */
.air-datepicker { --adp-font-family: 'Kanit', 'Segoe UI', sans-serif; }   /* site.css:6078 */
.navbar-brand img { width: auto; height: 2.25rem; max-width: 12rem; }     /* site.css:1016 sets width:4rem for the stacked PawsApp mark */

/* VX footer: "PawsApp powered by VetXtend" on one centred row. site.css:1137 makes .footer
   position:sticky; bottom:0; z-index:999, which floats it over page content and over the fixed
   mobile bottom menu (mobileBottomMenu.css, z-index 9). VX puts it back in normal flow. */
.footer.vx-footer {
    position: relative;
    bottom: auto;
    z-index: auto;
    padding: 2rem 0;
    text-align: center;
}
.vx-footer-brand { margin: 0; font-family: 'Kanit', 'Segoe UI', sans-serif; font-weight: 400; color: #fff; }
.vx-footer-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .5rem 1rem;
}
.vx-footer-logo { height: 2rem; width: auto; max-width: 100%; display: block; }
.vx-footer-logo-vetxtend { height: 1.9rem; }
.vx-footer-logo-pawsapp { height: 2.2rem; }
/* Paw mark and name stay together when the row wraps at narrow widths. */
.vx-footer-pawsapp { display: inline-flex; align-items: center; gap: .45rem; }
.vx-footer-name { font-size: 1.3rem; font-weight: 600; line-height: 1; letter-spacing: normal; color: #fff; }
.vx-footer-powered { font-size: 1.1rem; font-weight: 300; line-height: 1; letter-spacing: .02em; opacity: .85; }
.vx-footer-sr {
    position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
/* The fixed bottom menu (6rem tall) only renders on mobile detail pages: keep the footer clear of it. */
body:has(.tab-nav-container) .footer.vx-footer { padding-bottom: calc(6rem + 1.5rem); }

/* VX: pin the footer to the bottom of the viewport on short pages. site.css:4620 makes .page a flex
   column but gives it no height, so the footer floats under short content. */
.page { min-height: 100vh; min-height: 100dvh; }
.page > main { display: flex; flex-direction: column; }
.page > main > article.content:has(> .vx-footer) { margin-top: auto; }

/* VX: entered values in inputs and selects use the label colour. site.css:704 sets #989898, which
   reads the same as an empty field. */
.form-control, .form-select { color: var(--primary-color-label); }
