/* ── Help button and menu (visitor) ────────────────────────────────────────
   The button sits at the far left, level with the reactions button on the
   right (both 60px, 20px from their edge). While the menu is open it turns
   into a white close button. See listener/help-menu.js. */
.float.help-float {
    left: 20px;
    right: auto;
    background: radial-gradient(circle at 35% 30%, #C4574B, #8E2E28);
    color: #FFFFFF;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(142, 46, 40, 0.45);
}

.help-float-idle {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    font-size: 11px;
    font-weight: 700;
}

.help-float-idle svg {
    width: 22px;
    height: 22px;
}

.help-float-close {
    display: none;
    width: 24px;
    height: 24px;
}

.float.help-float.is-open {
    background: #FFFFFF;
    color: #4B5563;
    box-shadow: 0 4px 12px rgba(16, 24, 40, 0.25);
}

.float.help-float.is-open .help-float-idle {
    display: none;
}

.float.help-float.is-open .help-float-close {
    display: block;
}

/* ── Menu card ─────────────────────────────────────────────────────────── */
/* Opens above the help button, from the same (left) edge. */
.help-menu {
    position: absolute;
    left: 20px;
    bottom: 92px;
    z-index: 102;
    width: min(300px, calc(100vw - 40px));
    padding: 12px;
    border-radius: 20px;
    background: #FFFFFF;
    box-shadow: 0 12px 32px rgba(16, 24, 40, 0.2), 0 2px 6px rgba(16, 24, 40, 0.08);
    box-sizing: border-box;
    animation: help-menu-in 0.18s ease-out;
}

.help-menu[hidden],
.help-menu-actions[hidden],
.help-menu-confirm[hidden] {
    display: none;
}

@keyframes help-menu-in {
    from {
        opacity: 0;
        transform: translateY(8px) scale(0.98);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.help-menu-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.help-menu-row {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 12px;
    border: 1px solid #EEF0F4;
    border-radius: 14px;
    background: #FFFFFF;
    font-family: inherit;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(16, 24, 40, 0.06);
    -webkit-tap-highlight-color: transparent;
}

.help-menu-row:active:not(:disabled) {
    background: #F7F8FA;
}

.help-menu-row:disabled {
    cursor: default;
    opacity: 0.55;
}

.help-menu-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    flex-shrink: 0;
}

.help-menu-icon svg {
    width: 22px;
    height: 22px;
}

.tone-blue .help-menu-icon,
.help-menu-icon.tone-blue {
    background: #E8EEFC;
    color: #6685EC;
}

.tone-red .help-menu-icon,
.help-menu-icon.tone-red {
    background: #FBE7E7;
    color: #D9534F;
}

.tone-yellow .help-menu-icon,
.help-menu-icon.tone-yellow {
    background: #FDF3DC;
    color: #C99A2E;
}

.help-menu-icon.tone-yellow svg {
    width: 26px;
    height: 26px;
}

.help-menu-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.help-menu-title {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
}

.help-menu-hint {
    font-size: 12px;
    color: #6B7280;
}

.help-menu-chevron {
    width: 18px;
    height: 18px;
    color: #9CA3AF;
    flex-shrink: 0;
}

.help-menu-chevron svg {
    display: block;
}

/* ── Emergency confirmation ────────────────────────────────────────────── */
.help-menu-confirm {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 8px 4px 4px;
    text-align: center;
}

.help-menu-confirm-text {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #1F2937;
}

.help-menu-confirm-actions {
    display: flex;
    gap: 10px;
    width: 100%;
}

.help-menu-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 46px;
    border-radius: 12px;
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.help-menu-btn.is-secondary {
    border: 1px solid #E6E8EE;
    background: #FFFFFF;
    color: #1F2937;
}

.help-menu-btn.is-danger {
    border: none;
    background: #D9534F;
    color: #FFFFFF;
}
