/* TV Site Plugin — Tooltip */

.tvs-tooltip {
    position:        fixed;
    z-index:         99999;
    width:           400px;
    max-width:       calc(100vw - 32px);
    padding:         20px 24px;
    background:      rgba(255,255,255,0.15);
    backdrop-filter: blur(12px) saturate(1.8);
    -webkit-backdrop-filter: blur(12px) saturate(1.8);
    border:          1px solid rgba(255,255,255,0.3);
    border-radius:   16px;
    box-shadow:      0 8px 32px rgba(0,0,0,0.18);
    color:           #F5F5F5;
    font-family:     'Inter', sans-serif;
    font-weight:     400;
    font-size:       14px;
    line-height:     1.6;
    pointer-events:  all;
    opacity:         0;
    transform:       translateY(12px);
    transition:      opacity 0.3s ease-out, transform 0.3s ease-out;
}

@media (max-width: 1024px) {
    .tvs-tooltip {
        width:     240px;
        font-size: 12px;
    }
}

.tvs-tooltip.is-visible {
    opacity:   1;
    transform: translateY(0);
}

.tvs-tooltip.is-hiding {
    opacity:   0;
    transform: translateY(8px);
    transition: opacity 0.2s ease-in, transform 0.2s ease-in;
}

.tvs-tooltip__close {
    position:   absolute;
    top:        10px;
    right:      12px;
    background: none;
    border:     none;
    color:      inherit;
    font-size:  18px;
    cursor:     pointer;
    opacity:    0.7;
    line-height: 1;
    padding:    2px 4px;
    transition: opacity 0.15s;
}
.tvs-tooltip__close:hover { opacity: 1; }

.tvs-tooltip__text {
    margin:     0;
    padding-right: 20px;
}

/* Позиции */
.tvs-tooltip--bottom-right { bottom: 24px; right: 24px; }
.tvs-tooltip--bottom-left  { bottom: 24px; left: 24px; }
.tvs-tooltip--top-right    { top: 24px; right: 24px; }
.tvs-tooltip--top-left     { top: 24px; left: 24px; }
