/* Equal prominence for accept and reject; unobtrusive, non-modal notice. */
.consent-notice[hidden] { display: none !important; }
.consent-notice { position: fixed; z-index: 10000; inset: auto 1rem 1rem; margin-inline: auto; max-width: 1240px; max-height: 80vh; overflow: auto; padding: 1rem 1.25rem; background: #fff; color: #182e44; border: 2px solid var(--accent, #b86b4b); border-radius: 12px; box-shadow: 0 5px 32px #102c4530; font: 1rem/1.5 Arial, sans-serif; }
.consent-notice h2 { margin: 0 0 .5rem; font-size: 1.15rem; }
.consent-notice p { margin: .5rem 0; }
.consent-notice a { color: #143f60; text-decoration: underline; }
.consent-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.consent-actions button { flex: 1 1 220px; padding: .8rem; min-height: 44px; border: 2px solid #183c59; border-radius: 6px; background: #183c59; color: white; font: inherit; font-weight: 600; cursor: pointer; }
.cookie-settings { border: 0; padding: 0; background: none; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
.consent-actions button:focus-visible, .cookie-settings:focus-visible { outline: 3px solid #bc572f; outline-offset: 3px; }
.cookie-table-scroll { overflow-x: auto; }
.cookie-table { width: 100%; border-collapse: collapse; font-size: .95rem; }
.cookie-table caption { text-align: left; font-weight: bold; padding: .5rem 0; }
.cookie-table th, .cookie-table td { padding: .7rem; border: 1px solid #bacbd3; text-align: left; vertical-align: top; }

/* Wide, shallow desktop bar. Mobile retains readable stacked controls. */
@media (min-width: 1000px) {
  .consent-notice { display: grid; grid-template-columns: minmax(0, 1fr) 390px; column-gap: 1.5rem; align-items: center; font-size: .9375rem; }
  .consent-notice h2 { grid-column: 1; grid-row: 1; margin-bottom: .15rem; }
  .consent-notice > p { grid-column: 1; margin: .15rem 0; }
  .consent-notice > p:first-of-type { grid-row: 2; }
  .consent-notice > p:last-of-type { grid-row: 3; }
  .consent-actions { grid-column: 2; grid-row: 1 / 4; margin: 0; }
  .consent-actions button { flex: 1 1 170px; padding: .65rem .75rem; }
  .consent-actions [data-consent-close] { flex-basis: 100%; }
}
@media (max-width: 599px) {
  .consent-notice { inset: auto .65rem .65rem; padding: 1rem; }
  .consent-actions { gap: .5rem; }
  .consent-actions button { flex-basis: 100%; }
}
