/* SZP ERP (demo): formatka NEW PROJECT (wariant B: czcionki z wlasnego serwera).
   Cieply grafit, glinkowy akcent, Instrument Sans (naglowki, duze liczby) + Inter (tekst), zaokraglenia do 10 px,
   kolor tylko gdy niesie znaczenie. Naglowek: jeden zwarty pasek + menu tekstowe pod spodem (wzor Plan 110). */

@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter-latin-ext-v1.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter-latin-v1.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/instrument-sans-latin-ext-v4.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/instrument-sans-latin-v4.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root {
  --bg:#f4f3ed; --surface:#ffffff; --surface-2:#faf9f3;
  --text:#262625; --text-2:#67655e; --text-3:#82807a;
  --line:#e5e3dc; --line-2:#eceae3;
  --clay:#bd5b39; --clay-tekst:#a94e2c; --przycisk:#a94e2c;
  --mineral:#4f7d6d; --plum:#6d68a4; --sky:#3f74a8; --gold:#a5762a; --sea:#3f8f86;
  --zle:#b03426; --dobrze:#3d6b53; --uwaga:#9a5a12; --info:#2f6597;
  --tlo-zle:#fdf1ef; --tlo-dobrze:#eff5f1; --tlo-uwaga:#f9efdd; --tlo-info:#eef4fa;
  --dot:rgba(0,0,0,.045);
  --cien:0 1px 2px #0000000a, 0 12px 26px -16px #0000002e;
  --r:10px; --r-maly:6px;
  --serif:'Instrument Sans','Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --mono:ui-monospace,'Cascadia Code','SF Mono',Consolas,monospace;
  --szer:1280px;
  color-scheme:light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg:#262625; --surface:#2d2d2b; --surface-2:#34332e;
    --text:#f2f0e9; --text-2:#a09e94; --text-3:#87857c;
    --line:rgba(255,255,255,.10); --line-2:rgba(255,255,255,.055);
    --clay:#d97757; --clay-tekst:#e08a68; --przycisk:#b85838;
    --mineral:#7bb0a0; --plum:#a9a4de; --sky:#8fb8dd; --gold:#d8b25a; --sea:#79c3b7;
    --zle:#e0785f; --dobrze:#7bb0a0; --uwaga:#e6b46a; --info:#8fb8dd;
    --tlo-zle:#3a2b28; --tlo-dobrze:#2b352f; --tlo-uwaga:#2e2413; --tlo-info:#26303a;
    --dot:rgba(255,255,255,.05);
    --cien:0 1px 2px #0000000d, 0 10px 24px -14px #00000073;
    color-scheme:dark;
  }
}
:root[data-theme="dark"] {
  --bg:#262625; --surface:#2d2d2b; --surface-2:#34332e;
  --text:#f2f0e9; --text-2:#a09e94; --text-3:#87857c;
  --line:rgba(255,255,255,.10); --line-2:rgba(255,255,255,.055);
  --clay:#d97757; --clay-tekst:#e08a68; --przycisk:#b85838;
  --mineral:#7bb0a0; --plum:#a9a4de; --sky:#8fb8dd; --gold:#d8b25a; --sea:#79c3b7;
  --zle:#e0785f; --dobrze:#7bb0a0; --uwaga:#e6b46a; --info:#8fb8dd;
  --tlo-zle:#3a2b28; --tlo-dobrze:#2b352f; --tlo-uwaga:#2e2413; --tlo-info:#26303a;
  --dot:rgba(255,255,255,.05);
  --cien:0 1px 2px #0000000d, 0 10px 24px -14px #00000073;
  color-scheme:dark;
}

* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; scroll-padding-top:120px; }
body { margin:0; background:var(--bg); background-image:radial-gradient(var(--dot) 1px, transparent 1px); background-size:22px 22px;
  color:var(--text); font-family:var(--sans); font-size:15px; line-height:1.55; -webkit-font-smoothing:antialiased; }
a { color:var(--clay-tekst); }
img, svg { max-width:100%; }
h1, h2, h3 { color:var(--text); }
.pomin { position:absolute; left:-999px; top:8px; background:var(--surface); padding:8px 12px; border:1px solid var(--line); border-radius:var(--r); z-index:100; }
.pomin:focus { left:8px; }
.sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

/* ---------- naglowek: jeden zwarty pasek, przyklejony, z rozmyciem tla; menu tekstowe pod spodem ---------- */
.naglowek-app { position:sticky; top:0; z-index:30; border-bottom:1px solid var(--line);
  background:color-mix(in srgb, var(--bg) 84%, transparent); -webkit-backdrop-filter:saturate(1.4) blur(14px); backdrop-filter:saturate(1.4) blur(14px); }
