.cookie-settings-link {
  appearance: none;
  border: 0;
  padding: 0;
  background: transparent;
  color: rgba(255,255,255,.3);
  font: 500 12px/1 var(--font-sans, Manrope, system-ui, sans-serif);
  cursor: pointer;
  transition: color .13s;
}
.cookie-settings-link:hover,
.cookie-settings-link:focus-visible { color: rgba(255,255,255,.75); }
.cookie-consent {
  position: fixed;
  right: 24px;
  bottom: 24px;
  left: auto;
  z-index: 2500;
  width: min(460px, calc(100vw - 32px));
  padding: 22px;
  border: 1px solid #D5E0EE;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(14,42,74,.2);
  color: #0E2A4A;
  font-family: var(--font-sans, Manrope, system-ui, sans-serif);
}
.cookie-consent[hidden] { display: none; }
.cookie-consent h2 { margin: 0 0 8px; font-size: 18px; font-weight: 800; }
.cookie-consent p { margin: 0; color: #536B88; font-size: 13px; line-height: 1.55; }
.cookie-consent__text-link {
  appearance: none;
  padding: 0;
  border: 0;
  background: transparent;
  color: #1F5FA0;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}
.cookie-consent__text-link:hover { color: #174C82; text-decoration: underline; }
.cookie-consent__actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 17px; }
.cookie-btn { min-height: 38px; padding: 9px 13px; border-radius: 8px; font: 700 13px/1 var(--font-sans, Manrope, system-ui, sans-serif); cursor: pointer; }
.cookie-btn--secondary { border: 1px solid #9CB9D9; background: #fff; color: #174C82; }
.cookie-btn--primary { border: 1px solid #1F5FA0; background: #1F5FA0; color: #fff; }
.cookie-btn:hover { filter: brightness(.96); }
.cookie-btn:focus-visible,
.cookie-settings-link:focus-visible,
.cookie-consent__text-link:focus-visible { outline: 3px solid #A9C7E8; outline-offset: 3px; }
.cookie-preferences {
  box-sizing: border-box;
  width: min(520px, calc(100vw - 32px));
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  padding: 26px;
  border: 1px solid #D5E0EE;
  border-radius: 16px;
  background: #fff;
  color: #0E2A4A;
  box-shadow: 0 18px 50px rgba(14,42,74,.2);
  font-family: var(--font-sans, Manrope, system-ui, sans-serif);
}
.cookie-preferences::backdrop { background: rgba(14,42,74,.45); }
.cookie-preferences h2 { margin: 0 0 12px; font-size: 21px; font-weight: 800; }
.cookie-preferences p { margin: 0 0 16px; color: #536B88; font-size: 14px; line-height: 1.55; }
.cookie-preferences a { color: #1F5FA0; font-weight: 700; }
.cookie-preferences__option { display: flex; align-items: flex-start; gap: 12px; padding: 15px; margin-bottom: 12px; border: 1px solid #E3EAF3; border-radius: 10px; cursor: pointer; }
.cookie-preferences__option input { width: 18px; height: 18px; flex: 0 0 18px; margin-top: 3px; accent-color: #1F5FA0; }
.cookie-preferences__option strong { display: block; font-size: 14px; font-weight: 800; }
.cookie-preferences__option small { display: block; margin-top: 4px; color: #536B88; font-size: 13px; line-height: 1.5; }
.cookie-preferences__option input:focus-visible { outline: 3px solid #A9C7E8; outline-offset: 3px; }
@media (max-width: 560px) {
  .cookie-consent { right: 16px; bottom: 16px; padding: 18px; }
  .cookie-preferences { padding: 20px; }
  .cookie-consent__actions { align-items: stretch; flex-direction: column-reverse; }
  .cookie-btn { width: 100%; }
}
