/* AlexHealth V55.4-UI2 — stability / public navigation / authoritative facility GPS layer.
   Additive only: preserves existing identity and data; no destructive removals. */

/* ===== Fixed four-button dock: no sliding labels over page content ===== */
#v553-quick-dock{
  right:12px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;
  width:50px!important;max-height:none!important;overflow:visible!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  padding:0!important;background:transparent!important;backdrop-filter:none!important;box-shadow:none!important;
}
#v553-quick-dock .v553-q{
  width:50px!important;min-width:50px!important;max-width:50px!important;height:48px!important;
  padding:0!important;border-radius:15px!important;justify-content:center!important;transform:none!important;transition:filter .18s ease,box-shadow .18s ease!important;
}
#v553-quick-dock .v553-q span{display:none!important;opacity:0!important;visibility:hidden!important}
#v553-quick-dock .v553-q i{width:auto!important;min-width:0!important}
#v553-quick-dock .v553-q:hover{width:50px!important;transform:none!important;filter:brightness(1.06)!important;box-shadow:0 12px 26px rgba(13,43,94,.26)!important}
/* Tracking lives inside booking; requests live in essential services; contact already has its own chat/contact entry. */
#v553-quick-dock .track,#v553-quick-dock .request,#v553-quick-dock .contact{display:none!important}

/* ===== Native pages must start directly under header, never after a blank viewport ===== */
#booking-page,#support-page,#surveys-page,#complaints-page,#requests-page,#facility-details-page{
  padding-top:12px!important;margin-top:0!important;align-self:stretch!important;width:100%!important;min-height:0!important;
}
#booking-page>.v55-public-shell,#support-page>.v55-public-shell,#surveys-page>.v55-public-shell,
#complaints-page>.v55-public-shell,#requests-page>.v55-public-shell,#facility-details-page>.v55-public-shell{
  margin-top:0!important;padding-top:0!important;
}
#support-page .v55-page-hero,#booking-page .v55-page-hero,#surveys-page .v55-page-hero{margin-top:0!important}
.v552-book-loading{margin:8px 0 14px!important;text-align:center!important}
html{scroll-padding-top:96px}

/* ===== Restore original rich media center; custom replacement must not cover it ===== */
#media-center-page>#v552-media{display:none!important}
#media-center-page>.container{display:block!important}
#media-center-page #news-grid-container{min-height:120px}
#media-center-page .news-card-item{cursor:pointer}

/* ===== Official regions / hospitals / facility pages ===== */
.v556-region-card,.v556-hospital-card,.v556-unit-card{position:relative}
.v556-link-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}
.v556-page-link,.v556-map-link{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none!important;
  min-height:38px;padding:8px 13px;border-radius:11px;font-size:12px;font-weight:900;transition:.18s ease;
}
.v556-page-link{background:linear-gradient(135deg,#0d2b5e,#1a5b9e);color:#fff!important;box-shadow:0 7px 16px rgba(13,43,94,.14)}
.v556-page-link:hover{transform:translateY(-1px);box-shadow:0 11px 20px rgba(13,43,94,.20)}
.v556-map-link{background:#fff8dc;color:#80600a!important;border:1px solid #e7cf7a}
.v556-map-link:hover{background:#f7e7a8}
.v556-official-badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 8px;background:#edf5ff;color:#1c4c83;font-size:10px;font-weight:900;border:1px solid #d7e6f6}
#regions-grid-container .v556-region-card{height:100%;display:flex;flex-direction:column}
#regions-grid-container .v556-region-card .v556-link-row{margin-top:auto}
#hospitals-grid-container .v556-hospital-card{height:100%}
#hospitals-grid-container .v556-hospital-card .v556-hospital-body{padding:18px;display:flex;flex-direction:column;min-height:190px}
#hospitals-grid-container .v556-hospital-card .v556-link-row{margin-top:auto}
.v556-map-button-region{margin-top:8px;display:inline-flex!important;width:max-content!important}
#region-units-container .v556-unit-card{background:rgba(255,255,255,.96);border:1px solid #dce6ef;border-radius:16px;padding:15px;box-shadow:0 8px 22px rgba(13,43,94,.055)}
#region-units-container .v556-unit-card:hover{border-color:rgba(212,175,55,.5);box-shadow:0 14px 30px rgba(13,43,94,.10)}
#single-facility-page .v556-meta-value{word-break:break-word}
#facility-page-services .v556-service-card{border:1px solid #dce6ef!important;border-top:3px solid #1a5b9e!important}
#facility-page-services .v556-service-card.bookable{border-top-color:#d4af37!important}
#facility-page-services .v556-service-card .v556-book-service{margin-top:10px;width:100%;border:0;border-radius:10px;padding:8px 10px;background:#0d2b5e;color:#fff;font-weight:900;cursor:pointer}
#facility-page-services .v556-service-state{display:inline-flex;margin-top:6px;padding:3px 7px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:9px;font-weight:900}
#facility-page-services .v556-service-state.on{background:#dcfce7;color:#166534}

/* Essential services remain six cards; no duplicate contact card. */
#v543-home-actions .v543-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

@media(max-width:1100px){#v543-home-actions .v543-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){
  #v553-quick-dock{
    right:50%!important;top:auto!important;bottom:8px!important;transform:translateX(50%)!important;
    width:auto!important;height:56px!important;flex-direction:row!important;gap:7px!important;padding:6px 8px!important;
    border-radius:18px!important;background:rgba(8,32,72,.88)!important;backdrop-filter:blur(12px)!important;
    box-shadow:0 10px 30px rgba(0,0,0,.22)!important;
  }
  #v553-quick-dock .v553-q{width:43px!important;min-width:43px!important;max-width:43px!important;height:43px!important;border-radius:13px!important}
  #v543-home-actions .v543-action-grid{grid-template-columns:1fr!important}
  #booking-page,#support-page,#surveys-page,#complaints-page,#requests-page{padding-top:8px!important;padding-bottom:76px!important}
  html{scroll-padding-top:74px}
  .v556-link-row{gap:7px}.v556-page-link,.v556-map-link{flex:1;min-width:120px}
}
