/* Consent controls match the existing navy, cyan and silver panels. */
.cookie-panel, .cookie-settings-shortcut { font-family: 'Outfit', sans-serif; }
.cookie-panel[hidden], .cookie-settings-shortcut[hidden], .cookie-options[hidden], .cookie-policy-link[hidden], .cookie-actions button[hidden] { display: none; }
.cookie-panel {
  position: fixed;
  z-index: 1200;
  left: 20px;
  bottom: calc(20px + env(safe-area-inset-bottom, 0px));
  width: min(460px, calc(100vw - 40px));
  max-height: min(75dvh, 590px);
  overflow-y: auto;
  padding: 22px;
  color: #eaf7fc;
  background: rgba(7, 17, 30, .97);
  border: 1px solid rgba(25, 198, 232, .35);
  border-radius: 20px;
  box-shadow: 0 18px 46px rgba(0, 0, 0, .52);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.cookie-panel h2 { font: 600 21px/1.3 'Syne', sans-serif; margin-bottom: 10px; }
.cookie-panel p { color: #c7d5e3; font-size: 14px; line-height: 1.55; margin-bottom: 16px; }
.cookie-options { display: grid; gap: 10px; margin-bottom: 16px; }
.cookie-option {
  display: flex; justify-content: space-between; align-items: center; gap: 16px;
  padding: 12px;
  border: 1px solid rgba(150, 190, 220, .2);
  border-radius: 12px;
  background: rgba(12, 32, 50, .72);
  cursor: pointer;
}
.cookie-option span { min-width: 0; }
.cookie-option strong { display: block; font-size: 14px; line-height: 1.4; color: #eaf7fc; }
.cookie-option small { display: block; font-size: 12px; line-height: 1.4; color: #bdcedc; margin-top: 3px; }
.cookie-option input { flex: 0 0 18px; width: 18px; height: 18px; accent-color: var(--primary); cursor: pointer; }
.cookie-option input:disabled { cursor: default; }
.cookie-policy-link { display: inline-block; margin-bottom: 14px; color: var(--primary); font-size: 13px; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.cookie-actions button {
  min-height: 44px;
  padding: 9px 15px;
  color: #eaf7fc;
  background: rgba(10, 37, 62, .76);
  border: 1px solid rgba(25, 198, 232, .38);
  border-radius: 12px;
  font: 500 13px/1.35 'Outfit', sans-serif;
  cursor: pointer;
}
#cookieAccept { background: rgba(17, 90, 116, .76); border-color: rgba(25, 198, 232, .68); }
.cookie-actions button:hover { background: rgba(25, 198, 232, .16); }
.cookie-footer-link { color: var(--primary); background: none; border: 0; padding: 8px 4px; font: inherit; letter-spacing: inherit; text-decoration: underline; cursor: pointer; }
.cookie-settings-shortcut {
  position: fixed;
  z-index: 999;
  left: 14px;
  bottom: calc(14px + env(safe-area-inset-bottom, 0px));
  min-height: 44px;
  padding: 8px 12px;
  color: #d7eaf2;
  background: rgba(7, 17, 30, .9);
  border: 1px solid rgba(150, 190, 220, .32);
  border-radius: 12px;
  font: 500 12px/1.35 'Outfit', sans-serif;
  cursor: pointer;
}
.cookie-panel button:focus-visible, .cookie-panel input:focus-visible, .cookie-panel a:focus-visible, .cookie-footer-link:focus-visible, .cookie-settings-shortcut:focus-visible {
  outline: 2px solid var(--primary); outline-offset: 3px;
}
@media (max-width: 600px) {
  .cookie-panel { left: 12px; width: calc(100vw - 24px); bottom: calc(76px + env(safe-area-inset-bottom, 0px)); max-height: min(68dvh, calc(100dvh - 100px)); padding: 16px; }
  .cookie-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cookie-actions button { min-width: 0; padding: 9px 6px; }
}
