/* cookie_consent.css */

:root{
  --ck-bg: rgba(12,18,24,.94);
  --ck-line: rgba(255,255,255,.14);
  --ck-text: rgba(232,240,246,.92);
  --ck-muted: rgba(197,208,223,.88);
  --ck-shadow: 0 18px 46px rgba(0,0,0,.55);

  --ck-accent: #2dd4ff;
  --ck-accent2: #ff4444;
}

.ck-banner[hidden]{ display:none !important; }

.ck-banner{
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 300;
  border: 1px solid var(--ck-line);
  border-radius: 14px;
  background: var(--ck-bg);
  box-shadow: var(--ck-shadow);
  backdrop-filter: blur(10px);
  padding: 14px 14px;
}

.ck-row{
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px;
  align-items: center;
}

.ck-text{
  min-width: 0;
}

.ck-title{
  margin: 0 0 6px 0;
  font-weight: 950;
  color: var(--ck-text);
  letter-spacing: .2px;
}

.ck-sub{
  margin: 0 0 10px 0;
  color: var(--ck-muted);
  line-height: 1.35;
  font-size: 13px;
}

.ck-links{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
  font-size: 13px;
}

.ck-links a{
  color: var(--ck-text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.ck-links .muted{
  color: var(--ck-muted);
}

.ck-actions{
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.ck-btn{
  appearance: none;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.08);
  color: var(--ck-text);
  border-radius: 12px;
  padding: 10px 12px;
  font-weight: 900;
  cursor: pointer;
  white-space: nowrap;
}

.ck-btn:hover{
  filter: brightness(1.04);
}

.ck-btn.ghost{
  background: transparent;
  border-color: rgba(255,255,255,.14);
  color: var(--ck-muted);
}

.ck-btn.primary{
  border-color: rgba(45,212,255,.55);
  background: linear-gradient(90deg, rgba(45,212,255,.18), rgba(255,68,68,.10));
}

.ck-open{
  position: fixed;
  right: 14px;
  bottom: 14px;
  z-index: 299;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.32);
  color: rgba(232,240,246,.92);
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(0,0,0,.35);
  backdrop-filter: blur(8px);
}

.ck-open:hover{
  filter: brightness(1.05);
}

/* Responsive */
@media (max-width: 860px){
  .ck-row{
    grid-template-columns: 1fr;
  }

  .ck-actions{
    justify-content: stretch;
  }

  .ck-btn{
    width: 100%;
    justify-content: center;
  }

  .ck-open{
    right: 12px;
    bottom: 12px;
  }
}

/* Sehr kleine Screens */
@media (max-width: 420px){
  .ck-banner{
    left: 10px;
    right: 10px;
    bottom: 10px;
    padding: 12px 12px;
  }

  .ck-title{
    font-size: 14px;
  }

  .ck-sub{
    font-size: 12.5px;
  }
}