/* Pages annexes : page de texte, à propos, contact. Jetons et styles communs : home.css et bundle.css du système. */
:root{--danger:#b3261e}
.ax-wrap{max-width:732px;margin:0 auto;padding:var(--space-2) var(--space-4) 0}
.ax-hl{box-shadow:inset 0 -.32em 0 var(--logo-yellow)}
.ax-date{margin:var(--space-3) 0 0;font-size:16px;line-height:24px;color:var(--ink-muted)}

/* Sommaire : replié sur mobile, toujours ouvert sur ordinateur. <details> natif ; l'attribut
   « open » est posé/retiré par main.js selon la largeur d'écran (la spécification UA interdit
   de forcer l'affichage du contenu d'un <details> fermé par CSS seul). */
.ax-toc{margin-top:var(--space-5);padding:0 var(--space-4);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-md)}
.ax-toc summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;list-style:none;color:var(--ink);font:600 18px/24px var(--font-display);cursor:pointer}
.ax-toc summary::-webkit-details-marker{display:none}
.ax-toc summary::after{content:"";width:9px;height:9px;margin-right:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg)}
.ax-toc[open] summary::after{transform:translateY(2px) rotate(225deg)}
.ax-toc ol{margin:0;padding:0 0 var(--space-2) 22px}
.ax-toc li::marker{font:600 16px var(--font-display);color:var(--ink-muted)}
.ax-toc a{display:flex;align-items:center;min-height:44px;color:var(--ink);font-size:17px;line-height:24px;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}
.ax-toc a:hover{text-decoration-color:var(--ink)}

/* Corps */
.ax-body h2{margin:var(--space-6) 0 var(--space-3);font:600 26px/32px var(--font-display);scroll-margin-top:var(--space-4)}
.ax-body > p{margin:0 0 var(--space-4)}
.ax-body > ul{margin:0 0 var(--space-4);padding-left:22px}
.ax-body > ul li{margin-bottom:var(--space-2)}
.ax-body a:not(.pcc-btn),.ax-small a:not(.pcc-btn){color:var(--ink);text-decoration-color:var(--logo-orange);text-decoration-thickness:3px;text-underline-offset:4px}
.ax-tablewrap{margin:0 0 var(--space-4);overflow-x:auto}
.ax-table{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-md);border-collapse:separate;border-spacing:0;overflow:hidden;background:var(--surface)}
.ax-table th,.ax-table td{padding:var(--space-3);text-align:left;vertical-align:top;font-size:16px;line-height:22px}
.ax-table thead th{background:var(--surface-sunken);font:600 16px/22px var(--font-display)}
.ax-table tbody td{border-top:1px solid var(--line)}
.ax-info{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start;margin:0 0 var(--space-4);padding:var(--space-4);background:var(--surface-sunken);border-radius:var(--radius-lg)}
.ax-info__ico{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--surface);font:600 17px/1 var(--font-display)}
.ax-info p{margin:0}

/* À propos */
.ax-authors{display:grid;gap:var(--space-3);margin-top:var(--space-5)}
.ax-author{display:grid;grid-template-columns:72px minmax(0,1fr);gap:var(--space-4);align-items:center;padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}
.ax-author__av{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--accent-tint)}
.ax-author__name{margin:0;font:600 20px/26px var(--font-display)}
.ax-author__bio{margin:var(--space-1) 0 0;font-size:16px;line-height:24px;color:var(--ink-muted)}
.ax-bonus{margin:var(--space-5) 0 var(--space-6);padding:var(--space-5) var(--space-4);background:var(--surface);border:2px solid var(--ink);border-radius:var(--radius-lg);box-shadow:0 6px 0 var(--logo-orange)}
.ax-bonus p{margin:var(--space-2) 0 0}
.ax-bonus__k{display:inline-flex;align-items:center;height:28px;margin:0 !important;padding:0 12px;border:1.5px solid var(--ink);border-radius:var(--radius-pill);background:var(--logo-yellow);font:600 15px/1 var(--font-display)}
.ax-bonus__t{margin-top:var(--space-3) !important;font:600 22px/28px var(--font-display)}
.ax-ctas{display:grid;gap:var(--space-2);margin-top:var(--space-6)}
.ax-cta{min-height:56px;font-size:19px}
.ax-cta.pcc-btn--action{box-shadow:0 4px 0 var(--ink)}

/* Contact */
.ax-lead{margin:var(--space-3) 0 0;font-size:19px;line-height:29px}
.ax-small{margin:var(--space-3) 0 0;font-size:16px;line-height:24px;color:var(--ink-muted)}
.ax-form{display:grid;gap:var(--space-4);margin-top:var(--space-5)}
.ax-req{margin:0;font-size:16px;line-height:24px;color:var(--ink-muted)}
.ax-row{display:grid;gap:var(--space-4)}
.ax-field label{display:block;margin-bottom:6px;font:600 16px/22px var(--font-display)}
.ax-field input:not([type="checkbox"]),.ax-field textarea{display:block;width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:400 17px/26px var(--font-text)}
.ax-field textarea{min-height:168px;resize:vertical}
.ax-field input[aria-invalid="true"]:not([type="checkbox"]),.ax-field textarea[aria-invalid="true"]{border:2px solid var(--danger);padding:9px 13px}
.ax-error{display:flex;align-items:flex-start;gap:6px;margin:6px 0 0;color:var(--danger);font:600 16px/22px var(--font-text)}
.ax-error svg{flex:none;width:20px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.ax-consent{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:start;min-height:44px}
.ax-consent input{width:24px;height:24px;margin:1px 0 0;accent-color:var(--ink)}
.ax-consent label{margin:0;font:400 16px/24px var(--font-text)}
.ax-send{width:100%;min-height:56px;font-size:19px;box-shadow:0 4px 0 var(--ink)}
.ax-send:active{transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}
.ax-sent{margin-top:var(--space-5);padding:var(--space-5) var(--space-4);background:var(--mixed-bg);border:2px solid var(--mixed-ink);border-radius:var(--radius-lg);text-align:center}
.ax-sent svg{width:56px;height:56px;fill:none;stroke:var(--mixed-ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.ax-sent__title{margin:var(--space-2) 0 0;font:600 26px/32px var(--font-display);color:var(--mixed-ink)}
.ax-sent p{margin:var(--space-2) 0 0}
.ax-sent__btns{display:grid;gap:var(--space-2);justify-items:center;margin-top:var(--space-5)}
.ax-linkbtn{min-height:44px;padding:0;border:0;background:none;color:var(--ink);font:600 16px/24px var(--font-text);text-decoration:underline;text-underline-offset:3px;cursor:pointer}

@media (min-width:1024px){
  .ax-wrap{max-width:764px;padding:var(--space-4) 32px 0}
  .ax-h1{font-size:46px;line-height:56px}
  .ax-toc ol{display:block !important}
  .ax-toc summary{pointer-events:none}
  .ax-toc summary::after{display:none}
  .ax-body h2{font-size:30px;line-height:36px}
  .ax-table th,.ax-table td{padding:var(--space-3) var(--space-4);font-size:17px;line-height:24px}
  .ax-authors{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}
  .ax-bonus{padding:var(--space-5)}
  .ax-ctas{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}
  .ax-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .ax-send{width:auto;padding:0 40px;justify-self:start}
}
