.np-tool{display:grid;gap:1.6rem;grid-template-columns:minmax(0,1fr);max-width:980px;margin:0 auto}
@media (min-width:861px){.np-tool{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start}}
.np-form{display:grid;gap:1rem}
.np-field{display:grid;gap:.35rem}
.np-field label{font-weight:600}
.np-field small{opacity:.75;line-height:1.45}
.np-input{display:flex;align-items:center;border:1px solid rgba(13,21,17,.25);border-radius:10px;background:#fff;padding:0 .8rem}
.np-input span{opacity:.6}
.np-input input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:1.05rem;padding:.75rem .4rem;outline:none}
.np-input:focus-within{border-color:#4d5a2c;box-shadow:0 0 0 3px rgba(77,90,44,.18)}
.np-result{border:1px solid rgba(13,21,17,.15);border-radius:14px;padding:1.3rem;background:#fbf8f2;position:sticky;top:1rem}
.np-result h2{margin:0 0 .8rem;font-size:1.35rem}
.np-lines{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}
.np-lines li{display:flex;justify-content:space-between;gap:1rem;font-variant-numeric:tabular-nums}
.np-lines li.np-total{border-top:1px solid rgba(13,21,17,.2);padding-top:.7rem;margin-top:.3rem;font-weight:700;font-size:1.2rem}
.np-lines li.np-neg{color:#9a3412}
.np-note{font-size:.88rem;opacity:.8;line-height:1.5;margin-top:.9rem}
