/* Panel LUSSO: dodatki do admin.css (panel sklepu). Klasy p-*. */
[hidden] { display: none !important; }
body.a-body { padding-bottom: env(safe-area-inset-bottom, 0px); }

/* wczytywanie przed sprawdzeniem sesji */
.p-boot { position: fixed; inset: 0; display: grid; place-items: center; background: var(--surface-2, var(--surface)); }
.p-spinner { width: 28px; height: 28px; border: 2px solid var(--line); border-top-color: var(--brand-alusso); border-radius: 50%; animation: p-spin .8s linear infinite; }
@keyframes p-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .p-spinner { animation: none; } }

/* pozycje menu w przygotowaniu */
.p-soon { display: flex; align-items: center; gap: var(--s-3); padding: 8px var(--s-3); border-radius: var(--r-m); color: var(--on-dark-2); opacity: .5; font: 500 14px/20px var(--font-sans); cursor: default; }
.p-soon svg { width: 16px; height: 16px; flex: none; opacity: .62; }
.p-soon__tag { margin-left: auto; padding: 0 6px; border: 1px solid rgba(238, 242, 240, .2); border-radius: 9px; font: 400 10px/16px var(--font-mono); letter-spacing: .02em; }
@media (max-width: 900px) {
  .a-nav .p-soon { display: none; }
  .a-side { top: 0; padding-top: max(var(--s-3), env(safe-area-inset-top, 0px)); }
}

/* logowanie: przełącznik hasło / PIN, pole PIN, wejście do ankiety */
.p-tabs { border-bottom: 1px solid var(--line); }
.p-tabs button { padding: 10px var(--s-3) 11px; margin-bottom: -1px; border: 0; border-bottom: 2px solid transparent; background: none; color: var(--ink-2); font: 500 14px/20px var(--font-sans); cursor: pointer; }
.p-tabs button[aria-selected="true"] { color: var(--ink); font-weight: 600; border-bottom-color: var(--brand-alusso); }
.p-pin { font: 500 22px/1 var(--font-mono) !important; letter-spacing: .4em; }
.p-survey { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); padding: var(--s-4); border: 1px solid var(--line); border-radius: var(--r-m); background: var(--accent-tint); color: var(--ink); text-decoration: none; }
.p-survey:hover { border-color: var(--accent); }
.p-survey b { display: block; font-weight: 600; }
.p-survey small { display: block; margin-top: 2px; color: var(--ink-2); font-size: 13px; line-height: 18px; }
.p-survey > span:last-child { font-size: 20px; color: var(--accent-strong); }

/* hasło tymczasowe do przekazania */
.p-secret { display: grid; gap: var(--s-2); margin-top: var(--s-3); }
.p-secret__row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); }
.p-secret code { padding: 8px 12px; border: 1px dashed var(--accent); border-radius: var(--r-m); background: var(--accent-tint); font: 500 17px/24px var(--font-mono); color: var(--ink); user-select: all; overflow-wrap: anywhere; }

