.btn-navy {
    /* background-color: #344767; */
    background: linear-gradient(135deg, #344767 0%, #2c3c58 100%);
    border-color: #2c3c58;
    color: #fff;
}

.btn-check:focus + .btn-navy,
.btn-navy:focus,
.btn-navy:hover {
    background-color: #2a3952;
    border-color: #27354d;
    color: #fff;
    /* transform: translateY(-2px); */
    box-shadow: 0 8px 25px rgba(52, 71, 103, 0.3);
}

.btn-check:focus + .btn-navy,
.btn-navy:focus {
    box-shadow: 0 0 0 .25rem rgba(52, 71, 103, .5);
}

.btn-check:active + .btn-navy:focus,
.btn-check:checked + .btn-navy:focus,
.btn-navy.active:focus,
.btn-navy:active:focus,
.show > .btn-navy.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgba(42, 57, 82, .5);
}

.btn-navy.disabled,
.btn-navy:disabled {
    background-color: #344767;
    border-color: #2c3c58;
    color: #fff;
}

/* btn outline-navy */
.btn-outline-navy {
    color: #344767;
    border-color: #344767;
    background: transparent;
}
.btn-outline-navy:hover {
    background-color: #344767;
    border-color: #344767;
    color: #fff;
    box-shadow: 0 4px 15px rgba(52, 71, 103, 0.25);
}
.btn-outline-navy:focus {
    box-shadow: 0 0 0 .25rem rgba(52, 71, 103, .35);
}
.btn-outline-navy.disabled,
.btn-outline-navy:disabled {
    color: #344767;
    border-color: #344767;
    background: transparent;
}

/* btn danger-flat */
.btn-danger-flat {
    background: linear-gradient(135deg, #fd5577 0%, #ff6a92 100%);
    /* background-color: #fd5577; */
    border-color: #ee4f6f;
    color: #fff;
}

.btn-check:focus + .btn-danger-flat,
.btn-danger-flat:focus,
.btn-danger-flat:hover {
    background-color: #e64d6c;
    border-color: #ee4f6f;
    color: #fff;
    /* transform: translateY(-2px); */
    box-shadow: 0 8px 25px rgba(253, 85, 119, 0.3);
}

.btn-check:focus + .btn-danger-flat,
.btn-danger-flat:focus {
    box-shadow: 0 0 0 .25rem rgba(230, 77, 108);
}

.btn-check:active + .btn-danger-flat:focus,
.btn-check:checked + .btn-danger-flat:focus,
.btn-danger-flat.active:focus,
.btn-danger-flat:active:focus,
.show > .btn-danger-flat.dropdown-toggle:focus {
    box-shadow: 0 0 0 .25rem rgba(230, 77, 108);
}

.btn-danger-flat.disabled,
.btn-danger-flat:disabled {
    background-color: #fd5577;
    border-color: #ee4f6f;
    color: #fff;
}
/* btn danger-flat */


.btn-blue-dark {
    /* background-color: #182F44; */
    border-color: #182F44;
    color: #fff;
    /* Mismo sentido de gradiente que btn-navy (claro -> oscuro hacia abajo-der)
       para que ambos botones compartan la misma direccion de luz y armonicen. */
    background: linear-gradient(135deg, #20415f 0%, #182F44 100%);
}
.btn-blue-dark:hover {
    background-color: #1a344d;
    border-color: #1a344d;
    color: #fff;
    /* transform: translateY(-2px); */
    box-shadow: 0 8px 25px rgba(24, 47, 68, 0.3);
}
.btn-dim-gray {
    /* background-color: #6e7881; */
    background: linear-gradient(135deg, #6e7881 0%, #5a6269 100%);
    border-color: #6e7881;
    color: #fff;
}
.btn-dim-gray:hover {
    background-color: #5a6269;
    border-color: #5a6269;
    color: #fff;
    box-shadow: 0 8px 25px rgba(24, 47, 68, 0.3);
}


.btn-orange {
    background-color: #f09336;
    border-color: #f09336;
    color: #fff;
}
.btn-orange:hover {
    background-color: #f1902f;
    border-color: #f1902f;
    color: #fff;
}


.btn-circle{
	border-radius: 50%;
	background: #182F44;
	color: #fff;
	cursor: pointer;
    font-size: .8rem;
    padding: 0rem .25rem;
    padding-right: .3rem;
}

.btn-mini{
    padding: .01rem .4rem;
    font-size: .7rem;
    
}


.btn-search-before {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    border-top-left-radius: 50px;
    border-bottom-left-radius: 50px;
}

.btn-search {
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
}

/* Par soldado Buscar/Todo: mitades IGUALES. Sin esto el btn-group reparte
   el ancho proporcional al texto (flex-basis auto) y el par se ve chueco. */
.btn-group .btn-search-before,
.btn-group .btn-search {
    flex: 1 1 0;
    min-width: 72px;
}

/* Acciones dentro de la barra de filtros (modo panel de search.html):
   huella constante — "Buscar" solo se estira a todo el grupo y filtrado se
   parte en dos mitades soldadas iguales. OJO: el total (144px + gutters)
   DEBE caber en las 2 columnas libres que la regla de grid de
   filters_render.py exige a la última fila (~153px en lg) — un min-width
   mayor tira los botones a una fila huérfana en los listados justos. */
.omnicore-filters-ui .btn-group {
    min-width: 144px;
}