/* Shared fixed contact controls, present on every device and clinic page. */
body{padding-bottom:calc(101px + env(safe-area-inset-bottom,0px))}
.mobile-contact-bar{
    position:fixed;
    inset:auto calc(24px + env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) auto;
    z-index:30;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:min(360px,calc(100% - 48px));
    box-sizing:border-box;
    margin:0;
    padding:0;
    border:1px solid #dce3ee;
    border-radius:12px;
    overflow:hidden;
    background:linear-gradient(90deg,#173567 50%,#087a35 50%);
    box-shadow:0 4px 20px #17356726;
    font-family:"Noto Sans TC",sans-serif;
}
.mobile-contact-bar>a{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    box-sizing:border-box;
    min-width:0;
    min-height:60px;
    margin:0;
    padding:12px 8px;
    color:#fff;
    font-size:17px;
    font-weight:700;
    line-height:1.4;
    text-decoration:none;
    white-space:nowrap;
    -webkit-tap-highlight-color:transparent;
}
.mobile-contact-phone{background:#173567}
.mobile-contact-line{background:#087a35}
.mobile-contact-bar>a:hover{color:#fff;filter:brightness(1.08)}
.mobile-contact-bar>a:focus-visible{outline:3px solid #fff;outline-offset:-5px;border-radius:0}
.mobile-contact-bar svg{display:block;flex:none;width:22px;height:22px}
@media(max-width:1024px){
  body{padding-bottom:calc(61px + env(safe-area-inset-bottom,0px))}
  .mobile-contact-bar{
    inset:auto 0 0;
    width:100%;
    padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);
    border:0;
    border-top:1px solid #dce3ee;
    border-radius:0;
    box-shadow:0 -3px 12px #1735671a;
  }
}
@media print{.mobile-contact-bar{display:none}body{padding-bottom:0}}
