/* A small contact drawer beside HANSHOP's existing floating glass tools. */
body #owner-contact-trigger{
  position:fixed;right:22px;bottom:138px;z-index:35;
  display:flex;align-items:center;justify-content:center;gap:9px;
  box-sizing:border-box;width:132px;min-height:48px;padding:12px 16px;
  border:0;border-radius:999px;color:#405b70;
  background:var(--glass-surface,rgba(255,255,255,.86))!important;
  -webkit-backdrop-filter:blur(var(--glass-effective-blur,16px)) saturate(135%);
  backdrop-filter:blur(var(--glass-effective-blur,16px)) saturate(135%);
  box-shadow:var(--glass-edge,inset 0 1px 1px #fff),0 6px 20px rgba(35,50,65,.1);
  font-family:inherit;font-size:12px;line-height:1.5;font-weight:650;
  cursor:pointer;touch-action:manipulation;
  transition:color 160ms ease-out,box-shadow 160ms ease-out;
}
#owner-contact-trigger svg{display:block;flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
body #owner-contact-trigger:hover,body #owner-contact-trigger[aria-expanded="true"]{color:#a62059;box-shadow:var(--glass-edge,inset 0 1px 1px #fff),0 8px 24px rgba(35,50,65,.15)}
#owner-contact-panel{
  position:fixed;right:170px;bottom:138px;z-index:47;
  box-sizing:border-box;width:306px;max-width:calc(100vw - 28px);
  max-height:calc(100dvh - 162px);padding:20px;overflow:auto;overscroll-behavior:contain;
  border:0;border-radius:24px;color:#263746;
  background:rgba(255,255,255,.82);
  -webkit-backdrop-filter:blur(24px) saturate(125%);backdrop-filter:blur(24px) saturate(125%);
  box-shadow:inset 0 1px 1px rgba(255,255,255,.96),inset 0 0 0 1px rgba(255,255,255,.7),0 16px 48px rgba(31,49,66,.16);
  opacity:0;transform:translateX(30px);clip-path:inset(0 0 0 100% round 24px);pointer-events:none;
  transition:clip-path 380ms cubic-bezier(.22,1,.36,1),transform 380ms cubic-bezier(.22,1,.36,1),opacity 220ms ease-out;
  scrollbar-width:thin;scrollbar-color:#b6c4ce transparent;
}
#owner-contact-panel[data-open="true"]{opacity:1;transform:translateX(0);clip-path:inset(0 0 0 0 round 24px);pointer-events:auto;transition-duration:620ms,620ms,320ms}
#owner-contact-panel[hidden]{display:none}
#owner-contact-panel [hidden]{display:none!important}
#owner-contact-panel .owner-contact-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}
#owner-contact-panel h2{margin:0;font-family:inherit;font-size:21px;line-height:1.4;font-weight:700;letter-spacing:-.02em}
body #owner-contact-panel .owner-contact-close{display:grid;place-items:center;flex:none;min-width:44px;min-height:44px;margin:-8px -8px 0 0;padding:12px;border:0;border-radius:50%;color:#405b70;cursor:pointer;background:transparent!important;box-shadow:none;touch-action:manipulation}
#owner-contact-panel .owner-contact-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
#owner-contact-panel .owner-contact-name{margin:0 0 18px;font-size:13px;line-height:1.6;color:#536979}
#owner-contact-panel .owner-contact-qr{display:block;position:relative;width:232px;max-width:100%;aspect-ratio:1;margin:0 auto;overflow:hidden;border-radius:12px;background:#fff;isolation:isolate}
#owner-contact-panel .owner-contact-qr img{display:block;position:absolute;width:137.037037%;max-width:none;height:auto;left:-18.518519%;top:-44.444444%;border:0;border-radius:0;object-fit:initial}
#owner-contact-panel .owner-contact-hint{margin:14px 0 0;text-align:center;font-size:14px;font-weight:600;line-height:1.5;color:#263746}
#owner-contact-panel .owner-contact-mobile-hint{display:none}
#owner-contact-panel .owner-contact-save{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;box-sizing:border-box;margin:12px 0 0;padding:10px 16px;border-radius:12px;color:#405b70;background:rgba(255,255,255,.7);text-decoration:none;font-size:13px;line-height:1.5;font-weight:600;box-shadow:inset 0 0 0 1px rgba(64,91,112,.12)}
#owner-contact-panel .owner-contact-save svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#owner-contact-panel .owner-contact-error{margin:14px 0;color:#9d1c4e;font-size:13px;line-height:1.6}
#owner-contact-panel .owner-contact-error[hidden]{display:none}
#owner-contact-panel a:focus-visible,#owner-contact-panel button:focus-visible,#owner-contact-trigger:focus-visible{outline:2px solid #a62059;outline-offset:4px}
#owner-contact-panel ::selection{background:#f7d7e6;color:#263746}
@media(max-width:720px){
 body #owner-contact-trigger{right:14px;bottom:calc(138px + env(safe-area-inset-bottom));width:124px;min-height:40px;height:40px;padding:9px 12px;font-size:11px;gap:7px}
 #owner-contact-trigger svg{width:18px;height:18px}
 #owner-contact-panel{right:14px;bottom:calc(190px + env(safe-area-inset-bottom));max-height:calc(100dvh - 210px - env(safe-area-inset-bottom));width:306px;padding:18px}
 #owner-contact-panel .owner-contact-qr{width:220px}
 #owner-contact-panel h2{font-size:20px}
 #owner-contact-panel .owner-contact-name{margin-bottom:14px}
 #owner-contact-panel .owner-contact-mobile-hint{display:block;margin:6px 0 0;color:#536979;text-align:center;font-size:12px;line-height:1.6}
}
@media(max-height:650px){#owner-contact-panel{bottom:16px;max-height:calc(100dvh - 32px)}#owner-contact-panel .owner-contact-qr{width:200px}}
@media(max-width:720px) and (max-height:650px){#owner-contact-panel{bottom:calc(190px + env(safe-area-inset-bottom));max-height:calc(100dvh - 210px - env(safe-area-inset-bottom));padding:16px}#owner-contact-panel .owner-contact-qr{width:180px}#owner-contact-panel .owner-contact-name{margin-bottom:8px}#owner-contact-panel .owner-contact-mobile-hint{display:none}}
@media(max-height:450px) and (min-width:500px){#owner-contact-panel{right:162px;bottom:12px;max-height:calc(100dvh - 24px)}}
@media(max-height:450px) and (max-width:499px){#owner-contact-panel{right:14px;bottom:12px;max-height:calc(100dvh - 24px)}}
@media(prefers-reduced-motion:reduce){body #owner-contact-trigger,#owner-contact-panel,#owner-contact-panel[data-open="true"]{transition:none}#owner-contact-panel{transform:none}}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){body #owner-contact-trigger,#owner-contact-panel{background:#fff!important;-webkit-backdrop-filter:none;backdrop-filter:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body #owner-contact-trigger,#owner-contact-panel{background:#fff!important}}
