.contenedor,
.c {
    width: min(1280px, 100%) !important;
    max-width: none !important;
    padding-right: 18px !important;
    padding-left: 18px !important;
}

html {
    overflow-x: hidden;
}

body {
    min-width: 0;
}

img,
svg {
    max-width: 100%;
}

.encabezado,
.encabezado-pagina,
.header,
.h,
.topbar {
    min-width: 0;
}

.encabezado > .encabezado-marca,
.encabezado-pagina > .encabezado-marca,
.header > .encabezado-marca,
.h > .encabezado-marca,
.topbar > .encabezado-marca {
    flex: 1 1 auto;
}

.encabezado > .acciones-encabezado,
.encabezado-pagina > .acciones-encabezado,
.header > .acciones,
.h > .a,
.topbar > .acciones {
    flex: 0 0 auto;
    justify-content: flex-end;
}

.tabla,
.tabla-contenedor,
.tabla-wrapper {
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
}

body.modo-captura > .contenedor {
    width: min(760px, calc(100% - 20px)) !important;
}

.brand-bar {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: auto;
    margin: 0;
    padding: 0;
}

.encabezado-marca {
    position: relative;
    min-width: 0;
    min-height: 48px;
    padding-left: 64px;
}

.encabezado-marca h1,
.encabezado-marca .sub,
.encabezado-marca .subtitulo {
    overflow: hidden;
    margin-right: 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.brand-header-icon {
    width: 48px !important;
    min-width: 48px !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    font-size: 18px !important;
    line-height: 1 !important;
}

.brand-action-icon {
    width: 48px !important;
    min-width: 48px !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    font-size: 19px !important;
    line-height: 1 !important;
}

.brand-bar__link {
    display: inline-flex;
    align-items: center;
    min-height: 48px;
    text-decoration: none;
}

.brand-bar__logo {
    width: 50px;
    height: 38px;
    object-fit: contain;
}

/* ---------------------------------------------------------
   PEDIDOS · BLOQUE DE PRECIO DE KIT
   ---------------------------------------------------------
   Nuevo Pedido y Editar Pedido nacieron con estilos distintos.
   Estas reglas mantienen el bloque inyectado visualmente idéntico en ambos.
*/
body.dv-pedido-form-page .dv-kit-price-box {
    padding: 13px 14px !important;
    border-color: #d8e5dc !important;
    border-radius: 14px !important;
    background: #f8fbf9 !important;
}

body.dv-pedido-form-page .dv-kit-price-head {
    margin-bottom: 10px !important;
}

body.dv-pedido-form-page .dv-kit-price-title {
    font-size: 9px !important;
    line-height: 1.2 !important;
    letter-spacing: .25px !important;
}

body.dv-pedido-form-page .dv-kit-price-help {
    max-width: 620px;
    margin-top: 3px !important;
    font-size: 9px !important;
    line-height: 1.35 !important;
}

body.dv-pedido-form-page .dv-kit-price-state {
    min-height: 26px;
    display: inline-flex;
    align-items: center;
    padding: 0 9px !important;
    font-size: 8px !important;
    line-height: 1 !important;
}

body.dv-pedido-form-page .dv-kit-price-grid {
    grid-template-columns: minmax(180px, 220px) minmax(220px, 340px) 160px !important;
    justify-content: start !important;
    gap: 10px !important;
    align-items: end !important;
}

body.dv-pedido-form-page .dv-kit-price-grid label {
    display: block !important;
    margin: 0 0 6px !important;
    color: #747b84 !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    letter-spacing: .2px !important;
    text-transform: uppercase !important;
}

body.dv-pedido-form-page .dv-kit-price-grid input[type="number"] {
    width: 100% !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 9px 11px !important;
    border: 1px solid #d2d9d4 !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: #24272b !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

body.dv-pedido-form-page .dv-kit-price-total {
    min-height: 46px !important;
    height: 46px !important;
    padding: 9px 11px !important;
    border-color: #dce3de !important;
    border-radius: 11px !important;
    background: #fff !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
}

body.dv-pedido-form-page .dv-kit-auto-btn {
    min-height: 46px !important;
    height: 46px !important;
    padding: 0 12px !important;
    border-color: #d5ddd7 !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: #425448 !important;
    font-size: 8px !important;
    letter-spacing: .1px !important;
    box-shadow: none !important;
}

body.dv-pedido-form-page .dv-kit-auto-btn:hover {
    background: #f1f6f3 !important;
    border-color: #c6d3ca !important;
}

body.dv-pedido-form-page .dv-kit-reference {
    max-width: 740px;
    margin-top: 9px !important;
    padding: 7px 10px !important;
    border-radius: 9px !important;
    background: #eef4f0 !important;
    font-size: 8.5px !important;
    line-height: 1.35 !important;
}

body.dv-pedido-form-page .dv-manual-volume-note {
    max-width: 740px;
    font-size: 8.5px !important;
}

@media (min-width: 721px) and (max-width: 1100px) {
    .contenedor,
    .c {
        padding-right: 20px !important;
        padding-left: 20px !important;
    }

    .encabezado,
    .encabezado-pagina,
    .header,
    .h,
    .topbar {
        flex-wrap: wrap;
    }

    .encabezado > .encabezado-marca,
    .encabezado-pagina > .encabezado-marca,
    .header > .encabezado-marca,
    .h > .encabezado-marca,
    .topbar > .encabezado-marca {
        flex-basis: 360px;
    }

    .encabezado > .acciones-encabezado,
    .encabezado-pagina > .acciones-encabezado,
    .header > .acciones,
    .h > .a,
    .topbar > .acciones {
        flex-wrap: wrap;
    }

    body.dv-pedido-form-page .dv-kit-price-grid {
        grid-template-columns: minmax(160px, .9fr) minmax(210px, 1.25fr) 150px !important;
    }
}

@media (max-width: 720px) {
    .contenedor,
    .c {
        padding-right: 11px !important;
        padding-left: 11px !important;
    }

    .encabezado-marca {
        min-height: 44px;
        padding-left: 55px;
    }

    .encabezado,
    .encabezado-pagina,
    .header,
    .h,
    .topbar {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .encabezado > .acciones-encabezado,
    .encabezado-pagina > .acciones-encabezado,
    .header > .acciones,
    .h > .a,
    .topbar > .acciones {
        display: flex;
        width: 100%;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .encabezado > .acciones-encabezado > :not(.brand-header-icon):not(.brand-action-icon),
    .encabezado-pagina > .acciones-encabezado > :not(.brand-header-icon):not(.brand-action-icon),
    .header > .acciones > :not(.brand-header-icon):not(.brand-action-icon),
    .h > .a > :not(.brand-header-icon):not(.brand-action-icon),
    .topbar > .acciones > :not(.brand-header-icon):not(.brand-action-icon) {
        flex: 1 1 auto;
    }

    input,
    select,
    textarea {
        font-size: 16px !important;
    }

    [role="dialog"],
    .modal,
    .modal-pago {
        max-width: calc(100vw - 22px) !important;
        max-height: calc(100dvh - 22px);
        overflow-y: auto;
    }

    .brand-bar__logo {
        width: 44px;
        height: 34px;
    }

    body.dv-pedido-form-page .dv-kit-price-box {
        padding: 12px !important;
    }

    body.dv-pedido-form-page .dv-kit-price-head {
        gap: 7px !important;
    }

    body.dv-pedido-form-page .dv-kit-price-grid {
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }

    body.dv-pedido-form-page .dv-kit-price-grid input[type="number"] {
        height: 48px !important;
        min-height: 48px !important;
        font-size: 16px !important;
    }

    body.dv-pedido-form-page .dv-kit-price-total,
    body.dv-pedido-form-page .dv-kit-auto-btn {
        width: 100% !important;
        height: 48px !important;
        min-height: 48px !important;
    }

    body.dv-pedido-form-page .dv-kit-reference,
    body.dv-pedido-form-page .dv-manual-volume-note {
        max-width: none;
    }
}