.naglowek-srodek { max-width:var(--szer); margin:0 auto; padding:0 20px; }
.naglowek-wiersz { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:58px; }
.marka-blok { display:flex; align-items:baseline; gap:10px; min-width:0; }
.nazwa { font-family:var(--serif); font-weight:650; font-size:1.4rem; letter-spacing:-.03em; line-height:1; color:var(--text); text-decoration:none; white-space:nowrap; }
.nazwa span { color:var(--clay); }
.wersja { font-family:var(--mono); font-size:.7rem; color:var(--text-3); text-decoration:none; }
.wersja:hover { color:var(--clay-tekst); }
.podpis { font-size:.86rem; color:var(--text-2); padding-left:12px; border-left:1px solid var(--line); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.narzedzia { display:flex; align-items:center; gap:14px; flex:0 0 auto; }
.zegar-zakladu { font-family:var(--mono); font-size:.74rem; color:var(--text-2); white-space:nowrap; }
.zegar-zakladu.symulowany { color:var(--uwaga); }
.widok-roli { margin:0; display:flex; align-items:center; gap:6px; }
.widok-roli label { font-size:.74rem; color:var(--text-3); white-space:nowrap; }
.widok-roli select { min-height:30px; height:30px; padding:2px 26px 2px 8px; font-size:.8rem; width:auto; background-position:calc(100% - 14px) 50%, calc(100% - 9px) 50%; }
.jezyk { display:inline-flex; align-items:center; gap:8px; font-family:var(--mono); font-size:.74rem; letter-spacing:.04em; }
.jezyk a { color:var(--text-3); text-decoration:none; padding:3px 0; border-bottom:2px solid transparent; line-height:1; }
.jezyk a:hover { color:var(--text); }
.jezyk a[aria-current="true"] { color:var(--clay-tekst); border-bottom-color:var(--clay); font-weight:600; }
.konto { font-size:.84rem; color:var(--text-2); white-space:nowrap; }
.konto a { color:var(--text); text-decoration:none; font-weight:560; }
.konto a:hover { color:var(--clay-tekst); }
.wyloguj { display:inline; margin:0; }
.wyloguj button { font:inherit; font-size:.84rem; color:var(--text-2); background:none; border:0; padding:0; cursor:pointer; }
.wyloguj button:hover { color:var(--clay-tekst); text-decoration:underline; }
.motyw { display:inline-flex; gap:0; }
.motyw button { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; padding:0; border:0; border-radius:var(--r); background:transparent; color:var(--text-2); cursor:pointer; }
.motyw button:hover { color:var(--text); }
.motyw button[aria-pressed="true"] { color:var(--clay); }
.motyw svg { width:16px; height:16px; }
.zegar { width:40px; height:40px; flex:0 0 auto; border-radius:50%; transform-origin:top right; transition:transform .15s ease, box-shadow .15s ease, background-color .15s ease; position:relative; }
.zegar svg { display:block; width:100%; height:100%; overflow:visible; }
.zegar:hover { z-index:60; transform:scale(3); background:var(--surface); box-shadow:0 10px 30px -10px rgba(0,0,0,.35); transition-duration:.25s; }
@media (prefers-reduced-motion: reduce) { .zegar { transition:none; } }
.menu { display:flex; gap:0 22px; overflow-x:auto; scrollbar-width:none; }
.menu::-webkit-scrollbar { display:none; }
.menu a { color:var(--text-2); text-decoration:none; font-size:.9rem; padding:8px 0 9px; margin-bottom:-1px; border-bottom:2px solid transparent; white-space:nowrap; }
.menu a:hover { color:var(--text); }
.menu a[aria-current="page"] { color:var(--clay-tekst); font-weight:600; border-bottom-color:var(--clay); }
@media (max-width:1180px) { .podpis, .widok-roli label { display:none; } }
@media (max-width:980px) { .zegar-zakladu, .konto .rola { display:none; } }
@media (max-width:720px) {
  .naglowek-app { position:static; }
  .naglowek-srodek { padding:0 14px; }
  .naglowek-wiersz { flex-wrap:wrap; gap:8px 12px; padding:8px 0 4px; min-height:0; }
  .narzedzia { flex-wrap:wrap; gap:10px; width:100%; justify-content:flex-start; }
  .zegar { display:none; }
  .menu { gap:0 16px; }
}

/* ---------- uklad strony ---------- */
.kontener { position:relative; max-width:var(--szer); margin:0 auto; padding:20px 20px 40px; }
@media (max-width:720px) { .kontener { padding:14px 14px 32px; } }
.strona-glowa { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:10px 18px; margin:2px 0 16px; }
.strona-glowa h1 { font-family:var(--serif); font-weight:500; font-size:1.5rem; line-height:1.25; letter-spacing:-.02em; margin:0; }
.strona-glowa .podtytul { margin:4px 0 0; color:var(--text-2); font-size:.92rem; }
.okruszki { font-size:.8rem; color:var(--text-3); margin:0 0 2px; }
.okruszki a { color:var(--text-3); text-decoration:none; }
.okruszki a:hover { color:var(--clay-tekst); }
.akcje { display:flex; flex-wrap:wrap; gap:8px; align-items:stretch; }
.akcje form { display:flex; margin:0; }
.zakladki { display:flex; gap:4px 18px; flex-wrap:wrap; border-bottom:1px solid var(--line); margin:0 0 16px; }
.zakladki a { padding:6px 0 8px; border-bottom:2px solid transparent; color:var(--text-2); font-size:.9rem; text-decoration:none; margin-bottom:-1px; white-space:nowrap; }
.zakladki a:hover { color:var(--text); }
.zakladki a[aria-current="page"] { color:var(--text); border-bottom-color:var(--clay); font-weight:560; }
.zakladki .licznik { font-family:var(--mono); font-size:.7rem; color:var(--text-3); margin-left:4px; }
@media (max-width:700px) { .zakladki { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; } }

section { margin-top:24px; }
section:first-child { margin-top:0; }
.karta { background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:16px 18px; min-width:0; }
.karta + .karta { margin-top:14px; }
.karta > h2, .sekcja-glowa h2 { font-family:var(--serif); font-weight:500; font-size:1.15rem; letter-spacing:-.01em; margin:0; }
.sekcja-glowa { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin:0 0 12px; }
.sekcja-glowa .liczba { font-family:var(--mono); font-size:.76rem; color:var(--text-3); }
.sekcja-glowa .akcje { margin-left:auto; }
.karta .sekcja-glowa { padding-bottom:10px; border-bottom:1px solid var(--line-2); }
/* strona w wierszach: karta na cala szerokosc albo para rownych kart (zasada wlasciciela) */
.siatka-par { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; align-items:stretch; margin-top:14px; }
.siatka-par > .karta { margin-top:0; display:flex; flex-direction:column; }
.siatka-par > .karta:last-child:nth-child(odd) { grid-column:1 / -1; }
.siatka-par > .karta > .przyciski:last-child, .siatka-par > .karta > form:last-child > .przyciski:last-child { margin-top:auto; padding-top:10px; }
.siatka-trzy { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; align-items:stretch; margin-top:14px; }
.siatka-trzy > .karta { margin-top:0; }
@media (max-width:980px) { .siatka-par, .siatka-trzy { grid-template-columns:minmax(0,1fr); } .siatka-par > .karta:last-child:nth-child(odd) { grid-column:auto; } }
.odstep { margin-top:14px; }
.odstep-duzy { margin-top:24px; }

/* ---------- tekst ---------- */
.proza { color:var(--text-2); font-size:.94rem; line-height:1.65; text-align:left; hyphens:auto; text-wrap:pretty; }
.proza h3 { font-family:var(--sans); font-weight:600; font-size:1rem; color:var(--text); margin:16px 0 6px; }
.proza p { margin:0 0 10px; }
.proza ul, .proza ol { margin:0 0 10px; padding-left:20px; }
.proza li { margin:0 0 4px; }
.proza b, .proza strong { color:var(--text); font-weight:600; }
code, .mono { font-family:var(--mono); font-size:.84em; }
code { background:var(--surface-2); border:1px solid var(--line-2); border-radius:4px; padding:1px 5px; }
.tekst-2 { color:var(--text-2); } .tekst-3 { color:var(--text-3); }
.drobny { font-size:.8rem; } .nowrap { white-space:nowrap; } .prawo { text-align:right; }
.zle-tekst { color:var(--zle); } .ok-tekst { color:var(--dobrze); } .uwaga-tekst { color:var(--uwaga); }
.mocny { font-weight:600; }
dl.dane { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:6px 16px; margin:0; font-size:.88rem; }
dl.dane dt { color:var(--text-2); }
dl.dane dd { margin:0; overflow-wrap:anywhere; }
@media (min-width:980px) { dl.dane.dwie-kol { grid-template-columns:max-content minmax(0,1fr) max-content minmax(0,1fr); } }

/* ---------- przyciski: ta sama wysokosc w rzedzie (32 maly, 40 zwykly) ---------- */
.glowny, .drugi, .niebezpieczny { display:inline-flex; align-items:center; justify-content:center; gap:7px; height:40px; padding:0 16px; font-family:var(--sans); font-size:.88rem; line-height:1; border-radius:var(--r); cursor:pointer; text-decoration:none; white-space:nowrap; }
.glowny { color:#fff; background:var(--przycisk); border:1px solid var(--przycisk); }
.glowny:hover { filter:brightness(1.08); }
.drugi { color:var(--text); background:var(--surface); border:1px solid var(--line); }
.drugi:hover { border-color:var(--text-3); }
.niebezpieczny { color:var(--zle); background:var(--surface); border:1px solid color-mix(in srgb, var(--zle) 60%, var(--line)); }
.niebezpieczny:hover { background:var(--tlo-zle); }
.maly { height:32px; padding:0 11px; font-size:.8rem; }
.glowny svg, .drugi svg, .niebezpieczny svg { width:15px; height:15px; flex:none; }
button:disabled, .glowny[aria-disabled="true"] { opacity:.5; cursor:not-allowed; }
.przyciski { display:flex; flex-wrap:wrap; gap:8px; align-items:stretch; margin-top:12px; }
.przyciski form { display:flex; margin:0; }
.link-przycisk { background:none; border:0; padding:0; font:inherit; color:var(--clay-tekst); cursor:pointer; }
.link-przycisk:hover { text-decoration:underline; }
form.w-linii { display:inline-flex; margin:0; gap:6px; align-items:center; }

/* ---------- formularze ---------- */
.pole { margin-bottom:12px; min-width:0; }
.pole label, .etykieta-pola { display:block; font-size:.8rem; color:var(--text-2); margin-bottom:4px; }
.pole .podpowiedz { display:block; font-size:.74rem; color:var(--text-3); margin-top:4px; line-height:1.45; }
input[type="text"], input[type="email"], input[type="password"], input[type="date"], input[type="number"], input[type="search"], select, textarea {
  width:100%; height:40px; padding:0 11px; font-family:var(--sans); font-size:.9rem; color:var(--text); background:var(--surface);
  border:1px solid var(--line); border-radius:var(--r-maly); transition:border-color .15s; }
textarea { height:auto; min-height:76px; padding:9px 11px; resize:vertical; line-height:1.5; }
input:focus, select:focus, textarea:focus { outline:none; border-color:var(--clay); box-shadow:0 0 0 3px color-mix(in srgb, var(--clay) 18%, transparent); }
select { appearance:none; background-image:linear-gradient(45deg, transparent 50%, var(--text-3) 50%), linear-gradient(135deg, var(--text-3) 50%, transparent 50%); background-position:calc(100% - 17px) 50%, calc(100% - 12px) 50%; background-size:5px 5px, 5px 5px; background-repeat:no-repeat; padding-right:32px; }
input.maly, select.maly { height:32px; font-size:.82rem; padding:0 8px; }
select.maly { padding-right:28px; }
input.waskie { width:96px; } input.liczbowe { text-align:right; font-variant-numeric:tabular-nums; }
.pole-z-okiem { position:relative; display:block; }
.pole-z-okiem input { padding-right:76px; }
.oko { position:absolute; top:50%; right:6px; transform:translateY(-50%); font-family:var(--sans); font-size:.74rem; color:var(--text-2); background:var(--surface-2); border:1px solid var(--line); border-radius:var(--r); height:28px; padding:0 11px; cursor:pointer; }
.oko:hover, .oko[aria-pressed="true"] { color:var(--text); border-color:var(--text-3); }
.pole-wybor { display:flex; align-items:center; gap:8px; font-size:.88rem; color:var(--text-2); margin:0 0 10px; cursor:pointer; }
.pole-wybor input { width:17px; height:17px; margin:0; accent-color:var(--przycisk); flex:none; }
.siatka-pol { display:grid; grid-template-columns:minmax(0,1fr); gap:0 14px; }
@media (min-width:640px) { .siatka-pol { grid-template-columns:repeat(2, minmax(0,1fr)); } .siatka-pol .pelna { grid-column:1 / -1; } }
@media (min-width:980px) { .siatka-pol.trzy { grid-template-columns:repeat(3, minmax(0,1fr)); } .siatka-pol.cztery { grid-template-columns:repeat(4, minmax(0,1fr)); } .siatka-pol .dwa { grid-column:span 2; } }
.siatka-pol .pole-wybor { align-self:end; min-height:40px; margin-bottom:12px; }
.filtry { display:flex; flex-wrap:wrap; gap:8px 10px; align-items:flex-end; margin:0 0 14px; }
.filtry .pole { margin:0; flex:1 1 150px; }
.filtry .pole.szerokie { flex:2 1 240px; }
.filtry .przyciski { margin:0; }
.szybkie { display:flex; flex-wrap:wrap; gap:4px 16px; margin:0 0 12px; font-size:.86rem; }
.szybkie a { color:var(--text-2); text-decoration:none; padding:2px 0; border-bottom:2px solid transparent; }
.szybkie a:hover { color:var(--text); }
.szybkie a[aria-current="true"] { color:var(--clay-tekst); border-bottom-color:var(--clay); font-weight:560; }
.szybkie .licznik { font-family:var(--mono); font-size:.72rem; color:var(--text-3); margin-left:3px; }
fieldset { border:0; padding:0; margin:0; min-width:0; }
legend { font-size:.82rem; color:var(--text-2); padding:0; margin:0 0 6px; }
.blad-pola { display:block; margin-top:4px; font-size:.76rem; color:var(--zle); }

/* ---------- komunikaty i plakietki ---------- */
.komunikat { margin:0 0 14px; padding:11px 15px; border-radius:var(--r); border:1px solid var(--line); background:var(--surface); font-size:.9rem; }
.komunikat.dobry { border-color:color-mix(in srgb, var(--dobrze) 55%, var(--line)); background:var(--tlo-dobrze); }
.komunikat.zly { border-color:color-mix(in srgb, var(--zle) 55%, var(--line)); background:var(--tlo-zle); }
.komunikat.uwaga { border-color:color-mix(in srgb, var(--uwaga) 55%, var(--line)); background:var(--tlo-uwaga); }
.komunikat.info { border-color:color-mix(in srgb, var(--info) 45%, var(--line)); background:var(--tlo-info); }
.komunikat b { font-weight:600; }
.plakietka { display:inline-block; font-size:.72rem; line-height:1.25; padding:2px 8px; margin:1px 0; border-radius:var(--r); border:1px solid var(--line); background:var(--surface-2); color:var(--text-2); white-space:nowrap; vertical-align:middle; }
.plakietka.ok { color:var(--dobrze); border-color:color-mix(in srgb, var(--dobrze) 45%, var(--line)); background:var(--tlo-dobrze); }
.plakietka.zle { color:var(--zle); border-color:color-mix(in srgb, var(--zle) 45%, var(--line)); background:var(--tlo-zle); }
.plakietka.uwaga { color:var(--uwaga); border-color:color-mix(in srgb, var(--uwaga) 45%, var(--line)); background:var(--tlo-uwaga); }
.plakietka.info { color:var(--info); border-color:color-mix(in srgb, var(--info) 40%, var(--line)); background:var(--tlo-info); }
.plakietka.szara { color:var(--text-3); }
.plakietki { display:inline-flex; flex-wrap:wrap; gap:4px; vertical-align:middle; }
.postep { display:inline-block; width:100%; height:6px; background:var(--line-2); border-radius:10px; overflow:hidden; vertical-align:middle; }
.postep span { display:block; height:100%; width:0; background:var(--dobrze); border-radius:10px; }
.postep.uwaga span { background:var(--uwaga); } .postep.zle span { background:var(--zle); } .postep.clay span { background:var(--clay); }
.tabela .postep { width:70px; }

/* ---------- tabele (pierwsza kolumna Lp.) ---------- */
.tabela-w { overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); min-width:0; }
.karta .tabela-w { border:0; border-radius:0; background:transparent; margin:0 -4px; }
table.tabela { width:100%; border-collapse:collapse; font-size:.86rem; }
.tabela th, .tabela td { padding:8px 9px; text-align:left; vertical-align:top; border-bottom:1px solid var(--line-2); }
.tabela th { font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; color:var(--text-3); font-weight:500; background:var(--surface-2); white-space:nowrap; position:sticky; top:0; z-index:1; }
.karta .tabela th { background:var(--surface); }
.tabela tbody tr:hover { background:var(--surface-2); }
.tabela tbody tr:last-child td { border-bottom:0; }
.tabela .liczba { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.tabela th.lp, .tabela td.lp { width:2.8em; text-align:right; color:var(--text-3); font-variant-numeric:tabular-nums; }
.tabela .waska { width:1%; white-space:nowrap; }
.tabela a.wiersz-link { color:inherit; text-decoration:none; font-weight:560; }
.tabela a.wiersz-link:hover { color:var(--clay-tekst); }
.tabela tr.po-terminie td:first-child { box-shadow:inset 3px 0 0 var(--zle); }
.tabela tr.zagrozone td:first-child { box-shadow:inset 3px 0 0 var(--uwaga); }
.tabela tr.wyroznione td { background:color-mix(in srgb, var(--clay) 6%, transparent); }
.tabela tfoot td { font-weight:600; border-top:1px solid var(--line); background:var(--surface-2); }
.tabela td .opis { display:block; color:var(--text-3); font-size:.78rem; }
.tabela td.akcje-wiersza { white-space:nowrap; text-align:right; }
.tabela td.akcje-wiersza form { display:inline-flex; margin:0 0 0 4px; }
.pusty { padding:24px 16px; text-align:center; color:var(--text-3); font-size:.9rem; }

/* ---------- KPI ---------- */
.kpi-siatka { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:12px; }
@media (max-width:980px) { .kpi-siatka { grid-template-columns:repeat(2, minmax(0,1fr)); } }
.kpi { display:flex; flex-direction:column; background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:13px 15px; min-width:0; text-decoration:none; color:inherit; }
a.kpi:hover { border-color:var(--text-3); }
.kpi-etykieta { color:var(--text-2); font-size:.8rem; display:flex; align-items:center; gap:4px; }
.kpi-wartosc { font-family:var(--serif); font-weight:500; font-size:1.75rem; line-height:1.1; letter-spacing:-.03em; font-variant-numeric:tabular-nums; margin-top:auto; padding-top:6px; overflow-wrap:anywhere; }
.kpi-wartosc small { font-family:var(--sans); font-size:.5em; color:var(--text-3); letter-spacing:0; font-weight:500; }
.kpi-dopisek { color:var(--text-3); font-size:.74rem; margin-top:3px; line-height:1.35; }
.kpi.zle .kpi-wartosc { color:var(--zle); } .kpi.ok .kpi-wartosc { color:var(--dobrze); } .kpi.uwaga .kpi-wartosc { color:var(--uwaga); }

/* ---------- przeplyw procesu na pulpicie ---------- */
.przeplyw { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(7, minmax(0,1fr)); gap:10px; }
.przeplyw li { min-width:0; }
.krok { position:relative; display:flex; flex-direction:column; height:100%; background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:11px 12px 10px; text-decoration:none; color:inherit; }
.krok:hover { border-color:var(--clay); }
.krok-nr { font-family:var(--mono); font-size:.68rem; color:var(--text-3); }
.krok-nazwa { font-weight:600; font-size:.92rem; margin:1px 0 4px; }
.krok-liczba { font-family:var(--serif); font-weight:500; font-size:1.6rem; line-height:1; letter-spacing:-.03em; margin-top:auto; font-variant-numeric:tabular-nums; }
.krok-opis { color:var(--text-3); font-size:.74rem; }
.krok-uwaga { margin-top:6px; font-size:.74rem; color:var(--uwaga); }
.krok-uwaga.zle { color:var(--zle); }
.przeplyw li:not(:last-child) .krok::after { content:""; position:absolute; right:-9px; top:50%; width:8px; height:8px; border-top:1px solid var(--text-3); border-right:1px solid var(--text-3); transform:translateY(-50%) rotate(45deg); }
@media (max-width:1100px) { .przeplyw { grid-template-columns:repeat(4, minmax(0,1fr)); } .przeplyw li .krok::after { display:none; } }
@media (max-width:560px) { .przeplyw { grid-template-columns:repeat(2, minmax(0,1fr)); } }

/* ---------- alerty ---------- */
.alerty { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.alerty a { display:block; padding:8px 12px; border:1px solid var(--line); border-radius:var(--r); text-decoration:none; color:var(--text); font-size:.86rem; background:var(--surface); box-shadow:inset 3px 0 0 var(--line); }
.alerty a:hover { background:var(--surface-2); }
.alerty .zle a { box-shadow:inset 3px 0 0 var(--zle); } .alerty .uwaga a { box-shadow:inset 3px 0 0 var(--uwaga); } .alerty .info a { box-shadow:inset 3px 0 0 var(--info); }

/* ---------- znak zapytania z definicja ---------- */
.pytajnik { position:relative; display:inline-flex; align-items:center; justify-content:center; width:15px; height:15px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--text-3); cursor:help; vertical-align:-2px; }
.pytajnik svg { width:15px; height:15px; display:block; }
.pytajnik::after { content:""; position:absolute; inset:-7px; }
.pytajnik:hover, .pytajnik[aria-expanded="true"] { color:var(--clay); }
.dymek { position:fixed; left:0; top:0; z-index:90; width:max-content; max-width:min(360px, calc(100vw - 24px)); padding:10px 12px; background:var(--surface); color:var(--text); border:1px solid var(--line); border-radius:var(--r); box-shadow:var(--cien); font-size:.82rem; line-height:1.5; text-transform:none; letter-spacing:normal; font-weight:400; white-space:normal; }
.dymek[hidden] { display:none; }
.dymek b { display:block; margin-bottom:2px; }

/* ---------- os zdarzen (dziennik obiektu) ---------- */
.os { list-style:none; margin:0; padding:0; display:grid; gap:0; font-size:.84rem; }
.os li { display:grid; grid-template-columns:auto minmax(0,1fr); gap:2px 12px; padding:7px 0; border-bottom:1px solid var(--line-2); }
.os li:last-child { border-bottom:0; }
.os .kiedy { font-family:var(--mono); font-size:.72rem; color:var(--text-3); white-space:nowrap; padding-top:2px; }
.os .kto { color:var(--text-3); font-size:.78rem; }

/* ---------- wykresy SVG ---------- */
.wykres { display:block; width:100%; height:auto; font-family:var(--sans); overflow:visible; }
.wykres .os-t { font-size:11px; fill:var(--text-3); font-variant-numeric:tabular-nums; }
.wykres .et { font-size:11.5px; fill:var(--text-2); }
.wykres .wart { font-size:11px; fill:var(--text); font-weight:500; font-variant-numeric:tabular-nums; }
.wykres .siatka-l { stroke:var(--line-2); stroke-width:1; }
.wykres .os-l { stroke:var(--text-3); stroke-width:1; }
.wykres .slupek { fill:var(--sky); }
.wykres .slupek.b { fill:var(--mineral); } .wykres .slupek.c { fill:var(--clay); } .wykres .slupek.d { fill:var(--plum); }
.wykres .linia { fill:none; stroke:var(--clay); stroke-width:2; stroke-linejoin:round; }
.wykres .linia.b { stroke:var(--sky); }
.wykres .pkt { fill:var(--clay); }
.wykres .cel { stroke:var(--dobrze); stroke-width:1; stroke-dasharray:4 3; }
.legenda { display:flex; flex-wrap:wrap; gap:4px 16px; margin:6px 0 0; font-size:.8rem; color:var(--text-2); }
.legenda span { display:inline-flex; align-items:center; gap:6px; }
.legenda i { display:inline-block; width:12px; height:10px; border-radius:2px; }
.legenda i.a { background:var(--sky); } .legenda i.b { background:var(--mineral); } .legenda i.c { background:var(--clay); } .legenda i.d { background:var(--plum); }

/* ---------- plan maszyn (Gantt w SVG) ---------- */
.gantt-w { overflow-x:auto; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); }
.gantt { display:block; min-width:900px; width:100%; height:auto; font-family:var(--sans); }
.gantt .tlo-wolne { fill:var(--surface-2); }
.gantt .linia-dnia { stroke:var(--line); stroke-width:1; }
.gantt .linia-zmiany { stroke:var(--line-2); stroke-width:1; }
.gantt .teraz { stroke:var(--clay); stroke-width:1.5; }
.gantt .naglowek-dnia { font-size:11px; fill:var(--text-2); }
.gantt .naglowek-dnia.wolny { fill:var(--text-3); }
.gantt .maszyna { font-size:12px; fill:var(--text); font-weight:560; }
.gantt .maszyna-opis { font-size:10.5px; fill:var(--text-3); }
.gantt .wiersz-tlo { fill:transparent; }
.gantt .wiersz-tlo.parzysty { fill:color-mix(in srgb, var(--surface-2) 70%, transparent); }
.gantt a .pasek-zlecenia { stroke:none; }
.gantt .pasek-zlecenia.planowane { fill:color-mix(in srgb, var(--text-3) 35%, var(--surface)); }
.gantt .pasek-zlecenia.zwolnione { fill:color-mix(in srgb, var(--sky) 55%, var(--surface)); }
.gantt .pasek-zlecenia.w_toku { fill:var(--mineral); }
.gantt .pasek-zlecenia.opoznione { fill:color-mix(in srgb, var(--zle) 70%, var(--surface)); }
.gantt .przezbrojenie { fill:color-mix(in srgb, var(--gold) 70%, var(--surface)); }
.gantt .napis-zlecenia { font-size:10.5px; fill:#fff; pointer-events:none; }
.gantt .napis-zlecenia.ciemny { fill:var(--text); }
.gantt a:hover .pasek-zlecenia, .gantt a:focus .pasek-zlecenia { filter:brightness(1.12); }
.gantt-legenda i.planowane { background:color-mix(in srgb, var(--text-3) 35%, var(--surface)); }
.gantt-legenda i.zwolnione { background:color-mix(in srgb, var(--sky) 55%, var(--surface)); }
.gantt-legenda i.w_toku { background:var(--mineral); }
.gantt-legenda i.opoznione { background:color-mix(in srgb, var(--zle) 70%, var(--surface)); }

/* ---------- obciazenie (mapa cieplna) ---------- */
.tabela td.obc { text-align:center; font-variant-numeric:tabular-nums; font-size:.8rem; min-width:56px; }
.obc-0 { color:var(--text-3); }
.obc-1 { background:color-mix(in srgb, var(--mineral) 12%, transparent); }
.obc-2 { background:color-mix(in srgb, var(--mineral) 26%, transparent); }
.obc-3 { background:color-mix(in srgb, var(--gold) 30%, transparent); }
.obc-4 { background:color-mix(in srgb, var(--zle) 28%, transparent); font-weight:600; }

/* ---------- kalkulacja: rozklad kosztu ---------- */
.rozklad { list-style:none; margin:0; padding:0; display:grid; gap:7px; }
.rozklad li { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:2px 12px; align-items:center; font-size:.86rem; }
.rozklad .postep { grid-column:1 / -1; height:5px; }
.rozklad .kwota { font-variant-numeric:tabular-nums; font-weight:560; }
.rozklad .udzial { font-family:var(--mono); font-size:.74rem; color:var(--text-3); min-width:44px; text-align:right; }
.wynik-ceny { display:flex; flex-wrap:wrap; gap:16px 26px; padding:12px 0; border-top:1px solid var(--line-2); border-bottom:1px solid var(--line-2); margin:12px 0; }
.wynik-ceny div { display:flex; flex-direction:column; }
.wynik-ceny span { font-size:.76rem; color:var(--text-3); }
.wynik-ceny b { font-family:var(--serif); font-weight:500; font-size:1.35rem; letter-spacing:-.02em; font-variant-numeric:tabular-nums; }

/* ---------- hala (kafle maszyn) ---------- */
.hala { display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 290px), 1fr)); gap:12px; }
.maszyna-kafel { display:flex; flex-direction:column; gap:6px; background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:12px 14px; min-width:0; }
.maszyna-kafel.pracuje { box-shadow:inset 3px 0 0 var(--mineral); }
.maszyna-kafel.czeka { box-shadow:inset 3px 0 0 var(--uwaga); }
.maszyna-kafel.stoi, .maszyna-kafel.wolna { box-shadow:inset 3px 0 0 var(--line); }
.maszyna-glowa { display:flex; align-items:baseline; gap:8px; }
.maszyna-glowa b { font-family:var(--serif); font-weight:600; font-size:1.05rem; }
.maszyna-glowa .tekst-3 { font-size:.78rem; }
.maszyna-glowa .plakietka { margin-left:auto; }
.maszyna-kafel .przyciski { margin-top:auto; padding-top:6px; }

