/* Audit Portal – high-contrast, readable styling scoped to this page */

.audit-portal {
  max-width: 1100px;
  margin: 0 auto;
  padding: 2rem 1rem 3rem;
}

.audit-portal .page-header {
  text-align: center;
  margin-bottom: 1rem;
}

.audit-portal .page-title {
  margin-bottom: 0.25rem;
}

.audit-portal .page-subtitle {
  color: var(--distant-stars);
  margin-bottom: 1rem;
}

/* Status badge: accessible contrast on dark background */
.audit-portal .status-badge {
  display: inline-block;
  padding: 0.6rem 1rem;
  border-radius: 8px;
  background: rgba(40, 167, 69, 0.18); /* green tint */
  border: 1px solid rgba(40, 167, 69, 0.45);
  color: #b9f6ca; /* light green text for contrast */
  font-weight: 600;
  margin: 1rem 0 0.25rem;
}

/* Intro callout with warning accent, dark-friendly */
.audit-portal .audit-intro {
  background: rgba(255, 193, 7, 0.10);
  border-left: 4px solid #FFC107;
  border-radius: 8px;
  padding: 1rem 1rem 1rem 1.25rem;
  color: var(--starlight);
  margin: 1.5rem 0 2rem;
}

.audit-portal .audit-intro h3 {
  color: #FFC107;
  margin: 0 0 0.35rem 0;
}

/* Cards grid */
.audit-portal .verification-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 1.25rem;
  margin: 2rem 0 1rem;
}

/* Card base: dark theme for readability */
.audit-portal .verification-card {
  background: linear-gradient(135deg, rgba(18, 29, 51, 0.9), rgba(12, 18, 32, 0.9));
  border: 1px solid rgba(125, 140, 196, 0.25);
  border-left: 4px solid var(--cosmic-highlight);
  border-radius: var(--card-radius);
  padding: 1.5rem;
  color: var(--starlight);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.audit-portal .verification-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  border-color: rgba(100, 255, 218, 0.35);
}

/* Accent variants */
.audit-portal .verification-card.accent-indigo { border-left-color: #667eea; }
.audit-portal .verification-card.accent-green { border-left-color: #28a745; }
.audit-portal .verification-card.accent-gray  { border-left-color: #6c757d; }
.audit-portal .verification-card.accent-orange{ border-left-color: #fd7e14; }

.audit-portal .verification-card h3.card-title {
  margin-top: 0;
  margin-bottom: 0.35rem;
}
.audit-portal .verification-card h3.card-title.indigo { color: #aeb8ff; }
.audit-portal .verification-card h3.card-title.green  { color: #a8f0c4; }
.audit-portal .verification-card h3.card-title.gray   { color: #cdd6df; }
.audit-portal .verification-card h3.card-title.orange { color: #ffcc9e; }

.audit-portal .muted {
  color: var(--nebula-blue);
  font-size: 0.9rem;
}

/* Informational sub-box inside cards */
.audit-portal .info-box {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(125, 140, 196, 0.25);
  border-radius: 6px;
  padding: 0.75rem;
  margin: 0.75rem 0;
}

.audit-portal .info-box strong { color: var(--cosmic-highlight); }
.audit-portal .info-box ul { margin: 0.5rem 0 0 1.1rem; }
.audit-portal .info-box li { color: var(--distant-stars); }

/* Commands and code quotes */
.audit-portal .code-block {
  background: rgba(7, 11, 20, 0.85);
  border: 1px solid rgba(100, 255, 218, 0.22);
  border-radius: 6px;
  padding: 0.75rem 0.9rem;
  margin: 0.4rem 0 0.6rem;
  overflow-x: auto;
}

.audit-portal pre.code-block { margin: 0.4rem 0 0.6rem; }
.audit-portal .code-block code {
  font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
  font-size: 0.9rem;
  color: var(--starlight);
}

/* Buttons */
.audit-portal .verification-button,
.audit-portal .quick-links a {
  display: inline-block;
  padding: 0.65rem 1rem;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
  transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
  color: var(--space-black);
}

.audit-portal .verification-button:hover,
.audit-portal .quick-links a:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.35);
}

/* Button color variants with accessible contrast */
.audit-portal .btn-indigo { background: #7d89f5; }
.audit-portal .btn-green  { background: #4cd07a; }
.audit-portal .btn-gray   { background: #9aa3ac; }
.audit-portal .btn-orange { background: #ffa157; }

.audit-portal .quick-links {
  text-align: center;
  margin: 2rem 0 0;
}

.audit-portal .quick-links .links { margin-top: 0.75rem; }

.audit-portal .section-note {
  text-align: center;
  font-style: italic;
  color: var(--distant-stars);
  margin-top: 0.75rem;
}

/* Results summary */
.audit-portal .results-summary {
  background: linear-gradient(135deg, rgba(18, 29, 51, 0.9), rgba(12, 18, 32, 0.92));
  border: 1px solid rgba(125, 140, 196, 0.25);
  border-radius: var(--card-radius);
  padding: 1.5rem;
  margin: 2rem 0;
}

.audit-portal .results-summary h3 {
  text-align: center;
  margin-top: 0;
}

.audit-portal .metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
  margin: 1rem 0 0.25rem;
}

.audit-portal .metric { text-align: center; padding: 1rem; }
.audit-portal .metric .stat { font-size: 1.4rem; font-weight: 700; }
.audit-portal .metric .label { color: var(--starlight); font-size: 0.95rem; }
.audit-portal .metric .subtle { color: var(--nebula-purple); font-size: 0.8rem; }

.audit-portal .metric .stat.indigo { color: #aeb8ff; }
.audit-portal .metric .stat.green  { color: #a8f0c4; }
.audit-portal .metric .stat.red    { color: #ff9aa6; }
.audit-portal .metric .stat.yellow { color: #ffe69c; }

/* Academic info section */
.audit-portal .academic-info {
  background: linear-gradient(135deg, rgba(18, 29, 51, 0.9), rgba(12, 18, 32, 0.92));
  border: 1px solid rgba(125, 140, 196, 0.25);
  border-radius: var(--card-radius);
  padding: 1.5rem;
  margin: 2rem 0;
}

.audit-portal .academic-info h3 { margin-top: 0; }
.audit-portal .academic-info ul { margin-left: 1.1rem; }
.audit-portal .academic-info li { color: var(--distant-stars); }

@media (max-width: 480px) {
  .audit-portal { padding: 1.4rem 1rem 2rem; }
}
