﻿
/* RIEPILOGO SPEDIZIONE */

.spedizione-summary {
    border: 1px solid #e6e9f0;
    border-radius: 10px;
}

.spedizione-location {
    background: #f7f9fc;
    border-radius: 8px;
    padding: 18px 22px;
    height: 100%;
}

    .spedizione-location h4 {
        font-size: 21px;
        font-weight: 700;
        color: #253858;
    }

.spedizione-arrow {
    font-size: 30px;
    color: #5578eb;
}

.spedizione-colli {
    border-top: 1px solid #edf0f5;
    padding-top: 15px;
}

.collo-item {
    padding: 8px 0;
    font-size: 14px;
}

/* CARD PREVENTIVO */

.preventivo-card {
    border: 1px solid #e5e9f0;
    border-radius: 10px;
    transition: border-color .2s, box-shadow .2s;
}

    .preventivo-card:hover {
        border-color: #a8baf7;
        box-shadow: 0 4px 15px rgba(0,0,0,.07) !important;
    }

.preventivo-logo {
    display: block;
    max-width: 85px;
    max-height: 65px;
    width: auto;
    height: auto;
    object-fit: contain;
    margin: auto;
}

.preventivo-tempi {
    font-size: 16px;
    font-weight: 700;
    color: #253858;
}

    .preventivo-tempi i {
        color: #5578eb;
        font-size: 19px;
    }

.preventivo-descrizione {
    font-size: 14px;
    color: #596579;
    line-height: 1.6;
}

/* PREZZO CLIENTE */

.preventivo-prezzo {
    background: #f0faf5;
    border: 1px solid #d7eee1;
    border-radius: 8px;
    padding: 15px 10px;
    text-align: center;
}

.prezzo-label {
    color: #64816f;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .6px;
}

.prezzo-valore {
    color: #15965a;
    font-size: 29px;
    font-weight: 800;
    line-height: 1.4;
    white-space: nowrap;
}

/* INFORMAZIONI RISERVATE */

.preventivo-interno {
    border-top: 1px dashed #e2e6ed;
    background: #fafbfd;
    border-radius: 0 0 8px 8px;
    font-size: 12px;
}

    .preventivo-interno strong {
        color: #697386;
        font-weight: 600;
    }

.spedizione-summary .text-muted,
.preventivo-card .text-muted {
    font-size: 1.1em;
}


/* Badge informazioni interne */

.badge-interno {
    font-size: 13px;
    font-weight: 600;
    padding: 9px 15px;
    border-radius: 6px;
    vertical-align: middle;
}

    .badge-interno.badge-primary {
        background-color: #5578eb;
        color: #fff;
    }

    .badge-interno.badge-secondary {
        background-color: #edf0f5;
        color: #46536b;
    }

.info-label {
    font-size: 13px;
    color: #7a8495;
    margin-right: 6px;
}


/* ============================= */
/* CARD SPEDIZIONE */
/* ============================= */

#spedizione-step1 .spedizione-form-card {
    border: 1px solid #e5eaf2;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(0,0,0,.045);
}

    #spedizione-step1 .spedizione-form-card .card-body {
        padding: 25px;
    }

/* INTESTAZIONI */

#spedizione-step1 .spedizione-header {
    padding: 17px 22px;
    border-bottom: none;
    color: white;
}

    #spedizione-step1 .spedizione-header h4 {
        color: white;
        font-size: 19px;
        font-weight: 700;
    }

    #spedizione-step1 .spedizione-header small {
        color: rgba(255,255,255,.85);
        font-size: 12px;
    }

/* MITTENTE */

#spedizione-step1 .mittente-header {
    background: #5578eb;
}

/* DESTINATARIO */

#spedizione-step1 .destinatario-header {
    background: #10a77c;
}

/* COLLI */

#spedizione-step1 .colli-header {
    background: #344563;
}

/* ICONE */

#spedizione-step1 .spedizione-header-icon {
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,.17);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
}

    #spedizione-step1 .spedizione-header-icon i {
        font-size: 26px;
        color: white;
    }

/* LABEL */

#spedizione-step1 .form-group label {
    font-size: 13px;
    font-weight: 600;
    color: #344563;
    margin-bottom: 8px;
}

/* DESCRIZIONI */

#spedizione-step1 .form-text.text-muted {
    font-size: 12px;
    color: #8a95a8 !important;
    margin-top: 6px;
}

/* CAMPI HTML */

#spedizione-step1 .form-control {
    min-height: 38px;
    border-radius: 5px;
    border-color: #dce3ed;
    font-size: 14px;
}

