/* Wspólna typografia i kolory widoków narzędzi. */
.es-standalone, body.nfz-ui.jgp22 {
  --tool-font:"Segoe UI",Arial,sans-serif;
  --tool-ink:#192a3c;
  --tool-muted:#465768;
  --tool-edge:#b9c8d5;
  --tool-rule:#ced9e2;
  --tool-sheet:#f7fafc;
  --tool-control:#f5f8fb;
  --tool-active:#e4edf5;
  --tool-panel:linear-gradient(105deg,rgba(245,249,251,.94),rgba(228,238,245,.88));
  --tool-focus:#305e89;
  --tool-margin:clamp(10px,1.7vw,28px);
  --tool-text:13px;
  --tool-note:12px;
  --tool-title:19px;
  --tool-section:15px;
}
html[data-theme="dark"] :is(.es-standalone,body.nfz-ui.jgp22) {
  --tool-ink:#edf3fa;
  --tool-muted:#b9c8d8;
  --tool-edge:#516479;
  --tool-rule:#3b4d60;
  --tool-sheet:#182638;
  --tool-control:#1e2e41;
  --tool-active:#283e55;
  --tool-panel:linear-gradient(105deg,rgba(18,32,50,.94),rgba(20,36,55,.87));
  --tool-focus:#a1c6ed;
}
body.nfz-ui:not(.jgp22) .nav:has(>#euslugiButton) {
  display:grid!important; grid-template-columns:minmax(0,1fr)!important;
  grid-auto-rows:1fr; gap:8px!important;
}
body.nfz-ui:not(.jgp22) .nav:has(>#euslugiButton) > .nav-btn { height:100%!important; }
@media (max-width:920px) {
  body.nfz-ui:not(.jgp22) .nav:has(>#euslugiButton) {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

body.nfz-ui.jgp22 {
  font-family:var(--tool-font)!important;
  font-size:var(--tool-text)!important;
}
body.nfz-ui.jgp22 .jgp22-topbar {
  width:100%!important; max-width:none!important; box-sizing:border-box;
  padding:7px var(--tool-margin)!important; gap:10px!important;
}
body.nfz-ui.jgp22 .jgp22-brand > span {
  font-family:var(--tool-font)!important; font-size:var(--tool-title)!important; font-weight:650!important;
}
body.nfz-ui.jgp22 .jgp22-brand small { font-size:var(--tool-note)!important; font-weight:500!important; }
body.nfz-ui.jgp22 .jgp22-main {
  box-sizing:border-box; width:auto!important; max-width:none!important;
  margin:10px var(--tool-margin) 0!important; padding:0!important;
}
body.nfz-ui.jgp22 :is(.jgp22-form,.jgp22-result,.jgp22-action-panel) {
  border-radius:7px!important; border:1px solid var(--tool-edge)!important;
  background:var(--tool-panel)!important; backdrop-filter:blur(12px);
  color:var(--tool-ink); box-shadow:none!important;
}
body.nfz-ui.jgp22 :is(.jgp22-form,.jgp22-result) { padding:clamp(10px,1.3vw,22px)!important; }
body.nfz-ui.jgp22 :is(.jgp-group-finder,.jgp-workflow-stage,.jgp22-code-box,.jgp-complex) {
  border-radius:6px!important; border-color:var(--tool-rule)!important; background:var(--tool-sheet)!important;
}
body.nfz-ui.jgp22 #grouperMain :is(.jgp-mode-info, .jgp-group-finder-head small, .jgp-workflow-stage small,.jgp22-dictionary-status) {
  font-family:var(--tool-font)!important; font-size:var(--tool-text)!important; font-weight:400!important;
  color:var(--tool-muted)!important; line-height:1.45!important;
}
body.nfz-ui.jgp22 #grouperMain :is(.jgp-group-finder-head small,.jgp-workflow-stage small,.jgp22-dictionary-status) { font-size:var(--tool-note)!important; }
body.nfz-ui.jgp22 #grouperMain :is(#groupFinderTitle,.jgp-workflow-stage-heading strong,.jgp22-code-box strong,#resultTitle,.jgp-settlement h4) {
  font-family:var(--tool-font)!important; font-size:var(--tool-section)!important; font-weight:650!important;
}
body.nfz-ui.jgp22 #grouperMain :is(.jgp-panel-primary .jgp-result-main h3,.jgp-group-hero h3 b,.jgp-group-hero h3 span) {
  font-size:var(--tool-title)!important; font-weight:650!important;
}
body.nfz-ui.jgp22 #grouperMain :is(.field label,legend) { font-size:var(--tool-note)!important; font-weight:600!important; }
body.nfz-ui.jgp22 #grouperMain :is(input:not([type=radio]):not([type=checkbox]),select) {
  min-height:42px!important; font:400 var(--tool-text)/1.3 var(--tool-font)!important;
  border-radius:5px!important; border-color:var(--tool-edge)!important;
}
body.nfz-ui.jgp22 :is(.nfz-back,#grouperMain button:not(.jgp22-chip-remove),#grouperForm .jgp-mode-picker label) {
  border:1px solid var(--tool-edge)!important; border-radius:5px!important;
  background:var(--tool-control)!important; color:var(--tool-ink)!important;
  font:500 var(--tool-text)/1.25 var(--tool-font)!important;
  box-shadow:none!important; text-transform:none!important; letter-spacing:normal!important;
}
body.nfz-ui.jgp22 :is(.nfz-back:hover,#grouperMain button:hover:not(:disabled),#grouperForm .jgp-mode-picker label:has(input:checked)) {
  background:var(--tool-active)!important; border-color:var(--tool-focus)!important;
}
body.nfz-ui.jgp22 #grouperForm .jgp-mode-picker {
  display:flex!important; flex-wrap:wrap; gap:6px!important;
}
body.nfz-ui.jgp22 #grouperForm .jgp-mode-picker legend { color:var(--tool-muted); }
body.nfz-ui.jgp22 #grouperForm .jgp-mode-picker label {
  box-sizing:border-box; min-height:42px!important; height:auto!important;
  padding:7px 10px!important; align-items:center; min-width:0;
}
body.nfz-ui.jgp22 .jgp-mode-picker input { flex:none; accent-color:var(--tool-focus); }
body.nfz-ui.jgp22 #coreDataStageBadge {
  width:fit-content; padding:4px 7px!important; border-radius:4px!important;
  font:600 var(--tool-note)/1.2 var(--tool-font)!important;
  background:var(--tool-active)!important; color:var(--tool-ink)!important;
}
@media (max-width:700px) {
  body.nfz-ui.jgp22 .jgp22-topbar { flex-wrap:wrap!important; }
  body.nfz-ui.jgp22 .nfz-back { min-height:40px; }
  body.nfz-ui.jgp22 #grouperForm .jgp-mode-picker { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  body.nfz-ui.jgp22 .jgp22-code-grid { grid-template-columns:minmax(0,1fr)!important; }
}
@media (max-width:365px) {
  body.nfz-ui.jgp22 #grouperForm .jgp-mode-picker { grid-template-columns:minmax(0,1fr)!important; }
}
@media (max-width:640px) {
  html body.nfz-ui:not(.jgp22) .nav:has(>#euslugiButton) > .nav-btn {
    flex-direction:row!important; min-height:40px!important; padding:4px 5px!important;
    gap:5px!important; border-radius:8px!important;
  }
  html body.nfz-ui:not(.jgp22) .nav:has(>#euslugiButton) :is(.icon-slot,.icon-svg) {
    width:15px!important; height:15px!important; min-height:15px!important; flex-basis:15px!important;
  }
  html body.nfz-ui:not(.jgp22) .sidebar .instruction-button {
    width:fit-content!important; min-height:34px!important; height:auto!important;
    margin:4px auto 0!important; padding:3px 8px!important; border-radius:6px!important; gap:6px!important;
  }
  html body.nfz-ui:not(.jgp22) .sidebar .instruction-button :is(.icon-slot,.icon-svg) {
    width:16px!important; height:16px!important; flex-basis:16px!important;
  }
  html body.nfz-ui.jgp22 .jgp22-topbar { gap:3px 8px!important; padding-block:5px!important; }
  html body.nfz-ui.jgp22 .jgp22-topbar > .nfz-back {
    justify-self:start!important; width:auto!important; min-height:30px!important;
    padding:2px 5px!important; background:transparent!important; border-color:transparent!important;
  }
  html body.nfz-ui.jgp22 #grouperForm .jgp-mode-picker {
    grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:4px!important;
  }
  html body.nfz-ui.jgp22 #grouperForm .jgp-mode-picker label {
    min-height:36px!important; padding:4px 5px!important; font-size:12px!important; gap:5px!important;
  }
}
