/* ============================================================
   Compact dialogs: one size and density for every Bootstrap modal and Syncfusion dialog,
   matching the Radzen dialog rules in inventory.css. Goal: a form dialog fits at 100% zoom with
   no scrolling, medium text, small padding. Loaded after the page styles; it overrides the large
   inline sizes (modal-xl, *-lg inputs, p-4 bodies, py-3 buttons) that older dialogs carry.
   Scoped to .modal-content / .e-dialog so nothing outside a dialog changes.
   ============================================================ */

/* ---------- Bootstrap modals ---------- */
.modal-dialog { margin: .75rem auto; }
.modal-dialog.modal-lg { max-width: 680px; }
.modal-dialog.modal-xl { max-width: 880px; }

.modal-content {
    max-height: calc(100vh - 1.5rem);
    overflow-y: auto;
    border-radius: 12px !important;
    font-size: .85rem;
    color: #1f2937;
}

.modal-content .modal-header {
    padding: .6rem 1rem !important;
    min-height: 0 !important;
}

.modal-content .modal-title,
.modal-content .modal-header h5,
.modal-content .modal-header .h5 {
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1.3;
}

.modal-content .modal-title i,
.modal-content .modal-title .rzi { font-size: 1.1rem !important; margin-right: .5rem !important; }

.modal-content .modal-header .btn-close { padding: .35rem; }

.modal-content .modal-body:not(.p-0) { padding: .75rem 1rem !important; }

.modal-content .modal-footer {
    padding: .6rem 1rem !important;
    gap: .5rem;
    margin: 0;
}

/* Footer buttons: normal size even where the markup says btn-lg / py-3 / min-width */
.modal-content .modal-footer .btn,
.modal-content .btn-lg {
    padding: .35rem 1rem !important;
    font-size: .85rem !important;
    font-weight: 600 !important;
    min-width: 0 !important;
    border-radius: 8px !important;
}

.modal-content .modal-footer > .w-100.d-flex { gap: .5rem !important; }

/* Rows and spacing */
.modal-content .row { --bs-gutter-x: .75rem !important; --bs-gutter-y: .6rem !important; }
.modal-content .mb-4, .modal-content .mb-3 { margin-bottom: .6rem !important; }
.modal-content .mt-4, .modal-content .mt-3 { margin-top: .6rem !important; }
.modal-content .pt-4 { padding-top: .5rem !important; }
.modal-content hr { margin: .6rem 0; }

/* Labels and helper text */
.modal-content .form-label,
.modal-content label.fw-semibold,
.modal-content label.fw-bold {
    font-size: .78rem !important;
    font-weight: 600 !important;
    color: #5b6573 !important;
    margin-bottom: .15rem !important;
}

.modal-content small,
.modal-content .form-text,
.modal-content .text-muted.small { font-size: .72rem !important; }

.modal-content small.d-block { margin-top: 2px !important; }

/* Inputs: the same light, rounded, single-line size everywhere */
.modal-content .form-control,
.modal-content .form-select,
.modal-content .form-control-lg,
.modal-content .form-select-lg {
    min-height: 34px;
    padding: .25rem .6rem !important;
    font-size: .85rem !important;
    color: #1f2937;
    background-color: #fff;
    border: 1px solid #ced4da !important;
    border-radius: 6px !important;
}

.modal-content textarea.form-control,
.modal-content textarea.form-control-lg { min-height: 0; padding: .35rem .6rem !important; }

.modal-content .form-control:focus,
.modal-content .form-select:focus {
    border-color: #1d6fb8 !important;
    box-shadow: 0 0 0 2px rgba(29,111,184,.15) !important;
    outline: 0;
}

.modal-content .form-check-input { margin-top: .2rem; }
.modal-content .form-check-lg .form-check-input { width: 1.8em; height: .95em; }
.modal-content .form-check-label { font-size: .85rem; }

/* Cards inside dialogs */
.modal-content .card { border-radius: 8px !important; }
.modal-content .card-header, .modal-content .card-body { padding: .5rem .75rem !important; }

/* Syncfusion inputs inside dialogs */
.modal-content .e-input-group, .modal-content .e-input-group.e-control-wrapper,
.modal-content .e-float-input.e-control-wrapper { font-size: .85rem; }

/* ---------- Syncfusion dialogs (SfDialog) ---------- */
.e-dialog.e-dialog { max-width: calc(100vw - 1.5rem); max-height: calc(100vh - 1.5rem) !important; font-size: .85rem; }
.e-dialog .e-dlg-header-content { padding: .6rem 1rem !important; }
.e-dialog .e-dlg-header { font-size: 1rem !important; font-weight: 700 !important; line-height: 1.3 !important; }
.e-dialog .e-dlg-content { padding: .75rem 1rem !important; font-size: .85rem; }
.e-dialog .e-footer-content { padding: .5rem 1rem !important; }
.e-dialog .e-footer-content .e-btn { padding: .3rem 1rem !important; font-size: .85rem !important; font-weight: 600 !important; border-radius: 8px !important; }
.e-dialog .form-label { font-size: .78rem !important; font-weight: 600 !important; color: #5b6573 !important; margin-bottom: .15rem !important; }
.e-dialog .form-control, .e-dialog .form-select { min-height: 34px; padding: .25rem .6rem !important; font-size: .85rem !important; border-radius: 6px !important; }
.e-dialog .row { --bs-gutter-x: .75rem !important; --bs-gutter-y: .6rem !important; }
.e-dialog .mb-3, .e-dialog .mb-4 { margin-bottom: .6rem !important; }

@media (max-width: 600px) {
    .modal-dialog { margin: .5rem; }
}
