.nl-wrap{display:grid;gap:var(--s6);max-width:46rem}
.nl-status{margin:0;padding:var(--s3) var(--s4);border:1px solid var(--line-strong);border-inline-start:4px solid var(--gold);background:var(--surface);color:var(--text);font-size:var(--fs-body)}
.nl-status.nl-on{border-inline-start-color:var(--ok)}
.nl-form{display:grid;gap:var(--s5);padding:var(--s5);border:1px solid var(--line);border-radius:var(--r2);background:var(--surface);box-shadow:var(--shadow-1)}
.nl-field{display:grid;gap:var(--s2);margin:0;padding:0;border:0;min-width:0}
.nl-field>legend,.nl-field>label.nl-lab{font-weight:700;font-size:var(--fs-body);color:var(--text);padding:0}
.nl-hint{margin:0;font-size:var(--fs-small);color:var(--text-2)}
.nl-field input[type=email],.nl-field select,.nl-field textarea{width:100%;box-sizing:border-box;min-height:var(--tap);padding:var(--s2) var(--s3);border:1px solid var(--line-strong);border-radius:var(--r1);background:var(--bg);color:var(--text);font:inherit}
.nl-field textarea{min-height:5rem;resize:vertical}
.nl-field input:focus-visible,.nl-field select:focus-visible,.nl-field textarea:focus-visible,.nl-opt input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}
.nl-opts{display:grid;gap:var(--s2)}
.nl-opt{display:flex;align-items:center;gap:var(--s3);min-height:var(--tap);padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--r1);background:var(--bg);cursor:pointer}
.nl-opt input{inline-size:1.25rem;block-size:1.25rem;margin:0;flex:none;accent-color:var(--accent)}
.nl-chips{display:flex;flex-wrap:wrap;gap:var(--s2)}
.nl-chip{position:relative;display:inline-flex}
.nl-chip input{position:absolute;opacity:0;inline-size:1px;block-size:1px;margin:0}
.nl-chip span{display:inline-flex;align-items:center;min-height:var(--tap);padding:0 var(--s4);border:1px solid var(--line-strong);border-radius:var(--pill);background:var(--bg);color:var(--text);font-size:var(--fs-small);cursor:pointer}
.nl-chip input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--accent-on);font-weight:700}
.nl-chip input:checked+span::before{content:"\2713\00a0"}
.nl-chip input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}
.nl-consent{display:flex;gap:var(--s3);align-items:flex-start;font-size:var(--fs-small);color:var(--text)}
.nl-consent input{inline-size:1.25rem;block-size:1.25rem;margin:.15rem 0 0;flex:none;accent-color:var(--accent)}
.nl-err{margin:0;color:var(--alert);font-weight:700;font-size:var(--fs-small)}
.nl-ok{margin:0;padding:var(--s3) var(--s4);border:1px solid var(--ok);border-inline-start-width:4px;border-radius:var(--r1);color:var(--text);font-weight:700}
.nl-btn{min-height:var(--tap);padding:0 var(--s6);border:0;border-radius:var(--r1);background:var(--accent);color:var(--accent-on);font:inherit;font-weight:700;cursor:pointer}
.nl-btn:hover{background:var(--accent-strong)}
.nl-btn:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.nl-btn[disabled]{opacity:.6;cursor:default}
.nl-info{display:grid;gap:var(--s3)}
.nl-info h2{margin:0;font-size:var(--fs-h3)}
.nl-info p,.nl-info li{margin:0;color:var(--text-2)}
.nl-info ul{margin:0;padding-inline-start:var(--s5);display:grid;gap:var(--s2)}
@media (prefers-reduced-motion:no-preference){.nl-opt,.nl-chip span{transition:background .15s,border-color .15s}}
@media (max-width:480px){.nl-form{padding:var(--s4)}.nl-btn{inline-size:100%}}
.nl-main{direction:inherit;text-align:start}
.nl-wrap,.nl-form,.nl-field,.nl-opt span,.nl-chip span{min-width:0;overflow-wrap:anywhere}
.nl-chip span{max-inline-size:100%;white-space:normal;line-height:1.3;padding-block:var(--s2)}
