/* =========================================================
   2-ICA — Couche d'amélioration page d'accueil (2026)
   Chargée APRÈS style.css. Tout est scopé à la home.
   Objectif : signature interactive + correctifs + finitions.
   ========================================================= */

/* ---------- 1. Correctif typographie mobile (H1 débordait) ---------- */
body[data-page="home"] .home-hero-copy h1{
  overflow-wrap:break-word;
  hyphens:auto;
  word-break:normal;
}
@media (max-width:760px){
  body[data-page="home"] .home-hero-copy h1{
    font-size:clamp(2rem,8.5vw,2.6rem);
    line-height:1.08;
    letter-spacing:-.01em;
  }
  body[data-page="home"] .hero-actions .btn-gold,
  body[data-page="home"] .hero-actions .btn-outline{
    flex:1 1 100%;
  }
}

/* ---------- 2. Bandeau confiance (sous le hero) ---------- */
body[data-page="home"] .trust-strip{
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.55);
}
body[data-page="home"] .trust-strip-inner{
  display:flex;align-items:center;justify-content:center;gap:14px 30px;
  flex-wrap:wrap;padding:18px 0;
}
body[data-page="home"] .trust-strip-label{
  font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted);font-weight:700;
}
body[data-page="home"] .trust-chip{
  font-family:var(--font-display);font-weight:700;font-size:1.15rem;
  color:var(--navy);opacity:.78;letter-spacing:.02em;
  transition:opacity .2s ease, transform .2s ease;
}
body[data-page="home"] .trust-chip:hover{opacity:1;transform:translateY(-1px)}

/* ---------- 3. SIGNATURE : carte "Essai express" interactive ---------- */
/* On neutralise le panneau sombre pour le rendre clair et engageant */
body[data-page="home"] .home-hero-panel.is-taster{
  background:transparent;border:none;box-shadow:none;padding:0;
}
body[data-page="home"] .home-hero-panel.is-taster::before,
body[data-page="home"] .home-hero-panel.is-taster::after{display:none}

