/* DJPropFirms Live Deals — v2.1
 * Scoped so Elementor/Astra/header styles cannot break the marquee after reload.
 */
.djpf-live-deals,
.djpf-live-deals *{
    box-sizing:border-box;
}

.djpf-live-deals{
    --djpf-live-bg:#07131c;
    --djpf-live-bg-2:#081824;
    --djpf-live-text:#f4f7fb;
    --djpf-live-muted:#7890a3;
    --djpf-live-mint:#58efbd;
    --djpf-live-line:rgba(98,151,186,.17);
    width:100%;
    margin:0;
    overflow:hidden;
    background:linear-gradient(180deg,var(--djpf-live-bg) 0%,#061119 100%);
    border-top:1px solid var(--djpf-live-line);
    border-bottom:1px solid var(--djpf-live-line);
    color:var(--djpf-live-text);
    font-family:"Space Grotesk",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    isolation:isolate;
}

.djpf-live-deals a,
.djpf-live-deals button{
    font:inherit;
}

.djpf-live-deals-inner{
    width:min(calc(100% - 48px),1450px);
    min-height:70px;
    margin:0 auto;
    display:grid;
    grid-template-columns:145px minmax(0,1fr) 155px;
    align-items:center;
    gap:16px;
}

/* Left label */
.djpf-live-label{
    min-height:42px;
    padding:0 14px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    border:1px solid rgba(88,239,189,.24);
    border-radius:999px;
    background:linear-gradient(180deg,rgba(20,101,75,.24),rgba(10,59,46,.17));
    color:#ecfff7;
    white-space:nowrap;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}

.djpf-live-label strong{
    font-size:13px;
    line-height:1;
    font-weight:750;
    letter-spacing:-.015em;
}

.djpf-live-dot{
    width:8px;
    height:8px;
    flex:0 0 8px;
    border-radius:50%;
    background:var(--djpf-live-mint);
    box-shadow:0 0 0 5px rgba(88,239,189,.08),0 0 16px rgba(88,239,189,.32);
}

/* Viewport / motion */
.djpf-marquee-viewport{
    min-width:0;
    overflow:hidden;
    display:flex;
    align-items:center;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%);
}

.djpf-marquee-rail{
    --djpf-gap:14px;
    width:max-content;
    display:flex;
    align-items:center;
    gap:var(--djpf-gap);
    will-change:transform;
}

.djpf-marquee-group{
    display:flex;
    align-items:center;
    gap:var(--djpf-gap);
    flex:0 0 auto;
}

.djpf-marquee-rail.is-running{
    animation:djpf-live-marquee var(--djpf-duration,55s) linear infinite;
}

.djpf-live-deals.pause-hover:hover .djpf-marquee-rail.is-running{
    animation-play-state:paused;
}

.djpf-live-deals.is-static .djpf-marquee-rail{
    animation:none!important;
    transform:none!important;
}

