/* Mindset du Trader : la DA de l'identité de marque (octobre 2026), posée par-dessus le moteur de l'espace MDB.
   Nuit 70 % · Graphite 20 % · Glacier 8 % (la marque, les actions) · Braise 2 % (l'état activé, jamais un bouton).
   Ni rouge ni vert. Pas de verre, pas de lueur, pas de dégradé sur le signe : l'aura vit seulement dans les exercices.
   Police : GT America quand les licences seront prises ; en attendant Public Sans (même famille de grotesques américaines). */

:root {
  --mdt-nuit: #101316;
  --mdt-graphite: #1A1F24;
  --mdt-graphite-2: #222930;
  --mdt-glacier: #8FD6EA;
  --mdt-braise: #FF8A3D;
  --mdt-braise-texte: #FFB27A;
  --mdt-texte: #E6EAED;
  --mdt-texte-2: #9AA3AB;
  --mdt-ligne: rgba(230, 234, 237, .09);

  /* les variables du moteur, redirigées vers la palette MDT */
  --oxblood: var(--mdt-nuit);      /* texte sombre posé sur un fond clair (boutons, coches) */
  --creme: var(--mdt-texte);
  --jaune: var(--mdt-glacier);
  --bleu: var(--mdt-glacier);
  --ambre: var(--mdt-braise);
  --nuit: var(--mdt-nuit);
  --ink: var(--mdt-texte);
  --ink-soft: var(--mdt-texte-2);
  --ink-mute: rgba(154, 163, 171, .72);

  --glass-fill: var(--mdt-graphite);
  --glass-fill-on: var(--mdt-graphite-2);
  --glass-shadow: inset 0 0 0 1px var(--mdt-ligne);
  --glass-shadow-on: inset 0 0 0 1px rgba(143, 214, 234, .45);
  --glass-rim: none;

  --r-lg: 18px;
  --r-md: 14px;

  --title: "Public Sans", "GT America", "Helvetica Neue", Arial, sans-serif;
  --body: "Public Sans", "GT America", "Helvetica Neue", Arial, sans-serif;
}

body { background: var(--mdt-nuit); font-size: 15px; font-variant-numeric: tabular-nums; }
.aurora, .grain { display: none !important; }

