/* AnnalesDNB — programme.css : onglets + accordéon Programme 2027 */

.programme-intro {
  max-width: 900px;
  margin: 0 auto var(--space-6);
  padding: var(--space-4);
}
.programme-intro__banner {
  background: var(--color-info-bg);
  border: 1px solid var(--color-info);
  border-radius: var(--radius);
  padding: var(--space-4);
  font-size: var(--text-sm);
  color: var(--color-text);
}

.programme-wrap {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 var(--space-4) var(--space-16);
}

.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-6);
  border-bottom: 2px solid var(--color-border);
}
.tabs__btn {
  font-family: inherit;
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  padding: var(--space-3) var(--space-4);
  font-size: var(--text-base);
  font-weight: 600;
  color: var(--color-text-muted);
  cursor: pointer;
  margin-bottom: -2px;
}
.tabs__btn:hover { color: var(--color-text); }
.tabs__btn[aria-selected="true"] {
  color: var(--color-link);
  border-bottom-color: var(--tab-color, var(--color-link));
}

.tab-panel[hidden] { display: none; }

.matiere-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius);
  padding: var(--space-4);
  margin-bottom: var(--space-4);
  font-size: var(--text-sm);
}
.matiere-meta__item strong { display: block; color: var(--color-text-muted); font-size: var(--text-xs); text-transform: uppercase; }

.matiere-warning {
  background: var(--color-warning-bg);
  border: 1px solid var(--color-warning);
  border-radius: var(--radius);
  padding: var(--space-3);
  font-size: var(--text-sm);
  margin-bottom: var(--space-4);
}

.structure-epreuve {
  margin-bottom: var(--space-6);
}
.structure-epreuve table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-sm);
}
.structure-epreuve th, .structure-epreuve td {
  text-align: left;
  padding: var(--space-2) var(--space-3);
  border-bottom: 1px solid var(--color-border);
}

.accordion__item {
  border: 1px solid var(--color-border);
  border-radius: var(--radius);
  margin-bottom: var(--space-2);
  overflow: hidden;
  background: var(--color-surface);
}
.accordion__header {
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  font-family: inherit;
  font-size: var(--text-base);
  font-weight: 600;
  padding: var(--space-3) var(--space-4);
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-2);
}
.accordion__header::after {
  content: '+';
  font-size: var(--text-xl);
  color: var(--color-text-muted);
  transition: transform var(--transition);
}
.accordion__header[aria-expanded="true"]::after {
  content: '−';
}
.accordion__panel {
  padding: 0 var(--space-4) var(--space-4);
}
.accordion__panel[hidden] { display: none; }
.accordion__panel ul {
  margin: 0;
  padding-left: var(--space-6);
}
.accordion__panel li {
  margin-bottom: var(--space-2);
  font-size: var(--text-sm);
}

.programme-actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-6);
}
