:root{--ink:#172639;--muted:#728094;--blue:#1767ab;--bg:#f2f6fa;--line:#e1e8ef;--green:#137448;--red:#aa3039}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}.wrap{max-width:1150px;margin:auto;padding:0 20px}header{background:#0e2742;color:#fff}.top{display:flex;justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px}.brand{color:inherit;text-decoration:none;font-size:25px;font-weight:850;letter-spacing:.4px}.brand span{color:#65d1df}.who{text-align:right;font-weight:600}.who small{display:block;color:#acc3d5;font-weight:400}nav{background:#fff;border-bottom:1px solid var(--line)}.nav{display:flex;flex-wrap:wrap;gap:4px;padding-top:8px;padding-bottom:8px}.nav a{text-decoration:none;color:#34465a;padding:9px 12px;border-radius:6px;font-weight:600}.nav a:hover{background:#ebf2f8}.logout{margin-left:auto}main{padding-top:25px;padding-bottom:65px}h1{font-size:28px;margin:0 0 23px}h2{font-size:19px;margin:28px 0 12px}p{margin:8px 0 14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:30px}.card,.panel,.tablewrap{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 12px #10293a08}.card{padding:22px}.card strong{display:block;font-size:26px;margin:5px 0}.card small,.muted{color:var(--muted)}.panel{padding:22px;margin:16px 0 23px}.tablewrap{overflow:auto;margin-bottom:22px}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:13px 15px;border-bottom:1px solid #e9edf2;vertical-align:top}th{background:#f8fafc;font-size:13px;color:#637287}tr:last-child td{border-bottom:0}.tag{display:inline-block;background:#eaf1f8;color:#426080;padding:3px 10px;border-radius:16px;font-size:12px;font-weight:750}.tag.good{background:#e3f6ed;color:var(--green)}.tag.bad{background:#ffedf0;color:var(--red)}.plus{color:var(--green);font-weight:700}.minus{color:var(--red);font-weight:700}form{display:flex;flex-wrap:wrap;gap:14px;align-items:end}label{display:flex;flex-direction:column;gap:6px;font-weight:600;min-width:200px;flex:1}input,select{font:inherit;padding:11px 12px;border:1px solid #cbd5e0;border-radius:7px;background:#fff;width:100%;min-width:0}input:focus,select:focus{outline:2px solid #9fd3fa}button{border:0;background:var(--blue);color:white;font:inherit;font-weight:750;border-radius:7px;padding:12px 19px;cursor:pointer}button:hover{filter:brightness(.94)}button.secondary{background:#60758e}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%}.orderhead{display:flex;flex-wrap:wrap;align-items:center;gap:15px}.orderhead strong{font-size:18px}.orderhead small{color:var(--muted)}.order p{margin:8px 0}.notice,.error{padding:13px 16px;border-radius:8px;margin-bottom:20px;background:#e2f5ec;color:#08613c}.error{background:#ffeaee;color:#9c2430}.login{display:grid;place-items:center;min-height:100vh;padding:25px}.loginbox{max-width:510px;width:100%;background:#fff;padding:36px;border:1px solid var(--line);box-shadow:0 14px 55px #10293a17;border-radius:17px}.loginbox .brand{color:#142b44}.loginbox form{display:flex;flex-direction:column;align-items:stretch;gap:17px}.loginbox h1{margin:20px 0 0}.loginbox h2{font-size:17px;margin-bottom:0}.loginbox label{width:100%}.loginbox button{width:100%;margin-top:3px}footer{font-size:12px;color:var(--muted);padding-bottom:20px}@media(max-width:680px){.cards,.grid3{grid-template-columns:1fr}.who{font-size:12px}.nav a{padding:7px 8px;font-size:13px}.logout{margin-left:0}.panel{padding:16px}.loginbox{padding:24px}th,td{padding:10px}}
/* v2: wybór kontrahenta, formularze poziome i komfortowe menu */
.inline-form {display:inline-flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 0 12px}
.inline-form select {width:auto;min-width:200px;margin:0;padding:9px}
.inline-form button {width:auto;margin:0;padding:10px 14px}
.panel.compact {padding:14px 20px;margin-bottom:22px}
.nav {overflow-x:auto;white-space:nowrap}
@media (max-width:640px){.inline-form{display:flex;margin:10px 0 0}.inline-form select{min-width:0;width:100%}.nav{gap:12px}}
