[hidden]{display:none!important}
.outil{display:grid;gap:1.1rem}
.outil-bloc{border:1px solid var(--line);background:var(--surface-2);border-radius:var(--r);padding:.9rem 1.1rem 1.1rem;margin:0;min-width:0}
.outil-bloc legend{font-family:var(--titre);font-weight:700;padding:0 .4rem}
.outil-bloc legend label{display:flex;align-items:center;gap:.5rem}
.outil-champs{display:grid;grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));gap:.8rem 1rem;margin-top:.4rem}
.outil label{display:grid;gap:.25rem;font-size:.95rem}
.outil input[type=number],.outil input[type=search],.outil select{font:inherit;padding:.5rem .6rem;border:1px solid var(--field-line);border-radius:var(--r);background:var(--paper);color:var(--ink);min-height:2.6rem;width:100%;box-sizing:border-box}
.outil input[type=checkbox]{width:1.15rem;height:1.15rem}
.outil-note{font-size:.88rem;color:var(--ink-doux);margin:.8rem 0 0}
.outil-res{border:1px solid var(--line);border-top:5px solid var(--accent);background:var(--surface-2);border-radius:var(--r);padding:1rem 1.1rem 1.2rem}
.outil-res h2{margin-top:0}
.outil-total{font-family:var(--titre);font-weight:700;font-size:1.15rem;margin:1rem 0 .5rem}
.cut-t td:first-child{font-weight:600}
