diff --git a/base/methods.py b/base/methods.py
index 888474ddb..ff30c0dee 100755
--- a/base/methods.py
+++ b/base/methods.py
@@ -1,5 +1,3 @@
-import dice_ml.data_interfaces
-import dice_ml.data_interfaces.private_data_interface
 import pandas as pd
 import pickle, os
 from sklearn.impute import SimpleImputer
@@ -27,7 +25,6 @@ from sklearn.metrics import classification_report
 from .glacier.src.gc_latentcf_search_1dcnn_function import gc_latentcf_search_1dcnn
 from .glacier.src.glacier_compute_counterfactuals import gc_compute_counterfactuals
 import re
-import json
 
 PIPELINE_PATH = os.path.join(settings.BASE_DIR, "base/pipelines/")
 
diff --git a/base/pipelines/breast-cancer/trained_models/dt/counterfactuals.csv b/base/pipelines/breast-cancer/trained_models/dt/counterfactuals.csv
index 12f467203..7ba304647 100644
--- a/base/pipelines/breast-cancer/trained_models/dt/counterfactuals.csv
+++ b/base/pipelines/breast-cancer/trained_models/dt/counterfactuals.csv
@@ -1,6 +1,6 @@
 radius_mean,texture_mean,perimeter_mean,area_mean,smoothness_mean,compactness_mean,concavity_mean,concave_points_mean,symmetry_mean,fractal_dimension_mean,radius_se,texture_se,perimeter_se,area_se,smoothness_se,compactness_se,concavity_se,concave_points_se,symmetry_se,fractal_dimension_se,radius_worst,texture_worst,perimeter_worst,area_worst,smoothness_worst,compactness_worst,concavity_worst,concave_points_worst,symmetry_worst,fractal_dimension_worst,diagnosis
-0.3529467875473725,0.8075740878596294,0.3390351627451203,0.2085037118017206,-0.3103013382814969,-0.0140427464835854,0.2937949136813015,0.6683441135404885,-0.3454472595229295,-0.2590827127326624,-0.3330292299491402,-0.6813830684936358,-0.3915985320798616,-0.2397543699733271,0.94704542716632,-0.0580211016382968,0.444844024929645,0.9463089528401444,0.5046190282437566,-0.6252131058337952,0.0333009816827659,-1.7490432,0.0071124813116911,-0.0873386027587258,-0.2923237631011298,-0.3471099158266328,-0.8389175,0.5023829555750204,-0.5577391061772538,-0.8681340676721787,0
-0.3529467875473725,0.8075740878596294,0.3390351627451203,0.2085037118017206,-0.3103013382814969,-0.0140427464835854,0.2937949136813015,0.6683441135404885,-2.41662033,-0.2590827127326624,-0.3330292299491402,-0.6813830684936358,-0.3915985320798616,-0.2397543699733271,0.94704542716632,-0.0580211016382968,0.444844024929645,0.9463089528401444,0.5046190282437566,-0.6252131058337952,0.0333009816827659,-1.9471911,0.0071124813116911,-0.0873386027587258,-0.2923237631011298,-0.3471099158266328,0.0595445433582959,0.5023829555750204,-0.5577391061772538,-0.8681340676721787,0
-0.3529467875473725,0.8075740878596294,0.3390351627451203,-0.05076176,-0.3103013382814969,-0.0140427464835854,0.2937949136813015,0.6683441135404885,-0.3454472595229295,-0.2590827127326624,-0.3330292299491402,-0.6813830684936358,-0.3915985320798616,1.72823718,0.94704542716632,-0.0580211016382968,0.444844024929645,0.9463089528401444,0.5046190282437566,-0.6252131058337952,0.0333009816827659,0.0265071915015526,0.0071124813116911,-0.0873386027587258,-0.2923237631011298,-0.3471099158266328,0.0595445433582959,0.5023829555750204,-0.5577391061772538,-0.8681340676721787,0
-0.3529467875473725,0.8075740878596294,0.3390351627451203,-1.38071637,-0.3103013382814969,-0.0140427464835854,0.2937949136813015,0.6683441135404885,-2.66462963,-0.2590827127326624,-0.3330292299491402,-0.6813830684936358,-0.3915985320798616,-0.2397543699733271,0.94704542716632,-0.0580211016382968,0.444844024929645,0.9463089528401444,0.5046190282437566,-0.6252131058337952,0.0333009816827659,0.0265071915015526,0.0071124813116911,-0.0873386027587258,-0.2923237631011298,-0.3471099158266328,0.0595445433582959,0.5023829555750204,-0.5577391061772538,-0.8681340676721787,0
-0.3529467875473725,0.8075740878596294,0.3390351627451203,0.2085037118017206,-0.3103013382814969,-0.0140427464835854,0.2937949136813015,0.6683441135404885,-0.3454472595229295,-0.2590827127326624,-0.3330292299491402,-0.6813830684936358,-0.3915985320798616,-0.2397543699733271,0.94704542716632,-0.0580211016382968,0.444844024929645,0.9463089528401444,0.5046190282437566,-0.6252131058337952,0.0333009816827659,-2.0982248,0.0071124813116911,-0.0873386027587258,-0.2923237631011298,-0.3471099158266328,-1.1821898,0.5023829555750204,-0.5577391061772538,-0.8681340676721787,0
+3.4576794,4.0629457,0.9321740461825264,0.9590623915417054,-1.2795746576636695,-0.7992025384709373,-0.5568043784777806,-0.1841470024082316,-2.15996612839376,-1.469716577849185,0.282341078470618,-0.3099868727228095,0.1469947723342195,0.2335024043761372,-0.8906957494210652,-0.9615313961006388,-0.6752002099671629,-0.7070941683631531,-0.910788678379718,-0.9402964737998116,0.7353107583814449,-1.1817937410802366,0.5909149143764517,0.5790861060290915,-1.4793997007832118,-0.9828679485322848,-0.8030501868496844,-0.4750123305865307,-1.808283518785376,-1.398463440806945,1
+1.0573019940084711,-0.31184392,0.9321740461825264,0.9590623915417054,-1.2795746576636695,-0.7992025384709373,-0.5568043784777806,-0.1841470024082316,-2.15996612839376,-1.469716577849185,0.282341078470618,0.73329621,0.1469947723342195,0.2335024043761372,-0.8906957494210652,-0.9615313961006388,-0.6752002099671629,-0.7070941683631531,-0.910788678379718,-0.9402964737998116,0.7353107583814449,-1.1817937410802366,0.5909149143764517,0.5790861060290915,-1.4793997007832118,-0.9828679485322848,-0.8030501868496844,-0.4750123305865307,-1.808283518785376,-1.398463440806945,1
+1.0573019940084711,1.86556447,0.9321740461825264,0.9590623915417054,-1.2795746576636695,-0.7992025384709373,-0.5568043784777806,-0.1841470024082316,-2.15996612839376,-1.469716577849185,0.282341078470618,-0.3099868727228095,0.1469947723342195,0.2335024043761372,-0.8906957494210652,-0.9615313961006388,-0.6752002099671629,-0.7070941683631531,-0.910788678379718,-0.9402964737998116,1.7371015,-1.1817937410802366,0.5909149143764517,0.5790861060290915,-1.4793997007832118,-0.9828679485322848,-0.8030501868496844,-0.4750123305865307,-1.808283518785376,-1.398463440806945,1
+1.0573019940084711,-0.59685838,0.9321740461825264,0.9590623915417054,-1.2795746576636695,-0.7992025384709373,-0.5568043784777806,-0.1841470024082316,-2.15996612839376,-1.469716577849185,0.282341078470618,-0.3099868727228095,0.1469947723342195,0.2335024043761372,-0.8906957494210652,-0.9615313961006388,-0.6752002099671629,-0.7070941683631531,-0.910788678379718,-0.9402964737998116,0.7353107583814449,-1.1817937410802366,0.5909149143764517,0.5790861060290915,-1.4793997007832118,-0.9828679485322848,-0.8030501868496844,-0.4750123305865307,-1.808283518785376,-1.398463440806945,1
+1.0573019940084711,-0.94217479,0.9321740461825264,0.9590623915417054,-1.2795746576636695,-0.7992025384709373,-0.5568043784777806,-0.1841470024082316,-2.15996612839376,-1.469716577849185,0.282341078470618,-0.3099868727228095,0.1469947723342195,0.2335024043761372,-0.8906957494210652,0.09380289,-0.6752002099671629,-0.7070941683631531,-0.910788678379718,-0.9402964737998116,0.7353107583814449,-1.1817937410802366,0.5909149143764517,0.5790861060290915,-1.4793997007832118,-0.9828679485322848,-0.8030501868496844,-0.4750123305865307,-1.808283518785376,-1.398463440806945,1
diff --git a/base/pipelines/breast-cancer/trained_models/dt/tsne_cfs.sav b/base/pipelines/breast-cancer/trained_models/dt/tsne_cfs.sav
index e2f08f7ae..46d6af8d9 100644
Binary files a/base/pipelines/breast-cancer/trained_models/dt/tsne_cfs.sav and b/base/pipelines/breast-cancer/trained_models/dt/tsne_cfs.sav differ
diff --git a/base/pipelines/breast-cancer/trained_models/lr/counterfactuals.csv b/base/pipelines/breast-cancer/trained_models/lr/counterfactuals.csv
index 68437c1a4..91b6c3fcf 100644
--- a/base/pipelines/breast-cancer/trained_models/lr/counterfactuals.csv
+++ b/base/pipelines/breast-cancer/trained_models/lr/counterfactuals.csv
@@ -1,6 +1,6 @@
 radius_mean,texture_mean,perimeter_mean,area_mean,smoothness_mean,compactness_mean,concavity_mean,concave_points_mean,symmetry_mean,fractal_dimension_mean,radius_se,texture_se,perimeter_se,area_se,smoothness_se,compactness_se,concavity_se,concave_points_se,symmetry_se,fractal_dimension_se,radius_worst,texture_worst,perimeter_worst,area_worst,smoothness_worst,compactness_worst,concavity_worst,concave_points_worst,symmetry_worst,fractal_dimension_worst,diagnosis
--0.7092663060673473,2.3271489214378698,-0.704312609301373,-0.6819848165294249,-0.1985715944173255,-0.3525161687595716,-0.2159369130590488,-0.7415549605217517,-0.0460699008762327,-0.161268032764232,-0.3308637039371059,2.19380770550748,-0.3544712362792588,-0.3785851577996926,0.9400451433447464,-0.0725523818906913,0.3599620462044872,-0.4186853829712703,0.509462168386181,-0.63050862462314,-0.6521421926159441,2.1385911666478887,3.39703065,-0.6201619455009771,0.3608310179720982,4.13681689,0.0964854745184819,-0.704324887208948,-0.0271070656397842,-0.6509040632115424,1
--0.7092663060673473,2.3271489214378698,-0.704312609301373,-0.6819848165294249,-0.1985715944173255,-0.3525161687595716,1.6653011,-0.7415549605217517,-0.0460699008762327,-0.161268032764232,-0.3308637039371059,2.19380770550748,-0.3544712362792588,-0.3785851577996926,0.9400451433447464,-0.0725523818906913,0.3599620462044872,-0.4186853829712703,0.509462168386181,-0.63050862462314,-0.6521421926159441,2.1385911666478887,1.40965287,-0.6201619455009771,0.3608310179720982,-0.3254811654644232,0.0964854745184819,-0.704324887208948,-0.0271070656397842,-0.6509040632115424,1
--0.7092663060673473,2.3271489214378698,-0.704312609301373,-0.6819848165294249,-0.1985715944173255,-0.3525161687595716,-0.2159369130590488,-0.7415549605217517,-0.0460699008762327,-0.161268032764232,-0.3308637039371059,2.19380770550748,-0.3544712362792588,-0.3785851577996926,0.9400451433447464,-0.0725523818906913,8.2396206,-0.4186853829712703,0.509462168386181,-0.63050862462314,-0.6521421926159441,2.1385911666478887,2.54140746,-0.6201619455009771,0.3608310179720982,-0.3254811654644232,0.0964854745184819,-0.704324887208948,-0.0271070656397842,-0.6509040632115424,1
--0.7092663060673473,2.3271489214378698,-0.704312609301373,-0.6819848165294249,-0.1985715944173255,-0.3525161687595716,-0.2159369130590488,-0.7415549605217517,-0.0460699008762327,-0.161268032764232,-0.3308637039371059,-1.16869482,-0.3544712362792588,-0.3785851577996926,0.9400451433447464,-0.0725523818906913,0.3599620462044872,-0.4186853829712703,0.509462168386181,-0.63050862462314,-0.6521421926159441,2.1385911666478887,-0.6320916112173782,-0.6201619455009771,0.3608310179720982,-0.3254811654644232,0.0964854745184819,-0.704324887208948,-0.0271070656397842,-0.6509040632115424,1
--0.7092663060673473,2.3271489214378698,-0.704312609301373,3.12509814,-0.1985715944173255,-0.3525161687595716,-0.2159369130590488,-0.7415549605217517,-0.0460699008762327,-0.161268032764232,-0.3308637039371059,2.19380770550748,-0.3544712362792588,-0.3785851577996926,0.9400451433447464,-0.0725523818906913,0.3599620462044872,-0.4186853829712703,0.509462168386181,-0.63050862462314,-0.6521421926159441,2.1385911666478887,-0.6320916112173782,-0.6201619455009771,0.3608310179720982,-0.3254811654644232,0.0964854745184819,-0.704324887208948,-0.0271070656397842,-0.6509040632115424,1
+0.2450213930089787,1.3753784667158169,0.1470888296327375,0.124887094960661,-0.1772219618318155,-1.005015604871677,-0.8138046369352923,-0.5140520363865714,-0.9003906560387567,-1.0997219188381635,2.9192299191244326,1.7619938579576184,2.5795751931897306,1.444696520040387,-0.0526617719241149,-0.8125298839741631,-0.4547060074193898,1.1961118378252398,-1.5328900296741077,7.071149839,-0.2648978615166727,-0.0777128350284131,-0.3491261462114993,-0.3195588718984534,-1.6876201846823955,-1.2910776411937703,-1.1907860383258189,-1.303643760293831,-2.1609596920694254,-1.6018394909014688,0
+0.2450213930089787,1.3753784667158169,0.1470888296327375,0.124887094960661,-0.1772219618318155,-1.005015604871677,-0.8138046369352923,-0.5140520363865714,-0.9003906560387567,-1.0997219188381635,-0.80657593,1.7619938579576184,-0.7769947,1.444696520040387,-0.0526617719241149,-0.8125298839741631,-0.4547060074193898,1.1961118378252398,-1.5328900296741077,-0.7719746265670657,-0.2648978615166727,-0.0777128350284131,-0.3491261462114993,-0.3195588718984534,-1.6876201846823955,-1.2910776411937703,-1.1907860383258189,-1.303643760293831,-2.1609596920694254,-1.6018394909014688,0
+0.2450213930089787,1.3753784667158169,0.1470888296327375,0.124887094960661,-0.1772219618318155,-1.005015604871677,-0.8138046369352923,-0.5140520363865714,-0.9003906560387567,-1.0997219188381635,2.9192299191244326,1.7619938579576184,2.5795751931897306,1.444696520040387,-0.0526617719241149,-0.8125298839741631,-0.4547060074193898,1.1961118378252398,-1.5328900296741077,4.066112583,-0.2648978615166727,-0.0777128350284131,-0.3491261462114993,-0.3195588718984534,-1.6876201846823955,-1.2910776411937703,-1.1907860383258189,-1.303643760293831,-2.1609596920694254,-1.6018394909014688,0
+0.2450213930089787,1.3753784667158169,0.1470888296327375,0.124887094960661,-0.1772219618318155,-1.005015604871677,-0.8138046369352923,-0.5140520363865714,-0.9003906560387567,-1.0997219188381635,-0.2491344,1.7619938579576184,2.5795751931897306,1.444696520040387,-0.0526617719241149,-0.8125298839741631,-0.4547060074193898,1.1961118378252398,-1.5328900296741077,-0.7719746265670657,-0.2648978615166727,-0.0777128350284131,-0.3491261462114993,-0.3195588718984534,-1.6876201846823955,-1.2910776411937703,-1.1907860383258189,-1.303643760293831,-1.49333018,-1.6018394909014688,0
+0.2450213930089787,1.3753784667158169,0.1470888296327375,0.124887094960661,-0.1772219618318155,-1.005015604871677,-0.8138046369352923,-0.5140520363865714,-0.9003906560387567,-1.0997219188381635,2.9192299191244326,1.7619938579576184,2.5795751931897306,1.444696520040387,-0.0526617719241149,2.86651033,-0.4547060074193898,1.1961118378252398,-1.5328900296741077,-0.7719746265670657,-0.2648978615166727,-0.0777128350284131,-0.3491261462114993,-0.3195588718984534,-1.6876201846823955,-1.2910776411937703,-1.1907860383258189,-1.303643760293831,-2.1609596920694254,-1.6018394909014688,0
diff --git a/base/pipelines/breast-cancer/trained_models/lr/tsne_cfs.sav b/base/pipelines/breast-cancer/trained_models/lr/tsne_cfs.sav
index 27d59e19b..7f29ef369 100644
Binary files a/base/pipelines/breast-cancer/trained_models/lr/tsne_cfs.sav and b/base/pipelines/breast-cancer/trained_models/lr/tsne_cfs.sav differ
diff --git a/base/pipelines/breast-cancer/trained_models/rf/counterfactuals.csv b/base/pipelines/breast-cancer/trained_models/rf/counterfactuals.csv
index 995ca8244..0e0c366fc 100644
--- a/base/pipelines/breast-cancer/trained_models/rf/counterfactuals.csv
+++ b/base/pipelines/breast-cancer/trained_models/rf/counterfactuals.csv
@@ -1,6 +1,6 @@
 radius_mean,texture_mean,perimeter_mean,area_mean,smoothness_mean,compactness_mean,concavity_mean,concave_points_mean,symmetry_mean,fractal_dimension_mean,radius_se,texture_se,perimeter_se,area_se,smoothness_se,compactness_se,concavity_se,concave_points_se,symmetry_se,fractal_dimension_se,radius_worst,texture_worst,perimeter_worst,area_worst,smoothness_worst,compactness_worst,concavity_worst,concave_points_worst,symmetry_worst,fractal_dimension_worst,diagnosis
