.cookie-panel {
  position: fixed;
  inset-inline: max(.75rem, env(safe-area-inset-left)) max(.75rem, env(safe-area-inset-right));
  bottom: max(.75rem, env(safe-area-inset-bottom));
  box-sizing: border-box;
  max-width: 34rem;
  margin-inline: auto;
  padding: 1rem;
  background: var(--surface, #fff);
  color: var(--text, #123);
  border: 1px solid var(--border, #abc);
  border-radius: 12px;
  box-shadow: 0 6px 24px #0002;
  z-index: 10000;
  max-height: min(70vh, 70dvh);
  overflow: auto;
}
.cookie-panel[hidden] { display: none; }
.cookie-panel h2 { font-size: 1rem; line-height: 1.3; margin: 0 0 .4rem; }
.cookie-panel p { font-size: .8125rem; line-height: 1.45; margin: .35rem 0; }
.cookie-panel [data-cookie-status]:empty { display: none; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .65rem; }
.cookie-actions button {
  flex: 1 1 auto;
  min-height: 44px;
  padding: .5rem .7rem;
  border: 1px solid var(--muted, #456);
  border-radius: 8px;
  background: var(--bg, #fff);
  color: inherit;
  font: inherit;
  font-size: .8125rem;
  line-height: 1.3;
  cursor: pointer;
}
.cookie-actions button:focus-visible,
[data-cookie-settings]:focus-visible { outline: 3px solid #09a; outline-offset: 3px; }
.footer-col button[data-cookie-settings] {
  display: block;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  padding: 0;
  text-align: start;
  cursor: pointer;
  margin-top: 1rem;
}
@media (max-width: 480px) {
  .cookie-panel { padding: .75rem; }
  .cookie-actions button { flex: 1 1 calc(50% - .5rem); }
  .cookie-actions button[data-close] { flex-basis: 100%; }
}