/* Surfaces : graphite à plat, un filet, rien qui brille */
.glass { background: var(--mdt-graphite) !important; box-shadow: var(--glass-shadow) !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
.glass::before { display: none !important; }

h1, h2, h3, h4 { font-weight: 700; letter-spacing: -.02em; }
h1 { font-size: clamp(30px, 8.6vw, 44px); line-height: 1.05; }
.eyebrow { color: var(--mdt-texte-2); letter-spacing: 0; text-transform: none; font-size: 14px; }
.lead { color: var(--mdt-texte-2); font-size: 16px; }
a { color: var(--mdt-glacier); }

/* Le signe : un hublot 5 × 6, une ligne au premier cinquième qui file à droite */
.logo {
  width: 30px !important; height: 20px !important; border-radius: 0 !important; box-shadow: none !important; animation: none !important;
  background: url("assets/signe-clair.svg") left center / contain no-repeat !important;
}
.brand { font-weight: 700; letter-spacing: -.01em; }
.brand.glass, .icon-btn.glass { background: transparent !important; box-shadow: none !important; }

/* Bouton principal : glacier, un seul par écran */
.cta { background: var(--mdt-glacier); color: var(--mdt-nuit); border-radius: 14px; box-shadow: none; font-weight: 700; }
.cta[disabled] { background: #2A3239; color: rgba(230, 234, 237, .4); }
.cta[disabled] .cta-dot { background: rgba(230, 234, 237, .15); }
.cta-dot { background: var(--mdt-nuit); color: var(--mdt-glacier); }
.cta-chev { display: none; }
.cta-bar { background: linear-gradient(to top, var(--mdt-nuit) 60%, rgba(16, 19, 22, 0)); }
.btn-line { border-radius: 12px; }

/* Encarts : graphite, filet glacier à gauche (plus de crème) */
.note { background: var(--mdt-graphite); color: var(--mdt-texte); box-shadow: inset 3px 0 0 var(--mdt-glacier), inset 0 0 0 1px var(--mdt-ligne); border-radius: 14px; }
.note a { color: var(--mdt-glacier); }
.note .note-title { font-weight: 700; }

/* Listes, cartes, progression */
.row-item, .seance-card, .link-row, .next, .card, .tracker, .block, .resume { border-radius: 16px; }
.row-item .thumb { background: var(--mdt-graphite-2); color: var(--mdt-glacier); border-radius: 12px; }
.row-item.done .thumb { background: var(--mdt-glacier); color: var(--mdt-nuit); }
.progress-line { background: rgba(230, 234, 237, .1); }
.progress-line span { background: var(--mdt-glacier); }
.pill-new { background: var(--mdt-glacier); color: var(--mdt-nuit); }
.cle { background: none !important; color: var(--mdt-glacier); font-weight: 700; }
.seance-card .date, .tracker .count, .practice .count, .day .dnum, .slot .t { font-weight: 700; }
.seance-card .quote { border-left-color: var(--mdt-glacier); }
.dot.today { border-color: var(--mdt-glacier); color: var(--mdt-glacier); }
.dot[aria-pressed="true"] { background: var(--mdt-glacier); color: var(--mdt-nuit); }
.chip { border-radius: 10px; }
.chip[aria-pressed="true"] { box-shadow: inset 0 0 0 1px var(--mdt-glacier) !important; color: var(--mdt-glacier); }
.rappel-choix .btn-line[aria-pressed="true"] { background: var(--mdt-glacier); color: var(--mdt-nuit); }
.input { border-radius: 12px; }
.input:focus { box-shadow: inset 0 0 0 1px var(--mdt-glacier) !important; }
.bubble { border-radius: 16px; }
.bubble.vanille { background: var(--mdt-graphite-2); }
.bubble.cliente, .bubble.me { background: rgba(143, 214, 234, .14); color: var(--mdt-texte); }
.cnav-hello { color: var(--mdt-texte-2); }
.cnav-links a[aria-current="page"] { color: var(--mdt-glacier); background: var(--mdt-graphite-2); box-shadow: none; }
.toast { background: var(--mdt-graphite-2) !important; color: var(--mdt-texte); }
.spinner { border-color: rgba(230, 234, 237, .2); border-top-color: var(--mdt-glacier); }

/* ---------- Le reset (respiration animée) : l'aura de la marque ----------
   Elle respire en 10 secondes. La braise s'éteint au fil des cycles, le glacier monte. Rien d'autre ne bouge. */
.souffle-plein[data-theme="mdt"] { background: var(--mdt-nuit); color: var(--mdt-texte); font-family: var(--body); }
.souffle-plein[data-theme="mdt"] .s-surtitre { color: var(--mdt-texte-2); letter-spacing: 0; text-transform: none; }
.souffle-plein[data-theme="mdt"] .s-consigne { font-family: var(--title); font-weight: 700; color: var(--mdt-texte); position: relative; z-index: 2; }
.souffle-plein[data-theme="mdt"] .s-compte { color: var(--mdt-texte-2); font-variant-numeric: tabular-nums; }
.souffle-plein[data-theme="mdt"] .s-points i { background: rgba(230, 234, 237, .18); box-shadow: none; }
.souffle-plein[data-theme="mdt"] .s-points i.on { background: var(--mdt-glacier); }
.souffle-plein[data-theme="mdt"] .s-pause { background: var(--mdt-graphite); color: var(--mdt-texte); border-radius: 12px; box-shadow: inset 0 0 0 1px var(--mdt-ligne); }
.souffle-plein[data-theme="mdt"] .s-fermer { color: var(--mdt-texte-2); }
.ra-aura {
  position: absolute; left: 50%; top: 46%; width: min(86vw, 520px); aspect-ratio: 1; pointer-events: none;
  transform: translate(-50%, -50%) scale(calc(.72 + .28 * var(--souffle, 0)));
}
.ra-aura i { position: absolute; inset: 0; border-radius: 50%; filter: blur(42px); transition: opacity 4s linear; }
.ra-braise { background: radial-gradient(circle at 42% 36%, var(--mdt-braise) 0%, rgba(255, 138, 61, .55) 32%, rgba(255, 138, 61, 0) 66%); opacity: calc(1 - var(--progres, 0)); }
.ra-glacier { background: radial-gradient(circle at 58% 62%, #CFEFF8 0%, var(--mdt-glacier) 26%, rgba(143, 214, 234, .35) 50%, rgba(143, 214, 234, 0) 70%); opacity: calc(.25 + .75 * var(--progres, 0)); }
.vignette-souffle.vs-reset { background: radial-gradient(circle at 40% 38%, rgba(255, 138, 61, .85), rgba(255, 138, 61, 0) 46%), radial-gradient(circle at 60% 62%, var(--mdt-glacier), rgba(143, 214, 234, 0) 58%), var(--mdt-nuit) !important; }
.vignette-souffle.vs-reset .vs-halo { display: none; }
.vignette::after { box-shadow: inset 0 0 0 1px var(--mdt-ligne) !important; }
.vignette-play { background: var(--mdt-glacier) !important; color: var(--mdt-nuit) !important; box-shadow: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
.vignette-duree { background: var(--mdt-nuit) !important; color: var(--mdt-texte-2) !important; }
/* pas de capitales très espacées (identité, p. 11) */
.souffle-plein[data-theme="mdt"] .s-compte, .souffle-plein[data-theme="mdt"] .s-pause, .souffle-plein[data-theme="mdt"] .s-surtitre { text-transform: none; letter-spacing: 0; }
.souffle-plein[data-theme="mdt"] .s-pause { font-weight: 700; }
.souffle-plein[data-theme="mdt"] .s-haut { padding-left: 56px; padding-right: 56px; }
/* Programme pas encore ouvert : visible, mais pas cliquable */
.link-row.bientot { cursor: default; }
.link-row.bientot:active { transform: none; }
.pill-bientot { flex: none; font-size: 12px; font-weight: 700; padding: 3px 9px; border-radius: 8px; color: var(--mdt-glacier); box-shadow: inset 0 0 0 1px rgba(143, 214, 234, .45); }
.cnav-bientot { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 12px; color: var(--mdt-texte-2); }
