/* ==========================================================================
   analyser.css — extrait de analyser.php le 03/08/2026.
   Charge a la place exacte qu'occupait le <style> : ces regles surclassent
   app.css et app-light.css parce qu'elles viennent APRES. Ne pas remonter
   ce <link> plus haut dans le <head>.
   ========================================================================== */
.app-body{ --bg:var(--bz-bg-soft); --surface:var(--bz-surface); --border:rgba(var(--bz-ink-rgb),.09);
  --accent:var(--bz-blue-vif); --text:var(--bz-text); --text-dim:var(--bz-text-2b); background:var(--bz-bg-soft); color:var(--bz-text); }
.ic-sub{ margin:4px 0 0; font-size:.9rem; color:var(--bz-text-3); }

.an-choix{ margin:18px 0 0; padding:20px 22px; border-radius:16px;
  background:var(--bz-surface); border:1px solid rgba(var(--bz-ink-rgb),.09); }
.an-choix label{ display:block; font-size:.82rem; font-weight:600; color:var(--bz-text-3); margin-bottom:6px; }
.an-choix select{ font:inherit; font-size:1rem; padding:11px 13px; border-radius:11px; width:100%;
  max-width:520px; background:var(--bz-bg-soft2); border:1px solid rgba(var(--bz-ink-rgb),.14); color:var(--bz-text); }
.an-choix select:focus{ outline:none; border-color:var(--bz-blue-vif); }

.an-actions{ display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; margin-top:16px; }
.an-act{ display:block; width:100%; text-align:left; font:inherit; cursor:pointer;
  padding:16px 18px; border-radius:14px; background:var(--bz-surface); border:1px solid rgba(var(--bz-ink-rgb),.12);
  transition:border-color .15s ease, box-shadow .15s ease; }
.an-act:hover{ border-color:rgba(var(--bz-blue-vif-rgb),.45); box-shadow:0 8px 22px -14px rgba(var(--bz-ink-rgb),.35); }
.an-act:focus-visible{ outline:2px solid var(--bz-blue-vif); outline-offset:2px; }
.an-act b{ display:flex; align-items:center; gap:9px; font-size:1rem; font-weight:700; color:var(--bz-text); }
.an-act span{ display:block; margin-top:6px; font-size:.85rem; line-height:1.5; color:var(--bz-text-2); }
.an-ico{ flex:0 0 auto; width:24px; height:24px; color:var(--bz-blue); }
.an-ico svg{ width:100%; height:100%; display:block; fill:none; stroke:currentColor;
  stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }

.an-note{ margin:16px 0 0; padding:13px 16px; border-radius:11px; font-size:.85rem; line-height:1.55;
  color:var(--bz-text-2); background:rgba(var(--bz-ink-rgb),.035); border:1px solid rgba(var(--bz-ink-rgb),.10); }
.an-pf{ margin-top:16px; }
.an-pf form{ display:flex; flex-wrap:wrap; align-items:flex-end; gap:12px; }
.an-pf select{ font:inherit; font-size:.95rem; padding:10px 12px; border-radius:10px; min-width:220px;
  background:var(--bz-bg-soft2); border:1px solid rgba(var(--bz-ink-rgb),.14); color:var(--bz-text); }
@media (max-width:640px){ .an-pf select{ min-width:0; width:100%; } }

/* Mesure de lecture — 135 signes par ligne. */
.an-note{ max-width:60ch; }

.ic-sub{ max-width:58ch; }

/* La consigne d'une leçon qui entre par cette page : on dit où l'on en est et
   ce qu'il faut faire, sans afficher la leçon elle-même — il n'y a encore rien
   à montrer tant qu'aucune valeur n'est choisie. */
.an-lecon { margin: 0 0 14px; padding: .7rem .9rem;
  border-left: 3px solid var(--bz-blue, #1b5cff); border-radius: 0 10px 10px 0;
  background: rgba(var(--bz-blue-rgb, 27,92,255), .08);
  font-size: .92rem; line-height: 1.55; }
