/*
 * AVDS 4.7.0 static consumer bridge. Source: 0bf10e3beff02b5dc51620f17742c00d99d7d425.
 *
 * Published pattern contracts are reused as semantic attributes over
 * QRadio's server-rendered markup. AV DS owns states, spacing and focus
 * behavior; QRadio keeps its broadcast palette and audio composition.
 */
:root {
  --avds-qradio-ink: var(--qr-ink, hsl(var(--foreground)));
  --avds-qradio-muted: var(--qr-muted, hsl(var(--muted-foreground)));
  --avds-qradio-line: var(--qr-line, hsl(var(--border)));
  --avds-qradio-surface: var(--qr-panel, hsl(var(--card)));
  --avds-qradio-accent: var(--qr-signal, hsl(var(--primary)));
  --avds-qradio-radius: var(--qr-radius, var(--radius));
  --avds-qradio-focus: hsl(var(--ring));
}

body.qradio-editorial.qradio-modern {
  --av-color-foreground: var(--avds-qradio-ink);
  --av-color-muted-foreground: var(--avds-qradio-muted);
  --av-color-border: var(--avds-qradio-line);
  --av-color-surface: var(--avds-qradio-surface);
  --av-color-primary: var(--avds-qradio-accent);
  --av-radius-md: var(--avds-qradio-radius);
  --av-radius-lg: var(--avds-qradio-radius);
}

body.qradio-editorial.qradio-modern :where(a, button, input, select, textarea):focus-visible {
  outline: 2px solid var(--avds-qradio-focus);
  outline-offset: 3px;
}

[data-avds-pattern="evidence-reading-surface"] {
  position: relative;
}

[data-avds-pattern="evidence-reading-surface"]::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border: 1px solid color-mix(in srgb, var(--avds-qradio-line) 70%, transparent);
  border-radius: inherit;
}

[data-avds-pattern="operational-health-grid"] > .operator-health-item {
  position: relative;
  overflow: hidden;
  transition: border-color .2s ease, background-color .2s ease;
}

[data-avds-pattern="operational-health-grid"] > .operator-health-item::before {
  position: absolute;
  top: .72rem;
  right: .72rem;
  width: .42rem;
  height: .42rem;
  border-radius: 50%;
  background: #a5adaf;
  content: "";
}

