
    .sis-fiscal-card-title {
        text-align: center;
        font-size: 24px;
        font-weight: 800;
        color: #0f172a;
        margin-bottom: 30px;
    }

    /* Grid de Inputs */
    .sis-fiscal-row {
        display: flex;
        gap: 20px;
        margin-bottom: 20px;
    }
    
    .sis-fiscal-col {
        flex: 1;
    }

    .sis-fiscal-label {
        display: block;
        font-weight: 700;
        font-size: 0.9rem;
        margin-bottom: 8px;
        color: #1e293b;
    }

    .sis-fiscal-input {
        width: 100%;
        padding: 12px 15px;
        border: 1px solid #cbd5e1;
        border-radius: 8px;
        font-size: 16px;
        background-color: #fff;
        transition: border-color 0.2s;
    }
    .sis-fiscal-input:focus {
        border-color: #fbbf24;
        outline: none;
    }
    .sis-fiscal-input::placeholder { color: #94a3b8; }

    /* --- CAJA GRIS DE CURSOS --- */
    .sis-fiscal-course-box {
        background-color: #f1f5f9; /* Gris azulado muy claro */
        border: 1px solid #e2e8f0;
        border-radius: 10px;
        padding: 25px;
        margin: 30px 0;
        text-align: center;
    }

    .sis-fiscal-cb-title {
        font-size: 1.2rem;
        font-weight: 800;
        color: #1e293b;
        margin-bottom: 5px;
    }
    
    .sis-fiscal-cb-subtitle {
        font-size: 0.9rem;
        color: #d97706; /* Dorado oscuro */
        font-weight: 700;
        margin-bottom: 20px;
        display: block;
    }

    .sis-fiscal-checks-wrapper {
        display: flex;
        justify-content: center;
        gap: 15px;
        flex-wrap: wrap;
        text-align: left;
    }

    /* Estilo Checkbox Card */
    .sis-fiscal-check-card {
        background: transparent;
        display: flex;
        align-items: flex-start;
        gap: 10px;
        cursor: pointer;
        padding: 5px;
    }

    .sis-fiscal-check-card input[type="checkbox"] {
        transform: scale(1.3);
        margin-top: 4px;
        accent-color: #0f172a;
    }

    .sis-fiscal-check-info strong {
        display: block;
        font-size: 0.95rem;
        color: #0f172a;
    }
    .sis-fiscal-check-info span {
        font-size: 0.8rem;
        color: #64748b;
    }

/* --- MODALIDAD (ESTILO TARJETA) --- */
.sis-fiscal-modality {
    display: flex;
    flex-wrap: wrap; /* Permite que los elementos bajen si no hay espacio */
    justify-content: center;
    gap: 10px; /* Espacio entre las opciones */
    margin-bottom: 30px;
}

/* El título "Modalidad:" */
.sis-fiscal-modality span {
    width: 100%; /* Ocupa todo el ancho para forzar salto de línea */
    text-align: center;
    font-weight: 600;
    margin-bottom: 5px;
    display: block;
    color: #334155;
}

/* Las opciones (Presencial / Virtual) como cajas */
.sis-fiscal-modality label {
    flex: 1; /* Crecen para ocupar el mismo espacio */
    min-width: 140px; /* Ancho mínimo para que no se aplasten en móviles */
    margin: 0 !important; /* Reseteamos margen anterior */
    padding: 15px;
    
    border: 2px solid #e2e8f0; /* Borde gris suave por defecto */
    border-radius: 10px;
    background: #f8fafc;
    color: #949191;
    
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
}

/* Estilo cuando el input de adentro está marcado (CHECKED) */
/* Usamos :has() que funciona en todos los navegadores modernos */
.sis-fiscal-modality label:has(input:checked) {
    border-color: #0f172a; /* Borde oscuro al seleccionar */
    background-color: #ffffff;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    font-weight: 700;
}

/* El puntito del radio */
.sis-fiscal-modality input {
    accent-color: #0f172a;
    width: 18px;
    height: 18px;
}

/* --- MODALIDAD (ESTILO TARJETA) --- */
.sis-fiscal-certificado {
    display: flex;
    flex-wrap: wrap; /* Permite que los elementos bajen si no hay espacio */
    justify-content: center;
    gap: 10px; /* Espacio entre las opciones */
    margin-bottom: 30px;
}

/* El título "Modalidad:" */
.sis-fiscal-certificado span {
    width: 100%; /* Ocupa todo el ancho para forzar salto de línea */
    text-align: center;
    font-weight: 600;
    margin-bottom: 5px;
    display: block;
    color: #334155;
}

/* Las opciones (Presencial / Virtual) como cajas */
.sis-fiscal-certificado label {
    flex: 1; /* Crecen para ocupar el mismo espacio */
    min-width: 140px; /* Ancho mínimo para que no se aplasten en móviles */
    margin: 0 !important; /* Reseteamos margen anterior */
    padding: 15px;
    
    border: 2px solid #e2e8f0; /* Borde gris suave por defecto */
    border-radius: 10px;
    background: #f8fafc;
    color: #949191;
    
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s ease;
}

.sis-fiscal-certificado label:has(input:checked[value="si"]) {
    background-color: #5eee42;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    font-weight: 700;
    color: #0f172a;
}

.sis-fiscal-certificado label:has(input:checked[value="no"]) {
    background-color: #ff5a5a;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    font-weight: 700;
    color: #ffffff;
}

/* El puntito del radio */
.sis-fiscal-certificado input {
    accent-color: #0f172a;
    width: 18px;
    height: 18px;
}

/* --- BOTÓN DORADO (CORREGIDO Y BLINDADO) --- */
    .sis-fiscal-btn {
        width: 100% !important;
        display: block !important;
        
        /* Forzamos el fondo dorado degradado */
        background: linear-gradient(90deg, #d97706 0%, #fcd34d 50%, #d97706 100%) !important;
        background-size: 200% auto !important;
        background-color: #fbbf24 !important; /* Fallback */
        
        /* Forzamos el color del texto a azul oscuro */
        color: #0f172a !important;
        
        /* Estilos de fuente */
        font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
        font-size: 1.2rem !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        text-decoration: none !important;
        line-height: normal !important;
        
        /* Espaciado y bordes */
        padding: 18px !important;
        margin-top: 20px !important;
        border: none !important;
        border-radius: 50px !important; /* Redondeado total */
        outline: none !important;
        
        /* Efectos */
        cursor: pointer !important;
        box-shadow: 0 10px 25px rgba(217, 119, 6, 0.4) !important;
        transition: transform 0.2s, box-shadow 0.2s, background-position 0.2s !important;
        
        /* Reset para evitar estilos del tema */
        -webkit-appearance: none;
        text-shadow: none !important;
    }

    .sis-fiscal-btn:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 15px 30px rgba(217, 119, 6, 0.6) !important;
        background-position: right center !important;
        color: #0f172a !important;
    }

    .sis-fiscal-btn:active {
        transform: translateY(0) !important;
        box-shadow: 0 5px 15px rgba(234, 179, 8, 0.4) !important;
    }

    /* --- ARREGLO PARA MÓVIL DEL BOTÓN --- */
    @media (max-width: 480px) {
        .sis-fiscal-btn {
            font-size: 0.95rem !important; /* Letra más chica para que quepa */
            white-space: normal !important; /* Permite que el texto baje a una segunda línea */
            word-wrap: break-word !important; /* Evita que palabras largas rompan el diseño */
            padding: 15px 5px !important; /* Menos relleno a los costados = más espacio para texto */
            line-height: 1.2 !important; /* Si se hace 2 líneas, que queden prolijas */
            height: auto !important; /* Permite que el botón crezca si el texto ocupa 2 líneas */
        }
    }

    .sis-fiscal-disclaimer {
        text-align: center;
        font-size: 13px;
		font-weight: 600;
        color: #64748b;
        margin-top: 30px;
    }
    
    /* FAQ & Footer */
    .sis-fiscal-faq {
        max-width: 800px;
        margin: 0 auto;
        padding: 0 20px 40px 20px;
    }
    .sis-fiscal-faq h4 { margin-bottom: 15px; text-align:center; }
    .sis-fiscal-faq-item {
        padding: 12px;
        border-bottom: 1px solid #e2e8f0;
        color: #334155;
        font-weight: 600;
        cursor: pointer;
    }
    .sis-fiscal-faq-item:before { content: "+ "; color: #2563EB; font-weight:bold; }

    /* Responsive */
    @media (max-width: 768px) {
        .sis-fiscal-main-title { font-size: 1.8rem; }
        .sis-fiscal-row { flex-direction: column; gap: 15px; }
        .sis-fiscal-card { padding: 25px 20px; border-radius: 0; }
        .sis-fiscal-checks-wrapper { flex-direction: column; }
    }

    /* Mensajes Estado */
    #sis-msg-box { display:none; margin-top:20px; padding:15px; border-radius:8px; text-align:center; }
    .sis-success { background:#dcfce7; color:#166534; border:1px solid #86efac; }
    .sis-error { background:#fee2e2; color:#991b1b; border:1px solid #fca5a5; }

.sis-cc-input-error {
    border-color: #f83131 !important;
}