/* © Camarade Agency (camarade.agency) */
/* -------------------------------------------------------------------------- */
/* FICHES TECHNIQUES                                                          */
/* -------------------------------------------------------------------------- */

/* Law reference inline span */
.law-ref {
  display: inline;
  cursor: pointer;
  border-bottom: 1px dashed currentColor;
  opacity: .75;
  transition: opacity .2s;
}
.law-ref:hover {
  opacity: 1;
}

/* Popover — structural rules (box, arrow, close button) shared via .ca-popover
   in assets/popover.css. This file only keeps what's specific to law-ref. */
#law-popover {
  width: 340px;
}
.law-popover-resume {
  font-size: .9em;
  color: var(--e-global-color-text);
  line-height: var(--e-global-typography-text-line-height);
}
.law-popover-link {
  display: inline-block;
  font-size:.8em;
  font-weight:bold;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  text-transform: uppercase;
}
.law-popover-link i {
  margin-right:10px;
}

/* Chapters */
.technic-chapter .subtitle,
.technic-chapter .lead,
.technic-chapter .chapter {
  margin:0;
  margin-block-start:0;
  margin-block-end:60px;
}
.technic-chapter .subtitle {
  color: var(--e-global-color-primary);
}
.technic-chapter .chapter.is-boxed{
  padding: 30px;
  border: 1px solid var(--e-global-color-primary);
  color: var(--e-global-color-primary);
}
.technic-chapter .chapter .icon {
  color: var(--e-global-color-primary);
}
.technic-chapter .chapter .header {
  display: flex;
  align-items: baseline;
  gap:15px;
  margin-block-end:15px;
}
.technic-chapter .chapter .title {
  font-weight: 900;
  margin:0;
}
.technic-chapter .chapter .text > *:last-child {
  margin-bottom: 0;
}

/* -------------------------------------------------------------------------- */
/* LAW TAGS — badges in loop cards [CA_technic_law_tags]                      */
/* -------------------------------------------------------------------------- */
.law-tags {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.law-tag {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.law-tag a {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.law-tag-code {
  display: inline-block;
  font-size: .72em;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .03em;
  padding: 3px 8px;
  border: 1px solid var(--e-global-color-primary);
  color: var(--e-global-color-primary);
  background: transparent;
  cursor: default;
  transition: background .15s, color .15s;
}
.law-tag a .law-tag-code {
  cursor: pointer;
}
.law-tag a:hover .law-tag-code {
  background: var(--e-global-color-primary);
  color: #fff;
}
/* "+N more" badge */
.law-tag--more .law-tag-code,
.law-tag--more {
  border-color: #C8D5DC;
  color: color-mix(in srgb, var(--e-global-color-text) 55%, transparent);
  font-size: .72em;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-weight: 700;
  padding: 3px 8px;
  border: 1px solid #C8D5DC;
}
/* Tooltip: nom_code + section */
.law-tag-tooltip {
  display: none;
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  z-index: 200;
  width: max-content;
  max-width: 260px;
  background: #fff;
  border: 1px solid #C8D5DC;
  box-shadow: 0 4px 14px rgba(0,0,0,.1);
  font-size: .75em;
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  font-weight: 400;
  color: var(--e-global-color-text);
  padding: 6px 10px;
  line-height: 1.4;
  pointer-events: none;
  text-transform: none;
  letter-spacing: 0;
}
.law-tag:hover .law-tag-tooltip {
  display: block;
}
