
:root{
  --docs-sidebar-width: 310px;
  --docs-layout-gap: 1.25rem;
  --docs-sidebar-offset: calc(var(--docs-sidebar-width) + var(--docs-layout-gap));
  --docs-bg:#f4f7fb;
  --docs-surface:#ffffff;
  --docs-border:#dfe8f2;
  --docs-text:#0f172a;
  --docs-muted:#5f6f82;
  --docs-primary:#2f5d8a; /* bleu acier IGH */
  --docs-primary-dark:#1f3e5a;
  --docs-primary-soft:#eef4fa;
  --docs-accent:#5b7ea6;
  --docs-shadow-lg:0 22px 60px rgba(15,23,42,.10);
  --docs-shadow-md:0 12px 30px rgba(15,23,42,.08);
  --docs-shadow-sm:0 6px 18px rgba(15,23,42,.05);
}
body{background:linear-gradient(180deg,#fbfdff 0%,var(--docs-bg) 100%);color:var(--docs-text);font-family:Inter,system-ui,sans-serif}
a{text-decoration:none}
.docs-sidebar{
  position:fixed;top:0;left:0;width:var(--docs-sidebar-width);height:100vh;z-index:1030;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.94) 100%);
  border-right:1px solid rgba(15,23,42,.08);box-shadow:var(--docs-shadow-lg);overflow:hidden;
}
.docs-sidebar-shell{height:100%;display:flex;flex-direction:column}
.docs-sidebar-brand{
  padding:1rem;border-bottom:1px solid rgba(15,23,42,.06);
  background:radial-gradient(circle at top right, rgba(47,93,138,.10), transparent 34%), linear-gradient(180deg,#ffffff 0%, #fcfcfd 100%)
}
.docs-logo-mark{
  width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--docs-primary) 0%,var(--docs-accent) 55%,var(--docs-primary-dark) 100%);
  color:#fff;font-weight:800
}
.docs-brand-kicker{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--docs-primary)}
.docs-brand-title{font-size:1rem;font-weight:800;color:var(--docs-text);margin:0}
.docs-brand-meta{margin-top:.75rem}
.docs-pill,.docs-count-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .58rem;border-radius:999px;font-size:.66rem;font-weight:800;background:#f1f5f9;border:1px solid rgba(15,23,42,.06);color:#475569}
.docs-sidebar-body{min-height:0;flex:1;display:flex;flex-direction:column}
.docs-nav-meta{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem .55rem}
.sidebar-section-title{font-size:.7rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#7c8694;margin:0}
.docs-nav-scroll{min-height:0;flex:1;overflow-y:auto;padding:0 .78rem 1rem}
.docs-nav{gap:.38rem}
.docs-nav-item{display:flex;align-items:flex-start;gap:.68rem;padding:.72rem;border-radius:16px;color:#334155;border:1px solid transparent;transition:all .18s ease}
.docs-nav-item:hover{background:#f8fafc;border-color:rgba(15,23,42,.05);color:#0f172a;transform:translateX(2px);box-shadow:var(--docs-shadow-sm)}
.docs-nav-item.active{background:linear-gradient(135deg,var(--docs-primary-soft) 0%,#fff 100%);border-color:rgba(47,93,138,.16);box-shadow:0 12px 24px rgba(47,93,138,.10)}
.docs-nav-index{width:29px;height:29px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:800;background:#eef2f7;color:#475569;flex-shrink:0}
.docs-nav-item.active .docs-nav-index{background:rgba(47,93,138,.12);color:var(--docs-primary)}
.docs-nav-content{min-width:0;flex:1}
.docs-nav-title{display:block;font-size:.83rem;font-weight:760;line-height:1.26;color:inherit}
.docs-nav-intro{display:block;color:#64748b;line-height:1.35;margin-top:.2rem}
.docs-page-offset{margin-left:var(--docs-sidebar-offset)}
.docs-main{padding:1.5rem}
.docs-topbar{margin-bottom:1rem}
.docs-home-hero,.content-card,.hero-card{
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  border:1px solid var(--docs-border);border-radius:24px;box-shadow:var(--docs-shadow-md)
}
.docs-home-hero{padding:2rem 2rem}
.eyebrow,.kicker{
  display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.08em;color:var(--docs-primary);background:var(--docs-primary-soft);padding:.45rem .8rem;border-radius:999px;margin-bottom:1rem
}
.hero-card{padding:2rem}
.hero-card h1,.docs-home-hero h2{font-size:clamp(2rem,4vw,3rem);font-weight:900;line-height:1.05;margin-bottom:1rem}
.lead,.hero-text{max-width:860px;color:#334155;line-height:1.75;font-size:1.03rem}
.docs-home-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin:2rem 0 1rem}
.docs-home-head h2{margin:0;font-size:1.35rem;font-weight:800}
.docs-home-head p{margin:0;color:#64748b}
.content-card{padding:1.5rem;margin-bottom:1rem}
.content-card h2{font-size:1.3rem;margin-bottom:1rem;color:#10263d}
.content-card h3{font-size:1.05rem;margin-top:1rem;margin-bottom:.6rem;color:#163756;font-weight:800}
.content-card h4{font-size:.98rem;margin-top:1rem;margin-bottom:.5rem;color:#244b73;font-weight:800}
.content-card p, .content-card li{color:#334155;line-height:1.75}
.table-like,.docs-table, .note,.focus,.alert-soft,.info-soft{
  background:#fff;border:1px solid var(--docs-border);border-radius:20px;box-shadow:var(--docs-shadow-sm)
}
.table-like{overflow:hidden;margin-top:1rem}
.table-row{display:grid;grid-template-columns:minmax(210px,280px) 1fr;border-top:1px solid var(--docs-border)}
.table-row:first-child{border-top:0}
.table-row > strong,.table-row > div{padding:1rem}
.table-row > strong{background:#f7fbff;color:#173554}
.note,.focus,.alert-soft,.info-soft{padding:1rem;margin-top:1rem}
.note{background:#f8fafc}
.focus{background:#eef4fa}
.info-soft{background:#f5f9ff}
.alert-soft{background:#fff7ed}
.grid-2,.grid-3{display:grid;gap:1rem}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.metric,.card-soft{
  background:#fff;border:1px solid var(--docs-border);box-shadow:var(--docs-shadow-sm);border-radius:18px;padding:1rem;height:100%
}
.metric h3,.card-soft h3,.card-soft h4{font-size:1rem;margin-bottom:.5rem;color:#10263d;font-weight:800}
.metric p,.card-soft p{margin:0;color:#475569;line-height:1.65}
.docs-callout{
  border-radius:20px;padding:1rem 1.1rem;border:1px solid var(--docs-border);box-shadow:var(--docs-shadow-sm);margin:1rem 0
}
.docs-callout-info{background:#eef4fa;border-color:#d7e4f2}
.docs-callout-warning{background:#fff7ed;border-color:#fde6c8}
.docs-callout strong{color:#163756}
.docs-schema{margin:1rem 0;text-align:center}
.docs-schema img{max-width:100%;border-radius:20px;box-shadow:var(--docs-shadow-md)}
.docs-table table{margin:0}
.docs-table thead th{background:#f6f9fc}
.badge-soft{
  display:inline-flex;align-items:center;padding:.36rem .65rem;border-radius:999px;background:var(--docs-primary-soft);color:var(--docs-primary);font-weight:800;font-size:.75rem
}
@media (max-width: 991.98px){
  .docs-sidebar{position:static;width:100%;height:auto}
  .docs-page-offset{margin-left:0}
  .docs-main{padding:1rem}
  .grid-2,.grid-3,.table-row{grid-template-columns:1fr}
}