-2.602339221084427,-1.94802596,2.756899916757326,-1.18042017,1.262454928851104,1.9720722957629624,3.3082434752664773,2.9168055530941936,-2.4486832,-0.0719589771408823,0.5367903848846528,0.6225858904731099,0.8915208107889793,-0.25641021,0.76203792616759,1.43814186896401,-0.5208884,2.0850208051748,0.1462266577043651,0.5295882415854701,-1.4890007,-1.9742909,2.077228251617858,-0.93010617,-2.41140622,-1.17591288,2.4803749152323054,-1.5639764,0.4808760463381589,0.2036078420902447,0
-2.602339221084427,1.717457334305406,2.756899916757326,2.9297410925338823,1.262454928851104,1.9720722957629624,-0.8725703,-1.027146,-2.41723723,-0.0719589771408823,0.5367903848846528,-1.18303933,0.8915208107889793,0.9421774718701514,0.76203792616759,1.43814186896401,-0.4637714,2.0850208051748,0.1462266577043651,0.5295882415854701,1.8328481673793795,1.140358725040561,-1.42292182,-0.89899199,0.9306976054856524,1.033313269055562,-1.0342247,-1.5447016,0.4808760463381589,0.2036078420902447,0
-2.602339221084427,-2.13020495,2.756899916757326,2.9297410925338823,1.262454928851104,1.9720722957629624,3.3082434752664773,2.9168055530941936,-2.6400684,-0.0719589771408823,0.5367903848846528,0.6225858904731099,0.8915208107889793,0.9421774718701514,-1.634921511,1.43814186896401,1.9127054304619624,2.0850208051748,0.1462266577043651,0.5295882415854701,-1.6431148,-2.1360513,2.077228251617858,-1.11947204,-2.58714994,1.033313269055562,-1.2193761,-1.6812861,0.4808760463381589,0.2036078420902447,0
-2.602339221084427,-1.94802596,2.756899916757326,2.9297410925338823,1.262454928851104,1.9720722957629624,3.3082434752664773,2.9168055530941936,-2.4486832,-0.0719589771408823,0.5367903848846528,0.6225858904731099,0.8915208107889793,-0.25641021,0.76203792616759,1.43814186896401,1.9127054304619624,2.0850208051748,0.1462266577043651,0.5295882415854701,-1.4890007,-1.9742909,2.077228251617858,-0.93010617,-2.41140622,1.033313269055562,2.4803749152323054,-1.5639764,0.4808760463381589,0.2036078420902447,0
-2.602339221084427,-1.94802596,2.756899916757326,-1.18042017,1.262454928851104,1.9720722957629624,3.3082434752664773,2.9168055530941936,-2.4486832,-0.0719589771408823,0.5367903848846528,0.6225858904731099,0.8915208107889793,-0.25641021,0.76203792616759,1.43814186896401,-0.5208884,2.0850208051748,0.1462266577043651,0.5295882415854701,-1.4890007,-1.9742909,2.077228251617858,-0.93010617,-2.41140622,1.033313269055562,2.4803749152323054,-1.5639764,0.4808760463381589,0.2036078420902447,0
+2.8585626,3.37595203,-1.0115915030821407,-0.9066689230071012,0.2511939987174278,-0.3517581095831416,-0.7388514594564771,-0.952033856320286,1.4800244395422928,0.2852772453525187,-0.1810814881047307,0.5754129491441333,-0.2792265834567032,-0.3785851577996926,0.1846811843120937,-0.1837725653609411,-0.1025784238017434,-0.5161733919816872,0.793996651753603,-0.1300820990300551,3.0148121,-0.3854876008747181,3.17836465,-0.8399010343917108,-0.4589001502204771,-0.6721773109763108,-0.922652448385196,-1.2573549042425596,-0.1209383411006778,-0.4669235492295751,1
+-1.0330424896825297,8.179497808282562e-05,-1.0115915030821407,-0.9066689230071012,0.2511939987174278,-0.3517581095831416,-0.7388514594564771,-0.952033856320286,1.4800244395422928,0.2852772453525187,-0.1810814881047307,0.5754129491441333,-0.2792265834567032,-0.3785851577996926,0.1846811843120937,-0.1837725653609411,-0.1025784238017434,-0.5161733919816872,0.793996651753603,-0.1300820990300551,1.356243,1.0121176,1.4743193,2.56595339,-0.4589001502204771,-0.6721773109763108,-0.922652448385196,-1.2573549042425596,-0.1209383411006778,-0.4669235492295751,1
+2.7842845,8.179497808282562e-05,-1.0115915030821407,-0.9066689230071012,0.2511939987174278,-0.3517581095831416,-0.7388514594564771,-0.952033856320286,1.4800244395422928,0.2852772453525187,6.93543931,0.5754129491441333,-0.2792265834567032,-0.3785851577996926,0.1846811843120937,-0.1837725653609411,-0.1025784238017434,-0.5161733919816872,0.793996651753603,-0.1300820990300551,2.9427601,-0.3854876008747181,-0.9841602213615352,4.51536751,-0.4589001502204771,3.81593129,-0.922652448385196,-1.2573549042425596,-0.1209383411006778,-0.4669235492295751,1
+-1.0330424896825297,8.179497808282562e-05,-1.0115915030821407,-0.9066689230071012,0.2511939987174278,-0.3517581095831416,2.4887917,-0.952033856320286,1.4800244395422928,0.2852772453525187,-0.1810814881047307,0.5754129491441333,-0.2792265834567032,-0.3785851577996926,0.1846811843120937,-0.1837725653609411,-0.1025784238017434,-0.5161733919816872,0.793996651753603,-0.1300820990300551,2.1878898,-0.3854876008747181,2.32876898,3.5878295,-0.4589001502204771,-0.6721773109763108,-0.922652448385196,-1.2573549042425596,3.35840007,-0.4669235492295751,1
+-1.0330424896825297,8.179497808282562e-05,-1.0115915030821407,2.84443378,0.2511939987174278,-0.3517581095831416,-0.7388514594564771,-0.952033856320286,1.89065444,0.2852772453525187,-0.1810814881047307,0.5754129491441333,-0.2792265834567032,-0.3785851577996926,0.1846811843120937,-0.1837725653609411,-0.1025784238017434,-0.5161733919816872,0.793996651753603,-0.1300820990300551,2.0052774,-0.3854876008747181,2.14114955,-0.8399010343917108,-0.4589001502204771,-0.6721773109763108,-0.922652448385196,1.0958239,-0.1209383411006778,-0.4669235492295751,1
diff --git a/base/pipelines/breast-cancer/trained_models/rf/tsne_cfs.sav b/base/pipelines/breast-cancer/trained_models/rf/tsne_cfs.sav
index 0ec9f4db7..9daa82d81 100644
Binary files a/base/pipelines/breast-cancer/trained_models/rf/tsne_cfs.sav and b/base/pipelines/breast-cancer/trained_models/rf/tsne_cfs.sav differ
diff --git a/base/pipelines/breast-cancer/trained_models/svm/counterfactuals.csv b/base/pipelines/breast-cancer/trained_models/svm/counterfactuals.csv
index 5e78c0a9c..71f632c62 100644
--- a/base/pipelines/breast-cancer/trained_models/svm/counterfactuals.csv
+++ b/base/pipelines/breast-cancer/trained_models/svm/counterfactuals.csv
@@ -1,6 +1,6 @@
 radius_mean,texture_mean,perimeter_mean,area_mean,smoothness_mean,compactness_mean,concavity_mean,concave_points_mean,symmetry_mean,fractal_dimension_mean,radius_se,texture_se,perimeter_se,area_se,smoothness_se,compactness_se,concavity_se,concave_points_se,symmetry_se,fractal_dimension_se,radius_worst,texture_worst,perimeter_worst,area_worst,smoothness_worst,compactness_worst,concavity_worst,concave_points_worst,symmetry_worst,fractal_dimension_worst,diagnosis
--0.5445380722982196,-0.29545573008231,-0.5626183204802149,-0.5588351733587492,-0.2882400512764691,-0.6176473657159572,-0.5634585131618296,-0.7389755622889266,-0.4257680142817985,-0.5156690471426052,-0.5503036731565858,-0.79514243085236,5.3840988,-0.4789129537566222,-0.4026759630027935,-0.6482146380432412,-0.394360225669473,-0.763867551314311,-0.1407293957342688,-0.6940548500952777,-0.4098556325164001,-0.2666116331139759,-0.3994642131441244,-0.4499959950639928,0.1942546308527515,-0.2370577448659785,2.3692635,-0.4007065353463319,0.5132316585660535,-0.5123645195504225,1
--0.5445380722982196,-0.29545573008231,-0.5626183204802149,-0.5588351733587492,-0.2882400512764691,-0.6176473657159572,-0.5634585131618296,-0.7389755622889266,-0.4257680142817985,-0.5156690471426052,-0.5503036731565858,-0.79514243085236,-0.4910996848254779,-0.4789129537566222,-0.4026759630027935,-0.6482146380432412,-0.394360225669473,-0.763867551314311,6.0115092,-0.6940548500952777,-0.4098556325164001,-0.2666116331139759,-0.3994642131441244,5.04872693,0.1942546308527515,-0.2370577448659785,-0.1481882253736594,-0.4007065353463319,0.5132316585660535,-0.5123645195504225,1
--0.5445380722982196,-0.29545573008231,-0.5626183204802149,-0.5588351733587492,-0.2882400512764691,-0.6176473657159572,2.9587792,-0.7389755622889266,-0.4257680142817985,-0.5156690471426052,6.51714009,-0.79514243085236,-0.4910996848254779,-0.4789129537566222,-0.4026759630027935,-0.6482146380432412,-0.394360225669473,-0.763867551314311,-0.1407293957342688,-0.6940548500952777,-0.4098556325164001,-0.2666116331139759,-0.3994642131441244,-0.4499959950639928,0.1942546308527515,-0.2370577448659785,-0.1481882253736594,-0.4007065353463319,0.5132316585660535,-0.5123645195504225,1
--0.5445380722982196,-0.29545573008231,-0.5626183204802149,-0.5588351733587492,-0.2882400512764691,-0.6176473657159572,-0.5634585131618296,3.846981,-0.4257680142817985,-0.5156690471426052,-0.5503036731565858,-0.79514243085236,-0.4910996848254779,10.85810528,-0.4026759630027935,-0.6482146380432412,-0.394360225669473,-0.763867551314311,-0.1407293957342688,-0.6940548500952777,-0.4098556325164001,-0.2666116331139759,-0.3994642131441244,-0.4499959950639928,0.1942546308527515,-0.2370577448659785,-0.1481882253736594,-0.4007065353463319,0.5132316585660535,-0.5123645195504225,1
--0.5445380722982196,-0.29545573008231,-0.5626183204802149,-0.5588351733587492,-0.2882400512764691,-0.6176473657159572,-0.5634585131618296,-0.7389755622889266,-0.4257680142817985,-0.5156690471426052,-0.5503036731565858,-0.79514243085236,-0.4910996848254779,-0.4789129537566222,-0.4026759630027935,-0.6482146380432412,-0.394360225669473,-0.763867551314311,-0.1407293957342688,-0.6940548500952777,-0.4098556325164001,-0.2666116331139759,-0.3994642131441244,5.14342518,0.1942546308527515,-0.2370577448659785,-0.1481882253736594,-0.4007065353463319,0.5132316585660535,-0.5123645195504225,1
+-0.3372077091060419,-0.7259631484773701,-0.3620220453177029,-0.4189053247675885,0.172912012570556,-0.3028632927034079,3.1162659,-0.6453434064373728,-0.2797302783565817,-0.1130694948087733,-0.9361282243007036,-0.5658093622376436,-0.9249940150818587,-0.6375452802586975,-1.3847157791149711,-0.7057808636584961,-0.5226779044453952,-0.7280192152222942,-0.2230627781554804,-0.6895158339901251,2.8695376,-0.4327123003961087,-0.5233733009782776,-0.5268167805401934,-0.6649288395523005,-0.3719193647715201,-0.4374788940696617,-0.467855829815446,0.6410363268662369,-0.3106509439798318,1
+-0.3372077091060419,-0.7259631484773701,-0.3620220453177029,-0.4189053247675885,0.172912012570556,-0.3028632927034079,-0.7010609964395201,-0.6453434064373728,-0.2797302783565817,-0.1130694948087733,-0.9361282243007036,-0.5658093622376436,-0.9249940150818587,-0.6375452802586975,-1.3847157791149711,-0.7057808636584961,-0.5226779044453952,-0.7280192152222942,-0.2230627781554804,-0.6895158339901251,3.5986072,-0.4327123003961087,-0.5233733009782776,-0.5268167805401934,-0.6649288395523005,-0.3719193647715201,4.1893019,-0.467855829815446,0.6410363268662369,-0.3106509439798318,1
+-0.3372077091060419,-0.7259631484773701,-0.3620220453177029,-0.4189053247675885,0.172912012570556,-0.3028632927034079,-0.7010609964395201,-0.6453434064373728,-0.2797302783565817,-0.1130694948087733,-0.9361282243007036,-0.5658093622376436,-0.9249940150818587,8.39763152,-1.3847157791149711,-0.7057808636584961,-0.5226779044453952,4.7274332,-0.2230627781554804,-0.6895158339901251,-0.4989011204162324,-0.4327123003961087,-0.5233733009782776,-0.5268167805401934,-0.6649288395523005,-0.3719193647715201,-0.4374788940696617,-0.467855829815446,0.6410363268662369,-0.3106509439798318,1
+-0.3372077091060419,-0.7259631484773701,-0.3620220453177029,-0.4189053247675885,0.172912012570556,-0.3028632927034079,-0.7010609964395201,-0.6453434064373728,-0.2797302783565817,-0.1130694948087733,-0.9361282243007036,-0.5658093622376436,-0.9249940150818587,8.39763152,-1.3847157791149711,-0.7057808636584961,-0.5226779044453952,-0.7280192152222942,-0.2230627781554804,-0.6895158339901251,-0.4989011204162324,-0.4327123003961087,-0.5233733009782776,-0.5268167805401934,-0.6649288395523005,-0.3719193647715201,-0.4374788940696617,-0.467855829815446,0.6410363268662369,-0.3106509439798318,1
+-0.3372077091060419,-0.7259631484773701,-0.3620220453177029,-0.4189053247675885,0.172912012570556,-0.3028632927034079,-0.7010609964395201,-0.6453434064373728,-0.2797302783565817,-0.1130694948087733,-0.9361282243007036,-0.5658093622376436,-0.9249940150818587,8.8814441,-1.3847157791149711,-0.7057808636584961,-0.5226779044453952,-0.7280192152222942,-0.2230627781554804,-0.6895158339901251,-0.4989011204162324,-0.4327123003961087,-0.5233733009782776,-0.5268167805401934,-0.6649288395523005,-0.3719193647715201,-0.4374788940696617,-0.467855829815446,0.6410363268662369,-0.3106509439798318,1
diff --git a/base/pipelines/breast-cancer/trained_models/svm/tsne_cfs.sav b/base/pipelines/breast-cancer/trained_models/svm/tsne_cfs.sav
index 9a869703b..5fe9642ca 100644
Binary files a/base/pipelines/breast-cancer/trained_models/svm/tsne_cfs.sav and b/base/pipelines/breast-cancer/trained_models/svm/tsne_cfs.sav differ
diff --git a/base/pipelines/stroke/trained_models/rf/counterfactuals.csv b/base/pipelines/stroke/trained_models/rf/counterfactuals.csv
index fbe9ea050..808ac1259 100644
--- a/base/pipelines/stroke/trained_models/rf/counterfactuals.csv
+++ b/base/pipelines/stroke/trained_models/rf/counterfactuals.csv
@@ -1,6 +1,6 @@
 age,hypertension,heart_disease,avg_glucose_level,bmi,gender_Female,gender_Male,ever_married_No,ever_married_Yes,work_type_Govt_job,work_type_Private,work_type_Self-employed,work_type_children,Residence_type_Rural,Residence_type_Urban,smoking_status_Unknown,smoking_status_formerly smoked,smoking_status_never smoked,smoking_status_smokes,stroke
-1.2171031013550249,0,1,-0.5365677081178482,-2.040763282,0.0,1.0,0.0,1.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0
-1.2171031013550249,0,1,-0.5365677081178482,1.706765138,0.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0
--0.423726,0,1,-0.5365677081178482,0.0591811261414355,0.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0
-1.2171031013550249,0,1,-0.5365677081178482,-2.02948689,0.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0
-1.2171031013550249,0,0,-0.5365677081178482,0.0591811261414355,0.0,1.0,1.0,1.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,0.0,0.0,1.0,0
+1.578287,0,1,3.51339416,0.1328211934186013,0.0,1.0,0.0,1.0,0.0,0.0,0.0,1.0,0.0,1.0,0.0,0.0,0.0,0.0,1
+1.569576,0,1,3.50181362,0.1328211934186013,0.0,1.0,0.0,0.0,0.0,0.0,0.0,1.0,0.0,1.0,0.0,1.0,0.0,0.0,1
+1.520042,1,1,-0.9552418822265982,0.1328211934186013,0.0,0.0,1.0,0.0,0.0,0.0,1.0,1.0,0.0,1.0,1.0,0.0,1.0,0.0,0
+1.520042,1,1,-0.9552418822265982,0.1328211934186013,0.0,0.0,1.0,0.0,0.0,0.0,1.0,1.0,0.0,1.0,1.0,0.0,1.0,0.0,0
+1.370902,1,0,-0.9552418822265982,2.533263493,1.0,0.0,1.0,0.0,0.0,0.0,0.0,1.0,0.0,1.0,1.0,0.0,1.0,0.0,1
diff --git a/base/pipelines/stroke/trained_models/rf/tsne_cfs.sav b/base/pipelines/stroke/trained_models/rf/tsne_cfs.sav
index d7534e83d..21f9201d1 100644
Binary files a/base/pipelines/stroke/trained_models/rf/tsne_cfs.sav and b/base/pipelines/stroke/trained_models/rf/tsne_cfs.sav differ
diff --git a/base/static/css/sb-admin-2.css b/base/static/css/sb-admin-2.css
index 8ff44fd68..5ffc79b91 100644
--- a/base/static/css/sb-admin-2.css
+++ b/base/static/css/sb-admin-2.css
@@ -9275,15 +9275,15 @@ body {
   animation-timing-function: opacity cubic-bezier(0, 1, 0.4, 1);
 }
 
