/* Composants communs : onglets, listes compactes, etapes. Clair par defaut, variante sombre .ui-dark */
.ui-block{margin-top:clamp(22px,4vw,40px)}
.ui-card{background:#F4F7EF;border-radius:28px;padding:clamp(10px,3vw,32px)}
.ui-dark .ui-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}

/* onglets */
.ui-tablist{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:6px;background:#fff;border:1px solid #DDE6D5;border-radius:18px;padding:6px}
.ui-tab{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 8px;border:0;border-radius:13px;background:none;cursor:pointer;font:inherit;color:#3C4A35;text-align:left;transition:background .2s,color .2s}
.ui-tab i{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--c,#3E8E1B);color:#fff;font-style:normal;font-weight:700;font-size:13px}
.ui-tab b{display:block;font-size:15px;font-weight:700;line-height:1.1}
.ui-tab small{display:block;font-size:12px;font-weight:600;color:#7A8A70;margin-top:2px}
.ui-tab:hover{background:#F0F5EA}
.ui-tab[aria-selected="true"]{background:#131D10;color:#fff}
.ui-tab[aria-selected="true"] small{color:#B8D9A4}
.ui-tab:focus-visible{outline:3px solid #5CB929;outline-offset:2px}
.ui-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,4vw,56px);align-items:center;margin-top:clamp(14px,3vw,26px);padding:clamp(20px,3.4vw,40px);background:#fff;border-radius:22px;box-shadow:0 18px 40px rgba(19,29,16,.06);border-left:6px solid var(--c,#3E8E1B)}
.ui-js .ui-panel[hidden]{display:none}
.ui-when{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c,#3E8E1B)}
.ui-panel h3{font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-size:clamp(28px,3.4vw,44px);line-height:1.04;margin:8px 0 0;color:#131D10}
.ui-key{margin:12px 0 0;font-size:clamp(16.5px,1.5vw,19px);font-weight:600;color:#3C4A35;line-height:1.38}
.ui-law{display:inline-block;margin-top:12px;font-size:12.5px;font-weight:700;color:#5F6E57;border:1px solid #DDE6D5;border-radius:999px;padding:4px 11px}
.ui-pts{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ui-pts li{display:flex;align-items:center;gap:13px;padding:12px 15px;border-radius:14px;background:#F4F7EF;font-size:15px;font-weight:600;color:#131D10;line-height:1.3}
.ui-pts li span{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--c,#3E8E1B);color:#fff;font-size:13px}

/* liste compacte */
.ui-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--cols,2),minmax(0,1fr));gap:12px}
.ui-list li{display:flex;align-items:flex-start;gap:14px;padding:18px 18px;border-radius:18px;background:#fff;border:1px solid #E3EBDB}
.ui-list li>i{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--c,#3E8E1B);color:#fff;font-style:normal}
.ui-list b{display:block;font-size:16px;font-weight:700;color:#131D10;line-height:1.25}
.ui-list span{display:block;margin-top:4px;font-size:14.5px;color:#5F6E57;line-height:1.45}
.ui-list a{color:inherit}
.ui-dark .ui-list li{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.09)}
.ui-dark .ui-list b{color:#fff}
.ui-dark .ui-list span{color:rgba(255,255,255,.62)}
.ui-sub{margin:clamp(26px,4vw,40px) 0 12px;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6B7C60}
.ui-dark .ui-sub{color:rgba(255,255,255,.55)}

/* etapes */
.ui-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:14px;counter-reset:s}
.ui-steps li{position:relative;padding:20px 18px;border-radius:18px;background:#fff;border:1px solid #E3EBDB}
.ui-steps li em{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#131D10;color:#fff;font-style:normal;font-weight:700;font-size:15px;margin-bottom:12px}
.ui-steps b{display:block;font-size:16px;font-weight:700;color:#131D10}
.ui-steps span{display:block;margin-top:4px;font-size:14.5px;color:#5F6E57;line-height:1.45}
.ui-dark .ui-steps li{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.09)}
.ui-dark .ui-steps li em{background:#5CB929;color:#0B120A}
.ui-dark .ui-steps b{color:#fff}
.ui-dark .ui-steps span{color:rgba(255,255,255,.62)}

@media (max-width:900px){
  .ui-panel{grid-template-columns:1fr}
  .ui-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:620px){
  .ui-list{grid-template-columns:1fr;gap:8px}
  .ui-list li{padding:14px 14px;gap:12px}
  .ui-list li>i{width:36px;height:36px}
  .ui-steps{grid-template-columns:1fr;gap:8px}
  .ui-steps li{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:14px}
  .ui-steps li em{grid-row:span 2;margin:0}
  .ui-steps span{margin-top:2px}
}
@media (max-width:560px){
  .ui-card{padding:8px 8px 10px;border-radius:22px}
  .ui-tablist{gap:4px;padding:4px;grid-template-columns:repeat(var(--nm,4),minmax(0,1fr))}
  .ui-tab{flex-direction:column;gap:5px;padding:9px 3px;text-align:center}
  .ui-tab i{width:30px;height:30px}
  .ui-tab b{font-size:12.5px}
  .ui-tab small{display:none}
  .ui-panel{padding:18px 16px;border-left-width:5px}
  .ui-pts li{font-size:14.5px;padding:11px 13px}
}