.taster{
  position:relative;
  background:linear-gradient(180deg,#FFFFFF 0%,#FCFBF7 100%);
  border:1px solid rgba(197,165,90,.32);
  border-radius:var(--radius-lg);
  box-shadow:0 30px 70px rgba(10,22,40,.16),0 0 0 6px rgba(197,165,90,.06);
  padding:22px 22px 18px;
  overflow:hidden;
}
.taster::before{
  content:"";position:absolute;inset:0 0 auto 0;height:4px;
  background:linear-gradient(90deg,var(--gold),#E3CB91,transparent);
}
.taster-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.taster-kicker{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;
  color:#8E7130;background:rgba(197,165,90,.14);
  padding:7px 12px;border-radius:999px;
}
.taster-kicker .dot{
  width:8px;height:8px;border-radius:50%;background:var(--success);
  box-shadow:0 0 0 0 rgba(20,184,106,.5);animation:tasterPulse 2s infinite;
}
@keyframes tasterPulse{0%,100%{box-shadow:0 0 0 0 rgba(20,184,106,.5)}50%{box-shadow:0 0 0 7px rgba(20,184,106,0)}}
.taster-streak{
  display:inline-flex;align-items:center;gap:7px;font-weight:800;color:var(--navy);
  font-size:.92rem;background:#fff;border:1px solid var(--line);
  padding:6px 12px;border-radius:999px;box-shadow:var(--shadow-sm);
}
.taster-streak svg{width:16px;height:16px;color:#F59E0B}
.taster-streak.bump{animation:streakBump .45s ease}
@keyframes streakBump{0%{transform:scale(1)}40%{transform:scale(1.22)}100%{transform:scale(1)}}

.taster-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.taster-dots{display:inline-flex;gap:6px}
.taster-dots i{width:22px;height:5px;border-radius:999px;background:var(--line-strong);transition:background .3s ease}
.taster-dots i.done{background:var(--gold)}
.taster-dots i.current{background:var(--navy)}
.taster-count{font-size:.8rem;font-weight:700;color:var(--muted)}

.taster-q{
  font-family:var(--font-display);color:var(--navy);
  font-size:1.42rem;line-height:1.18;margin:0 0 16px;min-height:2.2em;
}
.taster-options{display:grid;gap:10px}
.taster-option{
  display:flex;align-items:center;gap:12px;width:100%;text-align:left;
  padding:14px 15px;border-radius:14px;
  border:1.5px solid var(--line-strong);background:#fff;color:var(--text);
  font-weight:600;font-size:.98rem;
  transition:border-color .18s ease,background .18s ease,transform .12s ease,box-shadow .18s ease;
}
.taster-option .key{
  width:26px;height:26px;flex-shrink:0;border-radius:8px;
  display:grid;place-items:center;font-weight:800;font-size:.82rem;
  background:var(--bg);color:var(--navy);border:1px solid var(--line);
  transition:all .18s ease;
}
.taster-option:not(:disabled):hover{
  border-color:rgba(37,99,235,.5);box-shadow:0 8px 22px rgba(37,99,235,.12);
  transform:translateY(-1px);
}
.taster-option:not(:disabled):hover .key{background:var(--blue);color:#fff;border-color:var(--blue)}
.taster-option:disabled{cursor:default}
.taster-option.correct{
  border-color:rgba(20,184,106,.6);background:var(--success-soft);color:#0E7A47;
}
.taster-option.correct .key{background:var(--success);color:#fff;border-color:var(--success)}
.taster-option.wrong{
  border-color:rgba(225,87,87,.55);background:var(--danger-soft);color:#B53434;
}
.taster-option.wrong .key{background:var(--danger);color:#fff;border-color:var(--danger)}
.taster-option.dim{opacity:.5}

.taster-foot{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin-top:16px;min-height:44px;
}
.taster-feedback{font-size:.9rem;font-weight:700;color:var(--muted)}
.taster-feedback.ok{color:var(--success)}
.taster-feedback.no{color:var(--danger)}
.taster-next{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 18px;border-radius:999px;font-weight:800;font-size:.92rem;
  background:linear-gradient(135deg,var(--navy),var(--navy-3));color:#fff;
  box-shadow:0 12px 26px rgba(10,22,40,.18);
  opacity:0;transform:translateY(6px);pointer-events:none;
  transition:opacity .25s ease,transform .25s ease;
}
.taster-next.show{opacity:1;transform:none;pointer-events:auto}
.taster-next:hover{transform:translateY(-2px)}

.taster-done{text-align:center;padding:6px 4px 2px}
.taster-done .score{
  font-family:var(--font-body);font-weight:800;font-size:2.4rem;color:var(--navy);
  letter-spacing:-.02em;line-height:1;
}
.taster-done .score b{color:var(--gold)}
.taster-done p{color:var(--muted);margin:8px 0 16px;font-size:.95rem}
.taster-done .btn-gold{width:100%}

/* Pop "+10 XP" */
.xp-pop{
  position:absolute;top:54px;right:24px;pointer-events:none;
  font-weight:900;color:var(--gold);font-size:1.05rem;
  opacity:0;
}
.xp-pop.go{animation:xpFly 1s ease forwards}
@keyframes xpFly{
  0%{opacity:0;transform:translateY(6px) scale(.8)}
  25%{opacity:1;transform:translateY(-6px) scale(1.1)}
  100%{opacity:0;transform:translateY(-34px) scale(1)}
}

/* ---------- 4. Stats : préparation au count-up ---------- */
body[data-page="home"] .stat-number{font-variant-numeric:tabular-nums}

/* ---------- 5. Cartes matières plus vivantes ---------- */
body[data-page="home"] .home-subject-card{
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
body[data-page="home"] .home-subject-card::after{
  content:"";position:absolute;right:-30px;bottom:-30px;width:120px;height:120px;
  border-radius:50%;opacity:.10;transition:opacity .25s ease,transform .25s ease;
  background:radial-gradient(circle,var(--navy),transparent 70%);
}
body[data-page="home"] .subject-maths::after{background:radial-gradient(circle,#1B4A8E,transparent 70%)}
body[data-page="home"] .subject-francais::after{background:radial-gradient(circle,#9A4C67,transparent 70%)}
body[data-page="home"] .subject-anglais::after{background:radial-gradient(circle,#2563EB,transparent 70%)}
body[data-page="home"] .subject-sciences::after{background:radial-gradient(circle,#0E9F6E,transparent 70%)}
body[data-page="home"] .subject-economie::after{background:radial-gradient(circle,#B7862E,transparent 70%)}
body[data-page="home"] .subject-langues::after{background:radial-gradient(circle,#6D28D9,transparent 70%)}
body[data-page="home"] .home-subject-card:hover::after{opacity:.2;transform:scale(1.15)}
body[data-page="home"] .home-subject-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
body[data-page="home"] .home-subject-icon{transition:transform .25s ease}
body[data-page="home"] .home-subject-card:hover .home-subject-icon{transform:rotate(-6deg) scale(1.06)}

/* ---------- 6. Rythme vertical resserré ---------- */
body[data-page="home"] .home-stats-section{padding-top:0}
body[data-page="home"] .stats-bar{
  margin-top:-44px;position:relative;z-index:2;
}

/* ---------- 7. Accessibilité : mouvement réduit ---------- */
@media (prefers-reduced-motion:reduce){
  .taster-kicker .dot,.xp-pop.go,.taster-streak.bump,
  body[data-page="home"] .home-subject-card:hover .home-subject-icon{animation:none;transform:none}
  .taster-next{transition:none}
}

/* ---------- 8. Responsive carte taster ---------- */
@media (max-width:1100px){
  .taster{max-width:520px;margin:0 auto}
}
@media (max-width:760px){
  .taster-q{font-size:1.24rem}
  body[data-page="home"] .stats-bar{margin-top:18px}
}


/* Button/clickability fixes — 2026-06-29 */
.home-subject-card[data-route],
.exam-card-public[data-route]{
  cursor:pointer;
  position:relative;
}
.home-subject-card[data-route]:focus-visible,
.exam-card-public[data-route]:focus-visible{
  outline:3px solid rgba(197,165,90,.55);
  outline-offset:4px;
}
.home-subject-card[data-route]::before,
.exam-card-public[data-route]::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
}
