/* ============================================================
   auth-platform.css — surface palette + page-specific styles
   Owner: auth-platform (AP) · 2026-05-08
   ============================================================
   Override les variables `--surface-color-*` réservées par le DS v0
   pour les agents (cf. assistant-conventions/design-system/tokens.css).
   ============================================================ */

:root {
  /* Palette AP — sober + trustworthy (auth surface) */
  --surface-color-primary: #2563eb;          /* indigo-blue 600 */
  --surface-color-primary-hover: #1d4ed8;    /* indigo-blue 700 */
  --surface-color-primary-contrast: #ffffff;

  --surface-color-text: #1f2937;             /* slate 800 */
  --surface-color-text-muted: #6b7280;       /* slate 500 */
  --surface-color-bg: #f9fafb;               /* slate 50 */
  --surface-color-card-bg: #ffffff;
  --surface-color-border: #e5e7eb;           /* slate 200 */
  --surface-color-hover-bg: rgba(37, 99, 235, 0.08);

  /* Status pills */
  --surface-color-success: #059669;          /* emerald 600 */
  --surface-color-warning: #d97706;          /* amber 600 */
  --surface-color-error: #dc2626;            /* red 600 */
}

@media (prefers-color-scheme: dark) {
  :root {
    --surface-color-primary: #60a5fa;          /* indigo-blue 400 */
    --surface-color-primary-hover: #93c5fd;    /* indigo-blue 300 */
    --surface-color-primary-contrast: #0f172a; /* slate 900 */

    --surface-color-text: #f1f5f9;             /* slate 100 */
    --surface-color-text-muted: #94a3b8;       /* slate 400 */
    --surface-color-bg: #0f172a;               /* slate 900 */
    --surface-color-card-bg: #1e293b;          /* slate 800 */
    --surface-color-border: #334155;           /* slate 700 */
    --surface-color-hover-bg: rgba(96, 165, 250, 0.12);
  }
}

body {
  background-color: var(--surface-color-bg);
  color: var(--surface-color-text);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

main {
  flex: 1;
}

/* AP-specific page styles */
.ap-page-hero {
  text-align: center;
  padding: var(--ds-space-7) var(--ds-space-4);
}

.ap-page-hero h1 {
  margin-bottom: var(--ds-space-3);
}

.ap-tagline {
  color: var(--surface-color-text-muted);
  font-size: var(--ds-font-size-md);
  margin-bottom: var(--ds-space-6);
}

.ap-providers {
  display: flex;
  flex-direction: column;
  gap: var(--ds-space-3);
  max-width: 18rem;
  margin: 0 auto;
}

.ap-card {
  background-color: var(--surface-color-card-bg);
  border: 1px solid var(--surface-color-border);
  border-radius: var(--ds-radius-base);
  padding: var(--ds-space-5);
  margin: var(--ds-space-5) auto;
  max-width: var(--ds-container-narrow);
}

.ap-status-list {
  display: flex;
  flex-direction: column;
  gap: var(--ds-space-2);
  margin: var(--ds-space-4) 0;
}

.ap-status-list a {
  color: var(--surface-color-primary);
}

.ap-footer-note {
  text-align: center;
  color: var(--surface-color-text-muted);
  font-size: var(--ds-font-size-sm);
  padding: var(--ds-space-4);
  border-top: 1px solid var(--surface-color-border);
  margin-top: var(--ds-space-6);
}
