.cookie-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: grid;
  place-items: center;
  padding: 16px;
  background: rgba(10, 10, 25, 0.6);
  animation: cookie-fade 220ms ease;
}
.cookie-overlay[hidden] { display: none !important; }
.cookie-modal {
  position: relative;
  width: 100%;
  max-width: 480px;
  margin: 0;
  padding: 40px 40px 36px;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 20px 60px rgba(20, 15, 60, 0.2);
  animation: cookie-pop 220ms ease;
}
.cookie-modal:focus { outline: none; }
.cookie-close {
  position: absolute;
  top: 20px;
  right: 22px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  color: #151638;
  background: transparent;
  border: none;
  cursor: pointer;
}
.cookie-title {
  margin: 0 28px 16px 0;
  color: #151638;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.03em;
}
.cookie-copy {
  margin: 0;
  color: #343451;
  font-size: 15.5px;
  font-weight: 400;
  line-height: 1.6;
}
.cookie-copy a {
  color: #6546e8;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.cookie-actions {
  display: flex;
  gap: 12px;
  margin-top: 26px;
}
.cookie-decline,
.cookie-accept {
  flex: 1 1 0;
  height: 46px;
  padding: 0 16px;
  border-radius: 26px;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
}
.cookie-decline {
  color: #7048f5;
  background: #fff;
  border: 1.5px solid #7048f5;
}
.cookie-decline:hover { background: #f6f3ff; }
.cookie-accept {
  color: #fff;
  background: linear-gradient(90deg, #7048f5, #6338e8);
  border: none;
}
.cookie-accept:hover { background: linear-gradient(90deg, #6338e8, #5429d6); }
body.cookie-lock { overflow: hidden; }
@keyframes cookie-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes cookie-pop {
  from { opacity: 0; transform: scale(0.96); }
  to { opacity: 1; transform: scale(1); }
}
@media (max-width: 640px) {
  .cookie-modal { padding: 28px; }
  .cookie-title { font-size: 24px; }
  .cookie-copy { font-size: 14.5px; }
}
@media (max-width: 380px) {
  .cookie-actions { flex-direction: column; }
}
