/* SDS30 contact panels 20261017-01. Use only the matching versioned release. */
.sds-contact-panel { --sds-contact-ready:1; --sds-contact-version:20261017-01; }
.sds-contact-panel { box-sizing:border-box; width:min(94vw,560px); max-height:90svh; overflow:auto; padding:24px; border:1px solid #52606d; border-radius:16px; background:#fff; color:#17212b; font:1rem/1.5 system-ui,sans-serif; text-align:center; }
.sds-contact-panel::backdrop { background:rgb(0 0 0 / 65%); }
.sds-contact-panel img { display:block; width:280px; max-width:100%; height:auto; margin:16px auto; image-rendering:pixelated; }
.sds-contact-panel h2 { font-size:1.4rem; overflow-wrap:anywhere; }
.sds-contact-panel button,.sds-contact-panel a { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:10px; color:#124b41; }
.sds-contact-panel button { position:sticky; top:0; background:#fff; border:1px solid #52606d; border-radius:6px; cursor:pointer; }
.sds-contact-panel :focus-visible { outline:3px solid #185abd; outline-offset:3px; }
.sds-contact-actions { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.sds-contact-panel .sds-contact-action { border:1px solid #124b41; border-radius:6px; }
.sds-contact-panel .sds-contact-secondary { font-size:.875rem; }
.sds-contact-panel { width:min(94vw,480px); max-height:92svh; overscroll-behavior:contain; padding:16px 32px 24px; border-color:#b6c3c8; border-radius:20px; box-shadow:0 20px 70px #0004; }
.sds-contact-panel[open] { display:flex; flex-direction:column; overflow:hidden; }
.sds-contact-panel .sds-contact-body { min-height:0; overflow:auto; overscroll-behavior:contain; padding:4px 5px; }
.sds-contact-panel h2 { display:flex; align-items:center; justify-content:center; gap:10px; margin:0; font-size:1.5rem; font-weight:750; line-height:1.3; }
.sds-contact-panel p { margin:6px 0; color:inherit; overflow-wrap:anywhere; }
.sds-contact-panel .sds-contact-company { color:#475569; margin:4px 0 16px; }
.sds-contact-panel .sds-contact-person { font-weight:600; }
.sds-contact-panel .sds-contact-number { font-size:1.3rem; font-weight:750; margin:6px 0 12px; user-select:text; }
.sds-contact-panel .sds-contact-instruction { margin:18px auto 4px; max-width:34ch; }
.sds-contact-panel .sds-contact-qr { width:230px; max-width:100%; height:auto; margin:12px auto 18px; padding:0; border:0; background:#fff; }
.sds-contact-panel .sds-contact-icon { display:inline-block; flex:none; width:20px; height:20px; margin:0; object-fit:contain; }
.sds-contact-panel button,.sds-contact-panel a { position:static; gap:9px; padding:10px 14px; color:#124b41; background:#fff; border:1px solid #8caaa3; border-radius:9px; cursor:pointer; font:600 .95rem/1.4 system-ui,sans-serif; text-decoration:none; }
.sds-contact-panel .sds-contact-close { display:flex; position:static; flex:none; margin:0 -16px 0 auto; width:44px; height:44px; padding:0; border-color:transparent; font:32px/1 system-ui,sans-serif; color:#334155; z-index:1; }
.sds-contact-panel a:hover,.sds-contact-panel button:hover { background:#edf5f2; }
.sds-contact-panel .sds-contact-action { background:#125943; border-color:#125943; color:#fff; }
.sds-contact-panel .sds-contact-action:hover { background:#0a4130; }
.sds-contact-panel .sds-contact-action .sds-contact-icon:not(.sds-contact-icon-whatsapp) { filter:brightness(0) invert(1); }
.sds-contact-actions { flex-direction:column; gap:10px; align-items:stretch; }
.sds-contact-panel .sds-contact-hint { font-size:.875rem; line-height:1.45; color:#475569; margin:0 6px 8px; }
.sds-contact-panel .sds-contact-status { font-size:.875rem; }
.sds-contact-panel .sds-contact-status:empty { margin:0; }
.sds-contact-panel .sds-contact-esc { font-size:.8rem; color:#475569; margin:18px 0 0; }
@media (max-height:760px) { .sds-contact-panel { padding-top:8px; } .sds-contact-panel .sds-contact-company { margin-bottom:8px; } }
@media (prefers-reduced-motion:reduce) { .sds-contact-panel * { scroll-behavior:auto; transition:none; animation:none; } }
