.cookie-consent {
  --cookie-ink: #edf8f6;
  --cookie-muted: #b1c4ca;
  --cookie-line: rgba(94, 218, 190, .3);
  color: var(--cookie-ink);
  font: inherit;
}

.cookie-consent[hidden] { display: none; }

.cookie-consent {
  position: fixed;
  z-index: 12000;
  right: clamp(16px, 2.2vw, 32px);
  bottom: clamp(16px, 2.2vw, 30px);
  width: min(430px, calc(100vw - 32px));
  padding: 22px;
  border: 1px solid var(--cookie-line);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(27, 62, 70, .94), rgba(15, 31, 48, .96));
  box-shadow: 0 24px 72px rgba(0, 8, 18, .48), inset 0 1px rgba(255,255,255,.06);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
  backdrop-filter: blur(22px) saturate(145%);
  animation: cookie-consent-enter .38s cubic-bezier(.2,.75,.25,1) both;
}

.cookie-consent-heading { display:flex; align-items:center; gap:13px; }
.cookie-consent-icon { width:42px; height:42px; flex:none; display:grid; place-items:center; border:1px solid var(--cookie-line); border-radius:14px; background:rgba(87,218,186,.1); color:#74edce; }
.cookie-consent-icon svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.cookie-consent-heading h2 { margin:2px 0 0; font-size:16px; line-height:1.3; letter-spacing:-.25px; color:var(--cookie-ink); }
.cookie-consent-eyebrow { margin:0; color:#69e7c7; font-size:9px; font-weight:750; letter-spacing:1.4px; }
.cookie-consent>p { margin:15px 0 0; color:var(--cookie-muted); font-size:12px; line-height:1.65; }
.cookie-consent-details { display:inline-flex; margin:12px 0 0; padding:0; border:0; color:#75e8cf; background:none; font:inherit; font-size:11px; font-weight:650; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.cookie-consent-details:hover { color:#a6ffdb; }
.cookie-consent-actions { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:18px; }
.cookie-consent-button { display:flex; justify-content:center; align-items:center; min-height:42px; padding:9px 11px; border:1px solid var(--cookie-line); border-radius:12px; font:inherit; font-size:11px; font-weight:700; cursor:pointer; transition:transform .18s ease, background .18s ease, border-color .18s ease; }
.cookie-consent-button:hover { transform:translateY(-1px); }
.cookie-consent-secondary { color:var(--cookie-ink); background:rgba(12,29,43,.38); }
.cookie-consent-secondary:hover { background:rgba(87,218,186,.12); border-color:rgba(94,218,190,.62); }
.cookie-consent-primary { color:#0d3029; border-color:transparent; background:linear-gradient(105deg,#55d8b8,#91f4c2); box-shadow:0 7px 22px rgba(55,210,173,.16); }
.cookie-consent-primary:hover { background:linear-gradient(105deg,#72e6c9,#a4ffd0); }
.cookie-preferences-popup { border:1px solid #5adabc55 !important; border-radius:19px !important; background:linear-gradient(145deg,#1b3b47,#132538) !important; color:#eff8f5 !important; box-shadow:0 24px 80px #0009 !important; }
.cookie-preferences-popup .swal2-title { color:#eff8f5 !important; font-size:22px !important; }
.cookie-preferences-popup .swal2-html-container { color:#bfd0d3 !important; text-align:left !important; font-size:13px !important; line-height:1.65 !important; }
.cookie-preferences-content { display:grid; gap:12px; }
.cookie-preferences-content p { margin:0; }
.cookie-preferences-row { display:flex; justify-content:space-between; align-items:center; gap:14px; padding:13px 14px; border:1px solid #5adabc2b; border-radius:13px; background:#0f2131a8; }
.cookie-preferences-row strong,.cookie-preferences-row small { display:block; }
.cookie-preferences-row strong { color:#edf8f6; font-size:13px; }
.cookie-preferences-row small { margin-top:3px; color:#a9bec4; font-size:11px; line-height:1.5; }
.cookie-preferences-state { flex:none; padding:5px 9px; border:1px solid #68e5c54d; border-radius:999px; color:#8cf0cd; font-size:10px; font-weight:700; white-space:nowrap; }
.cookie-preferences-note { padding:12px 14px; border-left:2px solid #62dfbf; border-radius:0 10px 10px 0; background:#5adabc10; }
.cookie-preferences-popup .swal2-confirm,.cookie-preferences-popup .swal2-cancel { border-radius:11px !important; font-size:12px !important; font-weight:700 !important; }
@keyframes cookie-consent-enter { from { opacity:0; transform:translateY(14px) scale(.985); } to { opacity:1; transform:translateY(0) scale(1); } }
@media (max-width:520px) {
  .cookie-consent { right:12px; bottom:12px; width:calc(100vw - 24px); padding:18px; border-radius:17px; }
  .cookie-consent-heading h2 { font-size:15px; }
  .cookie-consent>p { font-size:12px; }
  .cookie-consent-actions { gap:7px; }
  .cookie-consent-button { min-height:44px; padding:8px 7px; font-size:10px; }
}
@media (prefers-reduced-motion: reduce) { .cookie-consent { animation:none; } .cookie-consent-button { transition:none; } }
