/* Ajustements de fidélité à la maquette — chargés après le style principal. */
.dgdc-legislation {
  background: #fff;
  color: #14213b;
  font-size: 15px;
  width: 100%;
}

.dgdc-legislation__hero {
  align-items: center !important;
  background: linear-gradient(105deg, #eef7ff 0%, #f7fbff 56%, #fff 100%) !important;
  display: grid !important;
  gap: 28px;
  grid-template-columns: minmax(0, 1fr) 390px;
  min-height: 195px;
  padding: 25px max(calc((100vw - 1460px) / 2), 28px) !important;
}

.dgdc-legislation__hero > div { max-width: 850px; }
.dgdc-legislation__hero h1 {
  color: #071a42 !important;
  font-size: clamp(29px, 2.25vw, 36px) !important;
  font-weight: 700 !important;
  letter-spacing: -1px;
  line-height: 1.12 !important;
}
.dgdc-legislation__hero h1 + span { height: 4px !important; margin: 13px 0 !important; width: 72px !important; }
.dgdc-legislation__hero p { font-size: 15px !important; line-height: 1.5 !important; max-width: 760px !important; }
.dgdc-legislation__hero-image { max-height: 145px !important; max-width: 100% !important; width: 390px !important; }

.dgdc-legislation__breadcrumb {
  font-size: 14px;
  margin: auto;
  max-width: 1500px;
  padding: 18px 24px !important;
}

.dgdc-legislation__layout {
  align-items: start;
  gap: 18px !important;
  grid-template-columns: 250px minmax(650px, 1fr) 210px !important;
  max-width: 1500px !important;
  padding: 22px 24px 48px !important;
}

.dgdc-legislation aside > form,
.dgdc-legislation__categories,
.dgdc-legislation__help,
.dgdc-legislation main { border-radius: 8px !important; box-shadow: 0 2px 8px #173b6d0a; }
.dgdc-legislation__filters,
.dgdc-legislation__categories,
.dgdc-legislation__help { padding: 16px !important; }
.dgdc-legislation__filters { border-color: #d7e1ee !important; }
.dgdc-legislation h2 { font-size: 15px !important; margin-bottom: 16px !important; }
.dgdc-legislation label { font-size: 12px !important; margin-bottom: 10px !important; }
.dgdc-legislation input,
.dgdc-legislation select { border-color: #cbd8e8 !important; border-radius: 5px !important; font-size: 12px !important; min-height: 36px; padding: 7px 9px !important; }
.dgdc-legislation__filters input,
.dgdc-legislation__filters select { margin-top: 5px !important; }
.dgdc-legislation__dates { display: block !important; }
.dgdc-legislation__dates label { align-items: center; display: grid !important; gap: 8px; grid-template-columns: 24px minmax(0, 1fr); margin-bottom: 8px !important; }
.dgdc-legislation__dates input { margin: 0 !important; min-width: 0; width: 100% !important; }
.dgdc-legislation__filters button { font-size: 12px; min-height: 42px; padding: 10px !important; }

.dgdc-legislation__toolbar { min-height: 64px; padding: 13px 16px !important; }
.dgdc-legislation__toolbar strong { font-size: 14px; }
.dgdc-legislation__toolbar-controls { align-items: center; display: flex; gap: 8px; }
.dgdc-legislation__toolbar-controls label { margin: 0 !important; white-space: nowrap; }
.dgdc-legislation__toolbar select { font-size: 12px !important; margin: 0 !important; width: 220px !important; }
.dgdc-legislation__view { align-items: center; background: #eef3fa; border: 0; border-radius: 5px; color: #071f58; display: flex; font-size: 18px; height: 40px; justify-content: center; width: 40px; }
.dgdc-legislation__view + .dgdc-legislation__view { background: #fff; }

.dgdc-legislation__columns {
  background: #fbfcfe;
  border-bottom: 1px solid #dce4ef;
  color: #172743;
  display: grid;
  font-size: 11px;
  font-weight: 700;
  gap: 12px;
  grid-template-columns: 48px 170px minmax(180px, 1fr) 170px 180px 78px;
  padding: 11px 14px;
}
.dgdc-legislation__columns span {
  align-items: center;
  display: flex;
  min-height: 22px;
}

.dgdc-legal-row {
  gap: 12px !important;
  grid-template-columns: 48px 170px minmax(180px, 1fr) 170px 180px 78px !important;
  min-height: 108px;
  padding: 14px !important;
}
.dgdc-legal-row .icon { font-size: 22px !important; height: 46px !important; width: 46px; }
.dgdc-legal-row .icon svg { fill: none; height: 25px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 25px; }
.dgdc-legal-row.type-loi .icon { background:#edf5ff; color:#1467c7; }
.dgdc-legal-row.type-ordonnance .icon { background:#eaf8ef; color:#138148; }
.dgdc-legal-row.type-decret .icon { background:#f3ecff; color:#7032bb; }
.dgdc-legal-row.type-arrete .icon { background:#fff1e5; color:#ee7100; }
.dgdc-legal-row.type-circulaire .icon { background:#edf5ff; color:#1767bd; }
.dgdc-legal-row.type-convention .icon { background:#fff5df; color:#a96a00; }
.dgdc-legal-row.type-loi .number small { color:#1467c7; }
.dgdc-legal-row.type-ordonnance .number small { color:#138148; }
.dgdc-legal-row.type-decret .number small { color:#7032bb; }
.dgdc-legal-row.type-arrete .number small { color:#ee7100; }
.dgdc-legal-row.type-circulaire .number small { color:#1767bd; }
.dgdc-legal-row .number small { font-size: 10px; }
.dgdc-legal-row .number strong { font-size: 13px !important; }
.dgdc-legal-row h3 { font-size: 12px !important; line-height: 1.5 !important; }
.dgdc-legal-row .title-words span,
.dgdc-legal-row .indices span { font-size: 10px !important; padding: 4px 6px !important; }
.dgdc-legal-row .actions a { font-size: 10px !important; padding: 7px 5px !important; }
.dgdc-legislation__help { margin-top: 64px !important; }
.dgdc-legislation__help h2 { line-height: 1.35; }
.dgdc-legislation__help p { font-size: 12px !important; }

@media (max-width: 1200px) {
  .dgdc-legislation__layout { grid-template-columns: 235px minmax(600px, 1fr) !important; }
  .dgdc-legislation__help { display: none; }
  .dgdc-legislation__columns,
  .dgdc-legal-row { grid-template-columns: 46px 155px minmax(170px, 1fr) 150px 160px 72px !important; }
}

@media (max-width: 850px) {
  .dgdc-legislation__hero { display: block !important; min-height: auto; padding: 28px 20px !important; }
  .dgdc-legislation__hero-image { display: none !important; }
  .dgdc-legislation__layout { display: block !important; padding: 12px !important; }
  .dgdc-legislation main { margin-top: 16px; }
  .dgdc-legislation__columns { display: none; }
  .dgdc-legal-row { grid-template-columns: 46px 1fr !important; }
  .dgdc-legal-row .title,
  .dgdc-legal-row .title-words,
  .dgdc-legal-row .indices,
  .dgdc-legal-row .actions { grid-column: 1 / -1; }
}
