/* Calcolo Stipendio Netto 2026–2027 — namespaced UI. No external fonts/frameworks/CDN. */
[data-nsl-root]{
  --nsl-ink:#102633;--nsl-muted:#60717d;--nsl-accent:#008b7d;--nsl-accent-2:#0a6cf1;
  --nsl-dark:#075d56;--nsl-border:#dbe5e8;--nsl-border-strong:#bfd1d6;--nsl-soft:#f5f9fa;
  --nsl-soft-2:#edf7f6;--nsl-paper:#fff;--nsl-warm:#fff8e8;--nsl-focus:#165dff;
  --nsl-shadow:0 20px 60px rgba(20,57,70,.10);--nsl-shadow-sm:0 8px 24px rgba(20,57,70,.07);
  color:var(--nsl-ink);font:400 16px/1.58 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  max-width:1320px;margin:28px auto;background:transparent;isolation:isolate;box-sizing:border-box;text-align:left;overflow-wrap:anywhere;
}
[data-nsl-root] *,[data-nsl-root] *::before,[data-nsl-root] *::after{box-sizing:border-box}
[data-nsl-root] [hidden]{display:none!important}
[data-nsl-root] h2,[data-nsl-root] h3,[data-nsl-root] p,[data-nsl-root] ul{padding:0;margin:0 0 14px;line-height:1.5;color:inherit}
[data-nsl-root] h2{font-size:clamp(28px,4.4vw,43px);line-height:1.08;letter-spacing:-.035em;font-weight:800;margin:8px 0 12px;max-width:760px}
[data-nsl-root] h3{font-size:20px;line-height:1.3;letter-spacing:-.015em;font-weight:760}
[data-nsl-root] a{color:var(--nsl-dark);text-decoration:underline;text-underline-offset:3px}
[data-nsl-root] button,[data-nsl-root] input,[data-nsl-root] select{font:inherit;letter-spacing:normal;text-transform:none;box-shadow:none;min-width:0;max-width:100%;border-radius:12px}
[data-nsl-root] button{cursor:pointer;min-height:46px;line-height:1.3;white-space:normal;margin:0;padding:12px 18px;border:1px solid transparent;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}
[data-nsl-root] button:hover{transform:translateY(-1px)}
[data-nsl-root] button:disabled{cursor:wait;opacity:.55;transform:none}
[data-nsl-root] button:focus-visible,[data-nsl-root] input:focus-visible,[data-nsl-root] select:focus-visible,[data-nsl-root] summary:focus-visible,[data-nsl-root] a:focus-visible{outline:3px solid color-mix(in srgb,var(--nsl-focus) 35%, transparent);outline-offset:2px}
[data-nsl-root] input:not([type=checkbox]):not([type=range]):not([type=file]),[data-nsl-root] select{width:100%;min-height:50px;background:#fff;color:var(--nsl-ink);padding:11px 13px;border:1px solid var(--nsl-border-strong);appearance:auto;margin:0;font-size:16px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
[data-nsl-root] input:not([type=checkbox]):not([type=range]):not([type=file]):hover,[data-nsl-root] select:hover{border-color:#93b2ba}
[data-nsl-root] input:not([type=checkbox]):not([type=range]):not([type=file]):focus,[data-nsl-root] select:focus{border-color:var(--nsl-accent);box-shadow:0 0 0 4px rgba(0,139,125,.09)}
[data-nsl-root] input[type=checkbox]{width:19px;height:19px;flex:0 0 19px;accent-color:var(--nsl-accent);margin:3px 0 0}
[data-nsl-root] input[type=range]{accent-color:var(--nsl-accent);width:100%;min-height:44px;margin:8px 0 0}
[data-nsl-root] input[aria-invalid=true]{border-color:#b92e3b!important;background:#fff7f8!important}
[data-nsl-root] small,[data-nsl-root] .nsl-note{font-size:12.5px;line-height:1.5;color:var(--nsl-muted)}

/* Hero */
[data-nsl-root] .nsl-heading{position:relative;display:flex;justify-content:space-between;align-items:center;gap:26px;padding:34px 36px;border:1px solid #d5e7e4;border-radius:24px;background:radial-gradient(circle at 92% 12%,rgba(10,108,241,.10),transparent 28%),linear-gradient(135deg,#f0fbf8 0%,#f8fbff 58%,#fff 100%);box-shadow:var(--nsl-shadow);overflow:hidden}
[data-nsl-root] .nsl-heading::after{content:"";position:absolute;right:-70px;bottom:-100px;width:230px;height:230px;border:34px solid rgba(0,139,125,.06);border-radius:50%;pointer-events:none}
[data-nsl-root] .nsl-heading-copy{position:relative;z-index:1;max-width:830px}
[data-nsl-root] .nsl-heading p{font-size:16px;max-width:800px;color:#465e6b;margin-bottom:17px}
[data-nsl-root] .nsl-eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;display:block;color:var(--nsl-dark);text-transform:uppercase}
[data-nsl-root] .nsl-ral-badge{position:relative;z-index:1;display:flex;align-items:center;gap:8px;padding:14px 16px;border:1px solid rgba(0,139,125,.18);border-radius:16px;background:rgba(255,255,255,.82);box-shadow:var(--nsl-shadow-sm);font-size:12px;white-space:nowrap;color:var(--nsl-dark)}
[data-nsl-root] .nsl-ral-badge span{color:var(--nsl-accent-2);font-size:18px}
[data-nsl-root] .nsl-trust-row{display:flex;flex-wrap:wrap;gap:8px}
[data-nsl-root] .nsl-trust-row span{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border-radius:999px;border:1px solid #cfe4e1;background:rgba(255,255,255,.82);font-size:11px;font-weight:700;color:#31545a}
[data-nsl-root] .nsl-scope-note{margin:14px 0 18px;padding:13px 16px;border:1px solid #e8d9ae;border-radius:12px;background:var(--nsl-warm);color:#624f28;font-size:13px}

/* Tabs */
[data-nsl-root] .nsl-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:7px;background:#edf3f5;border:1px solid #e1eaec;border-radius:16px;margin:18px 0 12px;position:sticky;top:8px;z-index:8;box-shadow:0 4px 18px rgba(20,57,70,.05)}
[data-nsl-root] .nsl-tabs button{background:transparent;color:#46606c;border-color:transparent;font-weight:700;font-size:13px}
[data-nsl-root] .nsl-tabs button[aria-selected=true]{background:#fff;color:var(--nsl-dark);box-shadow:0 5px 16px rgba(18,57,70,.09);border-color:#dce8ea}
[data-nsl-root] .nsl-tabs button:hover{background:rgba(255,255,255,.78)}
[data-nsl-root] .nsl-status{font-size:13px;min-height:12px;margin:0 0 10px;padding:0 4px;color:var(--nsl-dark)}
[data-nsl-root] .nsl-status.nsl-error{background:#fff2f2;color:#981f30;border:1px solid #eec0c6;padding:13px;border-radius:10px}

/* Layout and cards */
[data-nsl-root] .nsl-workspace{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(300px,.78fr);gap:22px;align-items:start}
[data-nsl-root] .nsl-form{min-width:0}
[data-nsl-root] .nsl-results{position:sticky;top:84px;min-width:0}
[data-nsl-root] .nsl-block{padding:24px;border:1px solid var(--nsl-border);border-radius:17px;background:var(--nsl-paper);margin:0 0 16px;min-width:0;box-shadow:0 5px 24px rgba(20,57,70,.035)}
[data-nsl-root] .nsl-block:hover{border-color:#cadade}
[data-nsl-root] .nsl-block-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
[data-nsl-root] .nsl-block-heading h3{margin:0}
[data-nsl-root] .nsl-step{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:7px;border-radius:9px;background:var(--nsl-soft-2);color:var(--nsl-dark);font-size:12px;font-weight:800;vertical-align:1px}
[data-nsl-root] .nsl-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
[data-nsl-root] .nsl-field{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;margin:0;min-width:0;color:var(--nsl-ink)}
[data-nsl-root] .nsl-field small{font-weight:400;color:#6a7c86}
[data-nsl-root] .nsl-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:520;margin:10px 0 16px;min-height:28px;cursor:pointer}
[data-nsl-root] .nsl-check small{display:block;margin-top:4px}
[data-nsl-root] details{border:0;margin:12px 0 0;padding:0}
[data-nsl-root] details.nsl-block{border:1px solid var(--nsl-border);margin:0 0 16px;padding:20px 24px}
[data-nsl-root] summary{font-weight:720;cursor:pointer;min-height:32px;font-size:14px;list-style:revert;color:var(--nsl-ink)}
[data-nsl-root] summary::marker{color:var(--nsl-accent)}
[data-nsl-root] .nsl-details-body{padding-top:17px}
[data-nsl-root] .nsl-optional{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--nsl-muted);display:inline-block;margin-left:6px;padding:3px 7px;background:#f1f5f6;border-radius:999px}
[data-nsl-root] .nsl-tag{font-size:11px;font-weight:750;border:1px solid #b9d9d4;border-radius:999px;background:#eef9f6;padding:6px 10px;white-space:nowrap;display:inline-block;color:var(--nsl-dark)}

/* Controls */
[data-nsl-root] .nsl-primary{background:linear-gradient(135deg,var(--nsl-accent),#06756c);color:#fff;font-weight:760;box-shadow:0 8px 20px rgba(0,139,125,.20)}
[data-nsl-root] .nsl-primary:hover{background:linear-gradient(135deg,#007b70,var(--nsl-dark));box-shadow:0 10px 25px rgba(0,139,125,.24)}
[data-nsl-root] .nsl-secondary{background:#f5fbfa;border-color:#c9dedb;color:var(--nsl-dark);font-size:13px;font-weight:700}
[data-nsl-root] .nsl-secondary:hover{background:#eaf7f4;border-color:#a8cec8}
[data-nsl-root] .nsl-text-button{background:transparent;color:var(--nsl-dark);font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:8px 4px;min-height:38px}
[data-nsl-root] .nsl-person{border:1px solid #d2e3e0;border-radius:13px;margin:18px 0;padding:16px;background:#f8fcfb;min-width:0}
[data-nsl-root] .nsl-person legend{float:none;font-weight:750;font-size:13px;padding:0 6px;width:auto}
[data-nsl-root] .nsl-submit{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:4px 0 8px}
[data-nsl-root] .nsl-submit .nsl-primary{flex:1 1 230px;min-height:54px;font-size:15px}
[data-nsl-root] .nsl-submit .nsl-check{margin:0;flex:1 1 210px}

/* Result experience */
[data-nsl-root] .nsl-result-card{position:relative;background:radial-gradient(circle at 85% 18%,rgba(255,255,255,.14),transparent 28%),linear-gradient(140deg,#062f3b 0%,#075d56 48%,#008b7d 100%);color:#fff;padding:26px;border-radius:20px;margin-bottom:14px;font-variant-numeric:tabular-nums;box-shadow:0 18px 44px rgba(5,62,67,.20);overflow:hidden}
[data-nsl-root] .nsl-result-card::after{content:"";position:absolute;right:-42px;bottom:-55px;width:150px;height:150px;border-radius:50%;border:25px solid rgba(255,255,255,.06)}
[data-nsl-root] .nsl-result-card .nsl-eyebrow{color:#bcefe4}
[data-nsl-root] .nsl-big-number{position:relative;z-index:1;display:block;font-size:clamp(32px,3.3vw,46px);font-weight:820;letter-spacing:-.045em;line-height:1.12;margin:10px 0;overflow-wrap:anywhere}
[data-nsl-root] .nsl-sub-result{position:relative;z-index:1;font-size:13px;color:#d7f0eb;margin:0 0 14px}
[data-nsl-root] .nsl-quality{position:relative;z-index:1;display:inline-block;font-size:11px;border:1px solid rgba(216,244,238,.42);border-radius:999px;padding:6px 10px;line-height:1.4;color:#edf9f6;background:rgba(255,255,255,.06)}
[data-nsl-root] .nsl-important{padding:14px 16px;border-left:4px solid #c79a3d;background:var(--nsl-warm);border-radius:7px;font-size:13px;margin-bottom:16px}
[data-nsl-root] .nsl-important p:last-child{margin:0}
[data-nsl-root] .nsl-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 20px}
[data-nsl-root] .nsl-mini-grid>div{padding:14px 15px;border:1px solid var(--nsl-border);border-radius:12px;background:#f9fbfc;min-width:0}
[data-nsl-root] .nsl-mini-grid span{font-size:11px;line-height:1.45;display:block;color:var(--nsl-muted)}
[data-nsl-root] .nsl-mini-grid strong{display:block;font-size:20px;line-height:1.3;font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:6px}
[data-nsl-root] .nsl-result-section{padding:18px;border:1px solid var(--nsl-border);border-radius:14px;margin:0 0 12px;font-size:13px;background:#fff;box-shadow:0 5px 20px rgba(20,57,70,.035)}
[data-nsl-root] .nsl-result-section summary{margin-bottom:10px}
[data-nsl-root] .nsl-result-section:not([open]) summary{margin-bottom:0}
[data-nsl-root] .nsl-stack{display:flex;overflow:hidden;border-radius:999px;height:18px;width:100%;margin:16px 0 12px;background:#edf2f3;box-shadow:inset 0 0 0 1px rgba(0,0,0,.03)}
[data-nsl-root] .nsl-stack span{height:100%;min-width:0}
[data-nsl-root] .nsl-segment-net{background:#0e947e}[data-nsl-root] .nsl-segment-inps{background:#4a78c4}[data-nsl-root] .nsl-segment-tax{background:#c76f66}[data-nsl-root] .nsl-segment-local{background:#d4aa49}[data-nsl-root] .nsl-segment-other{background:#8495a3}
[data-nsl-root] .nsl-legend{display:flex;flex-wrap:wrap;gap:7px 13px;font-size:11px}
[data-nsl-root] .nsl-legend span{display:inline-flex;align-items:center;gap:5px}
[data-nsl-root] .nsl-legend i{width:9px;height:9px;border-radius:3px;display:inline-block;flex:0 0 9px}

/* Tables / interactive labs */
[data-nsl-root] .nsl-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border-radius:12px}
[data-nsl-root] .nsl-table{border-collapse:separate;border-spacing:0;table-layout:auto;width:100%;font-size:12px;border:1px solid var(--nsl-border);margin:8px 0 12px;color:var(--nsl-ink);background:#fff;border-radius:12px;overflow:hidden}
[data-nsl-root] .nsl-table caption{text-align:left;font-size:11px;color:var(--nsl-muted);padding:5px 0}
[data-nsl-root] .nsl-table th,[data-nsl-root] .nsl-table td{padding:11px 9px;border:0;border-bottom:1px solid #e6edef;background:transparent;text-align:left;vertical-align:top;line-height:1.45}
[data-nsl-root] .nsl-table thead th{background:#f5f8f9;font-weight:750}
[data-nsl-root] .nsl-table th{font-weight:620}
[data-nsl-root] .nsl-table td:last-child,[data-nsl-root] .nsl-table thead th:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
[data-nsl-root] .nsl-table .nsl-total th,[data-nsl-root] .nsl-table .nsl-total td{background:#eaf7f2;color:var(--nsl-dark);font-weight:780;border-bottom:0}
[data-nsl-root] .nsl-lab{background:linear-gradient(145deg,#eff9f6,#fff 70%);border-color:#cfe5e0}
[data-nsl-root] .nsl-inline,[data-nsl-root] .nsl-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:16px 0}
[data-nsl-root] .nsl-inline .nsl-field{flex:1 1 220px}
[data-nsl-root] .nsl-actions{align-items:center}
[data-nsl-root] .nsl-comparison{margin-top:22px}
[data-nsl-root] .nsl-empty{padding:25px;background:var(--nsl-soft);border:1px dashed #cbdcdf;border-radius:12px;color:var(--nsl-muted);font-size:14px;text-align:center}
[data-nsl-root] .nsl-chart{width:100%;height:auto;max-height:310px;margin-top:15px;overflow:visible;background:#fff;border:1px solid var(--nsl-border);border-radius:13px;padding:8px}
[data-nsl-root] .nsl-chart .nsl-axis{fill:none;stroke:#849da5;stroke-width:1}[data-nsl-root] .nsl-chart .nsl-line{fill:none;stroke:var(--nsl-accent);stroke-width:3;stroke-linejoin:round}[data-nsl-root] .nsl-chart text{fill:var(--nsl-muted);font:11px system-ui,sans-serif}
[data-nsl-root] .nsl-portability{background:#f9fbfc}[data-nsl-root] .nsl-portability p,[data-nsl-root] .nsl-method{font-size:13px}[data-nsl-root] .nsl-sources a{overflow-wrap:anywhere}[data-nsl-root] .nsl-target-output,[data-nsl-root] .nsl-region-results{margin-top:20px}
[data-nsl-root] .nsl-method-block{background:#fbfcfd}

@media(max-width:1020px){[data-nsl-root] .nsl-workspace{grid-template-columns:1fr;gap:8px}[data-nsl-root] .nsl-results{position:static}[data-nsl-root] .nsl-mini-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){[data-nsl-root]{font-size:15px;margin:12px auto}[data-nsl-root] .nsl-heading{padding:25px 18px;align-items:flex-start;border-radius:18px}[data-nsl-root] .nsl-heading p{font-size:14px}[data-nsl-root] .nsl-ral-badge{display:none}[data-nsl-root] .nsl-trust-row{gap:6px}[data-nsl-root] .nsl-trust-row span{font-size:10px;padding:6px 8px}[data-nsl-root] .nsl-scope-note{font-size:12px}[data-nsl-root] .nsl-tabs{display:flex;overflow-x:auto;scrollbar-width:thin;position:static;border-radius:13px}[data-nsl-root] .nsl-tabs button{flex:0 0 auto;min-width:135px;font-size:12px;padding:10px 9px}[data-nsl-root] .nsl-block,[data-nsl-root] details.nsl-block{padding:18px 15px;border-radius:14px}[data-nsl-root] .nsl-grid{gap:13px;grid-template-columns:1fr}[data-nsl-root] .nsl-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-nsl-root] .nsl-result-card{padding:25px 20px;border-radius:17px}[data-nsl-root] .nsl-result-section{padding:15px 12px}[data-nsl-root] .nsl-table{font-size:11px}[data-nsl-root] .nsl-person{padding:12px}[data-nsl-root] .nsl-actions>button{flex:1 1 150px}[data-nsl-root] .nsl-primary{width:100%}[data-nsl-root] h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){[data-nsl-root] *,[data-nsl-root] *::before,[data-nsl-root] *::after{transition:none!important;scroll-behavior:auto!important;animation:none!important}}
@media print{[data-nsl-root] .nsl-tabs,[data-nsl-root] .nsl-form,[data-nsl-root] .nsl-portability,[data-nsl-root] .nsl-lab,[data-nsl-root] .nsl-scope-note{display:none!important}[data-nsl-root] .nsl-workspace{display:block}[data-nsl-root] .nsl-results{position:static}[data-nsl-root] .nsl-result-card{background:white;color:black;border:1px solid #777;box-shadow:none}[data-nsl-root] .nsl-quality,[data-nsl-root] .nsl-sub-result,[data-nsl-root] .nsl-result-card .nsl-eyebrow{color:black}}
