/* KDES — cookie consent banner (public/assets/css/cookie-consent.css)
   Kept as its own file (rather than merged into main.min.css) so it can be
   dropped in/out independently of the main stylesheet build. */

.cookie-banner{
  position:fixed;
  left:0;right:0;bottom:0;
  z-index:2000;
  background:rgba(10,10,10,0.92);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  border-top:1px solid var(--border);
  box-shadow:0 -8px 32px rgba(0,0,0,0.35);
  padding:20px 24px;
  transform:translateY(110%);
  opacity:0;
  transition:transform 0.35s ease, opacity 0.35s ease;
  pointer-events:none;
}
.cookie-banner.is-visible{
  transform:translateY(0);
  opacity:1;
  pointer-events:auto;
}
.cookie-banner-inner{
  max-width:1280px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
}
.cookie-banner-text{
  font-size:0.82rem;
  line-height:1.6;
  color:var(--g1);
  flex:1 1 420px;
  min-width:0;
}
.cookie-banner-text a{
  color:var(--white);
  text-decoration:underline;
  text-underline-offset:2px;
}
.cookie-banner-text a:hover{ color:var(--red); }
.cookie-banner-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  flex-wrap:wrap;
}
.cookie-banner-actions .cookie-btn{
  font-size:0.74rem;
  padding:11px 20px;
  white-space:nowrap;
}

@media (max-width:640px){
  .cookie-banner{ padding:18px 20px calc(18px + env(safe-area-inset-bottom)); }
  .cookie-banner-inner{ flex-direction:column; align-items:stretch; gap:16px; }
  .cookie-banner-actions{ justify-content:stretch; }
  .cookie-banner-actions .cookie-btn{ flex:1 1 0; text-align:center; justify-content:center; }
}
