body{padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
#sharon-contact-dock{box-sizing:border-box;position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:99990;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,1fr);gap:7px;padding:6px;background:#fff;border:1px solid #c5dce4;border-radius:18px;box-shadow:0 5px 24px #071b2c35;width:min(540px,calc(100% - 20px))}
#sharon-contact-dock a,#sharon-contact-dock button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:56px;padding:10px 12px;font:700 15px/1.3 Arial,sans-serif;border:0;border-radius:12px;text-decoration:none;white-space:normal;cursor:pointer;text-align:center}
#sharon-contact-dock .sd-call-copy{display:grid;gap:2px;min-width:0}
#sharon-contact-dock .sd-call-label{font-size:14px;line-height:1.2}
#sharon-contact-dock bdi{direction:ltr;unicode-bidi:isolate;white-space:nowrap;font-size:18px;font-variant-numeric:tabular-nums;line-height:1.25}
#sharon-contact-dock a{background:#086cdd;color:#fff}#sharon-contact-dock button{background:#e5f7f4;color:#075e54}
#sharon-contact-dock svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
#sharon-contact-dock :focus-visible{outline:3px solid #0aa7bb;outline-offset:3px}#sharon-contact-dock a:hover{background:#0654b2}#sharon-contact-dock button:hover{background:#cceee7}
.mobile-call{display:none!important}#sharon-location .sl-toggle{display:none!important}#sharon-location{bottom:90px!important}
#sharon-dock-dialog{box-sizing:border-box;width:min(420px,calc(100vw - 24px));max-height:80dvh;overflow:auto;border:1px solid #c5dce4;border-radius:20px;padding:24px;background:#fff;color:#092c44;font:16px/1.6 Arial,sans-serif}
#sharon-dock-dialog::backdrop{background:#071b2c99}#sharon-dock-dialog h2{font-size:22px;margin:10px 0}
#sharon-dock-dialog button,#sharon-dock-dialog a{font:700 16px/1.4 Arial,sans-serif;min-height:44px;border-radius:12px;cursor:pointer}
#sharon-dock-dialog .sd-close{display:block;margin-inline-start:auto;width:44px;border:0;background:#edf4f8;color:#092c44;font-size:26px}
#sharon-dock-locate,#sharon-dock-send{display:block;width:100%;box-sizing:border-box;text-align:center;padding:13px;border:0;background:#086cdd;color:white;text-decoration:none}
#sharon-dock-copy{display:block;width:100%;box-sizing:border-box;margin-top:10px;padding:12px;border:2px solid #086cdd;background:#fff;color:#075e54}
#sharon-dock-dialog .sd-app-note{font-size:14px;color:#496878;margin:10px 0}
#sharon-dock-dialog .sd-manual{display:block;box-sizing:border-box;width:100%;margin-top:16px;padding:13px;text-align:center;text-decoration:none;background:#e5f7f4;color:#075e54;border:2px solid #75c9bc}#sharon-dock-dialog .sd-manual:hover{background:#cceee7}#sharon-dock-dialog .sd-manual:focus-visible{outline:3px solid #0aa7bb;outline-offset:3px}#sharon-dock-dialog [hidden]{display:none!important}
@media(max-width:380px){#sharon-contact-dock a,#sharon-contact-dock button{padding:9px 8px;font-size:14px;gap:5px}#sharon-contact-dock a>svg{display:none}#sharon-contact-dock bdi{font-size:16px}}
@media(max-height:450px) and (orientation:landscape){#sharon-contact-dock{bottom:6px;padding:4px}#sharon-contact-dock a,#sharon-contact-dock button{padding:7px 12px}}

dialog:not([open]){display:none}dialog[open]{max-height:80dvh;overflow:auto}button,a{touch-action:manipulation}

dialog[data-location-fallback][open]{position:fixed;top:10vh;left:50%;right:auto;transform:translateX(-50%);margin:0;z-index:100001;box-shadow:0 0 0 100vmax #071b2c99}

/* Location fallback stays usable on narrow screens and at increased text size. */
dialog [hidden]{display:none!important}
dialog [data-location-fallback-form]{margin-top:16px}
dialog [data-location-fallback-form] label{display:grid;gap:6px;font:700 16px/1.5 Arial,sans-serif}
dialog [data-location-address]{box-sizing:border-box;width:100%;min-width:0;border:1px solid #7796a4;border-radius:9px;padding:12px;font:400 16px/1.5 Arial,sans-serif;color:#092c44;background:#fff}
dialog .location-help{font-size:14px;line-height:1.6;color:#415d6e}
dialog .location-business-card{display:grid;gap:7px;margin-top:20px;padding:15px;border:1px solid #c5dce4;border-radius:12px;background:#eef7f8;color:#092c44;text-align:right}
dialog .location-business-card>span{font-size:14px}
dialog .location-business-card>div{display:flex;gap:8px 16px;flex-wrap:wrap}
dialog .location-business-card a{display:inline-flex!important;align-items:center;min-height:44px!important;font-size:15px!important;color:#075879!important;background:transparent!important;width:auto!important;text-decoration:underline!important;padding:0!important}
#sharon-dock-dialog #sharon-dock-locate,#locationDialog #getLocation{background:#edf4f8;color:#092c44;margin:10px 0;font-size:15px}
#sharon-dock-dialog .sd-manual{padding:12px;background:#e5f7f4;text-align:center;text-decoration:none}
dialog details{margin-top:16px;font-size:14px}dialog summary{cursor:pointer;min-height:44px}

#sharon-contact-dock #sharon-dock-whatsapp{background:#075e54;color:#fff}#sharon-contact-dock #sharon-dock-whatsapp:hover{background:#064c44}
@media(max-width:560px){#sharon-contact-dock{gap:5px;padding:5px}#sharon-contact-dock a,#sharon-contact-dock button{padding:9px 4px;font-size:14px;min-height:58px}#sharon-contact-dock svg{display:none}#sharon-contact-dock bdi{font-size:14px}#sharon-contact-dock .sd-call-label{font-size:13px}}

dialog .location-native-link{display:block;text-align:center;min-height:48px;padding:12px;border:1px solid #50788b;border-radius:10px;background:#fff;color:#123e57;font-weight:700;text-decoration:underline}dialog [data-location-native] summary{min-height:44px;padding-block:8px;font-size:16px;line-height:1.5}dialog .location-service{margin:10px 0}dialog .location-service summary{font-size:14px;color:#385765}#locationFeedback:focus,#sharon-dock-status:focus{outline:none}#locationDialog #manualLocation{margin-top:12px;background:#075e54;color:#fff}#locationDialog #sendLocation{background:#075e54;color:#fff}dialog{overflow:auto;max-height:85dvh}
/* One compact progress surface; no additional consent or service-choice screen. */
#sharon-contact-dock [data-location-caption]{display:block;font-size:12px;font-weight:400;line-height:1.4;white-space:normal}
#sharon-dock-dialog{padding:20px;max-width:420px}
#sharon-dock-dialog h2{font-size:22px;margin:0 0 10px}
#sharon-dock-dialog .sd-close{float:left}
#sharon-dock-dialog #sharon-dock-status{clear:both;margin:14px 0;font-size:16px;line-height:1.55}
#sharon-dock-dialog .privacy{font-size:14px;line-height:1.5;color:#527184;margin:14px 0 0}
#sharon-dock-dialog [data-location-app-help]{margin-top:12px}
#sharon-dock-dialog [data-location-app-help] summary{min-height:44px;padding-block:10px;font-size:15px;cursor:pointer}
