/* =====================================================================
   Toki Gourmandises - charte commune (front + backoffice)
   ===================================================================== */
:root{
  --tg-choco:#4A3428;
  --tg-choco-900:#2E1F15;
  --tg-choco-700:#5E4236;
  --tg-rose:#D8C3A5;
  --tg-rose-700:#A1686D;
  --tg-rose-300:#CFA5A0;
  --tg-rose-100:#F0E4D8;
  --tg-creme:#F5EFE6;
  --tg-creme-50:#FAF7F2;
  --tg-blanc:#FFFDF9;
  --tg-texte:#4A3428;
  --tg-texte-doux:#6B5044;
  --tg-texte-leger:#7E5F50;        /* 4.5:1 sur crème */
  --tg-trait:#E4D5C8;
  --tg-succes:#3F6B4E;
  --tg-erreur:#a90e00;
  --tg-alerte:#8A5A14;
  --tg-info:#3E5C76;

  --tg-serif:'Tangerine', 'Cormorant Garamond', Georgia, serif;
  /* Chiffres (prix, totaux, numéros) : Cormorant, les chiffres de Tangerine sont peu lisibles */
  --tg-chiffres:'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --tg-sans:'Jost', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --tg-script:'Tangerine', 'Cormorant Garamond', cursive;

  --tg-radius:6px;
  --tg-radius-lg:12px;
  --tg-ombre:0 1px 2px rgba(46,31,23,.05), 0 8px 24px rgba(46,31,23,.06);
  --tg-ombre-forte:0 18px 48px rgba(46,31,23,.14);
  --tg-ease:cubic-bezier(.22,.61,.36,1);

  /* Surcharges Bootstrap */
  --bs-body-font-family:var(--tg-sans);
  --bs-body-color:var(--tg-texte);
  --bs-body-bg:var(--tg-creme);
  --bs-link-color:var(--tg-choco);
  --bs-link-color-rgb:74,52,40;
  --bs-link-hover-color:var(--tg-choco-900);
  --bs-link-hover-color-rgb:46,31,21;
  --bs-border-color:var(--tg-trait);
  --bs-primary:#4A3428;
  --bs-primary-rgb:74,52,40;
  --bs-focus-ring-color:rgba(216,195,165,.45);
}

html{font-synthesis-style:none}
/* Aucune page ne doit défiler de côté (gouttières Bootstrap, animations d’entrée) */
main,.tg-footer{overflow-x:clip}
body{font-family:var(--tg-sans);color:var(--tg-texte);background:var(--tg-creme);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
/* Écriture manuscrite (Tangerine) : accents décoratifs uniquement, jamais en petit corps */
.tg-script{font-family:var(--tg-script);font-weight:700;font-size:1.6em;line-height:1;letter-spacing:0;text-transform:none}
h1,h2,h3,h4,.tg-serif{font-family:var(--tg-serif);font-weight:700;letter-spacing:.005em}
::selection{background:var(--tg-rose);color:var(--tg-choco-900)}

/* Boutons */
.btn{font-family:var(--tg-sans);font-weight:400;letter-spacing:.08em;border-radius:var(--tg-radius);transition:all .3s var(--tg-ease)}
.btn-tg{--bs-btn-color:var(--tg-creme);--bs-btn-bg:var(--tg-choco);--bs-btn-border-color:var(--tg-choco);
  --bs-btn-hover-color:var(--tg-creme);--bs-btn-hover-bg:var(--tg-choco-900);--bs-btn-hover-border-color:var(--tg-choco-900);
  --bs-btn-active-bg:var(--tg-choco-900);--bs-btn-active-color:var(--tg-creme);--bs-btn-disabled-bg:var(--tg-choco);--bs-btn-disabled-border-color:var(--tg-choco);--bs-btn-disabled-color:var(--tg-creme);--bs-btn-disabled-opacity:1}
.btn-tg-outline{--bs-btn-color:var(--tg-choco);--bs-btn-bg:var(--tg-rose-100);--bs-btn-border-color:var(--tg-trait);--bs-btn-hover-color:var(--tg-creme);
  --bs-btn-hover-bg:var(--tg-choco-900);--bs-btn-hover-border-color:var(--tg-choco-900);--bs-btn-active-bg:var(--tg-choco-900);--bs-btn-active-color:var(--tg-creme)}
.btn-tg-rose{--bs-btn-color:var(--tg-choco-900);--bs-btn-bg:var(--tg-rose);--bs-btn-border-color:var(--tg-rose);
  --bs-btn-hover-color:var(--tg-choco-900);--bs-btn-hover-bg:var(--tg-rose-300);--bs-btn-hover-border-color:var(--tg-rose-300);
  --bs-btn-active-bg:var(--tg-rose-300);--bs-btn-active-color:var(--tg-choco-900)}
.btn-tg-danger{--bs-btn-color:#fff;--bs-btn-bg:var(--tg-erreur);--bs-btn-border-color:var(--tg-erreur);--bs-btn-hover-bg:#7E2F28;--bs-btn-hover-border-color:#7E2F28;--bs-btn-hover-color:#fff}
.btn-lg{padding:.85rem 2rem;font-size:.9rem;text-transform:uppercase}

/* Formulaires */
.form-label{font-size:.85rem;font-weight:500;letter-spacing:.03em;color:var(--tg-texte-doux)}
.form-control,.form-select{border-color:var(--tg-trait);border-radius:var(--tg-radius);background-color:var(--tg-blanc);color:var(--tg-texte);padding:.65rem .9rem}
.form-select{padding-right:2.4rem;text-overflow:ellipsis;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'%3E%3Cpath fill='%234A3428' d='M4.646 5.646a.5.5 0 0 1 .708 0L8 8.293l2.646-2.647a.5.5 0 0 1 .708.708l-3 3a.5.5 0 0 1-.708 0l-3-3a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
  background-size:12px;background-position:right .75rem center}
.form-control:focus,.form-select:focus{border-color:var(--tg-rose);box-shadow:0 0 0 .2rem rgba(216,195,165,.3);outline:0}
.form-select option{background:var(--tg-blanc);color:var(--tg-texte)}
.form-select option:checked{background:var(--tg-rose-100);color:var(--tg-choco)}
.form-check-input:checked{background-color:var(--tg-choco);border-color:var(--tg-choco)}
.form-check-input:focus{border-color:var(--tg-rose);box-shadow:0 0 0 .2rem rgba(216,195,165,.3)}

/* Petits utilitaires */
.tg-kicker{font-size:.75rem;letter-spacing:.32em;text-transform:uppercase;color:var(--tg-texte-leger)}
.tg-filet{display:inline-block;width:44px;height:1px;background:var(--tg-rose);vertical-align:middle}
.text-tg-doux{color:var(--tg-texte-doux)!important}
.bg-tg-choco{background:var(--tg-choco)!important;color:var(--tg-creme)}
.bg-tg-creme{background:var(--tg-creme)!important}
.visually-hidden-focusable:focus{position:fixed!important;top:10px;left:10px;z-index:3000;background:var(--tg-choco);color:var(--tg-creme);padding:.6rem 1rem;border-radius:var(--tg-radius)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
