/* Narzędzia rozwodowe — adwokat-wojan.pl
   Osobny arkusz, korzysta ze zmiennych z styl.css. */

.nz{--nz-radius:0}
.nz-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;align-items:end;margin-bottom:30px}
.nz-eyebrow{display:block;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);font-weight:600;margin-bottom:10px}
.nz-head h2{font-family:var(--serif);font-size:clamp(26px,3.2vw,34px);line-height:1.2;font-weight:600;margin:0;letter-spacing:-.01em}
.nz-head p{margin:12px 0 0;max-width:62ch;color:var(--ink-2)}
.nz-head .nz-privacy{font-size:13.5px;color:var(--ink-3);display:flex;gap:8px;align-items:center;white-space:nowrap}
.nz-head .nz-privacy svg{width:16px;height:16px;stroke:var(--brass);fill:none;stroke-width:1.6}

/* --- wybór narzędzia --- */
.nz-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 -1px;padding:0;list-style:none}
.nz-tab{
  display:flex;flex-direction:column;gap:10px;text-align:left;width:100%;
  padding:18px 16px 16px;background:#fff;border:1px solid var(--rule);border-bottom:none;
  cursor:pointer;font:inherit;color:var(--ink);transition:border-color .2s,transform .2s,background .2s;
  position:relative;
}
.nz-tab::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:transparent;transition:background .2s}
.nz-tab:hover{border-color:var(--brass-2);transform:translateY(-2px)}
.nz-tab:hover::before{background:var(--brass-3)}
.nz-tab[aria-selected="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.nz-tab[aria-selected="true"]::before{background:var(--brass-2)}
.nz-tab svg{width:26px;height:26px;stroke:var(--brass);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.nz-tab[aria-selected="true"] svg{stroke:var(--brass-2)}
.nz-tab b{font-family:var(--serif);font-size:16.5px;font-weight:600;line-height:1.25;display:block}
.nz-tab small{font-size:12.5px;color:var(--ink-3);line-height:1.4;display:block}
.nz-tab[aria-selected="true"] small{color:#c8bfb1}

/* --- panel --- */
.nz-panel{min-width:0;overflow:hidden;background:#fff;border:1px solid var(--rule);border-top:3px solid var(--brass);padding:34px 36px 38px}
.nz-panel[hidden]{display:none}
.nz-panel h3{font-family:var(--serif);font-size:24px;font-weight:600;margin:0 0 8px;line-height:1.25}
.nz-panel .nz-intro{margin:0 0 28px;color:var(--ink-2);max-width:66ch;font-size:16px}
.nz-cols{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:start}
.nz-cols>.nz-out{position:sticky;top:104px}

/* --- pola --- */
.nz-f{margin-bottom:20px}
.nz-f label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;letter-spacing:.02em}
.nz-f small{display:block;font-size:13px;color:var(--ink-3);margin:-2px 0 8px;line-height:1.45}
.nz-f input[type=number],.nz-f input[type=text],.nz-f input[type=email],.nz-f input[type=date],.nz-f select,.nz-f textarea{
  width:100%;font-family:inherit;font-size:16px;color:var(--ink);
  padding:11px 13px;border:1px solid var(--rule);background:#fff;border-radius:0;-webkit-appearance:none;appearance:none;
}
.nz-f select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238d6e33' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:36px}
.nz-f input:focus,.nz-f select:focus,.nz-f textarea:focus{border-color:var(--brass);outline:none;box-shadow:0 0 0 2px rgba(141,110,51,.16)}
.nz-money{position:relative}
.nz-money input{padding-right:44px}
.nz-money::after{content:"zł";position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--ink-3)}
.nz-range{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:14px;align-items:center}
.nz-range output{font-family:var(--serif);font-size:19px;font-weight:600;text-align:right;white-space:nowrap}
input[type=range].nz-slider{width:100%;height:28px;margin:0;background:transparent;-webkit-appearance:none;appearance:none}
input[type=range].nz-slider:focus{outline:none}
input[type=range].nz-slider::-webkit-slider-runnable-track{height:3px;background:linear-gradient(to right,var(--brass) var(--p,50%),var(--rule) var(--p,50%))}
input[type=range].nz-slider::-moz-range-track{height:3px;background:var(--rule)}
input[type=range].nz-slider::-moz-range-progress{height:3px;background:var(--brass)}
input[type=range].nz-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid var(--brass);margin-top:-8.5px;box-shadow:0 1px 4px rgba(36,31,26,.18);cursor:pointer}
input[type=range].nz-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid var(--brass);cursor:pointer}
input[type=range].nz-slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(141,110,51,.2)}
.nz-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.nz-group{border-top:1px solid var(--rule);padding-top:20px;margin-top:6px}
.nz-group>h4{margin:0 0 14px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:600}

