/* Mexican Sunset — App CSS */

:root {
    --ms-orange:  #F97316;
    --ms-dark:    #1a1a2e;
    --ms-sidebar: #16213e;
}

body { font-size: .9rem; }

/* ── Navbar ── */
.navbar-brand { letter-spacing: .5px; }

/* ── Cards ── */
.card { border-radius: 10px; }
.card-header { font-weight: 600; font-size: .85rem; letter-spacing: .4px; }

/* ── Badges de estado ── */
.badge-creada      { background: #6c757d; }
.badge-confirmada  { background: #0d6efd; }
.badge-asignada    { background: #6f42c1; }
.badge-en_ruta     { background: #fd7e14; }
.badge-completada  { background: #198754; }
.badge-cancelada   { background: #dc3545; }

/* ── Tabla ── */
.table-hover tbody tr:hover { background: rgba(249,115,22,.05); }
.table th { font-size: .78rem; text-transform: uppercase; letter-spacing: .5px; color: #6c757d; }

/* ── Forms ── */
.form-label { font-weight: 600; font-size: .82rem; color: #495057; }
.required::after { content: ' *'; color: #dc3545; }

/* ── Loading overlay ── */
#loadingOverlay {
    display: none;
    position: fixed; inset: 0;
    background: rgba(0,0,0,.4);
    z-index: 9999;
    align-items: center;
    justify-content: center;
}
#loadingOverlay.show { display: flex; }

/* ── Toast notifications ── */
.toast-container { z-index: 9998; }

/* Fix Select2 dentro de modal Bootstrap */
.select2-container--open {
    z-index: 9999 !important;
}

/* Fix Select2 search input dentro de offcanvas */
.select2-dropdown .select2-search__field {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 6px 8px !important;
}

.btn-xs { padding: .1rem .4rem; font-size: .75rem; }