/* plan prac na pulpicie */
.p-plan { margin: 0; padding: 0; list-style: none; }
.p-plan__item { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; gap: var(--s-3); align-items: center; padding: var(--s-3) var(--s-5); border-top: 1px solid var(--line); }
.p-plan__item p { margin: 0; }
.p-plan__item b { display: block; font-weight: 600; color: var(--ink); }
.p-plan__item p span { display: block; font-size: 13px; line-height: 18px; color: var(--ink-2); }
.p-plan__n { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--line-strong); font: 500 12px/1 var(--font-mono); color: var(--ink-2); }
.p-plan__item--ok .p-plan__n { background: var(--st-ok); border-color: var(--st-ok); color: #fff; }
.p-plan__item--work .p-plan__n { border-color: var(--st-work); color: var(--st-work); }
@media (max-width: 640px) { .p-plan__item { padding: var(--s-3) var(--s-4); grid-template-columns: 28px minmax(0, 1fr); } .p-plan__item .a-pill { grid-column: 2; justify-self: start; } }

/* edycja konta pod wierszem tabeli */
.p-row-edit > td { background: var(--sunk, #f4f6f5); }
.p-edit { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--s-5); padding: var(--s-3) 0; white-space: normal; }
.p-edit__side { display: grid; gap: var(--s-4); align-content: start; }
.p-inline { display: flex; align-items: flex-end; gap: var(--s-3); flex-wrap: wrap; }
.p-inline .a-field { flex: 1 1 140px; }
.p-edit__btns { display: flex; flex-wrap: wrap; gap: var(--s-2); }
@media (max-width: 900px) { .p-edit { grid-template-columns: minmax(0, 1fr); } }

/* strony bez szkieletu: 404, brak sieci */
.p-center { min-height: 100vh; display: grid; place-content: center; justify-items: center; gap: var(--s-4); padding: var(--s-6) var(--s-4); text-align: center; }
.p-center h1 { margin: var(--s-4) 0 0; font: 600 26px/32px var(--font-sans); }
.p-center p { margin: 0; max-width: 40ch; color: var(--ink-2); }

/* --- etap 1: czas pracy --- */

/* dolny pasek na telefonie; pełne menu pod przyciskiem „Menu” */
.p-tabbar { display: none; }
@media (max-width: 900px) {
  .p-tabbar { position: fixed; z-index: 30; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-around; padding: 6px 4px calc(6px + env(safe-area-inset-bottom, 0px)); background: var(--dark); border-top: 1px solid rgba(238, 242, 240, .08); }
  .p-tabbar a, .p-tabbar button { flex: 1 1 0; display: grid; justify-items: center; gap: 3px; padding: 4px 2px; border: 0; border-radius: var(--r-m); background: none; color: var(--on-dark-2); font: 500 11px/14px var(--font-sans); text-decoration: none; cursor: pointer; }
  .p-tabbar svg { width: 22px; height: 22px; }
  .p-tabbar [aria-current], .p-tabbar [aria-expanded="true"] { color: #fff; }
  .p-tabbar [aria-current] svg { color: var(--accent-on-dark); }
  .a-main { padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)); }
  .a-app:not(.is-menu) .a-nav { display: none; }
  .a-app.is-menu .a-nav { display: grid; gap: 2px; }
  .a-app.is-menu .a-nav ul { display: grid; }
  .a-app.is-menu .a-nav a svg { display: block; }
}
.p-offline { margin: 0; padding: 8px var(--a-gut, 16px); background: var(--accent-tint); color: var(--ink); font-size: 13px; }

/* ekran odbić */
.p-punch { display: grid; gap: var(--s-4); justify-items: center; padding: var(--s-6) var(--s-4); margin-bottom: var(--s-5); border-radius: var(--r-l, 12px); background: var(--dark); color: var(--on-dark); text-align: center; }
.p-punch__state { display: flex; align-items: center; gap: 10px; margin: 0; font: 400 11px/16px var(--font-display); letter-spacing: .18em; text-transform: uppercase; color: var(--on-dark-2); }
.p-dot { width: 10px; height: 10px; border-radius: 50%; background: #6b7470; }
.p-punch--work .p-dot { background: #4cc38a; box-shadow: 0 0 0 4px rgba(76, 195, 138, .2); }
.p-punch--break .p-dot { background: var(--accent-on-dark); }
.p-punch__time { margin: 0; color: #fff; }
.p-punch__time b { font: 500 56px/1 var(--font-mono); letter-spacing: -.02em; }
.p-punch__time span { color: var(--on-dark-2); }
.p-punch__off, .p-punch__hint { margin: 0; font-size: 13px; color: var(--accent-on-dark); }
.p-punch__note { width: 100%; max-width: 420px; text-align: left; }
.p-punch__note .a-label { color: var(--on-dark-2); }
.p-punch__btns { display: grid; gap: var(--s-3); width: 100%; max-width: 420px; }
.p-big { min-height: 64px; padding: 14px 20px; border: 1px solid rgba(238, 242, 240, .25); border-radius: 14px; background: rgba(238, 242, 240, .06); color: #fff; font: 600 19px/1.2 var(--font-sans); cursor: pointer; touch-action: manipulation; }
.p-big--go { background: var(--brand-alusso); border-color: var(--brand-alusso); color: #15120d; }
.p-big--stop { background: transparent; }
.p-big:disabled { opacity: .5; cursor: wait; }
.p-big:active:not(:disabled) { transform: scale(.98); }

/* lista odbić */
.p-events { margin: 0; padding: 0; list-style: none; }
.p-events li { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: var(--s-3); align-items: center; padding: 10px var(--s-5); border-top: 1px solid var(--line); }
.p-events time { font: 500 15px/20px var(--font-mono); color: var(--ink); }
.p-events small { display: block; color: var(--ink-3); font-size: 12.5px; line-height: 17px; }
.p-events__tags { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; align-items: center; }
.p-events .is-void { opacity: .55; }
.p-events .is-void > span:first-of-type { text-decoration: line-through; }
.p-events .is-queued { background: var(--accent-tint); }
.p-anomaly { margin: 0; padding: 10px var(--s-5); border-top: 1px solid var(--line); color: var(--st-bad); font-size: 13px; }
@media (max-width: 640px) { .p-events li { padding: 10px var(--s-4); grid-template-columns: 48px minmax(0, 1fr); } .p-events__tags { grid-column: 2; justify-content: flex-start; } }

/* miesiąc */
.p-month { width: auto !important; min-width: 0; padding: 6px 10px !important; font: 500 14px/20px var(--font-mono) !important; }
.p-head-tools { display: flex; gap: var(--s-2); align-items: center; flex-wrap: wrap; }
.p-totals { display: flex; flex-wrap: wrap; gap: var(--s-3) var(--s-6); margin: 0; padding: var(--s-4) var(--s-5); border-top: 1px solid var(--line); }
.p-totals div { display: grid; gap: 2px; }
.p-totals dt { font: 400 9.5px/14px var(--font-display); letter-spacing: .16em; text-transform: uppercase; color: var(--ink-3); }
.p-totals dd { margin: 0; font: 500 20px/26px var(--font-mono); color: var(--ink); }
.p-totals dd small { font-size: 12px; color: var(--ink-3); }
.p-totals .is-bad dd { color: var(--st-bad); }
.p-month-table tr.is-free td:first-child b { color: var(--st-bad); }
.p-month-table tr.is-free td { background: rgba(0, 0, 0, .018); }
.p-month-table tr.is-bad td:first-child { box-shadow: inset 3px 0 0 var(--st-bad); }
.p-day { display: grid; gap: var(--s-3); padding: var(--s-2) 0; white-space: normal; }
.p-day .p-events li { padding-left: 0; padding-right: 0; }
.p-correct { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; padding-top: var(--s-3); border-top: 1px dashed var(--line); }
.p-correct .a-label { flex-basis: 100%; margin: 0; }
.p-correct input:not([type]) { flex: 1 1 220px; }
.p-radios { display: grid; gap: var(--s-3); margin-bottom: var(--s-4); }
.p-radios b { display: block; }
.p-radios .a-hint { display: block; margin-top: 2px; }

/* kod QR hali: na ekranie i do druku (A4, sam kod) */
.p-qr { display: grid; gap: var(--s-4); justify-items: center; text-align: center; }
.p-qr__print { display: grid; gap: var(--s-3); justify-items: center; }
.p-qr__print h2 { margin: var(--s-2) 0 0; font: 600 24px/30px var(--font-sans); }
.p-qr__code { width: min(320px, 80vw); }
.p-qr__code svg { display: block; width: 100%; height: auto; }
.p-qr__print p { max-width: 42ch; margin: 0; color: var(--ink-2); }
@media print {
  .p-noprint, .a-side, .a-top, .p-tabbar, .p-offline, .a-alert { display: none !important; }
  .a-app { display: block; }
  .a-page { padding: 0; }
  .p-qr { border: 0; box-shadow: none; }
  .p-qr__code { width: 12cm; }
  .p-qr__print h2 { font-size: 28pt; line-height: 1.2; }
  .p-qr__print p { font-size: 14pt; }
}

/* --- etap 2: klienci --- */
.p-filters { display: flex; flex-wrap: wrap; gap: var(--s-3); align-items: center; padding: var(--s-4) var(--s-5); border-bottom: 1px solid var(--line); }
.p-filters .a-search { flex: 1 1 280px; }
.p-filters select { width: auto; }
.p-list { margin: 0; padding: 0; list-style: none; }
.p-list li { display: flex; justify-content: space-between; gap: var(--s-3); align-items: flex-start; padding: 12px var(--s-5); border-top: 1px solid var(--line); }
.p-list b { display: block; font-weight: 600; color: var(--ink); }
.p-list small { display: block; margin-top: 2px; color: var(--ink-3); font-size: 12.5px; line-height: 17px; }
.p-subform { padding: var(--s-4) var(--s-5); border-top: 1px solid var(--line); background: var(--sunk, #f4f6f5); }
.p-note-form { display: grid; gap: var(--s-2); justify-items: start; padding: var(--s-4) var(--s-5); border-top: 1px solid var(--line); }
.p-note-form textarea { width: 100%; }
.p-pre { white-space: pre-wrap; }
.p-cform { display: grid; gap: var(--s-4); }
.p-cform .p-inline input { flex: 1 1 200px; }
@media (max-width: 640px) { .p-list li, .p-subform, .p-note-form, .p-filters { padding-left: var(--s-4); padding-right: var(--s-4); } .p-list li { flex-direction: column; } }
.p-filters .a-check { display: inline-flex; align-items: center; gap: 8px; }
.p-nowrap { white-space: nowrap; }
.p-notes { margin: 0; padding: 0; list-style: none; }
.p-notes li { padding: 12px var(--s-5); border-top: 1px solid var(--line); }
.p-notes p { margin: 0; }
.p-notes__meta { display: flex; justify-content: space-between; gap: var(--s-3); margin-bottom: 4px !important; font-size: 13px; }
.p-notes__meta time { color: var(--ink-3); font: 400 12px/18px var(--font-mono); }
@media (max-width: 640px) { .p-notes li { padding-left: var(--s-4); padding-right: var(--s-4); } }

/* --- etap 3: zamówienia --- */
.p-ink { color: var(--ink); font-weight: 500; }
.p-late, .p-bad { color: var(--st-bad); }
.p-num { text-align: right; }
.p-show-sm { display: none; }
.p-h1-sub { font-weight: 400; color: var(--ink-2); }
.p-orders tr.is-late td:first-child { box-shadow: inset 3px 0 0 var(--st-bad); }
.p-orders td { vertical-align: top; }
.p-oform { display: grid; gap: var(--s-5); }
.p-picked { display: flex; justify-content: space-between; align-items: center; gap: var(--s-3); padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--r-m, 8px); background: var(--sunk, #f4f6f5); }
.p-picked b, .p-picker__list b { display: block; font-weight: 600; color: var(--ink); }
.p-picked small, .p-picker__list small { display: block; color: var(--ink-3); font-size: 12.5px; }
.p-picker__row { display: flex; gap: var(--s-2); align-items: center; }
.p-picker__row input { flex: 1 1 auto; min-width: 0; }
.p-picker__list { margin: 6px 0 0; padding: 0; list-style: none; border: 1px solid var(--line); border-radius: var(--r-m, 8px); max-height: 300px; overflow-y: auto; }
.p-picker__list li { border-top: 1px solid var(--line); }
.p-picker__list li:first-child { border-top: 0; }
.p-picker__list li.a-muted { padding: 10px 12px; }
.p-picker__list button { display: block; width: 100%; padding: 9px 12px; border: 0; background: none; text-align: left; font: inherit; cursor: pointer; }
.p-picker__list button:hover, .p-picker__list button:focus-visible { background: var(--accent-tint); }

/* pozycje: wiersze siatką, na telefonie dwie linie z podpisami */
.p-items { border: 1px solid var(--line); border-radius: var(--r-l); overflow: hidden; }
.p-item { display: grid; grid-template-columns: minmax(0, 1fr) 76px 66px 104px 64px 72px 104px 30px; gap: 8px; align-items: center; padding: 8px var(--s-4); border-top: 1px solid var(--line); }
.p-item:first-child { border-top: 0; }
.p-item--head { background: var(--sunk, #f4f6f5); font: 400 9.5px/14px var(--font-display); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-3); }
.p-item label { display: block; min-width: 0; }
.p-item label > span { display: none; }
.p-item input, .p-item select { width: 100%; min-width: 0; }
.p-item__val { text-align: right; font-size: 14px; }
.p-item__del { font-size: 18px; line-height: 1; padding: 4px; }
.p-items__foot { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--s-4); flex-wrap: wrap; padding: var(--s-3) var(--s-4); border-top: 1px solid var(--line); background: var(--sunk, #f4f6f5); }
.a-card--flush > .p-items__foot { padding: var(--s-3) var(--s-5); }
.p-sum { display: grid; gap: 2px; margin: 0 0 0 auto; min-width: 220px; }
.p-sum > div { display: flex; justify-content: space-between; gap: var(--s-4); }
.p-sum dt { color: var(--ink-3); font-size: 13px; }
.p-sum dd { margin: 0; font: 500 14px/20px var(--font-mono); font-variant-numeric: tabular-nums; }
.p-sum__rate dd { color: var(--ink-3); font-size: 12px; }
.p-sum__gross { padding-top: 4px; border-top: 1px solid var(--line); }
.p-sum__gross dd { font-size: 17px; color: var(--ink); }
@media (max-width: 900px) {
  .p-item { grid-template-columns: repeat(3, minmax(0, 1fr)) 30px; grid-template-areas: "desc desc desc del" "qty unit price price" "disc vat val val"; row-gap: 6px; }
  .p-item--head { display: none; }
  .p-item:nth-child(2) { border-top: 0; }
  .p-item label > span { display: block; font-size: 11px; line-height: 15px; color: var(--ink-3); }
  .p-item__desc { grid-area: desc; } .p-item__qty { grid-area: qty; } .p-item__unit { grid-area: unit; } .p-item__price { grid-area: price; }
  .p-item__disc { grid-area: disc; } .p-item__vat { grid-area: vat; } .p-item__val { grid-area: val; align-self: end; padding-bottom: 8px; } .p-item__del { grid-area: del; align-self: end; }
}

/* karta */
.p-balance { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-3); margin: 0; padding: var(--s-4) var(--s-5); }
.p-balance div { display: grid; gap: 2px; }
.p-balance dt { font: 400 9.5px/14px var(--font-display); letter-spacing: .14em; text-transform: uppercase; color: var(--ink-3); }
.p-balance dd { margin: 0; font: 500 16px/22px var(--font-mono); font-variant-numeric: tabular-nums; }
.p-balance .is-due dd { color: var(--st-bad); }
.p-balance .is-ok dd { color: var(--st-ok); }
.p-file { position: relative; overflow: hidden; cursor: pointer; }
.p-file input { position: absolute; inset: 0; opacity: 0; cursor: pointer; font-size: 0; }
.p-file:focus-within { outline: 2px solid var(--brand-alusso); outline-offset: 2px; }
.p-busy { margin: 0; padding: 10px var(--s-5); background: var(--accent-tint); font-size: 13px; }
.p-pc { flex-wrap: nowrap; gap: var(--s-2); }
.p-pc input:first-child { flex: 0 0 92px; width: 92px; }
.p-pc input:last-child { flex: 1 1 auto; min-width: 0; }
.p-tiles { margin-bottom: var(--s-5); grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.p-tiles .a-kpi__value { font-size: 26px; line-height: 32px; }
.p-kpi--bad { --kpi: var(--st-bad); }
.p-kpi--bad .a-kpi__value { color: var(--st-bad); }

/* kalendarz */
.p-week { align-items: center; }
.p-push { margin-left: auto; }
.p-cal { margin: 0; padding: 0; list-style: none; }
.p-cal__day { padding: var(--s-3) var(--s-5); border-top: 1px solid var(--line); }
.p-cal__day:first-child { border-top: 0; }
.p-cal__day.is-weekend { background: rgba(0, 0, 0, .015); }
.p-cal__day.is-today { box-shadow: inset 3px 0 0 var(--brand-alusso); }
.p-cal__date { display: flex; align-items: center; gap: var(--s-2); margin: 0 0 6px; font: 600 14px/20px var(--font-sans); color: var(--ink); }
.p-cal__none { margin: 0; color: var(--ink-3); font-size: 13px; }
.p-cal__list { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--s-2); }
.p-cal__item { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: var(--s-3); padding: 8px 0; border-top: 1px dashed var(--line); }
.p-cal__item:first-child { border-top: 0; padding-top: 0; }
.p-cal__item time { font-size: 15px; line-height: 22px; color: var(--ink); }
.p-cal__item p { margin: 0; overflow-wrap: anywhere; }
.p-cal__head { line-height: 22px; }
@media (max-width: 640px) {
  .p-show-sm { display: block; }
  .p-balance { padding-left: var(--s-4); padding-right: var(--s-4); }
  .p-balance dd { font-size: 14px; }
  .p-cal__day { padding-left: var(--s-4); padding-right: var(--s-4); }
  .p-cal__item { grid-template-columns: 44px minmax(0, 1fr); gap: var(--s-2); }
  .p-items__foot, .a-card--flush > .p-items__foot { padding-left: var(--s-4); padding-right: var(--s-4); }
  .p-sum { min-width: 0; width: 100%; }
  .p-item { padding-left: var(--s-3); padding-right: var(--s-3); }
}
.p-ofilters .a-check input { min-width: 0; }
@media (max-width: 640px) { .p-ofilters select { flex: 1 1 140px; min-width: 0; } .p-orders td:first-child { min-width: 0; } }

/* --- import klientów i RODO --- */
.p-imp-file { margin: 0; overflow-wrap: anywhere; }
.p-imp-map select { width: 100%; min-width: 0; }
.p-imp-map td:last-child { width: 44%; }
.p-imp-ex { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-imp-ex--sm { display: none; }
.p-imp-sample { padding: var(--s-3) var(--s-5); border-top: 1px solid var(--line); }
.p-imp-sample summary { cursor: pointer; font-size: 13px; color: var(--ink-2); }
.p-imp-sample .a-table-wrap { margin-top: var(--s-3); max-height: 360px; overflow: auto; }
.p-imp-sample td { white-space: nowrap; }
.p-imp-opts { display: grid; gap: var(--s-3); padding: var(--s-4) var(--s-5); border-top: 1px solid var(--line); }
.p-imp-kpis { margin: 0; padding: var(--s-4) var(--s-5); }
.p-imp-sub { border-top: 1px solid var(--line); }
.p-imp-errs { max-height: 420px; overflow: auto; }
.p-imp-pad { padding: var(--s-3) var(--s-5); }
.p-rodo { display: grid; gap: var(--s-3); }
.p-rodo input { max-width: 260px; }
@media (max-width: 640px) {
  .p-imp-ex--sm { display: block; max-width: 150px; }
  .p-imp-map { table-layout: fixed; width: 100%; }
  .p-imp-map th { white-space: normal; }
  .p-imp-map td:first-child { overflow-wrap: anywhere; }
  .p-imp-map td:last-child, .p-imp-map th:last-child { width: 55%; }
  .p-imp-kpis { padding: var(--s-3); }
  .p-imp-kpis .a-kpi { padding: var(--s-3) var(--s-4); }
  .p-imp-kpis .a-kpi__value { font-size: 22px; line-height: 28px; }
}

/* --- etap 2: oferty i cennik --- */
.p-items__add { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: flex-start; flex: 1 1 260px; min-width: 0; }
.p-pricepick { flex: 1 1 100%; min-width: 0; }
.p-offer-actions { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0 0; }
.p-offer-link { display: grid; gap: 6px; margin-top: var(--s-4); }
.p-offer-link input { width: 100%; min-width: 0; font: 12.5px/1.4 var(--font-mono); }
.p-offer-cancel { margin: var(--s-4) 0 0; text-align: right; }
.p-off td { opacity: .55; }
.p-howto p { max-width: 72ch; }
.p-code { margin: var(--s-3) 0; padding: 10px 12px; border-radius: var(--r-m, 8px); background: var(--sunk, #f4f6f5); font: 13px/1.55 var(--font-mono); white-space: pre; overflow-x: auto; }
.p-impsum { display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-5); margin: var(--s-4) 0; padding: 0; list-style: none; }
.p-imperr { margin: var(--s-3) 0; padding-left: 18px; color: var(--st-bad); font-size: 13px; }
.p-todo { padding: 0 3px; border-radius: 2px; background: #fdecea; color: #b4231a; font-style: italic; }

/* dokument oferty (A4): wydruk w panelu i strona dla klienta */
.p-docbody { background: var(--sunk, #eef0ef); }
.p-docpage { max-width: 210mm; margin: 0 auto; padding: 16px 16px 48px; }
.p-pub__bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); margin-bottom: var(--s-3); }
.p-pub__logo { height: 28px; width: auto; max-width: 50%; }
.p-pub__status .a-alert { margin: 0 0 var(--s-3); }
.p-pub__msg { max-width: 560px; margin: 12vh auto; padding: 0 16px; }
.p-pub__decide { margin-top: var(--s-4); padding: var(--s-5); border: 1px solid var(--line); border-radius: var(--r-l); background: var(--surface, #fff); }
.p-pub__decide h2 { margin: 0 0 var(--s-3); font-size: 18px; }
.p-doc { --doc-acc: var(--brand-alusso); --doc-mute: #646966; padding: 14mm 14mm 10mm; border-radius: 4px; background: #fff; color: #1a1a18;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .08); font: 400 10.5pt/1.45 var(--font-sans); }
.p-doc--szklarz { --doc-acc: var(--brand-szklarz); }
.p-doc p { margin: 0; }
.p-doc__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding-bottom: 5mm; border-bottom: 2px solid var(--doc-acc); }
.p-doc__logo { display: block; width: 60mm; max-width: 55%; height: auto; }
.p-doc--szklarz .p-doc__logo { width: auto; height: 20mm; }
.p-doc__meta { text-align: right; }
.p-doc__kind { font: 600 8.5pt/1.3 var(--font-display); letter-spacing: .14em; text-transform: uppercase; color: var(--doc-acc); }
.p-doc__draft { color: #b4231a; }
.p-doc__no { font: 600 15pt/1.35 var(--font-mono); }
.p-doc__no small { font-size: 9pt; font-weight: 400; color: var(--doc-mute); }
.p-doc__parties { display: grid; grid-template-columns: 1fr 1fr; gap: 8mm; margin: 6mm 0; }
.p-doc h3 { margin: 0 0 4px; font: 600 7.5pt/1.3 var(--font-display); letter-spacing: .14em; text-transform: uppercase; color: var(--doc-mute); }
.p-doc__title { margin: 0 0 4mm; font: 600 15pt/1.3 var(--font-sans); color: #1a1a18; }
.p-doc__table { width: 100%; border-collapse: collapse; font-size: 9.5pt; }
.p-doc__table th { padding: 4px 6px; border-bottom: 1px solid #1a1a18; font-size: 7.5pt; font-weight: 600; text-align: left; color: var(--doc-mute); }
.p-doc__table td { padding: 5px 6px; border-bottom: 1px solid #dcdfdd; vertical-align: top; }
.p-doc .p-num { text-align: right; font-variant-numeric: tabular-nums; }
.p-doc__lp { width: 7mm; color: var(--doc-mute); }
.p-doc__m { display: none; }
.p-doc__sums { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 6mm; margin: 5mm 0; break-inside: avoid; }
.p-doc__vat { border-collapse: collapse; font-size: 9pt; }
.p-doc__vat th, .p-doc__vat td { padding: 2px 8px; text-align: left; }
.p-doc__vat thead th { font-size: 7.5pt; font-weight: 600; color: var(--doc-mute); border-bottom: 1px solid #dcdfdd; }
.p-doc__vat tfoot th, .p-doc__vat tfoot td { border-top: 1px solid #1a1a18; font-weight: 600; }
.p-doc__total { text-align: right; }
.p-doc__total span { display: block; font-size: 8.5pt; color: var(--doc-mute); }
.p-doc__total b { font: 600 17pt/1.2 var(--font-mono); }
.p-doc__terms { display: grid; gap: 1.5mm; margin: 0 0 4mm; padding: 3mm 0; border-top: 1px solid #dcdfdd; break-inside: avoid; }
.p-doc__terms > div { display: grid; grid-template-columns: 40mm minmax(0, 1fr); gap: 4mm; }
.p-doc__terms dt { color: var(--doc-mute); }
.p-doc__terms dd { margin: 0; }
.p-doc__notes { break-inside: avoid; }
.p-doc__foot { margin-top: 10mm; padding-top: 3mm; border-top: 1px solid #dcdfdd; font-size: 8pt; text-align: center; color: var(--doc-mute); }
@media (max-width: 640px) {
  .p-docpage { padding: 12px 12px 32px; }
  .p-doc { padding: 16px; font-size: 14px; }
  .p-doc__head { flex-direction: column; gap: 10px; }
  .p-doc__meta { text-align: left; }
  .p-doc--alusso .p-doc__logo { width: 170px; max-width: 100%; }
  .p-doc--szklarz .p-doc__logo { height: 60px; }
  .p-doc__parties { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .p-doc__c { display: none; }
  .p-doc__m { display: block; font-size: 12px; color: var(--doc-mute); }
  .p-doc__table { font-size: 13px; }
  .p-doc__sums { flex-direction: column; align-items: stretch; }
  .p-doc__vat { width: 100%; }
  .p-doc__terms > div { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .p-pub__decide { padding: var(--s-4); }
}
@page { size: A4; margin: 12mm; }
@media print {
  .p-docbody { background: #fff; }
  .p-docpage { max-width: none; margin: 0; padding: 0; }
  .p-doc { padding: 0; border-radius: 0; box-shadow: none; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .p-doc__table thead { display: table-header-group; }
  .p-doc__table tr { break-inside: avoid; }
  .p-todo { background: none; }
}

/* --- produkcja --- */
.p-ph { margin: var(--s-6) 0 var(--s-3); font: 600 16px/22px var(--font-sans); color: var(--ink); }
.p-pad { margin: 0; padding: var(--s-3) var(--s-5) 0; }
.p-pactive { display: grid; gap: 6px; margin: 0 0 var(--s-4); padding: var(--s-4) var(--s-5); border-radius: var(--r-l, 12px); background: var(--dark); color: var(--on-dark); }
.p-pactive p { margin: 0; }
.p-pactive a { color: var(--accent-on-dark, #cdae7b); }
.p-pactive__label { display: flex; align-items: center; gap: 10px; font: 400 11px/16px var(--font-display); letter-spacing: .14em; text-transform: uppercase; color: var(--on-dark-2); }
.p-pactive .p-dot { background: #4cc38a; box-shadow: 0 0 0 4px rgba(76, 195, 138, .2); }
.p-pactive__task { font-size: 20px; line-height: 26px; color: #fff; }
.p-pactive__meta { color: var(--on-dark-2); }
.p-pactive .p-big { margin-top: var(--s-2); }
.p-pactive--off { display: block; background: var(--surface); border: 1px dashed var(--line-strong); color: var(--ink-2); }
.p-tasks { display: grid; gap: var(--s-3); margin: 0; padding: 0; list-style: none; }
.p-tasks--wide { grid-template-columns: repeat(auto-fill, minmax(min(100%, 380px), 1fr)); }
.p-task { display: grid; gap: 8px; padding: var(--s-4); border: 1px solid var(--line); border-left: 4px solid var(--st-new); border-radius: var(--r-l, 12px); background: var(--surface); }
.p-task p { margin: 0; }
.p-task--working { border-left-color: var(--st-work); }
.p-task--problem { border-left-color: var(--st-bad); }
.p-task--paused { border-left-color: var(--line-strong); }
.p-task--done { border-left-color: var(--st-ok); opacity: .75; }
.p-task.is-mine { box-shadow: 0 0 0 2px var(--st-work); }
.p-task__head { display: flex; justify-content: space-between; align-items: flex-start; gap: var(--s-3); }
.p-task__op { font-size: 18px; line-height: 24px; color: var(--ink); overflow-wrap: anywhere; }
.p-task__op span { color: var(--ink-2); }
.p-task__meta { color: var(--ink-3); font-size: 13.5px; line-height: 20px; overflow-wrap: anywhere; }
.p-task__now { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--st-ok); }
.p-task__now .p-dot { background: #2f9e6a; }
.p-task__problem { padding: 8px 10px; border-radius: 8px; background: color-mix(in srgb, var(--st-bad) 8%, var(--surface)); color: var(--st-bad); font-size: 14px; }
.p-task__form { display: grid; gap: var(--s-2); }
.p-task__form textarea { width: 100%; }
.p-task__btns { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: var(--s-2); margin-top: 4px; }
.p-task__btns input[type="date"] { min-height: 52px; }
.p-pbtn { min-height: 52px; padding: 10px 14px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface); color: var(--ink); font: 600 17px/1.2 var(--font-sans); cursor: pointer; touch-action: manipulation; }
.p-pbtn--go { background: var(--brand-alusso); border-color: var(--brand-alusso); color: #15120d; }
.p-pbtn--stop { background: var(--dark); border-color: var(--dark); color: #fff; }
.p-pbtn--ok { border-color: var(--st-ok); color: var(--st-ok); }
.p-pbtn--bad { background: var(--st-bad); border-color: var(--st-bad); color: #fff; }
.p-pbtn:disabled { opacity: .5; cursor: wait; }
.p-pbtn:active:not(:disabled) { transform: scale(.98); }
.p-stlinks { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0 0; padding: 0; list-style: none; }
.p-stlinks a { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); color: var(--ink); text-decoration: none; }
.p-stlinks b { min-width: 20px; padding: 0 6px; border-radius: 10px; background: var(--sunk); font: 500 11px/19px var(--font-mono); text-align: center; }
.p-zl-grid { margin-top: var(--s-5); }
.p-zl-desc { margin: 0; padding: var(--s-3) var(--s-5) var(--s-4); border-top: 1px solid var(--line); color: var(--ink-2); }
.p-pfiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: var(--s-3); margin: 0; padding: var(--s-4) var(--s-5); list-style: none; }
.p-pfiles a { display: grid; gap: 6px; color: var(--ink); text-decoration: none; font-size: 12.5px; line-height: 17px; overflow-wrap: anywhere; }
.p-pfiles img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border: 1px solid var(--line); border-radius: 8px; background: var(--sunk); }
.p-pfiles__ext { display: grid; place-items: center; aspect-ratio: 4 / 3; border: 1px solid var(--line); border-radius: 8px; background: var(--sunk); font: 600 15px/1 var(--font-mono); text-transform: uppercase; color: var(--ink-2); }
.p-board-tools { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--s-3); margin-bottom: var(--s-4); }
.p-board { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(260px, 1fr); gap: var(--s-3); overflow-x: auto; padding-bottom: var(--s-3); }
.p-board__col { min-width: 0; padding: var(--s-3); border-radius: var(--r-l, 12px); background: var(--sunk); }
.p-board__col h2 { display: flex; justify-content: space-between; gap: 8px; margin: 0 0 var(--s-3); font: 600 14px/20px var(--font-sans); }
.p-board__col h2 a { color: var(--ink); }
.p-board__col h2 b { font: 500 12px/20px var(--font-mono); color: var(--ink-2); }
.p-board__col ul { display: grid; gap: var(--s-2); margin: 0; padding: 0; list-style: none; }
.p-bcard { display: grid; gap: 4px; padding: 10px 12px; border: 1px solid var(--line); border-left: 3px solid var(--line-strong); border-radius: 8px; background: var(--surface); font-size: 13px; line-height: 18px; }
.p-bcard p { margin: 0; overflow-wrap: anywhere; }
.p-bcard b { color: var(--ink); font-size: 14px; }
.p-bcard.is-late { border-left-color: var(--st-bad); }
.p-bcard.is-bad { border-left-color: var(--st-bad); background: color-mix(in srgb, var(--st-bad) 4%, var(--surface)); }
.p-bcard__top { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.p-steps { display: grid; gap: var(--s-2); margin: 0; padding: 0; list-style: none; }
.p-steps li { display: grid; grid-template-columns: 24px 1fr 1fr auto; gap: var(--s-2); align-items: center; }
.p-steps__n { font: 500 12px/1 var(--font-mono); color: var(--ink-3); text-align: right; }
.p-steps__btns { display: flex; gap: 4px; }
@media (max-width: 640px) { .p-steps li { grid-template-columns: 24px 1fr; } .p-steps li > select, .p-steps__btns { grid-column: 2; } }
.p-prod__ready { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); padding: var(--s-3) var(--s-5); border-top: 1px solid var(--line); }
.p-prod__ready .a-alert { margin: 0; }
.p-prod .p-list li { flex-direction: column; gap: 8px; }
.p-prod__acts { align-items: center; }
.p-prod__st { max-width: 120px; padding: 4px 8px; font-size: 13px; }
.p-prod__add { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); padding: var(--s-3) var(--s-5) var(--s-4); border-top: 1px solid var(--line); }
.p-prod__tpl { display: flex; flex-wrap: wrap; gap: var(--s-2); flex: 1 1 320px; min-width: 0; }
.p-prod__tpl select { flex: 1 1 200px; min-width: 0; }
.a-app .p-prod__tpl input { width: 90px; flex: 0 0 90px; }
.p-prod__time { border-top: 1px solid var(--line); }
@media (max-width: 640px) { .p-prod__ready, .p-prod__add { padding-left: var(--s-4); padding-right: var(--s-4); } }
/* karta zlecenia (A4) */
.p-kz h3 { margin-top: 5mm; }
.p-kz__top { display: grid; grid-template-columns: 1fr 34mm; gap: 8mm; align-items: start; margin: 6mm 0 2mm; }
.p-kz__qr { margin: 0; text-align: center; }
.p-kz__qr svg { display: block; width: 34mm; height: 34mm; }
.p-kz__qr figcaption { margin-top: 2mm; font-size: 7pt; line-height: 1.3; color: var(--doc-mute); }
.p-kz__tasks td { height: 9mm; vertical-align: middle; }
.p-kz__box { display: inline-block; width: 5mm; height: 5mm; border: 1.3px solid #1a1a18; border-radius: 1px; vertical-align: middle; }
.p-kz__box.is-done { background: linear-gradient(45deg, transparent 45%, #1a1a18 45% 55%, transparent 55%), linear-gradient(-45deg, transparent 45%, #1a1a18 45% 55%, transparent 55%); }
.p-kz__sign { width: 30mm; }
.p-kz__notes { height: 30mm; border: 1px solid #dcdfdd; border-radius: 2px; background: repeating-linear-gradient(transparent 0 7.4mm, #e6e9e7 7.4mm 7.5mm); }
.p-kz__url { margin-top: 4mm !important; font: 7pt/1.3 var(--font-mono); color: var(--doc-mute); }
@media (max-width: 640px) { .p-kz { padding: 16px; } .p-kz__top { grid-template-columns: 1fr; } .p-kz__tasks { display: block; overflow-x: auto; } }
.p-list li.p-off > span:first-child { opacity: .6; }
.p-list li.p-row-edit { display: block; padding: 0; }
/* szeroka tablica przewija się w sobie, nie całą stronę */
.a-page > #widok { min-width: 0; }

/* --- ustawienia firmy i poczta --- */
.p-firm-city { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: var(--s-3); }
.p-firm-logo { display: flex; align-items: center; height: 56px; margin-bottom: var(--s-4); padding: 0 var(--s-4); border: 1px solid var(--line); border-radius: var(--r-m); background: #fff; }
.p-firm-logo img { max-height: 32px; max-width: 220px; }
.p-check { font: 500 12px/16px var(--font-sans); }
.p-check--ok { color: var(--st-ok); }
.p-check--bad { color: var(--st-bad); }
.p-mail-box { padding: 0 var(--s-5); }
.p-mail-box:has(> *) { padding-bottom: var(--s-4); }
.p-mail-tabs { display: flex; flex-wrap: wrap; margin-bottom: var(--s-4); }
.p-mail-tabs .p-count { margin-left: 6px; padding: 0 6px; border-radius: 9px; background: var(--line); font-size: 12px; }
.p-mail-acts { white-space: nowrap; text-align: right; }
.p-mail-acts .a-btn + .a-btn { margin-left: 6px; }
.p-mail-view td { background: color-mix(in srgb, var(--line) 25%, var(--surface)); }
.p-mail-text { margin: var(--s-3) 0 0; padding: var(--s-4); max-height: 420px; overflow: auto; border: 1px solid var(--line); border-radius: var(--r-m);
  background: var(--surface); font: 13px/1.5 var(--font-mono); white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .p-mail-table thead { display: none; }
  .p-mail-table tr { display: grid; grid-template-columns: 1fr auto; }
  .p-mail-table td { border: 0; }
  .p-mail-table td:nth-child(2) { grid-column: 1 / -1; order: -1; }
  .p-mail-table tr.p-mail-view td { grid-column: 1 / -1; }
  .p-mail-acts { grid-column: 1 / -1; text-align: left; }
}
.p-list small.p-late { color: var(--st-bad); }

/* --- monday.com (tylko odczyt) --- */
.p-mnote { margin: 0 0 var(--s-4); padding: 8px 12px; border: 1px solid var(--line); border-radius: var(--r-m); background: var(--surface); font-size: 13px; line-height: 19px; color: var(--ink-2); }
.p-mnote--cal { margin: 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: var(--s-3) var(--s-5); }
.p-mnote__bad { color: var(--st-bad); }
.p-mtag { border-color: #6161ff66; color: #4b4bd6; }
.p-mstatus { display: inline-block; max-width: 100%; padding: 2px 10px; border-radius: 4px; font: 500 12px/18px var(--font-sans); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; }
.p-mpeople { display: inline-flex; flex-wrap: wrap; gap: 4px; }
.p-mperson { padding: 1px 8px; border-radius: 999px; background: var(--accent-tint); font-size: 12px; line-height: 18px; white-space: nowrap; }
.p-mdate { white-space: nowrap; }
.p-msmall { font-size: 12px; }
.p-mpad { padding: var(--s-4) var(--s-5); }
.p-mboards { margin: 0; padding: 0; list-style: none; }
.p-mboard { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1.3fr) auto; gap: var(--s-2) var(--s-4); align-items: center; padding: 12px var(--s-5); border-top: 1px solid var(--line); }
.p-mboard:first-child { border-top: 0; }
.p-mboard.is-gone { opacity: .6; }
.p-mboard__main b { margin-right: 6px; }
.p-mboard__state { display: grid; gap: 2px; justify-items: start; }
.p-mboard__acts { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; justify-content: flex-end; }
.p-mboard__acts select { width: auto; min-width: 0; }
.p-mcal { grid-column: 1 / -1; display: grid; gap: var(--s-3); justify-items: start; padding: var(--s-3); border: 1px dashed var(--line); border-radius: var(--r-m); background: var(--sunk, #f4f6f5); }
.p-mcal__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--s-3); width: 100%; }
.p-mfilters select { width: auto; max-width: 100%; }
.p-mgroup { --g: #c4c4c4; border-top: 1px solid var(--line); }
.p-mgroup__head { display: flex; align-items: center; gap: var(--s-2); width: 100%; padding: 10px var(--s-5); border: 0; background: none; font: 600 14px/20px var(--font-sans); color: var(--g); text-align: left; cursor: pointer; }
.p-mgroup__head .a-muted { font-weight: 400; }
.p-mgroup__chev { width: 14px; }
.p-mtable { border-left: 4px solid var(--g); }
.p-mtable th { white-space: nowrap; }
.p-mtable td { vertical-align: middle; }
.p-mtable__name { min-width: 200px; max-width: 340px; }
.p-mtable .p-mt--text, .p-mtable .p-mt--long_text { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-mtable .p-mt--numbers { text-align: right; white-space: nowrap; }
.p-mtable tr.is-deleted td { color: var(--ink-3); text-decoration: line-through; }
.p-mname { font-weight: 600; color: var(--ink); text-decoration: none; }
.p-mname:hover { text-decoration: underline; }
.p-msubbtn { padding: 0 6px; border: 1px solid var(--line); border-radius: 4px; background: var(--surface); font: 500 12px/20px var(--font-mono); color: var(--ink-2); cursor: pointer; white-space: nowrap; }
.p-msubrow td { background: var(--a-row); }
.p-msublist { margin: 0; padding: 0 0 0 var(--s-4); display: grid; gap: 4px; font-size: 13px; }
.p-mcards { margin: 0; padding: 0; list-style: none; border-left: 4px solid var(--g); }
.p-mcard { display: grid; gap: 6px; padding: 10px var(--s-4); border-top: 1px solid var(--line); }
.p-mcard__top { display: flex; justify-content: space-between; gap: var(--s-2); align-items: flex-start; }
.p-mcard__pills { display: flex; flex-wrap: wrap; gap: 4px; }
.p-mcard__pills:empty { display: none; }
.p-mcard__vals { margin: 0; display: grid; gap: 2px; font-size: 13px; }
.p-mcard__vals > div { display: grid; grid-template-columns: minmax(90px, 2fr) minmax(0, 3fr); gap: var(--s-2); }
.p-mcard__vals dt { color: var(--ink-3); }
.p-mcard__vals dd { margin: 0; overflow-wrap: anywhere; }
.p-drawer { position: fixed; inset: 0; z-index: 60; display: flex; justify-content: flex-end; }
.p-drawer__bg { position: absolute; inset: 0; background: rgba(20, 24, 22, .35); }
.p-drawer__panel { position: relative; width: min(560px, 100%); height: 100%; overflow-y: auto; background: var(--surface); box-shadow: -8px 0 24px rgba(0, 0, 0, .12); }
.p-drawer__bar { position: sticky; top: 0; z-index: 1; display: flex; justify-content: space-between; gap: var(--s-2); padding: 10px var(--s-5); border-bottom: 1px solid var(--line); background: var(--surface); }
.p-mitem__group { display: flex; align-items: center; gap: 6px; margin: 0 0 4px; font-size: 13px; color: var(--ink-3); }
.p-mitem__group i { width: 10px; height: 10px; border-radius: 2px; }
.p-mitem__name { margin: 0 0 var(--s-3); font: 600 20px/26px var(--font-sans); overflow-wrap: anywhere; }
.p-mitem__links { display: flex; gap: var(--s-2); align-items: center; margin: 0 0 var(--s-4); }
.p-mitem .a-dl dd { margin: 0; overflow-wrap: anywhere; }
.p-msubs { border-top: 1px solid var(--line); }
.p-msubs h3, .p-mextras h3 { margin: 0; font: 600 14px/20px var(--font-sans); }
.p-msubs ul { margin: var(--s-2) 0 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.p-mextras { border-top: 1px solid var(--line); }
.p-mextras__head { display: flex; justify-content: space-between; align-items: center; padding: var(--s-4) var(--s-5) 0; }
.p-mfiles { margin: var(--s-3) 0 0; padding: 0 var(--s-5); list-style: none; display: grid; gap: 4px; font-size: 13px; }
.p-mfiles a { overflow-wrap: anywhere; }
.p-mupdates { margin: 0; padding: 0; list-style: none; }
.p-mupdates > li { padding: var(--s-3) var(--s-5); border-top: 1px dashed var(--line); }
.p-mupdates > li:first-child { border-top: 0; }
.p-mupdates__who { margin: 0 0 2px; font-size: 13px; }
.p-mupdates__text { margin: 0; font-size: 14px; line-height: 20px; white-space: pre-wrap; overflow-wrap: anywhere; }
.p-mupdates__reply { margin: var(--s-2) 0 0 var(--s-4); padding-left: var(--s-3); border-left: 2px solid var(--line); }
.p-cal__item--mon { box-shadow: inset 2px 0 0 #6161ff; padding-left: 6px; }
@media (max-width: 900px) {
  .p-mboard { grid-template-columns: minmax(0, 1fr); }
  .p-mboard__acts { justify-content: flex-start; }
  .p-mcal__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .p-mboard, .p-mgroup__head, .p-mpad, .p-mupdates > li, .p-drawer__bar, .p-mnote--cal { padding-left: var(--s-4); padding-right: var(--s-4); }
  .p-mextras__head, .p-mfiles { padding-left: var(--s-4); padding-right: var(--s-4); }
  .p-mcal__grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .p-mfilters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-2); }
  .p-mfilters .a-search, .p-mfilters input[type=search] { grid-column: 1 / -1; max-width: none; }
  .p-mfilters select { width: 100%; }
}

/* --- czas pracy: poprawki pracownika, nieobecności, działy, tablet przy wejściu --- */
.p-was { margin-right: 6px; color: var(--st-bad); text-decoration: line-through; text-decoration-thickness: 2px; opacity: .8; font-weight: 400; }
.p-fixmark { display: inline-block; margin-left: 4px; padding: 0 4px; border-radius: 4px; background: var(--accent-tint); color: var(--accent-strong); font: 600 10px/15px var(--font-sans); vertical-align: 1px; }
.a-tag--fix { border-color: color-mix(in srgb, var(--st-work) 45%, var(--surface)); color: var(--st-work); background: color-mix(in srgb, var(--st-work) 8%, var(--surface)); }
.p-events .is-fixed { background: color-mix(in srgb, var(--st-work) 5%, transparent); }
.p-events .p-fixrow { display: block; padding-top: 0; border-top: 0; }
.p-fix .a-hint { flex-basis: 100%; margin: 0; }
.p-fix input[type=time] { width: 110px; }
.p-fixhint { margin: 0; padding: var(--s-3) var(--s-5); border-top: 1px solid var(--line); }
.p-yesterday { border-color: color-mix(in srgb, var(--st-bad) 40%, var(--line)); }
.p-yesterday .p-correct { border-top: 0; padding-top: 0; }
.p-linkcard { display: grid; gap: 2px; text-decoration: none; color: var(--ink); }
.p-linkcard span { color: var(--ink-3); font-size: 13.5px; }
.p-linkcard:hover { border-color: var(--accent); }
.p-abs { display: inline-block; min-width: 26px; margin-left: 4px; padding: 1px 6px; border-radius: 6px; background: var(--accent-tint); color: var(--accent-strong); font: 600 12.5px/18px var(--font-mono); text-align: center; }
.p-abs--pending { background: transparent; box-shadow: inset 0 0 0 1px var(--accent); }
.p-absline { margin: 0 0 var(--s-3); color: var(--ink-2); }
.p-abslist { margin: 0; padding: 0; list-style: none; }
.p-abslist li { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: var(--s-3); align-items: center; padding: 10px var(--s-5); border-top: 1px solid var(--line); }
.p-abslist small { display: block; color: var(--ink-3); font-size: 12.5px; }
.p-balance { border-top: 0; }
.p-group th { padding-top: 14px; background: var(--paper); font: 600 12px/16px var(--font-display); letter-spacing: .08em; text-transform: uppercase; color: var(--ink-2); text-align: left; }
.p-subtotal td { background: var(--paper); font-weight: 600; }
.p-dep { width: auto; min-width: 160px; }
.p-pad { padding: var(--s-3) var(--s-5); margin: 0; }
.p-limit { width: 64px !important; padding: 4px 6px !important; text-align: right; }
tr.is-reverted td { opacity: .55; }
.p-deps { margin: 0; padding: 0; list-style: none; }
.p-deps li { display: grid; grid-template-columns: minmax(0, 260px) 1fr auto; gap: var(--s-3); align-items: center; padding: 8px var(--s-5); border-top: 1px solid var(--line); }
.p-deps li.is-off input { text-decoration: line-through; color: var(--ink-3); }
.p-cal { border-collapse: collapse; font-size: 12px; min-width: 100%; }
.p-cal th, .p-cal td { border: 1px solid var(--line); padding: 3px 0; min-width: 24px; text-align: center; }
.p-cal tbody th { min-width: 150px; padding: 4px 8px; text-align: left; font-weight: 400; white-space: nowrap; position: sticky; left: 0; background: var(--surface); }
.p-cal .is-free { background: rgba(0, 0, 0, .05); }
.p-cal thead .is-today { background: var(--accent); color: #15120d; }
.p-cal td.has-abs.is-approved { background: var(--accent-tint); color: var(--accent-strong); font-weight: 600; }
.p-cal td.has-abs.is-pending { box-shadow: inset 0 0 0 1px var(--accent); color: var(--ink-2); }
@media (max-width: 640px) {
  .p-abslist li { grid-template-columns: 36px minmax(0, 1fr); padding: 10px var(--s-4); }
  .p-abslist .p-events__tags { grid-column: 2; justify-content: flex-start; }
  .p-deps li { grid-template-columns: minmax(0, 1fr) auto; }
  .p-deps li .a-muted { display: none; }
}

/* tablet przy wejściu (/kiosk/): ciemny pełny ekran, duże pola dotyku */
.k-body { margin: 0; min-height: 100vh; background: var(--dark); color: var(--on-dark); font-family: var(--font-sans); }
.k-boot { padding: 40px; text-align: center; }
.k-app { display: flex; flex-direction: column; min-height: 100vh; user-select: none; -webkit-user-select: none; }
.k-top { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 16px; padding: 14px 24px; border-bottom: 1px solid rgba(238, 242, 240, .12); }
.k-top img { filter: invert(1) brightness(1.6); }
.k-clock { display: grid; justify-items: center; }
.k-clock b { font: 500 56px/1 var(--font-mono); letter-spacing: .02em; }
.k-clock span { margin-top: 4px; color: rgba(238, 242, 240, .65); font-size: 15px; }
.k-tools { display: flex; gap: 8px; justify-content: flex-end; align-items: center; }
.k-off { padding: 4px 10px; border-radius: 99px; background: rgba(255, 190, 80, .18); color: #ffd58a; font-size: 13px; }
.k-fs { width: 44px; height: 44px; border: 1px solid rgba(238, 242, 240, .2); border-radius: 10px; background: transparent; color: inherit; font-size: 20px; }
.k-note { margin: 0; padding: 10px 24px; background: rgba(220, 70, 60, .25); }
.k-start, .k-act, .k-pin { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 20px 24px 28px; gap: 16px; }
.k-app h1 { margin: 6px 0 0; font: 500 30px/1.2 var(--font-display); color: #fff; }
.k-search { display: grid; gap: 10px; width: 100%; max-width: 900px; }
.k-search input { box-sizing: border-box; width: 100%; padding: 14px 18px; border: 1px solid rgba(238, 242, 240, .25); border-radius: 12px; background: rgba(238, 242, 240, .06); color: #fff; font-size: 20px; }
.k-deps { display: flex; flex-wrap: wrap; gap: 8px; }
.k-deps button { min-height: 44px; padding: 8px 16px; border: 1px solid rgba(238, 242, 240, .25); border-radius: 99px; background: transparent; color: inherit; font-size: 16px; }
.k-deps .is-on { background: var(--brand-alusso); border-color: var(--brand-alusso); color: #15120d; font-weight: 600; }
.k-people { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 10px; width: 100%; max-width: 900px; margin: 0; padding: 0; list-style: none; overflow-y: auto; max-height: calc(100vh - 330px); }
.k-people button { box-sizing: border-box; display: grid; gap: 4px; width: 100%; min-height: 76px; padding: 12px 16px; border: 1px solid rgba(238, 242, 240, .18); border-radius: 14px; background: rgba(238, 242, 240, .06); color: #fff; text-align: left; font-size: 19px; }
.k-people button span { color: rgba(238, 242, 240, .6); font-size: 14px; }
.k-people button:disabled { opacity: .45; }
.k-people button:active:not(:disabled) { background: rgba(238, 242, 240, .16); }
.k-empty { grid-column: 1 / -1; padding: 30px; text-align: center; color: rgba(238, 242, 240, .6); }
.k-state { margin: 0; font-size: 20px; color: rgba(238, 242, 240, .8); }
.k-dots { display: flex; gap: 14px; margin: 6px 0; }
.k-dots i { width: 18px; height: 18px; border: 2px solid rgba(238, 242, 240, .6); border-radius: 50%; }
.k-dots i.is-on { background: #fff; border-color: #fff; }
.k-dots.is-bad i { border-color: #ff8a80; }
.k-keys { display: grid; grid-template-columns: repeat(3, 96px); gap: 12px; }
.k-keys button { height: 76px; border: 1px solid rgba(238, 242, 240, .2); border-radius: 16px; background: rgba(238, 242, 240, .07); color: #fff; font: 500 30px/1 var(--font-mono); touch-action: manipulation; }
.k-keys button:active { background: rgba(238, 242, 240, .2); }
.k-keys .k-key--alt { font-size: 24px; }
.k-keys .k-key--ok { background: var(--brand-alusso); border-color: var(--brand-alusso); color: #15120d; font-weight: 600; }
.k-keys .k-key--ok:disabled { opacity: .4; }
.k-btns { display: grid; gap: 14px; width: 100%; max-width: 520px; margin-top: 10px; }
.k-btns .p-big { min-height: 88px; font-size: 24px; }
.k-back { margin-top: auto; min-height: 48px; padding: 8px 20px; border: 0; background: transparent; color: rgba(238, 242, 240, .7); font-size: 17px; text-decoration: underline; }
.k-done { flex: 1; display: grid; place-content: center; gap: 14px; padding: 40px; text-align: center; }
.k-done p { margin: 0; max-width: 760px; font: 500 32px/1.3 var(--font-display); color: #fff; }
.k-done span { color: rgba(238, 242, 240, .6); }
.k-done a { color: inherit; }
.k-done--ok p::before { content: '✓'; display: block; margin-bottom: 8px; color: #4cc38a; font-size: 64px; }
.k-done--bad p { color: #ffb4ab; }
.k-done--warn p { color: #ffd58a; }
@media (max-height: 700px) { .k-clock b { font-size: 40px; } .k-keys button { height: 62px; } }
.p-events .is-fixed time { display: grid; line-height: 18px; }
.p-events .is-fixed .p-was { margin: 0; font-size: 13px; }
.p-abslist li.a-muted { display: block; }
.k-fs { width: auto; padding: 0 12px; font-size: 14px; }
.p-balance { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); }
.p-balance dt { letter-spacing: .08em; }

/* --- monday: archiwum komentarzy i plików --- */
.p-mhtml { white-space: normal; }
.p-mhtml p, .p-mhtml ul, .p-mhtml ol, .p-mhtml blockquote, .p-mhtml pre { margin: 0 0 6px; }
.p-mhtml > :last-child { margin-bottom: 0; }
.p-mhtml ul, .p-mhtml ol { padding-left: 20px; }
.p-mhtml blockquote { padding-left: 10px; border-left: 3px solid var(--line); color: var(--ink-2); }
.p-mhtml pre { white-space: pre-wrap; font: 12.5px/18px var(--font-mono); }
.p-mattach { margin-top: var(--s-2); }
.p-mattach .p-mfiles { margin: 6px 0 0; padding: 0; }
.p-mthumbs { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 6px; }
.p-mthumbs--sm { grid-template-columns: repeat(auto-fill, minmax(72px, 96px)); }
.p-mthumb { display: block; aspect-ratio: 1; padding: 0; border: 1px solid var(--line); border-radius: var(--r-m); background: var(--sunk, #eef1f0); overflow: hidden; cursor: zoom-in; }
.p-mthumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.p-mthumb:hover, .p-mthumb:focus-visible { border-color: var(--ink-3); }
.p-mgallery { padding: var(--s-3) var(--s-5) 0; }
.p-mgallery .p-mattach { margin-top: 0; }
.p-mgallery__title { margin: 0 0 6px; font-size: 13px; font-weight: 600; color: var(--ink-2); }
.p-mupdates { margin-top: var(--s-2); }
.p-mcounts { display: inline-flex; gap: 8px; margin-left: 4px; vertical-align: middle; font: 500 12px/16px var(--font-mono); color: var(--ink-3); white-space: nowrap; }
.p-mcounts > span { display: inline-flex; align-items: center; gap: 2px; }
.p-mcounts svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linejoin: round; stroke-linecap: round; }
.p-mlight { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 16px 56px; }
.p-mlight__bg { position: absolute; inset: 0; border: 0; background: rgba(12, 14, 13, .88); cursor: zoom-out; }
.p-mlight__fig { position: relative; margin: 0; display: grid; gap: 8px; justify-items: center; max-width: 100%; max-height: 100%; }
.p-mlight__fig img { max-width: 100%; max-height: calc(100vh - 110px); object-fit: contain; border-radius: 4px; background: #fff; }
.p-mlight__fig figcaption { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: center; color: #fff; font-size: 13px; }
.p-mlight__fig figcaption .a-muted { color: #c9d0cd; }
.p-mlight__name { overflow-wrap: anywhere; font-weight: 600; }
.p-mlight__nav { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 64px; border: 0; border-radius: 8px; background: rgba(255, 255, 255, .14); color: #fff; font-size: 32px; line-height: 1; cursor: pointer; }
.p-mlight__nav:hover { background: rgba(255, 255, 255, .26); }
.p-mlight__nav--prev { left: 6px; }
.p-mlight__nav--next { right: 6px; }
.p-march { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-4); padding: var(--s-4) var(--s-5); }
.p-march p { margin: 0 0 4px; }
.p-march__label { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--ink-3); }
.p-march__big { font: 600 20px/26px var(--font-sans); }
.p-march__big .a-muted { font-size: 13px; font-weight: 400; }
.p-march__pills { display: flex; flex-wrap: wrap; gap: 4px; }
@media (max-width: 640px) {
  .p-march { grid-template-columns: minmax(0, 1fr); padding: var(--s-4); }
  .p-mgallery { padding-left: var(--s-4); padding-right: var(--s-4); }
  .p-mthumbs { grid-template-columns: repeat(auto-fill, minmax(76px, 1fr)); }
  .p-mlight { padding: 12px; }
  .p-mlight__nav { top: auto; bottom: 12px; transform: none; }
}

/* --- sprzedaż i produkcja wg ankiety --- */
.p-item__extra { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: center; font-size: 12.5px; line-height: 18px; color: var(--ink-3); margin-top: -2px; }
.p-item__cost { display: flex !important; align-items: center; gap: 6px; }
.p-item__cost > span { display: inline !important; font-size: 12px; color: var(--ink-3); white-space: nowrap; }
.p-item__cost input { width: 96px; padding-top: 4px; padding-bottom: 4px; font-size: 13px; }
.p-calc { font-size: 12.5px; color: var(--ink-3); }
.p-calc b { color: var(--ink-2); font-weight: 600; }
.p-calc em { font-style: normal; color: var(--st-work, #a16207); }
.p-inline { display: flex; gap: 8px; align-items: center; }
.p-inline input { flex: 1 1 auto; min-width: 0; }
.p-checks { display: flex; flex-wrap: wrap; gap: 10px 22px; }
.p-decide { margin-top: var(--s-4); padding: var(--s-4); border: 1px solid var(--line); border-radius: var(--r-l); background: var(--sunk, #f4f6f5); }
.p-decide h3 { margin: 0; font-size: 15px; }
.p-reply { margin: var(--s-2) 0; font-size: 13.5px; }
.p-reply summary { cursor: pointer; color: var(--ink-2); }
.p-remind { margin: var(--s-3) 0 0; font-size: 13px; color: var(--ink-3); }
.p-mailprev { border: 1px solid var(--line); border-radius: var(--r-l); max-height: 520px; overflow: auto; background: #f4f3f1; }
.p-mailprev table { max-width: 100%; }
.p-dephint { margin: 0; padding: var(--s-2) var(--s-5); display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; font-size: 13.5px; border-top: 1px solid var(--line); background: #fff8e6; }
.p-docshare p { margin: 0 0 var(--s-2); }
.p-docshare__rows { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px 24px; font-size: 13.5px; color: var(--ink-2); }
.p-docshare__rows b { margin: 0 6px; }
.p-firm-more { margin-top: var(--s-4); border-top: 1px solid var(--line); padding-top: var(--s-3); }
.p-firm-more summary { cursor: pointer; font-weight: 600; font-size: 14px; }
.p-firm-more .a-hint { margin: var(--s-2) 0; }
/* karta zlecenia w układzie klienta (prod_karta.xlsx) */
.p-kz__sheet { display: grid; grid-template-columns: 1.15fr 1fr 1.25fr; border: 1.4px solid #1a1a18; margin: 5mm 0 2mm; font-size: 10pt; }
.p-kz__sheet > div { padding: 2.5mm 3mm; border-right: 1px solid #1a1a18; }
.p-kz__sheet > div:nth-child(3) { border-right: 0; }
.p-kz__sheet p { margin: 0 0 1.6mm; }
.p-kz__yn { display: flex; flex-wrap: wrap; align-items: baseline; gap: 1.2mm; }
.p-kz__lbl { font-weight: 700; text-transform: uppercase; min-width: 26mm; letter-spacing: .02em; }
.p-kz__opt { padding: 0 1.2mm; border: 1px solid transparent; border-radius: 3mm; color: #77796f; }
.p-kz__opt.is-on { border-color: #1a1a18; color: #1a1a18; font-weight: 700; }
.p-kz__holes { margin-left: 2mm; }
.p-kz__holes b, .p-kz__line b { display: inline-block; min-width: 18mm; border-bottom: 1px dotted #77796f; font-weight: 600; }
.p-kz__line > span:first-child { color: #4a4b45; }
.p-kz__cust { font-size: 12pt; }
.p-kz__no { float: right; font: 600 11pt var(--font-mono); }
.p-kz__hala, .p-kz__inst { grid-column: 1 / -1; border-right: 0 !important; border-top: 1px solid #1a1a18; display: flex; flex-wrap: wrap; gap: 2mm 6mm; align-items: baseline; }
.p-kz__hala > b { letter-spacing: .08em; }
.p-kz__inst b { flex: 1 1 60mm; min-height: 6mm; border-bottom: 1px dotted #77796f; }
@media (max-width: 640px) {
  .p-kz__sheet { grid-template-columns: 1fr; }
  .p-kz__sheet > div { border-right: 0; border-bottom: 1px solid #1a1a18; }
  .p-item__extra { grid-column: 1 / -1; }
}

/* --- kalkulator szkła --- */
.p-kal { display: grid; gap: var(--s-4); }
.p-kal__row { border: 1px solid var(--line); border-radius: var(--r-l); background: var(--surface); padding: var(--s-4); min-width: 0; }
.p-kal__head { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-bottom: var(--s-3); }
.p-seg { display: inline-flex; border: 1px solid var(--line-strong, var(--line)); border-radius: var(--r-m); overflow: hidden; }
.p-seg button { border: 0; background: transparent; padding: 6px 12px; font: inherit; font-size: 13px; cursor: pointer; color: var(--ink-2); }
.p-seg button + button { border-left: 1px solid var(--line); }
.p-seg button.is-on { background: var(--dark, #1d2321); color: #fff; }
.p-kal__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 10px 12px; align-items: end; }
.p-kal__f { display: grid; gap: 3px; min-width: 0; }
.p-kal__f > span:first-child { font-size: 11.5px; color: var(--ink-3); }
.p-kal__f--w { grid-column: span 2; }
.p-kal__f select, .p-kal__f input { width: 100%; min-width: 0; }
.p-kal__in { display: flex; align-items: center; gap: 4px; }
.p-kal__in i { font-style: normal; font-size: 12px; color: var(--ink-3); white-space: nowrap; }
.p-kal__hole { grid-column: span 2; display: grid; grid-template-columns: minmax(0, 1fr) 72px; gap: 8px; }
.p-kal__checks { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px 18px; align-items: center; }
.p-kal__chk { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; }
.p-kal__res { margin-top: var(--s-3); padding-top: var(--s-3); border-top: 1px dashed var(--line); }
.p-kal__err { color: var(--st-bad); font-size: 13.5px; }
.p-kal__parts { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.p-kal__parts th { text-align: left; font-weight: 500; padding: 3px 8px 3px 0; white-space: nowrap; }
.p-kal__parts td { padding: 3px 0; color: var(--ink-3); font-size: 12.5px; }
.p-kal__parts td.a-mono { text-align: right; color: var(--ink); font-size: 13.5px; white-space: nowrap; padding-left: 8px; }
.p-kal__sum { display: flex; flex-wrap: wrap; gap: 4px 14px; align-items: baseline; margin: var(--s-2) 0 0; font-size: 13.5px; color: var(--ink-3); }
.p-kal__net { margin-left: auto; color: var(--ink); font-size: 15px; }
.p-kal__desc { margin: var(--s-2) 0 0; font-size: 12.5px; color: var(--ink-3); }
.p-kal__foot { display: flex; flex-wrap: wrap; gap: var(--s-3); align-items: center; justify-content: space-between; }
.p-kal__add { display: flex; flex-wrap: wrap; gap: 8px; }
.p-kal__total { display: flex; flex-wrap: wrap; gap: 4px 16px; align-items: baseline; margin: 0; }
.p-kal__total small { color: var(--ink-3); }
.p-kal__total b { font-size: 17px; }
.p-kal__group { display: grid; gap: 3px; font-size: 12px; color: var(--ink-3); min-width: 0; }
.p-kal__go { margin-top: var(--s-4); align-items: center; }
.p-item__kal { margin-right: 8px; }
.p-kaltasks { margin: 0 0 var(--s-3); }
.p-kaltasks__list { list-style: none; margin: var(--s-2) 0; padding: 0; display: grid; gap: 6px; }
.p-kaltasks__list label { display: flex; gap: 8px; align-items: flex-start; }
.p-kaltasks__list small { display: block; color: var(--ink-3); font-size: 12px; }
.p-dlg { position: fixed; inset: 0; z-index: 60; background: rgba(15, 20, 18, .45); display: flex; align-items: flex-start; justify-content: center; padding: 4vh 16px; overflow-y: auto; }
.p-dlg__box { background: var(--sunk, #f4f6f5); border-radius: var(--r-l); width: min(980px, 100%); padding: var(--s-4); box-shadow: 0 20px 60px rgba(0, 0, 0, .25); }
.p-dlg__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: var(--s-3); }
.p-dlg__head h2 { margin: 0; font-size: 18px; }
.p-dlg__foot { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: var(--s-4); position: sticky; bottom: 0; background: var(--sunk, #f4f6f5); padding: 10px 0 0; }
body.p-noscroll { overflow: hidden; }
.p-kalc__sec { margin-top: var(--s-4); }
.p-kalc__hint { margin: 0; padding: 0 var(--s-5) var(--s-2); font-size: 13px; }
.p-kalc__tbl input:not([type=checkbox]) { width: 100%; min-width: 0; }
.p-kalc__tbl td { padding-top: 4px; padding-bottom: 4px; }
.p-kalc__money, .p-kalc__int { width: 110px; }
.p-kalc__bool { width: 80px; text-align: center; }
.p-kalc__act { white-space: nowrap; text-align: right; }
@media (max-width: 640px) {
  .p-kal__row { padding: var(--s-3); }
  .p-kal__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .p-kal__hole, .p-kal__f--w { grid-column: 1 / -1; }
  .p-dlg { padding: 0; }
  .p-dlg__box { border-radius: 0; min-height: 100%; padding: var(--s-3); }
  .p-kal__net { margin-left: 0; width: 100%; }
  .p-kalc__act { white-space: normal; }
  .p-kalc__money, .p-kalc__int { width: 84px; }
}

/* --- pomiary (telefon) --- */
.p-pmback { margin: 0 0 var(--s-2); }
.p-pmqueue { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; justify-content: space-between; padding: 10px var(--s-3); margin-bottom: var(--s-3);
  border: 1px solid color-mix(in srgb, var(--accent) 45%, var(--line)); background: var(--accent-tint); border-radius: var(--r-m); }
.p-pmtabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; padding: 4px; background: var(--sunk); border-radius: var(--r-m); margin-bottom: var(--s-3); }
.p-pmtab { min-height: 44px; border: 0; border-radius: var(--r-s); background: transparent; font: inherit; font-weight: 600; color: var(--ink-2); cursor: pointer; }
.p-pmtab.is-on { background: var(--surface); color: var(--ink); box-shadow: 0 1px 2px rgba(0, 0, 0, .12); }
.p-pmtab__n { display: inline-block; margin-left: 6px; min-width: 20px; padding: 0 5px; border-radius: 10px; background: var(--st-bad); color: #fff; font-size: 12px; line-height: 20px; }
.p-pmall { margin: 0 0 var(--s-3); }
.p-pmday { margin-bottom: var(--s-4); }
.p-pmday__date { font-size: 15px; margin: 0 0 var(--s-2); display: flex; gap: var(--s-2); align-items: center; }
.p-pmcard { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-m); padding: var(--s-3); margin-bottom: var(--s-2); display: grid; gap: 4px; }
.p-pmcard__head { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; font-size: 16px; }
.p-pmcard__head time { font-size: 17px; }
.p-pmcard__addr { margin: 0; font-size: 15px; }
.p-pmcard__act { display: flex; flex-wrap: wrap; gap: var(--s-2); margin-top: 6px; }
.p-pmcard__act .a-btn { min-height: 44px; }
.p-pmcard__act .a-btn--main { flex: 1 1 100%; }
.p-pmstate { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; margin: calc(-1 * var(--s-2)) 0 var(--s-3); }
.p-pmstate__sync { font-size: 13px; color: var(--ink-2); }
.p-pmstate__sync.is-bad { color: var(--st-bad); }
.p-pmsec { display: grid; gap: var(--s-3); }
.p-pmcontact { margin-top: 0; }
.p-pmh { font-size: 17px; margin: var(--s-5) 0 var(--s-2); display: flex; gap: var(--s-2); align-items: baseline; }
.p-pmh small { font-size: 13px; font-weight: 400; color: var(--ink-2); }
.p-pmgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-3); }
.p-pmgrid--addr { grid-template-columns: 110px minmax(0, 1fr); }
.p-pmgrid--dims { grid-template-columns: minmax(0, 1fr) 14px minmax(0, 1fr) 72px; align-items: end; }
.p-pmf { display: grid; gap: 4px; min-width: 0; }
.p-pmf > span { font-size: 13px; color: var(--ink-2); }
.p-pmf--wide { grid-column: 1 / -1; }
.p-pmf input, .p-pmf textarea, .p-pmitem__name { width: 100%; min-height: 48px; font: inherit; font-size: 17px; padding: 10px 12px; border: 1px solid var(--line-strong); border-radius: var(--r-s); background: var(--surface); color: var(--ink); box-sizing: border-box; }
.p-pmf textarea { min-height: 0; resize: vertical; }
.p-pmf--dim input { font-family: var(--font-mono); font-size: 22px; font-weight: 600; text-align: center; min-height: 56px; }
.p-pmx { font-size: 20px; text-align: center; padding-bottom: 14px; color: var(--ink-2); }
.p-pmitem { display: grid; gap: var(--s-3); margin-bottom: var(--s-3); }
.p-pmitem.is-bad { border-color: var(--st-bad); }
.p-pmitem__head { display: flex; gap: var(--s-2); align-items: center; }
.p-pmitem__n { flex: none; width: 32px; height: 32px; border-radius: 50%; background: var(--dark); color: var(--on-dark); display: grid; place-items: center; font-size: 14px; }
.p-pmitem__act { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.p-pmitem__act .a-btn { min-height: 44px; }
.p-pmitem__err { margin: 0; color: var(--st-bad); font-size: 14px; }
.p-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.p-chip { min-height: 40px; padding: 0 14px; border: 1px solid var(--line-strong); border-radius: 20px; background: var(--surface); font: inherit; font-size: 15px; color: var(--ink); cursor: pointer; }
.p-chip.is-on { background: var(--dark); border-color: var(--dark); color: var(--on-dark); }
.p-pmfile { position: relative; overflow: hidden; }
.p-pmfile input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.p-pmthumbs { display: flex; flex-wrap: wrap; gap: 6px; }
.p-pmthumb { display: block; width: 76px; height: 76px; border: 1px solid var(--line); border-radius: var(--r-s); overflow: hidden; padding: 0; background: #fff; cursor: pointer; }
.p-pmthumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.p-pmthumb--sketch img { object-fit: contain; }
.p-pmthumb.is-waiting { outline: 2px dashed var(--accent); outline-offset: -2px; }
.p-pmadd { width: 100%; min-height: 52px; border-style: dashed; }
.p-pmsign { max-width: 100%; height: 110px; object-fit: contain; background: #fff; border: 1px solid var(--line); border-radius: var(--r-s); }
.p-pmfoot { position: sticky; bottom: 0; z-index: 5; display: flex; flex-wrap: wrap; gap: var(--s-2); padding: var(--s-3) 0; margin-top: var(--s-4); background: var(--paper); border-top: 1px solid var(--line); }
.p-pmfoot .a-btn { min-height: 48px; }
.p-sketch__canvas { display: block; width: 100%; background: #fff; border: 1px solid var(--line-strong); border-radius: var(--r-s); touch-action: none; }
.p-sketch__hint { margin: 0 0 var(--s-2); }
.p-cal__proto { text-decoration: none; }
.p-calfeed { margin-top: var(--s-4); display: grid; gap: var(--s-3); }
.p-calfeed__steps { margin: 0; padding-left: 20px; display: grid; gap: 4px; }
@media (max-width: 720px) {
  .p-pmfoot { bottom: 72px; }
  .p-pmfoot .a-btn { flex: 1 1 100%; }
  .p-pmgrid--addr { grid-template-columns: 96px minmax(0, 1fr); }
  .p-pmgrid--addr .p-pmf--wide { grid-column: 1 / -1; }
}

/* --- raporty --- */
.p-rtabs { margin-bottom: var(--s-4); }
.p-rfilters { margin-bottom: var(--s-5); }
.p-rfilters select, .p-rfilters input { min-width: 0; max-width: 100%; }
.p-rgrid { display: grid; gap: var(--s-5); min-width: 0; }
.p-rgrid > * { min-width: 0; }
.p-rgaps__list a { overflow-wrap: anywhere; }
.p-rkpis .a-kpi__value.p-rval, .p-rval { font-size: 24px; line-height: 30px; overflow-wrap: anywhere; }
.p-rcard { min-width: 0; }
.p-rsub { margin: 2px 0 0; font-size: 13px; }
.p-rexp { font-size: 12.5px; color: var(--ink-3); white-space: nowrap; }
.p-rexp a { color: var(--ink-2); }
.p-rexp--solo { margin: calc(-1 * var(--s-3)) 0 0; white-space: normal; }
.p-rtable td, .p-rtable th { white-space: nowrap; }
.p-rtable .p-num { font-variant-numeric: tabular-nums; }
.p-rtable--in { margin-top: var(--s-2); }
.p-rtotal td { border-top: 2px solid var(--line-strong); background: var(--sunk); }
.p-rsubrow > td { background: color-mix(in srgb, var(--sunk) 45%, transparent); padding: var(--s-3) var(--s-4); white-space: normal; }
.p-rorders { display: grid; gap: var(--s-4); }
.p-rh3 { margin: 0; font: 600 13px/18px var(--font-sans); color: var(--ink-2); }
.p-rcust, .p-rrate { display: block; font-size: 12px; }
.p-rnote { margin: 0; padding: var(--s-3) var(--s-5); font-size: 12.5px; }
.p-rpill { margin-left: 6px; }
.p-rdot { display: inline-block; width: 10px; height: 10px; border-radius: 2px; margin-right: 7px; vertical-align: -1px; background: var(--c); }
.p-rdoc--invoice { --c: var(--st-sent); }
.p-rdoc--receipt { --c: var(--accent); }
.p-rdoc--none { --c: var(--brand-szklarz); }
.p-rstack { display: flex; height: 14px; margin: var(--s-4) var(--s-5) var(--s-2); border-radius: 7px; overflow: hidden; background: var(--sunk); }
.p-rstack__seg { background: var(--c); min-width: 2px; }
.p-rstack__seg + .p-rstack__seg { border-left: 2px solid var(--surface); }
.p-rgaps h2 { margin-top: 0; }
.p-rgaps ul { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--s-2); }
.p-rgaps summary { cursor: pointer; }
.p-rgaps__list { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: var(--s-2) 0 0 var(--s-4); font-size: 13px; }
.p-rcounts { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--s-4); padding: var(--s-4) var(--s-5); }
.p-rcounts ol { margin: var(--s-2) 0 0; padding: 0; list-style: none; font-size: 13.5px; }
.p-rcounts li { display: flex; justify-content: space-between; gap: var(--s-3); padding: 3px 0; border-bottom: 1px solid var(--line); }
.p-rutil { display: inline-grid; grid-template-columns: 56px auto; align-items: center; gap: 8px; justify-content: end; }
.p-rutil i { display: block; height: 6px; border-radius: 3px; background: var(--st-ok); box-shadow: 0 0 0 1px var(--line) inset; }
.p-rrates { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: var(--s-3) var(--s-4); margin-top: var(--s-3); }
.p-rrates__in { display: flex; align-items: center; gap: 6px; color: var(--ink-3); }
.p-rrates__in input { width: 110px; }
.p-tiles.p-rtiles { margin-bottom: var(--s-4); grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.p-tiles.p-rtiles .a-kpi__value { font-size: 22px; line-height: 28px; white-space: nowrap; }
/* wykres miesięcy: słupki CSS (zamówienia brutto i wpływy) */
.p-chart { padding: var(--s-4) var(--s-5) var(--s-2); }
.p-chart__legend { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 12.5px; color: var(--ink-2); margin-bottom: var(--s-3); }
.p-chart--val { --c: var(--accent-strong); background: var(--c); }
.p-chart--pay { --c: var(--st-ok); background: var(--c); }
.p-chart__body { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; }
.p-chart__axis { display: flex; flex-direction: column; justify-content: space-between; height: 180px; font: 11px/1 var(--font-mono); color: var(--ink-3); text-align: right; transform: translateY(-5px); }
.p-chart__plot { display: grid; grid-template-columns: repeat(var(--n), minmax(0, 1fr)); gap: 4px; margin: 0; padding: 0; list-style: none; height: 200px; background: repeating-linear-gradient(to top, var(--line) 0 1px, transparent 1px 25%) 0 0 / 100% 180px no-repeat; }
.p-chart__plot li { display: grid; grid-template-rows: 180px 20px; min-width: 0; }
.p-chart__bars { display: flex; align-items: flex-end; justify-content: center; gap: 2px; height: 180px; }
.p-chart__bar { display: block; width: min(22px, 45%); min-height: 1px; border-radius: 3px 3px 0 0; }
.p-chart__x { font-size: 11px; color: var(--ink-3); text-align: center; overflow: hidden; white-space: nowrap; padding-top: 4px; }
/* globalna wyszukiwarka */
.p-gs__btn { display: inline-flex; align-items: center; gap: 8px; height: 36px; min-width: 260px; padding: 0 10px; border: 1px solid var(--line-strong); border-radius: var(--r-s); background: var(--surface); color: var(--ink-3); font: inherit; font-size: 13.5px; cursor: pointer; }
.p-gs__btn:hover { color: var(--ink); border-color: var(--ink-3); }
.p-gs__btn svg { width: 15px; height: 15px; flex: none; }
.p-gs__ph { flex: 1; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.p-gs__kbd, .p-gsd kbd { font: 11px/1 var(--font-mono); padding: 3px 5px; border: 1px solid var(--line-strong); border-radius: 3px; color: var(--ink-3); background: var(--paper); }
.p-gsd { width: min(640px, calc(100vw - 32px)); max-height: min(560px, calc(100dvh - 96px)); margin: 72px auto auto; padding: 0; border: 1px solid var(--line-strong); border-radius: var(--r-l, 10px); background: var(--surface); color: var(--ink); box-shadow: 0 18px 50px rgba(0, 0, 0, .22); }
.p-gsd::backdrop { background: rgba(20, 24, 22, .35); }
.p-gsd__box { display: flex; flex-direction: column; max-height: inherit; }
.p-gsd__bar { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-bottom: 1px solid var(--line); }
.p-gsd__bar svg { width: 18px; height: 18px; color: var(--ink-3); flex: none; }
.p-gsd__bar input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; font: inherit; font-size: 16px; padding: 6px 0; color: var(--ink); }
.p-gsd__res { overflow-y: auto; padding: 6px 0 10px; }
.p-gsd__msg { margin: 0; padding: 14px 16px; font-size: 13.5px; }
.p-gsd__gname { display: flex; justify-content: space-between; margin: 8px 0 2px; padding: 0 16px; font: 400 9.5px/16px var(--font-display); letter-spacing: .16em; text-transform: uppercase; color: var(--ink-3); }
.p-gsd__gname a { font: 12px/16px var(--font-sans); letter-spacing: 0; text-transform: none; color: var(--ink-2); }
.p-gsd__hit { display: grid; gap: 1px; padding: 7px 16px; color: var(--ink); text-decoration: none; border-left: 2px solid transparent; }
.p-gsd__hit small { color: var(--ink-3); font-size: 12.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-gsd__hit.is-active, .p-gsd__hit:focus { background: var(--sunk); border-left-color: var(--brand-alusso); outline: 0; }
@media (max-width: 900px) {
  .p-gs__btn { min-width: 0; width: 40px; height: 40px; justify-content: center; padding: 0; border-color: transparent; background: transparent; color: var(--ink-2); }
  .p-gs__btn svg { width: 20px; height: 20px; }
  .p-gs__ph, .p-gs__kbd { display: none; }
  .p-gsd { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; margin: 0; border: 0; border-radius: 0; }
  .p-gsd__box { height: 100%; }
  .p-chart__plot { gap: 2px; }
  .p-chart__axis { font-size: 10px; }
  .p-rexp { white-space: normal; }
}

/* --- kopie zapasowe --- */
.p-bak-wrap { overflow-wrap: anywhere; }
.p-bak-right { flex: none; text-align: right; font-size: 13px; color: var(--ink-3); }
.p-list small.p-bak-bad, .p-bak-bad { color: var(--st-bad); }
.p-bak-tile .a-kpi__note { white-space: normal; overflow-wrap: anywhere; }
.p-bak-tile .a-kpi__value { font-size: 18px; line-height: 26px; letter-spacing: 0; }
.p-bak-tile .a-kpi { grid-column: 1 / -1; }

/* --- powiadomienia --- */
.p-bellslot { order: 1; }
.a-top__right .a-env { order: 2; }
.p-bell { position: relative; }
.p-bell__btn { position: relative; display: inline-grid; place-items: center; width: 38px; height: 36px; border: 1px solid var(--line-strong); border-radius: var(--r-s); background: var(--surface); color: var(--ink-2); cursor: pointer; }
.p-bell__btn:hover, .p-bell__btn[aria-expanded="true"] { color: var(--ink); border-color: var(--ink-3); }
.p-bell__btn svg { width: 18px; height: 18px; }
.p-bell__n { position: absolute; top: -6px; right: -6px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--st-bad, #b3261e); color: #fff; font: 700 11px/18px var(--font-sans); text-align: center; box-shadow: 0 0 0 2px var(--paper); }
.p-bell__pop { position: absolute; right: 0; top: calc(100% + 8px); z-index: 30; width: min(400px, calc(100vw - 24px)); max-height: min(560px, calc(100dvh - 120px)); display: flex; flex-direction: column; border: 1px solid var(--line-strong); border-radius: var(--r-m); background: var(--surface); box-shadow: var(--shadow-pane); }
.p-bell__head { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); padding: 12px var(--s-4); border-bottom: 1px solid var(--line); }
.p-bell__head strong { font-size: 14px; }
.p-linkbtn { border: 0; background: none; padding: 0; color: var(--accent-strong); font: 600 12.5px/1.3 var(--font-sans); cursor: pointer; text-align: right; }
.p-linkbtn:hover { text-decoration: underline; }
.p-bell__pop .p-ntfs { overflow-y: auto; flex: 1; }
.p-bell__empty { margin: 0; padding: var(--s-5) var(--s-4); color: var(--ink-3); font-size: 13.5px; text-align: center; }
.p-bell__foot { display: flex; justify-content: space-between; gap: var(--s-3); padding: 10px var(--s-4); border-top: 1px solid var(--line); font-size: 13px; }
.p-bell__foot a { color: var(--ink-2); }
.p-ntfs { margin: 0; padding: 0; list-style: none; }
.p-ntf + .p-ntf { border-top: 1px solid var(--line); }
.p-ntf button { display: grid; grid-template-columns: 10px minmax(0, 1fr); gap: 10px; width: 100%; padding: 11px var(--s-4); border: 0; background: none; color: var(--ink); font: inherit; text-align: left; cursor: pointer; }
.p-ntf button:hover { background: var(--paper); }
.p-ntf__dot { width: 8px; height: 8px; margin-top: 6px; border-radius: 50%; }
.p-ntf.is-unread .p-ntf__dot { background: var(--accent); }
.p-ntf.is-unread { background: color-mix(in srgb, var(--accent-tint) 45%, transparent); }
.p-ntf__main { display: grid; gap: 2px; min-width: 0; }
.p-ntf__main strong { font-size: 13.5px; line-height: 19px; font-weight: 600; }
.p-ntf:not(.is-unread) .p-ntf__main strong { font-weight: 500; color: var(--ink-2); }
.p-ntf__body { font-size: 13px; line-height: 18px; color: var(--ink-2); white-space: pre-line; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.p-ntfs--page .p-ntf__body { -webkit-line-clamp: 8; }
.p-ntf__meta { font-size: 12px; color: var(--ink-3); }
.p-nprefs__intro { padding: var(--s-3) var(--s-5); }
.p-nprefs__intro > p { margin: 0 0 var(--s-3); }
.p-nprefs__table td:not(:first-child), .p-nprefs__table th:not(:first-child) { width: 1%; white-space: nowrap; text-align: center; }
.p-nprefs__table input[type="checkbox"] { width: 18px; height: 18px; }
.p-nprefs__group th { text-align: left !important; font: 400 8.5px/16px var(--font-display); letter-spacing: .16em; text-transform: uppercase; color: var(--ink-3); background: var(--paper); }
.p-nprefs__foot { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); padding: var(--s-3) var(--s-5); border-top: 1px solid var(--line); }
.p-nprefs__h { margin: var(--s-2) 0; font-size: 14px; }
.p-nprefs__devs { margin: 0; padding: 0; list-style: none; }
.p-nprefs__devs li { display: flex; justify-content: space-between; align-items: center; gap: var(--s-3); padding: 8px 0; border-top: 1px solid var(--line); font-size: 13.5px; }
.p-pushdev { display: grid; gap: var(--s-2); padding: var(--s-3); border: 1px solid var(--line); border-radius: var(--r-m); background: var(--paper); }
.p-pushdev__row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); font-size: 13.5px; }
.p-pushdev__btns { display: flex; gap: var(--s-2); flex-wrap: wrap; }
.p-pushcard { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: var(--s-4); align-items: center; border-left: 3px solid var(--accent); }
.p-pushcard__ico { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--accent-tint); color: var(--accent-strong); }
.p-pushcard__ico svg { width: 22px; height: 22px; }
.p-pushcard h2 { margin: 0 0 2px; font-size: 15px; }
.p-pushcard p { margin: 0; font-size: 13.5px; color: var(--ink-2); }
.p-pushcard__err { color: var(--st-bad, #b3261e) !important; }
.p-pushcard__btns { display: flex; gap: var(--s-2); }
@media (max-width: 640px) {
  .p-bell__btn { width: 36px; }
  .p-bell__pop { position: fixed; left: 12px; right: 12px; top: 60px; width: auto; max-height: calc(100dvh - 150px); }
  .p-pushcard { grid-template-columns: 40px minmax(0, 1fr); }
  .p-pushcard__btns { grid-column: 1 / -1; }
  .p-pushcard__btns .a-btn { flex: 1; }
  .p-nprefs__intro, .p-nprefs__foot { padding-left: var(--s-4); padding-right: var(--s-4); }
}
.p-nprefs__table select { width: auto; min-width: 128px; }
@media (max-width: 640px) { .p-nprefs__table select { min-width: 108px; } }

/* --- runda 2/3: marka Szklarz Toruń, numer i rodzaj zamówienia, marki, cennik grupy --- */
/* logo Szklarza ma ciemne litery na przezroczystym tle: filtr invert z .a-brand img daje białe na ciemnym menu */
.a-brand--szklarz img { width: auto; height: 44px; }
.a-login__photo .a-brand--szklarz img { height: 54px; }
@media (max-width: 900px) { .a-brand--szklarz img, .a-login__photo .a-brand--szklarz img { width: auto; height: 34px; } }
.p-suffixes { display: flex; flex-wrap: wrap; gap: var(--s-1); margin-top: var(--s-1); }
.p-brand-off summary { cursor: pointer; }
.p-kalc__imp { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); }
.p-kalc__for { display: flex; align-items: center; gap: var(--s-1); font-size: 13px; }
.p-kalc__for select { width: auto; }

/* --- montaże --- */
.p-mtdesc { white-space: pre-wrap; margin: 0 0 .5rem; }
.p-mtitems { list-style: none; margin: 0; padding: 0; }
.p-mtitems li { display: flex; justify-content: space-between; gap: .75rem; padding: .45rem 0; border-top: 1px solid var(--line, #e5e5e5); }
.p-mtitems li:first-child { border-top: 0; }
.p-mtitems li > span { min-width: 0; overflow-wrap: anywhere; }
.p-mtitems li > b { white-space: nowrap; }
.p-mtitems .p-pmthumbs { display: flex; margin-top: .35rem; }
.p-mtfiles { margin: .5rem 0 0; padding-left: 1.1rem; overflow-wrap: anywhere; }
.p-mtmeas__head { display: flex; gap: .5rem; align-items: baseline; width: 100%; background: none; border: 0; padding: 0; font: inherit; color: inherit; text-align: left; cursor: pointer; flex-wrap: wrap; }
.p-mtmeas__head > span:last-child { margin-left: auto; }
.p-mttimes { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; align-items: end; }
.p-mttimes .a-btn { width: 100%; min-height: 48px; }
.p-mttimes input[type=time] { min-height: 48px; font-size: 1.15rem; }
.p-mttimes__sum { grid-column: 1 / -1; margin: 0; }
.p-mtkpis { margin-bottom: 1rem; }
.p-mtpay li > b { white-space: nowrap; }
.p-mthelpers { display: flex; flex-wrap: wrap; gap: .35rem 1rem; }
.p-mtpayform { margin-top: .5rem; }
.p-mtrule { padding: 0 1rem 1rem; }
.p-mtmon { padding: 0 1rem 1rem; }
.p-mtmon summary { cursor: pointer; margin: .5rem 0; }
.p-mtpend { margin-bottom: 1rem; }

/* --- import pracowników i karteczki --- */
.p-imp__paste { min-height: 160px; }
.p-imp__table td { vertical-align: top; padding-top: 8px; padding-bottom: 8px; }
.p-imp__table input, .p-imp__table select { min-width: 150px; }
.p-imp__table small { display: block; margin-top: 3px; font-size: 12px; line-height: 16px; }
.p-imp__bad td { background: color-mix(in srgb, var(--st-bad) 4%, var(--surface)); }
.a-app .p-imp__err { border-color: var(--st-bad); }
.p-imp__msg { color: var(--st-bad); }
.p-imp__owner { margin-top: 6px; font-size: 12px; }
.p-imp__notes { max-width: 220px; font-size: 13px; }
.p-imp__foot { display: grid; gap: var(--s-3); justify-items: start; padding: var(--s-4) var(--s-5); border-top: 1px solid var(--line); }
.p-imp__foot p { margin: 0; }
.p-imp__secret b { font-size: 15px; letter-spacing: .04em; }
.p-cards__bar { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); margin-bottom: var(--s-4); }
.p-cards__page { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; max-width: 186mm; margin: 0 auto var(--s-5); padding: 6mm; background: #fff; color: #111; box-shadow: 0 1px 6px rgba(0, 0, 0, .15); }
.p-card { display: grid; align-content: start; gap: 6px; min-height: 64mm; padding: 5mm 6mm; border: 1px dashed #9aa19e; margin: -.5px; font-size: 12px; line-height: 16px; }
.p-card__top { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; font: 400 9px/14px var(--font-display); letter-spacing: .16em; text-transform: uppercase; color: #555; }
.p-card__qr { width: 18mm; flex: none; }
.p-card__qr svg { display: block; width: 100%; height: auto; }
.p-card__name { margin: -6mm 0 0; padding-right: 20mm; font: 600 16px/21px var(--font-sans); }
.p-card__dl { display: grid; grid-template-columns: auto 1fr; gap: 2px 10px; margin: 2px 0 0; }
.p-card__dl dt { color: #666; }
.p-card__dl dd { margin: 0; font-family: var(--font-mono); word-break: break-all; }
.p-card__dl dd.p-card__secret { font-size: 17px; font-weight: 600; letter-spacing: .06em; }
.p-card__help { margin: 2px 0 0; font-size: 10.5px; line-height: 14px; color: #444; }
@media (max-width: 640px) {
  .p-cards__page { grid-template-columns: minmax(0, 1fr); padding: 0; }
  .p-card__name { margin-top: 0; }
}
@media print {
  .p-cards__page { max-width: none; margin: 0; padding: 0; box-shadow: none; grid-template-columns: 1fr 1fr; grid-auto-rows: 68mm; break-after: page; }
  .p-cards__page:last-child { break-after: auto; }
  .p-card { min-height: 0; break-inside: avoid; }
  .p-card__name { margin-top: -6mm; }
}

/* --- skrzynka e-mail --- */
.p-mail-kinds { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 var(--s-4); }
.p-mail-list { margin: 0; padding: 0; list-style: none; }
.p-mail-list li { border-top: 1px solid var(--line); padding: 10px var(--s-5); }
.p-mail-list li:first-child { border-top: 0; }
.p-mail-list a { display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr) auto; gap: var(--s-3); align-items: baseline; color: var(--ink-2); text-decoration: none; }
.p-mail-list a:hover .p-mail-subj { color: var(--ink); text-decoration: underline; }
.p-mail-who, .p-mail-subj { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.p-mail-subj small { color: var(--ink-3); font-size: 12.5px; }
.p-mail-when { color: var(--ink-3); font-size: 12.5px; white-space: nowrap; }
.p-mail-unread .p-mail-who, .p-mail-unread .p-mail-subj, .p-mail-unread > span > a { font-weight: 700; color: var(--ink); }
.p-mail-unread { box-shadow: inset 3px 0 0 var(--accent-strong); }
.p-mail-clip { margin-right: 4px; font-size: 12px; }
.p-mail-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 4px; }
.p-mail-tags:empty { display: none; }
.p-mail-msg { overflow: hidden; }
.p-mail-out { border-left: 3px solid var(--line); }
.p-mail-head p { margin: 0 0 2px; overflow-wrap: anywhere; }
.p-mail-head { margin-bottom: var(--s-3); padding-bottom: var(--s-3); border-bottom: 1px solid var(--line); }
.p-mail-html, .p-mail-text { overflow-wrap: anywhere; overflow-x: auto; max-width: 100%; font-size: 14px; line-height: 21px; }
.p-mail-html img { max-width: 100%; height: auto; }
.p-mail-html img[data-src] { display: inline-block; min-width: 24px; min-height: 16px; background: var(--line); }
.p-mail-html table { max-width: 100%; border-collapse: collapse; }
.p-mail-html td, .p-mail-html th { padding: 2px 4px; vertical-align: top; }
.p-mail-html blockquote, .p-mail-reply blockquote { margin: 6px 0; padding-left: 10px; border-left: 3px solid var(--line); color: var(--ink-3); }
.p-mail-blocked { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 12.5px; color: var(--ink-3); margin: 0 0 var(--s-3); }
.p-mail-files { list-style: none; margin: var(--s-3) 0 0; padding: var(--s-3) 0 0; border-top: 1px solid var(--line); display: grid; gap: 4px; }
.p-mail-files li { display: flex; gap: 6px; align-items: center; overflow-wrap: anywhere; }
.p-mail-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: var(--s-3) 0 0; }
.p-mail-pick { list-style: none; margin: 6px 0; padding: 0; display: grid; gap: 4px; }
.p-mail-pick .a-btn { width: 100%; justify-content: flex-start; text-align: left; white-space: normal; }
.p-mail-secret { display: flex; gap: 8px; align-items: center; margin: 0; }
.p-mail-folders { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.p-mail-howto { margin: 0; padding-left: 20px; display: grid; gap: 6px; font-size: 13.5px; line-height: 20px; }
.p-mail-pad { padding: 0 var(--s-5) var(--s-4); }
.p-mail-reply + .p-mail-reply { border-top: 1px solid var(--line); margin-top: var(--s-3); padding-top: var(--s-3); }
.p-mail-reply p { margin: 0; }
.p-mail-ai p { margin: 0; }
@media (max-width: 720px) {
  .p-mail-list a { grid-template-columns: minmax(0, 1fr) auto; }
  .p-mail-subj { grid-column: 1 / -1; grid-row: 2; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
}
.p-mail-text { font-family: inherit; font-size: 14px; background: none; border: 0; padding: 0; }

/* --- asystent AI --- */
.p-ai-group { display: grid; gap: 10px; padding-top: 10px; border-top: 1px solid var(--line); }
.p-ai-group:first-of-type { border-top: 0; padding-top: 0; }
.p-ai-sum { display: grid; gap: 4px; }
.p-ai-sum p { margin: 0; }
.p-ai-warn { margin: 0; padding-left: 18px; font-size: 13px; color: var(--st-bad); }
.p-ai-prop { display: grid; gap: 8px; padding: 10px 12px; border: 1px solid var(--line); border-radius: var(--r-m); background: var(--surface); min-width: 0; }
.p-ai-prop--approved, .p-ai-prop--rejected { opacity: .8; }
.p-ai-prop__head { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; }
.p-ai-prop__head b { flex: 1 1 160px; min-width: 0; overflow-wrap: anywhere; }
.p-ai-prop p { margin: 0; overflow-wrap: anywhere; }
.p-ai-dl { margin: 0; }
.p-ai-rows { margin: 0; padding-left: 20px; font-size: 14px; display: grid; gap: 2px; }
.p-ai-reply { max-height: 260px; overflow: auto; font-size: 14px; }
.p-ai-actions { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.p-ai-reason { flex: 1 1 200px; min-width: 0; }
.p-ai-changes { margin: 0; padding-left: 18px; font-size: 13px; }
.p-ai-row { border: 1px solid var(--line); border-radius: var(--r-m); padding: 6px 10px 8px; margin: 0; min-width: 0; }
.p-ai-row legend { font-size: 13px; padding: 0 4px; }
.p-ai-row__f { display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 6px 10px; }
.p-ai-row__f select, .p-ai-row__f input { width: 100%; min-width: 0; }
.p-ai-checks { display: flex; flex-wrap: wrap; gap: 4px 14px; align-items: center; margin: 6px 0 0; }
.p-ai-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-bottom: 16px; }
.p-ai-stats .a-card { display: grid; gap: 2px; padding: 12px 14px; margin: 0; min-width: 0; }
.p-ai-stats b { font-family: var(--font-display); font-size: 20px; line-height: 1.2; white-space: normal; overflow-wrap: anywhere; }
.p-ai-stats small { overflow-wrap: anywhere; white-space: normal; }
.p-ai-mode { border: 1px solid var(--line); border-radius: var(--r-m); padding: 8px 12px; display: grid; gap: 4px; }
.p-ai-key { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.p-ai-folders { display: grid; gap: 2px; max-height: 180px; overflow: auto; }
.p-ai-prices input { width: 100%; max-width: 110px; }
.p-ai-json { padding: 10px 14px; border-top: 1px solid var(--line); }
.p-ai-json pre { max-height: 360px; overflow: auto; font-size: 12px; white-space: pre-wrap; overflow-wrap: anywhere; }
.p-ai-list { display: grid; gap: 14px; }
.p-ai-msg { display: grid; gap: 10px; }
.p-ai-msg .a-card__head { flex-wrap: wrap; gap: 4px 12px; }
.p-ai-msg .a-card__title { overflow-wrap: anywhere; }
.p-ai-form > :not(.a-field), .p-ai-form > .p-ai-wide { grid-column: 1 / -1; }

/* --- instalacja aplikacji (PWA) --- */
.p-install { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2) var(--s-3); margin: 0; padding: 10px 44px 10px var(--a-gut, 16px); background: var(--accent-tint); color: var(--ink); font-size: 13.5px; line-height: 19px; }
.p-install p { margin: 0; flex: 1 1 220px; }
.p-install__ico { display: inline-block; padding: 0 3px; font-weight: 700; }
.p-install__x { position: absolute; top: 6px; right: 8px; width: 32px; height: 32px; border: 0; background: none; color: var(--ink-2); font-size: 22px; line-height: 1; cursor: pointer; }
.p-loginopts { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--s-2) var(--s-3); }

/* --- monday ↔ zamówienia, kolejka asystenta --- */
.p-mlink .p-mpad { padding: var(--s-3) var(--s-4); }
.p-mlink-name { margin: 0 0 var(--s-2); font-weight: 600; overflow-wrap: anywhere; }
.p-mlink-dl { margin: 0 0 var(--s-3); }
.p-mlink-dl dd { overflow-wrap: anywhere; }
.p-mlink-more { margin-top: var(--s-2); }
.p-mlink-more summary { cursor: pointer; color: var(--ink-2); font-size: 14px; }
.p-mlink-q { margin: 0 0 var(--s-2); }
.p-mlink-warn { color: var(--st-bad); }
.p-mlink-props { list-style: none; margin: 0 0 var(--s-3); padding: 0; display: grid; gap: var(--s-2); }
.p-mlink-props li { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--s-2); padding: var(--s-2) 0; border-bottom: 1px solid var(--line); min-width: 0; }
.p-mlink-props li > div { min-width: 0; flex: 1 1 220px; overflow-wrap: anywhere; }
.p-mlink-btns { display: flex; gap: var(--s-2); flex-wrap: wrap; }
.p-mlink-search { display: grid; gap: var(--s-2); }
.p-mlink-search .a-search { width: 100%; max-width: 100%; }
.p-mlink-orders { list-style: none; margin: 0; padding: 0 var(--s-4); }
.p-mlink-orders > li { padding: var(--s-3) 0; border-bottom: 1px solid var(--line); }
.p-mlink-orders > li > p { margin: 0 0 var(--s-1); }
.p-mmark { display: inline-block; min-width: 18px; padding: 0 4px; border-radius: 4px; background: #ff3d57; color: #fff; font: 700 11px/16px var(--font-sans); text-align: center; text-decoration: none; vertical-align: middle; }
.p-mrep details { padding: var(--s-2) 0; border-bottom: 1px solid var(--line); }
.p-mrep summary { cursor: pointer; font-weight: 600; }
.p-mrep .a-filters label { display: inline-flex; align-items: center; gap: var(--s-1); }
.p-mrep-items { margin: var(--s-2) 0; padding-left: 18px; display: grid; gap: 4px; overflow-wrap: anywhere; }
.p-mrep-group { margin: var(--s-2) 0; }
.p-mlink-order p { overflow-wrap: anywhere; }
.p-ai-queue .a-card__head { flex-wrap: wrap; gap: var(--s-2); }
.p-ai-queue .a-card__head .a-pill { white-space: normal; text-align: left; }
.p-ai-qgrid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: var(--s-3); margin: var(--s-2) 0 var(--s-3); }
.p-ai-qgrid > div { display: grid; gap: 2px; min-width: 0; }
.p-ai-qgrid b { font-family: var(--font-display); font-size: 20px; line-height: 1.2; overflow-wrap: anywhere; }
.p-ai-qgrid b.p-ai-qdates { font-family: var(--font-sans); font-size: 14px; font-weight: 600; }
.p-ai-qcounts { margin: 0 0 var(--s-2); }
.p-ai-qreasons { list-style: none; margin: 0 0 var(--s-3); padding: 0; display: flex; flex-wrap: wrap; gap: var(--s-1) var(--s-3); font-size: 14px; color: var(--ink-2); }
.p-ai-qactions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2) var(--s-4); }
.p-ai-qskip { display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); }
.p-ai-qskip label { display: inline-flex; align-items: center; gap: var(--s-1); }
.p-ai-confirm { margin-top: var(--s-3); padding: var(--s-3); border: 1px solid var(--line-strong); border-radius: var(--r-m); background: var(--accent-tint); }
section.p-ai-confirm { margin: 0 0 var(--s-4); }
.p-ai-confirm p { margin: 0 0 var(--s-2); }

/* --- monday: limit API --- */
.p-mlimit__body { padding: var(--s-4) var(--s-5); display: grid; gap: var(--s-2); }
.p-mlimit__body p { margin: 0; }
.p-mlimit__big { font-size: 1.5rem; font-weight: 600; }
.p-mlimit__big .a-muted { font-size: 0.95rem; font-weight: 400; }
.p-mlimit__bar { position: relative; height: 12px; border-radius: 999px; background: var(--sunk, #eee); overflow: hidden; }
.p-mlimit__bar span { position: absolute; inset: 0 auto 0 0; border-radius: 999px; }
.p-mlimit__used { background: var(--st-ok, #2e7d32); }
.p-mlimit__fc { background: var(--line-strong, #ccc); opacity: 0.6; }
.p-mlimit__bar.is-warn .p-mlimit__used { background: var(--w-wait, #b7791f); }
.p-mlimit__bar.is-bad .p-mlimit__used { background: var(--danger, #c62828); }
.p-mlimit__mark { position: absolute; top: 0; bottom: 0; left: 90%; width: 2px; background: var(--ink-3, #888); }
.p-mlimit__mods { list-style: none; margin: var(--s-1) 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-4); }
.p-mlimit__mods li { display: inline-flex; gap: 6px; align-items: baseline; }
.p-mlimit__mods li > span:first-child { color: var(--ink-2); }
.p-mlimit__form { display: grid; gap: var(--s-3); padding-top: var(--s-2); border-top: 1px solid var(--line); }
.p-mlimit__fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-3); }
.p-mlimit__days { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-3); }
.p-mlimit__days legend { padding: 0; margin-bottom: var(--s-1); font-size: 0.9rem; color: var(--ink-2); }
.p-mlimit__days label { display: inline-flex; align-items: center; gap: 4px; }
@media (max-width: 720px) {
  .p-mlimit__body { padding: var(--s-4); }
  .p-mlimit__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* --- asystent a monday, montaże z monday --- */
.p-ai-monday { margin: .4rem 0 0; padding: .5rem .7rem; border-left: 3px solid var(--a-line, #d0d5dd); background: rgba(127, 127, 127, .06); font-size: .88rem; }
.p-ai-mondayat { margin: .3rem 0 0; }
.p-minst-box { border-top: 1px solid var(--a-line, #e4e7ec); }
.p-minst-title { margin: 0 0 .5rem; font-size: 1rem; }
.p-minst, .p-minst-why { list-style: none; margin: 0; padding: 0; }
.p-minst > li { padding: .6rem 0; border-bottom: 1px solid var(--a-line, #e4e7ec); }
.p-minst > li:last-child { border-bottom: 0; }
.p-minst-head { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; }
.p-minst-item { margin: .3rem 0; overflow-wrap: anywhere; }
.p-minst-why li { font-size: .85rem; color: var(--a-muted, #667085); }
.p-minst-why li::before { content: "· "; }
.p-minst-btns { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; margin: .4rem 0 0; }
.p-minst-card { padding: .4rem 0 .6rem; }

/* --- konsola operatora --- */
.p-op-tabs { overflow-x: auto; margin-bottom: 16px; }
.p-op { display: grid; grid-template-columns: minmax(200px, 260px) minmax(0, 1fr); gap: 16px; align-items: start; }
.p-op-list ul { list-style: none; margin: 0; padding: 0; max-height: 70vh; overflow-y: auto; }
.p-op-pad { padding: 10px 14px; margin: 0; }
.p-op-chat { display: grid; gap: 2px; width: 100%; padding: 10px 14px; border: 0; border-top: 1px solid var(--line); background: none; text-align: left; font: inherit; color: inherit; cursor: pointer; }
.p-op-chat span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.p-op-chat:hover, .p-op-chat.is-on { background: var(--sunk, #f4f6f5); }
.p-op-chat.is-on span { font-weight: 600; }
.p-op-main { min-width: 0; margin: 0; }
.p-op-conv { display: grid; gap: 12px; }
.p-op-msgs { display: grid; gap: 10px; max-height: 65vh; overflow-y: auto; padding-right: 4px; }
.p-op-msg { display: grid; gap: 6px; padding: 10px 12px; border-radius: 10px; min-width: 0; }
.p-op-msg p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.p-op-msg--user { justify-self: end; max-width: 85%; background: var(--sunk, #f4f6f5); }
.p-op-msg--ai { border: 1px solid var(--line); }
.p-op-msg.is-refused { opacity: .7; border-style: dashed; }
.p-op-think summary, .p-op-res summary { cursor: pointer; color: var(--ink-2); font-size: 13px; }
.p-op-think p { color: var(--ink-2); font-size: 13px; margin-top: 4px; }
.p-op-call { font-size: 13px; overflow-wrap: anywhere; }
.p-op-call code { font-size: 12px; color: var(--ink-2); }
.p-op-tools { display: grid; gap: 4px; padding-left: 12px; border-left: 2px solid var(--line); }
.p-op-res pre, .p-op-view pre { margin: 6px 0 0; padding: 8px 10px; max-height: 320px; overflow: auto; background: var(--sunk, #f4f6f5); border-radius: 6px;
  font: 12px/1.45 var(--font-mono); white-space: pre-wrap; overflow-wrap: anywhere; }
.p-op-busy { margin: 0; }
.p-op-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: end; }
.p-op-form textarea { width: 100%; min-width: 0; resize: vertical; font: inherit; }
.p-op-skill { display: grid; gap: 10px; }
.p-op-skill__bar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.p-op-vers { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.p-op-vers li { display: grid; gap: 4px; padding: 8px 0; border-top: 1px solid var(--line); }
.p-op-vers__act { display: flex; flex-wrap: wrap; gap: 6px; }
.p-op-diff .is-add { background: #e3f4e6; color: #1d5b2a; }
.p-op-diff .is-del { background: #fbe5e3; color: #8a1f17; text-decoration: line-through; }
.p-op-edit textarea { width: 100%; font: 12px/1.45 var(--font-mono); }
@media (max-width: 760px) {
  .p-op { grid-template-columns: minmax(0, 1fr); }
  .p-op-list ul { max-height: 168px; }
  .p-op-msgs { max-height: none; }
  .p-op-form { grid-template-columns: minmax(0, 1fr); }
  .p-op-msg--user { max-width: 100%; }
}

/* --- operator: testy na historii i wydajność --- */
.p-ev-form h2 { margin: 0; font-size: 17px; }
.p-ev-vars { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
.p-ev-var { display: grid; gap: 8px; margin: 0; padding: 10px 12px 12px; border: 1px solid var(--line); border-radius: 10px; min-width: 0; }
.p-ev-var legend { padding: 0 4px; font-weight: 600; }
.p-ev-var select { width: 100%; }
.p-ev-head h2 { margin: 0 0 4px; font-size: 19px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.p-ev-head p { margin: 0 0 12px; }
.p-ev-confirm { margin-top: 10px; }
.p-ev-h { font-size: 16px; margin: 20px 0 8px; }
.p-ev-table td, .p-ev-table th { white-space: nowrap; }
.p-ev-table td:first-child { white-space: normal; min-width: 180px; }
.p-ev-diffhead { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; justify-content: space-between; }
.p-ev-diffhead .a-hint { margin: 0; }
.p-ev-diffhead select { max-width: 100%; }
.p-ev-diffs { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.p-ev-diffs .a-card { margin: 0; padding: 10px 14px; display: grid; gap: 4px; min-width: 0; }
.p-ev-diff__top { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; overflow-wrap: anywhere; }
.p-ev-check, .p-ev-bad { margin: 0; font-size: 14px; overflow-wrap: anywhere; }
.p-ev-check span { font-family: var(--font-mono, monospace); font-size: 13px; }
.p-ev-bad { color: var(--danger, #b42318); }
.p-ev-replies { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 8px; }
.p-ev-replies pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.p-ev-bar { display: flex; height: 14px; border-radius: 7px; overflow: hidden; background: var(--sunk, #f4f6f5); margin: 8px 0 10px; }
.p-ev-bar span { display: block; height: 100%; }
.p-ev-bar span + span { border-left: 2px solid var(--card, #fff); }
.p-ev-bar--sys { background: #3f6f8f; }
.p-ev-bar--body { background: #6fa58a; }
.p-ev-bar--files { background: #d39b3a; }
.p-ev-bar--out { background: #8a7bb8; }
.p-ev-legend { list-style: none; margin: 0 0 8px; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 14px; }
.p-ev-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; vertical-align: -1px; }

/* --- proponowani: podpięcie do istniejącego klienta --- */
.p-prk-attach { margin-top: 4px; }
.p-prk-attach .p-linkbtn { text-align: left; font-size: 12px; }
.p-prk-pick { display: grid; gap: 4px; margin-top: 4px; max-width: 320px; }
.p-prk-pick input { width: 100%; }
.p-prk-pick .p-mail-pick { margin: 0; }

/* --- cennik (jedna strona: z Excela + pozostałe pozycje) --- */
.p-cen__tabs { margin-bottom: var(--s-4); }
.p-cen__top { display: grid; gap: var(--s-3); }
.p-cen__ver p { margin: 0 0 4px; }
.p-cen__tools { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: end; }
.p-cen__tools .a-search { flex: 1 1 200px; min-width: 0; }
.p-cen__tools .p-kal__group { flex: 0 1 260px; }
.p-cen__tools select { width: 100%; }
.p-cen__note { margin: 0; font-size: 13.5px; color: var(--ink-2); }
.p-cen__admin { min-width: 0; }
.p-cen__adm { flex-wrap: wrap; gap: var(--s-2) var(--s-4); align-items: flex-start; }
.p-cen__adm > div:first-child { flex: 1 1 320px; min-width: 0; }
.p-cen__sec { min-width: 0; }
.p-cen__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: var(--s-4); align-items: start; margin-top: var(--s-4); }
.p-cen__tbl td { vertical-align: top; }
.p-cen__code { font-size: 10.5px; letter-spacing: .02em; color: var(--ink-3); word-break: break-all; }
.p-cen__bar { display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-4); align-items: center; justify-content: space-between; margin-bottom: var(--s-3); }
.p-cen__bar p { margin: 0; }
@media (max-width: 640px) {
  .p-cen__tbl th, .p-cen__tbl td { padding-left: 8px; padding-right: 8px; }
  .p-cen__tools .p-kal__group { flex: 1 1 100%; }
}

/* etapy z monday na liście zamówień: podgląd po najechaniu albo fokusie na statusie */
.p-mtip { position: relative; display: inline-block; cursor: help; outline: none; }
.p-mtip__box { display: none; position: absolute; z-index: 30; left: 0; top: calc(100% + 6px); min-width: 210px; padding: 8px 10px; border-radius: 8px;
  background: var(--surface, #fff); color: var(--ink, #1f2328); border: 1px solid var(--line, #d0d7de); box-shadow: 0 6px 20px rgba(0,0,0,.14); white-space: nowrap; }
.p-mtip:hover .p-mtip__box, .p-mtip:focus .p-mtip__box, .p-mtip:focus-within .p-mtip__box { display: grid; gap: 4px; }
.p-mtip__head { font-size: 12px; margin-bottom: 2px; }
.p-mtip__row { display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 12px; }
.p-mstages-row { display: inline-flex; flex-wrap: wrap; gap: 4px; }
.p-mfrom { display: block; font-size: 11px; }
@media (max-width: 640px) { .p-mtip__box { left: auto; right: 0; } }

/* --- przesyłki --- */
.p-ship-row { cursor: pointer; }
.p-ship-toggle { all: unset; cursor: pointer; }
.p-ship-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.p-ship-open > td { background: var(--bg-soft, rgba(127, 127, 127, .06)); }
.p-ship-det .a-dl { margin-bottom: 12px; }
.p-ship-link { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-end; margin-bottom: 12px; }
.p-ship-link .a-field { margin: 0; max-width: 180px; }
.p-ship-events { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.p-ship-events li { overflow-wrap: anywhere; }
.p-ship-head + .p-ship-head { border-top: 1px solid var(--line, rgba(127, 127, 127, .2)); padding-top: 8px; }
.p-ship-head p { overflow-wrap: anywhere; }

/* Do decyzji: okno „Obliczenia” szkicu oferty (asystent.tsx, OfferCalc) */
.p-calcdlg { width: min(980px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); margin: 24px auto auto; padding: 0; border: 1px solid var(--line-strong); border-radius: var(--r-l, 10px); background: var(--surface, #fff); color: var(--ink); box-shadow: 0 20px 60px rgba(0, 0, 0, .3); opacity: 1; }
.p-calcdlg::backdrop { background: rgba(15, 20, 18, .6); }
.p-calcdlg__box { padding: var(--s-4); }
.p-ai-calc { background: var(--surface, #fff); border: 1px solid var(--line); border-radius: var(--r-m, 8px); padding: var(--s-3); margin-bottom: var(--s-3); }
.p-ai-calc h3 { margin: 0 0 8px; font-size: 15px; overflow-wrap: anywhere; }
.p-ai-calc__line { margin: 6px 0 0; overflow-wrap: anywhere; font-size: 13px; color: var(--ink-3); }
.p-kal__gross { color: var(--ink); font-size: 15px; }
.p-ai-calc__sum { max-width: 360px; margin-left: auto; }

/* --- styl odpowiedzi (karta klienta) --- */
.p-style__hint { margin: 0; padding: 0 var(--s-4, 16px) var(--s-2, 8px); }
.p-style { align-items: flex-start; }
.p-style__main { display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1; }
.p-style__body { font-size: 14px; overflow-wrap: anywhere; }
.p-style__prop { display: flex; flex-direction: column; gap: 4px; margin-top: 6px; padding: 8px 10px; border: 1px solid var(--line); border-radius: var(--r-m, 8px); background: var(--surface-2, #fafaf7); }
.p-style__edit { display: flex; flex-direction: column; gap: 4px; }
.p-style__edit textarea { width: 100%; box-sizing: border-box; font: inherit; }

/* --- pomiary bez zamówienia --- */
.p-pmall { display: flex; flex-wrap: wrap; gap: var(--s-2) var(--s-4); }
.p-pmnew { display: grid; gap: var(--s-3); }
.p-pmnew select { width: 100%; min-height: 48px; font: inherit; font-size: 17px; padding: 8px 10px; border: 1px solid var(--line-strong); border-radius: var(--r-s); background: var(--surface); color: var(--ink); box-sizing: border-box; }
.p-pmpick { display: flex; align-items: center; gap: var(--s-2); flex-wrap: wrap; margin: 0; }
.p-pmfound { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 4px; }
.p-pmfound button { width: 100%; text-align: left; display: grid; gap: 2px; padding: 8px 12px; min-height: 48px; border: 1px solid var(--line); border-radius: var(--r-s); background: var(--surface); font: inherit; color: var(--ink); cursor: pointer; }
.p-pmfound button:hover { border-color: var(--line-strong); }
.p-pmfound small { color: var(--ink-2); overflow-wrap: anywhere; }
.p-pmlink { display: grid; gap: var(--s-2); }
.p-pmlink input, .p-pmlinkbox input { width: 100%; min-height: 44px; font: inherit; padding: 8px 12px; border: 1px solid var(--line-strong); border-radius: var(--r-s); background: var(--surface); color: var(--ink); box-sizing: border-box; }
.p-pmoffice p { margin: 0 0 var(--s-2); }
.p-ordmeasures__bar { margin: 0; padding: var(--s-2) var(--s-4); }
.p-pmlinkbox { display: grid; gap: var(--s-2); margin: var(--s-2) var(--s-4) var(--s-4); padding: var(--s-3); border: 1px solid var(--line-strong); border-radius: var(--r-m); background: var(--surface); box-shadow: 0 6px 20px rgba(0, 0, 0, .12); }
.p-pmlinkbox__head { display: flex; justify-content: space-between; align-items: center; gap: var(--s-2); }

/* --- oferty bez klienta, stały klient, przekazanie pomiaru (runda 2) --- */
.p-samecust { width: min(620px, calc(100vw - 32px)); }
.p-samecust__list { list-style: none; margin: var(--s-3) 0; padding: 0; display: grid; gap: var(--s-2); }
.p-samecust__list li { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); flex-wrap: wrap; padding: var(--s-2) var(--s-3); border: 1px solid var(--line); border-radius: var(--r-m); }
.p-samecust__list li > span { display: grid; gap: 2px; min-width: 0; overflow-wrap: anywhere; }
.p-samecust__list .a-tag { margin-left: 6px; }
.p-samecust__new { display: flex; align-items: center; gap: var(--s-3); flex-wrap: wrap; border-top: 1px solid var(--line); padding-top: var(--s-3); }
.p-oform .p-seg { align-self: flex-start; justify-self: start; width: max-content; max-width: 100%; margin-bottom: var(--s-2); flex-wrap: wrap; }
.p-oform .p-inline { flex-wrap: nowrap; }
.p-oform .p-inline input { flex: 1 1 auto; min-width: 0; width: auto; }
.p-oform .p-inline input.p-postal { flex: 0 0 96px; width: 96px; }
.p-offer-contact { display: block; overflow-wrap: anywhere; }
.p-regular { display: inline-flex; vertical-align: middle; }
.p-filters .p-seg { flex: 0 0 auto; }
.p-pmtransfer { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; width: 100%; }
.p-pmtransfer select { flex: 1 1 180px; min-width: 0; }
.p-pmtransfer .a-alert { flex-basis: 100%; }

/* --- zamówienie: klient jednorazowy (runda 3) --- */
.p-oclient .a-muted { margin: 0 0 var(--s-2, 10px); }
.p-oclient__head { margin: var(--s-2, 10px) 0 4px; font-weight: 600; font-size: 13px; }
.p-oclient__btns { display: flex; flex-wrap: wrap; gap: 8px; margin-top: var(--s-2, 10px); }
.p-oclient .p-picker { margin-top: var(--s-2, 10px); }
.p-oclient__detach { margin: 4px 0 0; }

/* --- przeniesienie danych między panelami (kopie zapasowe) --- */
.p-move-actions { display: flex; flex-wrap: wrap; gap: var(--s-2); margin-top: var(--s-3); }
.p-move-line { margin: var(--s-3) 0 0; overflow-wrap: anywhere; }
