/* Briques visuelles des simulateurs (création d'entreprise, fiscalité).
   Chargé après outil.css. */

.saisie{position:relative}
.saisie input{font-size:1.08rem;font-weight:600;padding:12px 44px 12px 14px;text-align:right;
  font-variant-numeric:tabular-nums}
.saisie .unite{position:absolute;right:13px;top:50%;transform:translateY(-50%);
  color:var(--gris);font-size:.95rem;font-weight:600;pointer-events:none}
.equiv{font-size:.8rem;color:var(--gris);margin-top:5px;min-height:1em}
.trio{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
@media(max-width:620px){.duo,.trio{grid-template-columns:1fr}}

.modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin-bottom:16px}
.modes input{position:absolute;opacity:0;pointer-events:none}
.modes label{margin:0;padding:11px 10px;border:1px solid var(--bord);border-radius:11px;cursor:pointer;
  background:#fff;font-weight:600;font-size:.9rem;text-align:center;transition:.15s;line-height:1.35}
.modes label small{display:block;font-weight:400;color:var(--gris);font-size:.76rem;margin-top:3px}
.modes input:checked + label{border-color:var(--vert);background:var(--vert-pale);color:#08794f}
.modes input:checked + label small{color:#0a8a63}
.modes input:focus-visible + label{outline:2px solid var(--vert);outline-offset:1px}

.case{display:flex;gap:10px;align-items:flex-start;font-weight:500;font-size:.9rem;cursor:pointer;margin:0}
.case input{margin-top:3px;accent-color:var(--vert);width:17px;height:17px;flex-shrink:0}
.case small{display:block;color:var(--gris);font-weight:400;font-size:.8rem;margin-top:2px}

details.plus{border:1px solid var(--bord);border-radius:12px;background:#fff;margin-bottom:18px}
details.plus > summary{cursor:pointer;padding:14px 18px;font-weight:600;font-size:.95rem;list-style:none;
  display:flex;justify-content:space-between;align-items:center}
details.plus > summary::-webkit-details-marker{display:none}
details.plus > summary::after{content:"+";font-size:1.3rem;color:var(--gris);font-weight:400}
details.plus[open] > summary::after{content:"–"}
details.plus > .dedans{padding:2px 18px 18px}

.phare{background:var(--vert-pale);border:1px solid #b9e8d5;border-radius:14px;padding:22px 18px;
  text-align:center;margin-bottom:16px}
.phare .etiq{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#0a8a63;font-weight:700;margin-bottom:8px}
.phare .val{font-size:2.5rem;font-weight:700;color:#08794f;letter-spacing:-.03em;line-height:1.05;
  font-variant-numeric:tabular-nums}
@media(max-width:480px){.phare .val{font-size:2rem}}
.phare .sous-val{font-size:.9rem;color:#0a8a63;margin-top:8px}
.phare.neutre{background:#f3f5f7;border-color:var(--bord)}
.phare.neutre .etiq,.phare.neutre .val,.phare.neutre .sous-val{color:var(--texte)}

.chiffres{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:1px;background:var(--bord);
  border:1px solid var(--bord);border-radius:12px;overflow:hidden;margin-bottom:16px}
.chiffres div{background:#fff;padding:13px 10px;text-align:center}
.chiffres .v{font-size:1.2rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}
.chiffres .e{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--gris);font-weight:700;margin-top:4px}

.cascade{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff;border:1px solid var(--bord);
  border-radius:12px;overflow:hidden}
.cascade td{padding:10px 14px;border-bottom:1px solid var(--bord);vertical-align:top}
.cascade tr:last-child td{border-bottom:0}
.cascade td:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}
.cascade td small{display:block;color:var(--gris);font-weight:400;font-size:.78rem;margin-top:2px}
.cascade tr.moins td:last-child{color:#b42318}
.cascade tr.sous-total td{background:#f8f9fa;font-weight:700}
.cascade tr.final td{background:var(--vert-pale);font-weight:700}
.cascade tr.final td:last-child{color:#08794f}
.cascade tr.titre td{background:#f3f5f7;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;
  color:var(--gris);font-weight:700;padding:8px 14px;text-align:left}

.barre-ca{display:flex;height:14px;border-radius:7px;overflow:hidden;margin:6px 0 10px;background:#eef0f2}
.barre-ca span{display:block;height:100%}
.legende{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.8rem;color:var(--gris);margin-bottom:16px}
.legende i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px;vertical-align:-1px}

.tableau{width:100%;border-collapse:collapse;font-size:.88rem;background:#fff}
.tableau-cadre{overflow-x:auto;border:1px solid var(--bord);border-radius:12px}
.tableau th,.tableau td{padding:10px 12px;border-bottom:1px solid var(--bord);text-align:right;white-space:nowrap}
.tableau th:first-child,.tableau td:first-child{text-align:left;white-space:normal}
.tableau th{background:#f8f9fa;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;color:var(--gris)}
.tableau tr:last-child td{border-bottom:0}
.tableau td{font-variant-numeric:tabular-nums}
.tableau tr.fort td{font-weight:700;background:var(--vert-pale)}
.tableau .meilleur{color:#08794f;font-weight:700}

.graphe{width:100%;height:auto;display:block;margin:6px 0 4px}
.graphe text{font-size:15px;fill:#6b7280;font-family:inherit}

.alerte{background:var(--orange-pale);border-left:3px solid var(--orange);padding:12px 15px;
  border-radius:0 8px 8px 0;font-size:.87rem;margin-top:12px;line-height:1.6}
.alerte b{display:block;margin-bottom:2px}
.info{background:#eef4ff;border-left:3px solid #4f7cff;padding:12px 15px;border-radius:0 8px 8px 0;
  font-size:.87rem;margin-top:12px;line-height:1.6}
.info b{display:block;margin-bottom:2px}

.calcul{font-size:.82rem;color:var(--gris);text-align:center;min-height:1.2em;margin-top:8px}
.chargement-moteur{text-align:center;color:var(--gris);font-size:.9rem;padding:18px}

.statuts{display:grid;gap:12px}
.statut{border:1px solid var(--bord);border-radius:12px;padding:16px;background:#fff}
.statut.premier{border-color:var(--vert);box-shadow:0 0 0 3px var(--vert-pale)}
.statut h3{font-size:1rem;margin-bottom:4px;display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.statut h3 span{font-variant-numeric:tabular-nums;color:#08794f;white-space:nowrap}
.statut .badge{display:inline-block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;
  background:var(--vert);color:#fff;border-radius:6px;padding:2px 7px;margin-bottom:6px}
.statut ul{margin:8px 0 0 18px;font-size:.87rem;line-height:1.65}
.statut .meta{font-size:.82rem;color:var(--gris)}

.aide-liste{margin:0 0 4px 20px;font-size:.92rem;line-height:1.8}
.sources{font-size:.78rem;color:var(--gris);margin-top:14px;line-height:1.6}
.sources a{color:var(--gris)}
