:root { --verde: #2f6b3a; }
body { background: #f6f7f5; font-size: .92rem; }
.bg-verde { background: var(--verde) !important; }
.btn-verde { background: var(--verde); color: #fff; }
.btn-verde:hover { background: #24542d; color: #fff; }
.card { border: 0; box-shadow: 0 1px 2px rgba(0,0,0,.06); }
.table-lineas input.form-control { padding: .15rem .35rem; min-width: 60px; }
.table-lineas td { padding: .2rem; }
.buscador-lista { position: absolute; z-index: 1050; left: 0; right: 0; max-height: 280px; overflow-y: auto; display: none; }
.buscador-lista.show { display: block; }
.buscador-lista .list-group-item { padding: .3rem .6rem; font-size: .85rem; cursor: pointer; }
.totales td { padding: .15rem .5rem; }
.totales tr.total td { font-size: 1.1rem; font-weight: 700; border-top: 2px solid #333; }
.table thead th { font-weight: 600; font-size: .82rem; white-space: nowrap; }
.doc-cabecera .form-control[readonly] { background: #f1f3f1; }
@media print { .navbar, .d-print-none { display: none !important; } }
.ayuda section { scroll-margin-top: 1rem; }
.ayuda dt { margin-top: .6rem; }
.ayuda dd { margin-bottom: .2rem; color: #444; }
@media (max-width: 576px) { .navbar .btn { padding: .2rem .45rem; } h1.h4 { font-size: 1.1rem; } }
@media (display-mode: standalone) { body { overscroll-behavior-y: none; } }