/* KENDO DROPDOWN E NUMERIC */

#spedizione-step1 .k-dropdown,
#spedizione-step1 .k-dropdownlist,
#spedizione-step1 .k-numerictextbox {
    width: 100%;
    max-width: 100%;
}

/* FOCUS */

#spedizione-step1 .form-control:focus {
    border-color: #5578eb;
    box-shadow: 0 0 0 2px rgba(85,120,235,.12);
}

/* AGGIUNGI COLLO */

#spedizione-step1 .btn-add-collo {
    min-height: 38px;
    font-size: 13px;
    font-weight: 700;
    border-radius: 6px;
    white-space: nowrap;
}

    #spedizione-step1 .btn-add-collo i {
        font-size: 17px;
        vertical-align: middle;
    }

/* CONTENITORE GRIGLIA */

#spedizione-step1 .colli-grid-container {
    border-top: 1px solid #e8edf4;
    padding-top: 20px;
    min-width: 0;
}


/* CONTENITORE */

#spedizione-step1 .colli-table-wrapper {
    width: 100%;
    overflow-x: auto;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

/* GRIGLIA */

#spedizione-step1 .colli-grid-moderna {
    border: none;
    font-size: 13px;
}

    /* INTESTAZIONI */

    #spedizione-step1 .colli-grid-moderna .k-grid-header {
        background: #edf3fa;
    }

        #spedizione-step1 .colli-grid-moderna .k-grid-header th {
            background: #edf3fa;
            border-color: #dce5ef;
            padding: 12px 10px;
            font-weight: 700;
            color: #344563;
        }

        #spedizione-step1 .colli-grid-moderna .k-grid-header a {
            color: #344563;
        }

    /* RIGHE */

    #spedizione-step1 .colli-grid-moderna tbody tr {
        height: 44px;
    }

    #spedizione-step1 .colli-grid-moderna tbody td {
        padding: 9px 10px;
        border-color: #edf0f5;
        color: #344563;
    }

    /* RIGHE ALTERNATE */

    #spedizione-step1 .colli-grid-moderna .k-alt {
        background: #f8fafd;
    }

    /* HOVER */

    #spedizione-step1 .colli-grid-moderna tbody tr:hover {
        background: #f0f5ff;
    }

    /* NUMERI */

    #spedizione-step1 .colli-grid-moderna .collo-numero {
        text-align: right;
    }

    /* PESO */

    #spedizione-step1 .colli-grid-moderna .collo-peso {
        text-align: right;
        font-weight: 700;
        color: #5578eb;
    }

    /* PESO TOTALE */

    #spedizione-step1 .colli-grid-moderna .collo-peso-totale {
        text-align: right;
        font-weight: 700;
        color: #15965a;
        white-space: nowrap;
    }

    /* PULSANTE RIMUOVI */

    #spedizione-step1 .colli-grid-moderna .btn-rimuovi-collo {
        background: #fff1f2;
        border: 1px solid #fecdd3;
        color: #dc3545;
        border-radius: 5px;
        font-size: 12px;
        font-weight: 600;
        padding: 5px 10px;
    }

        #spedizione-step1 .colli-grid-moderna .btn-rimuovi-collo:hover {
            background: #dc3545;
            border-color: #dc3545;
            color: white;
        }

    /* FOOTER */

    #spedizione-step1 .colli-grid-moderna .k-grid-footer {
        background: #f1f8f5;
        border-top: 1px solid #d9eee2;
    }

    /* PAGINAZIONE */

    #spedizione-step1 .colli-grid-moderna .k-pager-wrap {
        background: #fafbfd;
        border-top: 1px solid #e5eaf2;
    }


/* PROVIDER SPRO - BLU */
.badge-interno.badge-provider-spro {
    background-color: #5578eb;
    color: #ffffff;
}

/* PROVIDER DVAEX - ARANCIONE */
.badge-interno.badge-provider-dvaex {
    background-color: #e67e22;
    color: #ffffff;
}

/* ALTRI PROVIDER - GRIGIO */
.badge-interno.badge-provider-default {
    background-color: #6c757d;
    color: #ffffff;
}


/* ========================================= */
/* MITTENTE E DESTINATARIO AFFIANCATI */
/* ========================================= */

#spedizione-step1 .spedizione-localita-row {
    margin-bottom: 5px;
}

/* Schede stessa altezza */

