#campo_fecha_label.texto-finde { color: red !important; }

ul.us_menu.dark,
ul.us_menu.dark .us_sub-menu li,
ul.us_menu.dark li:hover,
ul.us_menu.dark ul.us_sub-menu {
    background-color: #212529 !important;
}

/* Chrome, Edge, Safari */
#num_avisos::-webkit-inner-spin-button,
#num_avisos::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
#num_avisos {
    -moz-appearance: textfield;
}

#botones-tipo-envio .btn-tipo-envio {
    flex: 1 1 auto;
}

.botoncito-acceder{
    min-width: 90px;
    padding: 2px 6px;      /* más pequeño que btn-sm */
    font-size: 0.75rem;    /* texto más pequeño */
    /*line-height: 1.1;      /* menos altura */
    }

@media (min-width: 576px) and (max-width: 767px) {
    #contenedor_imprimir_grid {
        flex-wrap: wrap; /* Permite saltos de línea */
        justify-content: center !important;
    }
    
    .bloque-item {
        flex: 0 0 44%; /* Cada elemento ocupa casi la mitad */
        /*margin-bottom: 15px;*/
    }
}

@media (max-width: 991px) {
    #botones-tipo-envio .btn-tipo-envio {
        flex: 0 0 calc(33.333% - 0.5rem);
    }
}

/* Para pantallas menores a 768px */
@media (max-width: 768px) {

    /* Sobrescribir el comportamiento anterior */
    #botones-tipo-envio .btn-tipo-envio {
        flex: 0 0 calc(33.333% - 0.5rem) !important; /* 3 por fila */
        display: flex;
        flex-direction: column;      /* icono arriba, texto abajo */
        align-items: center;
        justify-content: center;
        min-width: 110px;            /* ancho mínimo */
        text-align: center;
        padding: 10px 6px;
    }

    #botones-tipo-envio .btn-tipo-envio i {
        margin-right: 0 !important;
        margin-bottom: 4px;
        font-size: 1.2rem;
    }

    .btn-subtipo-paquete {
        min-width: 110px;
    }
}

#seccion_oficina {
    display: block;
    visibility: hidden;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.7s ease, opacity 0.6s ease, visibility 0.6s ease ;
}
#seccion_oficina.visible {
    visibility: visible ;
    max-height: 375px ;
    opacity: 1 ;
}

#wrap_seccion_oficina {
    transition: margin-top 0.6s ease;
}

#subbloque_paquete {
    display: block;
    visibility: hidden;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0 !important;
    transition: max-height 0.7s ease, 
            opacity 0.3s ease 0.2s, 
            visibility 0.6s ease, 
            padding 0.4s ease, 
            margin 0.4s ease;
}
#subbloque_paquete.visible {
    visibility: visible;
    max-height: 200px;
    opacity: 1;
    padding-top: 1rem;
    padding-bottom: 1rem;
    margin-top: 0.75rem !important;
    transition: max-height 0.7s ease, 
            opacity 0.3s ease, 
            visibility 0s, 
            padding 0.4s ease, 
            margin 0.4s ease;
}

#campo_fecha_label { margin-top: 2px; }

#campo_fecha_label:not(:empty) {
    margin-left: 0.5rem; /* mismo espacio que daba gap-2 */
}

.contenedor-fecha-ultra-compacta {
    display: flex;
    align-items: flex-start;
    padding-top: 4px;
}

.contenedor-fecha-ultra-compacta .form-control,
.contenedor-fecha-ultra-compacta .flatpickr-input,
.flatpickr-input.form-control {
    /*width: 115px !important;*/
    width: 100% !important;
    max-width: 115px !important;
    text-align: center !important;
    display: block !important;
    font-size: 1rem !important;
}

#sin_dia.form-check-input:checked,
#solo_anio.form-check-input:checked {
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
    cursor: pointer;
}

#campo_fecha_label {
    display: inline-block;
    width: 100px;
    text-align: left;
}

#bloque_verano {
    margin-left: -9px; /* mueve a la izquierda */
    margin-right: 55px; /* separa del siguiente */
}  

.flatpickr-prev-month,
.flatpickr-next-month,
.numInputWrapper span {
    display: none !important;
}

.flatpickr-current-month input.numInput.cur-year {
    pointer-events: none;
}

.flatpickr-monthDropdown-months {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background: transparent !important;
    pointer-events: none;
    padding-right: 0 !important;
}

.btn-clear-input {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    color: #adb5bd;
    font-size: 0.8rem;
    width: 22px;
    height: 22px;
    line-height: 1;
    padding: 0;
    cursor: pointer;
    border-radius: 50%;
    display: none;
}
.btn-clear-input.visible {
    display: block;
}
.btn-clear-input:hover {
    color: #495057;
    background: #e9ecef;
}

/* Menú admin: breakpoint personalizado a 1024px */
.menu-movil {
    display: none;
}
.menu-escritorio {
    display: flex;
}

@media (max-width: 1023.98px) {
    .menu-movil {
        display: block;
    }
    .menu-escritorio {
        display: none;
    }
}

.titulo-completo,
.titulo-corto {
    position: relative;
    top: 6px; /* valores positivos bajan el texto, negativos lo suben */
}

/* Por defecto: se ve el texto completo, se oculta el corto */
.titulo-corto {
    display: none;
}

.pastel-box {
    border-radius: 0.75rem;
    padding: 1rem;
    height: 100%;
}

.pastel-box-verde {
    background-color: #e6f4ea; /* verde pastel */
    border: 1px solid #cdeada;
}

.pastel-box-morado {
    background-color: #efe6f7; /* morado pastel */
    border: 1px solid #ddc9ee;
}

#sol_verano_oficina {
    display: block;
    position: absolute;
    top: 40px;
    right: 5px;
    width: 40px;
    height: 40px;
    z-index: 10;
    
    background-image: url('/usersc/plugins/m4u/img/sol.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* Por debajo de 405px: se ve el titulo corto, se oculta el completo */
@media (max-width: 404.98px) {
    .titulo-completo {
        display: none;
    }
    .titulo-corto {
        display: inline;
    }
    #sol_verano_oficina {
        top: 64px;
    }
}

/* popovers */
.popover-info-impresion {
    --bs-popover-max-width: 360px;
    --bs-popover-border-color: #0dcaf0; /*azul*/
}
.popover-falta-unidad {
    --bs-popover-max-width: 400px;
    --bs-popover-border-color: #0dcaf0;  /*azul*/
}

/* Popover cuando está deshabilitado (Amarillo/Warning) */
.popover-sin-oficina {
    --bs-popover-max-width: 360px;
    --bs-popover-border-color: #ffc107;
}

/* Popover cuando está habilitado (Verde/Success) */
.popover-impresion-lista {
    --bs-popover-max-width: 400px;
    --bs-popover-border-color: #198754;
}