/* Mini charte IA hôteliers — Studio Mibo
   Chaleureux, simple, humain. Chargée après les styles de chaque page : elle a le dernier mot. */

:root {
  /* Couleurs de la charte */
  --bg: #FBF6EF;            /* Fond */
  --bg-card: #FFFFFF;       /* Carte */
  --ink: #2E241C;           /* Encre */
  --ink-soft: #6B5D4F;      /* Encre douce */
  --terracotta: #B8532A;    /* Signature : boutons, accents, texte blanc dessus */
  --terracotta-dark: #9C4522;
  --green: #4C5D3C;         /* Olive : messages rassurants */
  --green-soft: #E7EBDD;    /* Olive doux : fonds d'encarts */
  --line: #E7DDCE;          /* Filets et séparations */
  --field: #8C7A67;         /* Bordure des champs de saisie */

  /* Température des prospects */
  --chaud: #B8532A;
  --tiede: #8A5A0F;
  --froid: #4F6F80;

  /* Formes */
  --r-s: 10px; --r-m: 12px; --r-l: 18px; --r-pill: 999px;
  --shadow: 0 2px 12px rgba(46, 36, 28, .06);
}

/* Typographies : titres Fraunces (à défaut Georgia), texte Inter */
body { font-family: 'Inter', -apple-system, 'Segoe UI', sans-serif; font-size: 16px; line-height: 1.625; }
h1, h2, h3.serif, .group-title, .gift-title, .hotel-name, .stat .n { font-family: 'Fraunces', Georgia, serif; }
h1 { font-weight: 600; line-height: 1.17; }
h2 { font-weight: 600; font-size: 26px; line-height: 1.23; }
.group-title, .gift-title { font-size: 20px; line-height: 1.3; font-weight: 600; }
p.lead, .lead { font-size: 16px; line-height: 1.625; }
.item-text, .quote, .gift p, .task p, .section-sub, .instead, .fine { font-size: 14px; line-height: 1.57; }
.brand, .step-label, .gift-kicker, .prompt-label, .badge, .gain {
  font-size: 13px; line-height: 18px; font-weight: 600; letter-spacing: .04em;
}

/* Signature : le sourire terracotta, toujours seul, avec de l'espace autour */
.smile { display: inline-block; flex-shrink: 0; color: var(--terracotta); }
.smile svg { display: block; width: 100%; height: auto; }
.brand .smile { width: 26px; margin-right: 4px; }
.smile-hero { width: 72px; margin: 4px auto 18px; display: block; }
.brand-dot { display: none; }

/* Cartes : coins arrondis, ombre unique très douce, jamais de contour dur */
.card, .end, .task, .pitem, .stat { border-radius: var(--r-l); box-shadow: var(--shadow); }
.option, .quote, .prompt, .rule, .gift { border-radius: var(--r-m); }
.hero-img { border-radius: var(--r-l); }

/* Champs de saisie */
input[type=text], input[type=email], input[type=password], input[type=search], textarea, select {
  border-radius: var(--r-s); border-color: var(--field);
}
input:focus, textarea:focus, select:focus { border-color: var(--terracotta); box-shadow: 0 0 0 3px color-mix(in srgb, var(--terracotta) 18%, transparent); }

/* Boutons en pastille */
button.btn, a.btn, .btn, .copy, .chip, .scale button { border-radius: var(--r-pill); }
.btn-primary, .btn:not(.btn-ghost) { background: var(--terracotta); color: #fff; }
.btn-primary:not(:disabled):hover, .btn:not(.btn-ghost):hover { background: var(--terracotta-dark); }
.btn-ghost { background: var(--green-soft); color: var(--green); border: none; }
.btn-ghost:hover { color: var(--green); background: color-mix(in srgb, var(--green) 14%, var(--green-soft)); }
:focus-visible { outline: 3px solid color-mix(in srgb, var(--terracotta) 45%, transparent); outline-offset: 2px; }
input:focus-visible, textarea:focus-visible, select:focus-visible { outline: none; }

footer { font-size: 13px; line-height: 1.5; }

/* Encart cadeau : fond olive doux plutôt qu'un contour pointillé */
.gift { border: none; background: var(--green-soft); }

/* Checklist : « à ne jamais confier » en terracotta plutôt qu'en rouge */
:root { --no: #9C4522; --no-soft: #F3E2D8; --code-bg: #F4EDE3; }

/* Affichage toujours clair, comme la page d'accueil studio-mibo.com.
   « only light » demande aux navigateurs de ne pas assombrir le site d'eux-mêmes,
   et les blocs ci-dessous annulent les versions sombres prévues dans chaque page. */
:root { color-scheme: only light; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #FBF6EF; --bg-card: #FFFFFF; --ink: #2E241C; --ink-soft: #6B5D4F; --line: #E7DDCE;
    --green: #4C5D3C; --green-soft: #E7EBDD; --field: #8C7A67; --shadow: 0 2px 12px rgba(46, 36, 28, .06);
    --error: #B3261E; --no: #9C4522; --no-soft: #F3E2D8; --code-bg: #F4EDE3;
  }
}
:root[data-theme="dark"] {
  --bg: #FBF6EF; --bg-card: #FFFFFF; --ink: #2E241C; --ink-soft: #6B5D4F; --line: #E7DDCE;
  --green: #4C5D3C; --green-soft: #E7EBDD; --field: #8C7A67; --shadow: 0 2px 12px rgba(46, 36, 28, .06);
  --error: #B3261E; --no: #9C4522; --no-soft: #F3E2D8; --code-bg: #F4EDE3;
}
