.cookie-notice {
  position: fixed;
  z-index: 200;
  inset: auto auto 1.25rem 1.25rem;
  width: min(28rem, calc(100% - 2.5rem));
  max-height: calc(100dvh - 2.5rem);
  overflow-y: auto;
  padding: 1.25rem;
  color: #e1e7ef;
  background: #09203a;
  border: 1px solid #c59a3d55;
  border-radius: 1rem;
  box-shadow: 0 12px 40px #03132630;
  font: 400 .875rem/1.55 Arial, sans-serif;
}
.cookie-notice[hidden] { display: none; }
.cookie-title { display: block; margin-bottom: .4rem; color: #f2cf7b; font-size: .9375rem; font-weight: 600; letter-spacing: .01em; }
.cookie-notice p { margin: 0; font: inherit; }
.cookie-notice a { color: #f2cf7b; text-decoration: underline; text-decoration-color: #f2cf7b77; text-underline-offset: .2em; }
.cookie-notice a:hover { text-decoration-color: currentColor; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: .625rem; margin-top: 1rem; }
.cookie-actions button {
  flex: 1 1 8rem;
  min-height: 44px;
  padding: .65rem .8rem;
  color: #fff2c9;
  background: #ffffff08;
  border: 1px solid #c59a3d88;
  border-radius: .6rem;
  font: 600 .875rem/1.3 Arial, sans-serif;
  cursor: pointer;
  transition: background .15s, border-color .15s;
}
.cookie-actions button:hover { background: #c59a3d20; border-color: #f2cf7b; }
.cookie-actions button[hidden] { display: none; }
.cookie-settings { background: transparent; color: inherit; border: 0; padding: 0; font: inherit; text-align: left; cursor: pointer; text-decoration: underline; text-underline-offset: .2em; }
.cookie-notice :focus-visible { outline: 2px solid #f2cf7b; outline-offset: 3px; }
.cookie-settings:focus-visible { outline: 3px solid #2e74b5; outline-offset: 3px; }
@media (max-width: 760px) {
  .cookie-notice { inset: auto .75rem .75rem; width: auto; max-height: calc(100dvh - 1.5rem); padding: 1rem; }
  body.cookie-notice-open .mobile-purchase-bar,
  body.cookie-notice-open .help-widget { visibility: hidden; }
}
@media (prefers-reduced-motion: reduce) { .cookie-actions button { transition: none; } }
