.arithmetic-hero{border-top:4px solid #8a6a32}.arithmetic-targeted-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.arithmetic-page .exercise-card{border-top-color:#8a6a32}.arith-card-head{padding:1.15rem 1.2rem;border-bottom:1px solid #e4ebeb;background:linear-gradient(135deg,#fffaf0,#f8fbfa)}.arith-card-head .training-eyebrow{margin:0 0 .25rem}.arith-card-head h1{margin:0;color:#18364c;font-size:clamp(1.45rem,4vw,2rem)}.arith-card-head p{margin:.45rem 0 0;color:#607480;line-height:1.55}.arith-body{padding:1.2rem}.arith-prompt{margin:0 0 1rem;padding:.9rem 1rem;border-left:4px solid #b28b47;border-radius:0 12px 12px 0;background:#fff8e9;color:#2d4656;line-height:1.6}.arith-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.arith-field{display:grid;gap:.35rem;padding:.8rem;border:1px solid #dbe5e5;border-radius:12px;background:#fbfcfc}.arith-field label,.arith-field>span:first-child{color:#314f60;font-size:.86rem;font-weight:850}.arith-field input[type=text],.arith-field input[type=number],.arith-field select{width:100%;min-height:43px;padding:.55rem .65rem;border:1px solid #bdcdd1;border-radius:9px;background:#fff;color:#18364c;font:inherit}.arith-inline{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.arith-inline input{width:110px!important}.arith-equation{font-size:1.08rem;font-weight:850;color:#18364c}.choice-list{display:grid;gap:.55rem}.choice-list label{display:flex;align-items:flex-start;gap:.55rem;padding:.7rem .8rem;border:1px solid #dbe5e5;border-radius:10px;background:#fbfcfc;line-height:1.45}.choice-list input{margin-top:.2rem}.divisibility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.divisibility-grid label{display:flex;align-items:center;gap:.5rem;padding:.7rem;border:1px solid #d9e3e3;border-radius:10px;background:#fbfcfc;font-weight:800}.arith-note{margin:.8rem 0;padding:.75rem .85rem;border-radius:10px;background:#eef6f4;color:#365d62;line-height:1.5}.solution-steps{display:grid;gap:.55rem}.solution-steps>div{padding:.65rem .75rem;border-radius:9px;background:#f5f8f8}.solution-transition{margin-top:1rem;padding:.85rem 1rem;border:2px solid #c9a760;border-radius:12px;background:#fff8e7;color:#664b16;font-weight:800;line-height:1.5}.factor-help{font-size:.8rem;color:#6b7c85}.brevet-question-block{display:grid;gap:.8rem;margin-top:1rem}.brevet-question-block>div,.brevet-question-block>fieldset{padding:.8rem .9rem;border:1px solid #d9e3e3;border-radius:11px;background:#fbfcfc}.brevet-question-block fieldset{margin:0}.brevet-question-block legend{font-weight:850;color:#18364c}.brevet-question-block label{font-weight:750}.mini-options{display:grid;gap:.5rem;margin-top:.55rem}.mini-options label{display:flex;gap:.45rem;align-items:flex-start}.arith-success{padding:.85rem .9rem;border:1px solid #a8d3b9;border-radius:12px;background:#edf8f1;color:#225e3f;line-height:1.5}.arith-muted{color:#687b85}.arith-body .feedback-box{display:none}.arith-body .feedback-box.show{display:block}@media(max-width:760px){.arithmetic-targeted-grid,.arith-grid{grid-template-columns:1fr}.divisibility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.arith-body{padding:1rem}.arith-card-head{padding:1rem}}@media(max-width:430px){.divisibility-grid{grid-template-columns:1fr}.arith-inline{align-items:stretch}.arith-inline input{width:100%!important}}


/* ===== Arithmétique V1.1 : calculatrice intégrée ===== */
.calculator-button{min-height:44px;padding:.68rem 1rem;border:1px solid #a9bdc4;border-radius:10px;background:#f4f8f8;color:#244b60;font-weight:850}.calculator-button:hover{background:#eaf2f2}.training-calculator{display:grid;gap:1rem}.calculator-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.calculator-tab{min-height:44px;border:1px solid #cbd9dc;border-radius:10px;background:#f7f9f9;color:#49626f;font-weight:850}.calculator-tab.active{border-color:#5e958c;background:#e9f4f1;color:#145f58}.calculator-panel{display:grid;gap:.8rem}.calculator-display-label{font-size:.82rem;font-weight:850;color:#526b78}.calculator-display{width:100%;min-height:58px;padding:.7rem .85rem;border:2px solid #b8cbd0;border-radius:12px;background:#fff;color:#18364c;font-family:"Cambria Math",Cambria,Georgia,serif;font-size:1.45rem;font-weight:800;text-align:right}.calculator-keypad{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem}.calculator-keypad button{min-height:48px;border:1px solid #cbd9dc;border-radius:10px;background:#fff;color:#18364c;font-size:1.05rem;font-weight:850}.calculator-keypad button.operator{background:#f1f6f5;color:#17685f}.calculator-keypad button.equals{border-color:#16786f;background:#16786f;color:#fff}.calculator-message{min-height:1.2em;color:#a43d45;font-size:.86rem}.calculator-help{margin:0;color:#425f6d;line-height:1.5}.euclid-inputs{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.euclid-inputs label{display:grid;gap:.35rem;color:#314f60;font-size:.84rem;font-weight:850}.euclid-inputs input{width:100%;min-height:46px;padding:.55rem .65rem;border:1px solid #bdcdd1;border-radius:9px;background:#fff;color:#18364c;font:inherit}.euclid-calc-button{justify-self:start}.euclid-result{display:none}.euclid-result.show{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;padding:.85rem;border:1px solid #b7d5cd;border-radius:12px;background:#eef7f4}.euclid-result.show>div{padding:.65rem;border-radius:9px;background:#fff}.euclid-result span,.euclid-result strong{display:block}.euclid-result span{color:#607480;font-size:.8rem;font-weight:750}.euclid-result strong{margin-top:.15rem;color:#18364c;font-size:1.35rem}.euclid-result p,.euclid-result small{grid-column:1/-1;margin:0}.euclid-result p{padding-top:.2rem;font-family:"Cambria Math",Cambria,Georgia,serif;font-size:1.08rem}.euclid-result small{color:#5e747f}.euclid-result.error{display:block;padding:.75rem .85rem;border:1px solid #e1b3b5;border-radius:10px;background:#fcf0f0;color:#85333a}.calculator-footer-note{margin:0;padding:.7rem .8rem;border-radius:10px;background:#f7f8f6;color:#61747d;font-size:.82rem;line-height:1.45}@media(max-width:520px){.calculator-tabs,.euclid-inputs{grid-template-columns:1fr}.calculator-keypad{gap:.35rem}.calculator-keypad button{min-height:46px}}


/* ===== Arithmétique V1.2 : affichage mathématique des fractions ===== */
.math-fraction{
  display:inline-grid;
  grid-template-rows:auto auto;
  align-items:center;
  justify-items:stretch;
  min-width:2.2em;
  margin:0 .14em;
  vertical-align:middle;
  color:inherit;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-weight:700;
  line-height:1;
}
.math-fraction-num,.math-fraction-den{
  display:block;
  padding:.08em .28em;
  text-align:center;
}
.math-fraction-num{
  padding-bottom:.14em;
  border-bottom:1.6px solid currentColor;
}
.math-fraction-den{padding-top:.14em}
.math-fraction-emphasis{
  color:#18364c;
  font-size:1.12em;
  font-weight:850;
}
.math-fraction-large{font-size:1.18em}
.fraction-prompt{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.18rem;
}
.fraction-answer-field{
  align-content:start;
}
.fraction-answer-wrap{
  display:flex;
  align-items:center;
  min-height:104px;
  margin-top:.5rem;
}
.fraction-entry{
  display:grid;
  grid-template-rows:auto 2px auto;
  justify-items:center;
  align-items:center;
  width:112px;
  gap:6px;
}
.fraction-entry input{
  width:100%;
  min-height:46px;
  padding:.5rem .6rem;
  border:1.5px solid #9fb5bc;
  border-radius:8px;
  background:#fff;
  color:#18364c;
  font:800 1.05rem/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  text-align:center;
}
.fraction-entry input:focus{
  outline:none;
  border-color:#16786f;
  box-shadow:0 0 0 3px rgba(22,120,111,.12);
}
.fraction-entry-bar{
  display:block;
  width:122px;
  height:2px;
  border-radius:999px;
  background:#18364c;
}
.fraction-solution-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.7rem;
  margin:.8rem 0 .2rem;
  color:#18364c;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-size:1.15rem;
  font-weight:800;
}
@media(max-width:520px){
  .fraction-entry{width:96px}
  .fraction-entry-bar{width:106px}
}


/* ===== Arithmétique V1.3 : écriture des facteurs premiers avec puissances ===== */
.factorization-stack{
  display:grid;
  gap:.85rem;
}
.factor-equation-row{
  display:flex;
  align-items:center;
  gap:.7rem;
  margin-top:.25rem;
}
.factor-equation-row>strong{
  flex:0 0 auto;
  min-width:72px;
  color:#18364c;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-size:1.08rem;
}
.factor-equation-row>input,
.factor-power-entry{
  flex:1 1 auto;
  min-width:0;
}
.factor-power-entry{
  display:flex;
  align-items:center;
  gap:.45rem;
}
.factor-power-input{
  flex:1 1 auto;
  min-width:0;
}
.power-keypad{
  display:flex;
  flex:0 0 auto;
  gap:.3rem;
}
.power-keypad button{
  min-width:42px;
  min-height:42px;
  padding:.35rem .55rem;
  border:1px solid #9fb8bd;
  border-radius:9px;
  background:#f4f9f8;
  color:#164c52;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-size:1.22rem;
  font-weight:850;
}
.power-keypad button:hover{
  background:#eaf5f2;
}
.power-writing-field{
  border-color:#bdd8d3;
  background:#fbfefd;
}
@media(max-width:620px){
  .factor-equation-row{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .factor-equation-row>strong{
    width:100%;
  }
  .factor-power-entry{
    width:100%;
    flex-wrap:wrap;
  }
}


/* ===== Arithmétique V1.4 : simplification visuelle des fractions ===== */
.calculator-panel[hidden]{display:none!important}

.cancellation-card{
  padding:.9rem;
  border:1px solid #d8e4e3;
  border-radius:12px;
  background:#fbfdfc;
}
.cancellation-card .short-prompt{
  margin:0 0 .8rem;
  color:#314f60;
  font-weight:800;
  line-height:1.45;
}
.cancel-fraction{
  display:grid;
  gap:.55rem;
  max-width:720px;
  margin:.25rem auto 0;
}
.cancel-factor-row{
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  align-items:center;
  gap:.65rem;
}
.cancel-side-label{
  color:#18364c;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-size:1.08rem;
  font-weight:850;
  text-align:right;
}
.cancel-factor-list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.32rem;
}
.cancel-factor{
  min-width:42px;
  min-height:42px;
  padding:.35rem .65rem;
  border:1px solid #abc1c3;
  border-radius:9px;
  background:#fff;
  color:#18364c;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-size:1.08rem;
  font-weight:850;
}
.cancel-factor:hover{background:#f0f7f5}
.cancel-factor.crossed{
  border-color:#c5985f;
  background:#fff5e6;
  color:#7d5b2e;
  text-decoration:line-through;
  text-decoration-thickness:2px;
}
.factor-times{
  color:#657a84;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-weight:800;
}
.cancel-fraction-bar{
  height:2px;
  margin-left:90px;
  border-radius:999px;
  background:#18364c;
}
.factor-cancel-solution{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:.8rem;
  margin:1rem 0 .2rem;
  color:#18364c;
  font-family:"Cambria Math",Cambria,Georgia,serif;
  font-size:1.1rem;
  font-weight:800;
}
.factor-fraction{
  display:grid;
  grid-template-rows:auto 2px auto;
  align-items:center;
  gap:.35rem;
}
.factor-fraction-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:.2rem;
  min-height:30px;
}
.factor-fraction-bar{
  display:block;
  width:100%;
  min-width:180px;
  height:2px;
  background:#18364c;
}
.solution-factor-crossed{
  color:#8a6536;
  text-decoration:line-through;
  text-decoration-thickness:2px;
}
@media(max-width:560px){
  .cancel-factor-row{grid-template-columns:1fr}
  .cancel-side-label{text-align:left}
  .cancel-fraction-bar{margin-left:0}
}
