@import url("tokens.css");
/* sousweb Koszty. Paleta, rytm pól i zaokrąglenia inspirowane panelem sousweb Salon. */
:root{color-scheme:light;--bg:#f3f1ee;--card:#fff;--field:#f5f4f2;--ink:#161514;--muted:#6c716b;--line:#e6e3df;--brand:#192b25;--accent:#cae5b1;--accent-ink:#243b23;--ok:#267247;--bad:#b03b35;--warn:#91601b;--r:12px;--shadow:0 8px 32px #172b2510;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:var(--size-14)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--size-3) solid var(--color-70a27d);outline-offset:var(--size-3)}button,input,select{min-height:var(--size-42)}button{border:var(--size-1) solid var(--line);border-radius:var(--size-9);padding:var(--size-9) var(--size-15);background:var(--card);font-weight:600}button:hover{filter:brightness(.96)}button.primary{background:var(--brand);color:var(--color-fff);border-color:var(--brand)}button.soft{background:var(--accent);color:var(--accent-ink);border-color:transparent}button.danger{color:var(--bad)}.text-button{border:0;background:transparent;padding:var(--size-4) 0;color:var(--ok)}.icon{width:var(--size-19);height:var(--size-19);vertical-align:middle;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.brand{font-size:var(--size-22);font-weight:750;letter-spacing:var(--size-neg-1);display:flex;align-items:baseline;gap:var(--size-8)}.brand span{font-size:var(--size-12);font-weight:500;letter-spacing:var(--size-1-2);text-transform:uppercase;color:var(--color-bdd2c5)}.header{height:var(--size-72);background:var(--brand);color:var(--color-fff);display:flex;align-items:center;justify-content:space-between;padding:0 var(--size-30);gap:var(--size-20)}.header-right{display:flex;gap:var(--size-15);align-items:center;font-size:var(--size-12)}.header-right a{color:var(--color-d6e3db);text-decoration:none}.header-right button{background:var(--color-ffffff10);color:var(--color-fff);border:var(--size-1) solid var(--color-ffffff25);min-height:var(--size-34);padding:var(--size-5) var(--size-10)}.shell{display:grid;grid-template-columns:var(--size-230) minmax(0,1fr);min-height:calc(100dvh - var(--size-72))}.sidebar{padding:var(--size-28) var(--size-18);border-right:var(--size-1) solid var(--line);display:flex;flex-direction:column;gap:var(--size-24);background:color-mix(in srgb,var(--card) 35%,var(--bg))}.eyebrow{display:block;font-size:var(--size-10);font-weight:750;letter-spacing:var(--size-1-6);color:var(--muted);margin-bottom:var(--size-10)}.firm-select{width:100%;background:var(--card);border:var(--size-1) solid var(--line);border-radius:var(--size-8);padding:var(--size-9);font-size:var(--size-13)}.sidebar nav{display:grid;gap:var(--size-5)}.nav{display:flex;align-items:center;gap:var(--size-12);background:none;border:0;text-align:left;font-weight:500;padding:var(--size-12);min-height:var(--size-45);font-size:var(--size-13)}.nav.active{background:var(--brand);color:var(--color-fff)}.sidebar-footer{margin-top:auto;font-size:var(--size-11);color:var(--muted);line-height:1.7;padding:var(--size-12)}.main{min-width:0;padding:var(--size-34) var(--size-38) var(--size-60);max-width:var(--size-1600);width:100%;margin:auto;align-self:start}.title-row{display:flex;align-items:center;justify-content:space-between;gap:var(--size-18);margin-bottom:var(--size-26)}h1{font-size:var(--size-29);line-height:1.2;letter-spacing:var(--size-neg--8);margin:0 0 var(--size-8)}h2{font-size:var(--size-17);letter-spacing:var(--size-neg--3);margin:0 0 var(--size-8)}h3{font-size:var(--size-14);margin:0 0 var(--size-12)}p{line-height:1.65}p.sub{margin:0;color:var(--muted);font-size:var(--size-13)}.actions{display:flex;align-items:center;gap:var(--size-8);flex-wrap:wrap}.month{border:var(--size-1) solid var(--line);background:var(--card);border-radius:var(--size-9);padding:var(--size-9);max-width:var(--size-180)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--size-16);margin-bottom:var(--size-24)}.stat{background:var(--card);border:var(--size-1) solid var(--line);border-radius:var(--r);padding:var(--size-22)}.stat label{display:block;color:var(--muted);font-size:var(--size-12);margin-bottom:var(--size-16)}.stat strong{font-size:var(--size-27);letter-spacing:var(--size-neg-1);display:block}.stat small{display:block;margin-top:var(--size-8);font-size:var(--size-11);color:var(--muted)}.stat.accent{background:var(--brand);color:var(--color-fff)}.stat.accent label,.stat.accent small{color:var(--color-c4d5cb)}.card{background:var(--card);border:var(--size-1) solid var(--line);border-radius:var(--r);padding:var(--size-24);margin-bottom:var(--size-20);box-shadow:var(--shadow)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--size-16);margin-bottom:var(--size-20)}.card-head p{margin:0}.grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--size-20)}.clean-list{list-style:none;margin:0;padding:0}.clean-list li{padding:var(--size-14) 0;border-top:var(--size-1) solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:var(--size-16)}.clean-list li:first-child{border-top:0}.clean-list small{display:block;margin-top:var(--size-5);color:var(--muted)}.empty{padding:var(--size-55) var(--size-20);text-align:center;color:var(--muted)}.empty .icon{width:var(--size-38);height:var(--size-38);margin-bottom:var(--size-12);color:var(--ok)}.empty h2{color:var(--ink)}.empty p{max-width:var(--size-430);margin:var(--size-10) auto var(--size-20)}.table-wrap{overflow-x:auto;margin:0 var(--size-neg-24)}.table{border-collapse:collapse;width:100%;font-size:var(--size-12)}.table th{font-weight:600;text-align:left;color:var(--muted);padding:var(--size-13) var(--size-18);background:var(--field);white-space:nowrap}.table td{padding:var(--size-17) var(--size-18);border-top:var(--size-1) solid var(--line);vertical-align:middle}.table td:first-child,.table th:first-child{padding-left:var(--size-24)}.table td:last-child,.table th:last-child{padding-right:var(--size-24)}.table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.table small{display:block;margin-top:var(--size-5);color:var(--muted)}.table button{font-size:var(--size-12);min-height:var(--size-34);padding:var(--size-6) var(--size-10)}.badge{display:inline-flex;align-items:center;padding:var(--size-5) var(--size-8);border-radius:var(--size-6);background:var(--field);font-size:var(--size-10);font-weight:650;white-space:nowrap}.badge.ok{background:var(--color-e7f2e8);color:var(--color-267247)}.badge.warn{background:var(--color-fff2da);color:var(--color-91601b)}.badge.bad{background:var(--color-fbeae8);color:var(--color-a53b35)}.badge.info{background:var(--color-e9eef7);color:var(--color-426395)}.bad-text{color:var(--bad)}.muted{color:var(--muted)}.toolbar{display:flex;gap:var(--size-12);align-items:center;flex-wrap:wrap}.search{width:var(--size-240);max-width:100%;background:var(--field);border:var(--size-1) solid var(--line);border-radius:var(--size-8);padding:var(--size-10)}.pagination{display:flex;gap:var(--size-15);align-items:center;justify-content:flex-end;padding-top:var(--size-20);font-size:var(--size-12)}.callout{padding:var(--size-16) var(--size-18);background:var(--field);border-radius:var(--size-10);line-height:1.7;font-size:var(--size-13);margin:var(--size-16) 0}.callout.warn{background:var(--color-fff2da);color:var(--color-714d1c)}.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--size-18)}.integration-grid .card{margin:0}.integration-grid p{color:var(--muted);font-size:var(--size-13)}.loading{padding:var(--size-80);text-align:center;color:var(--muted)}#notice{position:fixed;bottom:var(--size-24);right:var(--size-24);max-width:min(var(--size-450),calc(100vw - var(--size-32)));padding:var(--size-16) var(--size-20);background:var(--brand);color:var(--color-fff);border-radius:var(--size-12);box-shadow:0 var(--size-6) var(--size-28) var(--color-0003);z-index:100;display:none}#notice.error{background:var(--color-8c302b)}dialog{width:min(var(--size-920),calc(100vw - var(--size-30)));max-height:90dvh;background:var(--card);color:var(--ink);border:var(--size-1) solid var(--line);border-radius:var(--size-18);padding:0;box-shadow:0 var(--size-22) var(--size-90) var(--color-0003)}dialog::backdrop{background:var(--color-17251e75);backdrop-filter:blur(var(--size-3))}.modal-head{position:sticky;top:0;background:var(--card);display:flex;justify-content:space-between;align-items:center;padding:var(--size-22) var(--size-26);border-bottom:var(--size-1) solid var(--line);z-index:1}.modal-head h2{margin:0}.modal-body{padding:var(--size-24) var(--size-26)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--size-16)}.field{display:grid;gap:var(--size-7);font-size:var(--size-12);font-weight:600;min-width:0}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%;border:var(--size-1) solid var(--line);border-radius:var(--size-8);background:var(--field);padding:var(--size-11);font-size:var(--size-14);font-weight:400}.field textarea{min-height:var(--size-90);resize:vertical}.form-footer{display:flex;justify-content:flex-end;gap:var(--size-10);margin-top:var(--size-24)}.detail-top{display:flex;justify-content:space-between;align-items:start;gap:var(--size-20)}.detail-top strong{font-size:var(--size-30);letter-spacing:var(--size-neg-1);white-space:nowrap}.details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--size-18);padding:var(--size-22) 0;border-bottom:var(--size-1) solid var(--line);margin-bottom:var(--size-20)}.details dt{font-size:var(--size-11);color:var(--muted);margin-bottom:var(--size-7)}.details dd{margin:0;font-size:var(--size-13);overflow-wrap:anywhere}.detail-section{border-top:var(--size-1) solid var(--line);padding-top:var(--size-20);margin-top:var(--size-22)}.comment{padding:var(--size-14);border:var(--size-1) solid var(--line);border-radius:var(--size-9);margin:var(--size-10) 0}.comment.question{border-left:var(--size-3) solid var(--color-d4a759)}.comment p{white-space:pre-wrap;margin:var(--size-8) 0}.comment small{font-size:var(--size-11);color:var(--muted)}.history{font-size:var(--size-12);line-height:1.7}.history summary{cursor:pointer;font-weight:600}.history li{padding:var(--size-10) 0;border-bottom:var(--size-1) solid var(--line)}.history pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:var(--size-11)}.file{display:flex;justify-content:space-between;align-items:center;gap:var(--size-12);padding:var(--size-12);background:var(--field);border-radius:var(--size-9);margin:var(--size-8) 0}.file a{font-size:var(--size-12)}.file span{overflow-wrap:anywhere}.login{max-width:var(--size-510);margin:8vh auto;padding:var(--size-25)}.login>.brand{color:var(--brand);margin-bottom:var(--size-28)}.login .brand span{color:var(--muted)}.login-card{background:var(--card);border:var(--size-1) solid var(--line);padding:var(--size-35);border-radius:var(--size-18);box-shadow:var(--shadow)}.login h1{font-size:var(--size-32)}.login label{display:block;margin-bottom:var(--size-7)}.login input[type=text],.login input[type=password]{width:100%;border:var(--size-1) solid var(--line);background:var(--field);border-radius:var(--size-8);padding:var(--size-12)}.login input[type=submit]{width:100%;background:var(--brand);color:var(--color-fff);border:0;border-radius:var(--size-8);cursor:pointer}.login .login-remember label{display:flex;gap:var(--size-8);align-items:center}.skip{position:fixed;left:var(--size-10);top:var(--size-neg-60);background:var(--color-fff);padding:var(--size-14);z-index:120}.skip:focus{top:var(--size-10)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#121815;--card:#1c231f;--field:#252e28;--ink:#f0f1ed;--muted:#b0b8b0;--line:#344036;--brand:#213c2d;--ok:#a1cda8}.badge.ok{background:var(--color-233e2b);color:var(--color-b2d8b9)}.badge.warn,.callout.warn{background:var(--color-49381f);color:var(--color-f5d59e)}.badge.bad{background:var(--color-4d2825);color:var(--color-efb1a8)}.badge.info{background:var(--color-293849);color:var(--color-bad1f1)}}
.card,.grid-2>*{min-width:0}.toolbar input[type=file]{max-width:100%}.detail-top{overflow-wrap:anywhere}
@media(max-width:1100px){.main{padding:var(--size-26) var(--size-24)}.shell{grid-template-columns:var(--size-200) minmax(0,1fr)}.grid-2{grid-template-columns:minmax(0,1fr)}.stat strong{font-size:var(--size-23)}}
@media(max-width:760px){.header{height:var(--size-60);padding:0 var(--size-18)}.header-right .user-name{display:none}.shell{display:block}.sidebar{padding:var(--size-14);border-right:0;border-bottom:var(--size-1) solid var(--line);gap:var(--size-12)}.sidebar .eyebrow,.sidebar-footer{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:var(--size-6);padding-bottom:var(--size-3)}.nav{flex-shrink:0;gap:var(--size-7);padding:var(--size-9) var(--size-11);min-height:var(--size-40);font-size:var(--size-12)}.firm-select{max-width:100%}.main{padding:var(--size-24) var(--size-16) var(--size-45)}.title-row{align-items:flex-start;flex-direction:column;gap:var(--size-16)}h1{font-size:var(--size-26)}.title-row>.actions{width:100%}.stats{gap:var(--size-8)}.stat{padding:var(--size-15) var(--size-12)}.stat strong{font-size:var(--size-20)}.stat label{font-size:var(--size-10);margin-bottom:var(--size-12)}.stat small{font-size:var(--size-10)}.card{padding:var(--size-18)}.card-head{align-items:flex-start;flex-direction:column;gap:var(--size-12)}.table-wrap{margin:0 var(--size-neg-18)}.table th,.table td{padding:var(--size-13) var(--size-12)}.table td:first-child,.table th:first-child{padding-left:var(--size-18)}.integration-grid{grid-template-columns:1fr}.details{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-top{flex-direction:column}.modal-head,.modal-body{padding:var(--size-18)}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.login{margin:3vh auto}.login-card{padding:var(--size-25)}.stats.multi{grid-template-columns:1fr}.search{width:100%}}
