:root {
    --zl-bg: #0b0f14;
    --zl-card: #111827;
    --zl-border: rgba(255, 255, 255, .10);
    --zl-text: rgba(255, 255, 255, .88);
    --zl-muted: rgba(255, 255, 255, .68);
    --zl-accent: #03c4eb;
    --zl-radius: 0.375rem;;
    --zl-shadow: 0 16px 40px rgba(0, 0, 0, .45);
}

.zl-cookie-banner {
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 16px;
    z-index: 999999;
    display: none;
}

.zl-cookie-banner.is-open {
    display: block !important;
}

.zl-cookie-inner {
    margin: 0 auto;
    background: #121212;
    border: 1px solid var(--zl-border);
    border-radius: var(--zl-radius);
    box-shadow: var(--zl-shadow);
    color: var(--zl-text);
    padding: 16px 18px;
    display: flex;
    gap: 16px;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 1000px;
}

.zl-cookie-text {
    font-size: 14px;
    line-height: 1.45;
    color: var(--zl-muted);
}

.zl-cookie-text strong {
    color: var(--zl-text);
    font-weight: 600;
}

.zl-cookie-actions {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
}

.zl-btn {
    border-radius: 12px;
    padding: 10px 14px;
    border: 1px solid var(--zl-border);
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    transition: border-color .12s ease, background .12s ease;
}

.zl-btn-primary {
    background: rgba(3, 196, 235, .18);
    border-color: rgba(3, 196, 235, .45);
    color: var(--zl-text);
}

.zl-btn-primary:hover {
    background: rgba(3, 196, 235, .26);
    border-color: rgba(3, 196, 235, .65);
}

.zl-btn-secondary {
    background: rgba(255, 255, 255, .04);
    color: var(--zl-text);
}

.zl-btn-secondary:hover {
    background: rgba(255, 255, 255, .06);
    border-color: rgba(255, 255, 255, .18);
}

@media (max-width: 768px) {
    .zl-cookie-inner {
        flex-direction: column;
        align-items: stretch;
    }

    .zl-cookie-actions {
        justify-content: flex-end;
        width: 100%;
    }
}