.km-table { font-size:.83rem; border-collapse:collapse; width:100%; }
.km-table th { background:#003189; color:#fff; padding:7px 12px; font-weight:500; border:1px solid #002070; text-align:center; }
.km-table th.left { text-align:left; min-width:130px; }
.km-table td { padding:5px 10px; border:1px solid #dee2e6; vertical-align:middle; }
.km-table td.cv-lbl { font-weight:600; background:#f0f4ff; color:#003189; white-space:nowrap; }
.km-table td.formula { font-family:monospace; font-size:.8rem; color:#333; white-space:nowrap; }
.km-table input[type=number] { width:65px; font-size:.8rem; padding:2px 4px; border:1px solid #ccc; border-radius:4px; text-align:center; }
.km-table input[type=number]:focus { outline:none; border-color:#003189; box-shadow:0 0 0 2px rgba(0,49,137,.12); }
.km-table tr:hover td { background:#f8f9ff; }
.km-table tr:hover td.cv-lbl { background:#e8eeff; }
.ferie-box { display:flex; align-items:center; gap:6px; padding:4px 10px; border-radius:5px; border:1px solid #dee2e6; font-size:.78rem; cursor:pointer; transition:all .15s; }
.ferie-box.on { background:#d1e7dd; border-color:#a3cfbb; color:#0a3622; }
.ferie-box input[type=checkbox] { accent-color:#198754; width:14px; height:14px; }
.section-h { font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:#6c757d; padding-left:8px; border-left:3px solid #ED2939; margin-bottom:.6rem; }
.saved { font-size:.78rem; color:#198754; }
.add-field { width:100px; font-size:.8rem; padding:2px 4px; border:1px solid #ccc; border-radius:4px; text-align:center; }
