/* ==========================================================
   MaxLiv TV Notification Banner
   Premium Frosted Glass UI (matches header)
========================================================== */

.notif-banner {

    position: relative;

    width: min(1280px, calc(100% - 32px));
    margin: 0 auto 14px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;

    padding: 14px 18px;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.12),
            rgba(255,255,255,.05)
        );

    backdrop-filter: blur(28px) saturate(180%);
    -webkit-backdrop-filter: blur(28px) saturate(180%);

    border: 1px solid rgba(255,255,255,.14);
    border-radius: 18px;

    overflow: hidden;

    box-shadow:
        inset 0 1px rgba(255,255,255,.18),
        inset 0 -1px rgba(255,255,255,.05),
        0 12px 35px rgba(0,0,0,.28);

    color: #fff;

    animation: notif-slide-in .4s ease;

}

@keyframes notif-slide-in {

    from {
        opacity: 0;
        transform: translateY(-8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}

.notif-banner::before {

    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            120deg,
            rgba(255,255,255,.16),
            transparent 25%,
            transparent 72%,
            rgba(255,255,255,.05)
        );

    pointer-events: none;

}

.notif-content {

    position: relative;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;

    flex: 1;

    min-width: 0;

    z-index: 2;

}

.notif-actions {

    flex-shrink: 0;

    display: flex;
    align-items: center;
    gap: 10px;

}

.notif-text {

    min-width: 0;

}

.notif-title {

    margin: 0 0 2px;

    font-size: 15px;
    font-weight: 700;

    color: #fff;

}

.notif-message {

    margin: 0;

    font-size: 13.5px;

    color: rgba(255,255,255,.72);

    line-height: 1.4;

}

.notif-btn {

    position: relative;

    flex-shrink: 0;

    overflow: hidden;

    display: flex;
    align-items: center;

    padding: 9px 18px;

    text-decoration: none;
    white-space: nowrap;

    color: #fff;

    font-size: 13.5px;
    font-weight: 600;

    border-radius: 13px;

    background: linear-gradient(135deg, #ef4444, #dc2626);

    border: 1px solid rgba(255,255,255,.18);

    box-shadow:
        inset 0 1px rgba(255,255,255,.25),
        0 8px 22px rgba(220,38,38,.35);

    transition: .35s ease;

}

.notif-btn::before {

    content: "";

    position: absolute;

    top: 0;
    left: -120%;

    width: 70%;
    height: 100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.35),
            transparent
        );

    transition: .7s;

}

.notif-btn:hover::before {

    left: 150%;

}

.notif-btn:hover {

    transform: translateY(-2px);

    box-shadow:
        inset 0 1px rgba(255,255,255,.25),
        0 14px 28px rgba(220,38,38,.5);

}

.notif-close {

    position: relative;

    flex-shrink: 0;

    width: 26px;
    height: 26px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;

    font-size: 18px;
    line-height: 1;

    color: rgba(255,255,255,.75);

    background: rgba(255,255,255,.08);

    border: 1px solid rgba(255,255,255,.14);
    border-radius: 50%;

    cursor: pointer;

    transition: .25s ease;

}

.notif-close:hover {

    color: #fff;

    background: rgba(255,255,255,.18);

    transform: rotate(90deg);

}

/* ==========================================================
   Mobile
========================================================== */

@media (max-width:768px) {

    .notif-banner {

        width: calc(100% - 16px);

        padding: 14px;

        border-radius: 16px;

    }

    .notif-content {

        flex-direction: column;
        align-items: stretch;

        gap: 12px;

    }

    .notif-actions {

        justify-content: stretch;

    }

    .notif-btn {

        flex: 1;

        justify-content: center;

    }

}