/* Finance-backed support dock, kept below dialogs and above page content. */
.support-dock { position:fixed; z-index:100; right:max(24px,env(safe-area-inset-right)); bottom:calc(88px + env(safe-area-inset-bottom)); color:#263448; font-family:var(--font); }
.support-dock[hidden],.support-dock [hidden] { display:none !important; }
.support-rail { width:58px; }
.support-dock button,.support-dock a { -webkit-tap-highlight-color:transparent; }
.support-dock svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.support-entry { display:flex; width:58px; min-height:112px; flex-direction:column; align-items:center; gap:6px; padding:0 0 10px; border:0; border-radius:29px 29px 6px 6px; background:linear-gradient(155deg,#4b9dff,#1769ff 72%); color:#fff; box-shadow:0 8px 24px #1769ff28; cursor:pointer; font:14px/1.35 var(--font); letter-spacing:3px; text-indent:3px; }
.support-entry__orb { display:grid; width:58px; height:58px; place-items:center; border:4px solid #eaf3ff; border-radius:50%; background:#fff; color:#1769ff; box-shadow:0 2px 10px #2866ad18; }
.support-entry__orb svg { width:35px; height:35px; stroke-width:1.6; }
.support-tools { display:grid; margin-top:8px; padding:3px 7px; border:1px solid #e7edf5; border-radius:6px; background:#fff; box-shadow:0 6px 24px #314f7920; }
.support-tools > * { display:grid; width:42px; min-height:54px; place-items:center; border:0; background:none; color:#1769ff; cursor:pointer; text-decoration:none; transition:background .18s,color .18s; }
.support-tools > * + * { border-top:1px solid #eff2f7; }
.support-tools > *:hover,.support-tools > *[aria-expanded="true"] { background:#f2f7ff; color:#0052df; }
.support-dock :is(button,a):focus-visible { outline:2px solid #1769ff; outline-offset:3px; }
.support-panel { position:absolute; right:76px; bottom:0; width:284px; max-height:calc(100dvh - 120px); overflow:auto; overscroll-behavior:contain; border:1px solid #e7edf5; border-radius:12px; background:#fff; box-shadow:0 16px 55px #243e6926,0 2px 10px #243e6909; animation:support-reveal .2s ease both; }
.support-panel__head { display:flex; align-items:center; justify-content:space-between; padding:15px 17px 9px; }
.support-panel__title { color:#9aa5b5; font-size:11px; letter-spacing:1px; }
.support-panel__close { display:grid; width:28px; height:28px; padding:5px; place-items:center; border:0; border-radius:50%; color:#8491a4; background:#f5f7fb; cursor:pointer; }
.support-panel__close svg { width:16px; height:16px; }
.support-contacts { padding:0 18px; }
.support-contact { display:flex; min-height:82px; align-items:center; gap:13px; padding:16px 0; color:inherit; text-decoration:none; }
.support-contact + .support-contact { border-top:1px solid #f0f3f7; }
.support-contact__icon { display:grid; width:38px; height:38px; flex:0 0 38px; place-items:center; border-radius:50%; background:#edf4ff; color:#478bff; }
.support-contact__icon--phone { background:#659eff; color:#fff; }
.support-contact__icon--group { background:#f3f7f1; color:#84a17c; }
.support-contact__icon img { width:38px; height:38px; border-radius:50%; object-fit:cover; }
.support-contact__copy { display:grid; min-width:0; gap:5px; }
.support-contact__copy strong { color:#263448; font-size:14px; font-weight:500; line-height:1.5; overflow-wrap:anywhere; }
.support-contact__copy small { color:#929baa; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.support-contact__arrow { margin-left:auto; color:#c6ced9; }
.support-contact:hover strong { color:#1769ff; }
.support-panel__foot { padding:11px 18px; border-top:1px solid #f0f3f7; background:#fafcff; color:#a3aebd; font-size:10px; }
.support-qr { padding:12px 25px 22px; text-align:center; }
.support-qr img { width:180px; max-width:100%; height:auto; margin:auto; }
.support-qr p { margin:12px 0 0; color:#8491a4; font-size:12px; }
@keyframes support-reveal { from { opacity:0; transform:translateX(8px); } to { opacity:1; transform:none; } }
@media(max-width:760px) {
  .support-dock { right:max(12px,env(safe-area-inset-right)); bottom:calc(82px + env(safe-area-inset-bottom)); }
  .support-rail { width:48px; }
  .support-entry { width:48px; min-height:96px; font-size:12px; }
  .support-entry__orb { width:48px; height:48px; border-width:3px; }
  .support-entry__orb svg { width:29px; height:29px; }
  .support-tools { padding:2px 3px; }
  .support-tools > * { width:40px; min-height:44px; }
  .support-panel { right:0; bottom:calc(100% + 12px); width:min(284px,calc(100vw - 24px)); max-height:calc(100dvh - 330px); border-radius:12px; }
  .support-contact { min-height:72px; padding-block:13px; }
}
@media(max-height:600px) {
  .support-dock { bottom:80px; }
  .support-entry { min-height:74px; gap:3px; padding-bottom:5px; font-size:11px; line-height:1.15; }
  .support-entry__orb { width:38px; height:38px; border-width:2px; }
  .support-entry__orb svg { width:27px; height:27px; }
  .support-tools { margin-top:5px; }
  .support-tools > * { min-height:40px; }
  .support-panel { right:calc(100% + 10px); bottom:0; width:min(284px,calc(100vw - 88px)); max-height:calc(100dvh - 100px); }
}
@media(prefers-reduced-motion:reduce) { .support-dock * { animation:none !important; transition:none !important; } }
