/* GÉNÉRÉ par tools/compat.py — ne pas modifier à la main. */
.e-con.decl { padding: 8px 0 120px; }
.e-con.decl__layout { display: grid; grid-template-columns: 264px 1fr; gap: 72px; align-items: start; }
.e-con.decl__toc { position: sticky; top: 110px; border: 1px solid var(--hy-line); border-radius: 18px; padding: 22px 22px 24px; background: var(--hy-paper); }
.e-con.decl__body { max-width: 760px; }
.e-con.decl-block { padding-top: 56px; scroll-margin-top: 110px; }
.decl-block a.e-con:not(.decl-card) { color: var(--hy-blue); text-decoration: underline; text-underline-offset: 2px; font-weight: 600; }
.e-con.decl-note { border-left: 4px solid var(--hy-cyan); background: var(--hy-green-tint); border-radius: 0 14px 14px 0; padding: 18px 22px; margin: 4px 0 16px; }
.e-con.decl-meta { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: var(--hy-line); border: 1px solid var(--hy-line); border-radius: 14px; overflow: hidden; margin: 4px 0 20px; }
.e-con.decl-meta__cell { background: #fff; padding: 16px 18px; }
.e-con.decl-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin: 6px 0 8px; }
.e-con.decl-card { display: flex; flex-direction: column; gap: 6px; border: 1px solid var(--hy-line); border-radius: 16px; padding: 22px; background: #fff; }
.e-con.decl-feats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin: 6px 0 8px; }
.e-con.decl-feat { display: flex; gap: 14px; align-items: flex-start; padding: 18px; border: 1px solid var(--hy-line); border-radius: 14px; background: var(--hy-paper); }
@media (max-width: 980px) {
  .e-con.decl__layout { grid-template-columns: 1fr; gap: 8px; }
}
@media (max-width: 980px) {
  .e-con.decl__toc { position: static; margin-bottom: 8px; }
}
@media (max-width: 640px) {
  .e-con.decl-meta, .e-con.decl-cards, .e-con.decl-feats { grid-template-columns: 1fr; }
}
