/*
 * NSN Affiliate Gate Brazil: front overlay.
 * Scope: .nsn-ag-* only. Loaded only on blocked articles.
 * z-index aligned with the nsn-requirements geoloc modal (1011).
 */

.nsn-ag-overlay {
  --nsn-ag-backdrop: rgba(12, 12, 12, 0.97);
  --nsn-ag-modal-bg: #fff;
  --nsn-ag-modal-color: #000;
  --nsn-ag-modal-border: #aaa;
  --nsn-ag-modal-width: 32rem;

  position: fixed;
  inset: 0;
  z-index: 1011;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: var(--nsn-ag-backdrop);
  -webkit-backdrop-filter: grayscale(1) blur(3px);
  backdrop-filter: grayscale(1) blur(3px);
}

.nsn-ag-overlay .nsn-ag-modal {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--nsn-ag-modal-width);
  max-height: calc(100vh - 2rem);
  overflow: auto;
  padding: 1.5rem;
  color: var(--nsn-ag-modal-color);
  text-align: center;
  background: var(--nsn-ag-modal-bg);
  border: 3px solid var(--nsn-ag-modal-border);
  outline: none;
}

.nsn-ag-overlay .nsn-ag-message > :first-child {
  margin-block-start: 0;
}

.nsn-ag-overlay .nsn-ag-message > :last-child {
  margin-block-end: 0;
}

/* Some themes reset <strong> to normal weight; the message title must stay bold. */
.nsn-ag-overlay .nsn-ag-message strong,
.nsn-ag-overlay .nsn-ag-message b {
  font-weight: 700;
}

html.nsn-ag-locked,
html.nsn-ag-locked body {
  overflow: hidden;
}