-/* Existing Loader Spinner */
+/* Enhanced Loader Spinner */
 .loader {
   display: inline-block;
-  width: 1.5rem;
-  height: 1.5rem;
-  border: 2px solid rgba(0, 0, 0, 0.1);
+  width: var(--loader-size, 2rem); /* Dynamic size */
+  height: var(--loader-size, 2rem); /* Dynamic size */
+  border: var(--loader-border-width, 3px) solid rgba(0, 0, 0, 0.1); /* Customizable border width */
   border-radius: 50%;
-  border-top-color: #007bff;
-  animation: spin 0.6s linear infinite;
+  border-top-color: var(--loader-color, #007bff); /* Customizable color */
+  animation: spin 0.8s ease-in-out infinite; /* Smooth animation */
   margin-left: 8px;
 }
 
@@ -9293,6 +9293,11 @@ body {
     transform: rotate(360deg);
   }
 }
+/* Accessibility */
+.loader[aria-hidden=true] {
+  display: none;
+}
+
 .loader i {
   font-size: 1.2em;
   color: #007bff;
@@ -9770,78 +9775,128 @@ body {
   color: #4a90e2;
 }
 
-.table-responsive {
-  max-height: 500px;
-  overflow-y: auto;
+:root {
+  --table-max-height: 500px;
+  --border-color: #ddd;
+  --header-bg-color: #f1f1f1;
+  --header-text-color: #555;
+  --row-hover-color: #e8e5f9;
+  --even-row-color: #f3f3f3;
+  --scrollbar-width: 6px;
+  --scrollbar-thumb-color: #bbb;
+  --scrollbar-thumb-hover-color: #888;
+  --scrollbar-track-color: #f4f4f4;
+  --font-family: Arial, sans-serif;
+  --font-size: 0.9rem;
+  --cell-padding: 12px 15px;
+  --border-radius: 5px;
+  --table-bg-color: #f8f9fa;
 }
 
-.table-bordered {
-  border: 1px solid #ddd;
+.table-responsive {
+  max-height: var(--table-max-height);
+  overflow: auto;
+  border: 1px solid var(--border-color);
+  border-radius: var(--border-radius);
+  background-color: var(--table-bg-color);
+  padding: 10px;
+}
+
+.sticky-top-table {
+  position: relative;
+}
+
+.sticky-top-table table {
+  border-collapse: separate;
+  border-spacing: 0;
+  width: 100%;
 }
 
 .sticky-top-table table thead tr {
   position: sticky;
   top: 0;
-  background-color: #f1f1f1;
-  color: #555;
+  background-color: var(--header-bg-color);
+  color: var(--header-text-color);
   font-weight: bold;
   z-index: 10;
 }
 
 .dataframe {
-  font-family: Arial, sans-serif;
-  font-size: 0.9em;
+  font-family: var(--font-family);
+  font-size: var(--font-size);
 }
+
 .dataframe thead tr {
   text-align: left;
-  font-weight: bold;
 }
+
 .dataframe th,
 .dataframe td {
-  padding: 12px 15px;
-  border-bottom: 1px solid #ddd;
+  padding: var(--cell-padding);
+  border-bottom: 1px solid var(--border-color);
 }
+
 .dataframe tbody tr:nth-of-type(even) {
-  background-color: #f3f3f3;
-}
-.dataframe tbody tr:hover {
-  background-color: #e8e5f9;
-}
-
-.scrollit {
-  overflow-y: auto;
-  overflow-x: auto;
-  max-height: max-content;
-  border-radius: 5px;
-  border: 1px solid #ddd;
-  background-color: #f8f9fa;
-  padding: 10px;
-}
-
-.scrollit::-webkit-scrollbar {
-  width: 6px; /* Thinner scrollbar for a minimalist look */
-  height: 6px; /* Thinner horizontal scrollbar */
-}
-
-.scrollit::-webkit-scrollbar-thumb {
-  background-color: #bbb; /* Neutral color for the scrollbar thumb */
-  border-radius: 4px; /* Rounded edges for a smoother feel */
-  transition: background-color 0.3s; /* Smooth transition effect */
-}
-
-.scrollit::-webkit-scrollbar-thumb:hover {
-  background-color: #888; /* Darker color when hovered for better UX */
-}
-
-.scrollit::-webkit-scrollbar-track {
-  background: #f4f4f4; /* Light background for the scrollbar track */
-  border-radius: 4px; /* Matching rounded edges */
+  background-color: var(--even-row-color);
 }
 
+.dataframe tbody tr:hover,
 .table tbody tr:hover {
-  background-color: #e8e5f9;
+  background-color: var(--row-hover-color);
 }
 
+/* Scrollbar styles */
+.table-responsive {
+  scrollbar-width: thin;
+  scrollbar-color: var(--scrollbar-thumb-color) var(--scrollbar-track-color);
+}
+
+.table-responsive::-webkit-scrollbar {
+  width: var(--scrollbar-width);
+  height: var(--scrollbar-width);
+}
+
+.table-responsive::-webkit-scrollbar-thumb {
+  background-color: var(--scrollbar-thumb-color);
+  border-radius: calc(var(--scrollbar-width) / 2);
+  transition: background-color 0.3s ease;
+}
+
+.table-responsive::-webkit-scrollbar-thumb:hover {
+  background-color: var(--scrollbar-thumb-hover-color);
+}
+
+.table-responsive::-webkit-scrollbar-track {
+  background: var(--scrollbar-track-color);
+  border-radius: calc(var(--scrollbar-width) / 2);
+}
+
+/* Responsive adjustments */
+@media (max-width: 768px) {
+  .table-responsive {
+    font-size: calc(var(--font-size) * 0.9);
+  }
+  .dataframe th,
+  .dataframe td {
+    padding: 8px 10px;
+  }
+}
+/* Accessibility improvements */
+@media (prefers-reduced-motion: reduce) {
+  .table-responsive::-webkit-scrollbar-thumb {
+    transition: none;
+  }
+}
+/* Print styles */
+@media print {
+  .table-responsive {
+    overflow: visible;
+    max-height: none;
+  }
+  .sticky-top-table table thead tr {
+    position: static;
+  }
+}
 .text-xs {
   font-size: 0.7rem;
 }
@@ -11022,67 +11077,67 @@ form.user .btn-user {
 
 @keyframes noise-anim {
   0% {
-    clip: rect(23px, 9999px, 58px, 0);
+    clip: rect(4px, 9999px, 76px, 0);
   }
   5% {
-    clip: rect(32px, 9999px, 63px, 0);
+    clip: rect(77px, 9999px, 83px, 0);
   }
   10% {
-    clip: rect(77px, 9999px, 97px, 0);
+    clip: rect(5px, 9999px, 17px, 0);
   }
   15% {
-    clip: rect(50px, 9999px, 39px, 0);
+    clip: rect(40px, 9999px, 61px, 0);
   }
   20% {
-    clip: rect(54px, 9999px, 93px, 0);
+    clip: rect(69px, 9999px, 49px, 0);
   }
   25% {
-    clip: rect(25px, 9999px, 51px, 0);
+    clip: rect(13px, 9999px, 35px, 0);
   }
   30% {
-    clip: rect(11px, 9999px, 71px, 0);
+    clip: rect(57px, 9999px, 43px, 0);
   }
   35% {
-    clip: rect(61px, 9999px, 16px, 0);
+    clip: rect(29px, 9999px, 64px, 0);
   }
   40% {
-    clip: rect(28px, 9999px, 48px, 0);
+    clip: rect(44px, 9999px, 44px, 0);
   }
   45% {
-    clip: rect(88px, 9999px, 96px, 0);
+    clip: rect(20px, 9999px, 10px, 0);
   }
   50% {
-    clip: rect(55px, 9999px, 59px, 0);
+    clip: rect(22px, 9999px, 75px, 0);
   }
   55% {
-    clip: rect(58px, 9999px, 23px, 0);
+    clip: rect(25px, 9999px, 15px, 0);
   }
   60% {
-    clip: rect(97px, 9999px, 45px, 0);
+    clip: rect(83px, 9999px, 18px, 0);
   }
   65% {
-    clip: rect(15px, 9999px, 55px, 0);
+    clip: rect(84px, 9999px, 45px, 0);
   }
   70% {
-    clip: rect(77px, 9999px, 36px, 0);
+    clip: rect(44px, 9999px, 69px, 0);
   }
   75% {
-    clip: rect(60px, 9999px, 77px, 0);
+    clip: rect(24px, 9999px, 66px, 0);
   }
   80% {
-    clip: rect(52px, 9999px, 71px, 0);
+    clip: rect(62px, 9999px, 70px, 0);
   }
   85% {
-    clip: rect(4px, 9999px, 31px, 0);
+    clip: rect(61px, 9999px, 72px, 0);
   }
   90% {
-    clip: rect(59px, 9999px, 53px, 0);
+    clip: rect(94px, 9999px, 33px, 0);
   }
   95% {
-    clip: rect(73px, 9999px, 79px, 0);
+    clip: rect(18px, 9999px, 6px, 0);
   }
   100% {
-    clip: rect(11px, 9999px, 39px, 0);
+    clip: rect(6px, 9999px, 56px, 0);
   }
 }
 .error:after {
@@ -11100,67 +11155,67 @@ form.user .btn-user {
 
 @keyframes noise-anim-2 {
   0% {
-    clip: rect(89px, 9999px, 11px, 0);
+    clip: rect(54px, 9999px, 40px, 0);
   }
   5% {
-    clip: rect(67px, 9999px, 4px, 0);
+    clip: rect(78px, 9999px, 16px, 0);
   }
   10% {
-    clip: rect(61px, 9999px, 21px, 0);
+    clip: rect(25px, 9999px, 74px, 0);
   }
   15% {
-    clip: rect(78px, 9999px, 69px, 0);
+    clip: rect(95px, 9999px, 88px, 0);
   }
   20% {
-    clip: rect(100px, 9999px, 89px, 0);
+    clip: rect(53px, 9999px, 99px, 0);
   }
   25% {
-    clip: rect(51px, 9999px, 99px, 0);
+    clip: rect(21px, 9999px, 50px, 0);
   }
   30% {
-    clip: rect(3px, 9999px, 85px, 0);
+    clip: rect(59px, 9999px, 80px, 0);
   }
   35% {
-    clip: rect(24px, 9999px, 42px, 0);
+    clip: rect(57px, 9999px, 98px, 0);
   }
   40% {
-    clip: rect(70px, 9999px, 3px, 0);
+    clip: rect(2px, 9999px, 72px, 0);
   }
   45% {
-    clip: rect(33px, 9999px, 55px, 0);
+    clip: rect(19px, 9999px, 55px, 0);
   }
   50% {
-    clip: rect(92px, 9999px, 31px, 0);
+    clip: rect(38px, 9999px, 17px, 0);
   }
   55% {
-    clip: rect(86px, 9999px, 36px, 0);
+    clip: rect(63px, 9999px, 13px, 0);
   }
   60% {
-    clip: rect(78px, 9999px, 71px, 0);
+    clip: rect(41px, 9999px, 3px, 0);
   }
   65% {
-    clip: rect(80px, 9999px, 2px, 0);
+    clip: rect(82px, 9999px, 38px, 0);
   }
   70% {
-    clip: rect(8px, 9999px, 50px, 0);
+    clip: rect(69px, 9999px, 3px, 0);
   }
   75% {
-    clip: rect(43px, 9999px, 81px, 0);
+    clip: rect(28px, 9999px, 91px, 0);
   }
   80% {
-    clip: rect(73px, 9999px, 91px, 0);
+    clip: rect(18px, 9999px, 63px, 0);
   }
   85% {
-    clip: rect(60px, 9999px, 31px, 0);
+    clip: rect(14px, 9999px, 71px, 0);
   }
   90% {
-    clip: rect(84px, 9999px, 12px, 0);
+    clip: rect(85px, 9999px, 44px, 0);
   }
   95% {
-    clip: rect(45px, 9999px, 87px, 0);
+    clip: rect(87px, 9999px, 5px, 0);
   }
   100% {
-    clip: rect(82px, 9999px, 5px, 0);
+    clip: rect(63px, 9999px, 97px, 0);
   }
 }
 .error:before {
diff --git a/base/static/js/alert.js b/base/static/js/alert.js
new file mode 100644
index 000000000..c96a54805
--- /dev/null
+++ b/base/static/js/alert.js
@@ -0,0 +1,33 @@
+
+// Show an alert
+function showAlert(id, message) {
+    const alertElement = document.getElementById(id);
+
+    if (alertElement) {
+        const alertText = alertElement.querySelector("span");
+
+        // Update the alert message if provided
+        if (message) {
+            alertText.textContent = message;
+        }
+
+        // Show the alert
+        alertElement.style.display = "flex"; // Use flex for proper alignment
+        alertElement.classList.add("show"); // Add Bootstrap's fade-in class
+
+        // Auto-hide after 5 seconds
+        setTimeout(() => {
+            closeAlert(id);
+        }, 5000);
+    }
+}
+
+// Close an alert
+function closeAlert(id) {
+    const alertElement = document.getElementById(id);
+
+    if (alertElement) {
+        alertElement.style.display = "none"; // Hide the alert
+        alertElement.classList.remove("show"); // Remove Bootstrap's fade-in class
+    }
+}
\ No newline at end of file
diff --git a/base/static/js/counterfactuals.js b/base/static/js/counterfactuals.js
index 4b4dfc2ba..3f4ecab2c 100755
--- a/base/static/js/counterfactuals.js
+++ b/base/static/js/counterfactuals.js
@@ -1,5 +1,6 @@
 import { create_selection, create_dataframe, create_div, transpose_table } from './methods.js'
 
+
 // Add event listeners to both buttons
 if (document.getElementById("new_x")) {
     document.getElementById("new_x").addEventListener('click', function () {
@@ -56,7 +57,6 @@ $(document).ready(function () {
 
     $('.plot_sample').click(function (event) {
         $("#cfbtn_check").hide()
-        document.getElementById("success-message").style.display = "none";
         let isValid = true;
         var errorMessage = "";
         if (!$("input:radio[name=class_label]:checked").val()) {
@@ -72,8 +72,7 @@ $(document).ready(function () {
 
         if (!isValid) {
             event.preventDefault();
-            document.getElementById('error_message_new_x_2').style.display = 'block';
-            document.getElementById('error_message_new_x_2').textContent = errorMessage;
+            showAlert("error_message_new_x_2", errorMessage)
         } else {
             document.getElementById('error_message_new_x_2').style.display = 'none';
             var class_label = $("input:radio[name=class_label]:checked").val();
@@ -95,6 +94,8 @@ $(document).ready(function () {
                 $("#cf_ecg_container").hide();
             }
 
+
+            $("#cfbtn_3").hide()
             $("#class_label_loader").show();
             $.ajax({
                 method: 'POST',
@@ -103,6 +104,7 @@ $(document).ready(function () {
                 data: { 'action': "class_label_selection", 'class_label': class_label, 'cfrow_id': cfrow_id, "model_name": model_name },
                 success: function (ret) {
                     $("#class_label_loader").hide();
+                    $("#cfbtn_3").show()
                     var ret = JSON.parse(ret)
                     var fig = ret["fig"]
 
@@ -247,11 +249,13 @@ $(document).ready(function () {
         // #class_label
         // #entries
 
+        $("#cf_results").hide();
+        $("#cfbtn_check").hide();
+
         let isValid = true;
         let errorMessage = '';
 
         if (!($("#class_label_container").css("display") === "none")) {
-            console.log(!$('input[name="class_label"]:checked').val())
             if (!$('input[name="class_label"]:checked')) {
                 isValid = false;
                 errorMessage += 'Please select a class label and then an example entry.\n';
@@ -283,10 +287,8 @@ $(document).ready(function () {
         // If not valid, show error message
         if (!isValid) {
             event.preventDefault();
-            document.getElementById('error-message').style.display = 'block';
-            document.getElementById('error-message').textContent = errorMessage;
+            showAlert("error-message", errorMessage);
         } else {
-            document.getElementById('error-message').style.display = 'hide';
             var csrftoken = jQuery("[name=csrfmiddlewaretoken]").val();
             var data_to_pass = {}
             var constraint = ""
@@ -306,11 +308,11 @@ $(document).ready(function () {
                 });
                 data_to_pass = { 'action': "cf", "features_to_vary": JSON.stringify(features_to_vary), "model_name": model_name }
             }
-            
+
             // hide button and original point row
             // replace with loader
-            $("#cfbtn_loader").show()
-            $("#cfbtn").hide()
+            $("#cfbtn").hide();
+            $("#cfbtn_loader").show();
             $.ajax({
                 method: 'POST',
                 url: '',
@@ -398,10 +400,6 @@ $(document).ready(function () {
                             if (document.getElementById("clicked_point")) {
                                 $("#clicked_point").remove();
                             }
-                            // $("#original_data").append(cp_tb)
-                            // $("#counterfactual").append(cf_tb);
-
-
                         }
                         else if (dataset_type == "timeseries") {
                             // ecg 
@@ -421,7 +419,7 @@ $(document).ready(function () {
                         }
 
                         $("#cfbtn_check").show()
-                        document.getElementById("success-message").style.display = "block";
+                        showAlert("success-message", "Your operation completed successfully!");
                     }
                 },
                 error: function (row) {
@@ -513,6 +511,8 @@ $(document).ready(function () {
     }
 });
 
-document.getElementById("learnMoreBtn").addEventListener("click", function () {
-    $('#glacierInfoModal').modal('show');
-});
\ No newline at end of file
+if (document.getElementById("learnMoreBtn")) {
+    document.getElementById("learnMoreBtn").addEventListener("click", function () {
+        $('#glacierInfoModal').modal('show');
+    });
+}
\ No newline at end of file
diff --git a/base/static/js/features_to_vary.js b/base/static/js/features_to_vary.js
index 9be8d3bf7..541f8680b 100644
--- a/base/static/js/features_to_vary.js
+++ b/base/static/js/features_to_vary.js
@@ -35,4 +35,5 @@ function sortByImportance() {
 
     // Append sorted elements back to the list
     features.forEach(feature => featureList.appendChild(feature));
-}
\ No newline at end of file
+}
+
diff --git a/base/static/js/home.js b/base/static/js/home.js
index 3133e3182..b2d9fbf29 100755
--- a/base/static/js/home.js
+++ b/base/static/js/home.js
@@ -22,6 +22,12 @@ $(document).ready(function () {
         });
     };
 
+
+    const $newOrLoad = $('#new_or_load');
+    const $viewPreTrainedButton = $('#viewPreTrainedButton');
+    const $datasetButtons = $('.btn-dataset');
+    const $timeseriesDatasets = $('#timeseries-datasets input[type="radio"]');
+
     window.addEventListener('scroll', () => {
         handleFadeAnimation();
     });
@@ -61,6 +67,7 @@ $(document).ready(function () {
         } else if (datasetType === "timeseries") {
             setupTimeseriesDataset(ret);
         }
+        localStorage.setItem("selectedDatasetType", datasetType)
     }
 
     function setupTabularDataset(ret) {
@@ -91,113 +98,168 @@ $(document).ready(function () {
         $("#ts_confidence_div").append(figDiv1);
     }
 
-    $('.btn-dataset').click(function (e) {
-        const df_name = $(this).is('#upload') ? "upload" : $(this).attr('id');
+    function handleDatasetClick(elementId) {
+        const df_name = elementId === "upload" ? "upload" : elementId;
         $("#new_or_load_cached").hide();
         resetContainers();
         $("#upload_col").toggle(df_name === "upload");
         $("#timeseries-datasets").toggle(df_name === "timeseries");
 
-        $(this).toggleClass("active").siblings().removeClass("active");
-        $(this).addClass("active");
+        $(`#${elementId}`).toggleClass("active").siblings().removeClass("active");
+        $(`#${elementId}`).addClass("active");
 
         const timeseries_dataset = df_name === "timeseries" ? $("input:radio[name=timeseries_dataset]:checked").val() : "";
         if (timeseries_dataset || (df_name !== "timeseries")) {
             fetchDatasetData(timeseries_dataset || df_name);
+            localStorage.setItem('datasetSelected', 'true');
+        } else {
+            hideViewModelsButton();
+            localStorage.setItem('datasetSelected', 'false');
         }
+    }
+
+    $('.btn-dataset').click(function () {
+        const elementId = $(this).attr('id');
+        handleDatasetClick(elementId);
+    });
+
+    // Bind click event to #timeseries-datasets
+    $('#timeseries-datasets').click(function () {
+        handleDatasetClick('timeseries');
+    });
+
+    const savedDataset = localStorage.getItem('selectedDatasetType');
+    if (savedDataset) {
+        if (savedDataset === 'tabular') {
+            $("#df").show();
+            $("#df_stats").show();
+        } else if (savedDataset === 'timeseries') {
+            $("#ts_confidence").show();
+            $("#ts_stats").show();
+        }
+    }
+
+    // Function to show the "View Pre-trained Models" button
+    function showViewModelsButton() {
+        $newOrLoad.show();
+    }
+
+    // Function to hide the "View Pre-trained Models" button
+    function hideViewModelsButton() {
+        $newOrLoad.hide();
+    }
+
+    // Function to check if a dataset is selected
+    function isDatasetSelected() {
+        return $datasetButtons.hasClass('active') || $timeseriesDatasets.is(':checked');
+    }
+
+    // Check localStorage on page load
+    if (localStorage.getItem('datasetSelected') === 'true') {
+        showViewModelsButton();
+    } else {
+        hideViewModelsButton();
+    }
+
+    // Handle "View Pre-trained Models" button click
+    $viewPreTrainedButton.on('click', function () {
+        // Add your logic here to navigate to the pre-trained models page
+        window.location.href = '/charts.html'; // Replace with your actual URL
     });
 });
 
-if (document.getElementById("viewModelsButton")) {
-    document.getElementById("viewModelsButton").addEventListener("click", function () {
-        // Prompt or redirect the user to the pre-trained models section
-        window.location.href = "/charts.html"; // Replace with the actual URL
-    });
-}
+// if (document.getElementById("viewModelsButton")) {
+//     document.getElementById("viewModelsButton").addEventListener("click", function () {
+//         // Prompt or redirect the user to the pre-trained models section
+//         window.location.href = "/charts.html"; // Replace with the actual URL
+//     });
+// }
+// $(document).ready(function () {
+//     $('#timeseries-datasets').change(function () {
+//         if ($("input[name=timeseries_dataset]:checked").length > 0) {
 
-$(document).ready(function () {
-    $('#timeseries-datasets').change(function () {
-        if ($("input[name=timeseries_dataset]:checked").length > 0) {
+//             var timeseries_dataset = $("input:radio[name=timeseries_dataset]:checked").val();
 
-            var timeseries_dataset = $("input:radio[name=timeseries_dataset]:checked").val();
+//             $("#df").hide();
+//             $("#df_stats").hide();
 
-            $("#df_container").hide();
-            $("#stats_container").hide();
-            $("#figs").hide();
+//             $("#df_container").hide();
+//             $("#stats_container").hide();
+//             $("#figs").hide();
 
-            $("#ts_confidence_cached").hide()
-            $("#ts_stats_cached").hide()
+//             $("#ts_confidence_cached").hide()
+//             $("#ts_stats_cached").hide()
 
-            $("#ts_confidence").hide()
-            $("#ts_stats").hide()
-            var csrftoken = jQuery("[name=csrfmiddlewaretoken]").val();
+//             $("#ts_confidence").hide()
+//             $("#ts_stats").hide()
+//             var csrftoken = jQuery("[name=csrfmiddlewaretoken]").val();
 
-            $("#loader_ds").show();
-            $("#loader_stats").show();
+//             $("#loader_ds").show();
+//             $("#loader_stats").show();
 
-            $("#new_or_load").hide();
-            $("#new_or_load_cached").hide();
+//             $("#new_or_load").hide();
+//             $("#new_or_load_cached").hide();
 
-            $.ajax({
-                method: 'POST',
-                url: '',
-                headers: { 'X-CSRFToken': csrftoken, },
-                data: { 'action': "timeseries-dataset", 'timeseries_dataset': timeseries_dataset },
-                success: function (values) {
-                    $("#loader_ds").hide();
-                    $("#loader_stats").hide();
-                    // fetch data
-                    // remove data if already displayed
-                    if (document.getElementById("df_container")) {
-                        $("#pretrained_radio").remove();
-                        $("#df_container").remove();
-                        $("#stats_container").remove();
-                        $("#feature1").remove();
-                        $("#feature2").remove();
-                        $("#label").remove();
-                    }
+//             $.ajax({
+//                 method: 'POST',
+//                 url: '',
+//                 headers: { 'X-CSRFToken': csrftoken, },
+//                 data: { 'action': "timeseries-dataset", 'timeseries_dataset': timeseries_dataset },
+//                 success: function (values) {
+//                     $("#loader_ds").hide();
+//                     $("#loader_stats").hide();
+//                     // fetch data
+//                     // remove data if already displayed
+//                     if (document.getElementById("df_container")) {
+//                         $("#pretrained_radio").remove();
+//                         $("#df_container").remove();
+//                         $("#stats_container").remove();
+//                         $("#feature1").remove();
+//                         $("#feature2").remove();
+//                         $("#label").remove();
+//                     }
 
-                    $("#new_or_load").show();
+//                     $("#new_or_load").show();
 
-                    if (document.getElementById("ts_confidence_container")) {
-                        $("#ts_confidence_container").remove();
-                        $("#ts_stats_container").remove();
-                    }
+//                     if (document.getElementById("ts_confidence_container")) {
+//                         $("#ts_confidence_container").remove();
+//                         $("#ts_stats_container").remove();
+//                     }
 
-                    var ret = JSON.parse(values)
-                    var dataset_type = ret["dataset_type"]
+//                     var ret = JSON.parse(values)
+//                     var dataset_type = ret["dataset_type"]
 
-                    if (values) {
-                        // timeseries
-                        // var feature = ret["feature"]
-                        var fig = ret["fig"]
-                        var fig1 = ret["fig1"]
+//                     if (values) {
+//                         // timeseries
+//                         // var feature = ret["feature"]
+//                         var fig = ret["fig"]
+//                         var fig1 = ret["fig1"]
 
-                        var iDiv = document.createElement('div');
-                        iDiv.id = 'ts_confidence_container';
-                        iDiv.innerHTML = fig;
-                        iDiv.setAttribute("class", "plotly_fig")
+//                         var iDiv = document.createElement('div');
+//                         iDiv.id = 'ts_confidence_container';
+//                         iDiv.innerHTML = fig;
+//                         iDiv.setAttribute("class", "plotly_fig")
 
-                        var iDiv1 = document.createElement('div');
-                        iDiv1.id = 'ts_stats_container';
-                        iDiv1.innerHTML = fig1;
-                        iDiv1.setAttribute("class", "plotly_fig")
+//                         var iDiv1 = document.createElement('div');
+//                         iDiv1.id = 'ts_stats_container';
+//                         iDiv1.innerHTML = fig1;
+//                         iDiv1.setAttribute("class", "plotly_fig")
 
-                        $("#ts_stats").show();
-                        $("#ts_confidence").show();
+//                         $("#ts_stats").show();
+//                         $("#ts_confidence").show();
 
-                        $("#ts_stats_div").append(iDiv);
-                        $("#ts_confidence_div").append(iDiv1);
-                    }
-                },
-                error: function (ret) {
-                    console.log("All bad")
-                }
+//                         $("#ts_stats_div").append(iDiv);
+//                         $("#ts_confidence_div").append(iDiv1);
+//                     }
+//                 },
+//                 error: function (ret) {
+//                     console.log("All bad")
+//                 }
 
-            });
-        }
-    })
-});
+//             });
+//         }
+//     })
+// });
 
 // $(document).ready(function () {
 //     $('#radio_buttons').change(function () {
diff --git a/base/static/js/methods.js b/base/static/js/methods.js
index 557bc1c16..1f26bddf6 100755
--- a/base/static/js/methods.js
+++ b/base/static/js/methods.js
@@ -191,7 +191,7 @@ function clearPreviousContent(ids = [
     "#feature2",
     "#label",
     "#ts_confidence_container",
-    "#ts_stats_container"
+    "#ts_stats_container",
 ]) {
     ids.forEach(id => {
         const element = document.querySelector(id);
diff --git a/base/static/js/radio_model.js b/base/static/js/radio_model.js
index 3306b7427..6e450de98 100755
--- a/base/static/js/radio_model.js
+++ b/base/static/js/radio_model.js
@@ -114,76 +114,78 @@ $(document).ready(function () {
         }
     });
 
-    document.getElementById('confirmDeleteButton').addEventListener('click', function () {
-        const fileNameValue = this.getAttribute('data-file-value');
-        const fileName = this.getAttribute('data-file');
-        const csrftoken = jQuery("[name=csrfmiddlewaretoken]").val();
-        const uploadedDataset = $("input:radio[name=radio_buttons]:checked").val();
-        // AJAX request to delete file
-        $.ajax({
-            type: 'POST',
-            url: '',  // Add the URL where this request should go
-            data: {
-                action: 'delete_pre_trained',
-                model_name: fileNameValue,
-                csrfmiddlewaretoken: csrftoken  // Django CSRF token
-            },
-            success: function () {
-                // Remove the file entry from the UI
-                const fileElement = $(`[data-file="${fileName}"]`).closest('.form-check');
-                fileElement.remove();
-                
-                // Check if there are any remaining .form-check elements
-                if ($('#radio_buttons .form-check').length === 0) {
-                    // Replace the #radio_buttons content with the fallback message
-                    const radioButtonsContainer = document.querySelector('#radio_buttons');
-                    radioButtonsContainer.innerHTML = `
+    if (document.getElementById('confirmDeleteButton')) {
+        document.getElementById('confirmDeleteButton').addEventListener('click', function () {
+            const fileNameValue = this.getAttribute('data-file-value');
+            const fileName = this.getAttribute('data-file');
+            const csrftoken = jQuery("[name=csrfmiddlewaretoken]").val();
+            const uploadedDataset = $("input:radio[name=radio_buttons]:checked").val();
+            // AJAX request to delete file
+            $.ajax({
+                type: 'POST',
+                url: '',  // Add the URL where this request should go
+                data: {
+                    action: 'delete_pre_trained',
+                    model_name: fileNameValue,
+                    csrfmiddlewaretoken: csrftoken  // Django CSRF token
+                },
+                success: function () {
+                    // Remove the file entry from the UI
+                    const fileElement = $(`[data-file="${fileName}"]`).closest('.form-check');
+                    fileElement.remove();
+
+                    // Check if there are any remaining .form-check elements
+                    if ($('#radio_buttons .form-check').length === 0) {
+                        // Replace the #radio_buttons content with the fallback message
+                        const radioButtonsContainer = document.querySelector('#radio_buttons');
+                        radioButtonsContainer.innerHTML = `
                         <p class="text-danger">
                             There are no available pre-trained models. 
                             Please <a href="/train.html" class="text-primary">train a model</a>.
                         </p>
                     `;
-                }
-            
-                // Attach a success message to the modal
-                const modalBody = document.querySelector('#deleteFileModal .modal-body');
-                modalBody.innerHTML = `
+                    }
+
+                    // Attach a success message to the modal
+                    const modalBody = document.querySelector('#deleteFileModal .modal-body');
+                    modalBody.innerHTML = `
                     <div class="alert alert-success mb-3" role="alert">
                         <i class="fas fa-check-circle mr-2"></i>
                         The file <strong>${fileName}</strong> has been successfully deleted.
                     </div>
                 `;
-            
-                // Optionally hide the modal after a delay
-                setTimeout(() => {
-                    $('#deleteFileModal').modal('hide');
-                    modalBody.innerHTML = ''; // Clear the message after hiding
-                }, 2000);
-            
-                // Reset containers if the deleted file is the uploaded dataset
-                if (fileName === uploadedDataset) {
-                    resetContainers();
-                }
-            },
-            
-            error: function () {
-                // Attach an error message to the modal
-                const modalBody = document.querySelector('#deleteFileModal .modal-body');
-                modalBody.innerHTML = `
+
+                    // Optionally hide the modal after a delay
+                    setTimeout(() => {
+                        $('#deleteFileModal').modal('hide');
+                        modalBody.innerHTML = ''; // Clear the message after hiding
+                    }, 2000);
+
+                    // Reset containers if the deleted file is the uploaded dataset
+                    if (fileName === uploadedDataset) {
+                        resetContainers();
+                    }
+                },
+
+                error: function () {
+                    // Attach an error message to the modal
+                    const modalBody = document.querySelector('#deleteFileModal .modal-body');
+                    modalBody.innerHTML = `
                     <div class="alert alert-danger mb-3" role="alert">
                         <i class="fas fa-times-circle mr-2"></i>
                         An error occurred while deleting the file. Please try again.
                     </div>
                 `;
-    
-                // Optionally reset the modal content after a delay
-                setTimeout(() => {
-                    modalBody.innerHTML = `
+
+                    // Optionally reset the modal content after a delay
+                    setTimeout(() => {
+                        modalBody.innerHTML = `
                         <p class="mb-1">Delete <span id="fileToDeleteName" class="font-weight-bold"></span> pre-trained classifier on <span class="font-weight-bold"> {{ df_name }} </span> dataset?</p>
                         <small class="text-muted">This action is permanent.</small>
                     `;
-                }, 3000);
-            }
+                    }, 3000);
+                }
+            });
         });
-    });    
+    }
 });
diff --git a/base/static/scss/utilities/_animation.scss b/base/static/scss/utilities/_animation.scss
index 895759b40..563595f60 100755
--- a/base/static/scss/utilities/_animation.scss
+++ b/base/static/scss/utilities/_animation.scss
@@ -36,15 +36,15 @@
   animation-duration: 200ms;
   animation-timing-function: opacity cubic-bezier(0, 1, 0.4, 1);
 }
-/* Existing Loader Spinner */
+/* Enhanced Loader Spinner */
 .loader {
   display: inline-block;
-  width: 1.5rem;
-  height: 1.5rem;
-  border: 2px solid rgba(0, 0, 0, 0.1);
+  width: var(--loader-size, 2rem); /* Dynamic size */
+  height: var(--loader-size, 2rem); /* Dynamic size */
+  border: var(--loader-border-width, 3px) solid rgba(0, 0, 0, 0.1); /* Customizable border width */
   border-radius: 50%;
-  border-top-color: #007bff;
-  animation: spin 0.6s linear infinite;
+  border-top-color: var(--loader-color, #007bff); /* Customizable color */
+  animation: spin 0.8s ease-in-out infinite; /* Smooth animation */
   margin-left: 8px;
 }
 
@@ -55,6 +55,11 @@
   }
 }
 
+/* Accessibility */
+.loader[aria-hidden="true"] {
+  display: none;
+}
+
 
 .loader i {
   font-size: 1.2em;
diff --git a/base/static/scss/utilities/_tables.scss b/base/static/scss/utilities/_tables.scss
index a0bdba5fa..fc6788bf9 100644
--- a/base/static/scss/utilities/_tables.scss
+++ b/base/static/scss/utilities/_tables.scss
@@ -1,85 +1,126 @@
-.table-responsive {
-  max-height: 500px;
-  overflow-y: auto;
+:root {
+  --table-max-height: 500px;
+  --border-color: #ddd;
+  --header-bg-color: #f1f1f1;
+  --header-text-color: #555;
+  --row-hover-color: #e8e5f9;
+  --even-row-color: #f3f3f3;
+  --scrollbar-width: 6px;
+  --scrollbar-thumb-color: #bbb;
+  --scrollbar-thumb-hover-color: #888;
+  --scrollbar-track-color: #f4f4f4;
+  --font-family: Arial, sans-serif;
+  --font-size: 0.9rem;
+  --cell-padding: 12px 15px;
+  --border-radius: 5px;
+  --table-bg-color: #f8f9fa;
 }
 
-.table-bordered {
-  border: 1px solid #ddd;
+.table-responsive {
+  max-height: var(--table-max-height);
+  overflow: auto;
+  border: 1px solid var(--border-color);
+  border-radius: var(--border-radius);
+  background-color: var(--table-bg-color);
+  padding: 10px;
+}
+
+.sticky-top-table {
+  position: relative;
+}
+
+.sticky-top-table table {
+  border-collapse: separate;
+  border-spacing: 0;
+  width: 100%;
 }
 
 .sticky-top-table table thead tr {
   position: sticky;
   top: 0;
-  background-color: #f1f1f1;
-  color: #555;
+  background-color: var(--header-bg-color);
+  color: var(--header-text-color);
   font-weight: bold;
   z-index: 10;
 }
 
 .dataframe {
-  font-family: Arial, sans-serif;
-  font-size: 0.9em;
-
-  thead tr {
-    text-align: left;
-    font-weight: bold;
-  }
-
-  th,
-  td {
-    padding: 12px 15px;
-    border-bottom: 1px solid #ddd;
-  }
-
-  tbody tr:nth-of-type(even) {
-    background-color: #f3f3f3;
-  }
-
-  tbody tr:hover {
-    background-color: #e8e5f9;
-  }
+  font-family: var(--font-family);
+  font-size: var(--font-size);
 }
 
-.scrollit {
-  overflow-y: auto;
-
-  overflow-x: auto;
-
-  max-height: max-content;
-
-  border-radius: 5px;
-
-  border: 1px solid #ddd;
-
-  background-color: #f8f9fa;
-
-  padding: 10px;
+.dataframe thead tr {
+  text-align: left;
 }
 
-.scrollit::-webkit-scrollbar {
-  width: 6px; /* Thinner scrollbar for a minimalist look */
-
-  height: 6px; /* Thinner horizontal scrollbar */
+.dataframe th,
+.dataframe td {
+  padding: var(--cell-padding);
+  border-bottom: 1px solid var(--border-color);
 }
 
-.scrollit::-webkit-scrollbar-thumb {
-  background-color: #bbb; /* Neutral color for the scrollbar thumb */
-
-  border-radius: 4px; /* Rounded edges for a smoother feel */
-
-  transition: background-color 0.3s; /* Smooth transition effect */
-}
-
-.scrollit::-webkit-scrollbar-thumb:hover {
-  background-color: #888; /* Darker color when hovered for better UX */
-}
-
-.scrollit::-webkit-scrollbar-track {
-  background: #f4f4f4; /* Light background for the scrollbar track */
-
-  border-radius: 4px; /* Matching rounded edges */
+.dataframe tbody tr:nth-of-type(even) {
+  background-color: var(--even-row-color);
 }
 
+.dataframe tbody tr:hover,
 .table tbody tr:hover {
-  background-color: #e8e5f9;
+  background-color: var(--row-hover-color);
 }
+
+/* Scrollbar styles */
+.table-responsive {
+  scrollbar-width: thin;
+  scrollbar-color: var(--scrollbar-thumb-color) var(--scrollbar-track-color);
+}
+
+.table-responsive::-webkit-scrollbar {
+  width: var(--scrollbar-width);
+  height: var(--scrollbar-width);
+}
+
+.table-responsive::-webkit-scrollbar-thumb {
+  background-color: var(--scrollbar-thumb-color);
+  border-radius: calc(var(--scrollbar-width) / 2);
+  transition: background-color 0.3s ease;
+}
+
+.table-responsive::-webkit-scrollbar-thumb:hover {
+  background-color: var(--scrollbar-thumb-hover-color);
+}
+
+.table-responsive::-webkit-scrollbar-track {
+  background: var(--scrollbar-track-color);
+  border-radius: calc(var(--scrollbar-width) / 2);
+}
+
+/* Responsive adjustments */
+@media (max-width: 768px) {
+  .table-responsive {
+    font-size: calc(var(--font-size) * 0.9);
+  }
+
+  .dataframe th,
+  .dataframe td {
+    padding: 8px 10px;
+  }
+}
+
+/* Accessibility improvements */
+@media (prefers-reduced-motion: reduce) {
+  .table-responsive::-webkit-scrollbar-thumb {
+    transition: none;
+  }
+}
+
+/* Print styles */
+@media print {
+  .table-responsive {
+    overflow: visible;
+    max-height: none;
+  }
+
+  .sticky-top-table table thead tr {
+    position: static;
+  }
+}
\ No newline at end of file
diff --git a/base/templates/base/charts.html b/base/templates/base/charts.html
index 157251bd1..742007d2b 100755
--- a/base/templates/base/charts.html
+++ b/base/templates/base/charts.html
@@ -169,29 +169,29 @@
                 </div>
             </div>
         </div>
-
-        <div class="row mt-3" id="new_or_load">
-            <div class="col d-flex justify-content-center">
-                <div class="text-center mt-4 d-flex justify-content-center">
-                    <!-- Back to Dataset Selection Button -->
-                    <button id="backToDatasetButton" class="btn btn-view-models mr-3">
-                        <i class="fas fa-arrow-left mr-2"></i> Back to Dataset Selection
-                    </button>
-                    
-                    <!-- View Counterfactuals Button -->
-                    <button id="viewCounterfactualsButton" class="btn btn-view-models">
-                        View Counterfactuals <i class="fas fa-arrow-right ml-2"></i>
-                    </button>
-                </div>
-            </div>
-        </div>
         
         <!-- Details and PCA Container -->
         <div class="row" id="details_cr_container"></div>
         <div class="row" id="pca_fi_container"></div>
         
+        <div class="container-fluid py-4" id="new_or_load">
+            <div class="row justify-content-center">
+                <div class="col-auto">
+                    <!-- Back to Dataset Selection Button -->
+                    <button id="backToDatasetButton" class="btn btn-outline-primary mr-3">
+                        <i class="fas fa-arrow-left mr-2"></i> Back to Dataset Selection
+                    </button>
+                    
+                    <!-- View Counterfactuals Button -->
+                    <button id="viewCounterfactualsButton" class="btn btn-outline-primary">
+                        View Counterfactuals <i class="fas fa-arrow-right ml-2"></i>
+                    </button>
+                </div>
+            </div>
+        </div>
     </div>
     <!-- /.container-fluid -->
+     
 </div>
 
 <script type="module" src="{% static 'js/radio_model.js' %}"></script>
diff --git a/base/templates/base/counterfactuals.html b/base/templates/base/counterfactuals.html
index d90f6eb4f..3aa7388b4 100755
--- a/base/templates/base/counterfactuals.html
+++ b/base/templates/base/counterfactuals.html
@@ -122,7 +122,7 @@
                 <!-- Step Title Header -->
                 <div class="row mb-3">
                     <div class="col-12">
-                        <h5 class="text-left font-weight-bold" style="padding-top: 10px;">Step 1: Pick a Pre-trained Model/Classifier</h5>
+                        <h5 class="text-left" style="padding-top: 10px;">Step 1: Pick a Pre-trained Model/Classifier</h5>
                     </div>
                 </div>
         
@@ -175,7 +175,7 @@
                 <!-- Step Title Header -->
                 <div class="row mb-3">
                     <div class="col-12">
-                        <h5 class="text-left font-weight-bold" style="padding-top: 10px;">Step 2: Select a Constraint/Experiment</h5>
+                        <h5 class="text-left" style="padding-top: 10px;">Step 2: Select a Constraint/Experiment</h5>
                     </div>
                 </div>
                 <div class="card border-0 shadow-sm h-100 animate-card">
@@ -384,7 +384,7 @@
             <div class="row" id="class_label_container" style="display: none; padding-top: 70px;">
                 <!-- Step Title Header -->
                 <div class="col-12 mb-4">
-                    <h5 class="text-left font-weight-bold">Step 2: Pick a Sample Data</h5>
+                    <h5 class="text-left">Step 3: Pick a Sample Data</h5>
                 </div>
             
                 <!-- Left Column: Data Samples for Experiment -->
@@ -425,15 +425,89 @@
                     </div>
                 </div>
             
-                <!-- Right Column: Selected Data Sample -->
-                <div class="col-xl-8 col-lg-8 mb-4" id="ecg_data_container" style="display: none;">
-                    <div class="card border-0 shadow-sm h-100 animate-card">
+                <div class="col-lg-8 mb-4" id="ecg_data_container" style="display: none;">
+                    <div class="card border-0 shadow-sm h-100">
                         <div class="card-header bg-light text-dark py-3 d-flex justify-content-between align-items-center">
-                            <h6 class="m-0 font-weight-bold">Selected Data Sample</h6>
+                            <h5 class="m-0 font-weight-bold">Selected Data Sample</h5>
                             <i class="fas fa-wave-square text-muted"></i>
                         </div>
-                        <div class="card-body d-flex justify-content-center align-items-center" id="ecg_data">
-                            <!-- Original Timeseries data visualization will go here -->
+                        <div class="card-body d-flex flex-column">
+                            <div class="bg-light p-3 rounded flex-grow-1 mb-4" style="min-height: 200px;">
+                                <div id="ecg_data" class="d-flex justify-content-center align-items-center h-100">
+                                    <!-- Original Timeseries data visualization will go here -->
+                                </div>
+                            </div>
+                            
+                            <div class="d-flex flex-column flex-md-row justify-content-center align-items-center mb-3">
+                                <button 
+                                    class="btn btn-primary btn-lg mb-2 mb-md-0 mr-md-2 run_counterfactual"
+                                    id="cfbtn"
+                                    name="cf"
+                                    title="Click to start counterfactual generation"
+                                >
+                                    <i class="fas fa-play mr-2"></i> Run Counterfactuals
+                                </button>
+                                
+                                <div 
+                                    class="loader text-primary ml-2 mb-2 mb-md-0" 
+                                    id="cfbtn_loader" 
+                                    style="display: none;" 
+                                    role="status"
+                                  >
+                                    <span class="sr-only">Loading...</span>
+                                  </div>
+
+                                <button 
+                                    class="btn btn-outline-success btn-lg"
+                                    id="cfbtn_check" 
+                                    style="display: none;"
+                                    title="View the generated results"
+                                >
+                                    <i class="fas fa-chart-line mr-2"></i> View Results
+                                </button>
+                            </div>
+                
+                            <div id="message-container">
+                                <div
+                                    id="error-message"
+                                    class="alert alert-danger alert-dismissible fade"
+                                    role="alert"
+                                    style="display: none"
+                                >
+                                    <div class="d-flex align-items-center">
+                                        <i class="fas fa-exclamation-triangle mr-2"></i>
+                                        <span>Please fill out all required fields.</span>
+                                    </div>
+                                    <button
+                                        type="button"
+                                        class="close"
+                                        aria-label="Close"
+                                        onclick="closeAlert('error-message')"
+                                    >
+                                        <span aria-hidden="true">&times;</span>
+                                    </button>
+                                </div>
+                
+                                <div
+                                    id="success-message"
+                                    class="alert alert-success alert-dismissible fade"
+                                    role="alert"
+                                    style="display: none"
+                                >
+                                    <div class="d-flex align-items-center">
+                                        <i class="fas fa-check-circle mr-2"></i>
+                                        <span>Counterfactuals were generated successfully.</span>
+                                    </div>
+                                    <button
+                                        type="button"
+                                        class="close"
+                                        aria-label="Close"
+                                        onclick="closeAlert('success-message')"
+                                    >
+                                        <span aria-hidden="true">&times;</span>
+                                    </button>
+                                </div>
+                            </div>
                         </div>
                     </div>
                 </div>
@@ -441,10 +515,22 @@
         {% endif %}
          
         <div class="d-flex justify-content-center mt-4">
-            <div id="error_message_new_x_2" class="alert alert-danger alert-dismissible text-center" style="display: none; width: 100%; max-width: 400px;" role="alert">
-                <i class="fas fa-exclamation-triangle"></i> 
-                <span>Please correct errors before proceeding.</span>
-                <button type="button" class="close" aria-label="Close" onclick="$('#error_message_new_x_2').hide();">
+            <div 
+                id="error_message_new_x_2" 
+                class="alert alert-danger alert-dismissible fade" 
+                role="alert" 
+                style="display: none;"
+            >
+                <div class="d-flex align-items-center">
+                    <i class="fas fa-exclamation-triangle mr-2"></i>
+                    <span>Please fill out all required fields.</span>
+                </div>
+                <button 
+                    type="button" 
+                    class="close" 
+                    aria-label="Close" 
+                    onclick="closeAlert('error_message_new_x_2')"
+                >
                     <span aria-hidden="true">&times;</span>
                 </button>
             </div>
@@ -485,58 +571,168 @@
                     </div>
                 </div>
             </div>
-
-
-            <div class="row justify-content-start" id="features_to_vary" style="display: none;">
-                <!-- Features to Vary Card -->
-                <div class="col-12 mb-3" style="padding-top: 70px;">
-                    <h5 class="text-left font-weight-bold" style="padding-top: 10px;">Step 3: Select the features to vary and execute</h5>
-                </div>
-
-                <div class="col-xl-12 col-lg-12">
-                    <div class="card shadow-sm border-1 animate-card">
-                        <!-- Card Header -->
-                        <div class="card-header bg-light text-dark py-3 d-flex justify-content-between align-items-center">
-                            <h6 class="m-0">Features to Vary</h6>
-                            <i id="toggle-btn" class="arrow fas fa-chevron-circle-up"></i>
-                        </div>
-                        <div id="dropdown-div" class="card-body" style="display: block;"> <!-- Initially expanded -->
-                            <!-- Feature Selection Container with Scroll -->
-                            <div id="features_to_vary_container" style="max-height: 300px; overflow: auto; padding: 20px 20px;">
-                                <!-- Search Box -->
-                                <input type="text" id="searchInput" class="form-control mb-3" placeholder="Search features...">
-                                
-                                <!-- Buttons -->
-                                <div class="d-flex flex-wrap justify-content-between mb-2">
-                                    <button class="btn btn-outline-primary mb-2 flex-fill mr-2" onclick="selectAll(true)">Select All</button>
-                                    <button class="btn btn-outline-danger mb-2 flex-fill mr-2" onclick="selectAll(false)">Deselect All</button>
-                                    <button class="btn btn-outline-secondary mb-2 flex-fill" onclick="sortByImportance()">Sort by Importance</button>
-                                </div>
-                            </div>
-                        </div>
+            
+            <div class="container-fluid py-4" id="features_to_vary" style="display: none;">
+                <!-- Header -->
+                <h5 class="mb-4 text-center">Select Features to Vary</h5>
+            
+                <!-- Features Card -->
+                <div class="bg-white rounded shadow-sm">
+                    <!-- Card Header -->
+                    <div class="d-flex justify-content-between align-items-center p-3 border-bottom">
+                        <h6 class="mb-0">Available Features</h6>
+                        <button 
+                            id="toggle-btn" 
+                            class="btn btn-light p-0 border-0" 
+                            aria-expanded="true" 
+                            aria-controls="dropdown-div"
+                            title="Toggle visibility"
+                        >
+                            <i class="fas fa-chevron-up"></i>
+                        </button>
                     </div>
+            
+                    <!-- Card Content -->
+                    <div id="dropdown-div" class="container-fluid py-4">
+                        <div class="row">
+                          <div class="col-12">
+                            <!-- Search Area with Secondary Buttons -->
+                            <div class="d-flex flex-wrap justify-content-between align-items-center mb-3">
+                              <!-- Search Input -->
+                              <div class="flex-grow-1 mr-3 mb-2 mb-md-0">
+                                <input 
+                                  type="text" 
+                                  id="searchInput" 
+                                  class="form-control" 
+                                  placeholder="Search features..."
+                                >
+                              </div>
+                          
+                              <!-- Secondary Actions -->
+                              <div class="btn-group">
+                                <button 
+                                  class="btn btn-outline-secondary btn-sm"
+                                  onclick="selectAll(true)"
+                                  title="Select all features"
+                                >
+                                  <i class="fas fa-check-square mr-1"></i> Select All
+                                </button>
+                                <button 
+                                  class="btn btn-outline-secondary btn-sm"
+                                  onclick="selectAll(false)"
+                                  title="Deselect all features"
+                                >
+                                  <i class="fas fa-square mr-1"></i> Deselect All
+                                </button>
+                                <button 
+                                  class="btn btn-outline-secondary btn-sm"
+                                  onclick="sortByImportance()"
+                                  title="Sort features by importance"
+                                >
+                                  <i class="fas fa-sort-amount-down mr-1"></i> Sort
+                                </button>
+                              </div>
+                            </div>
+                          
+                            <!-- Feature List -->
+                            <div 
+                              id="features_to_vary_container" 
+                              class="border rounded p-3 mb-4" 
+                              style="max-height: 300px; overflow-y: auto; background-color: #f9f9f9;"
+                            >
+                              <!-- Features will be dynamically added here -->
+                            </div>
+                          
+                            <!-- Primary Actions and Messages -->
+                            <div class="row align-items-start">
+                              <!-- Messages Section -->
+                              <div class="col-12 col-md-6 mb-3 mb-md-0">
+                                <div id="message-container">
+                                    <!-- Error Message -->
+                                    <div 
+                                        id="error-message" 
+                                        class="alert alert-danger alert-dismissible fade" 
+                                        role="alert" 
+                                        style="display: none;"
+                                    >
+                                        <div class="d-flex align-items-center">
+                                            <i class="fas fa-exclamation-triangle mr-2"></i>
+                                            <span>Please fill out all required fields.</span>
+                                        </div>
+                                        <button 
+                                            type="button" 
+                                            class="close" 
+                                            aria-label="Close" 
+                                            onclick="closeAlert('error-message')"
+                                        >
+                                            <span aria-hidden="true">&times;</span>
+                                        </button>
+                                    </div>
+                            
+                                    <!-- Success Message -->
+                                    <div 
+                                        id="success-message" 
+                                        class="alert alert-success alert-dismissible fade" 
+                                        role="alert" 
+                                        style="display: none;"
+                                    >
+                                        <div class="d-flex align-items-center">
+                                            <i class="fas fa-check-circle mr-2"></i>
+                                            <span>Counterfactuals were generated successfully.</span>
+                                        </div>
+                                        <button 
+                                            type="button" 
+                                            class="close" 
+                                            aria-label="Close" 
+                                            onclick="closeAlert('success-message')"
+                                        >
+                                            <span aria-hidden="true">&times;</span>
+                                        </button>
+                                    </div>
+                                </div>
+                            </div>                            
+                              <!-- Buttons Section -->
+                              <div class="col-12 col-md-6">
+                                <div class="d-flex flex-wrap justify-content-md-end align-items-center">
+                                  <!-- Run Counterfactuals Button -->
+                                  <button 
+                                    class="btn btn-primary px-4 py-2 align-items-center run_counterfactual mb-2 mb-md-0 mr-md-2"
+                                    id="cfbtn"
+                                    name="cf"
+                                    title="Click to start counterfactual generation"
+                                  >
+                                    <i class="fas fa-play mr-2"></i> Run Counterfactuals
+                                  </button>
+                          
+                                  <!-- Loading Spinner -->
+                                  <div 
+                                    class="loader text-primary ml-2 mb-2 mb-md-0" 
+                                    id="cfbtn_loader" 
+                                    style="display: none;" 
+                                    role="status"
+                                  >
+                                    <span class="sr-only">Loading...</span>
+                                  </div>
+                          
+                                  <!-- View Results Button -->
+                                  <button 
+                                    class="btn btn-outline-success px-4 py-2 mb-2 mb-md-0"
+                                    id="cfbtn_check" 
+                                    style="display: none;"
+                                    title="View the generated results"
+                                  >
+                                    <i class="fas fa-chart-line mr-2"></i> View Results
+                                  </button>
+                                </div>
+                              </div>
+                            </div>
+                          </div>
+                        </div>
+                    </div>                      
                 </div>
             </div>
         {% endif %}
 
-        <!-- cfbtn_container Section -->
-        <div class="row" id="cfbtn_container" style="display: none; padding-top: 20px; padding-bottom: 20px;">
-            <div class="col-sm d-flex justify-content- flex-column align-items-center">
-                <div id="error-message" class="alert alert-danger align-items-center" style="display: none; width: 100%; max-width: 400px;" role="alert">
-                    <i class="fas fa-exclamation-triangle"></i> Please fill out all required fields.
-                </div>   
-                
-                <div id="success-message" class="alert alert-success align-items-center" style="display: none; width: 100%; max-width: 400px;" role="alert">
-                    <i class="fas fa-check-circle"></i> Counterfactuals were generated succefully.
-                </div>
-                <span class="loader" id="cfbtn_loader" style="display: none;"></span>
-                
-                <button class="btn btn-outline-primary mb-2 flex-fill mr-2 run_counterfactual" id="cfbtn" role="button" name="cf">Run Counterfactuals!</button>
-                <button class="btn btn-outline-primary mb-2 flex-fill mr-2" id="cfbtn_check" role="button" style="display: none;">View Counterfactuals</button>
-                
-            </div>
-        </div>
-
         {% if dataset_type == "tabular" %}
             <div class="row" id="cf_results" style="display: none; padding-top: 200px;">
                 <!-- Step 4 Title -->
@@ -597,22 +793,19 @@
             
         {% endif %}
         
-        <div class="row mt-3" id="new_or_load">
-            <div class="col d-flex justify-content-center">
-                <div class="text-center mt-4 d-flex justify-content-center">
-                    <!-- Back to Dataset Selection Button -->
-                    <button id="backToDatasetButton" class="btn btn-view-models mr-3">
-                        <i class="fas fa-arrow-left mr-2"></i> Try another dataset
+        <!-- Navigation -->
+        <div class="container-fluid py-4" id="new_or_load">
+            <div class="row justify-content-center">
+                <div class="col-auto">
+                    <button id="viewPreTrainedButton" class="btn btn-outline-primary">
+                        <i class="fas fa-arrow-left ml-1"></i> View Another Model
                     </button>
-                    
-                    <!-- View Counterfactuals Button -->
-                    <button id="viewPreTrainedButton" class="btn btn-view-models">
-                        View another pre trained model <i class="fas fa-arrow-right ml-2"></i>
+                    <button id="backToDatasetButton" class="btn btn-outline-secondary mr-2">
+                        Try Another Dataset <i class="fas fa-arrow-right ml-1"></i>
                     </button>
                 </div>
             </div>
         </div>
-
     </div>
 </div>
 
@@ -621,5 +814,6 @@
 <script type="module" src="{% static 'js/counterfactuals.js' %}"></script>
 <script type="module" src="{% static 'js/radio_model.js' %}"></script>
 <script src="{% static 'js/features_to_vary.js' %}"></script>
+<script src="{% static 'js/alert.js' %}"></script>
 
 {% endblock content %}
diff --git a/base/templates/base/home.html b/base/templates/base/home.html
index af2a1165c..858262b98 100755
--- a/base/templates/base/home.html
+++ b/base/templates/base/home.html
@@ -439,7 +439,13 @@
                 <h6 class="m-0 font-weight-semibold text-dark">Data</h6>
             </div>
             <div class="card-body">
-                <div class="scrollit table-responsive sticky-top-table" id="df_div"></div>
+                <div class="scrollit table-responsive table table-bordered sticky-top-table" id="df_div">
+                    {% if data_to_display %}
+                        <div id="df_container">
+                            {{ data_to_display|safe }}
+                        </div>
+                    {% endif %}
+                </div>
             </div>
         </div>
     </div>
@@ -450,9 +456,28 @@
             <div class="card-header bg-light py-3 border-bottom">
                 <h6 class="m-0 font-weight-semibold text-dark">Stats</h6>
             </div>
-            <div class="card-body" id="stats_div">
-                <div class="d-flex justify-content-center mb-3" id="selection">
-
+            <div class="card-body" >
+                <div class="d-flex flex-column align-items-stretch" id="stats_div">
+                    {% if data_to_display %}
+                        <div class="d-flex mb-3 " id="selection">
+                            <select class="custom-select mr-2" id="feature1">
+                                {% for feature in features %}
+                                    <option value="{{ feature }}" {% if feature == feature1 %}selected{% endif %}>{{ feature }}</option>
+                                {% endfor %}
+                            </select>
+                            <select class="custom-select mr-2" id="feature2">
+                                {% for feature in features %}
+                                    <option value="{{ feature }}" {% if feature == feature2 %}selected{% endif %}>{{ feature }}</option>
+                                {% endfor %}
+                            </select>
+                            <select class="custom-select" id="label">
+                                {% for label in labels %}
+                                    <option value="{{ label }}" {% if label == curlabel %}selected{% endif %}>{{ label }}</option>
+                                {% endfor %}
+                            </select>
+                        </div>
+                        <div class="plotly_fig" id="stats_container">{{ fig|safe }}</div>
+                    {% endif %}
                 </div>
                 <div class="d-flex justify-content-center">
                     <span class="loader" id="loader_stats" style="display: none;"></span>
@@ -468,7 +493,11 @@
                 <h6 class="m-0 font-weight-semibold text-dark">Confidence</h6>
             </div>
             <div class="card-body">
-                <div id="ts_confidence_div"></div>
+                <div id="ts_confidence_div">
+                    {% if fig1 %}
+                        <div class="plotly_fig" id="ts_confidence_container">{{ fig1|safe }}</div>
+                    {% endif %}
+                </div>
             </div>
         </div>
     </div>
@@ -484,7 +513,11 @@
                 <div class="d-flex justify-content-center">
                     <span class="loader" id="loader_stats" style="display: none;"></span>
                 </div>
-                <div id="ts_stats_div"></div>
+                <div id="ts_stats_div">
+                    {% if fig %}
+                        <div class="plotly_fig" id="ts_stats_container">{{ fig|safe }}</div>
+                    {% endif %}
+                </div>
             </div>
         </div>
     </div>
@@ -499,37 +532,37 @@
                 <h5 class="modal-title" id="labelSelectionModalLabel">Assign Positive and Negative Labels</h5>
             </div>
             <!-- Modal Body -->
-                <div class="modal-body">
-                    {% csrf_token %}
-                    <p class="text-muted">Please assign one label as <strong>Positive</strong> and another as <strong>Negative</strong>.</p>
-                    <!-- Positive Label Dropdown -->
-                    <div class="form-group">
-                        <label for="positive-label" class="font-weight-semibold">Positive Label</label>
-                        <select id="positive-label" class="form-control">
-                            <option value="" disabled selected>Select a positive label</option>
-                            <!-- Options populated dynamically -->
-                        </select>
-                    </div>
-                    <!-- Negative Label Dropdown -->
-                    <div class="form-group mt-3">
-                        <label for="negative-label" class="font-weight-semibold">Negative Label</label>
-                        <select id="negative-label" class="form-control">
-                            <option value="" disabled selected>Select a negative label</option>
-                            <!-- Options populated dynamically -->
-                        </select>
-                    </div>
-                    <!-- Error Message -->
-                    <div id="selection-error" class="alert alert-danger d-none mt-3">
-                        <i class="fas fa-exclamation-triangle"></i> Labels must be different. Please select one positive and one negative label.
-                    </div>
-                    <!-- Loader -->
-                    <div id="loader" class="d-none text-center mt-3">
-                        <div class="spinner-border text-primary" role="status">
-                            <span class="sr-only">Loading...</span>
-                        </div>
-                        <p>Saving your choices...</p>
-                    </div>
+            <div class="modal-body">
+                {% csrf_token %}
+                <p class="text-muted">Please assign one label as <strong>Positive</strong> and another as <strong>Negative</strong>.</p>
+                <!-- Positive Label Dropdown -->
+                <div class="form-group">
+                    <label for="positive-label" class="font-weight-semibold">Positive Label</label>
+                    <select id="positive-label" class="form-control">
+                        <option value="" disabled selected>Select a positive label</option>
+                        <!-- Options populated dynamically -->
+                    </select>
                 </div>
+                <!-- Negative Label Dropdown -->
+                <div class="form-group mt-3">
+                    <label for="negative-label" class="font-weight-semibold">Negative Label</label>
+                    <select id="negative-label" class="form-control">
+                        <option value="" disabled selected>Select a negative label</option>
+                        <!-- Options populated dynamically -->
+                    </select>
+                </div>
+                <!-- Error Message -->
+                <div id="selection-error" class="alert alert-danger d-none mt-3">
+                    <i class="fas fa-exclamation-triangle"></i> Labels must be different. Please select one positive and one negative label.
+                </div>
+                <!-- Loader -->
+                <div id="loader" class="d-none text-center mt-3">
+                    <div class="spinner-border text-primary" role="status">
+                        <span class="sr-only">Loading...</span>
+                    </div>
+                    <p>Saving your choices...</p>
+                </div>
+            </div>
 
             <!-- Modal Footer -->
             <div class="modal-footer">
@@ -539,11 +572,9 @@
     </div>
 </div>
 
-
-{% if dataset_type == "tabular" and df_name and data_to_display %}
+<!-- {% if dataset_type == "tabular" and df_name and data_to_display %}
 
     <div class="row mb-4">
-        <!-- Data Card with Original ID -->
         <div class="col-lg-6" id="df_cached">
             <div class="card border-0 shadow-sm h-100 animate-card">
                 <div class="card-header bg-light py-3 border-bottom">
@@ -555,7 +586,6 @@
             </div>
         </div>
 
-        <!-- Stats Card with Original ID -->
         <div class="col-lg-6" id="df_stats_cached">
             <div class="card border-0 shadow-sm h-100 animate-card">
                 <div class="card-header bg-light py-3 border-bottom">
@@ -595,7 +625,7 @@
             <div class="text-center mt-4">
                 <button id="viewModelsButton" class="btn btn-view-models">
                     View Pre-trained Models
-                    <i class="fas fa-arrow-right ml-2"></i> <!-- Font Awesome icon for added appeal -->
+                    <i class="fas fa-arrow-right ml-2"></i> 
                 </button>
             </div>
         </div>
@@ -604,7 +634,6 @@
 {% elif dataset_type == "timeseries" %}
 
     <div class="row mb-4">
-        <!-- Confidence Interval Card with Original ID -->
         <div class="col-lg-6" id="ts_confidence_cached">
             <div class="card border-0 shadow-sm h-100 animate-card">
                 <div class="card-header bg-light py-3 border-bottom">
@@ -616,7 +645,6 @@
             </div>
         </div>
 
-        <!-- Sample Analysis Card with Original ID -->
         <div class="col-lg-6" id="ts_stats_cached">
             <div class="card border-0 shadow-sm h-100 animate-card">
                 <div class="card-header bg-light py-3 border-bottom">
@@ -634,23 +662,25 @@
             <div class="text-center mt-4">
                 <button id="viewPreTrainedButton" class="btn btn-view-models">
                     View Pre-trained Models
-                    <i class="fas fa-arrow-right ml-2"></i> <!-- Font Awesome icon for added appeal -->
+                    <i class="fas fa-arrow-right ml-2"></i>
                 </button>
             </div>
         </div>
     </div>
 
-{% endif %}
+{% endif %} -->
+
 <!-- Loader -->
 <div class="d-flex justify-content-center">
     <span class="loader" id="loader_ds" style="display: none;"></span>
 </div>
-<div class="row mt-3" id="new_or_load" style="display:none;">
-    <div class="col d-flex justify-content-center">
-        <div class="text-center mt-4">
-            <button id="viewPreTrainedButton" class="btn btn-view-models">
+
+<div class="container-fluid py-4" id="new_or_load">
+    <div class="row justify-content-center">
+        <div class="col-auto">
+            <button id="viewPreTrainedButton" class="btn btn-outline-primary">
                 View Pre-trained Models
-                <i class="fas fa-arrow-right ml-2"></i> <!-- Font Awesome icon for added appeal -->
+                <i class="fas fa-arrow-right mr-1"></i> <!-- Font Awesome icon for added appeal -->
             </button>
         </div>
     </div>
diff --git a/base/templates/base/home_template.html b/base/templates/base/home_template.html
new file mode 100644
index 000000000..72ff3b008
--- /dev/null
+++ b/base/templates/base/home_template.html
@@ -0,0 +1,662 @@
+{% extends 'main.html' %}
+{% block content %} 
+{% load static %}
+
+
+<!-- Main Content -->
+<div id="content">
+
+ <!-- Intro Section -->
+ <div id="home_intro" class="intro-section py-5 text-center position-relative">
+    <div class="container">
+        <!-- Animated Background Graphics -->
+        <div class="background-shape shape-1"></div>
+        <div class="background-shape shape-2"></div>
+
+        <!-- Main Heading -->
+        <div class="intro-content position-relative">
+            <div class="logos d-flex justify-content-center align-items-center mb-4 fade-in">
+                <img src="{% static 'img/su_logo.png' %}" alt="Stockholm University Logo" class="logo su-logo mx-3">
+                <img src="{% static 'img/digital_features.png' %}" alt="Digital Features Logo" class="logo df-logo mx-3">
+            </div>
+            <h1 class="display-4 text-dark mb-4 fade-in">
+                Welcome to the <a href="https://datascience.dsv.su.se/projects/extremum.html" target="_blank" class="text-primary">Extremum Dashboard</a>
+            </h1>
+            <p class="lead text-muted fade-in mx-auto" style="max-width: 800px;">
+                Your gateway to exploring health informatics and time-series datasets with ease.
+            </p>
+        </div>
+    </div>
+</div>
+
+
+
+    <div class="about-project-section py-5 position-relative">
+        <div class="container" style="padding-top:250px;">
+            <!-- Main Section with Split Layout -->
+            <div class="about-dashboard-section py-5 bg-light position-relative">
+                <div class="container">
+                    <div class="row align-items-center">
+                        <!-- Left Column: Image -->
+                        <div class="col-md-6 text-center">
+                            <img src="https://datascience.dsv.su.se/img/logo/dsgroup.png"
+                                 alt="Extremum Dashboard Visualization" 
+                                 class="img-fluid rounded shadow-lg fade-in" 
+                                 style="max-height: 300px;" 
+                                 loading="lazy">
+                        </div>
+            
+                        <!-- Right Column: Text Content -->
+                        <div class="col-md-6">
+                            <div class="content-box px-4">
+                                <h2 class="h4 text-primary mb-3 fade-in">The Extremum Dashboard</h2>
+                                <p class="text-muted fade-in">
+                                    The <strong>Extremum Dashboard</strong>, developed by <strong>Stockholm University</strong>, is a cornerstone of the 
+                                    <a href="https://datascience.dsv.su.se/projects/extremum.html" 
+                                       target="_blank" 
+                                       class="text-primary">EXTREMUM project</a>. This interactive platform merges cutting-edge AI and ethical considerations to drive transformative insights in healthcare.
+                                </p>
+            
+                                <ul class="list-unstyled mt-4 fade-in">
+                                    <li class="mb-3 d-flex align-items-start">
+                                        <i class="fas fa-layer-group text-primary fa-lg mr-3"></i>
+                                        <div>
+                                            <strong>Unified Data Representation:</strong> 
+                                            Integrates diverse medical datasets for seamless analysis.
+                                        </div>
+                                    </li>
+                                    <li class="mb-3 d-flex align-items-start">
+                                        <i class="fas fa-brain text-success fa-lg mr-3"></i>
+                                        <div>
+                                            <strong>Explainable Predictive Models:</strong> 
+                                            Builds interpretable and reliable AI solutions.
+                                        </div>
+                                    </li>
+                                    <li class="d-flex align-items-start">
+                                        <i class="fas fa-balance-scale text-warning fa-lg mr-3"></i>
+                                        <div>
+                                            <strong>Ethical Compliance:</strong> 
+                                            Ensures AI development aligns with legal and moral standards.
+                                        </div>
+                                    </li>
+                                </ul>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+
+            <div class="container">
+                <div class="row align-items-center">
+                    <div class="col-md-6">
+                        <div class="content-box px-4">
+                            <h2 class="h4 text-primary mb-3 fade-in">The EXTREMUM Project</h2>
+                            <p class="text-muted fade-in">
+                                The <strong>EXTREMUM Project</strong> focuses on developing explainable machine learning platforms for healthcare. It targets two primary applications:
+                            </p>
+                    
+                            <ul class="list-unstyled mt-4 fade-in">
+                                <li class="mb-3 d-flex align-items-start">
+                                    <i class="fas fa-heartbeat text-danger fa-lg mr-3"></i>
+                                    <div>
+                                        <strong>Adverse Drug Event Detection:</strong> 
+                                        Advanced techniques to identify and analyze drug-related adverse events.
+                                    </div>
+                                </li>
+                                <li class="d-flex align-items-start">
+                                    <i class="fas fa-stethoscope text-info fa-lg mr-3"></i>
+                                    <div>
+                                        <strong>Cardiovascular Disease Detection:</strong> 
+                                        Tools to improve early detection and treatment outcomes.
+                                    </div>
+                                </li>
+                            </ul>
+                    
+                            <p class="text-muted fade-in">
+                                By integrating data sources, building interpretable models, and adhering to ethical principles, the project drives advancements in AI-driven healthcare solutions.
+                            </p>
+                    
+                            <div class="mt-4 text-center">
+                                <a href="https://datascience.dsv.su.se/projects/extremum.html" target="_blank" class="btn btn-outline-primary rounded-pill px-4 fade-in">
+                                    Learn More <i class="fas fa-chevron-right ml-2"></i>
+                                </a>
+                            </div>
+                        </div>
+                    </div>
+                    
+                    <div class="col-md-6 text-center">
+                        <img src="{% static 'img/heart.jpg' %}" alt="Digital Features Logo" style="max-height: 300px;" class="logo df-logo mx-3 img-fluid rounded shadow-lg fade-in" >
+
+                    </div>
+                </div>
+            </div>
+
+            <!-- Feature Carousel Section -->
+            <div class="feature-carousel py-5 bg-light mt-5 fade-in">
+                <div class="container">
+                    <h3 class="h4 text-dark text-center mb-4">Key Innovations in Extremum Dashboard</h3>
+                    <p class="text-muted text-center mx-auto mb-5" style="max-width: 700px;">
+                        Discover the powerful tools and methodologies developed under the EXTREMUM project, designed to revolutionize explainable AI for healthcare applications.
+                    </p>
+                    <div id="carouselFeatures" class="carousel slide" data-ride="carousel" data-interval="5000" data-pause="hover">
+                        <ol class="carousel-indicators">
+                            <li data-target="#carouselFeatures" data-slide-to="0" class="active" tabindex="0" aria-label="Feature 1"></li>
+                            <li data-target="#carouselFeatures" data-slide-to="1" tabindex="0" aria-label="Feature 2"></li>
+                        </ol>
+
+                        <div class="carousel-inner">
+                            <div class="carousel-item active">
+                                <div class="feature-card p-5 shadow rounded text-center">
+                                    <i class="fas fa-wave-square text-info fa-3x mb-4"></i>
+                                    <h5 class="text-dark">Wildboar</h5>
+                                    <p class="text-muted">
+                                        Created by <strong>Isak Samsten</strong>, Wildboar is a Python library for temporal machine learning, offering tools for classification, regression, and explainability.
+                                    </p>
+                                    <a href="https://github.com/wildboar-foundation/wildboar" target="_blank" class="btn btn-primary rounded-pill px-4 py-2 mt-3">
+                                        Learn More <i class="fas fa-external-link-alt ml-2"></i>
+                                    </a>
+                                </div>
+                            </div>
+
+                            <div class="carousel-item">
+                                <div class="feature-card p-5 shadow rounded text-center">
+                                    <i class="fas fa-snowflake text-primary fa-3x mb-4"></i>
+                                    <h5 class="text-dark">Glacier</h5>
+                                    <p class="text-muted">
+                                        Developed by <strong>Zhendong Wang</strong>, Glacier generates counterfactual explanations for time series classification, ensuring realistic and interpretable results.
+                                    </p>
+                                    <a href="https://github.com/zhendong3wang/learning-time-series-counterfactuals" target="_blank" class="btn btn-primary rounded-pill px-4 py-2 mt-3">
+                                        Learn More <i class="fas fa-external-link-alt ml-2"></i>
+                                    </a>
+                                </div>
+                            </div>
+                        </div>
+
+                        <a class="carousel-control-prev" href="#carouselFeatures" role="button" data-slide="prev">
+                            <span class="carousel-control-prev-icon bg-dark rounded-circle p-2" aria-hidden="true"></span>
+                            <span class="sr-only">Previous</span>
+                        </a>
+                        <a class="carousel-control-next" href="#carouselFeatures" role="button" data-slide="next">
+                            <span class="carousel-control-next-icon bg-dark rounded-circle p-2" aria-hidden="true"></span>
+                            <span class="sr-only">Next</span>
+                        </a>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+    <!-- Call to Action Section -->
+    <div class="separator-section py-5 text-center bg-light">
+        <div class="container">
+            <h3 class="h5 text-dark mb-4 fade-in">Ready to start your journey?</h3>
+            <button class="btn btn-outline-primary fade-in" onclick="document.getElementById('dataset_selection').scrollIntoView({behavior: 'smooth'})">
+                Explore Datasets <i class="fas fa-arrow-down ml-2"></i>
+            </button>
+        </div>
+    </div>
+
+<!-- Combined Heading and Button Group for Dataset Selection -->
+<style>
+    /* Section Styling */
+    .dataset-section {
+        padding: 100px 20px;
+        background-color: #f8f9fa;
+        text-align: center;
+    }
+
+    .dataset-section h2 {
+        font-size: 1.5rem;
+        font-weight: 600;
+        color: #333;
+        margin-bottom: 1rem;
+    }
+
+    .dataset-section p {
+        font-size: 0.95rem;
+        color: #666;
+        margin-bottom: 2rem;
+        max-width: 600px;
+        margin: 0 auto;
+        line-height: 1.5;
+    }
+
+    /* Button Styling */
+    .btn-dataset {
+        font-size: 1rem;
+        font-weight: 500;
+        border: 1px solid #ccc;
+        color: #333;
+        background-color: white;
+        border-radius: 5px;
+        padding: 12px 20px;
+        margin: 10px;
+        transition: all 0.2s ease;
+        width: 200px;
+    }
+
+    .btn-dataset:hover {
+        border-color: #007bff;
+        color: #007bff;
+    }
+
+    .btn-dataset.active {
+        background-color: #007bff;
+        color: white;
+        border-color: #007bff;
+    }
+
+    /* Responsive Alignment */
+    .dataset-section .row {
+        justify-content: center;
+        gap: 1rem;
+    }
+
+    @media (max-width: 768px) {
+        .btn-dataset {
+            width: 180px;
+            padding: 10px 15px;
+        }
+    }
+</style>
+
+<div class="dataset-section" style="padding-top:300px;">
+    <!-- Title -->
+    <h2 id="dataset_selection">Choose Your Dataset</h2>
+    <p>
+        Select a dataset to visualize its graphs and perform advanced operations like using pre-trained models 
+        or computing counterfactuals. Your choice will be used throughout the session.
+    </p>
+
+    <!-- Dataset Selection Buttons -->
+    <div class="row">
+        {% csrf_token %}
+
+        <!-- Breast Cancer Dataset -->
+        <button type="button" class="btn btn-dataset {% if df_name == 'breast-cancer' %}active{% endif %}" id="breast-cancer">
+            Breast Cancer
+        </button>
+
+        <!-- Stroke Dataset -->
+        <button type="button" class="btn btn-dataset {% if df_name == 'stroke' %}active{% endif %}" id="stroke">
+            Stroke
+        </button>
+
+        <!-- Timeseries Dataset -->
+        <button type="button" class="btn btn-dataset {% if dataset_type == 'timeseries' %}active{% endif %}" id="timeseries">
+            Timeseries
+        </button>
+
+        <!-- Upload Dataset (Optional) -->
+        <!-- Uncomment if needed
+        <button type="button" class="btn btn-dataset {% if upload == 1 %}active{% endif %}" id="upload">
+            Upload Dataset
+        </button>
+        -->
+    </div>
+</div>
+
+
+<!-- Upload Form Section -->
+<!-- <div class="row justify-content-center">
+    <div class="col-xl-5 col-lg-6" id="upload_col" {% if upload %} style="display: block;" {% else %} style="display: none;" {% endif %}>
+        <div class="card shadow-sm border-0 animate-card">
+            <div class="card-header bg-primary text-muted d-flex align-items-center">
+                <h6 class="mb-0">Upload Dataset</h6>
+                <i class="fas fa-upload ml-auto"></i>
+            </div>
+            <div class="card-body bg-light">
+                <div class="row">
+                    <div class="col-md-7 mb-4">
+                        <form id="csv_form" method="POST" enctype="multipart/form-data">
+                            {% csrf_token %}
+                            
+                            <fieldset class="form-group mb-4">
+                                <legend class="col-form-label small text-secondary font-weight-semibold">Data Type</legend>
+                                <div class="form-check">
+                                    <input class="form-check-input" type="radio" name="dataset_type" id="tabular" value="tabular" required>
+                                    <label class="form-check-label" for="tabular">Tabular</label>
+                                </div>
+                                <div class="form-check">
+                                    <input class="form-check-input" type="radio" name="dataset_type" id="timeseries" value="timeseries" required>
+                                    <label class="form-check-label" for="timeseries">Timeseries</label>
+                                </div>
+                            </fieldset>
+                
+                            <div class="form-group mb-4">
+                                <label class="small text-secondary font-weight-semibold" for="doc">Select File</label>
+                                <input class="form-control-file" type="file" id="doc" name="excel_file" required>
+                                <small class="text-muted d-block mt-1">Supported format: CSV</small>
+                            </div>
+                
+                            <div class="form-group d-flex align-items-center w-100">
+                                <input class="btn btn-primary btn-sm mr-3" type="submit" value="Upload" id="upload_btn">
+                                
+                                <div class="loader" id="cfbtn_loader" style="display: none; margin-left: 5px;">
+                                    <i class="fas fa-spinner fa-spin"></i>
+                                </div>
+                                
+                                <div id="success-message" class="alert alert-success custom-alert d-none ml-3 mb-0" role="alert">
+                                    <i class="fas fa-check-circle"></i>
+                                    <span class="ml-2">File uploaded successfully.</span>
+                                    <button type="button" class="close ml-auto p-0" aria-label="Close" onclick="hideSuccessMessage();">
+                                        <span aria-hidden="true">&times;</span>
+                                    </button>
+                                </div>
+                            </div>
+                        </form>
+                    </div>
+                
+                    <div class="col-md-5 mb-5">
+                        <fieldset class="form-group mb-4">
+                            <legend class="col-form-label small text-secondary font-weight-semibold">Uploaded Files</legend>
+                            {% if uploaded_files %}
+                                <fieldset class="form-group" id="radio_buttons">
+                                    {% for uploaded_file in uploaded_files %}
+                                        <div class="form-check mb-2 d-flex align-items-center">
+                                            <input class="form-check-input mr-2" type="radio" {% if df_name == uploaded_file %} checked {% endif %} name="uploaded_file" id="element_{{ forloop.counter }}" value="{{ uploaded_file }}" required>
+                                            <label class="form-check-label mr-auto" for="element_{{ forloop.counter }}">{{ uploaded_file }}</label>
+                                            <button type="button" class="delete-file-icon p-0 ml-2 text-muted close" data-file="{{ uploaded_file }}" data-file-value="{{uploaded_file}}" aria-label="Delete {{ uploaded_file }}">
+                                                <span aria-hidden="true">&times;</span>
+                                            </button>
+                                        </div>
+                                    {% endfor %}
+                                </fieldset>
+                            {% else %}
+                                <p class="small text-muted">No files uploaded yet. Please upload a dataset to select it here.</p>
+                            {% endif %}
+                        </fieldset>
+                    </div>
+                </div>
+            </div>
+            <div class="card-footer bg-white text-center">
+                <small class="text-muted">Manage your datasets effectively. Ensure data is accurate and up-to-date.</small>
+            </div>
+        </div>
+    </div>
+</div> -->
+
+<!-- Minimal Delete Confirmation Modal -->
+<div class="modal fade" id="deleteFileModal" tabindex="-1" role="dialog" aria-labelledby="deleteFileModalLabel" aria-hidden="true">
+    <div class="modal-dialog modal-dialog-centered" role="document">
+        <div class="modal-content border-0 shadow-sm">
+            <div class="modal-header border-0">
+                <h6 class="modal-title text-danger" id="deleteFileModalLabel">Confirm Deletion</h6>
+                <button type="button" class="close text-muted" data-dismiss="modal" aria-label="Close" style="font-size: 1.2rem;">
+                    &times;
+                </button>
+            </div>
+            <div class="modal-body text-center py-3">
+                <p class="mb-1">Delete <span id="fileToDeleteName" class="font-weight-bold"></span>?</p>
+                <small class="text-muted">This action is permanent.</small>
+            </div>
+            <div class="modal-footer justify-content-center border-0">
+                <button type="button" class="custom-btn-secondary" data-dismiss="modal">Cancel</button>
+                <button type="button" class="custom-btn-danger" id="confirmDeleteButton">Delete</button>
+            </div>
+        </div>
+    </div>
+</div>
+<!-- Timeseries Dataset Selection -->
+<div class="row justify-content-center">
+    <div class="col-lg-5" {% if dataset_type != "timeseries" %} style="display:none;" {% endif %} id="timeseries-datasets">
+        <div class="card border-0 shadow-sm mb-3 animate-card"> 
+            <div class="card-body">
+                {% csrf_token %}
+                <fieldset class="form-group">
+                    <legend class="h6 mb-4 text-muted">Select a Timeseries Dataset</legend>
+                    <div class="form-check mb-2">
+                        <input class="form-check-input" type="radio" name="timeseries_dataset" id="two-lead-ecg" value="two-lead-ecg" {% if df_name == "two-lead-ecg" %} checked {% endif %}>
+                        <label class="form-check-label" for="two-lead-ecg">Two lead ECG</label>
+                    </div>
+                    <div class="form-check mb-2">
+                        <input class="form-check-input" type="radio" name="timeseries_dataset" id="gun-point" value="gun-point" {% if df_name == "gun-point" %} checked {% endif %}>
+                        <label class="form-check-label" for="gun-point">Gun Point</label>
+                    </div>
+                    <div class="form-check mb-2">
+                        <input class="form-check-input" type="radio" name="timeseries_dataset" id="ecg-five-days" value="ecg-five-days" {% if df_name == "ecg-five-days" %} checked {% endif %}>
+                        <label class="form-check-label" for="ecg-five-days">ECG Five Days</label>
+                    </div>
+                    <div class="form-check mb-2">
+                        <input class="form-check-input" type="radio" name="timeseries_dataset" id="italy-power-demand" value="italy-power-demand" {% if df_name == "italy-power-demand" %} checked {% endif %}>
+                        <label class="form-check-label" for="italy-power-demand">Italy Power Demand</label>
+                    </div>
+                    <div class="form-check">
+                        <input class="form-check-input" type="radio" name="timeseries_dataset" id="ford-a" value="ford-a" {% if df_name == "ford-a" %} checked {% endif %}>
+                        <label class="form-check-label" for="ford-a">Ford-A</label>
+                    </div>
+                </fieldset>    
+            </div>
+        </div>
+    </div>
+</div>
+
+<!-- Data and Stats Display -->
+<div class="row mb-4">
+    <!-- Data Section -->
+    <div class="col-lg-6" id="df" style="display: none;">
+        <div class="card border-0 shadow-sm h-100 animate-card">
+            <div class="card-header bg-light py-3 border-bottom">
+                <h6 class="m-0 font-weight-semibold text-dark">Data</h6>
+            </div>
+            <div class="card-body">
+                <div class="scrollit table-responsive sticky-top-table" id="df_div"></div>
+            </div>
+        </div>
+    </div>
+
+    <!-- Stats Section -->
+    <div class="col-lg-6" id="df_stats" style="display: none;">
+        <div class="card border-0 shadow-sm h-100 animate-card-delay">
+            <div class="card-header bg-light py-3 border-bottom">
+                <h6 class="m-0 font-weight-semibold text-dark">Stats</h6>
+            </div>
+            <div class="card-body" id="stats_div">
+                <div class="d-flex justify-content-center mb-3" id="selection">
+
+                </div>
+                <div class="d-flex justify-content-center">
+                    <span class="loader" id="loader_stats" style="display: none;"></span>
+                </div>
+            </div>
+        </div>
+    </div>
+
+    <!-- Timeseries Confidence and Stats -->
+    <div class="col-lg-6" id="ts_confidence" style="display: none;">
+        <div class="card border-0 shadow-sm h-100 animate-card">
+            <div class="card-header bg-light py-3 border-bottom">
+                <h6 class="m-0 font-weight-semibold text-dark">Confidence</h6>
+            </div>
+            <div class="card-body">
+                <div id="ts_confidence_div"></div>
+            </div>
+        </div>
+    </div>
+
+    <!-- Timeseries Stats Section -->
+    <div class="col-lg-6" id="ts_stats" style="display: none;">
+        <div class="card border-0 shadow-sm h-100 animate-card-delay">
+            <div class="card-header bg-light py-3 border-bottom">
+                <h6 class="m-0 font-weight-semibold text-dark">Stats</h6>
+            </div>
+            <div class="card-body">
+                <div class="d-flex justify-content-center mb-3" id="selection"></div>
+                <div class="d-flex justify-content-center">
+                    <span class="loader" id="loader_stats" style="display: none;"></span>
+                </div>
+                <div id="ts_stats_div"></div>
+            </div>
+        </div>
+    </div>
+</div>
+
+<!-- Modal Window -->
+<div class="modal fade" id="labelSelectionModal" tabindex="-1" aria-labelledby="labelSelectionModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="false">
+    <div class="modal-dialog modal-dialog-centered">
+        <div class="modal-content">
+            <!-- Modal Header -->
+            <div class="modal-header">
+                <h5 class="modal-title" id="labelSelectionModalLabel">Assign Positive and Negative Labels</h5>
+            </div>
+            <!-- Modal Body -->
+            <div class="modal-body">
+                {% csrf_token %}
+                <p class="text-muted">Please assign one label as <strong>Positive</strong> and another as <strong>Negative</strong>.</p>
+                <!-- Positive Label Dropdown -->
+                <div class="form-group">
+                    <label for="positive-label" class="font-weight-semibold">Positive Label</label>
+                    <select id="positive-label" class="form-control">
+                        <option value="" disabled selected>Select a positive label</option>
+                        <!-- Options populated dynamically -->
+                    </select>
+                </div>
+                <!-- Negative Label Dropdown -->
+                <div class="form-group mt-3">
+                    <label for="negative-label" class="font-weight-semibold">Negative Label</label>
+                    <select id="negative-label" class="form-control">
+                        <option value="" disabled selected>Select a negative label</option>
+                        <!-- Options populated dynamically -->
+                    </select>
+                </div>
+                <!-- Error Message -->
+                <div id="selection-error" class="alert alert-danger d-none mt-3">
+                    <i class="fas fa-exclamation-triangle"></i> Labels must be different. Please select one positive and one negative label.
+                </div>
+                <!-- Loader -->
+                <div id="loader" class="d-none text-center mt-3">
+                    <div class="spinner-border text-primary" role="status">
+                        <span class="sr-only">Loading...</span>
+                    </div>
+                    <p>Saving your choices...</p>
+                </div>
+            </div>
+
+            <!-- Modal Footer -->
+            <div class="modal-footer">
+                <button type="button" class="btn btn-primary" id="save-label-choices">Save Choices</button>
+            </div>
+        </div>
+    </div>
+</div>
+
+
+{% if dataset_type == "tabular" and df_name and data_to_display %}
+
+    <div class="row mb-4">
+        <!-- Data Card with Original ID -->
+        <div class="col-lg-6" id="df_cached">
+            <div class="card border-0 shadow-sm h-100 animate-card">
+                <div class="card-header bg-light py-3 border-bottom">
+                    <h6 class="m-0 font-weight-semibold text-dark">Data</h6>
+                </div>
+                <div class="card-body">
+                    <div class="scrollit table-responsive table table-bordered sticky-top-table" id="df_div">{{ data_to_display|safe }}</div>
+                </div>
+            </div>
+        </div>
+
+        <!-- Stats Card with Original ID -->
+        <div class="col-lg-6" id="df_stats_cached">
+            <div class="card border-0 shadow-sm h-100 animate-card">
+                <div class="card-header bg-light py-3 border-bottom">
+                    <h6 class="m-0 font-weight-semibold text-dark">Stats</h6>
+                </div>
+                <div class="card-body">
+                    <div class="d-flex flex-column align-items-stretch" id="stats_div_cached">
+                        <div class="d-flex mb-3" id="selection_cached">
+                            <select class="custom-select mr-2" id="feature1_cached">
+                                {% for feature in features %}
+                                    <option value="{{ feature }}" {% if feature == feature1 %}selected{% endif %}>{{ feature }}</option>
+                                {% endfor %}
+                            </select>
+                            <select class="custom-select mr-2" id="feature2_cached">
+                                {% for feature in features %}
+                                    <option value="{{ feature }}" {% if feature == feature2 %}selected{% endif %}>{{ feature }}</option>
+                                {% endfor %}
+                            </select>
+                            <select class="custom-select" id="label_cached">
+                                {% for label in labels %}
+                                    <option value="{{ label }}" {% if label == curlabel %}selected{% endif %}>{{ label }}</option>
+                                {% endfor %}
+                            </select>
+                        </div>
+                        <div class="plotly_fig" id="stats_container_cached">{{ fig|safe }}</div>
+                        <div class="d-flex justify-content-center mt-3">
+                            <span class="loader" id="loader_stats_cached" style="display: none;"></span>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+
+    <div class="row mt-3" id="new_or_load_cached">
+        <div class="col d-flex justify-content-center">
+            <div class="text-center mt-4">
+                <button id="viewModelsButton" class="btn btn-view-models">
+                    View Pre-trained Models
+                    <i class="fas fa-arrow-right ml-2"></i> <!-- Font Awesome icon for added appeal -->
+                </button>
+            </div>
+        </div>
+    </div>
+
+{% elif dataset_type == "timeseries" %}
+
+    <div class="row mb-4">
+        <!-- Confidence Interval Card with Original ID -->
+        <div class="col-lg-6" id="ts_confidence_cached">
+            <div class="card border-0 shadow-sm h-100 animate-card">
+                <div class="card-header bg-light py-3 border-bottom">
+                    <h6 class="m-0 font-weight-semibold text-dark">Confidence Interval</h6>
+                </div>
+                <div class="card-body">
+                    <div class="plotly_fig" id="ts_confidence_container_cached">{{ fig1|safe }}</div>
+                </div>
+            </div>
+        </div>
+
+        <!-- Sample Analysis Card with Original ID -->
+        <div class="col-lg-6" id="ts_stats_cached">
+            <div class="card border-0 shadow-sm h-100 animate-card">
+                <div class="card-header bg-light py-3 border-bottom">
+                    <h6 class="m-0 font-weight-semibold text-dark">Samples</h6>
+                </div>
+                <div class="card-body">
+                    <div class="plotly_fig" id="ts_stats_container_cached">{{ fig|safe }}</div>
+                </div>
+            </div>
+        </div>
+    </div>
+
+    <div class="row mt-3" id="new_or_load_cached">
+        <div class="col d-flex justify-content-center">
+            <div class="text-center mt-4">
+                <button id="viewPreTrainedButton" class="btn btn-view-models">
+                    View Pre-trained Models
+                    <i class="fas fa-arrow-right ml-2"></i> <!-- Font Awesome icon for added appeal -->
+                </button>
+            </div>
+        </div>
+    </div>
+
+{% endif %}
+<!-- Loader -->
+<div class="d-flex justify-content-center">
+    <span class="loader" id="loader_ds" style="display: none;"></span>
+</div>
+<div class="row mt-3" id="new_or_load" style="display:none;">
+    <div class="col d-flex justify-content-center">
+        <div class="text-center mt-4">
+            <button id="viewPreTrainedButton" class="btn btn-view-models">
+                View Pre-trained Models
+                <i class="fas fa-arrow-right ml-2"></i> <!-- Font Awesome icon for added appeal -->
+            </button>
+        </div>
+    </div>
+</div>
+
+<!-- JavaScript -->
+<script type="module" src="{% static 'js/home.js' %}"></script>
+
+{% endblock content%}
diff --git a/base/views.py b/base/views.py
index 4c9e92b56..6188b3b55 100755
--- a/base/views.py
+++ b/base/views.py
@@ -1,6 +1,5 @@
 from django.shortcuts import render
 import base.pipeline as pipeline
-from dict_and_html import *
 from . import methods
 from .methods import PIPELINE_PATH
 import random
diff --git a/extremum/settings.py b/extremum/settings.py
index 143df1f79..53419c87e 100755
--- a/extremum/settings.py
+++ b/extremum/settings.py
@@ -23,9 +23,9 @@ BASE_DIR = Path(__file__).resolve().parent.parent
 SECRET_KEY = os.environ.get('SECRET_KEY', "changeme")
 
 # DEBUG setting
-DEBUG = bool(int(os.environ('DEBUG', 0)))
+DEBUG = bool(int(os.environ.get('DEBUG', 0)))
 
-ALLOWED_HOSTS = []
+ALLOWED_HOSTS = ["127.0.0.1"]
 ALLOWED_HOSTS_ENV = os.environ.get('ALLOWED_HOSTS')
 if ALLOWED_HOSTS_ENV :
     ALLOWED_HOSTS.extend(ALLOWED_HOSTS_ENV.split(','))
@@ -47,8 +47,6 @@ INSTALLED_APPS = [
     "django.contrib.messages",
     "django.contrib.staticfiles",
     "base.apps.BaseConfig",
-    "bootstrap5",
-    "django_htmx",
 ]
 
 MIDDLEWARE = [
@@ -60,7 +58,6 @@ MIDDLEWARE = [
     "django.contrib.auth.middleware.AuthenticationMiddleware",
     "django.contrib.messages.middleware.MessageMiddleware",
     "django.middleware.clickjacking.XFrameOptionsMiddleware",
-    "django_htmx.middleware.HtmxMiddleware",
 ]
 
 ROOT_URLCONF = "extremum.urls"
@@ -81,7 +78,7 @@ TEMPLATES = [
     },
 ]
 
-WSGI_APPLICATION = "extremum.wsgi.application"
+# WSGI_APPLICATION = "extremum.wsgi.application"
 
 
 # Database
@@ -121,17 +118,22 @@ AUTH_PASSWORD_VALIDATORS = [
 # Static files (CSS, JavaScript, Images)
 # https://docs.djangoproject.com/en/5.0/howto/static-files/
 
-STATIC_URL = "/static/static"
-STATICFILES_DIRS = [BASE_DIR / "base/static"]
+# Static files (CSS, JavaScript, Images)
+STATIC_URL = "/static/"
 
-MEDIA_URL = "/static/media"
+# Directory for collecting all static files (for production)
+STATIC_ROOT = BASE_DIR / "staticfiles"
 
-STATIC_ROOT = BASE_DIR / 'vol/web/static'  # Define where static files are collected
-MEDIA_ROOT = BASE_DIR / 'vol/web/media'  # Define where static files are collected
+# Directories containing your static files (development)
+STATICFILES_DIRS = [
+    BASE_DIR / "base/static",
+]
 
-# Default primary key field type
-# https://docs.djangoproject.com/en/5.0/ref/settings/#default-auto-field
+# Media files (user-uploaded content)
+MEDIA_URL = "/media/"
+MEDIA_ROOT = BASE_DIR / "vol/web/media"
 
+# Whitenoise settings (optional, for improved static file serving)
 STATICFILES_STORAGE = "whitenoise.storage.CompressedManifestStaticFilesStorage"
 
 DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
\ No newline at end of file
diff --git a/manage.py b/manage.py
index c454d17e5..e4e0040a5 100755
--- a/manage.py
+++ b/manage.py
@@ -6,7 +6,7 @@ import sys
 
 def main():
     """Run administrative tasks."""
-    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'extremum_web.settings')
+    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'extremum.settings')
     try:
         from django.core.management import execute_from_command_line
     except ImportError as exc:
diff --git a/notes b/notes
index cd5eb2dad..8bbe42ddf 100644
--- a/notes
+++ b/notes
@@ -1,4 +1,7 @@
 Notes for extremum web
 
 1) deactivate training 
-2) deactivate uploading
\ No newline at end of file
+2) deactivate uploading
+
+1/7/2025
+fixed some bags on home.js for radio buttons. Have not pushed them yet due to conflict
\ No newline at end of file
diff --git a/proxy/default.conf b/proxy/default.conf
deleted file mode 100644
index 91fe085b2..000000000
--- a/proxy/default.conf
+++ /dev/null
@@ -1,12 +0,0 @@
-server {
-    listen 8080;
-
-    location /static {
-        alias /vol/static;
-    }
-
-    location / {
-        uwsgi_pass app:8000;
-        include /etc/nginx/uwsgi_params;
-    }
-}
\ No newline at end of file
diff --git a/proxy/uwsgi_params b/proxy/uwsgi_params
deleted file mode 100644
index 4f3b520fe..000000000
--- a/proxy/uwsgi_params
+++ /dev/null
@@ -1,13 +0,0 @@
-uwsgi_param QUERY_STRING $query_string;
-uwsgi_param REQUEST_METHOD $request_method;
-uwsgi_param CONTENT_TYPE $content_type;
-uwsgi_param CONTENT_LENGTH $content_length;
-uwsgi_param REQUEST_URI $request_uri;
-uwsgi_param PATH_INFO $document_uri;
-uwsgi_param DOCUMENT_ROOT $document_root;
-uwsgi_param SERVER_PROTOCOL $server_protocol;
-uwsgi_param REMOTE_ADDR $remote_addr;
-uwsgi_param REMOTE_PORT $remote_port;
-uwsgi_param SERVER_ADDR $server_addr;
-uwsgi_param SERVER_PORT $server_port;
-uwsgi_param SERVER_NAME $server_name;
\ No newline at end of file
diff --git a/requirements.txt b/requirements.txt
index 0ab28d683..5d074d0c4 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,3 @@
-<<<<<<< HEAD
 dice_ml==0.11
 dict_and_html==1.0.11
 Django==4.2.13
@@ -15,243 +14,4 @@ scipy==1.14.1
 stumpy==1.13.0
 tensorflow==2.9.1
 wildboar==1.2.0
-xgboost==2.1.3
-=======
-absl-py==2.1.0
-alembic==1.13.2
-anyio==4.4.0
-argon2-cffi==23.1.0
-argon2-cffi-bindings==21.2.0
-args==0.1.0
-arrow==1.3.0
-asgiref==3.8.1
-asttokens==2.4.1
-astunparse==1.6.3
-async-lru==2.0.4
-async-timeout==4.0.3
-attrs==23.2.0
-autobahn==23.6.2
-Automat==22.10.0
-autopage==0.5.2
-Babel==2.15.0
-beautifulsoup4==4.12.3
-bleach==6.1.0
-blinker==1.8.2
-cachetools==5.4.0
-certifi==2024.6.2
-cffi==1.16.0
-channels==4.1.0
-channels-redis==4.2.0
-charset-normalizer==3.3.2
-click==8.1.7
-cliff==4.7.0
-clint==0.5.1
-cmaes==0.10.0
-cmd2==2.4.3
-colorlog==6.8.2
-comm==0.2.2
-constantly==23.10.4
-contourpy==1.2.1
-coverage==7.6.1
-cryptography==42.0.8
-cycler==0.12.1
-Cython==3.0.10
-daphne==4.1.2
-dash==2.9.3
-dash-bootstrap-components==1.6.0
-dash-core-components==2.0.0
-dash-html-components==2.0.0
-dash-table==5.0.0
-debugpy==1.8.2
-decorator==5.1.1
-defusedxml==0.7.1
-dice-ml==0.11
-dict-and-html==1.0.11
-diff-match-patch==20230430
-Django==4.2.13
-django-bootstrap-v5==1.0.11
-django-htmx==1.18.0
-django-import-export==4.0.3
-django-plotly-dash==2.3.1
-django-redis==5.4.0
-dpd_components==0.1.0
-et-xmlfile==1.1.0
-exceptiongroup==1.2.1
-executing==2.0.1
-fastdtw==0.3.4
-fastjsonschema==2.20.0
-Flask==3.0.3
-flatbuffers==1.12
-fonttools==4.51.0
-fqdn==1.5.1
-gast==0.4.0
-google-auth==2.32.0
-google-auth-oauthlib==0.4.6
-google-pasta==0.2.0
-greenlet==3.0.3
-grpcio==1.65.1
-h11==0.14.0
-h5py==3.11.0
-html-and-py==1.0.14
-httpcore==1.0.5
-httpx==0.27.0
-hyperlink==21.0.0
-idna==3.7
-imbalanced-learn==0.12.3
-incremental==22.10.0
-ipykernel==6.29.5
-ipython==8.25.0
-ipywidgets==8.1.3
-isoduration==20.11.0
-itsdangerous==2.2.0
-jedi==0.19.1
-Jinja2==3.1.4
-joblib==1.4.2
-json5==0.9.25
-jsonpointer==3.0.0
-jsonschema==4.22.0
-jsonschema-specifications==2023.12.1
-jupyter==1.0.0
-jupyter_client==8.6.2
-jupyter-console==6.6.3
-jupyter_core==5.7.2
-jupyter-events==0.10.0
-jupyter-lsp==2.2.5
-jupyter_server==2.14.2
-jupyter_server_terminals==0.5.3
-jupyterlab==4.2.4
-jupyterlab_pygments==0.3.0
-jupyterlab_server==2.27.3
-jupyterlab_widgets==3.0.11
-keract==4.5.1
-keras==2.9.0
-Keras-Preprocessing==1.1.2
-kiwisolver==1.4.5
-libclang==18.1.1
-llvmlite==0.43.0
-Mako==1.3.5
-mamba==0.11.3
-Markdown==3.6
-MarkupSafe==2.1.5
-matplotlib==3.9.0
-matplotlib-inline==0.1.7
-mistune==3.0.2
-ml-dtypes==0.4.0
-mlxtend==0.23.1
-msgpack==1.0.8
-nbclient==0.10.0
-nbconvert==7.16.4
-nbeats-keras==1.8.0
-nbformat==5.10.4
-nest-asyncio==1.6.0
-ngrok==1.4.0
-notebook==7.2.1
-notebook_shim==0.2.4
-npx==0.1.6
-numba==0.60.0
-numpy==1.23.5
-nvidia-cublas-cu11==11.11.3.6
-oauthlib==3.2.2
-openpyxl==3.1.2
-opt-einsum==3.3.0
-optuna==2.10.1
-overrides==7.7.0
-packaging==24.2
-pandas==1.5.3
-pandocfilters==1.5.1
-parso==0.8.4
-patsy==0.5.6
-pbr==6.0.0
-pexpect==4.9.0
-pillow==10.3.0
-pip==24.3.1
-pipdeptree==2.24.0
-platformdirs==4.2.2
-plotly==5.22.0
-prettytable==3.10.2
-prometheus_client==0.20.0
-prompt_toolkit==3.0.47
-protobuf==3.19.6
-psutil==6.0.0
-ptyprocess==0.7.0
-pure-eval==0.2.2
-pyasn1==0.6.0
-pyasn1_modules==0.4.0
-pycparser==2.22
-Pygments==2.18.0
-pyOpenSSL==24.1.0
-pyparsing==3.1.2
-pyperclip==1.9.0
-python-dateutil==2.9.0.post0
-python-dotenv==1.0.1
-python-json-logger==2.0.7
-pytz==2024.1
-PyWavelets==1.6.0
-PyYAML==6.0.1
-pyzmq==26.0.3
-qtconsole==5.5.2
-QtPy==2.4.1
-raiutils==0.4.2
-redis==5.0.6
-referencing==0.35.1
-requests==2.32.3
-requests-oauthlib==2.0.0
-rfc3339-validator==0.1.4
-rfc3986-validator==0.1.1
-rpds-py==0.18.1
-rsa==4.9
-scikit-base==0.8.2
-scikit-learn==1.5.1
-scipy==1.13.0
-seaborn==0.13.2
-Send2Trash==1.8.3
-service-identity==24.1.0
-setuptools==65.5.0
-six==1.16.0
-sktime==0.31.0
-sniffio==1.3.1
-soupsieve==2.5
-SQLAlchemy==2.0.31
-sqlparse==0.5.0
-stack-data==0.6.3
-statsmodels==0.14.2
-stevedore==5.2.0
-stumpy==1.13.0
-tablib==3.5.0
-tenacity==8.3.0
-tensorboard==2.9.1
-tensorboard-data-server==0.6.1
-tensorboard-plugin-wit==1.8.1
-tensorflow==2.9.1
-tensorflow-estimator==2.9.0
-tensorflow-io-gcs-filesystem==0.37.1
-termcolor==2.4.0
-terminado==0.18.1
-tfts==0.0.5
-threadpoolctl==3.5.0
-tinycss2==1.3.0
-tomli==2.0.1
-tornado==6.4.1
-tqdm==4.66.4
-traitlets==5.14.3
-Twisted==24.3.0
-txaio==23.1.1
-types-python-dateutil==2.9.0.20240316
-typing_extensions==4.11.0
-uri-template==1.3.0
-urllib3==2.2.1
-uWSGI==2.0.28
-wcwidth==0.2.13
-webcolors==24.8.0
-webencodings==0.5.1
-websocket-client==1.8.0
-Werkzeug==3.0.3
-wheel==0.44.0
-whitenoise==6.8.2
-widgetsnbextension==4.0.11
-wildboar==1.2.0
-wrapt==1.16.0
-xgboost==2.0.3
-XlsxWriter==3.2.0
-zope.interface==6.4.post2
->>>>>>> bcaa0664688857b180bb908a6ea1b71080c56a45
+xgboost==2.1.3
\ No newline at end of file
diff --git a/scripts/entrypoint.sh b/scripts/entrypoint.sh
deleted file mode 100644
index c6c76f3cc..000000000
--- a/scripts/entrypoint.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-
-set -e
-
-python manage.py collectstatic --soinput
-
-uwsgi --socket :8000 --master --enable-threads --module extremum.wsgi #TCP
-
-# Start Apache
-exec apachectl -D FOREGROUND
\ No newline at end of file