/* =========================================================
   PROFILIO KALKULATOR – BASE
   - fonty: max 600 (bez grubasów 700-900)
   - EMP zachowane
   - JDG/B2B: nowy moduł ppro-jdg__*
   ========================================================= */

.ppro-calc{
  font-family:'Poppins',sans-serif;
  color:#0f172a;
  line-height:1.5;
  background:#f8fafc;
  padding:90px 16px 100px;
  box-sizing:border-box;
}
.ppro-calc *{box-sizing:border-box}

/* lepsze bazowe fonty */
.ppro-calc h1,.ppro-calc h2,.ppro-calc h3{letter-spacing:-0.01em}
.ppro-calc strong{font-weight:600}
.ppro-calc .font-bold{font-weight:600}

/* =========================================================
   HEADER
   ========================================================= */
.ppro-calc__header{
  background:linear-gradient(135deg,#1ea7e6,#19b9c8,#33c58f,#8fd15a);
  border-radius:24px;
  padding:24px;
  color:#fff;
  position:relative;
  box-shadow:0 4px 12px rgba(0,0,0,.1);
  margin:0 auto 24px;
  max-width:1200px;
}
.ppro-calc__close-btn{
  position:absolute; top:16px; right:16px;
  width:32px; height:32px;
  background:rgba(255,255,255,.2);
  border:1px solid rgba(255,255,255,.35);
  border-radius:50%;
  color:#fff;
  cursor:pointer;
  display:flex; align-items:center; justify-content:center;
}
.ppro-calc__close-btn i{font-size:18px; line-height:1}
.ppro-calc__header-content{display:flex; gap:16px; align-items:flex-start}
.ppro-calc__badge-circle{
  width:32px; height:32px;
  background:#059669;
  color:#fff;
  font-weight:600;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
  box-shadow:0 2px 4px rgba(0,0,0,.1);
}
.ppro-calc__title-row{display:flex; align-items:center; gap:8px; flex-wrap:wrap}
.ppro-calc__h1{font-size:18px; font-weight:600; margin:0; line-height:1.2}
.ppro-calc__desc{font-size:14px; opacity:.92; margin:4px 0 0; max-width:640px}

/* =========================================================
   GRID
   ========================================================= */
.ppro-calc__grid{
  display:flex;
  flex-direction:column;
  gap:24px;
  max-width:1200px;
  margin:0 auto;
}
@media(min-width:1024px){
  .ppro-calc__grid{display:grid; grid-template-columns:1fr 1fr; align-items:start}
  .ppro-calc__col-form{order:1}
  .ppro-calc__col-results{order:-2}
}

/* =========================================================
   CARDS (shared)
   ========================================================= */
.ppro-calc__card{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:24px;
  padding:24px;
  box-shadow:0 4px 6px -1px rgba(0,0,0,.05);
}
.ppro-calc__card--form{height:100%}
.ppro-calc__card--results{margin-bottom:24px}
.ppro-calc__card--extra{margin-bottom:24px; border-color:#cbd5e1}
.ppro-calc__card--rose{background:#fff1f2; border-color:#fecdd3; margin-bottom:24px}

/* =========================================================
   TOOLTIP ICON (FA)
   ========================================================= */
.ppro-calc__info-icon{
  width:20px; height:20px;
  border-radius:50%;
  background:#0f172a;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:help;
  position:relative;
  flex-shrink:0;
}
.ppro-calc__info-icon i{font-size:12px; line-height:1}
.ppro-calc__info-icon:hover::after{
  content:attr(data-tooltip);
  position:absolute;
  bottom:100%;
  right:0;
  width:260px;
  background:#000;
  color:#fff;
  padding:8px 12px;
  border-radius:12px;
  font-size:11px;
  font-weight:400;
  line-height:1.35;
  z-index:100;
  margin-bottom:8px;
}

/* =========================================================
   EMP FORM (Twoje – odchudzone fonty)
   ========================================================= */
.ppro-calc__form-header{display:flex; gap:12px; margin-bottom:24px; align-items:center}
.ppro-calc__fh-icon{
  width:32px; height:32px;
  background:#f0f9ff;
  border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  color:#0284c7;
}
.ppro-calc__fh-icon i{font-size:16px; line-height:1}
.ppro-calc__form-title{font-weight:600; font-size:16px; margin:0}
.ppro-calc__form-sub{font-size:13px; color:#64748b; margin:0}

.ppro-calc__steps{display:flex; flex-direction:column; gap:32px}
.ppro-calc__step-head{
  display:flex; justify-content:space-between; align-items:center;
  margin-bottom:12px;
  font-weight:600;
  font-size:14px;
  color:#0f172a;
}

.ppro-calc__pills-row{display:flex; flex-wrap:wrap; gap:8px}
.ppro-calc__pill{
  padding:8px 16px;
  border-radius:99px;
  border:1px solid #e2e8f0;
  background:#fff;
  font-size:13px;
  font-weight:600;
  color:#475569;
  cursor:pointer;
  transition:all .2s;
}
.ppro-calc__pill.is-active.ppro-pill-green{background:#d1fae5; color:#065f46; border-color:#34d399}
.ppro-calc__pill.is-active.ppro-pill-blue{background:#e0f2fe; color:#0c4a6e; border-color:#38bdf8}

.ppro-calc__field{margin-bottom:16px}
.ppro-calc__field label{display:block; font-size:13px; font-weight:600; margin-bottom:6px}
.ppro-calc__input-wrap{
  display:flex; align-items:center;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:8px 12px;
  transition:border .2s, box-shadow .2s;
}
.ppro-calc__input-wrap.ppro-highlight{border-color:#34d399; box-shadow:0 0 0 1px #34d399}
.ppro-calc__input-wrap input{
  width:100%;
  background:transparent;
  border:0;
  font-size:16px;
  font-weight:600; /* było 600 – zostaje, to OK */
  outline:none;
  color:#0f172a;
}
.ppro-calc__input-wrap span{color:#64748b; font-weight:600; font-size:14px; margin-left:4px}

.ppro-calc__info-box-green{
  background:#ecfdf5;
  border:1px solid #a7f3d0;
  border-radius:16px;
  padding:12px;
  margin-bottom:16px;
}
.ppro-calc__ib-row{display:flex; justify-content:space-between; font-size:13px; color:#064e3b}
.ppro-calc__ib-row strong{font-weight:600}

/* Packages */
.ppro-calc__packages{display:grid; gap:8px}
.ppro-calc__pkg-card{
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:16px;
  padding:12px;
  text-align:left;
  position:relative;
  cursor:pointer;
  transition:all .2s;
}
.ppro-calc__pkg-card:hover{background:#f8fafc}
.ppro-calc__pkg-card.is-selected{border-color:#10b981; background:#ecfdf5}
.ppro-calc__pkg-badge{
  position:absolute; top:12px; right:12px;
  font-size:12px;
  font-weight:600; /* było 700 */
  background:#f1f5f9;
  padding:2px 8px;
  border-radius:99px;
}
.ppro-calc__pkg-card.is-selected .ppro-calc__pkg-badge{background:#10b981; color:#fff}
.ppro-calc__pkg-card strong{display:block; font-size:14px; margin-bottom:2px; font-weight:600}
.ppro-calc__pkg-card small{font-size:12px; color:#64748b; font-weight:400}

/* Toggle Switch */
.ppro-calc__toggle-row{
  display:flex; justify-content:space-between; align-items:center;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:12px;
  background:#fff;
}
.ppro-calc__tr-text strong{display:block; font-size:14px; font-weight:600}
.ppro-calc__tr-text p{font-size:12px; color:#64748b; margin:0}
.ppro-calc__switch{position:relative; display:inline-block; width:48px; height:28px}
.ppro-calc__switch input{opacity:0; width:0; height:0}
.ppro-calc__slider{
  position:absolute; cursor:pointer; inset:0;
  background-color:#cbd5e1;
  border-radius:34px;
  transition:.25s;
}
.ppro-calc__slider:before{
  position:absolute; content:"";
  height:20px; width:20px;
  left:4px; bottom:4px;
  background-color:white;
  border-radius:50%;
  transition:.25s;
}
.ppro-calc__switch input:checked + .ppro-calc__slider{background-color:#10b981}
.ppro-calc__switch input:checked + .ppro-calc__slider:before{transform:translateX(20px)}

/* Advanced */
.ppro-calc__btn-sm{
  font-size:12px;
  padding:4px 10px;
  border-radius:99px;
  border:1px solid #e2e8f0;
  background:#fff;
  cursor:pointer;
  font-weight:600;
}
.ppro-calc__adv-panel{
  margin-top:12px;
  background:#f8fafc;
  padding:12px;
  border-radius:16px;
  border:1px solid #e2e8f0;
}

/* =========================================================
   EMP RESULTS (Twoje – odchudzone fonty)
   ========================================================= */
.ppro-calc__res-header{display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:16px}
.ppro-calc__h2{font-size:18px; font-weight:600; margin:0}
.ppro-calc__res-desc{font-size:13px; color:#64748b; margin:4px 0 0}
.ppro-calc__badge-proof{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12px; font-weight:600;
  padding:4px 10px;
  border-radius:99px;
  border:1px solid #e2e8f0;
  color:#475569;
}
.ppro-calc__badge-proof i{font-size:13px; line-height:1}

.ppro-calc__alert-box{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:12px;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:24px;
}
.ppro-calc__text-rose{
  color:#9f1239;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.5px;
  font-weight:600;
}
.ppro-calc__text-sm{font-size:13px; color:#475569; margin:2px 0 0; font-weight:400}

.ppro-calc__stats-stack{display:grid; gap:12px; margin-bottom:24px}
.ppro-calc__stat-box{
  border-radius:20px;
  padding:20px;
  position:relative;
  display:flex;
  flex-direction:column;
}
.ppro-calc__stat-box--dark{background:#0f172a; color:#fff}
.ppro-calc__stat-box--light{background:#f1f5f9; border:1px solid #e2e8f0}
.ppro-calc__stat-box--blue{background:#0284c7; color:#fff}
.ppro-calc__stat-box--grad{background:linear-gradient(135deg,#10b981,#0ea5e9); color:#fff; margin-top:8px}
.ppro-calc__stat-box--danger{background:#fff1f2; border:1px solid #fecdd3; color:#881337}

.ppro-calc__stat-label{
  font-size:12px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.4px;
  opacity:.9;
}
.ppro-calc__stat-val{
  font-size:32px;
  font-weight:600; /* było 700 */
  line-height:1.1;
  margin:8px 0;
}
.ppro-calc__stat-sub{font-size:14px; opacity:.9; font-weight:400}
.ppro-calc__stat-footer{margin-top:8px; font-size:13px; font-weight:600; opacity:.95}
.ppro-calc__stat-icon{
  position:absolute;
  top:16px; right:16px;
  width:40px; height:40px;
  border-radius:12px;
  background:rgba(255,255,255,.15);
  display:flex; align-items:center; justify-content:center;
}
.ppro-calc__stat-icon i{font-size:18px; line-height:1}

.ppro-text-dark{color:#0f172a}
.ppro-text-rose{color:#be123c}
.ppro-bg-gray{background:#e2e8f0; color:#64748b}
.ppro-bg-rose{background:#fecdd3; color:#9f1239}

/* How it works */
.ppro-calc__how-works{border-top:1px solid #e2e8f0; padding-top:24px}
.ppro-calc__h3{font-size:16px; font-weight:600; margin:0 0 16px}
.ppro-calc__h3-sm{font-size:14px; font-weight:600; margin:0 0 12px}

.ppro-calc__team-box{
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:12px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  background:#fff;
}
.ppro-calc__tb-label{font-size:14px; font-weight:600; margin:0}
.ppro-calc__tb-sub{font-size:12px; color:#64748b; margin:2px 0 0; font-weight:400}
.ppro-calc__tb-input{
  width:60px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:8px;
  padding:4px;
  text-align:center;
  font-weight:600; /* było 700 */
}

.ppro-calc__discount-badge{
  margin-top:8px;
  background:#ecfdf5;
  color:#065f46;
  font-size:12px;
  font-weight:600;
  padding:4px 12px;
  border-radius:99px;
  display:inline-block;
}

/* Breakdown */
.ppro-calc__breakdown{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:20px;
  padding:16px;
  margin-top:16px;
}
.ppro-calc__bd-head{display:flex; justify-content:space-between; margin-bottom:12px}
.ppro-calc__bd-title{font-size:14px; font-weight:600; margin:0}
.ppro-calc__bd-sub{font-size:12px; color:#64748b; font-weight:400}
.ppro-calc__bd-row{display:flex; justify-content:space-between; font-size:13px; margin-bottom:6px}
.ppro-calc__bd-val{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size:14px; font-weight:500}
.ppro-calc__bd-sep{height:1px; background:#e2e8f0; margin:8px 0}
.ppro-calc__bd-note{font-size:11px; color:#94a3b8; margin-left:4px}
.ppro-font-bold{font-weight:600} /* było 700 */
.ppro-text-sky{color:#0284c7}
.ppro-text-green{color:#16a34a}

/* Extra Cards */
.ppro-calc__pct-grid{display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px; margin-bottom:16px}
.ppro-calc__pct-box{border-radius:16px; padding:12px; text-align:center}
.ppro-bg-emerald-dark{background:#059669; color:#fff}
.ppro-bg-slate-50{background:#f8fafc; border:1px solid #e2e8f0}
.ppro-bg-sky-50{background:#f0f9ff; border:1px solid #e0f2fe}
.ppro-calc__pct-val{font-size:24px; font-weight:600; line-height:1; margin-top:4px}
.ppro-calc__pct-val-sm{font-size:16px; font-weight:600; margin-top:4px}
.ppro-calc__pct-label{font-size:10px; text-transform:uppercase; font-weight:600; display:block}
.ppro-text-white-80{color:rgba(255,255,255,.82)}

.ppro-calc__year-grid{display:grid; grid-template-columns:1fr 1fr; gap:8px}
.ppro-calc__year-box{border-radius:16px; padding:12px; display:flex; flex-direction:column; gap:2px}
.ppro-bg-emerald-light{background:#ecfdf5; border:1px solid #a7f3d0}
.ppro-text-emerald{color:#059669; font-size:18px; font-weight:600}
.ppro-calc__year-box span{font-size:11px; font-weight:600; color:#475569}
.ppro-calc__year-box small{font-size:10px; color:#64748b}

/* Negotiation */
.ppro-calc__nego-box{background:#f8fafc; border-radius:16px; padding:16px; border:1px solid #e2e8f0}
.ppro-calc__nego-opts{display:flex; gap:8px; margin:12px 0}
.ppro-calc__nego-btn{
  flex:1;
  padding:8px 4px;
  font-size:11px;
  font-weight:600;
  border-radius:8px;
  border:1px solid #cbd5e1;
  background:#fff;
  cursor:pointer;
}
.ppro-calc__nego-btn.is-active{background:#0f172a; color:#fff; border-color:#0f172a}
.ppro-calc__nego-res{display:grid; grid-template-columns:1fr 1fr; gap:8px}
.ppro-calc__nr-item{padding:12px; border-radius:12px; color:#fff; text-align:center}
.ppro-bg-emerald{background:#059669}
.ppro-bg-dark{background:#0f172a}
.ppro-calc__nr-item span{font-size:11px; opacity:.9; display:block; font-weight:400}
.ppro-calc__nr-item strong{font-size:16px; display:block; margin-top:2px; font-weight:600}

/* Layer B/C */
.ppro-calc__inputs-grid{display:grid; gap:8px; margin-top:12px; display:none}
.ppro-calc__input-row{
  display:flex; justify-content:space-between; align-items:center;
  background:#fff;
  padding:8px;
  border-radius:8px;
  border:1px solid #fecdd3;
}
.ppro-calc__input-row label{font-size:12px; color:#881337; font-weight:600; margin:0}
.ppro-calc__input-row input{
  width:70px;
  border:1px solid #e2e8f0;
  border-radius:6px;
  padding:4px;
  text-align:right;
  font-size:13px;
  font-weight:500;
}

/* =========================================================
   JDG/B2B – NOWY MODUŁ (ppro-jdg__*)
   ========================================================= */

/* Wizard wrapper */
.ppro-jdg__wizard{padding:20px}
.ppro-jdg__w-head{
  display:flex; align-items:center; gap:12px;
  margin-bottom:16px;
}
.ppro-jdg__w-icon{
  width:34px; height:34px;
  border-radius:10px;
  background:#f1f5f9;
  color:#0f172a;
  display:flex; align-items:center; justify-content:center;
}
.ppro-jdg__w-icon i{font-size:16px}
.ppro-jdg__w-title{font-weight:600; font-size:14px; margin:0}
.ppro-jdg__w-sub{font-size:12px; color:#64748b; font-weight:400}

/* blocks */
.ppro-jdg__block{margin-top:14px}
.ppro-jdg__block-head{
  display:flex; align-items:center; justify-content:space-between;
  font-size:13px;
  font-weight:600;
  margin-bottom:8px;
}
.ppro-jdg__select{
  width:100%;
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:14px;
  padding:10px 12px;
  font-size:14px;
  font-weight:500;
  outline:none;
}

/* scenario row (etat/jdg w wizardzie) */
.ppro-jdg__scenario-row{display:flex; gap:8px; flex-wrap:wrap}
.ppro-jdg__scenario-pill{
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #e2e8f0;
  background:#fff;
  font-size:12px;
  font-weight:600;
  color:#475569;
  cursor:pointer;
}
.ppro-jdg__scenario-pill.is-active{
  background:#e0f2fe;
  border-color:#38bdf8;
  color:#0c4a6e;
}

/* VAT pills */
.ppro-jdg__vat-row{display:flex; gap:8px; flex-wrap:wrap}
.ppro-jdg__vat-pill{
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #e2e8f0;
  background:#fff;
  font-size:12px;
  font-weight:600;
  color:#475569;
  cursor:pointer;
}
.ppro-jdg__vat-pill.is-active{
  background:#0f172a;
  border-color:#0f172a;
  color:#fff;
}

/* step nav chips */
.ppro-jdg__stepnav{
  display:flex;
  gap:10px;
  margin-top:16px;
  padding:10px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:18px;
}
.ppro-jdg__stepchip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid transparent;
  background:#fff;
  font-size:12px;
  font-weight:600;
  color:#475569;
  cursor:pointer;
  flex:1;
  justify-content:center;
}
.ppro-jdg__stepchip span{
  width:18px; height:18px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#e2e8f0;
  color:#0f172a;
  font-size:11px;
  font-weight:600;
}
.ppro-jdg__stepchip.is-active{
  background:#0f172a;
  color:#fff;
}
.ppro-jdg__stepchip.is-active span{
  background:#10b981;
  color:#fff;
}

/* step panel */
.ppro-jdg__step{margin-top:14px}
.ppro-jdg__section-title{margin:8px 0 12px; font-size:13px}
.ppro-jdg__section-title strong{font-weight:600}

/* fields */
.ppro-jdg__field{margin-bottom:14px}
.ppro-jdg__field label{
  display:block;
  font-size:12px;
  font-weight:600;
  margin-bottom:6px;
}
.ppro-jdg__input{
  display:flex;
  align-items:center;
  gap:8px;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:10px 12px;
}
.ppro-jdg__input input{
  width:100%;
  border:0;
  outline:none;
  background:transparent;
  font-size:15px;
  font-weight:600; /* input może być 600 */
  color:#0f172a;
}
.ppro-jdg__input span{font-size:13px; font-weight:600; color:#64748b}

.ppro-jdg__hint{
  margin-top:6px;
  font-size:12px;
  color:#64748b;
  font-weight:400;
}
.ppro-jdg__hint strong{font-weight:600}

/* pillrow (forma opodatkowania) */
.ppro-jdg__pillrow{display:flex; gap:8px; flex-wrap:wrap}
.ppro-jdg__pill{
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #e2e8f0;
  background:#fff;
  font-size:12px;
  font-weight:600;
  color:#475569;
  cursor:pointer;
}
.ppro-jdg__pill.is-active{
  background:#0f172a;
  border-color:#0f172a;
  color:#fff;
}

/* toggle row */
.ppro-jdg__toggle{
  display:flex;
  justify-content:space-between;
  align-items:center;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:12px;
  background:#fff;
  margin:10px 0 14px;
}
.ppro-jdg__toggle-title{font-weight:600; font-size:13px}
.ppro-jdg__toggle .ppro-jdg__hint{margin:2px 0 0}

/* costs */
.ppro-jdg__costs{
  margin-top:10px;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:18px;
  padding:14px;
}
.ppro-jdg__costs-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}
.ppro-jdg__costs-title{font-weight:600; font-size:13px}
.ppro-jdg__tag{
  display:inline-flex;
  align-items:center;
  padding:2px 8px;
  border-radius:999px;
  background:#f1f5f9;
  color:#64748b;
  font-size:10px;
  font-weight:600;
}
.ppro-jdg__cost-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-top:1px solid #f1f5f9;
}
.ppro-jdg__cost-row:first-child{border-top:0; padding-top:0}
.ppro-jdg__cost-left{min-width:0}
.ppro-jdg__cost-label{font-size:13px; font-weight:600}
.ppro-jdg__cost-tags{display:flex; flex-wrap:wrap; gap:6px; margin-top:6px}
.ppro-jdg__cost-right{
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}
.ppro-jdg__cost-toggle{
  border:1px solid #e2e8f0;
  background:#f8fafc;
  color:#0f172a;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:600;
  cursor:pointer;
  min-width:74px;
}
.ppro-jdg__cost-toggle.is-on{
  background:#d1fae5;
  border-color:#34d399;
  color:#065f46;
}
.ppro-jdg__cost-input{
  display:flex; align-items:center; gap:6px;
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:12px;
  padding:6px 10px;
  width:120px;
}
.ppro-jdg__cost-input input{
  width:100%;
  border:0;
  outline:none;
  background:transparent;
  text-align:right;
  font-size:13px;
  font-weight:600;
}
.ppro-jdg__cost-input span{font-size:12px; font-weight:600; color:#64748b}

/* buttons */
.ppro-jdg__btn-primary{
  width:100%;
  margin-top:14px;
  border:0;
  border-radius:16px;
  padding:12px 14px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  background:#0f172a;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.ppro-jdg__btn-primary i{font-size:14px}
.ppro-jdg__btn-ghost{
  flex:1;
  border:1px solid #e2e8f0;
  background:#fff;
  color:#0f172a;
  border-radius:16px;
  padding:12px 14px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}
.ppro-jdg__btn-dark{
  flex:1;
  border:0;
  background:#0f172a;
  color:#fff;
  border-radius:16px;
  padding:12px 14px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  display:flex; align-items:center; justify-content:center; gap:8px;
}
.ppro-jdg__actions{display:flex; gap:10px; margin-top:14px}

/* disclaimer */
.ppro-jdg__disclaimer{
  margin-top:12px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:12px;
}
.ppro-jdg__disclaimer-title{font-size:12px; font-weight:600; margin-bottom:4px}
.ppro-jdg__disclaimer-text{font-size:12px; color:#64748b; font-weight:400}

/* presets */
.ppro-jdg__preset{
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:16px;
  padding:12px;
  margin-bottom:10px;
  cursor:pointer;
}
.ppro-jdg__preset.is-selected{
  border-color:#34d399;
  box-shadow:0 0 0 1px #34d399;
}
.ppro-jdg__preset-title{font-size:13px; font-weight:600; margin-bottom:4px}
.ppro-jdg__preset-sub{font-size:12px; color:#64748b; font-weight:400}

/* =========================================================
   JDG RESULTS (left column) – karty z makiety
   ========================================================= */
.ppro-jdg__card{margin-bottom:24px}
.ppro-jdg__card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:14px;
}
.ppro-jdg__h2{font-size:16px; font-weight:600; margin:0}
.ppro-jdg__sub{font-size:13px; color:#64748b; margin:6px 0 0; font-weight:400}

/* gain grid */
.ppro-jdg__gain-grid{
  display:grid;
  gap:12px;
}
@media(min-width:1024px){
  .ppro-jdg__gain-grid{grid-template-columns:1.1fr .95fr .95fr}
}
.ppro-jdg__gain-box{
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:20px;
  padding:16px;
}
.ppro-jdg__gain-box--green{
  background:#059669;
  border-color:#059669;
  color:#fff;
}
.ppro-jdg__gain-box--blue{
  background:#e0f2fe;
  border-color:#bae6fd;
}
.ppro-jdg__gain-kicker{
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.35px;
  opacity:.92;
}
.ppro-jdg__gain-pct{
  font-size:44px;
  line-height:1;
  font-weight:600;
  margin:10px 0 8px;
}
.ppro-jdg__gain-note{font-size:12px; opacity:.9; font-weight:400}
.ppro-jdg__gain-pill{
  margin-top:14px;
  background:rgba(255,255,255,.18);
  border-radius:999px;
  padding:10px 12px;
  display:inline-flex;
  gap:6px;
  align-items:baseline;
  font-size:13px;
  font-weight:500;
}
.ppro-jdg__gain-pill strong{font-weight:600}
.ppro-jdg__gain-val{
  font-size:34px;
  font-weight:600;
  margin:8px 0 6px;
}
.ppro-jdg__gain-desc{font-size:12px; color:#475569; font-weight:400}
.ppro-jdg__gain-box--green .ppro-jdg__gain-desc,
.ppro-jdg__gain-box--green .ppro-jdg__gain-note{color:rgba(255,255,255,.9)}
.ppro-jdg__gain-mini{
  margin-top:10px;
  padding:8px 10px;
  border-radius:14px;
  border:1px solid #e2e8f0;
  background:#fff;
  font-size:12px;
  color:#0f172a;
}
.ppro-jdg__gain-box--green .ppro-jdg__gain-mini{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.25);
  color:#fff;
}
.ppro-jdg__invoice-note{
  margin-top:12px;
  font-size:12px;
  color:#475569;
  font-weight:400;
}
.ppro-jdg__sep{opacity:.5; margin:0 8px}
.ppro-jdg__muted{color:#64748b}

/* year scale */
.ppro-jdg__year-grid{
  display:grid;
  gap:12px;
}
@media(min-width:1024px){
  .ppro-jdg__year-grid{grid-template-columns:1fr 1fr 1fr}
}
.ppro-jdg__year-box{
  border-radius:20px;
  padding:16px;
  border:1px solid #e2e8f0;
  background:#fff;
}
.ppro-jdg__year-box--green{
  background:#ecfdf5;
  border-color:#a7f3d0;
}
.ppro-jdg__year-box--rose{
  background:#fff1f2;
  border-color:#fecdd3;
}
.ppro-jdg__year-kicker{
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.35px;
  color:#475569;
}
.ppro-jdg__year-val{
  font-size:34px;
  font-weight:600;
  margin:10px 0 6px;
}
.ppro-jdg__year-sub{font-size:12px; color:#64748b; font-weight:400}
.ppro-jdg__fineprint{
  margin-top:12px;
  font-size:12px;
  color:#64748b;
  font-weight:400;
}

/* breakdown cards */
.ppro-jdg__break-grid{
  display:grid;
  gap:12px;
  margin-top:12px;
}
@media(min-width:768px){
  .ppro-jdg__break-grid{grid-template-columns:1fr 1fr}
}
.ppro-jdg__break-card{
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:20px;
  padding:16px;
}
.ppro-jdg__break-title{font-size:13px; font-weight:600; margin-bottom:10px}
.ppro-jdg__row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  font-size:13px;
  padding:6px 0;
  color:#0f172a;
}
.ppro-jdg__row strong{font-weight:600}
.ppro-jdg__row.is-strong{font-weight:600}
.ppro-jdg__sep-line{height:1px; background:#e2e8f0; margin:10px 0}

/* settings pills */
.ppro-jdg__settings{
  margin-top:14px;
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:20px;
  padding:14px;
}
.ppro-jdg__settings-title{font-size:13px; font-weight:600; margin-bottom:10px}
.ppro-jdg__settings-pills{display:flex; flex-wrap:wrap; gap:8px}
.ppro-jdg__pillmini{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  font-size:12px;
  color:#475569;
  font-weight:500;
}
.ppro-jdg__edit-btn{
  margin-top:12px;
  width:100%;
  border:1px solid #e2e8f0;
  background:#fff;
  color:#0f172a;
  border-radius:16px;
  padding:12px 14px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}

/* why + note */
.ppro-jdg__why{
  margin-top:14px;
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:20px;
  padding:14px;
}
.ppro-jdg__why-title{font-size:13px; font-weight:600; margin-bottom:8px}
.ppro-jdg__why-list{
  margin:0;
  padding-left:18px;
  color:#475569;
  font-size:12px;
  font-weight:400;
}
.ppro-jdg__why-list li{margin:6px 0}

.ppro-jdg__note{
  margin-top:14px;
  border:1px solid #e2e8f0;
  background:#f8fafc;
  border-radius:20px;
  padding:14px;
}
.ppro-jdg__note-title{font-size:13px; font-weight:600; margin-bottom:6px}
.ppro-jdg__note-text{font-size:12px; color:#64748b; font-weight:400}

/* copy box on step 3 */
.ppro-jdg__copy{
  border:1px solid #e2e8f0;
  border-radius:20px;
  padding:14px;
  background:#fff;
}
.ppro-jdg__copy-title{font-size:12px; font-weight:600; margin-bottom:6px}
.ppro-jdg__copy-text{font-size:12px; color:#475569; font-weight:400}

/* =========================================================
   MOBILE BAR + OVERLAY (Twoje)
   ========================================================= */
.ppro-calc__mobile-bar{
  position:fixed; bottom:0; left:0; right:0;
  background:#fff;
  padding:16px;
  box-shadow:0 -4px 12px rgba(0,0,0,.1);
  z-index:100;
  border-top:1px solid #e2e8f0;
}
@media(min-width:1024px){.ppro-calc__mobile-bar{display:none!important}}
.ppro-calc__mb-content{
  background:linear-gradient(135deg,#10b981,#0ea5e9);
  color:#fff;
  border-radius:16px;
  padding:12px 16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.ppro-calc__mb-label{
  font-size:11px;
  font-weight:600; /* było 700 */
  text-transform:uppercase;
  margin:0;
  opacity:.9;
}
.ppro-calc__mb-val{
  font-size:20px;
  font-weight:600; /* było 700 */
  line-height:1.2;
  display:block;
}
.ppro-calc__mb-btn{
  background:rgba(255,255,255,.2);
  border:0;
  color:#fff;
  padding:6px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:600;
  cursor:pointer;
}

.ppro-calc__overlay{
  position:fixed; inset:0;
  background:rgba(0,0,0,.5);
  z-index:200;
  display:none;
  align-items:flex-end;
}
.ppro-calc__overlay.is-visible{display:flex}
.ppro-calc__overlay-card{
  background:#fff;
  width:100%;
  border-radius:24px 24px 0 0;
  padding:24px;
  max-height:90vh;
  overflow-y:auto;
}
.ppro-calc__overlay-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:24px;
}
.ppro-calc__overlay-head h3{margin:0; font-size:18px; font-weight:600}
.ppro-calc__overlay-head button{
  background:#f1f5f9;
  width:32px; height:32px;
  border-radius:50%;
  border:0;
  cursor:pointer;
  display:flex; align-items:center; justify-content:center;
}
.ppro-calc__overlay-head button i{font-size:18px; line-height:1}