[data-avds-pattern="operational-health-grid"] > .operator-health-item[data-health-status="healthy"]::before {
  background: #2d685d;
  box-shadow: 0 0 0 .22rem color-mix(in srgb, #2d685d 14%, transparent);
}

[data-avds-pattern="operational-health-grid"] > .operator-health-item[data-health-status="degraded"]::before {
  background: #a66a2a;
  box-shadow: 0 0 0 .22rem color-mix(in srgb, #a66a2a 14%, transparent);
}

[data-avds-pattern="operational-health-grid"] > .operator-health-item[data-health-status="offline"]::before {
  background: #b33a33;
  box-shadow: 0 0 0 .22rem color-mix(in srgb, #b33a33 14%, transparent);
}

[data-avds-pattern="operational-health-grid"][data-avds-state="unavailable"] {
  border-color: color-mix(in srgb, #b33a33 38%, var(--avds-qradio-line));
}

[data-avds-pattern="operational-health-grid"][data-avds-state="degraded"] {
  border-color: color-mix(in srgb, #a66a2a 38%, var(--avds-qradio-line));
}

[data-avds-pattern="evidence-provenance-strip"] {
  --avds-context-gap: clamp(1rem, 2.4vw, 1.5rem);
  margin-block: clamp(2rem, 5vw, 4rem);
}

.story-context-card {
  border-top: 1px solid var(--avds-qradio-line);
  border-bottom: 1px solid var(--avds-qradio-line);
  padding-block: var(--avds-context-gap);
  background: color-mix(in srgb, var(--avds-qradio-surface) 92%, var(--avds-qradio-line));
}

.story-context-note {
  max-width: 58ch;
  margin: 0 0 1rem;
  color: var(--avds-qradio-muted);
  font-size: .78rem;
  line-height: 1.55;
}

.story-context-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.story-context-list li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: start;
  padding: 1rem 0;
  border-top: 1px solid color-mix(in srgb, var(--avds-qradio-line) 75%, transparent);
}

.story-context-list li > div {
  min-width: 0;
}

.story-context-list small,
.story-context-status {
  display: block;
  color: var(--avds-qradio-muted);
  font-family: var(--qr-mono, ui-monospace, monospace);
  font-size: .62rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.story-context-list strong {
  display: block;
  max-width: 62ch;
  margin-top: .35rem;
  font-size: 1rem;
  line-height: 1.25;
}

.story-context-list p {
  max-width: 70ch;
  margin: .45rem 0 0;
  color: var(--avds-qradio-muted);
  font-size: .82rem;
  line-height: 1.5;
}

.story-context-list a {
  color: var(--avds-qradio-accent);
  font-size: 1.1rem;
  text-decoration: none;
}

.story-context-list a:hover {
  text-decoration: underline;
}

/* AV DS PublicExportMatrix: route-bound links keep source and readiness distinct. */
.story-export,
.podcast-export {
  margin-block: clamp(3rem, 7vw, 6.5rem);
}

.story-export .story-section-head,
.podcast-export .story-section-head {
  margin-bottom: 1.15rem;
}

.story-export-status {
  align-self: end;
  color: var(--avds-qradio-muted);
  font: .58rem/1 var(--qr-mono, ui-monospace, monospace);
  letter-spacing: .08em;
  white-space: nowrap;
}

.public-export-matrix {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--avds-qradio-line);
  background: var(--avds-qradio-line);
  list-style: none;
}

.public-export-matrix li {
  display: flex;
  min-height: 10rem;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1rem;
  background: var(--avds-qradio-surface);
}

.public-export-matrix li > div {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: .7rem;
  align-items: start;
}

.public-export-matrix li > div > span {
  color: var(--avds-qradio-accent);
  font: .58rem/1 var(--qr-mono, ui-monospace, monospace);
  letter-spacing: .08em;
}

.public-export-matrix strong,
.public-export-matrix small {
  grid-column: 2;
}

.public-export-matrix strong {
  margin-top: -.15rem;
  color: var(--avds-qradio-ink);
  font-size: .92rem;
  letter-spacing: -.02em;
  line-height: 1.15;
}

.public-export-matrix small {
  margin-top: .45rem;
  color: var(--avds-qradio-muted);
  font-size: .68rem;
  line-height: 1.4;
}

.public-export-matrix a {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: .3rem;
  color: var(--avds-qradio-accent);
  font-size: .72rem;
  font-weight: 700;
  text-decoration: none;
}

.public-export-matrix a:hover {
  text-decoration: underline;
  text-underline-offset: .2em;
}

.public-export-note {
  max-width: 68ch;
  margin: .9rem 0 0;
  color: var(--avds-qradio-muted);
  font-size: .72rem;
  line-height: 1.55;
}

/* QazLake official projections: source-bound context, never an editorial claim. */
.platform-qazlake {
  margin-block: clamp(3rem, 7vw, 6.5rem);
  border-top: 1px solid var(--avds-qradio-line);
  padding-top: clamp(1.4rem, 3vw, 2.4rem);
}

.platform-qazlake-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
}

.platform-qazlake-head h2 {
  max-width: 16ch;
  margin: .7rem 0 0;
  color: var(--avds-qradio-ink);
  font-size: clamp(1.8rem, 4vw, 3.4rem);
  letter-spacing: -.055em;
  line-height: .94;
}

.platform-qazlake-head h2 em {
  color: var(--avds-qradio-accent);
  font-style: normal;
}

.platform-qazlake-status {
  align-self: end;
  color: var(--avds-qradio-muted);
  font: .58rem/1 var(--qr-mono, ui-monospace, monospace);
  letter-spacing: .08em;
  white-space: nowrap;
}

.platform-qazlake-note {
  max-width: 60ch;
  margin: 1rem 0 1.3rem;
  color: var(--avds-qradio-muted);
  font-size: .75rem;
  line-height: 1.55;
}

.platform-qazlake-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid var(--avds-qradio-line);
  background: var(--avds-qradio-line);
}

.platform-qazlake-grid.has-macro-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.platform-qazlake-card {
  min-width: 0;
  padding: clamp(1rem, 2vw, 1.35rem);
  background: var(--avds-qradio-surface);
}

.platform-qazlake-card[data-card-kind="regional_comparison"] {
  grid-column: 1 / -1;
}

.platform-qazlake-card-head {
  padding-bottom: .85rem;
  border-bottom: 1px solid color-mix(in srgb, var(--avds-qradio-line) 75%, transparent);
}

.platform-qazlake-card-kind {
  display: block;
  color: var(--avds-qradio-muted);
  font: .57rem/1.2 var(--qr-mono, ui-monospace, monospace);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.platform-qazlake-card-title {
  margin: .45rem 0 0;
  color: var(--avds-qradio-ink);
  font-size: 1.1rem;
  letter-spacing: -.025em;
  line-height: 1.1;
}

.platform-qazlake-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: .85rem 0 0;
  padding: 0;
  background: color-mix(in srgb, var(--avds-qradio-line) 75%, transparent);
  list-style: none;
}

.platform-qazlake-card:not([data-card-kind="regional_comparison"]) .platform-qazlake-points {
  grid-template-columns: minmax(0, 1fr);
}

.platform-qazlake-point {
  min-width: 0;
  padding: .75rem;
  background: var(--avds-qradio-surface);
}

.platform-qazlake-point-label,
.platform-qazlake-point-detail {
  display: block;
  color: var(--avds-qradio-muted);
  font-size: .66rem;
  line-height: 1.35;
}

.platform-qazlake-point-value {
  display: block;
  margin-top: .35rem;
  color: var(--avds-qradio-ink);
  font-size: 1rem;
  letter-spacing: -.025em;
}

.platform-qazlake-point-detail {
  margin-top: .35rem;
}

.platform-qazlake-more-item {
  grid-column: 1 / -1;
  padding: 0;
  background: var(--avds-qradio-surface);
  list-style: none;
}

.platform-qazlake-more {
  padding: .7rem .75rem;
  background: var(--avds-qradio-surface);
}

.platform-qazlake-more-toggle {
  color: var(--avds-qradio-accent);
  cursor: pointer;
  font-size: .68rem;
  font-weight: 700;
}

.platform-qazlake-points-extra {
  margin-bottom: 0;
}

.platform-qazlake-card-source {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .6rem;
  margin: .8rem 0 0;
  color: var(--avds-qradio-muted);
  font: .6rem/1.35 var(--qr-mono, ui-monospace, monospace);
}

.platform-qazlake-card-source a {
  color: var(--avds-qradio-accent);
  text-decoration: none;
}

.platform-qazlake-card-source a:hover {
  text-decoration: underline;
  text-underline-offset: .2em;
}

.platform-qazlake-card-revision {
  color: var(--avds-qradio-muted);
  opacity: .8;
}

.qs-disclosure-toggle {
  min-height: 2rem;
  border: 1px solid var(--avds-qradio-line);
  border-radius: var(--avds-qradio-radius);
  padding: .35rem .6rem;
  background: transparent;
  color: var(--avds-qradio-ink);
  font: inherit;
  cursor: pointer;
}

.qs-disclosure-toggle:hover {
  border-color: var(--avds-qradio-accent);
}

@media (max-width: 680px) {
  .story-export-status {
    align-self: start;
  }

  .public-export-matrix {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .story-context-list li {
    grid-template-columns: minmax(0, 1fr);
    gap: .5rem;
  }

  .platform-qazlake-head {
    align-items: start;
    flex-direction: column;
    gap: .8rem;
  }

  .platform-qazlake-status {
    align-self: start;
  }

  .platform-qazlake-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .platform-qazlake-grid.has-macro-cards {
    grid-template-columns: minmax(0, 1fr);
  }

  .platform-qazlake-card[data-card-kind="regional_comparison"] {
    grid-column: auto;
  }

  .platform-qazlake-points {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 420px) {
  .public-export-matrix {
    grid-template-columns: minmax(0, 1fr);
  }

  .public-export-matrix li {
    min-height: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-avds-pattern="evidence-reading-surface"]::after {
    transition: none;
  }
}