/* Deal pill */
.djpf-deal-pill{
    --tone:#12baff;
    --tone-bg:rgba(18,186,255,.095);
    --tone-border:rgba(18,186,255,.42);
    min-height:42px;
    display:flex;
    align-items:center;
    flex:0 0 auto;
    border:1px solid var(--tone-border);
    border-radius:999px;
    background:var(--tone-bg);
    color:var(--tone);
    white-space:nowrap;
    overflow:hidden;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 5px 18px rgba(0,0,0,.08);
    transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.djpf-deal-pill:hover{
    transform:translateY(-1px);
    background:color-mix(in srgb,var(--tone) 14%,#07131c 86%);
    border-color:color-mix(in srgb,var(--tone) 62%,transparent);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 8px 22px rgba(0,0,0,.13);
}

.djpf-deal-pill.is-blue{
    --tone:#19bdf7;
    --tone-bg:rgba(0,165,236,.095);
    --tone-border:rgba(25,189,247,.42);
}

.djpf-deal-pill.is-green{
    --tone:#4be56d;
    --tone-bg:rgba(48,206,82,.095);
    --tone-border:rgba(75,229,109,.42);
}

.djpf-deal-pill.is-red{
    --tone:#ff3158;
    --tone-bg:rgba(255,35,80,.085);
    --tone-border:rgba(255,49,88,.45);
}

.djpf-deal-main{
    min-height:40px;
    padding:0 8px 0 12px;
    display:flex;
    align-items:center;
    gap:10px;
    color:inherit!important;
    text-decoration:none!important;
    outline:none;
}

.djpf-deal-main:focus-visible{
    box-shadow:inset 0 0 0 2px rgba(255,255,255,.55);
    border-radius:999px;
}

.djpf-deal-logo{
    width:28px;
    height:28px;
    flex:0 0 28px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    margin-left:-3px;
    border:1px solid color-mix(in srgb,var(--tone) 34%,rgba(255,255,255,.10));
    border-radius:8px;
    background:rgba(4,14,22,.56);
    color:#fff;
    font-size:11px;
    font-weight:800;
}

.djpf-deal-logo img{
    width:100%;
    height:100%;
    padding:3px;
    display:block;
    object-fit:contain;
}

.djpf-deal-firm{
    color:#f5f8fb;
    font-size:14px;
    line-height:1;
    font-weight:750;
    letter-spacing:-.025em;
}

.djpf-deal-dot{
    color:var(--tone);
    font-size:14px;
    line-height:1;
    opacity:.72;
}

.djpf-deal-offer{
    color:var(--tone);
    font-size:13px;
    line-height:1;
    font-weight:850;
    letter-spacing:.015em;
}

.djpf-deal-status{
    color:var(--tone);
    font-style:normal;
    font-size:10.5px;
    line-height:1;
    font-weight:750;
    letter-spacing:.12em;
    text-transform:uppercase;
    opacity:.93;
}

/* Coupon code and copy button */
.djpf-code-wrap{
    min-height:40px;
    padding:0 9px 0 3px;
    display:flex;
    align-items:center;
    gap:4px;
}

.djpf-deal-code{
    min-height:27px;
    padding:0 8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid color-mix(in srgb,var(--tone) 24%,transparent);
    border-radius:6px;
    background:rgba(2,10,17,.47);
    color:var(--tone);
    font-family:"JetBrains Mono","SFMono-Regular",Consolas,monospace;
    font-size:10.5px;
    line-height:1;
    font-weight:750;
    letter-spacing:.055em;
}

.djpf-copy-code{
    position:relative!important;
    width:29px!important;
    height:29px!important;
    min-width:29px!important;
    min-height:29px!important;
    margin:0!important;
    padding:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    border-radius:7px!important;
    background:transparent!important;
    color:var(--tone)!important;
    box-shadow:none!important;
    cursor:pointer!important;
    opacity:.88;
    transition:opacity .15s ease,background .15s ease,transform .15s ease;
}

.djpf-copy-code:hover{
    opacity:1;
    background:color-mix(in srgb,var(--tone) 11%,transparent)!important;
    transform:scale(1.04);
}

.djpf-copy-code:focus-visible{
    outline:2px solid var(--tone)!important;
    outline-offset:1px;
}

.djpf-copy-code svg{
    width:15px;
    height:15px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.djpf-copy-code .djpf-check-icon{
    display:none;
}

.djpf-copy-code.is-copied{
    background:color-mix(in srgb,var(--tone) 14%,transparent)!important;
    opacity:1;
}

.djpf-copy-code.is-copied .djpf-copy-icon{
    display:none;
}

.djpf-copy-code.is-copied .djpf-check-icon{
    display:block;
}

/* Right CTA */
.djpf-live-all{
    min-height:40px;
    padding:0 12px;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    border-left:1px solid rgba(255,255,255,.065);
    color:var(--djpf-live-mint)!important;
    font-size:12px;
    line-height:1;
    font-weight:750;
    text-decoration:none!important;
    white-space:nowrap;
    transition:color .15s ease,transform .15s ease;
}

.djpf-live-all:hover{
    color:#8bffd5!important;
    transform:translateX(2px);
}

.djpf-live-all.is-disabled{
    opacity:.48;
}

.djpf-live-empty{
    width:100%;
    padding:13px 18px;
    border-top:1px solid rgba(98,151,186,.14);
    border-bottom:1px solid rgba(98,151,186,.14);
    background:#07131c;
    color:#91a4b4;
    font:12px/1.45 "Space Grotesk",Inter,sans-serif;
    text-align:center;
}

@keyframes djpf-live-marquee{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(calc(-1 * var(--djpf-distance,0px)),0,0)}
}

@media (prefers-reduced-motion:reduce){
    .djpf-marquee-rail.is-running{
        animation:none!important;
        transform:none!important;
    }
    .djpf-marquee-viewport{
        overflow-x:auto;
        -webkit-mask-image:none;
        mask-image:none;
        scrollbar-width:none;
    }
    .djpf-marquee-viewport::-webkit-scrollbar{display:none}
    .djpf-marquee-clone{display:none!important}
}

@media(max-width:1100px){
    .djpf-live-deals-inner{
        width:100%;
        min-height:64px;
        padding:0 14px;
        grid-template-columns:122px minmax(0,1fr);
        gap:10px;
    }

    .djpf-live-all{
        display:none;
    }

    .djpf-live-label{
        min-height:38px;
        padding:0 11px;
    }

    .djpf-live-label strong{
        font-size:12px;
    }

    .djpf-deal-pill{
        min-height:40px;
    }

    .djpf-deal-main{
        min-height:38px;
    }
}

@media(max-width:767px){
    .djpf-live-deals-inner{
        min-height:58px;
        padding:0 10px;
        grid-template-columns:94px minmax(0,1fr);
        gap:8px;
    }

    .djpf-live-label{
        min-height:36px;
        padding:0 9px;
        gap:6px;
    }

    .djpf-live-label strong{
        font-size:10.5px;
    }

    .djpf-live-dot{
        width:6px;
        height:6px;
        flex-basis:6px;
        box-shadow:0 0 0 4px rgba(88,239,189,.07);
    }

    .djpf-marquee-viewport{
        -webkit-mask-image:none;
        mask-image:none;
    }

    .djpf-marquee-rail,
    .djpf-marquee-group{
        --djpf-gap:9px;
    }

    .djpf-deal-pill{
        min-height:38px;
    }

    .djpf-deal-main{
        min-height:36px;
        padding:0 6px 0 10px;
        gap:7px;
    }

    .djpf-deal-logo{
        width:24px;
        height:24px;
        flex-basis:24px;
        border-radius:7px;
    }

    .djpf-deal-firm{
        font-size:12px;
    }

    .djpf-deal-offer{
        font-size:11.5px;
    }

    .djpf-deal-status{
        font-size:9px;
        letter-spacing:.09em;
    }

    .djpf-deal-dot{
        font-size:12px;
    }

    .djpf-code-wrap{
        min-height:36px;
        padding-right:6px;
    }

    .djpf-deal-code{
        min-height:25px;
        padding:0 6px;
        font-size:9.5px;
    }

    .djpf-copy-code{
        width:27px!important;
        height:27px!important;
        min-width:27px!important;
        min-height:27px!important;
    }

    .djpf-copy-code svg{
        width:14px;
        height:14px;
    }
}

@media(max-width:480px){
    .djpf-live-deals-inner{
        grid-template-columns:86px minmax(0,1fr);
        padding:0 8px;
    }

    .djpf-live-label strong{
        font-size:10px;
    }

    .djpf-deal-logo{
        display:none;
    }

    .djpf-deal-dot-tag,
    .djpf-deal-status{
        display:none;
    }
}
