/* BURDIGALA.CLOUD — extensions de Burdigala UI 1.0.0 (préfixe bc-, tokens --mb-* uniquement) */

/* En-tête et pied de la vitrine */
.bc-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid var(--mb-color-border); background: rgba(255,255,255,.92); backdrop-filter: blur(14px); }
.bc-header__inner { width: min(100%, 72rem); margin-inline: auto; padding: .9rem 1.5rem; display: flex; align-items: center; gap: 1.5rem; }
.bc-header .mb-brand { color: var(--mb-color-primary); }
.bc-header__nav { display: flex; gap: .25rem; }
.bc-header__nav a { border-radius: var(--mb-radius-md); padding: .55rem .8rem; color: var(--mb-color-muted); font-weight: 600; }
.bc-header__nav a:hover, .bc-header__nav a[aria-current="page"] { color: var(--mb-color-primary); background: var(--mb-color-primary-soft); }
.bc-footer { margin-top: var(--mb-space-7); border-top: 1px solid var(--mb-color-border); background: var(--mb-color-surface); }
.bc-footer__inner { width: min(100%, 72rem); margin-inline: auto; padding: 2rem 1.5rem; display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 1.5rem; }
.bc-footer h3 { margin: 0 0 .6rem; font-size: .625rem; letter-spacing: .08rem; text-transform: uppercase; color: var(--mb-color-muted); }
.bc-footer a { display: block; padding: .2rem 0; color: var(--mb-color-text); }
.bc-footer a:hover { color: var(--mb-color-primary); }
.bc-page { width: min(100%, 72rem); margin-inline: auto; padding: 2.5rem 1.5rem 0; }
.bc-narrow { width: min(100%, 46rem); margin-inline: auto; }

/* Héros et recherche de domaine */
.bc-hero { padding: 3.5rem 2.5rem; text-align: center; }
.bc-hero .mb-title { font-size: clamp(1.9rem, 4vw, 3rem); }
.bc-hero__lead { max-width: 38rem; margin: 1rem auto 2rem; font-size: 1rem; opacity: .8; }
.bc-search { max-width: 40rem; margin-inline: auto; display: flex; gap: .5rem; }
.bc-search .mb-input { font-size: 1rem; padding: .9rem 1rem; }
.bc-search .mb-btn { min-height: 3.2rem; padding-inline: 1.5rem; }
.bc-hero .bc-search .mb-btn--primary { border-color: #fff; color: var(--mb-color-primary); background: #fff; }
.bc-tlds { margin-top: 1rem; display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; }
.bc-tlds span { border-radius: var(--mb-radius-pill); padding: .25rem .6rem; background: rgba(255,255,255,.12); font-size: .7rem; }

/* Résultats de domaine */
.bc-result { display: flex; align-items: center; gap: 1rem; }
.bc-result__name { font: 600 1.05rem var(--mb-font-display); }
.bc-result__price { margin-left: auto; text-align: right; }
.bc-result__price strong { display: block; font-size: 1rem; }

/* Offres */
.bc-offer { display: flex; flex-direction: column; gap: .75rem; height: 100%; }
.bc-offer__price { font: 600 2rem var(--mb-font-display); }
.bc-offer__price small { font: 500 .75rem var(--mb-font-body); color: var(--mb-color-muted); }
.mb-card--accent .bc-offer__price small { color: rgba(255,255,255,.7); }
.bc-offer ul { margin: 0; padding-left: 1.1rem; display: grid; gap: .35rem; }
.bc-offer .mb-btn { margin-top: auto; }
.bc-section { margin-top: var(--mb-space-7); }
.bc-section > header { margin-bottom: 1.25rem; }
.bc-prose { font-size: .95rem; line-height: 1.7; }
.bc-prose h2 { font: 600 1.3rem var(--mb-font-display); margin: 2rem 0 .5rem; }

/* Étapes d'une commande */
.bc-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.bc-steps li { display: flex; align-items: center; gap: .75rem; }

@media (max-width: 47.5rem) {
  .bc-header__nav { display: none; }
  .bc-header__inner { padding-inline: 1rem; gap: .5rem; }
  .bc-header .mb-brand { font-size: .9rem; gap: .5rem; }
  .bc-header .mb-brand__meta { display: none; }
  .bc-header .mb-brand__mark { width: 2rem; height: 2rem; }
  .bc-header .mb-topbar__actions { gap: .4rem; }
  .bc-header .mb-topbar__actions .mb-btn { padding: .5rem .6rem; min-height: 2.25rem; }
  .bc-hero { padding: 2.25rem 1rem; }
  .bc-search { flex-direction: column; }
  .bc-footer__inner { grid-template-columns: 1fr 1fr; }
  .bc-page { padding-inline: 1rem; }
}
.bc-menu { display: none; }
@media (max-width: 47.5rem) { .bc-menu { display: inline-grid; } }
@media (max-width: 47.5rem) { .mb-topbar__actions .mb-btn { white-space: nowrap; padding-inline: .7rem; } }

/* L'attribut hidden doit l'emporter sur les display des composants (.mb-field…). */
[hidden] { display: none !important; }

/* Liens présentés en bouton : « .mb-app a { color: inherit } » l'emporterait sinon sur la couleur du bouton. */
.mb-app a.mb-btn { color: var(--mb-color-text); }
.mb-app a.mb-btn--primary, .mb-app a.mb-btn--danger { color: #fff; }
.mb-app a.mb-btn--soft { color: var(--mb-color-primary); }

/* Bandeau des environnements hors production */
.bc-env { padding: .4rem 1rem; text-align: center; color: var(--mb-color-warning); background: var(--mb-color-warning-soft); font-size: .7rem; font-weight: 700; }
