/* NOMISIS: ajustes de legibilidad exclusivos de la vista oscura.
   La vista clara y el interruptor permanecen intactos. */
html.nomisis-vista-cristal .quote-modules-panel,
html.nomisis-vista-cristal .quote-module-card,
html.nomisis-vista-cristal .payroll-feature-card,
html.nomisis-vista-cristal .billing-ecosystem-box,
html.nomisis-vista-cristal .integration-box { color:#142f56; }
html.nomisis-vista-cristal .quote-panel-heading h3,
html.nomisis-vista-cristal .quote-module-info h4,
html.nomisis-vista-cristal .payroll-feature-card h3,
html.nomisis-vista-cristal .billing-ecosystem-box h2,
html.nomisis-vista-cristal .integration-box h2 { color:#112e57!important; text-shadow:none!important; }
html.nomisis-vista-cristal .quote-module-info p,
html.nomisis-vista-cristal .payroll-feature-card p,
html.nomisis-vista-cristal .billing-ecosystem-box p,
html.nomisis-vista-cristal .integration-box p {color:#586f8c!important;text-shadow:none!important;}
html.nomisis-vista-cristal .quote-module-info .quote-module-code,
html.nomisis-vista-cristal .quote-panel-heading span {color:#006de7!important;}
html.nomisis-vista-cristal .quote-module-price strong {color:#102f5d!important;}
html.nomisis-vista-cristal .quote-module-card .quote-toggle-label,
html.nomisis-vista-cristal .quote-module-card .quote-seat-control {color:#3b5577!important;}
html.nomisis-vista-cristal .integration-box h2 strong,
html.nomisis-vista-cristal .billing-ecosystem-box h2 strong {color:#0877ef!important;}
html.nomisis-vista-cristal .integration-modules strong,
html.nomisis-vista-cristal .integration-modules a strong {color:#123b6d!important;}
html.nomisis-vista-cristal .pos-final-actions .btn-outline {color:#123b6d!important;background:#fff!important;border-color:#d9e7f8!important;}
html.nomisis-vista-cristal .pos-final-actions .btn-outline:hover {background:#eaf3ff!important;color:#0756b5!important;}




/* ============================================
   NOMISIS - TARJETAS DE MODULOS
   Contraste y distribucion compacta
   Exclusivo para vista oscura
   ============================================ */

/* TARJETAS */
html.nomisis-vista-cristal :is(
    .unified-feature-card,
    .pos-feature-card,
    .billing-feature-card,
    .payroll-feature-card
) {
    background: #ffffff !important;
    border: 1px solid #dbe5f3 !important;
    color: #102e57 !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 18px 20px !important;
    box-sizing: border-box;
    align-self: stretch !important;
    min-width: 0;
}

/* TITULOS */
html.nomisis-vista-cristal :is(
    .unified-feature-card,
    .pos-feature-card,
    .billing-feature-card,
    .payroll-feature-card
) :is(h2, h3, h4, strong) {
    color: #102e57 !important;
    -webkit-text-fill-color: #102e57 !important;
    text-shadow: none !important;
}

html.nomisis-vista-cristal :is(
    .unified-feature-card,
    .pos-feature-card,
    .billing-feature-card,
    .payroll-feature-card
) :is(h2, h3, h4) {
    margin-top: 10px !important;
    margin-bottom: 6px !important;
    line-height: 1.25 !important;
}

/* DESCRIPCIONES */
html.nomisis-vista-cristal :is(
    .unified-feature-card,
    .pos-feature-card,
    .billing-feature-card,
    .payroll-feature-card
) p {
    color: #587094 !important;
    -webkit-text-fill-color: #587094 !important;
    text-shadow: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    line-height: 1.45 !important;
}

/* NUMEROS */
html.nomisis-vista-cristal :is(
    .unified-feature-number,
    .pos-feature-number,
    .billing-feature-number
) {
    color: #0879ff !important;
    -webkit-text-fill-color: #0879ff !important;
}

/* HOVER */
html.nomisis-vista-cristal :is(
    .unified-feature-card,
    .pos-feature-card,
    .billing-feature-card,
    .payroll-feature-card
):hover {
    border-color: #98bfff !important;
}

/* ============================================
   DISTRIBUCION EN ESCRITORIO
   ============================================ */

@media (min-width: 1100px) {

    /* Modulos con 5 tarjetas */
    html.nomisis-vista-cristal
    .unified-feature-grid {
        display: grid !important;
        grid-template-columns:
            repeat(5, minmax(0, 1fr)) !important;
        gap: 14px !important;
        align-items: stretch !important;
        grid-auto-rows: auto !important;
    }

    /* Cada tarjeta ocupa una columna */
    html.nomisis-vista-cristal
    .unified-feature-grid
    > .unified-feature-card {
        grid-column: auto !important;
        grid-row: auto !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    /* Modulos con 4 tarjetas */
    html.nomisis-vista-cristal
    :is(
        .pos-feature-grid,
        .billing-feature-grid,
        .payroll-feature-grid
    ) {
        display: grid !important;
        grid-template-columns:
            repeat(4, minmax(0, 1fr)) !important;
        gap: 16px !important;
        align-items: stretch !important;
    }
}

/* ============================================
   TABLET
   ============================================ */

@media (min-width: 769px) and (max-width: 1099px) {
    html.nomisis-vista-cristal
    :is(
        .unified-feature-grid,
        .pos-feature-grid,
        .billing-feature-grid,
        .payroll-feature-grid
    ) {
        display: grid !important;
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
}

/* ============================================
   CELULARES
   ============================================ */

@media (max-width: 768px) {
    html.nomisis-vista-cristal
    :is(
        .unified-feature-grid,
        .pos-feature-grid,
        .billing-feature-grid,
        .payroll-feature-grid
    ) {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    html.nomisis-vista-cristal
    :is(
        .unified-feature-card,
        .pos-feature-card,
        .billing-feature-card,
        .payroll-feature-card
    ) {
        min-height: 0 !important;
        padding: 18px !important;
    }
}
