/*
 * theoremes-transformations-figure.css — Animations mathématiques, lot « theoremes-transformations »
 * Figure dynamique (M10), pièces mobiles (M6) et rédaction alignée (M7).
 */

/* Rédaction alignée */
.tt-redac {
  font: 28px system-ui, "Segoe UI", Arial, sans-serif;
  fill: #1f2933;
}

.tt-redac.reponse {
  font-weight: 600;
  fill: #c2410c;
}

.tt-redac.titre {
  font-weight: 600;
}

.tt-redac.doux {
  fill: #5b6773;
}

/* Tailles de la rédaction alignée (TT.Redaction) */
text.tt-redac.tt-t21 { font-size: 21px; }
text.tt-redac.tt-t22 { font-size: 22px; }
text.tt-redac.tt-t24 { font-size: 24px; }
text.tt-redac.tt-t26 { font-size: 26px; }
text.tt-redac.tt-t27 { font-size: 27px; }
text.tt-redac.tt-t28 { font-size: 28px; }
text.tt-redac.tt-t30 { font-size: 30px; }

.tt-barre-fraction {
  stroke: #1f2933;
  stroke-width: 2;
}

/* Longueurs écrites sur la figure */
.nom.tt-longueur {
  font: 600 24px system-ui, "Segoe UI", Arial, sans-serif;
  fill: #1f2933;
}

.nom.tt-longueur.cherche {
  fill: #c2410c;
}

.nom.tt-aire {
  font: 600 26px system-ui, "Segoe UI", Arial, sans-serif;
  fill: #1f2933;
}

.nom.tt-mesure {
  font: 600 24px system-ui, "Segoe UI", Arial, sans-serif;
  fill: var(--bleu);
}

.nom.tt-etiquette {
  font: 600 22px system-ui, "Segoe UI", Arial, sans-serif;
  fill: #5b6773;
}

/* Hypoténuse (ou côté) mise en évidence */
.tt-hyp {
  fill: none;
  stroke: #c2410c;
  stroke-width: 7;
  stroke-opacity: 0.45;
  stroke-linecap: round;
}

/* Surfaces */
.tt-poly {
  stroke-linejoin: round;
}

.tt-surface {
  fill: #dbe7fb;
  stroke: #1f2933;
  stroke-width: 2;
}

.tt-contour {
  fill: none;
  stroke: #1f2933;
  stroke-width: 2.5;
}

.tt-contour-image {
  fill: none;
  stroke: #c2410c;
  stroke-width: 2.5;
}

.tt-triangle {
  fill: #f3efe6;
  stroke: #1f2933;
  stroke-width: 2.5;
}

.tt-carre-vide {
  fill: rgba(255, 255, 255, 0.6);
  stroke: #1f2933;
  stroke-width: 2.5;
}

.tt-liquide {
  fill: #5aa6e8;
  stroke: none;
  fill-opacity: 0.85;
}

/* Pièces de puzzle (couleurs distinctes, bord sombre) */
.tt-piece {
  stroke: #1f2933;
  stroke-width: 2;
}

