/* Shared channel stack, matched to the supplied JASON SI reference. */
.cax-contact-channels {
    position: fixed;
    right: max(18px, env(safe-area-inset-right));
    bottom: max(18px, env(safe-area-inset-bottom));
    z-index: 1200;
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 168px;
}

.cax-support-links { display: flex; flex-direction: column; gap: 12px; }
.cax-support-toggle { display: none; }

.cax-contact-channels .cax-channel {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 168px;
    min-height: 54px;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, .62);
    border-radius: 10px;
    color: #fff;
    box-shadow: 0 4px 14px #0003;
    font: 800 15px/1.2 Archivo, Arial, sans-serif;
    letter-spacing: .01em;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
}

.cax-contact-channels .cax-channel--whatsapp { background: linear-gradient(135deg, #2ed66f, #128c4a); }
.cax-contact-channels .cax-channel--telegram { background: linear-gradient(135deg, #2aabee, #168acd); }
.cax-contact-channels .cax-channel--live { background: linear-gradient(135deg, #b94f1d, #7a2c16); color: #fff7f2; }

.cax-channel svg { width: 23px; height: 23px; flex: 0 0 23px; }
.caxhc-launcher__dot { width: 9px; height: 9px; flex: 0 0 9px; border-radius: 50%; background: #62d879; box-shadow: 0 0 0 4px rgba(98, 216, 121, .18); }
.cax-contact-channels .cax-channel:focus-visible { outline: 3px solid #102b22; outline-offset: 3px; box-shadow: 0 0 0 3px #fff; }

@media (hover: hover) {
    .cax-contact-channels .cax-channel:hover { filter: brightness(.94); }
}

@media (max-width: 520px) {
    .cax-contact-channels { right: max(8px, env(safe-area-inset-right)); bottom: max(8px, env(safe-area-inset-bottom)); }
}

/* Small screens keep the reading area clear until support is requested. */
@media (max-width: 800px) {
    .cax-contact-channels[data-enhanced="true"] { width: auto; align-items: flex-end; gap: 10px; }
    .cax-contact-channels[data-enhanced="true"] .cax-support-toggle {
        display: inline-flex;
        order: 2;
        align-items: center;
        justify-content: space-between;
        gap: 14px;
        min-height: 48px;
        padding: 12px 16px;
        border: 1px solid #b9d5eb;
        border-radius: 12px;
        color: #f5f8fc;
        background: linear-gradient(155deg, #344b60, #192b3b);
        box-shadow: inset 0 1px 0 #eff8ff55, 0 4px 14px #0003;
        font: 600 14px/1.3 Archivo, Arial, sans-serif;
        cursor: pointer;
    }
    .cax-support-toggle [data-support-mark] { font-size: 20px; line-height: 1; }
    .cax-contact-channels[data-enhanced="true"] .cax-support-links { display: none; }
    .cax-contact-channels[data-enhanced="true"].is-expanded .cax-support-links { display: flex; }
    .cax-support-toggle:focus-visible { outline: 3px solid #087489; outline-offset: 3px; }
    body:has(.nav-toggle[aria-expanded="true"]) .cax-contact-channels { visibility: hidden; }
}

@media (prefers-reduced-motion: no-preference) {
    .cax-contact-channels .cax-channel { transition: filter 150ms ease; }
}
