/* ========================================
   TooltipService Styles
   DOM-based tooltips with accessibility support
   All colors via CSS variables from themes.css
   ======================================== */

.tooltip-service {
    position: absolute;
    z-index: 10001;
    max-width: 280px;
    padding: 6px 10px;
    font-family: var(--font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--tooltip-text);
    background-color: var(--tooltip-bg);
    border: 1px solid var(--tooltip-border);
    border-radius: 4px;
    box-shadow: var(--tooltip-shadow);
    white-space: normal;
    word-wrap: break-word;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition:
        opacity 0.15s ease-out,
        visibility 0.15s ease-out;
}

/* Visible state */
.tooltip-service.tooltip-visible {
    opacity: 1;
    visibility: visible;
}

/* Arrow - above position (pointing down) */
.tooltip-service.tooltip-above::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: var(--tooltip-bg);
}

/* Arrow - below position (pointing up) */
.tooltip-service.tooltip-below::after {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-bottom-color: var(--tooltip-bg);
}

/* ========================================
   High Contrast / Accessibility
   Override tooltip variables for maximum contrast
   ======================================== */

@media (prefers-contrast: high) {
    :root {
        --tooltip-bg: #000000;
        --tooltip-text: #ffffff;
        --tooltip-border: #ffffff;
        --tooltip-shadow: none;
    }

    [data-theme='dark'] {
        --tooltip-bg: #ffffff;
        --tooltip-text: #000000;
        --tooltip-border: #000000;
        --tooltip-shadow: none;
    }
}

/* ========================================
   Reduced Motion
   ======================================== */

@media (prefers-reduced-motion: reduce) {
    .tooltip-service {
        transition: none;
    }
}

/* ========================================
   Mobile: Disable tooltips on touch devices
   Tooltips don't work well with touch - use long-press or aria-labels instead
   ======================================== */

@media (hover: none) and (pointer: coarse) {
    .tooltip-service {
        display: none !important;
    }
}
