/* mascot-tips.css — Tooltip styling for TipsSystem */

.mascot-tooltip {
    position: fixed;
    z-index: 10001;
    max-width: 280px;
    padding: 12px 36px 12px 16px;
    background: var(--mascot-bg, #fff);
    border: 2px solid var(--mascot-primary, #4a90d9);
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    font-size: 14px;
    line-height: 1.5;
    color: var(--mascot-text, #333);
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.3s ease, transform 0.3s ease;
    pointer-events: none;
}

.mascot-tooltip--visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

/* Arrow */
.mascot-tooltip__arrow {
    position: absolute;
    width: 12px;
    height: 12px;
    background: var(--mascot-bg, #fff);
    border: 2px solid var(--mascot-primary, #4a90d9);
    border-right: none;
    border-top: none;
    transform: rotate(45deg);
}

.mascot-tooltip--top .mascot-tooltip__arrow {
    bottom: -7px;
    left: 50%;
    margin-left: -6px;
}

.mascot-tooltip--bottom .mascot-tooltip__arrow {
    top: -7px;
    left: 50%;
    margin-left: -6px;
    transform: rotate(-135deg);
}

.mascot-tooltip--left .mascot-tooltip__arrow {
    right: -7px;
    top: 50%;
    margin-top: -6px;
    transform: rotate(-45deg);
}

.mascot-tooltip--right .mascot-tooltip__arrow {
    left: -7px;
    top: 50%;
    margin-top: -6px;
    transform: rotate(135deg);
}

/* Dismiss button */
.mascot-tooltip__dismiss {
    position: absolute;
    top: 6px;
    right: 8px;
    background: none;
    border: none;
    font-size: 18px;
    cursor: pointer;
    color: var(--mascot-muted, #999);
    line-height: 1;
    padding: 2px 4px;
}

.mascot-tooltip__dismiss:hover {
    color: var(--mascot-text, #333);
}

/* Pulse highlight on target element */
.mascot-tip-highlight {
    animation: mascotTipPulse 2s ease-in-out infinite;
    outline: 3px solid var(--mascot-primary, #4a90d9);
    outline-offset: 4px;
    border-radius: 4px;
}

@keyframes mascotTipPulse {
    0%, 100% { outline-color: var(--mascot-primary, #4a90d9); }
    50% { outline-color: transparent; }
}

@media (prefers-reduced-motion: reduce) {
    .mascot-tip-highlight {
        animation: none;
        outline-style: solid;
    }
    .mascot-tooltip {
        transition: none;
    }
}
