/* Page styles for /security (launch-readiness pass, 2026-09-02). Page-specific
   rules only; shared patterns belong in styles.css. */

.security-shell { max-width: 1040px; }

.security-legend {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2) var(--space-3);
  align-items: center;
  margin: var(--space-4) 0 0;
  font-size: var(--text-sm);
  color: var(--muted);
}

.security-badge {
  display: inline-block;
  padding: 2px var(--space-2);
  border-radius: 999px;
  font-size: var(--text-xs);
  font-weight: 600;
  letter-spacing: 0.02em;
  white-space: nowrap;
  border: 1px solid transparent;
}
.security-badge-verified { background: var(--accent-light); color: var(--accent-text); border-color: var(--accent-border); }
.security-badge-provider { background: var(--surface-soft); color: var(--ink); border-color: var(--border); }
.security-badge-open { background: var(--danger-soft); color: var(--danger-text); border-color: var(--danger); }

.security-panel { margin: 0 0 var(--space-8); }
.security-panel h2 { margin: 0 0 var(--space-4); }

.security-table-wrap { overflow-x: auto; }
.security-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-md);
  line-height: 1.55;
}
.security-table th,
.security-table td {
  padding: var(--space-3) var(--space-3);
  border-top: 1px solid var(--border-light);
  vertical-align: top;
  text-align: left;
}
.security-table thead th {
  border-top: 0;
  background: var(--surface-soft);
  font-size: var(--text-xs);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--ink-soft);
}
.security-table tbody th { width: 11rem; font-weight: 600; color: var(--ink); }
.security-table td:last-child { width: 8rem; }

.security-links { padding-left: 1.2em; line-height: 1.7; }

@media (max-width: 700px) {
  .security-table tbody th { width: auto; }
  .security-table td:last-child { width: auto; }
}