/* ---------- sciezka ---------- */
.sciezka { list-style:none; margin:0; padding:0 0 0 18px; border-left:2px solid var(--line); display:grid; gap:12px; }
.sciezka > li { position:relative; }
.sciezka > li::before { content:""; position:absolute; left:-25px; top:16px; width:10px; height:10px; border-radius:50%; background:var(--surface); border:2px solid var(--text-3); }
.sciezka > li.start::before { background:var(--clay); border-color:var(--clay); }
.sciezka .karta { padding:12px 14px; }

/* ---------- przewodnik ---------- */
.kroki-przewodnika { list-style:none; margin:0; padding:0; display:grid; gap:12px; counter-reset:krok; }
.kroki-przewodnika > li { counter-increment:krok; display:grid; grid-template-columns:38px minmax(0,1fr); gap:4px 14px; background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:14px 16px; }
.kroki-przewodnika > li::before { content:counter(krok); display:flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:50%; background:var(--surface-2); border:1px solid var(--line); font-family:var(--mono); font-size:.8rem; color:var(--text-2); grid-row:span 3; }
.kroki-przewodnika h3 { margin:2px 0 2px; font-size:1rem; font-weight:600; }
.kroki-przewodnika .rola { font-size:.76rem; color:var(--text-3); }
.kroki-przewodnika .przyciski { margin-top:8px; }
.bramka { margin-top:8px; padding:8px 12px; border-radius:var(--r); background:var(--tlo-uwaga); color:var(--text); font-size:.84rem; }
.bramka b { color:var(--uwaga); }