#spedizione-step1 .localita-card {
    width: 100%;
    height: 100%;
    margin-bottom: 0 !important;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 3px 12px rgba(0,0,0,.05);
}

    /* Intestazioni allineate */

    #spedizione-step1 .localita-card .spedizione-header {
        min-height: 85px;
        display: flex;
        align-items: center;
    }

    /* Colori distintivi */

    #spedizione-step1 .localita-card .mittente-header {
        background-color: #5578eb;
    }

    #spedizione-step1 .localita-card .destinatario-header {
        background-color: #10a77c;
    }

    /* Contenuto delle schede */

    #spedizione-step1 .localita-card .card-body {
        padding: 22px 25px;
    }

    /* Spaziatura campi */

    #spedizione-step1 .localita-card .form-group {
        margin-bottom: 17px;
    }

        /* Etichette */

        #spedizione-step1 .localita-card .form-group label {
            font-size: 13px;
            font-weight: 600;
            color: #344563;
            margin-bottom: 7px;
        }

    /* Input HTML */

    #spedizione-step1 .localita-card .form-control {
        width: 100%;
        min-height: 38px;
        border-radius: 6px;
        font-size: 14px;
    }

/* Campo Stato readonly */

#spedizione-step1
#PaeseMittenteDescrizione {
    background-color: #f5f7fa;
    color: #68768c;
}

/* Telerik / Kendo */

#spedizione-step1 .localita-card .k-dropdown,
#spedizione-step1 .localita-card .k-dropdownlist {
    width: 100% !important;
    max-width: 100%;
}

/* Descrizioni sotto i campi */

#spedizione-step1 .localita-card .form-text.text-muted {
    font-size: 12px;
    color: #8a95a8 !important;
    margin-top: 5px;
}

/* Hover schede */

#spedizione-step1 .localita-card {
    transition: box-shadow .2s ease;
}

    #spedizione-step1 .localita-card:hover {
        box-shadow: 0 5px 18px rgba(0,0,0,.08);
    }

/* Responsive */

@media (max-width: 991px) {

    #spedizione-step1 .localita-card {
        height: auto;
    }

        #spedizione-step1 .localita-card .spedizione-header {
            min-height: 75px;
        }

        #spedizione-step1 .localita-card .card-body {
            padding: 18px;
        }
}


/* ============================================= */
/* WIZARD SPEDIZIONI - LARGHEZZA AREA DI LAVORO */
/* ============================================= */

/* Contenitore principale */
.spedizione-wizard-portlet {
    width: 100%;
    max-width: none !important;
    margin-left: 0;
    margin-right: 0;
}

/* Rimuove i vincoli di larghezza del wizard Metronic */
#kt_wizard_v1 .spedizione-wizard-wrapper {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 20px 24px !important;
    box-sizing: border-box;
}

/* Il form occupa tutta la larghezza disponibile */
#kt_wizard_v1 #kt_form {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

/* Rimuove eventuali max-width delle sezioni */
#kt_wizard_v1 .kt-wizard-v1__content {
    width: 100% !important;
    max-width: none !important;
}

/* Schede località */
#spedizione-step1 .spedizione-localita-row {
    width: auto;
}

/* Footer con pulsanti navigazione */
#kt_wizard_v1 .kt-form__actions {
    width: 100%;
    max-width: none !important;
}

/* Schermi grandi */
@media (min-width: 1400px) {
    #kt_wizard_v1 .spedizione-wizard-wrapper {
        padding: 24px 30px !important;
    }
}

/* Tablet e smartphone */
@media (max-width: 767px) {
    #kt_wizard_v1 .spedizione-wizard-wrapper {
        padding: 15px !important;
    }
}



/* ======================================== */
/* INTESTAZIONI COLORATE SCHEDE SPEDIZIONE */
/* ======================================== */

/* Stile comune alle tre intestazioni */
#spedizione-step1 .spedizione-form-card > .spedizione-header {
    padding: 18px 24px;
    min-height: 82px;
    border: none !important;
    border-radius: 0;
    display: flex;
    align-items: center;
}

/* MITTENTE - BLU */
#spedizione-step1 .spedizione-form-card > .mittente-header {
    background: #4169d5 !important;
}

/* DESTINATARIO - VERDE */
#spedizione-step1 .spedizione-form-card > .destinatario-header {
    background: #109774 !important;
}

/* COLLI - BLU ARDESIA */
#spedizione-step1 .spedizione-form-card > .colli-header {
    background: #344563 !important;
}

