/* ============================================================
   akdemie.css — pages cours + exercices de l'AKdémie
   ============================================================ */
.akd-crumb{ display:inline-block; margin:28px 0 8px; font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:1px; color:var(--ash); }
.akd-crumb:hover{ color:var(--ember); }

/* ---- Cours ---- */
.cours{ max-width:820px; margin:0 auto; padding-bottom:90px; }
.cours-intro{ font-size:18px; line-height:1.65; margin:12px 0 36px; }
.cours h2{ font-family:'Bebas Neue',sans-serif; font-weight:400; font-size:34px; letter-spacing:1px; line-height:1.05; margin:56px 0 14px; }
.cours h2 .num{ color:var(--ember); margin-right:10px; }
.cours p{ margin:0 0 14px; }
.cours .table-wrap{ margin:22px 0 10px; }
.cours .legend{ text-align:center; font-size:14px; color:var(--ash); margin-top:12px; }

.akd-box{ background:var(--card); border:1px solid var(--line); border-radius:12px; padding:20px 22px; }
.akd-box--accent{ border:2px solid var(--ember); }
.akd-duo{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; margin:18px 0; }
.akd-kicker{ font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:var(--ash); }
.akd-big{ font-family:'Bebas Neue',sans-serif; font-size:64px; line-height:1; color:var(--ember); }
.akd-big--gold{ color:#a8730e; }
.akd-formula{ font-family:'Bebas Neue',sans-serif; font-size:40px; line-height:1.05; letter-spacing:.5px; }
.akd-formula em{ font-style:normal; color:var(--ember); }
.akd-outs-line{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-top:14px; }
.akd-outs-line strong{ font-family:'Bebas Neue',sans-serif; font-weight:400; font-size:38px; color:var(--ember); }
.akd-rules{ list-style:none; padding:0; margin:14px 0; display:grid; gap:10px; }
.akd-rules li{ background:var(--card); border:1px solid var(--line); border-radius:10px; padding:14px 18px; }
.akd-rules li b{ color:var(--ember); }

/* tableaux */
.akd-table{ width:100%; border-collapse:collapse; margin:16px 0; background:var(--card); border-radius:12px; overflow:hidden; border:1px solid var(--line); }
.akd-table th{ text-align:left; font-family:'JetBrains Mono',monospace; font-size:11px; letter-spacing:1px; text-transform:uppercase; color:var(--ash); padding:12px 14px; border-bottom:2px solid var(--ink); }
.akd-table td{ padding:10px 14px; border-bottom:1px solid var(--line); vertical-align:middle; }
.akd-table tr:last-child td{ border-bottom:none; }
.akd-table .n{ font-family:'Bebas Neue',sans-serif; font-size:30px; color:var(--ember); }
.akd-table .pct{ font-family:'JetBrains Mono',monospace; font-weight:700; font-size:18px; }
.akd-table .akc{ --akc-w:38px; }
.akd-scroll{ overflow-x:auto; }
.akd-bar{ height:16px; background:#ede6db; border-radius:4px; overflow:hidden; min-width:90px; }
.akd-bar span{ display:block; height:100%; background:var(--ember); }

/* barre pot / mise / call */
.akd-potbar{ display:flex; gap:4px; height:52px; margin:16px 0 10px; font-family:'JetBrains Mono',monospace; font-weight:700; color:#fff; font-size:15px; }
.akd-potbar div{ display:flex; align-items:center; justify-content:center; text-align:center; padding:0 6px; }
.akd-potbar .p{ flex:2; background:#3a322d; border-radius:8px 0 0 8px; }
.akd-potbar .b{ flex:1; background:#8a7f75; }
.akd-potbar .c{ flex:1; background:var(--ember); border-radius:0 8px 8px 0; }

.akd-cta{ display:flex; gap:12px; flex-wrap:wrap; margin-top:56px; padding:26px; background:var(--void); border-radius:14px; align-items:center; justify-content:space-between; color:var(--cream); }
.akd-cta h3{ font-family:'Bebas Neue',sans-serif; font-weight:400; font-size:30px; letter-spacing:1px; margin:0; }
.akd-cta p{ margin:2px 0 0; color:#cdbcb4; font-size:14px; }

/* ---- Exercices / quiz ---- */
.quiz{ max-width:820px; margin:0 auto; padding-bottom:90px; }
.quiz-head{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin:8px 0 10px; font-family:'JetBrains Mono',monospace; font-size:13px; font-weight:700; letter-spacing:1px; color:var(--ash); }
.quiz-head .score{ color:var(--ember); }
.quiz-progress{ height:6px; background:var(--line); border-radius:3px; overflow:hidden; margin-bottom:22px; }
.quiz-progress span{ display:block; height:100%; width:0; background:var(--ember); transition:width .4s ease; }
.quiz-tag{ display:inline-block; font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; background:var(--void); color:var(--gold); padding:4px 10px; border-radius:4px; margin-bottom:10px; }
.quiz-tag--boss{ background:var(--red); color:#fff; }
.quiz-q{ font-family:'Bebas Neue',sans-serif; font-size:32px; line-height:1.1; letter-spacing:.5px; margin:20px 0 6px; text-align:center; }
.quiz-sub{ text-align:center; color:var(--ash); font-size:14px; margin-bottom:16px; }
.quiz-form{ display:flex; justify-content:center; align-items:center; gap:10px; flex-wrap:wrap; margin:10px 0 6px; }
.quiz-input{ position:relative; }
.quiz-input input{ width:150px; padding:14px 38px 14px 16px; font-family:'JetBrains Mono',monospace; font-size:22px; font-weight:700; border:2px solid var(--ink); border-radius:10px; background:#fff; text-align:right; }
.quiz-input input:focus{ outline:none; border-color:var(--ember); box-shadow:0 0 0 3px rgba(255,107,53,.25); }
.quiz-input span{ position:absolute; right:14px; top:50%; transform:translateY(-50%); font-family:'JetBrains Mono',monospace; font-size:20px; font-weight:700; color:var(--ash); }
.quiz-btn{ font-family:'Manrope',sans-serif; font-weight:800; font-size:15px; letter-spacing:.3px; padding:15px 26px; border-radius:10px; border:none; cursor:pointer; background:var(--red); color:#fff; transition:transform .15s ease, opacity .2s; }
.quiz-btn:hover{ transform:translateY(-2px); }
.quiz-btn--ghost{ background:transparent; color:var(--ink); border:2px solid var(--ink); }
.quiz-btn--call{ background:#1f6d3b; min-width:140px; }
.quiz-btn--fold{ background:#3a322d; min-width:140px; }
.quiz-error{ text-align:center; color:var(--red); font-size:13px; min-height:18px; }
.quiz-feedback{ margin:14px auto 0; max-width:640px; border-radius:12px; padding:18px 20px; background:var(--card); border:2px solid var(--line); }
.quiz-feedback.ok{ border-color:#1f7a45; }
.quiz-feedback.ko{ border-color:var(--red); }
.quiz-feedback .verdict{ font-family:'Bebas Neue',sans-serif; font-size:30px; letter-spacing:1px; line-height:1; margin-bottom:8px; }
.quiz-feedback.ok .verdict{ color:#1f7a45; }
.quiz-feedback.ko .verdict{ color:var(--red); }
.quiz-feedback p{ margin:4px 0; }
.quiz-feedback .calc{ font-family:'JetBrains Mono',monospace; font-weight:700; }
.quiz-feedback .akc{ --akc-w:34px; }
.quiz-feedback .outs{ display:flex; flex-wrap:wrap; gap:4px; margin:10px 0 4px; }
.quiz-next{ display:flex; justify-content:center; margin-top:16px; }
.quiz-end{ text-align:center; padding:30px 10px; }
.quiz-end .final{ font-family:'Bebas Neue',sans-serif; font-size:110px; line-height:1; color:var(--ember); }
.quiz-end .final small{ font-size:46px; color:var(--ink); }
.quiz-end p{ font-size:17px; margin:8px 0 22px; }
.quiz-end .actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.quiz-boss-intro{ text-align:center; padding:26px 12px; }
.quiz-boss-intro h2{ font-family:'Bebas Neue',sans-serif; font-weight:400; font-size:64px; color:var(--red); line-height:1; margin:0 0 10px; }

@media (max-width:640px){
  .akd-duo{ grid-template-columns:1fr; }
  .akd-big{ font-size:52px; }
  .akd-formula{ font-size:30px; }
  .quiz-q{ font-size:26px; }
  .akd-potbar{ font-size:12px; }
}

[hidden]{ display:none !important; }
.quiz-input input::-webkit-outer-spin-button,.quiz-input input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.quiz-input input[type=number]{ -moz-appearance:textfield; appearance:textfield; }

/* ---- Mobile : tableaux en fiches empilées (plus de défilement horizontal) ---- */
@media (max-width:640px){
  .akd-table--stack, .akd-table--stack tbody{ display:block; }
  .akd-table--stack thead{ display:none; }
  .akd-table--stack tr{
    display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 14px; align-items:center;
    padding:14px 16px; border-bottom:1px solid var(--line);
  }
  .akd-table--stack tr:last-child{ border-bottom:none; }
  .akd-table--stack td{ display:block; padding:0; border:none; }
  .akd-table--stack td[data-label]::before{
    content:attr(data-label); display:block; margin-bottom:2px;
    font-family:'JetBrains Mono',monospace; font-size:10px; font-weight:700; letter-spacing:1px;
    text-transform:uppercase; color:var(--ash);
  }
  .akd-table--stack .full{ grid-column:1 / -1; }
  .akd-table--stack .right{ text-align:right; }
  .akd-table--stack .akc{ --akc-w:32px; }
  .akd-table--stack .n{ font-size:34px; line-height:1; }

  .akd-outs-line .akc,
  .quiz-feedback .akc{ --akc-w:28px; }
  .akd-outs-line{ gap:10px; }
  .akd-outs-line strong{ font-size:30px; }
  .akd-cta{ padding:20px; }
  .akd-cta .btn{ width:100%; text-align:center; }
  .quiz-feedback{ padding:16px; }
  .quiz-feedback .calc{ font-size:13px; }
  .quiz-btn--call, .quiz-btn--fold{ min-width:0; flex:1; }
}

/* ---- Grille des mains de départ (13 × 13) ---- */
.akd-grid{ display:grid; grid-template-columns:repeat(13, minmax(0,1fr)); gap:2px; max-width:640px; margin:18px auto 10px; }
.akd-grid span{
  aspect-ratio:1; display:flex; align-items:center; justify-content:center; border-radius:3px;
  font-family:'JetBrains Mono',monospace; font-size:clamp(7px, 1.35vw, 12px); font-weight:700;
  background:#e8e1d6; color:#8a7d72;
}
.akd-grid .t-premium{ background:#c0201a; color:#fff; }
.akd-grid .t-forte  { background:#ff6b35; color:#fff; }
.akd-grid .t-jouable{ background:#f4b740; color:#3a2a06; }
.akd-grid .t-spec   { background:#9fd6ad; color:#123d22; }
.akd-legend{ display:flex; flex-wrap:wrap; gap:8px 18px; justify-content:center; font-size:13px; margin:6px 0 18px; }
.akd-legend i{ display:inline-block; width:14px; height:14px; border-radius:3px; vertical-align:-2px; margin-right:6px; }
.akd-hands{ display:grid; grid-template-columns:repeat(auto-fit, minmax(100px,1fr)); gap:12px; margin:16px 0; }
.akd-hands .akd-box{ text-align:center; padding:16px 12px; }
.akd-hands .akc{ --akc-w:44px; }
.akd-hands p{ margin:8px 0 0; font-size:14px; }
.akd-hands b{ display:block; font-family:'Bebas Neue',sans-serif; font-weight:400; font-size:22px; letter-spacing:.5px; }

/* ---- Liste de positions (cours) ---- */
.akd-poslist{ display:grid; gap:8px; margin:14px 0; }
.akd-poslist div{ display:flex; gap:10px; align-items:baseline; flex-wrap:wrap; background:var(--card); border:1px solid var(--line); border-radius:10px; padding:10px 14px; }
.akd-poslist strong{ font-family:'JetBrains Mono',monospace; min-width:86px; }
.akd-pos{ display:inline-block; font-family:'JetBrains Mono',monospace; font-size:12px; font-weight:700; padding:2px 8px; border-radius:999px; color:#fff; }
.akd-pos.early{ background:#a8322f; } .akd-pos.middle{ background:#9a6a0c; }
.akd-pos.late{ background:#1f6d3b; }  .akd-pos.blinds{ background:#2f4f82; }

/* ---- Choix multiples (exo positions) ---- */
.quiz-choices{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; max-width:640px; margin:6px auto; }
.quiz-choice{
  font-family:'JetBrains Mono',monospace; font-weight:700; font-size:15px; min-width:78px;
  padding:12px 14px; border-radius:10px; border:2px solid var(--ink); background:#fff; color:var(--ink);
  cursor:pointer; transition:transform .15s, background .2s;
}
.quiz-choice:hover:not(:disabled){ transform:translateY(-2px); background:#fff4ee; }
.quiz-choice:disabled{ cursor:default; opacity:.45; }
.quiz-choice.is-good{ background:#1f7a45; border-color:#1f7a45; color:#fff; opacity:1; }
.quiz-choice.is-bad{ background:var(--red); border-color:var(--red); color:#fff; opacity:1; }
@media (max-width:640px){
  .quiz-choice{ min-width:0; flex:1 1 28%; padding:12px 6px; font-size:14px; }
}
@media (max-width:640px){ .akd-hands .akc{ --akc-w:32px; } .akd-hands .akd-box{ padding:12px 6px; } .akd-hands p{ font-size:12px; } }
.quiz-unit-after{ font-family:"JetBrains Mono",monospace; font-weight:700; font-size:18px; color:var(--ash); }
.quiz-unit-after:empty{ display:none; }
