/* Sudarshan clinic contact recovery; isolated from React/Vite site styles */
:root { --sh-green:#1f6435; --sh-green-dark:#114d26; --sh-cream:#fffdf6; }
.sh-contact-bar, .sh-enquiry-dialog { font-family: 'DM Sans', Arial, sans-serif; box-sizing:border-box; }
.sh-contact-bar *, .sh-enquiry-dialog * { box-sizing:border-box; }
.sh-contact-bar { position:fixed; right:22px; bottom:20px; z-index:10050; display:flex; gap:8px; align-items:center; padding:7px; background:#fff; border:1px solid #c5d9c9; box-shadow:0 7px 28px #132d1b36; border-radius:16px; }
.sh-contact-bar a, .sh-contact-bar button { border:0; text-decoration:none; cursor:pointer; display:flex; align-items:center; justify-content:center; border-radius:10px; min-height:43px; padding:0 14px; font:600 14px/1.2 'DM Sans',Arial,sans-serif; white-space:nowrap; background:#f1f6f1; color:#16492b; }
.sh-contact-bar .sh-callback { background:var(--sh-green); color:#fff; }
.sh-contact-bar a:hover, .sh-contact-bar button:hover { filter:brightness(.94); }
.sh-contact-bar a:focus-visible, .sh-contact-bar button:focus-visible, .sh-enquiry-dialog input:focus-visible, .sh-enquiry-dialog select:focus-visible { outline:3px solid #c79641; outline-offset:2px; }
/* Replace existing floating WA icon with a three-option contact dock. */
body .floating-whatsapp { display:none !important; }
.sh-enquiry-dialog { color:#23352a; max-width:480px; width:min(92vw,480px); padding:0; border:1px solid #b8d1bd; border-radius:17px; background:#fff; box-shadow:0 22px 75px #09231260; }
.sh-enquiry-dialog::backdrop { background:rgba(8,26,14,.66); }
.sh-enquiry-dialog .sh-dialog-inner { padding:23px 24px 22px; }
.sh-dialog-top { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.sh-dialog-top h2 { margin:0 0 5px; font:600 26px/1.2 Georgia,serif; color:#174d2a; }
.sh-dialog-top p { margin:0 0 12px; color:#526356; font-size:14px; line-height:1.55; }
.sh-dialog-top .sh-dialog-close { flex-shrink:0; border:1px solid #d0d9d2; border-radius:100%; width:33px;height:33px; background:#f7faf7; color:#243b2d; cursor:pointer; font-size:23px; line-height:1; }
.sh-enquiry-dialog label.sh-label { display:block; margin:13px 0 5px; font-size:13.5px; font-weight:700; color:#244532; }
.sh-enquiry-dialog input[type='text'], .sh-enquiry-dialog input[type='tel'], .sh-enquiry-dialog select { width:100%; min-height:44px; border:1px solid #b7cbb9; border-radius:9px; padding:10px 12px; background:#fff; color:#23352a; font:inherit; font-size:15px; }
.sh-enquiry-dialog .sh-consent { display:flex; gap:9px; align-items:flex-start; font-size:12.5px; line-height:1.55; margin:15px 0; color:#425348; }
.sh-enquiry-dialog .sh-consent input { margin-top:4px; accent-color:var(--sh-green); flex-shrink:0; }
.sh-enquiry-dialog .sh-consent a { color:var(--sh-green-dark); font-weight:600; }
.sh-enquiry-dialog .sh-warning { font-size:12.5px; color:#5c5447; background:#fbf7ed; padding:9px 10px; border-radius:8px; margin:14px 0 0; }
.sh-enquiry-dialog .sh-submit { background:var(--sh-green); color:#fff; border:0; border-radius:9px; width:100%; min-height:46px; font:700 15px/1.2 'DM Sans',Arial,sans-serif; cursor:pointer; }
.sh-enquiry-dialog .sh-submit[disabled] { opacity:.7; cursor:wait; }
.sh-enquiry-dialog .sh-result { font-weight:600; font-size:13.5px; line-height:1.5; margin:12px 0 0; min-height:0; }
.sh-enquiry-dialog .sh-result[data-sh-state='ok'] { color:#126133; }
.sh-enquiry-dialog .sh-result[data-sh-state='fail'] { color:#9d3924; }
.sh-enquiry-dialog .sh-alternatives { font-size:13px; margin:14px 0 0; text-align:center; }
.sh-enquiry-dialog .sh-alternatives a { color:var(--sh-green-dark); font-weight:700; }
.sh-hidden-honeypot { position:absolute; left:-10000px; width:1px;height:1px; overflow:hidden; }
@media (max-width:650px) {
  body { padding-bottom:calc(76px + env(safe-area-inset-bottom,0px)); }
  .sh-contact-bar { bottom:0; left:0; right:0; padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px)); border-radius:15px 15px 0 0; width:100%; gap:6px; justify-content:center; }
  .sh-contact-bar a, .sh-contact-bar button { flex:1 1 0; min-width:0; padding:0 5px; min-height:45px; font-size:13px; }
  .sh-enquiry-dialog { max-height:min(94dvh,750px); overflow:auto; }
  .sh-enquiry-dialog .sh-dialog-inner { padding:17px; }
  .sh-dialog-top h2 { font-size:23px; }
}
@media print { .sh-contact-bar, .sh-enquiry-dialog { display:none !important; } }