/* Titoli bianchi */
#spedizione-step1 .spedizione-header h4 {
    color: #ffffff !important;
    font-size: 20px;
    font-weight: 700;
    margin: 0;
}

/* Sottotitoli */
#spedizione-step1 .spedizione-header small {
    color: rgba(255,255,255,.90) !important;
    font-size: 13px;
    font-weight: 400;
}

/* Contenitore icona */
#spedizione-step1 .spedizione-header-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    border-radius: 10px;
    background: rgba(255,255,255,.18);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
}

/* Icone bianche */
#spedizione-step1 .spedizione-header-icon i {
    color: #ffffff !important;
    font-size: 26px;
}

/* Bordi e ombre schede */
#spedizione-step1 .spedizione-form-card {
    border: 1px solid #dfe5ee;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 14px rgba(0,0,0,.07);
}

/* Responsive */
@media (max-width: 767px) {
    #spedizione-step1 .spedizione-form-card > .spedizione-header {
        min-height: 72px;
        padding: 14px 18px;
    }

    #spedizione-step1 .spedizione-header h4 {
        font-size: 18px;
    }

    #spedizione-step1 .spedizione-header-icon {
        width: 40px;
        height: 40px;
        min-width: 40px;
    }
}


/* MOBILE */

@media (max-width: 991px) {
    #spedizione-step1 .colli-grid-moderna {
        min-width: 900px;
    }
}


/* RESPONSIVE */

@media (max-width: 767px) {
    #spedizione-step1 .spedizione-form-card .card-body {
        padding: 16px;
    }

    #spedizione-step1 .spedizione-header {
        padding: 15px;
    }

    #spedizione-step1 .colli-grid-container {
        overflow-x: auto;
    }
}


/* ============================================ */
/* LISTA PREVENTIVI - NUOVO LAYOUT */
/* ============================================ */

/* CARD PRINCIPALE */

