/**
 * style.css — Słoik (szata jak Stare)
 * Wersja: v1.0.1
 * Ostatnia zmiana: 2026-09-17
 *   - kolory jak stare: header navy #16206f, tło #d9dbf7, primary #2318bf,
 *     hover wiersza #88bdf1.
 */
:root{--bg:#d9dbf7;--bg-secondary:#eef0fc;--surface:#f7fbfc;--border:#c9cdf3;--border-hover:#aab0ea;--text:#212529;--text-muted:#6c757d;--primary:#2318bf;--primary-hover:#1a1296;--primary-light:#e6e8fb;--primary-border:#b9bef5;--danger:#dc2626;--danger-light:#fef2f2;--success:#16a34a;--header-bg:#16206f;--header-text:#f9fafb;--row-hover:#88bdf1;--row-selected:#dbeafe;--font:'Inter',-apple-system,'Segoe UI',sans-serif;--radius:8px;--radius-lg:12px}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px;min-height:100vh}
.hidden{display:none!important}
.header{position:sticky;top:0;z-index:500;background:var(--header-bg);color:var(--header-text);border-bottom:1px solid var(--header-bg)}
.header-inner{max-width:1200px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;gap:20px;color:var(--header-text)}
.logo{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1.25rem;color:var(--header-text);text-decoration:none}
.logo-icon{font-size:1.5rem}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:12px}
.btn-user{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--primary-border);border-radius:var(--radius);background:var(--primary-light);color:var(--primary);cursor:pointer;font-family:var(--font);font-size:.9rem}
.btn-user:hover{background:var(--primary);color:#fff}
.btn-primary{background:var(--primary);color:#fff;border:none;border-radius:var(--radius);padding:10px 18px;font-size:.95rem;font-weight:600;cursor:pointer;font-family:var(--font)}
.btn-primary:hover{background:var(--primary-hover)}
.main{max-width:1200px;margin:0 auto;padding:20px 24px 40px}
.toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:21px;flex-wrap:wrap;background:var(--bg);padding:8px 0}
.toolbar h1{font-size:1.3rem}
.legend-wrap{margin-bottom:14px}
.legend-title{font-size:.73rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.legend-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;font-size:.8rem;font-variant-numeric:tabular-nums}
.legend-table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);padding:5px 12px;border-bottom:2px solid #000;text-align:right}
.legend-table th:first-child,.legend-table td:first-child{text-align:left}
.legend-table td{padding:4px 12px;border-bottom:1px solid var(--border);text-align:right}
.legend-table tr:last-child td{border-bottom:none}
.summary{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.sum-card{border:1px solid var(--border);border-radius:var(--radius-lg);padding:10px 16px;background:var(--surface);font-variant-numeric:tabular-nums}
.sum-card b{display:block;font-size:1.15rem}
.sum-card span{font-size:.73rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}
.table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}
table{width:100%;border-collapse:collapse}
thead th{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;text-align:left;padding:8px 10px;border-bottom:2px solid #000;background:var(--surface)}
tbody td{padding:7px 10px;border-bottom:1px solid var(--border);font-size:.85rem;font-variant-numeric:tabular-nums}
tbody tr:nth-child(even){background:var(--bg-secondary)}
tbody tr:hover{background:var(--row-hover)}
td.num,th.num{text-align:right}
.winien-due{color:var(--danger);font-weight:700}
.winien-ok{color:var(--success);font-weight:600}
.pay-input{width:80px;padding:4px 8px;border:1px solid var(--border);border-radius:6px;font-size:.85rem;text-align:right}
.btn-small{padding:4px 12px;border:1px solid var(--primary-border);background:var(--primary-light);color:var(--primary);border-radius:6px;cursor:pointer;font-size:.8rem}
.btn-small:hover{background:var(--primary);color:#fff}
.btn-del{padding:2px 9px;border:1px solid #f5a3a3;background:var(--danger-light);color:var(--danger);border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:700;line-height:1.4}
.btn-del:hover{background:var(--danger);color:#fff;border-color:var(--danger)}
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;z-index:600;padding:16px}
.modal{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:460px;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.modal-lg{max-width:640px}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--border)}
.modal-header h2{font-size:1.05rem}
.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted)}
.modal-body{padding:18px;display:flex;flex-direction:column;gap:12px}
.form-group{display:flex;flex-direction:column;gap:4px}
.form-group label{font-size:.73rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}
.form-group input,.form-group select{padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem;font-family:var(--font);background:var(--bg);color:var(--text)}
.radio-row{display:flex;gap:16px;font-size:.95rem}
.form-error{color:var(--danger);font-size:.85rem}
.rates-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:8px;align-items:center;font-size:.85rem}
.rates-grid input{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:6px}
