/* CRMed Finanse — biel, grafit, akcent #FFE600; czerwień wyłącznie dla realnych alarmów. */
@font-face{font-family:Manrope;src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=manrope-600-latin-ext.woff2) format("woff2");font-weight:600;unicode-range:U+0100-02AF,U+1E00-1EFF;font-display:swap}
@font-face{font-family:Manrope;src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=manrope-600-latin.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=manrope-700-latin-ext.woff2) format("woff2");font-weight:700;unicode-range:U+0100-02AF,U+1E00-1EFF;font-display:swap}
@font-face{font-family:Manrope;src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=manrope-700-latin.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Manrope;src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=manrope-800-latin-ext.woff2) format("woff2");font-weight:800;unicode-range:U+0100-02AF,U+1E00-1EFF;font-display:swap}
@font-face{font-family:Manrope;src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=manrope-800-latin.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Public Sans";src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=public-sans-400-latin-ext.woff2) format("woff2");font-weight:400;unicode-range:U+0100-02AF,U+1E00-1EFF;font-display:swap}
@font-face{font-family:"Public Sans";src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=public-sans-400-latin.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Public Sans";src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=public-sans-600-latin-ext.woff2) format("woff2");font-weight:600;unicode-range:U+0100-02AF,U+1E00-1EFF;font-display:swap}
@font-face{font-family:"Public Sans";src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=public-sans-600-latin.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Public Sans";src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=public-sans-700-latin-ext.woff2) format("woff2");font-weight:700;unicode-range:U+0100-02AF,U+1E00-1EFF;font-display:swap}
@font-face{font-family:"Public Sans";src:url(https://www.crmed.com.pl/strefa-pracownika/?zasob=font&f=public-sans-700-latin.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
	--y:#FFE600;--y-d:#e6cf00;--g:#2b2f33;--g2:#1f2226;--g3:#3a3f45;
	--ink:#1b1e22;--mut:#646b75;--bd:#e4e6ea;--bg:#f5f6f7;--card:#fff;
	--red:#c62828;--red-bg:#fdecec;--or:#d9690b;--or-bg:#fff1e3;--amb:#9a6a00;--amb-bg:#fff6d6;--yel-bg:#fffbe0;
	--grn:#1e7a44;--grn-bg:#e7f5ec;--blue:#1d5fa8;--blue-bg:#e8f1fb;--vio:#6b3fa0;--vio-bg:#f2ecfa;
	--r:12px;--sh:0 1px 2px rgba(20,24,28,.06),0 2px 10px rgba(20,24,28,.04)
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0}
body.fin{font-family:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:14.5px;line-height:1.45;color:var(--ink);background:var(--bg);display:flex;min-height:100vh}
a{color:inherit}
h1,h2,h3,.kpi__v,.brand,.btn,.doc-h__n{font-family:Manrope,"Public Sans",system-ui,sans-serif}
.nav-t{display:none}

/* Sidebar */
.side{width:238px;flex:0 0 238px;background:var(--g);color:#e8eaed;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}
.brand{display:flex;flex-direction:column;padding:22px 22px 18px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.08)}
.brand__m{font-weight:800;font-size:13px;letter-spacing:2px;color:#aab0b8}
.brand__f{font-weight:800;font-size:22px;letter-spacing:1.5px;color:#fff;border-left:4px solid var(--y);padding-left:9px;margin-top:4px}
.nav{padding:10px 10px 20px;flex:1}
.nav__g{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:#8a9199;margin:16px 12px 4px;font-weight:700}
.nav__i{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:8px;text-decoration:none;color:#e8eaed;font-weight:600;font-size:14.5px}
.nav__i--sub{font-weight:500;padding:7px 12px 7px 20px;color:#cfd3d8}
.nav__i:hover{background:var(--g3)}
.nav__i.is-on{background:var(--y);color:var(--g2)}
.nav__i--cta{color:var(--y)}
.nav__i--cta.is-on{color:var(--g2)}
.nav__b{margin-left:auto;background:var(--red);color:#fff;border-radius:10px;font-size:12px;padding:0 7px;line-height:19px;font-weight:700}
.nav__i.is-on .nav__b{background:var(--g2);color:var(--y)}
.side__foot{padding:14px 22px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;font-size:13px}
.side__foot a{color:#aab0b8;text-decoration:none}.side__foot a:hover{color:#fff}

/* Main */
.main{flex:1;min-width:0;display:flex;flex-direction:column}
.top{display:flex;align-items:center;gap:16px;padding:14px 28px;background:#fff;border-bottom:1px solid var(--bd);position:sticky;top:0;z-index:5}
.top__t{font-size:20px;margin:0;font-weight:800;white-space:nowrap}
.top__s{flex:1;max-width:460px;margin-left:auto}
.top__s input{width:100%;padding:9px 14px;border:1px solid var(--bd);border-radius:9px;background:var(--bg);font:inherit}
.top__u{color:var(--mut);font-size:13px;white-space:nowrap}
.top__burger{display:none;font-size:22px;cursor:pointer;padding:0 6px}
.envtag{background:var(--y);color:var(--g2);font-weight:800;font-size:12px;padding:5px 10px;border-radius:7px;text-decoration:none;letter-spacing:.5px;white-space:nowrap}
.page{padding:24px 28px 60px;max-width:1440px;width:100%}

/* Typografia / pomocnicze */
.lead{color:var(--mut);margin:0 0 14px;max-width:880px}
.muted{color:var(--mut)}.small{font-size:12.5px}.mono{font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace;letter-spacing:-.2px}.nowrap{white-space:nowrap}
.sec{font-size:17px;font-weight:800;margin:26px 0 10px;display:flex;align-items:baseline;gap:12px}
.sec__more{font-size:13px;font-weight:600;color:var(--mut);text-decoration:none;margin-left:auto}.sec__more:hover{color:var(--ink)}
.h3{font-size:15px;margin:18px 0 8px}
.back{display:inline-block;margin-bottom:10px;color:var(--mut);text-decoration:none;font-weight:600}
.grow{flex:1}
.disclaimer{color:var(--mut);font-size:12.5px;margin-top:24px;border-top:1px solid var(--bd);padding-top:10px}
.hello{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;color:var(--mut);font-weight:600;flex-wrap:wrap}
.hello__cta{display:flex;gap:8px;flex-wrap:wrap}

/* Karty */
.card{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:18px 20px;box-shadow:var(--sh);margin-bottom:16px}
.card__t{font-size:15.5px;font-weight:800;margin:0 0 12px;display:flex;align-items:center;gap:10px}
.card__t.big{font-size:20px}
.card--att{border-left:5px solid var(--g)}
.card--on{border-color:var(--g)}
.cols{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;align-items:start}
.pill{display:inline-block;border-radius:11px;padding:0 9px;font-size:13px;line-height:22px;font-weight:800}
.pill--red{background:var(--red);color:#fff}.pill--violet{background:var(--vio);color:#fff}

/* Alarmy „Wymaga uwagi” */
.atts{display:flex;flex-direction:column;gap:8px}
.att{display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:10px;text-decoration:none;border:1px solid var(--bd);border-left-width:6px;background:#fff;font-size:15.5px}
.att:hover{filter:brightness(.98)}
.att__i{font-size:17px;width:24px;text-align:center}
.att__t{font-weight:700}
.att__a{margin-left:auto;font-family:Manrope,sans-serif;font-weight:800;font-size:17px;white-space:nowrap}
.att__go{color:var(--mut);font-size:20px;margin-left:6px}
.att--red{border-left-color:var(--red);background:var(--red-bg)}.att--red .att__a{color:var(--red)}
.att--orange{border-left-color:var(--or);background:var(--or-bg)}
.att--yellow{border-left-color:var(--y-d);background:var(--yel-bg)}
.att--amber{border-left-color:#e0a800;background:var(--amb-bg)}
.att--violet{border-left-color:var(--vio);background:var(--vio-bg)}
.att--grey{border-left-color:#b9bec5}
.att--ok{border-left-color:var(--grn);background:var(--grn-bg)}

/* KPI */
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}
.kpi{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:16px 18px;text-decoration:none;box-shadow:var(--sh);border-top:4px solid var(--y);min-width:0}
a.kpi:hover{border-color:#cfd3d8;border-top-color:var(--y)}
.kpi__l{font-size:12.5px;color:var(--mut);font-weight:600;text-transform:uppercase;letter-spacing:.4px}
.kpi__v{font-size:27px;font-weight:800;letter-spacing:-.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi__v--s{font-size:18px;white-space:normal}
.kpi__s{font-size:12.5px;color:var(--mut)}
.kpi--red{border-top-color:var(--red)}.kpi--red .kpi__v{color:var(--red)}
.delta{font-weight:700;font-size:12.5px}.delta--up{color:var(--red)}.delta--down{color:var(--grn)}

/* Tabele */
.tbl-wrap{overflow-x:auto;background:#fff;border:1px solid var(--bd);border-radius:var(--r);box-shadow:var(--sh)}
.card .tbl-wrap{box-shadow:none}
.tbl{width:100%;border-collapse:collapse}
.tbl th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:var(--mut);font-weight:700;padding:10px 12px;border-bottom:1px solid var(--bd);background:#fafbfb;white-space:nowrap}
.tbl td{padding:10px 12px;border-bottom:1px solid #eff0f2;vertical-align:top}
.tbl tr:last-child td{border-bottom:0}
.tbl tfoot td{font-weight:700;border-top:2px solid var(--bd)}
.tbl a{text-decoration:none}.tbl a:hover{text-decoration:underline}
.tbl--compact td,.tbl--compact th{padding:7px 8px}
.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.act{text-align:right;white-space:nowrap}.act form{display:inline-block;margin-left:4px}
.row--red td{background:#fff6f6}.row--red td:first-child{box-shadow:inset 4px 0 0 var(--red)}
.row--orange td:first-child{box-shadow:inset 4px 0 0 var(--or)}
.row--muted td{color:var(--mut)}
.matrix td,.matrix th{padding:6px 8px;font-size:13px}
.months .minibar{width:22%}.minibar span{display:block;height:10px;border-radius:5px;background:var(--g)}
.corr .grp{text-align:center;background:#f0f1f3}.corr .grp--y{background:var(--y);color:var(--g2)}
.corr input{width:100%;min-width:60px}.corr td[data-diff]{font-weight:700}

/* Chipy */
.chip{display:inline-block;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:700;white-space:nowrap;line-height:18px;letter-spacing:.2px}
.chip--grey{background:#eef0f2;color:#4b525b}.chip--red{background:var(--red);color:#fff}.chip--orange{background:var(--or);color:#fff}
.chip--amber{background:var(--amb-bg);color:var(--amb)}.chip--yellow{background:#fff3b0;color:#6b5a00}.chip--green{background:var(--grn-bg);color:var(--grn)}
.chip--blue{background:var(--blue-bg);color:var(--blue)}.chip--violet{background:var(--vio-bg);color:var(--vio)}.chip--dark{background:var(--g);color:#fff}

/* Przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px;border-radius:9px;border:1px solid #cfd3d8;background:#fff;color:var(--ink);font-weight:700;font-size:14px;text-decoration:none;cursor:pointer;white-space:nowrap;line-height:1.2}
.btn:hover{border-color:var(--g)}
.btn--y{background:var(--y);border-color:var(--y);color:var(--g2)}.btn--y:hover{background:var(--y-d);border-color:var(--y-d)}
.btn--dark{background:var(--g);border-color:var(--g);color:#fff}.btn--dark:hover{background:var(--g2)}
.btn--ghost{background:transparent}
.btn--danger{color:var(--red);border-color:#f0b9b9}.btn--danger:hover{border-color:var(--red)}
.btn--danger-solid{background:var(--red);border-color:var(--red);color:#fff}.btn--danger-solid:hover{background:#a51f1f}
.btn--s{padding:5px 10px;font-size:13px;border-radius:7px}
.btn--lg{padding:15px 26px;font-size:16px;border-radius:11px}
.btn--block{width:100%}
.btn[disabled]{opacity:.5;cursor:not-allowed}

/* Formularze */
input[type=text],input[type=email],input[type=date],input[type=month],input[type=number],input[type=password],input[type=search],input:not([type]),select,textarea{font:inherit;padding:8px 10px;border:1px solid #cfd3d8;border-radius:8px;background:#fff;color:var(--ink);max-width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--y);outline-offset:1px;border-color:var(--g)}
input[readonly]{background:#f3f4f5}
textarea{width:100%}
.field{display:flex;flex-direction:column;gap:4px;min-width:0}
.field input,.field select,.field textarea{width:100%}
.field__l{font-size:12.5px;font-weight:700;color:#454c55}
.field__h{font-size:12px;color:var(--mut)}
.grid{display:grid;gap:12px 14px;margin-bottom:12px}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g5{grid-template-columns:repeat(5,minmax(0,1fr))}.g6{grid-template-columns:repeat(6,minmax(0,1fr))}
.span2{grid-column:span 2}
.check,.radio{display:flex;align-items:flex-start;gap:8px;margin:8px 0;cursor:pointer}
.check.big{font-size:15.5px;font-weight:700;padding:12px;background:var(--yel-bg);border-radius:10px;border:1px solid #f1e38c}
.choice{display:flex;gap:10px;padding:12px 14px;border:1px solid var(--bd);border-radius:10px;margin-bottom:8px;cursor:pointer}
.choice:hover{border-color:var(--g)}.choice>span{display:flex;flex-direction:column;gap:2px}
.form__actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;align-items:center}
.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
.inline-form .field{flex-direction:row;align-items:center;gap:6px}
.inline{display:inline-block}
.nipbox{display:flex;gap:6px}.nipbox input{flex:1}
.lookup-msg{font-size:13px;color:var(--mut);min-height:18px}
.lookup-msg.is-ok{color:var(--grn)}.lookup-msg.is-err{color:var(--red)}
.quick{display:flex;gap:6px;margin-top:4px}.quick button{font:inherit;font-size:12px;padding:2px 8px;border:1px solid var(--bd);border-radius:6px;background:#fff;cursor:pointer}
.dates2{display:flex;gap:6px}.dates2 input{flex:1;min-width:0}
details.more{margin-top:8px}details.more summary{cursor:pointer;font-weight:700;font-size:13px;color:var(--mut)}
.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:4px 0 16px}.actions form{margin:0}
.actions .wide{flex-basis:100%}
.lock{margin-left:6px}

/* Filtry, zakładki */
.bar-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:12px}
.tabs__i{padding:8px 14px;border-radius:9px;text-decoration:none;font-weight:700;color:var(--mut);border:1px solid transparent}
.tabs__i:hover{color:var(--ink);background:#fff;border-color:var(--bd)}
.tabs__i.is-on{background:var(--g);color:#fff}
.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:10px 12px;margin-bottom:12px}
.filters__q{flex:1;min-width:220px}
.filters__more{flex-basis:100%}.filters__more[open]{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.filters__more summary{cursor:pointer;font-size:13px;color:var(--mut);font-weight:700}
.filters__more label{display:flex;gap:6px;align-items:center;font-size:13px}
.sumbar{display:flex;gap:18px;flex-wrap:wrap;font-size:13.5px;margin:0 0 10px;color:#3d434b}
.sumbar__open{margin-left:auto}
.pager{display:flex;gap:4px;margin-top:12px;flex-wrap:wrap}
.pager__i{padding:5px 11px;border-radius:7px;border:1px solid var(--bd);text-decoration:none;background:#fff}.pager__i.is-on{background:var(--g);color:#fff}
.empty{padding:22px;text-align:center;color:var(--mut);background:#fafbfb;border-radius:10px;border:1px dashed #d8dbdf}

/* Komunikaty */
.alert{padding:11px 14px;border-radius:10px;margin-bottom:12px;border:1px solid}
.alert ul{margin:6px 0 0 18px;padding:0}
.alert--ok{background:var(--grn-bg);border-color:#bfe3cc;color:#164f2e}
.alert--err{background:var(--red-bg);border-color:#f3bcbc;color:#7d1a1a}
.alert--warn{background:var(--amb-bg);border-color:#f0dc9a;color:#5e4500}
.alert--info{background:var(--blue-bg);border-color:#c5dbf2;color:#17406d}

/* Wykresy słupkowe */
.bars{display:flex;flex-direction:column;gap:6px}
.bar{display:grid;grid-template-columns:minmax(120px,1.1fr) 2fr auto;gap:10px;align-items:center;text-decoration:none;padding:3px 0}
.bars--wide .bar{grid-template-columns:minmax(160px,1fr) 2.4fr minmax(140px,auto)}
.bar__l{font-weight:600;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bar__t{height:12px;background:#eef0f2;border-radius:6px;overflow:hidden}
.bar__f{display:block;height:100%;background:var(--g);border-radius:6px}
.bar:hover .bar__f{background:var(--y-d)}
.bar__v{font-weight:800;font-family:Manrope,sans-serif;text-align:right;white-space:nowrap}

/* Karta dokumentu */
.doc-h{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--bd);border-radius:var(--r);padding:18px 22px;margin-bottom:12px;box-shadow:var(--sh);border-left:6px solid var(--y)}
.doc-h__k{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--mut);font-weight:700}
.doc-h__n{margin:2px 0 8px;font-size:24px;font-weight:800;word-break:break-all}
.doc-h__c{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.doc-h__amt{text-align:right;display:flex;flex-direction:column}.doc-h__amt span{color:var(--mut);font-size:12.5px}
.doc-h__amt b{font-family:Manrope,sans-serif;font-size:28px}
.doc-h__open{color:var(--red)!important;font-weight:700;font-size:13.5px!important}
.parties{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:12px}
.parties>div{background:#f7f8f9;border-radius:10px;padding:12px 14px}
.parties .hl{background:var(--yel-bg);border:1px solid #f1e38c}.parties .big{font-size:17px}
.lbl{font-size:11.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--mut);font-weight:700;margin-bottom:3px}
.dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px 16px;margin:0}
.dl>div{display:flex;flex-direction:column}
.dl dt{font-size:12px;color:var(--mut);font-weight:600}.dl dd{margin:0;font-weight:600}
.dl--tight{grid-template-columns:1fr}.dl--tight>div{flex-direction:row;justify-content:space-between;gap:10px;border-bottom:1px dashed #e7e9ec;padding:5px 0}
.dl__big dd{font-size:20px;font-weight:800;font-family:Manrope,sans-serif}
.timeline{list-style:none;margin:0;padding:0;font-size:13.5px}
.timeline li{padding:6px 0 6px 14px;border-left:2px solid var(--bd);position:relative}
.timeline li::before{content:"";position:absolute;left:-5px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--g)}
.timeline__d{color:var(--mut);font-variant-numeric:tabular-nums}
.classify{border-left:5px solid var(--y)}

/* Formularz faktury */
.saleform{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
.sticky{position:sticky;top:78px}
.stack{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.items{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.items__h,.items__r{display:grid;grid-template-columns:minmax(0,3fr) 70px 70px 110px 150px 100px 100px 30px;gap:6px;align-items:center}
.items__h{font-size:11.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--mut);font-weight:700}
.items__r input,.items__r select{width:100%}
.x{border:0;background:none;font-size:20px;cursor:pointer;color:var(--mut)}.x:hover{color:var(--red)}
.exempt{margin-top:10px}.exempt[hidden]{display:none}

/* KSeF */
.steps{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.steps__i{padding:8px 14px;border-radius:20px;background:#eceef0;color:var(--mut);font-weight:700;font-size:13px}
.steps__i.is-on{background:var(--g);color:#fff}.steps__i.is-done{background:var(--grn-bg);color:var(--grn)}
.card--check{border-top:5px solid var(--y)}
.preview .tbl{margin:12px 0}
.preview__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}
.totals{background:#f7f8f9;border-radius:10px;padding:12px}
.final{max-width:760px;margin:10px auto;text-align:center;padding:34px 32px;border-top:6px solid var(--y)}
.final--prod{border-top-color:var(--red)}
.final__t{font-size:26px;font-weight:800;margin:0 0 14px;letter-spacing:.5px}
.final__w{font-size:17px;font-weight:600;background:var(--red-bg);color:#7d1a1a;border-radius:10px;padding:14px 16px;margin:0 0 18px}
.final__sum{text-align:left;grid-template-columns:1fr 1fr;margin-bottom:22px}
.final__f{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* Raporty */
.report__t{font-size:24px;font-weight:800;margin:0 0 12px}
.rline{display:flex;justify-content:space-between;gap:12px;padding:10px 4px;border-bottom:1px solid #eef0f2;text-decoration:none}
.rline:hover{background:#fafbfb}
.rline__v{font-family:Manrope,sans-serif;font-weight:800;white-space:nowrap}
.rline--big .rline__l{font-weight:800;font-size:16px}.rline--big .rline__v{font-size:19px}
.rline--red .rline__v{color:var(--red)}
.rsep{height:10px}
.monthnav{display:flex;gap:8px;align-items:center;margin-bottom:14px;flex-wrap:wrap}
.presets{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.exp-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.corr-sum{display:flex;gap:24px;justify-content:flex-end;padding:12px;background:#f7f8f9;border-radius:10px;margin-top:10px}
.corr-sum div{display:flex;flex-direction:column;align-items:flex-end}.corr-sum span{font-size:12px;color:var(--mut)}
.corr-sum b{font-family:Manrope,sans-serif;font-size:18px}.corr-sum__d b{color:var(--g2);background:var(--y);padding:0 8px;border-radius:6px}

/* Responsywność */
@media (max-width:1100px){
	.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
	.cols,.saleform,.preview__grid{grid-template-columns:1fr}
	.sticky{position:static}
	.g4,.g5,.g6{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1280px){
	.items__h{display:none}
	.items__r{grid-template-columns:70px 80px minmax(0,1fr) minmax(0,1.3fr) 90px 90px 30px;padding:10px;border:1px solid var(--bd);border-radius:10px;row-gap:8px}
	.items__r input[data-f=name]{grid-column:1/-1}
	.items__r [data-o=net]::before{content:"netto ";color:var(--mut);font-size:11px}
	.items__r [data-o=gross]::before{content:"brutto ";color:var(--mut);font-size:11px}
}
@media (max-width:860px){
	body.fin{display:block}
	.side{position:fixed;left:0;top:0;bottom:0;z-index:30;transform:translateX(-100%);transition:transform .2s}
	.nav-t:checked~.side{transform:none;box-shadow:0 0 0 100vmax rgba(0,0,0,.35)}
	.top__burger{display:block}
	.top{padding:10px 16px;flex-wrap:wrap}
	.top__s{order:5;flex-basis:100%;max-width:none}
	.top__u{display:none}
	.page{padding:16px}
	.g3,.g4,.g5,.g6,.parties,.final__sum{grid-template-columns:1fr}
	.span2{grid-column:auto}
	.items__h{display:none}
	.items__r{grid-template-columns:1fr 1fr 1fr;padding:10px;border:1px solid var(--bd);border-radius:10px}
	.items__r input[data-f=name]{grid-column:1/-1}
	.doc-h{flex-direction:column}.doc-h__amt{text-align:left}
	.att{font-size:14px;padding:11px 12px;gap:9px}.att__t{flex:1;min-width:0}.att__a{font-size:15px}.att__go{display:none}
	.kpi__v{font-size:22px}
	.bar,.bars--wide .bar{grid-template-columns:1fr auto}.bar__t{grid-column:1/-1;grid-row:2}
	.sumbar__open{margin-left:0}
}
@media (max-width:520px){.kpis{grid-template-columns:1fr}}

@media print{
	.side,.top,.noprint,.actions,.btn{display:none!important}
	body.fin{background:#fff;display:block}.page{padding:0}.card,.kpi{box-shadow:none;break-inside:avoid}
}

/* Logowanie Finansów (osobne od WordPress/Recepcji) */
body.fin--auth{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#f7f7f5 0%,#eceef0 100%);padding:24px 16px}
.auth{width:100%;max-width:420px}
.auth__card{background:#fff;border-radius:18px;padding:30px 30px 24px;box-shadow:0 10px 40px rgba(20,24,28,.10),0 1px 3px rgba(20,24,28,.08);border-top:6px solid var(--y)}
.auth__logo{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.auth__logo img{width:120px;height:auto}
.auth__logo span{font-family:Manrope,sans-serif;font-weight:800;letter-spacing:2px;color:var(--g);border-left:4px solid var(--y);padding-left:10px;font-size:18px}
.auth__t{font-size:22px;margin:0 0 6px;font-weight:800}
.auth__s{color:var(--mut);margin:0 0 16px;font-size:14px}
.auth__f{display:flex;flex-direction:column;gap:12px}
.auth__f input{padding:11px 12px;font-size:15px}
.auth__link{display:block;text-align:center;margin-top:14px;color:var(--g);font-weight:700;text-decoration:none}
.auth__link:hover{text-decoration:underline}
.auth__rules{margin:0;padding-left:18px;color:var(--mut);font-size:12.5px}
.auth__foot{text-align:center;color:var(--mut);font-size:12px;margin-top:14px}

/* Powitanie */
.welcome{background:#fff;border:1px solid var(--bd);border-left:6px solid var(--y);border-radius:var(--r);padding:16px 20px;margin-bottom:16px;box-shadow:var(--sh);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.welcome__h{font-family:Manrope,sans-serif;font-size:22px;font-weight:800;margin:0}
.welcome__s{margin:4px 0 0;color:#3d434b;font-size:15px}
.welcome__d{color:var(--mut);font-size:13px;font-weight:600}
.top__acc{display:flex;gap:10px;align-items:center;white-space:nowrap}
.top__acc a,.top__acc button{font:inherit;font-size:13px;color:var(--mut);background:none;border:0;cursor:pointer;text-decoration:none;padding:0}
.top__acc a:hover,.top__acc button:hover{color:var(--ink)}
@media (max-width:860px){.top__acc .top__u{display:none}.welcome__h{font-size:19px}}
.side__foot form{margin:0}.side__btn{font:inherit;font-size:13px;background:none;border:0;color:#aab0b8;cursor:pointer;padding:0}.side__btn:hover{color:#fff}
.auth__linkbtn{background:none;border:0;font:inherit;font-weight:700;cursor:pointer;width:100%}
.once-secret{font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace;font-size:18px;font-weight:700;background:#fff;border:2px dashed var(--g);border-radius:8px;padding:6px 12px;display:inline-block;margin:6px 0;user-select:all;letter-spacing:.5px}
.userform{border-top:1px solid var(--bd);margin-top:10px;padding-top:12px}

/* Strefa pracownika (wspólne wejście ze stopki strony) */
.auth--wide{max-width:520px}
.portal{display:grid;gap:10px;margin:6px 0 16px}
.portal__tile{display:block;padding:14px 16px;border:1px solid var(--bd);border-left:5px solid var(--y);border-radius:12px;background:#fff;color:var(--g2);text-decoration:none;transition:box-shadow .15s,transform .15s}
.portal__tile:hover,.portal__tile:focus-visible{box-shadow:0 6px 20px rgba(20,24,28,.10);transform:translateY(-1px)}
.portal__tile b{display:block;font-size:16px;margin-bottom:2px}
.portal__tile span{display:block;font-size:13px;color:#5b636c}
.portal__tile--finanse{border-left-color:var(--g)}
.portal__tile--admin{border-left-color:#9aa1a9}
.auth__foot a{color:inherit}
.auth__link--sub{font-size:13px;opacity:.8;margin-top:4px}

/* KSeF — status integracji (ETAP 1: tylko odczyt) */
.ksefstat__mode{font-size:15px;margin-bottom:10px}
.ksefstat__badge{display:inline-block;padding:3px 10px;border-radius:999px;font-weight:800;letter-spacing:.3px}
.ksefstat__badge--off{background:#eef0f2;color:#4b525b}.ksefstat__badge--ro{background:var(--blue-bg);color:var(--blue)}.ksefstat__badge--prod{background:var(--g);color:#fff}
.ksefstat__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 12px}
.ksefstat__grid div{background:var(--bg);border-radius:10px;padding:10px 12px}.ksefstat__grid dt{font-size:12px;color:var(--mut)}.ksefstat__grid dd{margin:2px 0 0;font-weight:700;font-size:15px}
@media (max-width:700px){.ksefstat__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.dupbox{border-left:5px solid var(--amb)}
.ro-banner{background:#0f3d63;color:#fff;border-radius:var(--r);padding:18px 22px;margin-bottom:14px;box-shadow:var(--sh)}
.ro-banner__t{font-size:22px;font-weight:800;letter-spacing:.3px}
.ro-banner__d{font-size:15px;margin:6px 0 4px;line-height:1.5}
.ro-banner__s{font-size:13px;opacity:.85;margin:0}
.ksefstat__sub{font-size:13px;color:var(--mut);margin-top:4px;font-weight:400}
.ro-mode{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;background:var(--blue-bg);border-radius:10px;padding:10px 12px;margin:0 0 12px}
.ro-mode__l{font-size:12px;font-weight:800;letter-spacing:.8px;color:var(--blue)}.ro-mode__v{color:var(--blue)}
.check.is-disabled{opacity:.6;cursor:not-allowed}

/* ===== Audyt 25.09.2026 — telefon (≤700 px): bez poziomego przewijania, tabele jako karty, większe przyciski ===== */
.card,.cols>*,.grid>*,.parties>div,.saleform__main,.saleform>*,.kpis>*{min-width:0}
.page{overflow-wrap:break-word}
.dl dd,.parties>div,.mono{overflow-wrap:anywhere}
@media (max-width:700px){
	.btn{min-height:40px;white-space:normal;max-width:100%;text-align:center}
	.btn--s{min-height:36px;padding:7px 12px}
	.top__acc button{min-height:32px;padding:6px 8px}
	.exp-btns .btn,.actions .btn{white-space:normal;text-align:center}
	.rline{flex-wrap:wrap}.rline__l{min-width:0;flex:1 1 auto}
	.tbl-wrap{overflow:visible;border:0;background:none;box-shadow:none}
	.tbl:not(.tbl--keep){display:block}
	.tbl:not(.tbl--keep) thead{display:none}
	.tbl:not(.tbl--keep) tbody,.tbl:not(.tbl--keep) tfoot{display:block}
	.tbl:not(.tbl--keep) tr{display:block;border:1px solid var(--bd);border-radius:10px;padding:6px 12px;margin-bottom:8px;background:#fff}
	.tbl:not(.tbl--keep) td{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;border:0;text-align:right;white-space:normal}
	.tbl:not(.tbl--keep) td::before{content:attr(data-label);color:var(--mut);font-size:12px;font-weight:600;text-align:left;flex:0 0 auto;max-width:48%}
	.tbl:not(.tbl--keep) td:not([data-label]),.tbl:not(.tbl--keep) td[data-label=""]{display:block;text-align:left}
	.tbl:not(.tbl--keep) td:not([data-label])::before,.tbl:not(.tbl--keep) td[data-label=""]::before{content:none}
	.tbl:not(.tbl--keep) td.act,.tbl:not(.tbl--keep) td .inline-form{justify-content:flex-start;flex-wrap:wrap}
	.tbl:not(.tbl--keep) td input,.tbl:not(.tbl--keep) td select{max-width:60%}
	.tbl.tbl--kv tr{padding:4px 12px}
	.tbl.tbl--kv td{display:block;text-align:left;padding:3px 0}
	.tbl.tbl--kv td+td{font-weight:600}
	.row--edit td[colspan]{display:block}
	.tabs{flex-wrap:wrap;overflow:visible}
	.check:not(.big){display:block}.check:not(.big) input{margin:0 8px 0 0;vertical-align:-2px}
	.saleform button,.items button,.chips button,[data-days]{min-height:34px;min-width:34px}
}
/* Tablet (701–1100 px): komórki akcji z formularzami (np. „Zapłacone” + „Pomiń”) zawijają się zamiast wychodzić poza ekran */
@media (max-width:1100px){.act{white-space:normal}.act form{margin:2px 0 2px 4px;vertical-align:middle}.act .inline-form{display:inline-flex;justify-content:flex-end;margin:2px 0}}
/* Telefon: długie statusy (np. „Rozliczona w fakturze pierwotnej”) zawijają się w karcie; „Wyloguj” w menu bocznym łatwy do trafienia palcem */
@media (max-width:700px){.chip{white-space:normal;max-width:100%}.tbl:not(.tbl--keep) td>*{min-width:0}.side__btn{min-height:36px;padding:6px 0}}

/* Ustawienia KSeF: pole NIP testowego poza trybem TEST — wyszarzone, nieedytowalne; kontekst DEMO/PROD tylko do odczytu */
.field--testnip.is-off{opacity:.45}.field--testnip.is-off input{background:var(--g-100,#f1f2f4);cursor:not-allowed}
.ksef-ctx{margin:6px 0 10px;padding:8px 12px;border-radius:8px;background:var(--blue-bg,#eef4ff)}
.field--testnip[hidden],.ksef-ctx[hidden]{display:none!important}
.paid-stamp{border:2px solid var(--grn,#2e7d32);color:var(--grn,#2e7d32);border-radius:10px;padding:10px 14px;margin:0 0 12px;line-height:1.5}.paid-stamp--part{border-color:var(--amb,#b26a00);color:var(--amb,#b26a00)}
.paid-stamp--unknown{border-color:var(--vio,#6a3fb5);color:var(--vio,#6a3fb5)}
.pill--amber{background:var(--amb-bg,#fff3d6);color:var(--amb,#8a5a00)}.card--todo{border-left:4px solid var(--amb,#d69e2e)}.att--todo{text-decoration:none;color:inherit}

/* Status synchronizacji KSeF na listach kosztów + wybór sortowania (2026-10-07) */
.syncbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between}.syncbar form{margin:0}.syncbar span{overflow-wrap:anywhere}
.filters__sort{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}
/* „Do zapłaty” — ekran operacyjny (2026-10-07) */
.paystats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:0 0 12px}
.paystat{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border:1px solid var(--line,#e3e5ea);border-radius:12px;background:#fff;text-decoration:none;color:inherit}
.paystat span{font-size:12px;text-transform:uppercase;letter-spacing:.04em;opacity:.75}.paystat b{font-size:18px}.paystat em{font-style:normal;font-variant-numeric:tabular-nums}
.paystat--due{border-left:5px solid #2b6cb0}.paystat--over{border-left:5px solid #c53030}.paystat--over b,.paystat--over em{color:#9b1c1c}.paystat--rev{border-left:5px solid #7c3aed;background:#faf7ff}
.payblock{margin:14px 0 22px}.payblock__t{font-size:17px;margin:0 0 8px}.payblock__t small{display:block;font-size:12px;font-weight:400;opacity:.75;margin-top:2px}
.payblock--rev .tbl{background:#fcfbff}.payblock__empty{padding:10px 0}
.tbl--pay .row--over td{background:#fff5f5}.payacts{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.payacts .inline-form{display:inline-flex;gap:4px;flex-wrap:wrap;align-items:center;margin:0}.payacts input[type=date]{max-width:150px}.payacts input[type=text]{min-width:200px}
@media (max-width:760px){.payacts{flex-direction:column;align-items:stretch}.payacts .btn{width:100%;text-align:center}}
/* 1.12.0 — płatność przy odbiorze + „Kategoria: do uzupełnienia” */
.cat-missing{color:var(--amb);font-size:12px;font-weight:600}
.paystat--cod{border-color:#e6d77a}
.payblock--cod .payblock__t{border-left:4px solid #e6d77a;padding-left:8px}
.paid-stamp--cod{background:#fff8d6;border-color:#e6d77a;color:#5b4b00}
.form--cod{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:6px}
.form--cod label{display:flex;flex-direction:column;font-size:12px;gap:2px}
.payacts details.more>summary.btn{list-style:none;cursor:pointer}
@media (max-width:700px){
	.tbl--pay td[data-l="Kontrahent"]{display:block;text-align:left}
	.tbl--pay td[data-l="Kontrahent"]::before{display:block;max-width:none;margin-bottom:2px}
	.form--cod label{width:100%}.form--cod input,.form--cod select{max-width:100%!important}
}
/* 1.14.0 — rozliczenie kosztowe (niezależne od płatności) */
.kpis--5{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px){.kpis--5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.kpis--5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.kpis--5{grid-template-columns:1fr}}
.kpi--adv{border-color:var(--blue-bg)}
.coststate{margin:0 0 8px}
