/*
 * Compact CookiePro banner for modern public pages.
 *
 * Keep this deliberately scoped to the banner on phone-sized viewports. The
 * preference centre and CookiePro's consent behaviour stay entirely
 * vendor-controlled.
 */
@media screen and (max-width: 575.98px),
  screen and (min-width: 576px) and (max-width: 900px) and (max-height: 575.98px) {
  body.inavmModernShell #onetrust-banner-sdk {
    width: calc(100% - 18px) !important;
    left: 9px !important;
    right: 9px !important;
    bottom: calc(9px + env(safe-area-inset-bottom, 0px)) !important;
    max-height: min(210px, calc(100vh - 18px)) !important;
    max-height: min(210px, calc(100dvh - 18px)) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    border-radius: 12px !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-policy {
    margin: 0 !important;
    padding: 8px 10px 0 !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-policy-text {
    margin: 0 38px 6px 0 !important;
    font-size: 12px !important;
    line-height: 1.34 !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-button-group-parent {
    padding: 0 10px 8px !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-button-group {
    width: 100% !important;
    display: grid !important;
    gap: 5px !important;
    margin: 0 !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-button-group button {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 6px 8px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }

  body.inavmModernShell #onetrust-banner-sdk .onetrust-close-btn-handler {
    min-width: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
  }
}

@media screen and (max-width: 575.98px) {
  body.inavmModernShell #onetrust-banner-sdk #onetrust-button-group {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-pc-btn-handler {
    grid-column: 1 / -1 !important;
  }
}

/* Keep every action immediately visible on older, very narrow phones. */
@media screen and (max-width: 340px) {
  body.inavmModernShell #onetrust-banner-sdk #onetrust-button-group {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 4px !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-pc-btn-handler {
    grid-column: auto !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-button-group button {
    padding: 6px 4px !important;
    font-size: 11px !important;
  }
}

/* A phone in landscape is wide but short, so use one compact action row. */
@media screen and (min-width: 576px) and (max-width: 900px) and (max-height: 575.98px) {
  body.inavmModernShell #onetrust-banner-sdk #onetrust-button-group {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.inavmModernShell #onetrust-banner-sdk #onetrust-pc-btn-handler {
    grid-column: auto !important;
  }
}
