.consent-banner { --c-ink:#0a0a0a; --c-muted:#555; --c-accent:#d7ff00; --c-paper:#ebe6db; --f-mono:monospace; --ease:ease; box-sizing:border-box; font-family:Arial,sans-serif; }
.consent-banner[hidden] { display: none; }
.consent-banner {
    position: fixed;
    left: max(20px, env(safe-area-inset-left));
    right: max(20px, env(safe-area-inset-right));
    bottom: max(20px, env(safe-area-inset-bottom));
    z-index: 260;
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding: 12px 14px 12px 18px;
    color: var(--c-ink);
    background: rgba(235, 230, 219, .96);
    border: 1px solid rgba(10, 10, 10, .2);
    border-radius: 6px;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
    backdrop-filter: blur(14px);
    opacity: 0;
    pointer-events: none;
    transform: translateY(18px);
    transition: opacity .26s var(--ease), transform .26s var(--ease);
}
.consent-banner.is-visible {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}
.consent-copy {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 16px;
}
.consent-copy strong {
    display: block;
    font-family: var(--f-mono);
    font-size: 11px;
    letter-spacing: .18em;
    line-height: 1.35;
    text-transform: uppercase;
    flex: 0 0 auto;
}
.consent-copy p {
    max-width: 680px;
    color: var(--c-muted);
    font-size: 13.5px;
    line-height: 1.35;
}
.consent-actions {
    display: flex;
    align-items: center;
    gap: 8px;
}
.consent-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 10px 14px;
    border: 1px solid var(--c-ink);
    border-radius: 4px;
    font-family: var(--f-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .14em;
    line-height: 1;
    text-transform: uppercase;
    transition: background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
}
.consent-btn-ghost { color: var(--c-ink); }
.consent-btn-primary {
    color: var(--c-ink);
    background: var(--c-accent);
    border-color: var(--c-accent);
}
.consent-btn:hover {
    color: var(--c-paper);
    background: var(--c-ink);
    border-color: var(--c-ink);
}
.consent-btn:focus-visible,
.foot-link:focus-visible {
    outline: 2px solid var(--c-accent);
    outline-offset: 3px;
}


.case-cookie-controls { text-align:center; padding:16px; font:12px monospace; }
.case-cookie-controls button { background:none; border:0; color:inherit; cursor:pointer; font:inherit; }
@media(max-width:800px) { .consent-banner { left:12px; right:12px; grid-template-columns:1fr; gap:12px; } .consent-copy { display:block; } .consent-copy p { margin:8px 0 0; } .consent-actions { flex-wrap:wrap; } }
