/* ================= TICKER BASE ================= */

.news-ticker{
    display:flex;
    align-items:center;

    background: linear-gradient(
    180deg,
    rgba(0, 114, 255, 0.10),
    rgba(0, 198, 255, 0.08),
    rgba(255, 110, 196, 0.06)
);

    border:1px solid rgba(0,0,0,0.08);
    border-radius:10px;

    padding:4px;
    margin:7px 0;

    box-shadow:
        0 10px 25px rgba(0,0,0,0.10),
        inset 0 1px 0 rgba(255,255,255,0.7);

    overflow:hidden;
}

/* ================= LABEL ================= */

.news-label{
    background: linear-gradient(180deg,#00c6ff,#0072ff,#ff6ec4);
    color:#fff;
    font-weight:700;
    padding:6px 12px;
    border-radius:8px;
    font-size:15px;
    flex-shrink:0;
}

/* ================= WINDOW ================= */

.news-window{
    flex:1;
    overflow:hidden;
    margin-left:6px;
    position:relative;
}

/* ================= TRACK ================= */

.news-track{
    display:inline-flex;
    align-items:center;
    gap:28px;
    white-space:nowrap;

    will-change: transform;
    transform: translate3d(0,0,0);

    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;

    transform-style: preserve-3d;
}

/* ================= LINKS ================= */

.news-track a{
    display:inline-flex;
    align-items:center;
    gap:6px;

    text-decoration:none;
    color: rgb(255, 82, 125);

    font-size:15px;
    font-weight:500;

    padding:6px 12px;
    border-radius:10px;

    background: rgba(255,255,255,0.35);
    backdrop-filter: blur(6px);

    flex-shrink:0;

    transition:0.25s ease;

    border:1px solid rgba(255,255,255,0.25);

    position: relative;
}

/* hover effect */
.news-track a:hover{
    transform: translateY(-2px);
    background: rgba(255,255,255,0.65);
    color:#ad18ce;
}

/* underline base (solid line) */
.news-track a::after{
    content:"";
    position:absolute;
    left:10px;
    right:10px;
    bottom:6px;

    height:1px;
    background: rgba(0,0,0,0.45);

    opacity:0;
    transform: scaleX(0.85);

    transform-origin:center;
    transition:0.25s ease;
}

/* hover show */
.news-track a:hover::after{
    opacity:1;
    transform: scaleX(1);
}

/* ================= BADGES ================= */

.type-label{
    font-size:14px;
    font-weight:700;
    padding:3px 7px;
    border-radius:5px;
    color:#fff;
    flex-shrink:0;
    text-transform:uppercase;
    letter-spacing:0.3px;
}

.notice-label{ background:#2563eb; }
.event-label{ background:#16a34a; }
.alert-label{ background:#dc2626; }

/* ================= LOADING ================= */

.loading{
    color:#777;
    font-size:14px;
    padding:6px;
}