.cookie-banner { position:fixed; z-index:100; left:24px; right:24px; bottom:24px; max-width:1180px; margin-inline:auto; background:#fff; color:#060b16; border:1px solid rgba(6,11,22,.15); box-shadow:0 24px 80px rgba(0,0,0,.28); padding:22px; display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center; }
.cookie-banner[hidden] { display:none; }
.cookie-banner h2 { margin:0 0 5px; font-family:"Bebas Neue",Impact,sans-serif; font-size:1.8rem; font-weight:400; letter-spacing:.02em; text-transform:uppercase; }
.cookie-banner p { margin:0; color:#5f6c7d; font-size:.92rem; max-width:720px; }
.cookie-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; }
.cookie-btn { min-height:46px; border-radius:999px; border:1px solid #c6d0dd; padding:0 18px; background:white; color:#060b16; font-weight:700; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; touch-action:manipulation; transition:transform .2s,background .2s,color .2s,border-color .2s; }
.cookie-btn:hover { transform:translateY(-2px); border-color:#2f7dff; }
.cookie-btn:active { transform:translateY(0) scale(.98); }
.cookie-btn:focus-visible,.cookie-close:focus-visible,.cookie-dialog-actions a:focus-visible { outline:3px solid #1e6df0; outline-offset:3px; }
.cookie-btn.primary { background:#1e6df0; color:white; border-color:#1e6df0; }
.cookie-btn.dark { background:#060b16; color:white; border-color:#060b16; }
.cookie-settings-link { border:0; padding:0; background:transparent; color:inherit; cursor:pointer; font:inherit; }
.cookie-settings-link:hover { color:white; }
.cookie-dialog { width:min(620px,calc(100% - 28px)); padding:0; border:0; color:#060b16; box-shadow:0 28px 100px rgba(0,0,0,.45); }
.cookie-dialog::backdrop { background:rgba(2,5,11,.78); backdrop-filter:blur(7px); }
.cookie-dialog-head { padding:26px 28px; background:#060b16; color:white; display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.cookie-eyebrow { font-family:"JetBrains Mono",monospace; font-size:.72rem; color:#6fe7ff; text-transform:uppercase; letter-spacing:.12em; }
.cookie-dialog-head h2 { margin:0; font-family:"Bebas Neue",Impact,sans-serif; font-size:2.5rem; font-weight:400; text-transform:uppercase; }
.cookie-close { width:46px; height:46px; border:1px solid rgba(255,255,255,.28); background:transparent; color:white; cursor:pointer; display:grid; place-items:center; }
.cookie-close svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.8; }
.cookie-dialog-body { padding:26px 28px 30px; }
.cookie-option { padding:18px 0; border-bottom:1px solid #dce3ed; display:grid; grid-template-columns:1fr auto; gap:20px; align-items:center; }
.cookie-option strong { display:block; }
.cookie-option p { margin:4px 0 0; color:#637083; font-size:.9rem; }
.cookie-state { padding:7px 10px; border-radius:999px; background:#e7f0ff; color:#1557c8; font-size:.78rem; font-weight:700; white-space:nowrap; }
.cookie-state.muted { background:#edf0f4; color:#566274; }
.cookie-dialog-actions { padding-top:22px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.cookie-dialog-actions a { color:#1557c8; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
@media (max-width:720px) { .cookie-banner { left:12px; right:12px; bottom:12px; grid-template-columns:1fr; padding:18px; } .cookie-actions { justify-content:flex-start; } .cookie-actions .cookie-btn { flex:1; } .cookie-dialog-body,.cookie-dialog-head { padding-left:20px; padding-right:20px; } .cookie-dialog-actions { align-items:stretch; flex-direction:column; } }
@media (prefers-reduced-motion:reduce) { .cookie-btn { transition:none; } }
