.modulo-container { padding: 20px; background: #f0f2f5; font-family: 'Segoe UI', sans-serif; }
.modulo-header { margin-bottom: 20px; }
.modulo-header h2 { margin: 0; color: #263238; font-size: 20px; }
.subtext { color: #78909c; font-size: 13px; }

.layout-dos-columnas { display: grid; grid-template-columns: 1.2fr 1fr; gap: 20px; }
.card-panel { background: #ffffff; padding: 20px; border-radius: 8px; border: 1px solid #cfd8dc; box-shadow: 0 1px 3px rgba(0,0,0,0.05); }
.card-title { margin-top: 0; font-size: 15px; color: #0288D1; border-bottom: 1px solid #eceff1; padding-bottom: 8px; }

.form-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.form-grid-2 label { display: block; font-size: 12px; font-weight: 600; margin-bottom: 4px; color: #455a64; }
.form-grid-2 input, .form-grid-2 select { width: 100%; padding: 8px; border: 1px solid #cfd8dc; border-radius: 4px; box-sizing: border-box; }

.section-divider { font-size: 12px; text-transform: uppercase; color: #546e7a; margin: 15px 0 8px 0; border-bottom: 1px dashed #cfd8dc; padding-bottom: 4px; }
.table-compact { width: 100%; border-collapse: collapse; font-size: 12px; }
.table-compact th { background: #f5f5f5; padding: 8px; text-align: left; color: #546e7a; }
.table-compact td { padding: 8px; border-bottom: 1px solid #eceff1; }
.input-tbl { width: 90px; padding: 4px; border: 1px solid #ccc; border-radius: 3px; }

.resumen-liq-box { background: #eceff1; padding: 12px; border-radius: 6px; margin-top: 15px; }
.stat-liq { display: flex; justify-content: space-between; font-size: 13px; margin-bottom: 4px; color: #37474f; }
.stat-liq-destacado { display: flex; justify-content: space-between; align-items: center; margin-top: 6px; font-weight: 700; }

.crt-desglose { margin-top: 8px; padding-top: 8px; border-top: 1px dashed #b0bec5; font-size: 12px; display: flex; justify-content: space-between; }
.font-bold { font-weight: 700; }
.text-right { text-align: right; }