/* mapa-pedidos.css - barra alineada y sin saltos - color #a01a26 */

/* Roboto */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

.mp-contenedor {
    max-width: 700px;
    margin: 40px auto;
    font-family: "Roboto", sans-serif;
    padding: 18px;
    box-sizing: border-box;
}

/* título */
.mp-titulo {
    text-align:center;
    margin-bottom:20px;
    font-size:24px;
    font-weight:700;
}

/* buscador */
.mp-buscador {
    display:flex;
    gap:10px;
    justify-content:center;
    margin-bottom:10px;
}
#mp-numero {
    padding:10px 12px;
    width:220px;
    border-radius:8px;
    border:2px solid #ddd;
    font-size:15px;
    -moz-appearance: textfield;
}
#mp-numero::-webkit-inner-spin-button,
#mp-numero::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin:0;
}
#mp-boton {
    padding:10px 18px;
    background:#a01a26;
    color:#fff;
    border:none;
    border-radius:8px;
    cursor:pointer;
    font-weight:600;
}
#mp-boton:hover { background:#80121d; }

/* mensaje */
.mp-item-texto {
    text-align:center;
    margin-top:12px;
    margin-bottom:10px;
    font-size:15px;
    color:#333;
}

/* BARRA */
.mp-barra {
    width:100%;
    margin-top:18px;
    position:relative;
    padding: 0 20px;
    box-sizing: border-box;
}

/* línea base (centrada y alineada con los círculos) */
.mp-barra-linea {
    width: calc(100% - 40px);
    height: 3px;
    background: #ddd;
    margin: 0 auto;
    border-radius: 2px;
    position: relative;
    top: 11px; /* ajusta verticalmente para que los círculos queden centrados */
    z-index: 1;
}

/* pasos (flex) */
.mp-barra-pasos {
    display:flex;
    justify-content:space-between;
    align-items:center;
    position: relative;
    z-index: 2;
}

/* cada paso ocupa 33% y centra su contenido */
.mp-step {
    width:33%;
    text-align:center;
}

/* círculo */
.mp-circle {
    width:18px;
    height:18px;
    border-radius:50%;
    background:#ccc;
    margin:0 auto;
    display:block;
}

/* paso activo */
.mp-step.active .mp-circle {
    background:#a01a26;
}

/* etiqueta */
.mp-step span {
    display:block;
    margin-top:8px;
    font-size:14px;
    color:#444;
    white-space:nowrap; /* evita saltos */
}

/* responsive: ajustar espaciado en móviles si se necesita */
@media (max-width:480px) {
    .mp-contenedor { padding:14px; }
    #mp-numero { width:160px; }
    .mp-step span { font-size:13px; }
    .mp-barra-linea { top:12px; }
}
