/**
 * Feed Access SAS — Design System Base
 * Styles de base. Charge APRES JQM et CSS CMS existants.
 * Story 1.4 — Direction F
 */

/* === Design Tokens === */
:root {
  --fa-color-primary: #2C3E50;
  --fa-color-accent: #3D8B37;
  --fa-color-highlight: #D9C559;
  --fa-color-text: #333333;
  --fa-color-surface: #F8F9FA;
  --fa-color-secondary: #8CB83D;
  --fa-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --fa-border-radius: 4px;
}

/* === Typographie === */
body {
  font-family: var(--fa-font-family);
  color: var(--fa-color-text);
}

/* === Liens texte (hors boutons JQM) === */
a:not([data-role='button']):not([class*="ui-"]) {
  color: var(--fa-color-accent);
}

/* === Header JQM — !important necessaire pour overrider JQM inline styles === */
div[data-role='header'] {
  background-color: var(--fa-color-primary) !important;
  color: #fff;
}

/* === Alternance lignes tableaux === */
tr:nth-child(even) {
  background-color: var(--fa-color-surface);
}

/* === Focus visible WCAG AA === */
*:focus-visible {
  outline: 2px solid var(--fa-color-primary);
  outline-offset: 2px;
}

/* === Composants fa-* (base pour stories futures) === */
.fa-btn-primary {
  background-color: var(--fa-color-accent);
  color: #fff;
  border: none;
  border-radius: var(--fa-border-radius);
  padding: 8px 16px;
  cursor: pointer;
  font-family: var(--fa-font-family);
  transition: background-color 0.2s;
}
.fa-btn-primary:hover {
  background-color: #2D7A2E;
}
.fa-btn-primary:active {
  background-color: #246B20;
}
.fa-btn-primary:disabled,
.fa-btn-secondary:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.fa-btn-secondary {
  background-color: transparent;
  color: var(--fa-color-accent);
  border: 1px solid var(--fa-color-accent);
  border-radius: var(--fa-border-radius);
  padding: 8px 16px;
  cursor: pointer;
  font-family: var(--fa-font-family);
  transition: background-color 0.2s, color 0.2s;
}
.fa-btn-secondary:hover {
  background-color: var(--fa-color-accent);
  color: #fff;
}
.fa-btn-secondary:active {
  background-color: #2D7A2E;
  color: #fff;
}

.fa-card {
  background-color: #fff;
  border: 1px solid #e0e0e0;
  border-radius: var(--fa-border-radius);
  padding: 16px;
}

.fa-page-corporate { max-width: 960px; margin: 0 auto; }
.fa-hero {
  text-align: center;
  padding: 32px 16px;
  background-color: var(--fa-color-primary);
  color: #fff;
  border-radius: var(--fa-border-radius);
  margin-bottom: 24px;
}
.fa-hero-title { font-size: 1.5rem; font-weight: 600; margin: 0 0 8px; color: #fff; }
.fa-hero-tagline { font-size: 1rem; opacity: .9; margin: 0 0 24px; }
.fa-stats-grid { display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; }
.fa-stat-item { text-align: center; }
.fa-stat-number { display: block; font-size: 1.5rem; font-weight: 600; }
.fa-stat-label { font-size: .875rem; opacity: .8; }
.fa-section-title { color: var(--fa-color-primary); font-size: 1.25rem; font-weight: 600; margin: 0 0 12px; }
.fa-company-section { padding: 16px; margin-bottom: 16px; }
.fa-company-section p { line-height: 1.5; }
.fa-trust-signals {
  padding: 24px 16px;
  background-color: var(--fa-color-surface);
  border-radius: var(--fa-border-radius);
  text-align: center;
  margin-bottom: 24px;
}
.fa-partners-list { list-style: none; padding: 0; margin: 0 0 12px; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 16px; }
.fa-partner-item { font-weight: 600; color: var(--fa-color-primary); }
.fa-partners-impact { color: var(--fa-color-accent); font-weight: 600; margin: 0; }
.fa-refund-badge { display: inline-block; background-color: var(--fa-color-accent); color: #fff; padding: 8px 16px; border-radius: var(--fa-border-radius); font-weight: 600; margin-bottom: 12px; }
.fa-legal-footer { display: flex; flex-wrap: wrap; gap: 8px 16px; padding: 16px; justify-content: center; border-top: 1px solid #e0e0e0; margin-top: 24px; }
.fa-company-footer { text-align: center; padding: 16px; font-size: .875rem; color: #666; }
.fa-company-footer p { margin: 4px 0; }
.fa-page-title { color: var(--fa-color-primary); font-size: 1.5rem; font-weight: 600; padding: 0 16px; margin-bottom: 16px; }
.fa-legal-content { padding: 0 0 16px; }
.fa-legal-date { font-size: .875rem; color: #666; padding: 0 16px; }
.fa-logo-container svg { height: 32px; width: auto; }
.fa-header-inner { padding: 8px 16px; }
