﻿.afb-banner {
    --afb-height: 64px;
    --afb-bg: #0b1020;
    --afb-text: #ffffff;
    --afb-distance: 600px;
    position: relative;
    overflow: hidden;
    height: var(--afb-height);
    background: var(--afb-bg);
    color: var(--afb-text);
    display: flex;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}

.afb-track {
    display: inline-flex;
    align-items: center;
    gap: 40px;
    white-space: nowrap;
    will-change: transform;
    animation-name: afb-scroll;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.afb-item,
.afb-item-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    text-decoration: none;
    color: inherit;
}

.afb-item img {
    height: calc(var(--afb-height) - 18px);
    width: auto;
    display: block;
}

@keyframes afb-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(calc(-1 * var(--afb-distance))); }
}

body.afb-has-banner {
    padding-top: var(--afb-banner-height, 64px);
}

body.admin-bar .afb-banner {
    top: 32px;
}

body.admin-bar.afb-has-banner {
    padding-top: calc(var(--afb-banner-height, 64px) + 32px);
}

@media (max-width: 782px) {
    body.admin-bar .afb-banner {
        top: 46px;
    }

    body.admin-bar.afb-has-banner {
        padding-top: calc(var(--afb-banner-height, 64px) + 46px);
    }
}

.afb-ads {
    position: fixed;
    top: var(--afb-ads-top, 120px);
    right: 16px;
    width: var(--afb-ads-width, 260px);
    height: var(--afb-ads-height, 420px);
    background: var(--afb-ads-bg, #111827);
    border: var(--afb-ads-border, 2px) solid var(--afb-ads-border-color, #ffffff);
    padding: var(--afb-ads-padding, 12px);
    z-index: 9998;
    box-sizing: border-box;
    overflow: hidden;
}

.afb-has-ads {
    padding-right: calc(var(--afb-ads-width, 260px) + 32px);
}

.afb-ads-inner {
    display: grid;
    gap: 12px;
}

.afb-ads-item img {
    width: 100%;
    height: auto;
    display: block;
}

.afb-ads-link {
    display: block;
}

@media (max-width: 900px) {
    .afb-ads {
        right: 8px;
        width: min(var(--afb-ads-width, 260px), 45vw);
        height: min(var(--afb-ads-height, 420px), 55vh);
        padding: min(var(--afb-ads-padding, 12px), 10px);
    }
    .afb-has-ads {
        padding-right: calc(min(var(--afb-ads-width, 260px), 45vw) + 16px);
    }
}

@media (max-width: 600px) {
    .afb-item,
    .afb-item-link {
        font-size: 14px;
        gap: 8px;
    }
}
