#szeptun-b2b-root, #szeptun-b2b-root * { box-sizing: border-box; }
#szeptun-b2b-root { --black:#000; --grey:#d9d9d9; --hover:#777; --white:#fff; color:#000; background:#fff; font-family: Arial, Helvetica, sans-serif; width:100%; max-width:1180px; margin:40px auto 80px; padding:0 12px; }
.szb-hidden { display:none!important; }
.szb-login { max-width:560px; margin:0 auto; border:1px solid #000; background:#fff; padding:28px; }
.szb-login h2 { margin:0 0 18px; font-size:22px; font-weight:500; color:#000; }
.szb-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.szb-field label { display:block; font-size:12px; margin:0 0 5px; color:#000; }
.szb-field input, .szb-field select, .szb-field textarea, .szb-input { width:100%; border:1px solid #000; background:#fff; color:#000; padding:8px 9px; border-radius:0; font-size:14px; outline:none; }
.szb-field textarea { min-height:74px; resize:vertical; }
.szb-field input:focus, .szb-field select:focus, .szb-field textarea:focus { border-color:#777; }
.szb-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; align-items:center; }
.szb-btn, .szb-small-btn { appearance:none; border:1px solid #000; background:#fff; color:#000; border-radius:0; padding:8px 12px; font-size:13px; cursor:pointer; line-height:1.2; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; gap:5px; }
.szb-small-btn { padding:5px 8px; font-size:12px; }
.szb-btn:hover, .szb-small-btn:hover { color:#777; border-color:#777; background:#fff; }
.szb-btn[disabled], .szb-small-btn[disabled] { opacity:.45; cursor:not-allowed; }
.szb-topline { display:flex; justify-content:flex-end; align-items:center; margin-bottom:14px; min-height:32px; }
.szb-title { margin:0 0 18px; font-size:24px; font-weight:500; }
.szb-menu { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:10px; margin:0 0 24px; }
.szb-tile { border:1px solid #000; background:#fff; color:#000; padding:18px 12px; min-height:74px; text-align:left; cursor:pointer; border-radius:0; font-size:15px; display:flex; align-items:flex-end; }
.szb-tile:hover { border-color:#777; color:#777; background:#fff; }
.szb-tile.active { background:#d9d9d9; color:#000; border-color:#000; }
.szb-panel { background:#fff; border:0; padding:0; margin:0; }
.szb-panel h2 { margin:0 0 16px; font-size:22px; font-weight:500; }
.szb-panel h3 { margin:20px 0 10px; font-size:16px; font-weight:500; }
.szb-table-wrap { overflow:auto; width:100%; }
.szb-table { width:100%; border-collapse:collapse; background:#fff; }
.szb-table th, .szb-table td { border:1px solid #000; padding:8px; font-size:13px; text-align:left; vertical-align:top; }
.szb-table th { font-weight:600; background:#fff; }
.szb-list { display:grid; gap:8px; }
.szb-row { border:0; border-bottom:1px solid #000; padding:11px 0; display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center; background:#fff; }
.szb-row strong { display:block; font-size:14px; font-weight:600; margin-bottom:3px; }
.szb-row small { display:block; font-size:12px; line-height:1.35; color:#000; }
.szb-row-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.szb-muted { color:#555; font-size:12px; }
.szb-error { color:#b00000; font-size:13px; margin-top:10px; }
.szb-ok { color:#000; font-size:13px; margin-top:10px; }
.szb-remember { display:flex; align-items:center; gap:7px; font-size:12px; margin-top:10px; }
.szb-remember input { width:auto; }
.szb-category-block { border-bottom:1px solid #000; padding:10px 0; }
.szb-category-head { display:flex; justify-content:space-between; gap:10px; align-items:center; }
.szb-sub-list { display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.szb-chip { border:1px solid #000; padding:4px 7px; font-size:12px; background:#fff; display:inline-flex; gap:6px; align-items:center; }
.szb-chip button { border:0; background:#fff; cursor:pointer; color:#000; padding:0; font-size:14px; }
.szb-product-admin { display:grid; grid-template-columns:58px 1fr auto; gap:10px; align-items:center; border-bottom:1px solid #000; padding:9px 0; }
.szb-thumb { width:58px; height:58px; object-fit:cover; background:#fff; border:1px solid #000; }
.szb-product-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:18px; }
.szb-product-card { background:#fff; border:0; padding:0; position:relative; color:#000; }
.szb-product-image-wrap { position:relative; width:100%; aspect-ratio:1/1; background:#fff; margin-bottom:8px; overflow:hidden; border:0; }
.szb-product-image { width:100%; height:100%; object-fit:cover; display:block; cursor:pointer; }
.szb-no-image { width:100%; height:100%; display:flex; align-items:center; justify-content:center; border:1px solid #000; font-size:12px; }
.szb-zoom { position:absolute; right:6px; top:6px; width:26px; height:26px; border:1px solid #000; background:#fff; color:#000; cursor:pointer; font-size:15px; line-height:1; }
.szb-product-title { font-size:13px; font-weight:600; line-height:1.25; min-height:33px; margin:0 0 5px; }
.szb-product-price { font-size:13px; margin-bottom:3px; }
.szb-product-stock { font-size:12px; margin-bottom:7px; white-space:nowrap; }
.szb-product-buy { display:flex; gap:5px; align-items:center; }
.szb-product-buy input { width:64px; padding:6px 5px; border:1px solid #000; }
.szb-product-buy button { flex:1; padding:6px; font-size:12px; }
.szb-pagination { display:flex; gap:5px; align-items:center; justify-content:center; margin:16px 0; }
.szb-status { border-left:6px solid #000; padding-left:8px; }
.szb-status.nowe { border-left-color:#000; }
.szb-status.w_realizacji { border-left-color:#777; }
.szb-status.zrealizowane { border-left-color:#000; }
.szb-modal { position:fixed; inset:0; z-index:999999; display:flex; align-items:center; justify-content:center; padding:20px; background:rgba(255,255,255,.92); }
.szb-modal-inner { background:#fff; border:1px solid #000; max-width:min(980px,95vw); max-height:90vh; overflow:auto; padding:14px; position:relative; }
.szb-modal-close { position:absolute; top:8px; right:8px; width:32px; height:32px; border:1px solid #000; background:#fff; color:#000; cursor:pointer; font-size:22px; line-height:1; }
.szb-zoom-img { max-width:90vw; max-height:84vh; display:block; }
.szb-protocol-print { width:210mm; min-height:297mm; padding:22mm 18mm; background:#fff; color:#000; font-family:Arial, Helvetica, sans-serif; }
.szb-protocol-print h1 { font-size:20px; margin:0 0 8mm; letter-spacing:.04em; }
.szb-protocol-print .meta { text-align:right; font-size:12px; }
.szb-protocol-print table { width:100%; border-collapse:collapse; margin-top:8mm; table-layout:fixed; }
.szb-protocol-print th, .szb-protocol-print td { border:1px solid #000; padding:4px 5px; font-size:11px; }
.szb-protocol-print .signatures { display:flex; justify-content:space-between; margin-top:22mm; font-size:12px; }
.szb-print-actions { display:flex; justify-content:flex-end; gap:8px; margin-bottom:10px; }
@media print { body * { visibility:hidden!important; } .szb-protocol-print, .szb-protocol-print * { visibility:visible!important; } .szb-protocol-print { position:absolute; left:0; top:0; width:210mm; } .szb-print-actions, .szb-modal-close { display:none!important; } }
@media (max-width:760px) { #szeptun-b2b-root{margin-top:20px;} .szb-row{grid-template-columns:1fr;} .szb-row-actions{justify-content:flex-start;} .szb-product-grid{grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px;} .szb-login{padding:18px;} }

.szb-topline-between { justify-content:space-between; gap:12px; }
.szb-shop-docs-menu { margin-top:4px; }

/* Powiadomienia */
.szb-notify-btn.has-new { font-weight:600; }
.szb-notifications { border:1px solid #000; background:#fff; padding:10px; margin:0 0 14px; }
.szb-notifications-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px; }
.szb-note { border-bottom:1px solid #000; padding:8px 0; display:grid; grid-template-columns:1fr auto; gap:10px; align-items:center; cursor:pointer; }
.szb-note:last-child { border-bottom:0; }
.szb-note.unread strong { font-weight:700; }
.szb-note.unread { border-left:4px solid #000; padding-left:8px; }
.szb-note:hover { color:#777; }
@media (max-width:760px){ .szb-note{grid-template-columns:1fr;} .szb-notifications-head{align-items:flex-start; flex-direction:column;} }

/* v10 — towary administratora: 10 na stronę, filtry i luźniejszy układ listy */
.szb-product-admin-filters { margin: 0 0 14px; }
.szb-product-count { font-size: 12px; color:#000; margin: 0 0 8px; }
.szb-product-admin { grid-template-columns: 68px minmax(0,1fr) auto; gap: 14px; padding: 13px 0; align-items:center; }
.szb-product-admin .szb-thumb { width:68px; height:68px; }
.szb-product-admin-main { min-width:0; display:grid; gap:4px; }
.szb-product-admin-title { display:block; font-size:14px; line-height:1.25; font-weight:600; margin:0; }
.szb-product-admin-cat { display:block; font-size:12px; line-height:1.3; color:#000; margin:0; }
.szb-product-admin-meta { display:flex; flex-wrap:wrap; gap:7px 12px; align-items:baseline; font-size:12px; line-height:1.35; color:#000; margin-top:2px; }
.szb-product-admin-price { font-size:16px; font-weight:700; line-height:1.15; }
@media (max-width:760px){
  .szb-product-admin { grid-template-columns:58px 1fr; }
  .szb-product-admin .szb-row-actions { grid-column:1 / -1; justify-content:flex-start; }
  .szb-product-admin .szb-thumb { width:58px; height:58px; }
}

/* v11 — raporty sprzedaży, koszyk trwały i poprawiony układ produktów */
.szb-product-grid { align-items: stretch; margin-top: 18px; }
.szb-product-card { display:flex; flex-direction:column; min-height:100%; }
.szb-product-image-wrap { flex:0 0 auto; }
.szb-product-title { min-height: 48px; display:block; margin-bottom:8px; }
.szb-product-price { font-size:15px; font-weight:700; margin:2px 0 5px; }
.szb-product-stock { margin-bottom:10px; }
.szb-product-buy { margin-top:auto; }
.szb-field + .szb-product-grid, .szb-grid + .szb-product-grid { margin-top:20px; }
.szb-summary-box { border-top:1px solid #000; border-bottom:1px solid #000; padding:10px 0; margin:12px 0; display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; font-size:13px; }
.szb-summary-box strong { font-size:15px; }
.szb-report-stock-row { border-bottom:1px solid #000; padding:10px 0; display:grid; grid-template-columns:58px minmax(0,1fr) 120px; gap:12px; align-items:center; }
.szb-report-stock-main strong { display:block; font-size:14px; margin-bottom:4px; }
.szb-report-stock-main small { display:block; font-size:12px; line-height:1.4; }
.szb-report-sold label { font-size:11px; }
.szb-report-sold input { text-align:center; }
@media (max-width:760px){
  .szb-report-stock-row { grid-template-columns:50px 1fr; }
  .szb-report-sold { grid-column:1 / -1; }
}

/* v13 — poprawiony protokół jak w wersji v33, bez nakładania krzyżyka na druk */
.szb-modal-inner { padding: 54px 14px 14px; }
.szb-modal-close { z-index: 3; }
.szb-print-actions { position:absolute; top:8px; right:48px; margin:0; display:flex; justify-content:flex-end; gap:8px; }
.szeptun-protocol-print { width:210mm; min-height:297mm; padding:0; background:#fff; color:#000; font-family:Arial, Helvetica, sans-serif; position:relative; box-sizing:border-box; }
.szeptun-protocol-print .szeptun-inner { padding:28mm 18mm 18mm; box-sizing:border-box; }
.szeptun-protocol-print .szeptun-title { font-size:18px!important; line-height:1.2; margin:0 0 5mm!important; padding:0; text-transform:uppercase; letter-spacing:.04em; }
.szeptun-protocol-print .szeptun-title span { display:block; font-size:13px!important; font-weight:500; margin-top:1.5mm; }
.szeptun-protocol-print .szeptun-meta { text-align:right; margin:-1mm 0 4mm!important; font-size:12px; }
.szeptun-protocol-print .szeptun-osoba { font-size:12px!important; line-height:1.25; margin:0 0 4mm!important; padding:0; }
.szeptun-protocol-print h3 { font-size:13px!important; margin-bottom:1.5mm!important; margin-top:2mm!important; }
.szeptun-protocol-print table { width:100%; border-collapse:collapse; margin-top:4mm; table-layout:fixed; background:#fff; }
.szeptun-protocol-print th, .szeptun-protocol-print td { background:#fff!important; color:#000!important; border:1px solid #000!important; padding:4px 5px; font-size:11px; vertical-align:top; }
.szeptun-protocol-print th:first-child, .szeptun-protocol-print td:first-child { text-align:center; }
.szeptun-protocol-print tfoot td { background:#fff!important; }
.szeptun-protocol-print .szeptun-suma-label { text-align:right; }
.szeptun-protocol-print .szeptun-protocol-summary { margin-top:6mm; font-size:12px; line-height:1.45; }
.szeptun-protocol-print .signatures { display:flex; justify-content:space-between; margin-top:24px; font-size:12px; }
.szeptun-protocol-print .signatures span { display:inline-block; margin-top:4px; }
.szeptun-protocol-print .szeptun-page-number { position:absolute; left:0; right:0; bottom:6mm; text-align:center; font-size:11px; }
.szb-order-print .szeptun-inner { padding-top:28mm; }
@media print { .szb-modal-inner { border:0!important; padding:0!important; max-width:none!important; max-height:none!important; overflow:visible!important; } }

/* v14 — druk bez pustej kartki + faktury PDF */
.szb-invoice-status { display:inline-block; border:1px solid #000; padding:2px 6px; font-size:12px; background:#fff; color:#000; }
.szb-invoice-status.wystawiona { border-color:#000; }
.szb-invoice-status.czesciowo_oplacona { border-style:dashed; }
.szb-invoice-status.oplacona { border-width:2px; }
.szb-invoice-row .szb-row-actions a.szb-small-btn { text-decoration:none; color:#000; }
@media print {
  body * { visibility:hidden!important; }
  .szeptun-protocol-print, .szeptun-protocol-print *, .szb-protocol-print, .szb-protocol-print * { visibility:visible!important; }
  .szeptun-protocol-print, .szb-protocol-print { position:absolute!important; left:0!important; top:0!important; width:210mm!important; min-height:297mm!important; background:#fff!important; color:#000!important; }
  .szb-print-actions, .szb-modal-close { display:none!important; }
  @page { size:A4; margin:0; }
}


/* v15 — druk bez nowej karty, pobieranie dokumentów i kolory statusów */
.szb-modal-inner { padding:14px!important; }
.szb-modal-close { top:12px!important; right:12px!important; z-index:6!important; }
.szb-print-actions { position:relative!important; top:auto!important; right:auto!important; margin:0 52px 14px 0!important; display:flex!important; justify-content:flex-end!important; gap:8px!important; }
.szb-print-actions .szb-btn { min-width:96px; }
.szb-status { border-left-width:6px; }
.szb-status.nowe { border-left-color:#d80000!important; }
.szb-status.w_realizacji { border-left-color:#f28c00!important; }
.szb-status.zrealizowane { border-left-color:#118a2c!important; }
.szb-status-badge,
.szb-invoice-status { display:inline-block; border:1px solid #000; padding:3px 8px; font-size:12px; line-height:1.2; background:#fff; color:#000; font-weight:600; }
.szb-order-status-badge.nowe,
.szb-status-select.nowe { border-color:#d80000!important; color:#d80000!important; }
.szb-order-status-badge.w_realizacji,
.szb-status-select.w_realizacji { border-color:#f28c00!important; color:#b86400!important; }
.szb-order-status-badge.zrealizowane,
.szb-status-select.zrealizowane { border-color:#118a2c!important; color:#118a2c!important; }
.szb-invoice-status.wystawiona { border-color:#d80000!important; color:#d80000!important; }
.szb-invoice-status.czesciowo_oplacona { border-color:#d80000!important; color:#000!important; background:linear-gradient(90deg, rgba(216,0,0,.12) 0 50%, rgba(17,138,44,.14) 50% 100%)!important; }
.szb-invoice-status.oplacona { border-color:#118a2c!important; color:#118a2c!important; }
@media print {
  body.szb-printing-document * { visibility:hidden!important; }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szeptun-protocol-print *,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-protocol-print * { visibility:visible!important; }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szb-protocol-print { position:absolute!important; left:0!important; top:0!important; width:210mm!important; min-height:297mm!important; background:#fff!important; color:#000!important; }
  body.szb-printing-document .szb-print-actions,
  body.szb-printing-document .szb-modal-close { display:none!important; }
}


/* v16 — poprawka A4: podgląd dokumentu i pobrany plik bez ucinania */
.szb-modal-document {
  align-items: flex-start !important;
  justify-content: center !important;
  overflow: auto !important;
  padding: 18px !important;
  background: rgba(255,255,255,.96) !important;
}
.szb-modal-document .szb-modal-inner {
  width: auto !important;
  max-width: calc(100vw - 36px) !important;
  max-height: none !important;
  min-height: auto !important;
  overflow: visible !important;
  padding: 58px 14px 18px !important;
}
.szb-modal-document .szb-print-actions {
  position: absolute !important;
  top: 12px !important;
  right: 58px !important;
  margin: 0 !important;
  z-index: 5 !important;
}
.szb-modal-document .szb-modal-close {
  top: 12px !important;
  right: 12px !important;
  z-index: 6 !important;
}
.szb-modal-document .szeptun-protocol-print,
.szb-modal-document .szb-protocol-print,
.szb-modal-document .szb-print-document {
  width: 210mm !important;
  max-width: calc(100vw - 80px) !important;
  min-height: 297mm !important;
  margin: 0 auto !important;
  background: #fff !important;
  color: #000 !important;
  overflow: visible !important;
}
.szb-modal-document .szeptun-protocol-print table,
.szb-modal-document .szb-protocol-print table,
.szb-modal-document .szb-print-document table {
  width: 100% !important;
  max-width: 100% !important;
}
.szb-modal-document .szeptun-protocol-print th,
.szb-modal-document .szeptun-protocol-print td,
.szb-modal-document .szb-protocol-print th,
.szb-modal-document .szb-protocol-print td {
  word-break: break-word;
}
@media print {
  body.szb-printing-document .szb-modal-document,
  body.szb-printing-document .szb-modal-document .szb-modal-inner {
    position: static !important;
    inset: auto !important;
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 210mm !important;
    max-width: none !important;
  }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-print-document {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 210mm !important;
    max-width: none !important;
    min-height: 297mm !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
}

/* v18 — ikony, koszyk z prawej strony, historia powiadomień i poprawiony krzyżyk podglądu */
.szb-topline { justify-content:flex-end; }
.szb-top-icons { display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.szb-icon-btn { position:relative; width:38px; height:38px; border:1px solid #000; background:#fff; color:#000; border-radius:0; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; padding:0; font-size:18px; line-height:1; text-decoration:none; }
.szb-icon-btn:hover { color:#777; border-color:#777; background:#fff; }
.szb-icon-badge { position:absolute; top:-7px; right:-7px; min-width:19px; height:19px; padding:0 5px; border:1px solid #000; background:#fff; color:#000; font-size:11px; line-height:17px; text-align:center; font-weight:700; }
.szb-notify-btn.has-new .szb-icon-badge { border-color:#d80000; color:#d80000; }

.szb-modal-document .szb-modal-inner { padding-top:68px !important; }
.szb-modal-close { display:flex !important; align-items:center !important; justify-content:center !important; line-height:1 !important; font-size:20px !important; padding:0 !important; }
.szb-modal-document .szb-modal-close { top:14px !important; right:14px !important; width:38px !important; height:38px !important; }
.szb-modal-document .szb-print-actions { top:14px !important; right:68px !important; gap:10px !important; }
.szb-modal-document .szb-print-actions .szb-btn { min-height:38px; }

.szb-notifications { max-width:760px; margin-left:auto; font-size:12px; }
.szb-notifications-head { gap:12px; }
.szb-notifications-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.szb-note-list { gap:0; }
.szb-note { padding:8px 0; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; }
.szb-note-text { min-width:0; display:grid; gap:3px; }
.szb-note-title { display:block; font-size:13px; line-height:1.25; font-weight:700; }
.szb-note-body { display:block; font-size:12px; line-height:1.35; color:#000; }
.szb-note-date { display:block; font-size:11px; line-height:1.3; color:#555; }
.szb-notification-filters { display:grid; grid-template-columns:repeat(2,minmax(120px,1fr)) auto auto; gap:8px; align-items:end; margin:8px 0 10px; }
.szb-notification-filters .szb-small-btn { min-height:32px; }

.szb-cart-drawer-backdrop { position:fixed; inset:0; z-index:999996; background:rgba(255,255,255,.35); }
.szb-cart-drawer { position:fixed; top:0; right:0; bottom:0; z-index:999997; width:min(50vw,620px); min-width:420px; background:#fff; border-left:1px solid #000; padding:18px; overflow:auto; box-shadow:none; }
.szb-cart-drawer-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; padding-bottom:10px; border-bottom:1px solid #000; }
.szb-cart-drawer-head strong { font-size:18px; font-weight:600; }
.szb-cart-drawer .szb-row { grid-template-columns:1fr; align-items:start; }
.szb-cart-drawer .szb-row-actions { justify-content:flex-start; }

@media (max-width:760px){
  .szb-notifications { max-width:none; }
  .szb-notifications-head { align-items:flex-start; flex-direction:column; }
  .szb-notifications-actions { justify-content:flex-start; }
  .szb-notification-filters { grid-template-columns:1fr; }
  .szb-cart-drawer { width:92vw; min-width:0; }
  .szb-modal-document .szb-print-actions { position:static !important; margin:0 52px 12px 0 !important; }
  .szb-modal-document .szb-modal-inner { padding-top:58px !important; }
}

/* v19 — czarne ikony SVG, poprawiony krzyżyk i przywrócone statusy protokołów */
.szb-icon-btn svg,
.szb-modal-close svg {
  width:22px;
  height:22px;
  display:block;
  stroke:currentColor;
  fill:none;
  stroke-width:2.4;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}
.szb-icon-btn,
.szb-modal-close { color:#000 !important; }
.szb-icon-btn:hover,
.szb-modal-close:hover { color:#777 !important; border-color:#777 !important; background:#fff !important; }
.szb-logout-icon svg { width:24px; height:24px; }
.szb-modal-close {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  line-height:1 !important;
}
.szb-modal-document .szb-modal-close {
  top:14px !important;
  right:14px !important;
  width:40px !important;
  height:40px !important;
}
.szb-modal-document .szb-print-actions {
  top:14px !important;
  right:86px !important;
  gap:12px !important;
}
.szb-protocol-status-badge.nowe,
.szb-status-select.nowe { border-color:#d80000!important; color:#d80000!important; }
.szb-protocol-status-badge.w_realizacji,
.szb-status-select.w_realizacji { border-color:#f28c00!important; color:#b86400!important; }
.szb-protocol-status-badge.zrealizowane,
.szb-status-select.zrealizowane { border-color:#118a2c!important; color:#118a2c!important; }
@media (max-width:760px){
  .szb-modal-document .szb-print-actions { right:auto !important; margin-right:64px !important; }
}

/* v20 — ręczne powiadomienia i skrzynka wiadomości */
.szb-mail-btn.has-new .szb-icon-badge { border-color:#000; color:#000; }
.szb-mailbox {
  max-width:760px;
  margin:0 0 14px auto;
  border:1px solid #000;
  background:#fff;
  padding:12px;
  font-size:12px;
}
.szb-mailbox h3 { margin:16px 0 8px; font-size:15px; font-weight:600; }
.szb-message-row.unread { border-left:4px solid #000; padding-left:8px; }
.szb-message-modal { min-width:min(560px,82vw); max-width:760px; padding:4px; }
.szb-message-modal h2 { margin:0 0 8px; font-size:20px; font-weight:600; }
.szb-message-body { border-top:1px solid #000; margin-top:10px; padding-top:12px; font-size:14px; line-height:1.55; white-space:normal; }
.szb-note-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.szb-note .szb-note-body { white-space:normal; }
@media (max-width:760px){
  .szb-mailbox { max-width:none; }
  .szb-note-actions { justify-content:flex-start; }
}
.szb-notify-btn.has-new .szb-icon-badge,
.szb-mail-btn.has-new .szb-icon-badge { border-color:#000!important; color:#000!important; background:#fff!important; }

/* v21 — poczta jako wątki i archiwum korespondencji */
.szb-mail-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 12px; }
.szb-mail-tabs .szb-small-btn.active { background:#e5e5e5; }
.szb-mail-filters { margin-top:10px; }
.szb-thread-modal { min-width:min(680px,86vw); max-width:860px; }
.szb-chat-list { border-top:1px solid #000; border-bottom:1px solid #000; margin:12px 0; padding:10px 0; display:grid; gap:10px; max-height:48vh; overflow:auto; }
.szb-chat-bubble { border:1px solid #000; padding:9px; background:#fff; max-width:88%; }
.szb-chat-bubble.admin { margin-left:auto; }
.szb-chat-bubble.shop { margin-right:auto; }
.szb-chat-meta { display:flex; justify-content:space-between; gap:12px; font-size:11px; border-bottom:1px solid #000; padding-bottom:5px; margin-bottom:7px; }
.szb-chat-text { font-size:13px; line-height:1.5; }
.szb-closed-info { border:1px solid #000; padding:10px; font-size:13px; background:#fff; }
.szb-message-row.unread strong:after { content:' • nowe'; font-size:11px; font-weight:700; }
@media (max-width:760px){
  .szb-chat-bubble { max-width:100%; }
  .szb-chat-meta { flex-direction:column; gap:2px; }
}

/* v22 — prawa szuflada dla koszyka, powiadomień i poczty + widok poczty jak Gmail */
.szb-side-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999996;
  background: rgba(255,255,255,.35);
}
.szb-side-drawer {
  position: fixed !important;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 999997;
  background: #fff;
  border-left: 1px solid #000;
  box-shadow: none;
  overflow: auto;
  box-sizing: border-box;
}
.szb-side-head,
.szb-cart-drawer-head {
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid #000;
}
.szb-side-head strong,
.szb-cart-drawer-head strong {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}
.szb-side-head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.szb-notifications.szb-side-drawer,
.szb-notifications.szb-notifications-history.szb-side-drawer {
  width: min(50vw, 640px);
  min-width: 430px;
  max-width: none;
  margin: 0;
  padding: 18px;
  font-size: 12px;
}
.szb-notifications.szb-side-drawer .szb-notifications-actions {
  justify-content: flex-start;
  margin-bottom: 12px;
}
.szb-notifications.szb-side-drawer .szb-note {
  border-bottom: 1px solid #000;
  padding: 10px 0;
}
.szb-notifications.szb-side-drawer .szb-note:last-child { border-bottom: 0; }
.szb-mailbox.szb-side-drawer,
.szb-mail-drawer {
  width: min(78vw, 1120px);
  min-width: 760px;
  max-width: none;
  margin: 0;
  padding: 18px;
  font-size: 12px;
}
.szb-mail-layout {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 0;
  height: calc(100vh - 88px);
  min-height: 520px;
  border: 1px solid #000;
  background: #fff;
}
.szb-mail-list-pane {
  min-width: 0;
  border-right: 1px solid #000;
  padding: 12px;
  overflow: auto;
  background: #fff;
}
.szb-mail-thread-pane {
  min-width: 0;
  overflow: auto;
  background: #fff;
  display: flex;
  align-items: stretch;
  justify-content: center;
}
.szb-mail-compose {
  border: 1px solid #000;
  padding: 9px;
  margin: 10px 0 12px;
  background: #fff;
}
.szb-mail-compose summary {
  cursor: pointer;
  font-weight: 700;
  line-height: 1.35;
}
.szb-mail-compose[open] summary { margin-bottom: 10px; }
.szb-mail-list {
  display: grid;
  gap: 0;
  border-top: 1px solid #000;
}
.szb-mail-row {
  width: 100%;
  display: grid;
  gap: 4px;
  text-align: left;
  border: 0;
  border-bottom: 1px solid #000;
  background: #fff;
  color: #000;
  padding: 11px 9px;
  cursor: pointer;
  border-radius: 0;
}
.szb-mail-row:hover,
.szb-mail-row.active {
  background: #e5e5e5;
}
.szb-mail-row.unread {
  border-left: 4px solid #000;
  padding-left: 8px;
}
.szb-mail-subject {
  font-weight: 700;
  font-size: 13px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.szb-mail-meta,
.szb-mail-date {
  display: block;
  font-size: 11px;
  line-height: 1.35;
  color: #000;
}
.szb-mail-empty {
  width: min(620px, 100%);
  min-height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
  padding: 32px;
  box-sizing: border-box;
}
.szb-mail-empty strong { font-size: 20px; }
.szb-mail-empty span { font-size: 13px; line-height: 1.5; }
.szb-thread-view {
  width: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  background: #fff;
}
.szb-thread-head {
  padding: 18px 22px 14px;
  border-bottom: 1px solid #000;
  background: #fff;
}
.szb-thread-head h2 {
  margin: 0 0 5px;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 700;
}
.szb-thread-body {
  width: min(760px, 100%);
  margin: 0 auto;
  padding: 18px 22px;
  box-sizing: border-box;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.szb-thread-body .szb-chat-list {
  border: 0;
  margin: 0 0 14px;
  padding: 0;
  max-height: none;
  overflow: visible;
  display: grid;
  gap: 12px;
}
.szb-thread-body .szb-chat-bubble {
  border: 1px solid #000;
  padding: 10px 12px;
  max-width: 74%;
  background: #fff;
}
.szb-thread-body .szb-chat-bubble.admin { margin-left: auto; }
.szb-thread-body .szb-chat-bubble.shop { margin-right: auto; }
.szb-thread-body .szb-chat-meta {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  font-size: 11px;
  line-height: 1.35;
  border-bottom: 1px solid #000;
  padding-bottom: 6px;
  margin-bottom: 7px;
}
.szb-thread-body .szb-chat-text {
  font-size: 13px;
  line-height: 1.55;
  white-space: normal;
  overflow-wrap: anywhere;
}
.szb-thread-reply {
  margin-top: auto;
  border-top: 1px solid #000;
  padding-top: 14px;
  background: #fff;
}
.szb-thread-reply textarea {
  min-height: 95px;
}
.szb-cart-drawer.szb-side-drawer {
  width: min(50vw, 620px);
  min-width: 420px;
  padding: 18px;
}
.szb-cart-drawer-backdrop { display:none; }
@media (max-width: 980px){
  .szb-mailbox.szb-side-drawer,
  .szb-mail-drawer {
    width: 94vw;
    min-width: 0;
  }
  .szb-mail-layout {
    grid-template-columns: 1fr;
    height: auto;
    min-height: calc(100vh - 88px);
  }
  .szb-mail-list-pane {
    border-right: 0;
    border-bottom: 1px solid #000;
    max-height: 46vh;
  }
  .szb-mail-thread-pane {
    min-height: 50vh;
  }
}
@media (max-width: 760px){
  .szb-notifications.szb-side-drawer,
  .szb-notifications.szb-notifications-history.szb-side-drawer,
  .szb-cart-drawer.szb-side-drawer {
    width: 94vw;
    min-width: 0;
  }
  .szb-side-head { align-items: center; flex-direction: row; }
  .szb-thread-body { padding: 14px; }
  .szb-thread-body .szb-chat-bubble { max-width: 100%; }
}


/* v23 — dopracowanie poczty, archiwum i odstępów w powiadomieniach */
.szb-thread-body {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 20px 24px !important;
}
.szb-thread-body .szb-chat-list {
  width: 100% !important;
  gap: 0 !important;
}
.szb-thread-body .szb-chat-bubble {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #000 !important;
  padding: 14px 0 !important;
  background: #fff !important;
  box-sizing: border-box !important;
}
.szb-thread-body .szb-chat-bubble:last-child {
  border-bottom: 0 !important;
}
.szb-thread-body .szb-chat-meta {
  border-bottom: 0 !important;
  padding-bottom: 4px !important;
  margin-bottom: 4px !important;
  justify-content: flex-start !important;
  gap: 12px !important;
}
.szb-thread-body .szb-chat-text {
  font-size: 14px !important;
  line-height: 1.6 !important;
  max-width: 980px !important;
}
.szb-thread-reply {
  margin-top: 18px !important;
}
.szb-mail-filters.szb-notification-filters {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: end !important;
}
.szb-mail-filters.szb-notification-filters .szb-small-btn {
  grid-row: 2 !important;
  width: 100% !important;
  min-height: 34px !important;
}
.szb-notifications.szb-side-drawer .szb-note.unread,
.szb-notifications.szb-notifications-history.szb-side-drawer .szb-note.unread {
  padding-left: 16px !important;
}
.szb-notifications.szb-side-drawer .szb-note-text,
.szb-notifications.szb-notifications-history.szb-side-drawer .szb-note-text {
  padding-left: 4px !important;
}
@media (max-width: 760px){
  .szb-thread-body { padding: 16px !important; }
  .szb-mail-filters.szb-notification-filters { grid-template-columns: 1fr !important; }
  .szb-mail-filters.szb-notification-filters .szb-small-btn { grid-row: auto !important; }
}

/* v24 — korekty: poczta kolory nadawców, stany, lista zamówienia i powiadomienia */
.szb-chat-bubble.admin .szb-chat-meta strong,
.szb-thread-body .szb-chat-bubble.admin .szb-chat-meta strong {
  color:#d80000 !important;
}
.szb-chat-bubble.shop .szb-chat-meta strong,
.szb-thread-body .szb-chat-bubble.shop .szb-chat-meta strong {
  color:#118a2c !important;
}
.szb-note.unread.from-shop,
.szb-note.from-shop {
  border-left:4px solid #118a2c !important;
  padding-left:16px !important;
}
.szb-note.unread.from-admin,
.szb-note.from-admin {
  border-left:4px solid #d80000 !important;
  padding-left:16px !important;
}
.szb-note-text { padding-left:6px !important; }
.szb-stock-main,
.szb-report-stock-main {
  display:grid !important;
  gap:7px !important;
}
.szb-stock-main strong,
.szb-report-stock-main strong {
  margin-bottom:0 !important;
  line-height:1.3 !important;
}
.szb-stock-main small,
.szb-report-stock-main small {
  line-height:1.45 !important;
}
.szb-order-product-list {
  display:grid;
  gap:0;
  margin-top:18px;
  border-top:1px solid #000;
}
.szb-order-product-row {
  display:grid;
  grid-template-columns:62px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid #000;
}
.szb-order-product-thumb { width:62px; height:62px; background:#fff; overflow:hidden; }
.szb-order-product-img { width:62px; height:62px; object-fit:cover; display:block; cursor:pointer; }
.szb-order-product-info { display:grid; gap:5px; min-width:0; }
.szb-order-product-info strong { font-size:14px; line-height:1.3; font-weight:600; }
.szb-order-product-info small { font-size:12px; line-height:1.35; color:#000; }
.szb-order-product-actions { display:flex; align-items:center; gap:7px; }
.szb-order-product-actions input { width:74px; padding:7px 6px; border:1px solid #000; }
.szb-manual-note-targets { border-top:1px solid #000; border-bottom:1px solid #000; padding:12px 0; margin:12px 0; }
.szb-check-row { display:flex; align-items:center; gap:8px; padding:5px 0; font-size:13px; }
.szb-check-row input { width:auto; }
.szb-check-all { font-weight:600; margin-bottom:8px; }
.szb-target-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:2px 16px; }
@media (max-width:760px){
  .szb-order-product-row { grid-template-columns:50px 1fr; align-items:start; }
  .szb-order-product-thumb,
  .szb-order-product-img { width:50px; height:50px; }
  .szb-order-product-actions { grid-column:1 / -1; justify-content:flex-start; }
  .szb-target-list { grid-template-columns:1fr; }
}

/* v25 ręczny protokół - prostszy układ */
.szb-manual-protocol{display:grid;gap:18px;margin-top:14px}
.szb-manual-card{border:1px solid #111;background:#fff;padding:18px}
.szb-manual-card h3{margin:0 0 14px;font-size:16px;font-weight:700}
.szb-grid-compact{gap:12px}
.szb-manual-add-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) 90px 120px 80px auto;gap:12px;align-items:end}
.szb-manual-add-row .szb-field{margin:0}
.szb-short-field input{text-align:center}
.szb-add-line-btn{height:42px;white-space:nowrap}
.szb-danger-btn{border-color:#c00000!important;color:#c00000!important}
.szb-danger-btn:hover{background:#c00000!important;color:#fff!important}
@media(max-width:900px){.szb-manual-add-row{grid-template-columns:1fr}.szb-add-line-btn{width:100%}}

/* v26 — ujednolicone kafelki, archiwum i formularze */
.szb-menu { gap:12px !important; }
.szb-tile {
  border:2px solid #000 !important;
  min-height:54px !important;
  height:54px !important;
  padding:10px 14px !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  font-weight:600 !important;
  line-height:1.2 !important;
}
.szb-tile.active { border-width:2px !important; }
.szb-shop-docs-menu .szb-tile { min-height:50px !important; height:50px !important; }
.szb-mail-row-wrap { display:grid; grid-template-columns:1fr auto; gap:8px; align-items:stretch; border-bottom:1px solid #000; }
.szb-mail-row-wrap .szb-mail-row { border-bottom:0 !important; }
.szb-mail-delete { align-self:center; margin-right:6px; }
.szb-manual-simple .szb-manual-card { padding:14px !important; }
.szb-manual-add-row { align-items:end !important; gap:10px !important; }
.szb-manual-product-field { min-width:260px; }
.szb-target-list { min-height:190px; }
.szb-notification-filters.szb-mail-filters .szb-small-btn { grid-row:2 !important; }
.szb-note { padding-left:18px !important; }
.szb-note-text { padding-left:8px !important; }

/* v27 — aplikacja PWA i menu mobilne na trzy kreski */
.szb-mobile-bar,
.szb-mobile-menu,
.szb-mobile-menu-backdrop { display:none; }
.szb-hamburger svg { stroke-width:2.2; }
.szb-mobile-menu-list { display:grid; gap:8px; }
.szb-mobile-menu-list .szb-tile { width:100%; min-height:52px; padding:12px 12px; align-items:center; font-size:14px; }
@media (display-mode: standalone) {
  body { background:#fff; }
  #szeptun-b2b-root { margin-top: max(14px, env(safe-area-inset-top)); }
}
@media (max-width:760px){
  html, body { background:#fff; }
  #szeptun-b2b-root { width:100%; max-width:none; margin:0 auto 56px; padding:10px 12px 28px; }
  .szb-topline { margin-bottom:8px; min-height:38px; }
  .szb-top-icons { gap:6px; }
  .szb-icon-btn { width:40px; height:40px; }
  .szb-mobile-bar { display:flex; align-items:center; gap:10px; margin:6px 0 14px; border-bottom:1px solid #000; padding-bottom:10px; }
  .szb-mobile-bar strong { font-size:18px; font-weight:700; line-height:1.2; }
  .szb-title,
  .szb-menu { display:none!important; }
  .szb-mobile-menu-backdrop { display:block; position:fixed; inset:0; z-index:999995; background:rgba(255,255,255,.45); }
  .szb-mobile-menu { display:block; position:fixed; left:0; top:0; bottom:0; z-index:999998; width:min(82vw,360px); background:#fff; border-right:1px solid #000; padding:16px; overflow:auto; }
  .szb-mobile-menu .szb-side-head { margin-bottom:14px; }
  .szb-panel h2 { font-size:20px; margin-bottom:12px; }
  .szb-grid { grid-template-columns:1fr; gap:10px; }
  .szb-table th, .szb-table td { font-size:12px; padding:7px; }
  .szb-side-drawer,
  .szb-cart-drawer.szb-side-drawer,
  .szb-notifications.szb-side-drawer,
  .szb-notifications.szb-notifications-history.szb-side-drawer,
  .szb-mailbox.szb-side-drawer,
  .szb-mail-drawer { width:100vw!important; min-width:0!important; max-width:none!important; border-left:0!important; padding:14px!important; }
  .szb-mail-layout { grid-template-columns:1fr!important; }
  .szb-mail-list-pane { border-right:0!important; border-bottom:1px solid #000; padding-right:0!important; padding-bottom:12px; margin-bottom:12px; }
  .szb-mail-thread-pane { min-height:260px; padding-left:0!important; }
  .szb-product-admin { grid-template-columns:54px 1fr; gap:10px; }
  .szb-product-admin-title { font-size:13px; }
  .szb-row-actions .szb-small-btn,
  .szb-row-actions .szb-btn { min-height:34px; }
  .szb-modal { padding:8px!important; }
  .szb-modal-inner { max-width:100vw!important; }
}


/* v28 — menu sklepu widoczne w trybie mobilnym */
.szb-mobile-back-main { width:100%; margin:0 0 12px; justify-content:center; }
.szb-mobile-shop-menu-list { margin-top:8px; }
@media (max-width:760px){
  .szb-mobile-shop-bar strong { max-width:calc(100vw - 86px); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .szb-shop-docs-menu { display:none!important; }
}


/* v29 — liczniki powiadomień przy zakładce Sklepy i przy sklepach */
.szb-tile { position:relative; gap:8px; }
.szb-tile-label { display:inline-block; }
.szb-tile-badge { position:absolute; top:6px; right:6px; min-width:20px; height:20px; padding:0 5px; border:1px solid #000; background:#fff; color:#000; font-size:11px; line-height:18px; text-align:center; font-weight:700; }
.szb-shop-row { align-items:center; }
.szb-shop-title-line { display:flex; align-items:center; gap:9px; min-width:0; }
.szb-shop-title-line strong { margin-bottom:0; }
.szb-shop-note-indicator { display:inline-flex; align-items:center; justify-content:center; gap:4px; min-width:30px; height:26px; border:1px solid #000; background:#fff; color:#000; padding:0 6px; font-size:11px; font-weight:700; line-height:1; flex:0 0 auto; pointer-events:none; user-select:none; }
.szb-shop-note-indicator svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
.szb-shop-note-indicator.empty { opacity:.45; }
.szb-shop-note-indicator.has-new { border-width:2px; opacity:1; }
@media (max-width:760px){
  .szb-tile-badge { top:5px; right:8px; }
  .szb-shop-title-line { justify-content:space-between; align-items:center; }
  .szb-shop-note-indicator { min-width:34px; height:28px; }
}

/* v31 — anulowanie i usuwanie zamówień */
.szb-status.anulowane { border-left-color:#777!important; opacity:.78; }
.szb-order-status-badge.anulowane,
.szb-protocol-status-badge.anulowane,
.szb-status-select.anulowane { border-color:#777!important; color:#555!important; }
.szb-warning-btn { border-style:dashed!important; }

/* v32 — anulowanie i usuwanie raportów sprzedaży */
.szb-report-status-badge { display:inline-block; border:1px solid #000; padding:3px 8px; font-size:12px; line-height:1.2; background:#fff; color:#000; font-weight:600; }
.szb-report-status-badge.nowe,
.szb-report-status-select.nowe { border-color:#d80000!important; color:#d80000!important; }
.szb-report-status-badge.odebrano,
.szb-report-status-select.odebrano { border-color:#118a2c!important; color:#118a2c!important; }
.szb-report-status-badge.anulowane,
.szb-report-status-select.anulowane { border-color:#777!important; color:#555!important; }
.szb-status.odebrano { border-left-color:#118a2c!important; }
.szb-small-select { min-height:32px; border:1px solid #000; background:#fff; color:#000; padding:4px 8px; font-size:12px; }

.szb-success-btn {
  border-color: #15803d !important;
  color: #15803d !important;
  background: #fff !important;
}
.szb-success-btn:hover {
  background: #f0fdf4 !important;
}
.szb-stock-row {
  align-items: center;
  gap: 14px;
}
.szb-stock-edit {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
  min-width: 260px;
}
.szb-stock-edit label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #555;
}
.szb-stock-edit input {
  width: 88px;
  height: 34px;
  border: 1px solid #111;
  padding: 6px 8px;
  background: #fff;
  color: #111;
  border-radius: 0;
}
@media (max-width: 760px) {
  .szb-stock-edit {
    justify-content: flex-start;
    width: 100%;
    min-width: 0;
  }
}

/* v34 — filtry kategorii w raportach */
.szb-report-filters{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  align-items:end;
  margin:8px 0 14px;
}


.szb-report-admin-actions{display:flex;justify-content:flex-end;align-items:center;margin-top:8px}
@media(max-width:760px){.szb-report-admin-actions{justify-content:flex-start;width:100%}}

/* v36 — częściowe zdejmowanie stanu i dopracowane liczniki powiadomień w zakładkach */
.szb-stock-partial-remove{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.szb-stock-partial-remove label{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#555;
}
.szb-stock-partial-remove input{
  width:82px;
  height:34px;
  border:1px solid #111;
  padding:6px 8px;
  background:#fff;
  color:#111;
  border-radius:0;
}
.szb-report-admin-actions{
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
@media(max-width:760px){
  .szb-stock-partial-remove{
    justify-content:flex-start;
    width:100%;
  }
  .szb-stock-partial-remove input{
    width:90px;
  }
}


/* v37 — usuwanie odczytanych powiadomień przez admina */
.szb-notification-history-filters {
  grid-template-columns: minmax(160px,1fr) repeat(2,minmax(120px,1fr)) auto auto;
}
.szb-danger-btn {
  border-color:#000 !important;
  color:#000 !important;
  background:#fff !important;
}
.szb-danger-btn:hover {
  background:#eee !important;
}
.szb-note-actions { gap:8px; }
@media (max-width:760px){
  .szb-notification-history-filters { grid-template-columns:1fr !important; }
}

/* v38 — Moje konto */
.szb-account-drawer.szb-side-drawer {
  width: min(50vw, 620px);
  min-width: 420px;
  padding: 18px;
}
.szb-account-box {
  border: 1px solid #000;
  padding: 14px;
  margin-bottom: 14px;
  background: #fff;
}
.szb-account-box h3 {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 700;
}
.szb-account-list {
  display: grid;
  gap: 0;
  border-top: 1px solid #000;
}
.szb-account-row {
  display: grid;
  grid-template-columns: 170px minmax(0,1fr);
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid #000;
  align-items: start;
}
.szb-account-row span {
  font-size: 12px;
  color: #555;
}
.szb-account-row strong {
  font-size: 13px;
  font-weight: 600;
  color: #000;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.szb-account-icon svg { width: 23px; height: 23px; }
@media (max-width:760px){
  .szb-account-drawer.szb-side-drawer {
    width: 94vw;
    min-width: 0;
  }
  .szb-account-row {
    grid-template-columns: 1fr;
    gap: 3px;
  }
}


/* v39 - czytelniejsza historia powiadomień admina */
.szb-note-meta{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px;align-items:center}
.szb-note-shop,.szb-note-direction{display:inline-flex;align-items:center;border:1px solid #111;padding:2px 7px;font-size:11px;line-height:1.2;background:#fff;color:#111}
.szb-note-direction{opacity:.72}


/* v40 — powiadomienia: kolory źródeł, skracanie treści i status odczytania */
.szb-note.from-system,
.szb-note.unread.from-system,
.szb-note.from-shop,
.szb-note.unread.from-shop {
  border-left:4px solid #118a2c !important;
}
.szb-note.from-admin,
.szb-note.unread.from-admin {
  border-left:4px solid #d80000 !important;
}
.szb-note-title,
.szb-note-body {
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  max-width:100% !important;
}
.szb-note-body { color:#111; }
.szb-note-read-state {
  display:inline-flex;
  align-items:center;
  border:1px solid #111;
  padding:2px 7px;
  font-size:11px;
  line-height:1.2;
  background:#fff;
  color:#111;
}
.szb-note-read-state.read { border-color:#118a2c; color:#118a2c; }
.szb-note-read-state.unread { border-color:#d80000; color:#d80000; }
.szb-chat-read {
  margin-top:6px;
  font-size:11px;
  line-height:1.3;
  color:#555;
  text-align:right;
}
.szb-chat-bubble.shop .szb-chat-read { text-align:left; }


/* v41 — historia powiadomień: czytelne filtry, przyciski pod datami, sklepy po 5 na stronę */
.szb-notification-history-filters-v41 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  align-items: stretch !important;
  margin: 10px 0 12px !important;
}
.szb-note-admin-filters {
  display: grid;
  grid-template-columns: minmax(170px, 220px) minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}
.szb-note-shop-filter {
  min-width: 0;
  border: 1px solid #000;
  background: #fff;
  padding: 10px;
}
.szb-note-shop-filter-title {
  display: block;
  font-size: 12px;
  margin: 0 0 8px;
  color: #000;
}
.szb-note-shop-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}
.szb-note-shop-option {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #000;
  background: #fff;
  color: #000;
  padding: 7px 9px;
  font-size: 12px;
  line-height: 1.2;
  cursor: pointer;
}
.szb-note-shop-option.all {
  grid-column: 1 / -1;
  font-weight: 700;
}
.szb-note-shop-option span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.szb-note-shop-option input {
  width: auto !important;
  flex: 0 0 auto;
}
.szb-note-shop-pager {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 8px;
  font-size: 12px;
}
.szb-note-date-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
}
.szb-note-filter-actions {
  grid-column: 1 / -1;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  margin-top: 2px;
}
.szb-note-filter-actions .szb-small-btn {
  min-width: 96px;
  min-height: 34px;
}
@media (max-width:760px){
  .szb-note-admin-filters,
  .szb-note-date-grid,
  .szb-note-shop-options {
    grid-template-columns: 1fr !important;
  }
  .szb-note-filter-actions {
    flex-wrap: wrap;
  }
  .szb-note-filter-actions .szb-small-btn {
    flex: 1 1 120px;
  }
}


/* v42 — edycja protokołów i poprawione strony A4 przy druku */
.szb-modal-document .szeptun-protocol-print,
.szb-modal-document .szb-protocol-print,
.szb-modal-document .szb-print-document {
  width: 210mm !important;
  max-width: calc(100vw - 80px) !important;
  min-height: 297mm !important;
  margin: 0 auto 12mm !important;
  overflow: visible !important;
  page-break-after: always;
  break-after: page;
}
.szb-modal-document .szeptun-protocol-print.szeptun-page-last,
.szb-modal-document .szb-protocol-print.szeptun-page-last,
.szb-modal-document .szb-print-document.szeptun-page-last {
  page-break-after: auto;
  break-after: auto;
}
.szeptun-protocol-print table { page-break-inside:auto; break-inside:auto; }
.szeptun-protocol-print thead { display:table-header-group; }
.szeptun-protocol-print tfoot { display:table-footer-group; }
.szeptun-protocol-print tr { page-break-inside:avoid; break-inside:avoid; }
.szeptun-continued { font-size:11px; text-align:right; margin-top:5mm; }
@media print {
  @page { size:A4; margin:12mm; }
  body.szb-printing-document * { visibility:hidden!important; }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szeptun-protocol-print *,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-protocol-print *,
  body.szb-printing-document .szb-print-document,
  body.szb-printing-document .szb-print-document * { visibility:visible!important; }
  body.szb-printing-document .szb-modal-document,
  body.szb-printing-document .szb-modal-document .szb-modal-inner { position:static!important; inset:auto!important; display:block!important; width:auto!important; max-width:none!important; height:auto!important; max-height:none!important; overflow:visible!important; padding:0!important; margin:0!important; border:0!important; }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-print-document { position:static!important; left:auto!important; top:auto!important; width:auto!important; max-width:none!important; min-height:auto!important; height:auto!important; margin:0!important; padding:0!important; overflow:visible!important; background:#fff!important; color:#000!important; page-break-after:always!important; break-after:page!important; }
  body.szb-printing-document .szeptun-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-print-document.szeptun-page-last { page-break-after:auto!important; break-after:auto!important; }
  body.szb-printing-document .szeptun-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-print-document .szeptun-inner { padding:0!important; }
  body.szb-printing-document .szeptun-page-number { position:fixed!important; bottom:0!important; left:0!important; right:0!important; }
  body.szb-printing-document .szb-print-actions,
  body.szb-printing-document .szb-modal-close { display:none!important; }
}

/* v44 — stabilny podgląd i druk A4 z automatycznym dzieleniem na strony */
.szb-modal-document {
  align-items:flex-start !important;
  justify-content:center !important;
  overflow:auto !important;
  padding:18px !important;
  background:rgba(245,245,245,.98) !important;
}
.szb-modal-document .szb-modal-inner {
  width:auto !important;
  max-width:calc(100vw - 36px) !important;
  max-height:none !important;
  min-height:auto !important;
  overflow:visible !important;
  padding:68px 14px 18px !important;
  background:#fff !important;
}
.szb-modal-document .szeptun-protocol-print,
.szb-modal-document .szb-protocol-print,
.szb-modal-document .szb-print-document {
  width:210mm !important;
  max-width:calc(100vw - 80px) !important;
  min-height:297mm !important;
  margin:0 auto 10mm !important;
  padding:0 !important;
  background:#fff !important;
  color:#000 !important;
  position:relative !important;
  box-sizing:border-box !important;
  overflow:visible !important;
  page-break-after:always !important;
  break-after:page !important;
}
.szb-modal-document .szeptun-protocol-print.szeptun-page-last,
.szb-modal-document .szb-protocol-print.szeptun-page-last,
.szb-modal-document .szb-print-document.szeptun-page-last {
  page-break-after:auto !important;
  break-after:auto !important;
}
.szb-modal-document .szeptun-protocol-print .szeptun-inner,
.szb-modal-document .szb-protocol-print .szeptun-inner,
.szb-modal-document .szb-print-document .szeptun-inner {
  padding:16mm 14mm 20mm !important;
  box-sizing:border-box !important;
}
.szeptun-protocol-print table,
.szb-protocol-print table,
.szb-print-document table {
  width:100% !important;
  max-width:100% !important;
  border-collapse:collapse !important;
  table-layout:fixed !important;
  page-break-inside:auto !important;
  break-inside:auto !important;
}
.szeptun-protocol-print thead,
.szb-protocol-print thead,
.szb-print-document thead { display:table-header-group !important; }
.szeptun-protocol-print tfoot,
.szb-protocol-print tfoot,
.szb-print-document tfoot { display:table-footer-group !important; }
.szeptun-protocol-print tr,
.szb-protocol-print tr,
.szb-print-document tr {
  page-break-inside:avoid !important;
  break-inside:avoid !important;
}
.szeptun-protocol-print th,
.szeptun-protocol-print td,
.szb-protocol-print th,
.szb-protocol-print td,
.szb-print-document th,
.szb-print-document td {
  font-size:10.5px !important;
  line-height:1.25 !important;
  padding:4px 5px !important;
  vertical-align:top !important;
  word-break:break-word !important;
  overflow-wrap:anywhere !important;
}
.szeptun-protocol-print .szeptun-protocol-summary,
.szb-protocol-print .szeptun-protocol-summary,
.szb-print-document .szeptun-protocol-summary {
  margin-top:5mm !important;
  line-height:1.38 !important;
}
.szeptun-protocol-print .signatures,
.szb-protocol-print .signatures,
.szb-print-document .signatures {
  margin-top:18px !important;
  gap:16mm !important;
}
.szeptun-page-number { bottom:6mm !important; }

@media print {
  @page { size:A4; margin:12mm; }
  html, body { background:#fff !important; margin:0 !important; padding:0 !important; width:auto !important; min-width:0 !important; max-width:none !important; height:auto !important; overflow:visible !important; }
  body.szb-printing-document > :not(.szb-modal-document) { display:none !important; }
  body.szb-printing-document .szb-modal-document,
  body.szb-printing-document .szb-modal-document .szb-modal-inner {
    position:static !important;
    inset:auto !important;
    display:block !important;
    width:auto !important;
    max-width:none !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    background:#fff !important;
  }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-print-document {
    position:relative !important;
    display:block !important;
    left:auto !important;
    top:auto !important;
    width:100% !important;
    max-width:none !important;
    min-height:273mm !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    background:#fff !important;
    color:#000 !important;
    box-shadow:none !important;
    page-break-after:always !important;
    break-after:page !important;
    visibility:visible !important;
  }
  body.szb-printing-document .szeptun-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-print-document.szeptun-page-last {
    page-break-after:auto !important;
    break-after:auto !important;
  }
  body.szb-printing-document .szeptun-protocol-print *,
  body.szb-printing-document .szb-protocol-print *,
  body.szb-printing-document .szb-print-document * { visibility:visible !important; }
  body.szb-printing-document .szeptun-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-print-document .szeptun-inner {
    padding:0 0 14mm 0 !important;
    box-sizing:border-box !important;
  }
  body.szb-printing-document .szeptun-page-number {
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    text-align:center !important;
  }
  body.szb-printing-document .szb-print-actions,
  body.szb-printing-document .szb-modal-close { display:none !important; }
}

/* v45 faktury: edycja, status, alert */
.szb-invoice-row .szb-row-actions { gap: 8px; flex-wrap: wrap; align-items: center; }
.szb-invoice-status-select { min-width: 150px; height: 34px; border: 1px solid #000; background: #fff; color: #000; padding: 0 8px; }
.szb-invoice-alert-btn { display: inline-flex; align-items: center; gap: 6px; }
.szb-invoice-alert-btn svg { width: 15px; height: 15px; stroke: #000; fill: none; stroke-width: 1.8; }


/* v46 — dopracowany druk A4: równe tabele, pełne strony, bez nagłówków przeglądarki */
.szb-modal-document .szeptun-protocol-print,
.szb-modal-document .szb-protocol-print,
.szb-modal-document .szb-print-document {
  width:210mm !important;
  max-width:calc(100vw - 80px) !important;
  min-height:297mm !important;
  margin:0 auto 10mm !important;
  padding:0 !important;
  background:#fff !important;
  color:#000 !important;
  position:relative !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  page-break-after:always !important;
  break-after:page !important;
}
.szb-modal-document .szeptun-protocol-print .szeptun-inner,
.szb-modal-document .szb-protocol-print .szeptun-inner,
.szb-modal-document .szb-print-document .szeptun-inner {
  padding:13mm 12mm 18mm !important;
  box-sizing:border-box !important;
}
.szeptun-protocol-print table,
.szb-protocol-print table,
.szb-print-document table {
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  border-left:.32mm solid #000 !important;
  border-top:.32mm solid #000 !important;
  border-right:0 !important;
  border-bottom:0 !important;
  table-layout:fixed !important;
  margin-top:3.2mm !important;
  background:#fff !important;
  page-break-inside:auto !important;
  break-inside:auto !important;
}
.szeptun-protocol-print th,
.szeptun-protocol-print td,
.szb-protocol-print th,
.szb-protocol-print td,
.szb-print-document th,
.szb-print-document td {
  border:0 !important;
  border-right:.32mm solid #000 !important;
  border-bottom:.32mm solid #000 !important;
  background:#fff !important;
  color:#000 !important;
  padding:3.5px 4px !important;
  font-size:10px !important;
  line-height:1.2 !important;
  vertical-align:top !important;
  box-sizing:border-box !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}
.szeptun-protocol-print th:first-child,
.szeptun-protocol-print td:first-child,
.szb-protocol-print th:first-child,
.szb-protocol-print td:first-child,
.szb-print-document th:first-child,
.szb-print-document td:first-child { text-align:center !important; }
.szeptun-protocol-print th:last-child,
.szeptun-protocol-print td:last-child,
.szb-protocol-print th:last-child,
.szb-protocol-print td:last-child,
.szb-print-document th:last-child,
.szb-print-document td:last-child { text-align:center !important; }
.szeptun-protocol-print .szeptun-title,
.szb-protocol-print .szeptun-title,
.szb-print-document .szeptun-title { margin-bottom:4mm !important; }
.szeptun-protocol-print .szeptun-osoba,
.szb-protocol-print .szeptun-osoba,
.szb-print-document .szeptun-osoba { margin-bottom:3.5mm !important; line-height:1.22 !important; }
.szeptun-protocol-print .szeptun-protocol-summary,
.szb-protocol-print .szeptun-protocol-summary,
.szb-print-document .szeptun-protocol-summary { margin-top:4mm !important; line-height:1.34 !important; }
.szeptun-protocol-print .signatures,
.szb-protocol-print .signatures,
.szb-print-document .signatures { margin-top:16px !important; }
.szeptun-page-number { bottom:5mm !important; }
@media print {
  @page { size:A4; margin:0; }
  html, body {
    background:#fff !important;
    margin:0 !important;
    padding:0 !important;
    width:210mm !important;
    max-width:210mm !important;
    min-width:210mm !important;
    height:auto !important;
    overflow:visible !important;
  }
  body.szb-printing-document > :not(.szb-modal-document) { display:none !important; }
  body.szb-printing-document .szb-modal-document,
  body.szb-printing-document .szb-modal-document .szb-modal-inner {
    position:static !important;
    inset:auto !important;
    display:block !important;
    width:210mm !important;
    max-width:210mm !important;
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    background:#fff !important;
  }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-print-document {
    position:relative !important;
    display:block !important;
    width:210mm !important;
    max-width:210mm !important;
    min-height:297mm !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#fff !important;
    box-shadow:none !important;
    page-break-after:always !important;
    break-after:page !important;
  }
  body.szb-printing-document .szeptun-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-print-document.szeptun-page-last { page-break-after:auto !important; break-after:auto !important; }
  body.szb-printing-document .szeptun-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-print-document .szeptun-inner { padding:13mm 12mm 18mm !important; box-sizing:border-box !important; }
  body.szb-printing-document .szeptun-page-number { position:absolute !important; left:0 !important; right:0 !important; bottom:5mm !important; text-align:center !important; }
  body.szb-printing-document .szb-print-actions,
  body.szb-printing-document .szb-modal-close { display:none !important; }
}


/* v47 — stały druk A4: 20 pozycji na stronę i pełne, równe kreski tabeli */
.szb-modal-document .szeptun-protocol-print,
.szb-modal-document .szb-protocol-print,
.szb-modal-document .szb-print-document {
  width:210mm !important;
  max-width:calc(100vw - 80px) !important;
  min-height:297mm !important;
  margin:0 auto 10mm !important;
  padding:0 !important;
  background:#fff !important;
  color:#000 !important;
  position:relative !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  page-break-after:always !important;
  break-after:page !important;
}
.szb-modal-document .szeptun-protocol-print.szeptun-page-last,
.szb-modal-document .szb-protocol-print.szeptun-page-last,
.szb-modal-document .szb-print-document.szeptun-page-last { page-break-after:auto !important; break-after:auto !important; }
.szb-modal-document .szeptun-protocol-print .szeptun-inner,
.szb-modal-document .szb-protocol-print .szeptun-inner,
.szb-modal-document .szb-print-document .szeptun-inner { padding:12mm 11mm 18mm !important; box-sizing:border-box !important; }
.szeptun-protocol-print *, .szb-protocol-print *, .szb-print-document * { -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; }
.szeptun-protocol-print table,
.szb-protocol-print table,
.szb-print-document table {
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  border:1px solid #111 !important;
  outline:1px solid #111 !important;
  table-layout:fixed !important;
  margin-top:2.8mm !important;
  background:#fff !important;
  page-break-inside:avoid !important;
  break-inside:avoid !important;
}
.szeptun-protocol-print thead, .szb-protocol-print thead, .szb-print-document thead { display:table-header-group !important; }
.szeptun-protocol-print tfoot, .szb-protocol-print tfoot, .szb-print-document tfoot { display:table-footer-group !important; }
.szeptun-protocol-print tr, .szb-protocol-print tr, .szb-print-document tr { page-break-inside:avoid !important; break-inside:avoid !important; }
.szeptun-protocol-print th,
.szeptun-protocol-print td,
.szb-protocol-print th,
.szb-protocol-print td,
.szb-print-document th,
.szb-print-document td {
  border:1px solid #111 !important;
  background:#fff !important;
  color:#000 !important;
  padding:3px 4px !important;
  font-size:9.7px !important;
  line-height:1.18 !important;
  vertical-align:top !important;
  box-sizing:border-box !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}
.szeptun-protocol-print th:first-child, .szeptun-protocol-print td:first-child,
.szb-protocol-print th:first-child, .szb-protocol-print td:first-child,
.szb-print-document th:first-child, .szb-print-document td:first-child,
.szeptun-protocol-print th:last-child, .szeptun-protocol-print td:last-child,
.szb-protocol-print th:last-child, .szb-protocol-print td:last-child,
.szb-print-document th:last-child, .szb-print-document td:last-child { text-align:center !important; }
.szeptun-protocol-print .szeptun-title, .szb-protocol-print .szeptun-title, .szb-print-document .szeptun-title { font-size:17px !important; line-height:1.18 !important; margin-bottom:3.2mm !important; }
.szeptun-protocol-print .szeptun-title span, .szb-protocol-print .szeptun-title span, .szb-print-document .szeptun-title span { font-size:12px !important; }
.szeptun-protocol-print .szeptun-meta, .szb-protocol-print .szeptun-meta, .szb-print-document .szeptun-meta { margin-bottom:3mm !important; font-size:11px !important; }
.szeptun-protocol-print .szeptun-osoba, .szb-protocol-print .szeptun-osoba, .szb-print-document .szeptun-osoba { margin-bottom:3mm !important; line-height:1.18 !important; font-size:11px !important; }
.szeptun-protocol-print h3, .szb-protocol-print h3, .szb-print-document h3 { font-size:12px !important; margin:1.8mm 0 1mm !important; }
.szeptun-protocol-print p, .szb-protocol-print p, .szb-print-document p { font-size:11px !important; line-height:1.25 !important; }
.szeptun-protocol-print .szeptun-protocol-summary, .szb-protocol-print .szeptun-protocol-summary, .szb-print-document .szeptun-protocol-summary { margin-top:3.2mm !important; line-height:1.25 !important; font-size:11px !important; }
.szeptun-protocol-print .signatures, .szb-protocol-print .signatures, .szb-print-document .signatures { margin-top:12px !important; font-size:11px !important; }
.szeptun-page-number { bottom:5mm !important; font-size:10px !important; }
@media print {
  @page { size:A4; margin:0; }
  html, body { background:#fff !important; margin:0 !important; padding:0 !important; width:210mm !important; max-width:210mm !important; min-width:210mm !important; height:auto !important; overflow:visible !important; }
  body.szb-printing-document > :not(.szb-modal-document) { display:none !important; }
  body.szb-printing-document .szb-modal-document,
  body.szb-printing-document .szb-modal-document .szb-modal-inner { position:static !important; inset:auto !important; display:block !important; width:210mm !important; max-width:210mm !important; height:auto !important; max-height:none !important; overflow:visible !important; padding:0 !important; margin:0 !important; border:0 !important; background:#fff !important; }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-print-document { position:relative !important; display:block !important; width:210mm !important; max-width:210mm !important; min-height:297mm !important; height:297mm !important; margin:0 !important; padding:0 !important; overflow:hidden !important; background:#fff !important; box-shadow:none !important; page-break-after:always !important; break-after:page !important; }
  body.szb-printing-document .szeptun-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-protocol-print.szeptun-page-last,
  body.szb-printing-document .szb-print-document.szeptun-page-last { page-break-after:auto !important; break-after:auto !important; }
  body.szb-printing-document .szeptun-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-print-document .szeptun-inner { padding:12mm 11mm 18mm !important; box-sizing:border-box !important; }
  body.szb-printing-document .szeptun-page-number { position:absolute !important; left:0 !important; right:0 !important; bottom:5mm !important; text-align:center !important; }
  body.szb-printing-document .szb-print-actions,
  body.szb-printing-document .szb-modal-close { display:none !important; }
}

/* v48 — druk A4: 30 pozycji na stronę, stabilna tabela i osobna strona podsumowania dla 31-35 pozycji */
.szb-modal-document .szeptun-protocol-print,
.szb-modal-document .szb-protocol-print,
.szb-modal-document .szb-print-document {
  width:210mm !important;
  max-width:calc(100vw - 80px) !important;
  min-height:297mm !important;
  height:auto !important;
  margin:0 auto 10mm !important;
  padding:0 !important;
  background:#fff !important;
  color:#000 !important;
  position:relative !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  page-break-after:always !important;
  break-after:page !important;
}
.szb-modal-document .szeptun-protocol-print .szeptun-inner,
.szb-modal-document .szb-protocol-print .szeptun-inner,
.szb-modal-document .szb-print-document .szeptun-inner {
  padding:10mm 10mm 16mm !important;
  box-sizing:border-box !important;
}
.szeptun-protocol-print table,
.szb-protocol-print table,
.szb-print-document table {
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  border-top:1px solid #111 !important;
  border-left:1px solid #111 !important;
  border-right:0 !important;
  border-bottom:0 !important;
  outline:0 !important;
  table-layout:fixed !important;
  margin-top:2.2mm !important;
  background:#fff !important;
  page-break-inside:avoid !important;
  break-inside:avoid !important;
}
.szeptun-protocol-print th,
.szeptun-protocol-print td,
.szb-protocol-print th,
.szb-protocol-print td,
.szb-print-document th,
.szb-print-document td {
  border:0 !important;
  border-right:1px solid #111 !important;
  border-bottom:1px solid #111 !important;
  background:#fff !important;
  color:#000 !important;
  padding:2px 3px !important;
  font-size:8.8px !important;
  line-height:1.13 !important;
  vertical-align:top !important;
  box-sizing:border-box !important;
  word-break:normal !important;
  overflow-wrap:anywhere !important;
}
.szeptun-protocol-print th,
.szb-protocol-print th,
.szb-print-document th { font-weight:700 !important; text-align:left !important; }
.szeptun-protocol-print th:first-child, .szeptun-protocol-print td:first-child,
.szb-protocol-print th:first-child, .szb-protocol-print td:first-child,
.szb-print-document th:first-child, .szb-print-document td:first-child,
.szeptun-protocol-print th:last-child, .szeptun-protocol-print td:last-child,
.szb-protocol-print th:last-child, .szb-protocol-print td:last-child,
.szb-print-document th:last-child, .szb-print-document td:last-child { text-align:center !important; }
.szeptun-protocol-print .szeptun-title, .szb-protocol-print .szeptun-title, .szb-print-document .szeptun-title { font-size:15.5px !important; line-height:1.14 !important; margin:0 0 2.4mm !important; }
.szeptun-protocol-print .szeptun-title span, .szb-protocol-print .szeptun-title span, .szb-print-document .szeptun-title span { font-size:10.5px !important; margin-top:1mm !important; }
.szeptun-protocol-print .szeptun-meta, .szb-protocol-print .szeptun-meta, .szb-print-document .szeptun-meta { margin:-.4mm 0 2.2mm !important; font-size:10px !important; }
.szeptun-protocol-print .szeptun-osoba, .szb-protocol-print .szeptun-osoba, .szb-print-document .szeptun-osoba { margin:0 0 2.2mm !important; line-height:1.14 !important; font-size:10px !important; }
.szeptun-protocol-print h3, .szb-protocol-print h3, .szb-print-document h3 { font-size:11px !important; margin:1.3mm 0 .7mm !important; }
.szeptun-protocol-print p, .szb-protocol-print p, .szb-print-document p { font-size:10px !important; line-height:1.18 !important; margin-top:1.5mm !important; margin-bottom:1.5mm !important; }
.szeptun-protocol-print .szeptun-protocol-summary, .szb-protocol-print .szeptun-protocol-summary, .szb-print-document .szeptun-protocol-summary { margin-top:3mm !important; line-height:1.24 !important; font-size:10.5px !important; }
.szeptun-protocol-print .szeptun-summary-page .szeptun-protocol-summary { margin-top:14mm !important; }
.szeptun-protocol-print .signatures, .szb-protocol-print .signatures, .szb-print-document .signatures { margin-top:12mm !important; font-size:10.5px !important; gap:14mm !important; }
.szeptun-page-number { bottom:5mm !important; font-size:9.5px !important; }
@media print {
  @page { size:A4; margin:0; }
  html, body { background:#fff !important; margin:0 !important; padding:0 !important; width:210mm !important; max-width:210mm !important; min-width:210mm !important; height:auto !important; overflow:visible !important; }
  body.szb-printing-document .szeptun-protocol-print,
  body.szb-printing-document .szb-protocol-print,
  body.szb-printing-document .szb-print-document { width:210mm !important; max-width:210mm !important; min-height:297mm !important; height:297mm !important; margin:0 !important; padding:0 !important; overflow:hidden !important; background:#fff !important; box-shadow:none !important; page-break-after:always !important; break-after:page !important; }
  body.szb-printing-document .szeptun-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-protocol-print .szeptun-inner,
  body.szb-printing-document .szb-print-document .szeptun-inner { padding:10mm 10mm 16mm !important; box-sizing:border-box !important; }
  body.szb-printing-document table { border-collapse:separate !important; border-spacing:0 !important; border-top:1px solid #111 !important; border-left:1px solid #111 !important; border-right:0 !important; border-bottom:0 !important; outline:0 !important; }
  body.szb-printing-document th,
  body.szb-printing-document td { border:0 !important; border-right:1px solid #111 !important; border-bottom:1px solid #111 !important; }
}


.szb-category-notice,
.szb-category-warning,
.szb-cart-category-info {
  border: 1px solid #000;
  background: #fff;
  padding: 10px 12px;
  margin: 0 0 12px;
  font-size: 13px;
  line-height: 1.45;
}
.szb-category-warning {
  border-left: 4px solid #b00000;
}
.szb-cart-category-info {
  margin-top: 10px;
  font-size: 12px;
}

.szb-important-word {
  color: #b00000;
}
/* v53: procenty kategorii/podkategorii */
.szb-commission-field input{max-width:180px}
.szb-chip-edit{display:inline-flex;align-items:center;gap:8px;padding:8px 10px}
.szb-chip-edit input{width:110px;min-width:90px;padding:6px 8px;height:auto}


/* v58 — raport roboczy i wyszukiwarka produktów w raportach */
.szb-report-filter-actions{
  display:flex;
  align-items:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.szb-report-add-cell{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.szb-report-add-cell label{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
  display:block;
  width:100%;
  text-align:left;
}
.szb-report-add-cell input{
  width:76px;
  height:34px;
  border:1px solid #000;
  padding:6px 8px;
  background:#fff;
  color:#000;
  border-radius:0;
}
.szb-report-draft-box{
  border:2px solid #000;
  padding:14px;
  margin:18px 0 24px;
  background:#fff;
}
.szb-report-draft-box h3{margin-top:0;}
.szb-report-draft-empty{
  border:1px solid #000;
  padding:12px;
  margin:18px 0 22px;
  font-size:13px;
}
.szb-report-draft-summary{
  margin-top:10px;
  text-align:right;
}
@media(max-width:760px){
  .szb-report-stock-row{grid-template-columns:50px 1fr !important;}
  .szb-report-add-cell{grid-column:1 / -1; justify-content:flex-start;}
  .szb-report-filter-actions{align-items:flex-start;}
}

/* v59 — raporty: wyszukiwanie na żywo i wyróżnienie trafień */
.szb-live-search-hint{
  display:block;
  margin-top:5px;
  font-size:11px;
  line-height:1.35;
  color:#555;
}
.szb-search-mark{
  background:transparent;
  color:inherit;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:2px;
}
