/* AI-051 OivaTrustIQ — Oiva Design System Portal theme */
/* Palette: navy #141B4D, teal #0081AE, cyan #1ACEDA */
/* Typography: DM Sans (body), DM Mono (code) */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,400&family=DM+Mono:wght@400;500&display=swap');

:root {
  --md-primary-fg-color:        #141B4D;
  --md-primary-fg-color--light: #1A2460;
  --md-primary-fg-color--dark:  #0D1236;
  --md-primary-bg-color:        #FFFFFF;
  --md-accent-fg-color:         #0081AE;
  --md-accent-fg-color--transparent: rgba(0, 129, 174, 0.1);
  --oiva-teal:                  #0081AE;
  --oiva-cyan:                  #1ACEDA;
  --oiva-navy:                  #141B4D;
}

/* Header */
.md-header {
  background-color: var(--oiva-navy);
}
.md-header__title {
  font-family: 'DM Sans', sans-serif;
  font-weight: 600;
  letter-spacing: -0.02em;
}

/* Navigation */
.md-nav__link--active,
.md-nav__link:hover {
  color: var(--oiva-teal);
}
.md-nav__item--active > .md-nav__link {
  color: var(--oiva-navy);
  font-weight: 600;
}

/* Body typography */
body, .md-typeset {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.md-typeset h1, .md-typeset h2, .md-typeset h3 {
  font-family: 'DM Sans', sans-serif;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--oiva-navy);
}
.md-typeset h1 { border-bottom: 3px solid var(--oiva-teal); padding-bottom: 0.3em; }
.md-typeset h2 { border-bottom: 1px solid rgba(0,129,174,0.25); padding-bottom: 0.2em; }

/* Code */
.md-typeset code, .md-typeset pre {
  font-family: 'DM Mono', 'Fira Code', monospace;
  font-size: 0.875em;
}
.md-typeset .highlight { border-left: 3px solid var(--oiva-teal); }

/* Sovereign posture callout */
.md-typeset .admonition.sovereign {
  border-color: var(--oiva-navy);
}
.md-typeset .admonition.sovereign > .admonition-title {
  background-color: var(--oiva-navy);
  color: #FFFFFF;
}

/* Stale / warn / hidden banners (rendered by freshness monitor Lambda) */
.trust-banner-warn {
  background: #FFF3CD;
  border-left: 4px solid #FFC107;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  border-radius: 0 4px 4px 0;
}
.trust-banner-stale {
  background: #F8D7DA;
  border-left: 4px solid #DC3545;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  border-radius: 0 4px 4px 0;
}
.trust-meta {
  font-size: 0.8rem;
  color: #6C757D;
  border-top: 1px solid #DEE2E6;
  margin-top: 2rem;
  padding-top: 0.75rem;
}
.trust-meta strong { color: var(--oiva-navy); }
