/* Shared SMS contact panel. No third-party scripts or tracking. */
.text-widget{position:fixed;right:24px;bottom:24px;z-index:20;color:var(--ink);font-size:16px;line-height:1.5}
.text-widget>summary{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 20px;border:1px solid #ffffff60;border-radius:28px;box-shadow:0 5px 20px #0b205e25;background:var(--navy);color:#fff;font-weight:600;cursor:pointer;list-style:none}
.text-widget>summary::-webkit-details-marker{display:none}
.text-widget>summary svg{width:23px;height:23px}.text-widget>summary:hover{background:#164384}
.text-widget-panel{position:absolute;right:0;bottom:66px;width:340px;max-width:calc(100vw - 32px);max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);overflow-y:auto;padding:26px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 55px #0b205e26}
.text-widget-panel h2{font-size:24px;line-height:1.2;letter-spacing:-.025em;color:var(--navy);margin:0 20px 12px 0;font-weight:600}
.text-widget-panel p{color:var(--muted);margin:0 0 16px}.text-widget-panel .text-widget-brand{font-size:12px;letter-spacing:.15em;font-weight:700;color:var(--blue);margin-bottom:16px}
.text-widget-close{position:absolute;right:12px;top:10px;width:44px;height:44px;background:transparent;border:0;border-radius:4px;color:var(--muted);font-size:26px;cursor:pointer}.text-widget-close:hover{background:#edf4fb}.text-widget-close[hidden]{display:none}
.text-widget-number{display:block;margin:0 0 16px;color:var(--navy);font-size:22px;font-weight:600}
.text-widget-start{width:100%;min-height:46px;gap:18px}.text-widget-start:hover{background:#164384}
.text-widget-panel .text-widget-help{font-size:14px;margin:12px 0 20px}
.text-widget-qr{display:flex;gap:16px;align-items:center;border-top:1px solid var(--line);padding-top:18px}.text-widget-qr img{width:120px;height:120px;flex-shrink:0;background:white}.text-widget-qr p{font-size:14px;margin:0}
@media(max-width:600px){.text-widget{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.text-widget-panel{padding:24px}.text-widget-qr{display:none}}
@media print{.text-widget{display:none}}
