.a2g{--a2g-accent:#1f7ae0;--a2g-accent-soft:#eef5fd;--a2g-ink:#1d1c2b;--a2g-muted:#6d6a80;
	--a2g-line:#dde5ef;--a2g-warn-bg:#fff4e5;--a2g-warn-line:#d98c00;--a2g-warn-ink:#5a4200;
	max-width:900px;margin:0 auto;color:var(--a2g-ink);line-height:1.65;}
.a2g *{box-sizing:border-box;}
.a2g h2{font-size:1.55em;margin:2.6em 0 .6em;padding-bottom:.3em;border-bottom:2px solid var(--a2g-line);scroll-margin-top:90px;}
.a2g h2 .a2g-num{display:inline-block;min-width:1.9em;color:var(--a2g-accent);font-weight:800;}
.a2g h3{font-size:1.15em;margin:1.8em 0 .5em;}
.a2g p{margin:.7em 0;}
.a2g ul,.a2g ol{margin:.7em 0 .7em 1.3em;padding:0;}
.a2g li{margin:.35em 0;}

/* --- Chapeau --- */
.a2g-hero{background:linear-gradient(135deg,#1f7ae0 0%,#0e4f9c 100%);color:#fff;border-radius:12px;
	padding:26px 28px;margin-bottom:22px;}
.a2g-hero h1{margin:0 0 .3em;font-size:1.7em;color:#fff;line-height:1.25;}
.a2g-hero p{margin:.4em 0;color:rgba(255,255,255,.92);}
.a2g-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.a2g-hero-meta span{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);
	border-radius:999px;padding:5px 13px;font-size:.8em;font-weight:600;}

/* --- Encadrés --- */
.a2g-note{background:var(--a2g-accent-soft);border-left:4px solid var(--a2g-accent);border-radius:6px;
	padding:14px 18px;margin:1.4em 0;font-size:.94em;}
.a2g-warn{background:var(--a2g-warn-bg);border:1px solid #f0c36d;border-left:4px solid var(--a2g-warn-line);
	border-radius:6px;padding:14px 18px;margin:1.4em 0;font-size:.94em;color:var(--a2g-warn-ink);}
.a2g-warn strong,.a2g-note strong{color:inherit;}
.a2g-tldr{border:2px solid var(--a2g-accent);border-radius:10px;padding:18px 22px;margin:0 0 26px;}
.a2g-tldr h2{margin:0 0 .5em;border:0;padding:0;font-size:1.2em;}
.a2g-tldr ul{margin-bottom:0;}

/* --- Sommaire --- */
.a2g-toc{background:#f7fafd;border:1px solid var(--a2g-line);border-radius:10px;padding:18px 22px;margin:0 0 30px;}
.a2g-toc strong{display:block;margin-bottom:.5em;font-size:1.02em;}
.a2g-toc ol{columns:2;column-gap:26px;margin:0 0 0 1.2em;font-size:.92em;}
.a2g-toc a{color:var(--a2g-ink);text-decoration:none;}
.a2g-toc a:hover{color:var(--a2g-accent);text-decoration:underline;}

/* --- Tableaux --- */
.a2g-table-wrap{overflow-x:auto;margin:1.2em 0;}
.a2g table{border-collapse:collapse;width:100%;font-size:.9em;min-width:520px;}
.a2g th,.a2g td{border:1px solid var(--a2g-line);padding:8px 11px;text-align:left;vertical-align:top;}
.a2g th{background:var(--a2g-accent-soft);font-weight:700;}
.a2g tbody tr:nth-child(even){background:#f9fbfe;}

/* --- Puces d'élément --- */
.a2g-el{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:3px 11px;
	font-size:.82em;font-weight:700;color:#fff;white-space:nowrap;}
.a2g-el-feu{background:#e8622a;}      .a2g-el-eau{background:#2f83d6;}
.a2g-el-plante{background:#4ea34e;}   .a2g-el-foudre{background:#d9a800;color:#3a2f00;}
.a2g-el-glace{background:#57b6c7;}    .a2g-el-roche{background:#9c7f4e;}
.a2g-el-vent{background:#59a98f;}      .a2g-el-sacre{background:#c9a227;}
.a2g-el-tenebres{background:#5a4a78;}
.a2g-el-list{display:flex;flex-wrap:wrap;gap:7px;margin:1em 0;}

/* --- Grille de rôles / d'Aniimo --- */
.a2g-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:14px;margin:1.3em 0;}
.a2g-card{border:1px solid var(--a2g-line);border-radius:10px;padding:12px;text-align:center;
	background:#fff;text-decoration:none;color:inherit;display:block;transition:border-color .15s,transform .15s;}
.a2g-card:hover{border-color:var(--a2g-accent);transform:translateY(-2px);}
.a2g-card img{width:100%;max-width:104px;height:auto;margin:0 auto 6px;display:block;}
.a2g-card-name{display:block;font-weight:700;font-size:.95em;}
.a2g-card-role{display:block;font-size:.76em;color:var(--a2g-muted);margin-top:2px;}
.a2g-card-why{display:block;font-size:.78em;color:var(--a2g-muted);margin-top:6px;line-height:1.4;}
.a2g-card .a2g-el{margin-top:5px;font-size:.72em;padding:2px 9px;}

/* --- Chaîne d'évolution --- */
.a2g-evo{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;
	background:#f7fafd;border:1px solid var(--a2g-line);border-radius:10px;padding:16px;margin:1.3em 0;}
.a2g-evo-step{text-align:center;text-decoration:none;color:inherit;width:130px;}
.a2g-evo-step img{width:96px;height:auto;display:block;margin:0 auto 4px;}
.a2g-evo-step b{display:block;font-size:.9em;}
.a2g-evo-step small{color:var(--a2g-muted);font-size:.76em;}
.a2g-evo-arrow{color:var(--a2g-accent);font-size:1.5em;font-weight:700;}

/* --- Checklist --- */
.a2g-check{list-style:none;margin:1.2em 0;padding:0;}
.a2g-check li{position:relative;padding:9px 0 9px 34px;border-bottom:1px solid var(--a2g-line);margin:0;}
.a2g-check li:last-child{border-bottom:0;}
.a2g-check li::before{content:"";position:absolute;left:4px;top:13px;width:15px;height:15px;
	border:2px solid var(--a2g-accent);border-radius:4px;}

/* --- Étapes numérotées --- */
.a2g-steps{list-style:none;counter-reset:asg;margin:1.3em 0;padding:0;}
.a2g-steps li{counter-increment:asg;position:relative;padding:0 0 16px 46px;margin:0;}
.a2g-steps li::before{content:counter(asg);position:absolute;left:0;top:0;width:30px;height:30px;
	background:var(--a2g-accent);color:#fff;border-radius:50%;display:flex;align-items:center;
	justify-content:center;font-weight:700;font-size:.9em;}
.a2g-steps li strong{display:block;margin-bottom:.15em;}

/* --- Badge de fiabilité --- */
.a2g-src{font-size:.72em;font-weight:700;border-radius:4px;padding:2px 7px;vertical-align:middle;
	margin-left:6px;white-space:nowrap;}
.a2g-src-ok{background:#e3f6e8;color:#1d6b32;}
.a2g-src-com{background:#e6eefb;color:#3b3f9e;}
.a2g-src-no{background:#fdeaea;color:#a02020;}

/* --- FAQ --- */
.a2g-faq details{border:1px solid var(--a2g-line);border-radius:8px;padding:12px 16px;margin:.6em 0;background:#fff;}
.a2g-faq summary{cursor:pointer;font-weight:700;}
.a2g-faq details[open] summary{margin-bottom:.5em;color:var(--a2g-accent);}

/* --- Sources --- */
.a2g-sources{font-size:.87em;color:var(--a2g-muted);}
.a2g-sources li{margin:.3em 0;}

@media (max-width:640px){
	.a2g-toc ol{columns:1;}
	.a2g-hero{padding:20px;}
	.a2g-hero h1{font-size:1.35em;}
	.a2g-evo-step{width:104px;}
	.a2g-evo-step img{width:76px;}
}

/* --- Spécifique Aion 2 --- */
.a2g-hero{background:linear-gradient(135deg,rgba(10,30,60,.88),rgba(10,30,60,.72)),url('https://www.ateliergaming.fr/wp-content/mu-plugins/aion2-builder/images/hero-keyart.jpg');
	background-size:cover;background-position:center;}
.a2g-class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px;margin:1.3em 0;}
.a2g-class{border:1px solid var(--a2g-line);border-radius:10px;padding:14px 12px;background:#fff;text-align:center;}
.a2g-class img{width:60px;height:60px;object-fit:contain;margin:0 auto 8px;display:block;}
.a2g-class b{display:block;font-size:1em;}
.a2g-class .a2g-class-role{display:block;font-size:.8em;color:var(--a2g-accent);font-weight:700;margin-top:2px;}
.a2g-class .a2g-class-weap{display:block;font-size:.76em;color:var(--a2g-muted);margin-top:1px;}
.a2g-class .a2g-class-diff{display:inline-block;margin-top:7px;font-size:.7em;font-weight:700;border-radius:999px;padding:2px 9px;}
.a2g-d1{background:#e3f6e8;color:#1d6b32;} .a2g-d2{background:#fff4e5;color:#8a5a00;} .a2g-d3{background:#fdeaea;color:#a02020;}
.a2g-class p{font-size:.79em;color:var(--a2g-muted);margin:8px 0 0;line-height:1.45;text-align:left;}
.a2g-figure{margin:1.5em 0;}
.a2g-figure img{width:100%;height:auto;border-radius:10px;display:block;}
.a2g-figure figcaption{font-size:.8em;color:var(--a2g-muted);margin-top:6px;text-align:center;}
.a2g-tools{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin:1.3em 0;}
.a2g-tool{display:block;border:1px solid var(--a2g-line);border-left:4px solid var(--a2g-accent);border-radius:8px;
	padding:12px 14px;text-decoration:none;color:inherit;background:#fff;transition:border-color .15s,transform .15s;}
.a2g-tool:hover{transform:translateY(-2px);}
.a2g-tool b{display:block;font-size:.95em;}
.a2g-tool span{display:block;font-size:.78em;color:var(--a2g-muted);margin-top:3px;line-height:1.4;}