.tt-piece.c1 { fill: #f6c8a8; }
.tt-piece.c2 { fill: #b9dcb4; }
.tt-piece.c3 { fill: #c9c2ef; }
.tt-piece.c4 { fill: #f3e19c; }
.tt-piece.c5 { fill: #a9d4ee; }
.tt-piece.c6 { fill: #f2b6c6; }

/* Surlignage d'une aire */
.tt-surbrillance {
  fill: #fde3d3;
  stroke: #c2410c;
  stroke-width: 2.5;
}

.tt-fantome {
  fill: #e9edf2;
  stroke: #9aa5b1;
  stroke-width: 2;
  stroke-dasharray: 8 6;
}

/* Fond blanc d'un carré (sous le liquide) */
.tt-fond-carre {
  fill: #ffffff;
  stroke: none;
}

/* Corde à nœuds */
.tt-corde {
  fill: none;
  stroke: #9a6a2f;
  stroke-width: 5;
  stroke-linejoin: round;
  stroke-linecap: round;
}

.tt-piquet {
  fill: #8b5a2b;
  stroke: #1f2933;
  stroke-width: 2;
}

.tt-noeud {
  fill: #5a3a14;
  stroke: none;
}

/* Flèches de glissement */
.tt-fleche {
  fill: none;
  stroke: var(--bleu);
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.tt-fleche-directe {
  fill: none;
  stroke: #c2410c;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.tt-fleche-grise {
  fill: none;
  stroke: #7d8894;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Quadrillage (unité) */
.tt-quadrillage {
  fill: none;
  stroke: #b8c9dc;
  stroke-width: 1.3;
}

/* Quadrillage tracé par-dessus les pièces : on compte les carreaux à travers elles */
.tt-quadrillage.dessus {
  stroke: #5f7f9f;
  stroke-opacity: 0.35;
}

/* Câble, sol, décor */
.tt-cable {
  fill: none;
  stroke: #3d4650;
  stroke-width: 3;
}

.tt-decor {
  fill: #e4ddcf;
  stroke: #9a8f7a;
  stroke-width: 2;
}

.tt-cabine {
  fill: #e85d3a;
  stroke: #1f2933;
  stroke-width: 2.5;
}

.tt-vitre {
  fill: #d9eefc;
  stroke: #1f2933;
  stroke-width: 2;
}

.tt-trait-fin {
  fill: none;
  stroke: #1f2933;
  stroke-width: 2.5;
  stroke-linejoin: round;
  stroke-linecap: round;
}

.tt-pointille {
  fill: none;
  stroke: #7d8894;
  stroke-width: 2;
  stroke-dasharray: 8 6;
}

.tt-axe-symetrie {
  fill: none;
  stroke: #c2410c;
  stroke-width: 2.5;
  stroke-dasharray: 14 8;
}

.tt-surface-image {
  fill: #fbd9c5;
  stroke: #c2410c;
  stroke-width: 2.5;
}

/* Dessins qui glissent (translation) */
.tt-dessin {
  stroke: #1f2933;
  stroke-width: 2;
}

.tt-dessin.a { fill: #f2a65a; }
.tt-dessin.b { fill: #a9d4ee; }
.tt-dessin.c { fill: #c0504d; }
.tt-dessin.d { fill: #fff6c9; }
.tt-dessin.oeil { fill: #1f2933; }

.point.tt-point-image {
  stroke: #c2410c;
}

.tt-parallelogramme {
  fill: #fde3d3;
  fill-opacity: 0.7;
  stroke: #c2410c;
  stroke-width: 2;
  stroke-dasharray: 8 6;
}

.tt-sol {
  fill: #e3ecd9;
  stroke: none;
}

.tt-montagne {
  fill: #d6d0c4;
  stroke: #9a8f7a;
  stroke-width: 2;
}

.tt-decor.toit {
  fill: #9a8f7a;
}

.tt-chariot {
  fill: #3d4650;
  stroke: #1f2933;
  stroke-width: 1.5;
}

.tt-bande {
  fill: #ffffff;
  stroke: none;
}

/* Centre d'une symétrie centrale */
.point.tt-centre {
  stroke: #6025c9;
  stroke-width: 3;
}

/* Panneau de mesures (fond blanc au-dessus des droites prolongées) */
.tt-panneau {
  fill: #ffffff;
  fill-opacity: 0.94;
  stroke: #d9d5cc;
  stroke-width: 2;
}

.tt-redac.petit {
  font-size: 21px;
}

/* Trigonométrie : côtés repérés par rapport à l'angle */
.tt-cote {
  fill: none;
  stroke-width: 4;
  stroke-linecap: round;
}

.tt-cote.hyp { stroke: #c2410c; }
.tt-cote.adj { stroke: #1f5fd1; }
.tt-cote.opp { stroke: #15803d; }

.nom.tt-etiquette-cote {
  font: 600 22px system-ui, "Segoe UI", Arial, sans-serif;
}

.nom.tt-etiquette-cote.hyp { fill: #c2410c; }
.nom.tt-etiquette-cote.adj { fill: #1f5fd1; }
.nom.tt-etiquette-cote.opp { fill: #15803d; }

.tt-angle-secteur {
  fill: #fde3d3;
  stroke: #c2410c;
  stroke-width: 2;
}

/* Feuille de papier (pliage) */
.tt-feuille {
  fill: #fffdf6;
  stroke: #b9b2a3;
  stroke-width: 2;
}

/* Verso d'une feuille ou d'une pièce pliée */
.tt-feuille.verso {
  fill: #e6dccb;
}

.tt-surface.verso {
  fill: #c9d7ef;
}

/* Cubes en perspective cavalière (face avant, dessus plus clair, côté plus sombre) */
.tt-cube {
  stroke: #1f2933;
  stroke-width: 1.5;
  stroke-linejoin: round;
}
.tt-cube.face.c1 { fill: #f6c8a8; }
.tt-cube.dessus.c1 { fill: #fbe0cd; }
.tt-cube.cote.c1 { fill: #d9a582; }
.tt-cube.face.c2 { fill: #b9dcb4; }
.tt-cube.dessus.c2 { fill: #d8eed4; }
.tt-cube.cote.c2 { fill: #94bf8e; }
.tt-cube.face.c3 { fill: #c9c2ef; }
.tt-cube.dessus.c3 { fill: #e2ddf8; }
.tt-cube.cote.c3 { fill: #a49bd6; }
.tt-cube.face.c4 { fill: #f3e19c; }
.tt-cube.dessus.c4 { fill: #f9efc6; }
.tt-cube.cote.c4 { fill: #d4bf70; }
.tt-cube.face.c5 { fill: #a9d4ee; }
.tt-cube.dessus.c5 { fill: #d0e9f7; }
.tt-cube.cote.c5 { fill: #82b6d6; }
.tt-cube.face.c6 { fill: #f2b6c6; }
.tt-cube.dessus.c6 { fill: #f8d5df; }
.tt-cube.cote.c6 { fill: #d48ea1; }

.tt-redac.moyen {
  font-size: 24px;
}

/* Noms de vecteurs (flèche au-dessus des lettres) */
.nom.tt-vecteur {
  font: italic 30px "Times New Roman", serif;
  fill: #1f5fd1;
}

.nom.tt-vecteur.somme {
  fill: #c2410c;
}

/* Roues dentées (ROT-01, figure=engrenage) */
.tt-roue {
  fill: #dbe7fb;
  stroke: #1f5fd1;
  stroke-width: 2.5;
  stroke-linejoin: round;
}

.tt-roue.b {
  fill: #fde2cf;
  stroke: #c2410c;
}

.tt-moyeu {
  fill: #ffffff;
  stroke: #52606d;
  stroke-width: 2;
}

.tt-rayon {
  fill: none;
  stroke: #1f2933;
  stroke-width: 3;
  stroke-linecap: round;
}

.point.tt-repere {
  stroke: #1f2933;
  stroke-width: 3.5;
}
