/* WPF Narzędzia — wspólne style kalkulatorów (kolory z tokenów wpf-ui: --wpf-brand, --wpf-ink, --wpf-muted, --wpf-line, --wpf-soft) */
.wpf-tool{--t-brand:var(--wpf-brand,#2155f3);--t-brand-dark:var(--wpf-brand-dark,#112648);--t-ink:var(--wpf-ink,#111d34);--t-muted:var(--wpf-muted,#59667c);--t-line:var(--wpf-line,#e0e7f2);--t-soft:var(--wpf-soft,#f0f5ff);--t-r:var(--wpf-radius,14px);--t-ok:#137a4b;--t-warn:#8a4b00;--t-bad:#b42318;
  margin:24px 0 32px;max-width:100%;box-sizing:border-box;color:var(--t-ink)}
.wpf-tool *,.wpf-tool *::before,.wpf-tool *::after{box-sizing:border-box}
.wpf-tool [hidden]{display:none!important}
.wpf-tool__app:empty{display:none}
.wpf-tool__panel{padding:20px;border:1px solid var(--t-line);border-radius:var(--t-r);background:#fff;box-shadow:0 10px 30px -22px rgba(17,32,59,.45)}
.wpf-tool__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px 16px;align-items:start}
.wpf-tool__f{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0;font-size:13.5px;font-weight:650;color:var(--t-ink)}
.wpf-tool__f>span:first-child{line-height:1.3}
.wpf-tool__f small{font-weight:500;color:var(--t-muted);font-size:12.5px}
.wpf-tool__box{display:flex;align-items:center;border:1px solid #cdd5e1;border-radius:10px;background:#fff;min-width:0}
.wpf-tool__box:focus-within{border-color:var(--t-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--t-brand) 20%,transparent)}
.wpf-tool input[type=number],.wpf-tool input[type=date],.wpf-tool input[type=time],.wpf-tool input[type=text],.wpf-tool select{width:100%;min-width:0;min-height:44px;padding:9px 11px;border:1px solid #cdd5e1;border-radius:10px;background:#fff;color:var(--t-ink);font:inherit;font-size:16px;font-weight:500;line-height:1.3}
.wpf-tool__box input,.wpf-tool__box select{border:0!important;box-shadow:none!important}
.wpf-tool__unit{padding-right:12px;color:var(--t-muted);font-size:14px;white-space:nowrap}
.wpf-tool input:focus-visible,.wpf-tool select:focus-visible,.wpf-tool button:focus-visible,.wpf-tool summary:focus-visible{outline:3px solid color-mix(in srgb,var(--t-brand) 35%,transparent);outline-offset:1px}
.wpf-tool__checks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:14px;font-size:14.5px}
.wpf-tool__checks label{display:flex;gap:8px;align-items:flex-start;cursor:pointer;line-height:1.4}
.wpf-tool__checks input{margin-top:3px;width:18px;height:18px;flex:0 0 auto}
.wpf-tool__seg{display:flex;flex-wrap:wrap;border:1px solid var(--t-line);border-radius:10px;overflow:hidden;max-width:100%}
.wpf-tool__seg button{flex:1 1 auto;border:0;background:#fff;padding:10px 12px;min-height:44px;font:inherit;font-weight:650;font-size:13.5px;color:var(--t-muted);cursor:pointer}
.wpf-tool__seg button[aria-pressed=true]{background:var(--t-brand);color:#fff}
.wpf-tool__summary{margin:20px 0 8px;padding:16px 18px;border-left:4px solid var(--t-brand);background:var(--t-soft);border-radius:0 var(--t-r) var(--t-r) 0;font-size:17px;line-height:1.5}
.wpf-tool__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px;margin-top:18px}
.wpf-tool__stat{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--t-line);border-radius:12px;background:#fff;min-width:0}
.wpf-tool__stat.is-main{background:var(--t-soft);border-color:color-mix(in srgb,var(--t-brand) 30%,var(--t-line))}
.wpf-tool__stat-label{font-size:12.5px;font-weight:700;letter-spacing:.02em;color:var(--t-muted)}
.wpf-tool__stat-value{font-size:22px;font-weight:800;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.wpf-tool__stat.is-main .wpf-tool__stat-value{color:var(--t-brand);font-size:26px}
.wpf-tool__stat-note{font-size:13px;color:var(--t-muted);line-height:1.4}
.wpf-tool__msg{margin:12px 0 0;padding:10px 14px;border-radius:10px;font-size:14.5px;line-height:1.45;background:#fff6e5;color:#5b3b00;border:1px solid #f1d39a}
.wpf-tool__msg.is-info{background:#f7f9fc;color:var(--t-ink);border-color:var(--t-line)}
.wpf-tool__list{margin:8px 0 0;padding-left:20px;font-size:14.5px;line-height:1.5}
.wpf-tool__list li{margin:3px 0}
.wpf-tool__badge{display:inline-block;font-size:12px;font-weight:650;border-radius:999px;padding:2px 9px;background:#eef2f8;color:#3b4a63;white-space:nowrap}
.wpf-tool__badge.is-ok{background:#e6f5ee;color:var(--t-ok)}
.wpf-tool__badge.is-warn{background:#fff3df;color:var(--t-warn)}
.wpf-tool__badge.is-bad{background:#fde8e6;color:var(--t-bad)}
.wpf-tool__badge.is-type{background:var(--t-soft);color:var(--t-brand)}
.wpf-tool__scroll{overflow-x:auto;margin:12px 0;border:1px solid var(--t-line);border-radius:12px;-webkit-overflow-scrolling:touch}
.wpf-tool__table{width:100%;border-collapse:collapse;font-size:14px;margin:0}
.wpf-tool__table th,.wpf-tool__table td{padding:9px 12px;border-bottom:1px solid var(--t-line);text-align:left;vertical-align:top}
.wpf-tool__table th{background:#f7f9fc;font-weight:700;white-space:nowrap}
.wpf-tool__table tr:last-child td{border-bottom:0}
.wpf-tool__table small{color:var(--t-muted);font-size:12.5px;font-weight:500;line-height:1.35}
.wpf-tool__table td:first-child{min-width:150px}
.wpf-tool__static{margin-top:28px}
.wpf-tool__skipped li{margin:4px 0}
.wpf-tool__note{margin:22px 0 0;font-size:13px;color:var(--t-muted);line-height:1.5}
.wpf-tool__noscript{padding:12px 14px;border:1px dashed var(--t-line);border-radius:10px}
.wpf-tool__btnrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.wpf-tool__btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--t-line);border-radius:10px;background:#fff;color:var(--t-brand);font:inherit;font-weight:650;font-size:14.5px;cursor:pointer;text-decoration:none}
.wpf-tool__btn:hover{background:var(--t-soft)}
.wpf-tool__cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;margin:26px 0;padding:20px;border-radius:var(--t-r);background:var(--t-soft);border:1px solid color-mix(in srgb,var(--t-brand) 25%,#fff)}
.wpf-tool__cta-text{flex:1 1 300px;min-width:0}
.wpf-tool__cta-title{margin:0 0 4px;font-weight:800;font-size:18px}
.wpf-tool__cta-text p{margin:0}
@media (max-width:520px){
  .wpf-tool__panel{padding:16px}
  .wpf-tool__grid{grid-template-columns:1fr}
  .wpf-tool__cta .wpf-btn{width:100%}
}
.wpf-tool__table caption,.wpft-cap{caption-side:top;text-align:left;padding:10px 12px;font-weight:750;background:#fff}
.wpf-tool__table tr.is-total td{font-weight:750;background:#f7f9fc}
.wpft-staz{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* 1.2 — strona narzędzia (narzędzie na pełną szerokość nad tekstem) i karta-odsyłacz w poradnikach */
.wpf-tool-page__app{margin:8px 0 40px}
.wpf-tool-page__app .wpf-tool{margin:0 0 20px}
.wpf-tool-page__cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:18px 20px;border:1px solid var(--wpf-line,#e0e7f2);border-radius:var(--wpf-radius,14px);background:var(--wpf-soft,#f3f7ff)}
.wpf-tool-page__cta p{margin:0;font-size:15px;line-height:1.5;color:var(--wpf-muted,#59667c)}
.wpf-tool-page__cta p.wpf-tool-page__cta-title{margin-bottom:2px;font-size:16px;font-weight:700;color:var(--wpf-ink,#111d34)}
.wpf-tool-page__cta .wpf-btn{flex:0 0 auto}
.wpf-tool-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:24px 0 28px;padding:16px 20px;border:1px solid var(--wpf-line,#e0e7f2);border-left:4px solid var(--wpf-brand,#2155f3);border-radius:var(--wpf-radius,14px);background:#fff}
.wpf-tool-card p{margin:0}
.wpf-tool-card__eyebrow{font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--wpf-brand,#2155f3)}
.wpf-tool-card__title{font-size:17px;font-weight:700;line-height:1.35;color:var(--wpf-ink,#111d34)}
.wpf-tool-card__btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:10px 18px;border-radius:10px;background:var(--wpf-brand,#2155f3);color:#fff!important;font-weight:700;text-decoration:none!important;white-space:nowrap}
.wpf-tool-card__btn:hover{filter:brightness(1.08)}
@media (max-width:640px){.wpf-tool-page__cta,.wpf-tool-card{flex-direction:column;align-items:stretch}.wpf-tool-page__cta .wpf-btn,.wpf-tool-card__btn{justify-content:center;text-align:center}}

/* generator kodów kreskowych — kod w ramce, przewijany na wąskim ekranie */
.wpft-kod{overflow-x:auto;text-align:center}
.wpft-kod svg{max-width:100%;height:auto}

/* kalkulator kosztów (silnik koszty) — warianty jako grupy pól */
.wpft-war{margin:18px 0 0;padding:16px;border:1px solid var(--t-line);border-radius:12px;min-width:0}
.wpft-war legend{padding:0 6px;font-weight:800;font-size:15.5px}
.wpft-war__opis{margin:0 0 12px;font-size:13.5px;color:var(--t-muted);line-height:1.45}

/* ścieżka krytyczna (silnik pert) — tabela zadań z polami */
.wpft-pert td{padding:6px 8px;vertical-align:middle}
.wpft-pert td:first-child{min-width:0;width:36px;font-weight:700;color:var(--t-muted)}
.wpft-pert td:nth-child(2){min-width:200px}
.wpft-pert td input{min-width:70px}
.wpft-pert tr.is-crit td:first-child{color:var(--t-brand)}
.wpft-pert tr.is-crit{background:var(--t-soft)}
@media (max-width:640px){
  .wpft-pert thead{display:none}
  .wpft-pert,.wpft-pert tbody{display:block}
  .wpft-pert tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:12px;border-bottom:1px solid var(--t-line)}
  .wpft-pert td{display:flex;flex-direction:column;gap:4px;padding:0;border:0}
  .wpft-pert td[data-l]::before{content:attr(data-l);font-size:12px;font-weight:650;color:var(--t-muted)}
  .wpft-pert td:first-child{grid-column:1/-1;width:auto}
  .wpft-pert td:first-child::before{content:"Zadanie nr"}
  .wpft-pert td:nth-child(2){grid-column:1/-1;min-width:0}
  .wpft-pert td:last-child{grid-column:2;justify-self:end}
}
.wpft-ta{width:100%;min-height:120px;padding:10px 12px;border:1px solid #cdd5e1;border-radius:10px;font:inherit;font-size:15px;line-height:1.5;resize:vertical}
.wpft-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0}
.wpft-h{margin:18px 0 4px;font-size:15px}
@media (max-width:640px){.wpft-mp td:first-child::before{content:attr(data-l)}.wpft-mp td:last-child{grid-column:auto;justify-self:stretch}}