.preventivo-card-nuova {
    border: 1px solid #dfe6f0;
    border-radius: 10px;
    overflow: hidden;
    background: #ffffff;
}

    .preventivo-card-nuova > .card-body {
        padding: 16px !important;
    }

    .preventivo-card-nuova .preventivo-riga-principale {
        align-items: stretch;
    }

    /* ============================================ */
    /* ZONA CORRIERE */
    /* ============================================ */

    .preventivo-card-nuova .preventivo-corriere-box {
        background: #f2f6fc;
        border: 1px solid #e4ebf5;
        border-radius: 8px;
        padding: 14px 10px;
        text-align: center;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .preventivo-card-nuova .preventivo-logo-box {
        width: 100%;
        min-height: 72px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 8px;
    }

    .preventivo-card-nuova .preventivo-logo {
        max-width: 105px;
        max-height: 68px;
        object-fit: contain;
        margin: auto;
    }

    .preventivo-card-nuova .preventivo-corriere-nome {
        font-size: 13px;
        font-weight: 700;
        color: #344563;
        line-height: 1.4;
        overflow-wrap: anywhere;
    }

    .preventivo-card-nuova .preventivo-tariffa-codice {
        font-size: 12px;
        color: #8794a9;
        margin-top: 5px;
        overflow-wrap: anywhere;
    }

    /* ============================================ */
    /* SERVIZIO E TEMPI */
    /* ============================================ */

    .preventivo-card-nuova .preventivo-servizio-box {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding: 6px 8px;
    }

    .preventivo-card-nuova .preventivo-tempi {
        font-size: 18px;
        font-weight: 800;
        color: #253858;
        margin-bottom: 12px;
    }

        .preventivo-card-nuova .preventivo-tempi i {
            font-size: 21px;
            color: #5578eb;
        }

    /* Riquadro descrizione servizio */

    .preventivo-card-nuova .preventivo-descrizione-box {
        background: #f7f9fd;
        border-left: 3px solid #5578eb;
        border-radius: 0 7px 7px 0;
        padding: 12px 15px;
    }

    .preventivo-card-nuova .preventivo-descrizione {
        font-size: 14px;
        font-weight: 600;
        color: #425574;
        line-height: 1.5;
    }

        .preventivo-card-nuova .preventivo-descrizione i {
            color: #5578eb;
            font-size: 17px;
        }

    .preventivo-card-nuova .preventivo-info-aggiuntiva {
        font-size: 13px;
        color: #7b879b;
        margin-top: 7px;
        line-height: 1.5;
    }

    /* ============================================ */
    /* PREZZO CLIENTE - ALLINEATO A DESTRA */
    /* ============================================ */

    .preventivo-card-nuova .preventivo-prezzo-colonna {
        width: 100%;
        height: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        justify-content: center;
    }

    .preventivo-card-nuova .preventivo-prezzo {
        width: 100%;
        max-width: 330px;
        min-height: 115px;
        background: #edf9f2;
        border: 1px solid #ccebd9;
        border-radius: 9px;
        padding: 16px 22px;
        text-align: right;
        margin: 0;
    }

    .preventivo-card-nuova .prezzo-label {
        color: #64816f;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: .7px;
    }

    .preventivo-card-nuova .prezzo-valore {
        color: #15965a;
        font-size: 32px;
        font-weight: 800;
        line-height: 1.3;
        margin: 4px 0;
    }

    .preventivo-card-nuova .prezzo-iva {
        font-size: 12px;
        color: #7b9887;
    }

    .preventivo-card-nuova .prezzo-extra {
        margin-top: 8px;
        padding-top: 7px;
        border-top: 1px solid #d4eadc;
        font-size: 12px;
        color: #4c7560;
    }

    .preventivo-card-nuova .btn-preventivo-seleziona {
        width: 100%;
        max-width: 330px;
        margin-top: 10px;
        border-radius: 7px;
        font-weight: 700;
    }

    /* ============================================ */
    /* DATI INTERNI ADMIN - CELLE SEPARATE */
    /* ============================================ */

    .preventivo-card-nuova .preventivo-interno {
        margin-top: 14px;
        padding-top: 14px;
        border-top: 1px dashed #dce4ef;
        background: transparent;
        border-radius: 0;
    }

    .preventivo-card-nuova .preventivo-info-grid {
        margin-left: -5px;
        margin-right: -5px;
    }

        .preventivo-card-nuova .preventivo-info-grid > div {
            padding-left: 5px;
            padding-right: 5px;
        }

    .preventivo-card-nuova .preventivo-info-cella {
        background: #f5f7fb;
        border: 1px solid #e7ecf4;
        border-radius: 7px;
        padding: 11px 16px;
        height: 100%;
        min-height: 74px;
    }

    .preventivo-card-nuova .preventivo-info-titolo {
        font-size: 11px;
        font-weight: 700;
        letter-spacing: .5px;
        color: #8793a7;
        margin-bottom: 8px;
    }

        .preventivo-card-nuova .preventivo-info-titolo i {
            font-size: 15px;
            color: #8295b3;
        }

    .preventivo-card-nuova .preventivo-info-valore {
        font-size: 15px;
        font-weight: 700;
        color: #344563;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 8px;
    }

    .preventivo-card-nuova .preventivo-costo {
        color: #58677f;
    }

    .preventivo-card-nuova .preventivo-iva-dettaglio {
        font-size: 12px;
        font-weight: 500;
        color: #8995a7;
    }

    /* Badge provider */

    .preventivo-card-nuova .badge-interno {
        padding: 7px 14px;
        font-size: 12px;
        border-radius: 5px;
    }

    .preventivo-card-nuova .badge-provider-spro {
        background: #5578eb;
        color: white;
    }

    .preventivo-card-nuova .badge-provider-dvaex {
        background: #e67e22;
        color: white;
    }

    .preventivo-card-nuova .badge-provider-default {
        background: #6c757d;
        color: white;
    }

/* ============================================ */
/* RESPONSIVE */
/* ============================================ */

@media (max-width: 991px) {

    .preventivo-card-nuova .preventivo-prezzo {
        max-width: none;
    }

    .preventivo-card-nuova .btn-preventivo-seleziona {
        max-width: none;
    }
}

@media (max-width: 767px) {

    .preventivo-card-nuova > .card-body {
        padding: 12px !important;
    }

    .preventivo-card-nuova .preventivo-corriere-box {
        padding: 12px;
    }

    .preventivo-card-nuova .preventivo-servizio-box {
        padding: 5px 0;
    }

    .preventivo-card-nuova .preventivo-prezzo-colonna {
        align-items: stretch;
    }

    .preventivo-card-nuova .preventivo-prezzo {
        text-align: center;
        min-height: auto;
    }

    .preventivo-card-nuova .prezzo-valore {
        font-size: 28px;
    }

    .preventivo-card-nuova .preventivo-info-cella {
        min-height: auto;
    }
}



/* SPRO - barra blu */
.preventivo-card-nuova
.preventivo-descrizione-box.preventivo-descrizione-spro {
    border-left: 3px solid #5578eb;
}

/* DVAEX - barra arancione */
.preventivo-card-nuova
.preventivo-descrizione-box.preventivo-descrizione-dvaex {
    border-left: 3px solid #e67e22;
}

/* Anche l'icona della descrizione cambia colore */
.preventivo-card-nuova
.preventivo-descrizione-spro .preventivo-descrizione i {
    color: #5578eb;
}

.preventivo-card-nuova
.preventivo-descrizione-dvaex .preventivo-descrizione i {
    color: #e67e22;
}


/* ========================================= */
/* OVERLAY CARICAMENTO PREVENTIVI */
/* ========================================= */

.spedizione-loading-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: rgba(25, 37, 58, 0.65);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

    .spedizione-loading-overlay.attivo {
        display: flex;
    }

.spedizione-loading-box {
    width: 100%;
    max-width: 440px;
    padding: 38px 32px;
    background: #ffffff;
    border-radius: 14px;
    box-shadow: 0 15px 45px rgba(0,0,0,.20);
    text-align: center;
}

.spedizione-loading-spinner {
    width: 58px;
    height: 58px;
    border: 5px solid #e4eafb;
    border-top-color: #5578eb;
    border-radius: 50%;
    animation: spedizione-spin .8s linear infinite;
    margin: 0 auto 24px;
}

@keyframes spedizione-spin {
    to {
        transform: rotate(360deg);
    }
}

.spedizione-loading-box h4 {
    font-size: 20px;
    font-weight: 700;
    color: #253858;
    margin-bottom: 12px;
}

.spedizione-loading-box p {
    font-size: 14px;
    line-height: 1.6;
    color: #64748b;
    margin-bottom: 12px;
}

.spedizione-loading-box small {
    font-size: 12px;
    color: #8794a9;
}


/* ========================================= */
/* POPUP PREVENTIVO BALDUINAEXPRESS */
/* ========================================= */

.be-popup-preventivo {
    max-width: calc(100vw - 24px) !important;
    border-radius: 12px !important;
    padding: 22px !important;
    box-sizing: border-box;
    overflow-x: hidden !important;
}

    .be-popup-preventivo .swal2-title {
        font-size: 22px;
        color: #253858;
    }

    .be-popup-preventivo .swal2-html-container,
    .be-popup-preventivo .swal2-content,
    .be-popup-preventivo #swal2-content,
    .be-popup-contenuto {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 14px 0 0 !important;
        padding: 0 !important;
        box-sizing: border-box;
        overflow-x: hidden !important;
        text-align: left;
    }

.be-contatti,
.be-contatti * {
    box-sizing: border-box;
}

.be-contatti {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    text-align: left;
}

/* TITOLI SEZIONI */

.be-sezione-titolo {
    font-size: 14px;
    font-weight: 700;
    color: #344563;
    margin: 18px 0 10px;
    display: flex;
    align-items: center;
    gap: 7px;
}

    .be-sezione-titolo i {
        font-size: 19px;
        color: #5578eb;
    }

/* PARTENZA E DESTINAZIONE */

.be-percorso {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
}

.be-localita {
    min-width: 0;
    background: #f4f7fc;
    border: 1px solid #e5ebf4;
    border-radius: 8px;
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

    .be-localita small,
    .be-offerta small {
        font-size: 10px;
        color: #8794a9;
        font-weight: 700;
        letter-spacing: .4px;
    }

    .be-localita strong {
        font-size: 17px;
        color: #253858;
    }

    .be-localita span {
        font-size: 12px;
        color: #8490a3;
    }

.be-percorso-freccia {
    text-align: center;
    color: #5578eb;
    font-size: 22px;
}

/* OFFERTA */

.be-offerta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    background: #f7f9fd;
    border: 1px solid #e5ebf4;
    border-radius: 8px;
    padding: 14px;
    margin-top: 12px;
}

    .be-offerta > div:first-child {
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .be-offerta strong {
        font-size: 15px;
        color: #344563;
    }

    .be-offerta span {
        font-size: 12px;
        color: #68768c;
    }

.be-offerta-prezzo {
    text-align: right;
    min-width: 0;
}

    .be-offerta-prezzo strong {
        display: block;
        font-size: 23px;
        color: #15965a;
        white-space: nowrap;
    }

/* COLLI */

.be-colli-lista {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.be-collo-riga {
    background: #ffffff;
    border: 1px solid #e5ebf4;
    border-radius: 7px;
    padding: 10px 13px;
}

.be-collo-intestazione {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    color: #344563;
    font-size: 13px;
}

.be-collo-dettagli,
.be-collo-misure {
    font-size: 12px;
    color: #7b879b;
    margin-top: 4px;
}

.be-colli-totale {
    display: flex;
    justify-content: space-between;
    gap: 10px;
    background: #edf9f2;
    border-radius: 7px;
    padding: 11px 13px;
    margin-top: 8px;
    color: #15965a;
    font-size: 13px;
}

/* CONTATTI */

.be-indirizzo {
    background: #f4f7fc;
    border-radius: 8px;
    padding: 14px;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 13px;
    color: #68768c;
}

    .be-indirizzo strong {
        color: #253858;
        font-size: 16px;
    }

    .be-indirizzo a {
        margin-top: 7px;
        font-weight: 700;
        color: #5578eb;
        text-decoration: none;
    }

/* WHATSAPP */

.be-whatsapp-btn {
    display: block;
    width: 100%;
    max-width: 100%;
    margin-top: 15px;
    padding: 13px 12px;
    background: #25d366 !important;
    border-color: #25d366 !important;
    color: #ffffff !important;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 700;
    white-space: normal;
}

    .be-whatsapp-btn:hover {
        background: #1ebe5d !important;
        color: #ffffff !important;
    }

    .be-whatsapp-btn i {
        font-size: 20px;
        margin-right: 7px;
        vertical-align: middle;
    }

.be-nota {
    margin-top: 10px;
    font-size: 11px;
    color: #8794a9;
    text-align: center;
    line-height: 1.5;
}

/* MOBILE */

@media (max-width: 575px) {

    .be-popup-preventivo {
        padding: 15px !important;
    }

    .be-offerta {
        grid-template-columns: minmax(0, 1fr);
    }

    .be-offerta-prezzo {
        text-align: left;
        border-top: 1px solid #e5ebf4;
        padding-top: 10px;
    }

    .be-colli-totale {
        flex-wrap: wrap;
    }
}


/* MOBILE */

@media (max-width: 767px) {
    .spedizione-arrow {
        transform: rotate(90deg);
    }

    .preventivo-prezzo {
        margin: 10px 0;
    }

    .prezzo-valore {
        font-size: 26px;
    }
}


/* ========================================= */
/* LOGO BALDUINAEXPRESS NEL POPUP */
/* ========================================= */

.be-logo-azienda {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 18px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e8edf5;
}

    .be-logo-azienda img {
        display: block;
        max-width: 220px;
        max-height: 85px;
        width: auto;
        height: auto;
        object-fit: contain;
    }

/* ========================================= */
/* LOGO CORRIERE NEL RIEPILOGO OFFERTA */
/* ========================================= */

.be-offerta-corriere {
    display: flex !important;
    flex-direction: row !important;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.be-offerta-logo {
    flex: 0 0 85px;
    width: 85px;
    min-height: 70px;
    background: #ffffff;
    border: 1px solid #e3eaf4;
    border-radius: 8px;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .be-offerta-logo img {
        display: block;
        max-width: 100%;
        max-height: 60px;
        width: auto;
        height: auto;
        object-fit: contain;
    }

.be-offerta-descrizione {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    flex: 1;
}

/* MOBILE */

@media (max-width: 575px) {

    .be-logo-azienda img {
        max-width: 170px;
        max-height: 65px;
    }

    .be-offerta-logo {
        flex-basis: 65px;
        width: 65px;
        min-height: 60px;
        padding: 5px;
    }

        .be-offerta-logo img {
            max-height: 48px;
        }

    .be-offerta-corriere {
        gap: 10px;
    }
}

/* ========================================= */
/* POPUP PREVENTIVO COMPATTO */
/* ========================================= */

.be-popup-compatto {
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    border-radius: 12px !important;
    box-sizing: border-box;
}

    /* Evita la barra di scorrimento orizzontale */
    .be-popup-compatto .swal2-html-container,
    .be-popup-compatto .swal2-content,
    .be-popup-compatto #swal2-content,
    .be-popup-contenuto-compatto {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow-x: hidden !important;
        box-sizing: border-box;
    }

.be-compact,
.be-compact * {
    box-sizing: border-box;
}

.be-compact {
    width: 100%;
    text-align: left;
    overflow-wrap: anywhere;
}

/* HEADER */

.be-compact-header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 4px 28px 12px 0;
    border-bottom: 1px solid #e7ecf4;
}

.be-compact-logo {
    width: 110px;
    max-height: 48px;
    object-fit: contain;
    flex-shrink: 0;
}

.be-compact-heading {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

    .be-compact-heading strong {
        color: #253858;
        font-size: 17px;
    }

    .be-compact-heading small {
        color: #8794a9;
        font-size: 12px;
    }

/* GRIGLIA PRINCIPALE */

.be-compact-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
    margin-top: 12px;
}

.be-compact-panel {
    min-width: 0;
    background: #f7f9fd;
    border: 1px solid #e5ebf4;
    border-radius: 8px;
    padding: 13px;
}

.be-compact-title {
    font-size: 13px;
    font-weight: 700;
    color: #344563;
    margin-bottom: 10px;
}

    .be-compact-title i {
        color: #5578eb;
        font-size: 17px;
        margin-right: 5px;
    }

/* PERCORSO */

.be-compact-route {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 20px minmax(0, 1fr);
    gap: 5px;
    align-items: center;
}

    .be-compact-route > div {
        display: flex;
        flex-direction: column;
        min-width: 0;
    }

    .be-compact-route small {
        font-size: 10px;
        color: #8b97a9;
    }

    .be-compact-route strong {
        font-size: 15px;
        color: #253858;
    }

    .be-compact-route span {
        font-size: 11px;
        color: #8794a9;
    }

    .be-compact-route > i {
        color: #5578eb;
        text-align: center;
    }

/* COLLI */

.be-compact-colli-title {
    margin-top: 16px;
    margin-bottom: 7px;
}

.be-compact-colli {
    display: flex;
    flex-direction: column;
    gap: 5px;
    max-height: 125px;
    overflow-y: auto;
}

.be-compact-collo {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 8px;
    background: #ffffff;
    border: 1px solid #e8edf4;
    border-radius: 5px;
    padding: 7px 9px;
    font-size: 11px;
}

    .be-compact-collo strong {
        color: #344563;
    }

    .be-compact-collo span {
        color: #66758c;
    }

    .be-compact-collo small {
        color: #8b97a9;
        width: 100%;
    }

/* CORRIERE */

.be-compact-corriere {
    display: flex;
    align-items: center;
    gap: 12px;
}

.be-compact-corriere-logo {
    width: 65px;
    height: 55px;
    flex-shrink: 0;
    background: #ffffff;
    border: 1px solid #e5ebf4;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
}

    .be-compact-corriere-logo img {
        max-width: 100%;
        max-height: 100%;
        object-fit: contain;
    }

.be-compact-corriere > div:last-child {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.be-compact-corriere strong {
    font-size: 13px;
    color: #344563;
}

.be-compact-corriere span {
    font-size: 11px;
    color: #8794a9;
}

/* SERVIZIO E TEMPI */

.be-compact-servizio {
    font-size: 12px;
    color: #68768c;
    line-height: 1.4;
    margin-top: 10px;
}

.be-compact-tempi {
    font-size: 12px;
    font-weight: 700;
    color: #344563;
    margin-top: 8px;
}

    .be-compact-tempi i {
        color: #5578eb;
        margin-right: 5px;
    }

/* PREZZO */

.be-compact-price {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    margin-top: 12px;
    padding: 10px 12px;
    border: 1px solid #d5ebdd;
    background: #edf9f2;
    border-radius: 6px;
}

    .be-compact-price span {
        color: #64816f;
        font-size: 10px;
        font-weight: 700;
    }

    .be-compact-price strong {
        font-size: 22px;
        color: #15965a;
        white-space: nowrap;
    }

/* FOOTER */

.be-compact-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: 12px;
    padding: 12px 4px 2px;
    border-top: 1px solid #e7ecf4;
}

.be-compact-address {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
    font-size: 11px;
    color: #718096;
}

    .be-compact-address strong {
        color: #253858;
        font-size: 13px;
    }

    .be-compact-address a {
        color: #5578eb;
        font-weight: 700;
        text-decoration: none;
    }

.be-compact-whatsapp {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 12px 17px;
    border-radius: 7px;
    background: #25d366;
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none !important;
}

    .be-compact-whatsapp:hover {
        background: #1ebe5d;
    }

    .be-compact-whatsapp i {
        font-size: 19px;
    }

/* MOBILE */

@media (max-width: 600px) {

    .be-compact-grid {
        grid-template-columns: 1fr;
    }

    .be-compact-footer {
        flex-direction: column;
        align-items: stretch;
    }

    .be-compact-whatsapp {
        width: 100%;
    }

    .be-compact-logo {
        width: 75px;
    }

    .be-compact-heading strong {
        font-size: 15px;
    }
}