/* ---------- okna dialogowe ---------- */
dialog.okno { border:1px solid var(--line); border-radius:var(--r); background:var(--surface); color:var(--text); padding:0; width:min(640px, calc(100% - 24px)); max-height:calc(100vh - 40px); box-shadow:var(--cien); overflow:hidden; }
dialog.okno::backdrop { background:color-mix(in srgb, #1b1b1a 45%, transparent); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.okno-glowa { display:flex; flex-wrap:wrap; align-items:center; gap:10px 12px; padding:14px 16px; border-bottom:1px solid var(--line); position:sticky; top:0; background:var(--surface); }
.okno-glowa h2 { margin:0; font-family:var(--serif); font-weight:500; font-size:1.15rem; }
.okno-przyciski { display:flex; gap:8px; flex-wrap:wrap; margin-left:auto; }
.okno-tresc { padding:14px 16px; overflow-y:auto; max-height:60vh; }
.okno-tresc h3 { display:flex; gap:10px; align-items:baseline; font-size:.95rem; font-weight:600; margin:12px 0 6px; }
.okno-tresc h3 time { font-family:var(--mono); font-size:.74rem; color:var(--text-3); font-weight:400; }
.lista-zmian { margin:0; padding-left:18px; display:grid; gap:6px; font-size:.88rem; color:var(--text-2); }

/* ---------- karta zmian ---------- */
.os-zmian { list-style:none; margin:0; padding:0 0 0 20px; border-left:2px solid var(--line); display:grid; gap:16px; }
.wersja-zmian { position:relative; }
.wersja-zmian::before { content:""; position:absolute; left:-28px; top:20px; width:12px; height:12px; border-radius:50%; background:var(--surface); border:2px solid var(--text-3); }
.wersja-zmian.najnowsza::before { background:var(--clay); border-color:var(--clay); }

/* ---------- strony bez nawigacji (logowanie, pomoc publiczna) ---------- */
.kontener-prosta { max-width:1040px; margin:0 auto; padding:26px 24px 60px; }
.gora { display:flex; justify-content:flex-end; align-items:center; flex-wrap:wrap; gap:14px; margin:0 0 14px; }
.pomoc-przycisk { display:inline-flex; align-items:center; gap:6px; color:var(--text-2); font-size:.85rem; text-decoration:none; }
.pomoc-przycisk:hover { color:var(--text); }
.pomoc-przycisk svg { width:16px; height:16px; }
.naglowek-prosty { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:28px; align-items:start; margin-bottom:22px; }
.naglowek-prosty h1 { font-family:var(--serif); font-weight:600; font-size:1.5rem; line-height:1.25; letter-spacing:-.01em; margin:0 0 8px; }
.naglowek-prosty h1 span { color:var(--clay); }
.naglowek-prosty .firma { display:block; font-family:var(--sans); font-size:.85rem; font-weight:400; color:var(--text-2); margin-top:2px; }
.naglowek-prosty .lead { font-family:var(--sans); font-size:1rem; line-height:1.6; color:var(--text-2); margin:0; }
.naglowek-prosty .zegar-blok { grid-column:2; grid-row:1 / span 2; }
.naglowek-prosty .zegar-blok .zegar { width:104px; height:104px; }
.naglowek-prosty .zegar-blok .zegar:hover { transform:scale(1.9); }
@media (max-width:720px) { .naglowek-prosty .zegar-blok .zegar { width:72px; height:72px; } .naglowek-prosty { column-gap:16px; } }
.logowanie { max-width:440px; }
.haslo-raz { border:1px dashed var(--uwaga); background:var(--tlo-uwaga); border-radius:var(--r); padding:12px 16px; margin:0 0 16px; }
.duzy-kod { font-family:var(--mono); font-size:1.05rem; letter-spacing:.05em; user-select:all; }

/* ---------- stopka ---------- */
.stopka { max-width:var(--szer); margin:30px auto 0; padding:18px 20px 28px; border-top:1px solid var(--line); color:var(--text-3); font-size:.8rem; }
.kontener-prosta .stopka { padding-left:0; padding-right:0; }
.stopka a { color:var(--clay-tekst); text-decoration:none; }
.stopka a:hover { text-decoration:underline; }
.adres-kanoniczny { font-family:var(--mono); font-size:.7rem; color:var(--clay-tekst); }
@media (max-width:480px) { .adres-kanoniczny { font-size:.64rem; } }

/* ---------- toasty ---------- */
.toasty { position:fixed; left:50%; transform:translateX(-50%); bottom:18px; z-index:60; display:flex; flex-direction:column; gap:8px; pointer-events:none; width:min(92vw, 420px); }
.toast { background:var(--text); color:var(--bg); padding:10px 14px; border-radius:var(--r); font-size:.86rem; box-shadow:var(--cien); pointer-events:auto; }
.toast.zly { background:var(--zle); color:#fff; } .toast.dobry { background:var(--dobrze); color:#fff; }

/* ---------- dokumenty do druku (oferta, list przewozowy, WZ, etykiety) ---------- */
.dokument { background:#fff; color:#1d1d1b; border:1px solid var(--line); border-radius:var(--r); padding:34px 40px; max-width:1000px; margin:0 auto; font-size:.86rem; }
.dokument h1 { color:#1d1d1b; font-family:var(--serif); font-weight:600; font-size:1.5rem; margin:0; letter-spacing:-.01em; }
.dokument h2 { color:#1d1d1b; font-size:1rem; margin:20px 0 8px; }
.dokument .tekst-3, .dokument .opis { color:#5d5b55; }
.dokument-glowa { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; padding-bottom:16px; border-bottom:2px solid #1d1d1b; margin-bottom:16px; }
.dokument-glowa .prawo { text-align:right; }
.dokument .strony { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; margin-bottom:16px; }
.dokument table { width:100%; border-collapse:collapse; font-size:.82rem; }
.dokument th, .dokument td { padding:6px 7px; border-bottom:1px solid #d8d6cf; text-align:left; vertical-align:top; color:#1d1d1b; }
.dokument th { font-size:.68rem; text-transform:uppercase; letter-spacing:.05em; color:#5d5b55; font-weight:600; border-bottom:1.5px solid #1d1d1b; }
.dokument td.liczba, .dokument th.liczba { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.dokument tfoot td { font-weight:700; border-top:1.5px solid #1d1d1b; border-bottom:0; }
.dokument .podpisy { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-top:46px; }
.dokument .podpisy div { border-top:1px solid #1d1d1b; padding-top:4px; font-size:.74rem; color:#5d5b55; text-align:center; }
.dokument .stopka-dok { margin-top:26px; padding-top:10px; border-top:1px solid #d8d6cf; font-size:.7rem; color:#5d5b55; }
.dokument .znak-demo { display:inline-block; font-family:var(--mono); font-size:.66rem; letter-spacing:.12em; color:#a94e2c; border:1px solid #a94e2c; border-radius:4px; padding:1px 6px; margin-left:8px; vertical-align:middle; }
.etykiety { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; max-width:1000px; margin:0 auto; }
.etykieta { background:#fff; color:#1d1d1b; border:1.5px solid #1d1d1b; border-radius:4px; padding:0; display:grid; grid-template-columns:1fr 1fr; font-size:.72rem; break-inside:avoid; }
.etykieta > div { padding:5px 8px; border-bottom:1px solid #1d1d1b; min-width:0; }
.etykieta > div:nth-child(odd) { border-right:1px solid #1d1d1b; }
.etykieta .pelne { grid-column:1 / -1; border-right:0 !important; }
.etykieta span { display:block; font-size:.6rem; text-transform:uppercase; letter-spacing:.04em; color:#5d5b55; }
.etykieta b { font-size:1rem; font-weight:700; overflow-wrap:anywhere; }
.etykieta b.duze { font-size:1.35rem; }
.etykieta svg.kod { display:block; width:100%; height:36px; margin-top:2px; }
.etykieta svg.kod rect { fill:#000; }
@media (max-width:700px) { .dokument { padding:18px; } .dokument-glowa, .dokument .strony { grid-template-columns:minmax(0,1fr); } .etykiety { grid-template-columns:minmax(0,1fr); } }

@media print {
  .naglowek-app, .stopka, .nie-drukuj, .zakladki, .akcje, .toasty, .komunikat, .strona-glowa { display:none !important; }
  body { background:#fff; color:#000; font-size:10pt; }
  .kontener { max-width:none; padding:0; }
  .dokument { border:0; padding:0; max-width:none; }
  .etykiety { gap:6mm; }
  a { color:inherit; text-decoration:none; }
}

/* ---------- sprzedaz: ocena wykonalnosci w wierszu pozycji ---------- */
details.ocena { margin-top:4px; }
details.ocena > summary { color:var(--clay-tekst); width:fit-content; }
.ocena-forma { display:grid; gap:6px; margin-top:6px; min-width:200px; }

/* ---------- rozwijane sekcje (details) ---------- */
details > summary { cursor:pointer; color:var(--clay-tekst); width:fit-content; font-size:.88rem; }
details > summary:hover { text-decoration:underline; }
details > summary.drugi, details > summary.glowny { list-style:none; text-decoration:none; }
details > summary.drugi::-webkit-details-marker, details > summary.glowny::-webkit-details-marker { display:none; }
details[open] > summary { margin-bottom:8px; }

/* ---------- poprawki po przegladzie modulow (planowanie) ---------- */
.tabela th.obc, .tabela th.srodek, .tabela td.srodek { text-align:center; }
.gantt .tlo-wolne { fill:color-mix(in srgb, var(--text-3) 16%, var(--surface)); }
.legenda i { padding:0; }
.legenda .probka { display:inline-block; min-width:44px; padding:2px 6px; border-radius:4px; text-align:center; font-size:.74rem; }
.filtry.odstep, .pole-wybor.odstep, .przyciski.odstep { margin-top:14px; }
.siatka-pol .pole-wybor.srodek { align-self:center; }

/* poprawki po przegladzie modulow (magazyn, wysylka, produkcja) */
.dokument .tabela-w { overflow-x:auto; background:transparent; }
.dokument a { color:#a94e2c; }
a.drugi[aria-current="true"] { border-color:var(--clay); color:var(--clay-tekst); font-weight:600; }
.liczba .opis { white-space:normal; }

