/* ====== Ressources & Guides (Invicta) — style MMO/fantasy lisible ====== */

/* HERO */
.ix-hero::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(900px 600px at 12% -10%, rgba(196,22,28,.18), transparent 70%),
    radial-gradient(800px 600px at 100% 100%, rgba(196,22,28,.08), transparent 70%);
  pointer-events:none;
}
.icon-wrap{
  width:52px; height:52px; border-radius:12px; background:linear-gradient(180deg, var(--brand), var(--brand-dark));
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 16px rgba(196,22,28,.35), inset 0 0 0 1px rgba(255,255,255,.08);
}
.icon-wrap i{ color:#fff; font-size:1.35rem; }
.ix-title{ letter-spacing:.2px; color:#fff; text-shadow:0 0 6px rgba(196,22,28,.35), 0 0 12px rgba(196,22,28,.15); }
.ix-brand{ color:var(--brand); }
.ix-ornament{ display:flex; align-items:center; gap:.5rem; justify-content:center; opacity:.9; }
.ix-ornament .rune{
  width:18px; height:18px; border:1px solid rgba(196,22,28,.45);
  background: radial-gradient(circle at 50% 40%, rgba(196,22,28,.25), transparent 60%);
  transform: rotate(45deg);
  display:inline-block; border-radius:3px; box-shadow: 0 0 0 3px rgba(196,22,28,.10);
}
.ix-ornament .rune.large{ width:24px; height:24px; }

/* Section cards */
.section-card{ border:1px solid var(--border); background: var(--card); }
.section-card h2{ color:#fff; }
.section-card h5{ color:#f2f5f7; text-shadow:0 1px 1px rgba(0,0,0,.45); }
.text-secondary{ color:#cfd4dd !important; }
.ix-num{
  display:inline-flex; align-items:center; justify-content:center;
  width:1.6rem; height:1.6rem; border-radius:6px;
  background: rgba(196,22,28,.18);
  border:1px solid rgba(196,22,28,.35);
  color:#fff; font-weight:700; margin-right:.4rem;
}

/* TOC */
.toc{ background: var(--card); border:1px solid var(--border); }
.toc .nav-link{ color:#dfe3ea; padding:.35rem .25rem; border-radius:.35rem; }
.toc .nav-link:hover{ color:#fff; background: rgba(196,22,28,.15); }

/* Chips */
.chip, .chip-alt{
  display:inline-block; padding:.15rem .5rem; border-radius:.5rem; font-size:.8rem;
  border:1px solid rgba(255,255,255,.12);
  color:#cfd4dd; background: rgba(255,255,255,.06);
  transition:.2s;
}
.chip-alt{
  background: rgba(196,22,28,.15);
  border-color: rgba(196,22,28,.35);
  color:#ff9aa0;
}
.selectable{ cursor:pointer; }
.selectable.active{ box-shadow:0 0 0 2px rgba(196,22,28,.35) inset; }

/* Guide cards */
.ix-card{
  border:1px solid var(--border); border-radius:.75rem;
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
  padding:.9rem; height:100%;
  display:flex; flex-direction:column; gap:.6rem;
}
.ix-card-hd{ display:flex; gap:.6rem; align-items:center; }
.ix-card-hd i{ color:var(--brand); font-size:1.2rem; }
.ix-card-tags{ display:flex; flex-wrap:wrap; gap:.35rem; }
.ix-card-actions{ display:flex; flex-wrap:wrap; gap:.4rem; }

/* Outils (list row) */
.ix-tool{
  display:flex; gap:.75rem; align-items:center; border:1px solid var(--border);
  border-radius:.75rem; padding:.8rem;
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}
.ix-tool-left i{ font-size:1.4rem; color:var(--brand); }
.ix-tool-actions{ margin-left:auto; }

/* Templates / Accordions */
.ix-acc-item{ background: transparent; border:1px solid var(--border); border-radius:.6rem; overflow:hidden; margin-bottom:.5rem; }
.ix-acc-item .accordion-button{ background: rgba(255,255,255,.02); color:#f1f3f6; }
.ix-acc-item .accordion-button:not(.collapsed){ box-shadow:none; color:#fff; }
.ix-acc-item .accordion-body{ background: rgba(255,255,255,.02); }

/* Code block */
.ix-code{
  background:#0f0f14; color:#e9ebef; border:1px solid rgba(255,255,255,.08);
  border-radius:.5rem; padding:.75rem; white-space:pre-wrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size:.92rem;
}

/* Fichiers */
.ix-file{
  display:flex; align-items:center; gap:.75rem; border:1px solid var(--border);
  border-radius:.75rem; padding:.8rem; background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}
.ix-file i{ font-size:1.6rem; color:var(--brand); }
.ix-file .meta .title{ color:#fff; }
.ix-file .meta .sub{ color:#cfd4dd; font-size:.85rem; }

/* Quick refs */
.ix-quick{
  border:1px solid var(--border); border-radius:.75rem; padding:.9rem;
  background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
}
.ix-quick h5{ margin-bottom:.35rem; }
.ix-list{ padding-left:1.2rem; }
.ix-list li{ margin-bottom:.4rem; color:#f1f3f6; }
.ix-list li::marker{ color: var(--brand); }

/* Changelog */
.ix-changelog {
  position: relative;
  padding-left: 1.8rem; /* un peu plus d’espace à gauche */
}
.ix-changelog::before{ content:""; position:absolute; left:.55rem; top:.25rem; bottom:.25rem; width:2px; background:rgba(255,255,255,.08); }
.ix-changelog .entry {
  position: relative;
  margin-bottom: .9rem;
  padding-left: .4rem; /* pour que le texte ne chevauche plus la puce */
}
.ix-changelog .entry::before {
  content: "";
  position: absolute;
  left: -1.1rem; /* recule légèrement la puce */
  top: .35rem;
  width: .7rem;
  height: .7rem;
  border-radius: 50%;
  background: var(--brand);
  box-shadow: 0 0 0 3px rgba(196,22,28,.25);
}
.ix-changelog .date{ color:#fff; font-weight:600; }
.ix-changelog .body{ color:#e9ebef; }

/* Utilities */
.container-narrow{ max-width: 1000px; }
section{ scroll-margin-top: 6rem; }
/* Fix contraste textes FAQ */
.ix-acc-item .accordion-body {
  color: #e9ebef; /* texte clair */
}
.ix-acc-item .accordion-body em {
  color: #ff9aa0; /* touche rouge douce sur les mots en italique */
}