/* --- opcje (karty radio/checkbox) --- */
.nz-opts{display:grid;gap:10px;margin:0 0 22px}
.nz-opt{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--rule);cursor:pointer;background:#fff;transition:border-color .15s,background .15s}
.nz-opt:hover{border-color:var(--brass-2)}
.nz-opt input{margin:4px 0 0;accent-color:var(--brass);flex:0 0 auto;width:16px;height:16px}
.nz-opt span{display:block;font-weight:500;line-height:1.4}
.nz-opt span small{display:block;font-weight:400;font-size:13.5px;color:var(--ink-3);margin-top:3px}
.nz-opt:has(input:checked){border-color:var(--brass);background:#fbf8f2;box-shadow:inset 0 0 0 1px var(--brass)}

/* --- kreator --- */
.nz-steps{display:flex;gap:6px;margin:0 0 22px}
.nz-steps span{flex:1;height:4px;background:var(--rule)}
.nz-steps span.done{background:var(--brass)}
.nz-steps span.now{background:var(--brass-2)}
.nz-stepnr{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:600;margin:0 0 8px}
.nz-q{font-family:var(--serif);font-size:22px;font-weight:600;margin:0 0 18px;line-height:1.3}
.nz-nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.nz-link{background:none;border:none;padding:0;font:inherit;font-size:15px;color:var(--brass);text-decoration:underline;text-underline-offset:.18em;cursor:pointer}
.nz-link:hover{color:var(--ink)}
.btn.nz-btn{cursor:pointer;font-family:inherit}
.btn.nz-btn:disabled{opacity:.45;cursor:not-allowed}
.btn.nz-btn--sec{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.nz-btn--sec:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn.nz-btn--sm{padding:10px 16px;font-size:14px}

/* --- wynik --- */
.nz-out{min-width:0;background:var(--ink);color:#e4ded6;padding:28px 30px 30px;position:relative}
.nz-out::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--brass-2)}
.nz-out .nz-lbl{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-3);font-weight:600;margin-bottom:8px}
.nz-out .nz-big{display:block;font-family:var(--serif);font-size:clamp(30px,3.6vw,42px);line-height:1.1;color:#fff;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.nz-out .nz-big small{font-size:.55em;color:#c8bfb1;font-weight:400;font-family:var(--sans);letter-spacing:0}
.nz-out .nz-sub{margin:8px 0 0;font-size:14.5px;color:#c4bcb1}
.nz-out .nz-blk{padding:20px 0 0;margin-top:20px;border-top:1px solid rgba(255,255,255,.12)}
.nz-out .nz-blk:first-child{padding-top:0;margin-top:0;border-top:0}
.nz-out ul{margin:6px 0 0;padding:0;list-style:none}
.nz-out .nz-rows li{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px dotted rgba(255,255,255,.14);font-size:15px}
.nz-out .nz-rows li:last-child{border-bottom:0}
.nz-out .nz-rows .v{white-space:nowrap;font-variant-numeric:tabular-nums;color:#fff;font-weight:500}
.nz-out .nz-rows .v.sum{font-family:var(--serif);font-size:18px}
.nz-out .nz-notes li{position:relative;padding:5px 0 5px 18px;font-size:14.5px;color:#d6cfc5;line-height:1.5}
.nz-out .nz-notes li::before{content:"";position:absolute;left:0;top:.95em;width:8px;height:1.5px;background:var(--brass-2)}
.nz-out .nz-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.nz-out .btn{font-size:14px;padding:11px 18px}
.nz-out .btn.btn--ghost{color:#e4ded6;border-color:rgba(255,255,255,.35)}
.nz-out .btn.btn--ghost:hover{border-color:#fff;color:#fff}
.nz-out a{color:#fff}
.nz-bar{height:8px;background:rgba(255,255,255,.12);position:relative;margin:14px 0 6px}
.nz-bar i{position:absolute;top:0;bottom:0;background:var(--brass-2);transition:left .35s,width .35s}
.nz-bar-l{display:flex;justify-content:space-between;font-size:12px;color:#9b9188}
.nz-flash{animation:nzFlash .5s ease-out}
@keyframes nzFlash{from{color:var(--brass-2)}to{color:#fff}}
.nz-status{font-size:13.5px;color:#c8bfb1;margin:10px 0 0;min-height:1.3em}
.nz-mail{display:flex;gap:8px;margin-top:10px}
.nz-mail input{flex:1;min-width:0;font:inherit;font-size:15px;padding:10px 12px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.06);color:#fff}
.nz-mail input::placeholder{color:#9b9188}
.nz-mail input:focus{outline:none;border-color:var(--brass-2)}

/* --- zestawienie kosztów --- */
.nz-tbl{width:100%;border-collapse:collapse;font-size:15px}
.nz-tbl th{text-align:left;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--brass);font-weight:600;padding:0 8px 10px 0;border-bottom:1px solid var(--rule)}
.nz-tbl th.r{text-align:right;padding-right:0}
.nz-tbl td{padding:9px 8px 9px 0;border-bottom:1px solid var(--rule);vertical-align:middle}
.nz-tbl td.nm{width:44%}
.nz-tbl td.nm b{display:block;font-weight:500}
.nz-tbl td.nm small{display:block;font-size:12.5px;color:var(--ink-3);line-height:1.35}
.nz-tbl td.in{width:26%}
.nz-tbl td.in .nz-money input{padding:8px 36px 8px 10px;font-size:15px;text-align:right;width:100%;font-family:inherit;color:var(--ink);border:1px solid var(--rule);background:#fff;border-radius:0}
.nz-tbl td.in .nz-money input:focus{border-color:var(--brass);outline:none}
.nz-tbl td.in .nz-money::after{right:10px;font-size:13px}
.nz-tbl td.r{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;padding-right:0;width:16%}
.nz-tbl td.x{width:28px;padding-right:0;text-align:right}
.nz-tbl td.x button{background:none;border:none;color:var(--ink-3);cursor:pointer;font-size:18px;line-height:1;padding:2px 4px}
.nz-tbl td.x button:hover{color:#a2503f}
.nz-tbl tfoot td{border-bottom:none;border-top:2px solid var(--ink);padding-top:12px;font-weight:600}
.nz-tbl tfoot td.r{font-family:var(--serif);font-size:19px}
.nz-tbl input[type=text]{width:100%;font:inherit;font-size:15px;padding:8px 10px;border:1px solid var(--rule);color:var(--ink);border-radius:0}
.nz-addrow{margin-top:14px}
.nz-meta{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin-bottom:8px}

/* --- oś czasu --- */
.nz-switch{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}
.nz-switch button{font:inherit;font-size:14.5px;font-weight:500;padding:10px 16px;border:1px solid var(--rule);background:#fff;color:var(--ink);cursor:pointer}
.nz-switch button:hover{border-color:var(--brass-2)}
.nz-switch button[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.nz-tl{list-style:none;margin:0;padding:0;position:relative}
.nz-tl::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:1.5px;background:var(--rule)}
.nz-tl li{position:relative;padding:0 0 26px 38px}
.nz-tl li::before{content:"";position:absolute;left:3px;top:6px;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--brass);box-sizing:border-box}
.nz-tl li:last-child{padding-bottom:0}
.nz-tl h4{margin:0;font-family:var(--serif);font-size:19px;font-weight:600;line-height:1.3}
.nz-tl .t{display:inline-block;margin:6px 0 8px;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--brass);font-weight:600;background:#fbf8f2;padding:3px 8px}
.nz-tl p{margin:0;font-size:15px;color:var(--ink-2);line-height:1.55;max-width:60ch}

/* --- lista dokumentów --- */
.nz-docs{list-style:none;margin:0;padding:0;counter-reset:dok}
.nz-docs li{position:relative;padding:12px 0 12px 40px;border-bottom:1px dotted rgba(255,255,255,.18);counter-increment:dok;font-size:15px}
.nz-docs li::before{content:counter(dok);position:absolute;left:0;top:11px;width:26px;height:26px;border:1px solid var(--brass-2);color:var(--brass-3);font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:600}
.nz-docs li b{display:block;font-weight:500;color:#fff}
.nz-docs li small{display:block;font-size:13px;color:#b5aca0;margin-top:3px;line-height:1.45}

/* --- pasek narzędzi na stronie głównej --- */
.nz-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;max-width:var(--maxw);margin:0 auto;padding:0 24px}
.nz-strip a{display:flex;flex-direction:column;gap:9px;padding:18px 16px;background:#fff;border:1px solid var(--rule);text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s}
.nz-strip a:hover{border-color:var(--brass-2);transform:translateY(-3px)}
.nz-strip svg{width:26px;height:26px;stroke:var(--brass);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.nz-strip b{font-family:var(--serif);font-size:16px;font-weight:600;line-height:1.25}
.nz-strip small{font-size:12.5px;color:var(--ink-3);line-height:1.4}
.nz-strip-wrap{padding:56px 0;background:var(--paper-2)}
.nz-strip-head{max-width:var(--maxw);margin:0 auto 24px;padding:0 24px;display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap}
.nz-strip-head h2{font-family:var(--serif);font-size:26px;margin:0;font-weight:600}
.nz-strip-head p{margin:6px 0 0;color:var(--ink-2);max-width:60ch}
.nz-strip-head a{white-space:nowrap;font-size:15px}

/* --- drobne --- */
.nz-note{font-size:13.5px;color:var(--ink-3);margin:26px 0 0;line-height:1.5;max-width:70ch}
.nz-hint{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;background:#fbf8f2;border-left:3px solid var(--brass-2);font-size:14px;color:var(--ink-2);margin:0 0 20px;line-height:1.5}
.nz-hint[hidden]{display:none}
.nz-hint svg{width:18px;height:18px;flex:0 0 auto;stroke:var(--brass);fill:none;stroke-width:1.6;margin-top:2px}

/* --- responsywność --- */
@media (max-width:1000px){
  .nz-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nz-tab{border-bottom:1px solid var(--rule)}
  .nz-tabs{margin-bottom:14px}
  .nz-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nz-cols{grid-template-columns:minmax(0,1fr);gap:30px}
  .nz-cols>.nz-out{position:static}
}
@media (max-width:760px){
  .nz-head{grid-template-columns:1fr}
  .nz-head .nz-privacy{white-space:normal}
  .nz-panel{padding:24px 18px 28px}
  .nz-out{padding:22px 18px 24px}
  .nz-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .nz-tab{padding:14px 12px 12px;gap:8px}
  .nz-tab b{font-size:15px}
  .nz-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .nz-grid2,.nz-meta{grid-template-columns:1fr}
  .nz-tbl td.nm{width:auto}
  .nz-tbl th.hide-m,.nz-tbl td.hide-m{display:none}
  .nz-tbl,.nz-tbl tbody,.nz-tbl tfoot{display:block}
  .nz-tbl thead{display:none}
  .nz-tbl tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 24px;gap:4px 8px;padding:12px 0;border-bottom:1px solid var(--rule)}
  .nz-tbl td{display:block;border:0;padding:0;width:auto}
  .nz-tbl td.nm{grid-column:1/-1;width:auto}
  .nz-tbl td.nm small{display:block}
  .nz-tbl td.in{width:auto}
  .nz-tbl td.in::before{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:3px}
  .nz-tbl td.in-m::before{content:"miesięcznie"}
  .nz-tbl td.in-r::before{content:"rocznie"}
  .nz-tbl td.in .nz-money input{padding:8px 30px 8px 8px;font-size:15px;text-align:right}
  .nz-tbl td.r{display:none}
  .nz-tbl td.x{align-self:end;padding-bottom:6px}
  .nz-tbl tfoot tr{display:flex;justify-content:space-between;align-items:baseline;padding-top:12px;border-top:2px solid var(--ink)}
  .nz-tbl tfoot td{border:0;padding:0}
  .nz-tbl tfoot td.r{display:block;width:auto}
  .nz-tbl tfoot td:last-child{display:none}
  .nz-tbl tfoot td.r{display:table-cell}
  .nz-range{grid-template-columns:minmax(0,1fr) 90px}
}

/* --- druk: tylko wynik --- */
@media print{
  body>*:not(.nz-print-root){display:none!important}
  .nz-print-root{display:block!important}
  @page{size:A4;margin:22mm 20mm}
  .nz-print{font-family:"Times New Roman",Times,serif;font-size:12pt;color:#000;line-height:1.45}
  .nz-print .h{text-align:center;margin-bottom:18pt}
  .nz-print .h b{display:block;font-size:14pt;letter-spacing:.06em;text-transform:uppercase}
  .nz-print .h span{display:block;font-size:11pt;margin-top:4pt}
  .nz-print table{width:100%;border-collapse:collapse;margin:10pt 0 14pt}
  .nz-print th,.nz-print td{border:1px solid #000;padding:5pt 7pt;vertical-align:top;font-size:11pt}
  .nz-print th{background:#f0f0f0;text-align:left;font-weight:bold}
  .nz-print td.r,.nz-print th.r{text-align:right;white-space:nowrap}
  .nz-print tfoot td{font-weight:bold}
  .nz-print ol{padding-left:18pt}
  .nz-print li{margin-bottom:5pt}
  .nz-print .sig{margin-top:40pt;display:flex;justify-content:space-between;font-size:10.5pt}
  .nz-print .sig span{display:block;border-top:1px solid #000;padding-top:4pt;width:60mm;text-align:center}
  .nz-print .ft{margin-top:22pt;font-size:9.5pt;color:#333;border-top:1px solid #999;padding-top:6pt}
  .nz-print p{margin:0 0 6pt}
}
.nz-print-root{display:none}
