.nsm{--nsm-line:#e6eaf2;--nsm-ink:#0c1222;--nsm-mut:#5b6a86;--nsm-b1:#2563eb;--nsm-b2:#0ea5e9;
  border:1px solid var(--nsm-line);border-radius:16px;padding:20px;background:#fff;
  box-shadow:0 8px 28px rgba(12,18,34,.06);color:var(--nsm-ink);margin:20px 0}
.nsm *{box-sizing:border-box}
.nsm__top{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;align-items:end}
.nsm__f{display:block;min-width:0}
.nsm__f>span{display:block;font-size:13px;color:var(--nsm-mut);margin-bottom:5px}
.nsm__in{width:100%;border:1px solid var(--nsm-line);border-radius:12px;padding:12px 14px;
  font:600 24px/1.25 inherit;color:var(--nsm-ink);background:#fff;outline:none}
.nsm__in:focus{border-color:var(--nsm-b1);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.nsm select,.nsm__rate{width:100%;border:1px solid var(--nsm-line);border-radius:12px;padding:11px 12px;
  font:inherit;color:var(--nsm-ink);background:#fff;outline:none}
.nsm select:focus,.nsm__rate:focus{border-color:var(--nsm-b1);box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.nsm__demos{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px}
.nsm__demos>span{font-size:12.5px;color:var(--nsm-mut)}
.nsm__demo{font-size:12.5px;border:1px dashed var(--nsm-line);background:#fbfcfe;border-radius:999px;
  padding:4px 11px;color:var(--nsm-ink);cursor:pointer}
.nsm__demo:hover{color:var(--nsm-b1);border-color:var(--nsm-b1)}
.nsm__opts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--nsm-line)}
.nsm__opts label{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;cursor:pointer}
.nsm__opts input{width:17px;height:17px;accent-color:var(--nsm-b1)}
.nsm__cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.nsm__card{border:1px solid var(--nsm-line);border-radius:12px;padding:12px 14px;background:#fbfcfe}
.nsm__k{font-size:12.5px;color:var(--nsm-mut);margin-bottom:5px}
.nsm__v{font-size:17px;line-height:1.45;font-weight:600;word-break:break-word;min-height:25px}
.nsm-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--nsm-line);
  background:#fff;color:var(--nsm-ink);border-radius:10px;padding:6px 13px;font:inherit;font-size:13px;
  cursor:pointer;margin-top:9px;transition:.15s}
.nsm-btn:hover{border-color:var(--nsm-b1);color:var(--nsm-b1)}
.nsm-btn--primary{background:linear-gradient(135deg,var(--nsm-b1),var(--nsm-b2));border-color:transparent;color:#fff}
.nsm-btn--primary:hover{color:#fff;opacity:.92}
.nsm-btn.is-done{border-color:#16a34a;color:#16a34a}
.nsm-btn--primary.is-done{background:#16a34a;color:#fff}
.nsm__doc{margin-top:16px;border:1px solid rgba(37,99,235,.28);border-radius:12px;padding:14px;background:#f4f9ff}
.nsm__doc-h{display:flex;flex-wrap:wrap;gap:10px;align-items:end;justify-content:space-between;margin-bottom:6px}
.nsm__doc-h .nsm__k{margin:0;font-weight:600;color:var(--nsm-ink);font-size:13.5px}
.nsm__dl-w{display:block;min-width:190px}
.nsm__dl-w>span{display:block;font-size:12px;color:var(--nsm-mut);margin-bottom:4px}
.nsm__vatbox{margin-top:16px;padding-top:14px;border-top:1px dashed var(--nsm-line)}
.nsm__vatrow{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;align-items:end}
.nsm__vatres{margin-top:12px;display:grid;gap:8px}
.nsm__vrow{display:grid;grid-template-columns:150px 170px 1fr auto;gap:10px;align-items:center;
  border:1px solid var(--nsm-line);border-radius:10px;padding:9px 12px;background:#fbfcfe}
.nsm__vk{font-size:13px;color:var(--nsm-mut)}
.nsm__vf{font-size:16px;font-weight:700;white-space:nowrap}
.nsm__vw{font-size:13.5px;color:var(--nsm-ink);word-break:break-word}
.nsm__vrow .nsm-btn{margin-top:0}
.nsm__err{margin:12px 0 0;font-size:13px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;
  border-radius:10px;padding:9px 12px}
.nsm__hint{margin:14px 0 0;font-size:12.5px;color:var(--nsm-mut);border-top:1px dashed var(--nsm-line);padding-top:12px}
@media(max-width:820px){
  .nsm{padding:16px}
  .nsm__top,.nsm__cards,.nsm__vatrow{grid-template-columns:1fr}
  .nsm__in{font-size:20px}
  .nsm__vrow{grid-template-columns:1fr;gap:4px}
  .nsm__vrow .nsm-btn{margin-top:6px;justify-self:start}
}
@media(prefers-reduced-motion:reduce){.nsm-btn{transition:none}}
