body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#111;color:#fff;overflow:hidden}#root{width:100vw;height:100vh;position:relative}.App{width:100%;height:100vh;position:relative;background-color:#111}.main-container{display:flex;height:100vh;width:100%;background-color:#111;position:relative}.vitessce-container{flex:1 1 auto;position:relative;background-color:#111;width:100%;height:100%}.roi-navigator-fixed{position:fixed;bottom:20px;left:20px;z-index:1000;width:350px}.heatmap-results-fixed{position:fixed;bottom:20px;right:20px;z-index:1001;max-width:500px;max-height:60%;overflow:auto}.fullscreen-vitessce{width:100%;height:100vh;position:relative;background-color:#111}.vitessce-container{width:100%;height:100%;background-color:#111}.roi-selector-container{position:relative;background-color:#fffffff2;border-radius:4px;padding:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.1);width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:12px;color:#000;box-shadow:0 2px 8px #0000001a;line-height:1.2}.roi-selector-container .text-center:first-of-type{display:flex;justify-content:flex-start;align-items:center;gap:15px;margin-bottom:8px;font-weight:600;font-size:11px}.roi-selector-container .text-center:last-child{display:flex;justify-content:flex-start;align-items:center;gap:8px}.roi-selector-container .text-center:last-child>div:last-child{display:flex;gap:5px;margin-left:auto}.btn{background-color:#0000001a;color:#000;border:1px solid rgba(0,0,0,.2);padding:4px 8px;border-radius:3px;cursor:pointer;font-size:9px;transition:all .2s ease}.btn:hover{background-color:#0003;border-color:#0000004d}.btn:active{transform:translateY(1px)}.heatmap-results-container{position:relative;background-color:#0000001a;border-radius:8px;padding:15px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin:10px;max-height:50%;overflow:auto}.interaction-heatmap-container{position:fixed;bottom:20px;right:-350px;z-index:12;background-color:#0000001a;border-radius:8px;padding:15px;border:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;gap:8px;max-width:450px;transform:scale(1);transform-origin:bottom right;box-shadow:0 2px 4px #0000004d}.heatmap-grid{display:flex;gap:10px;overflow-x:auto;padding:10px 0}.heatmap-item{flex-shrink:0;background-color:#ffffff0d;border-radius:4px;padding:10px;border:1px solid rgba(255,255,255,.1)}.checkbox-container{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.checkbox-item{display:flex;align-items:center;gap:3px;color:#000;font-size:10px}.checkbox-item input[type=checkbox]{margin:0;cursor:pointer}.checkbox-item span{cursor:pointer}.btn-close{position:absolute;top:5px;right:5px;background:none;border:none;color:#fff;font-size:16px;cursor:pointer;padding:5px;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.btn-close:hover{background-color:#ffffff1a}.heatmap-title,.interaction-title{color:#fff;font-size:14px;font-weight:600;margin-bottom:10px;text-align:center}.loading{display:flex;align-items:center;justify-content:center;height:100vh;color:#fff;font-size:16px}.loading-text{text-align:center;color:#666;font-size:12px;margin-top:10px}.error{color:#ff6b6b;padding:20px;text-align:center;background-color:#ff6b6b1a;border-radius:8px;margin:20px}@media (min-width: 2560px){.roi-selector-container{transform:scale(1)}}@media (min-width: 2560px) and (max-width: 3200px){.roi-selector-container{transform:scale(1.1)}}@media (min-width: 1920px) and (max-width: 2559px){.roi-selector-container{transform:scale(1.2)}}@media (min-width: 1366px) and (max-width: 1919px){.roi-selector-container{transform:scale(1.1)}}@media (min-width: 1024px) and (max-width: 1365px){.roi-selector-container{transform:scale(1)}}@media (min-width: 768px) and (max-width: 1023px){.roi-selector-container{transform:scale(.9)}}@media (max-width: 768px){.roi-selector-container{bottom:10px;left:10px;right:10px;width:auto;transform:scale(.7)}.heatmap-results-container{bottom:10px;left:10px;right:10px;width:auto}.interaction-heatmap-container{bottom:10px;right:10px;width:auto}.heatmap-grid{flex-direction:column}.heatmap-item{width:100%}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}.fade-in{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.hidden{display:none!important}.visible{display:block!important}.flex{display:flex!important}.flex-column{flex-direction:column!important}.flex-center{justify-content:center!important;align-items:center!important}.text-center{text-align:center!important}.text-white{color:#fff!important}.text-gray{color:#666!important}.bg-black{background-color:#000!important}.bg-transparent{background-color:transparent!important}.border-radius{border-radius:8px!important}.backdrop-blur{-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#000;color:#fff;line-height:1.6;margin:0;padding:0;border:0}#root{height:100vh;width:100vw;position:relative;margin:0;padding:0;border:0;background-color:#000}button{background:none;border:none;cursor:pointer;font-family:inherit}input{font-family:inherit}ul,ol{list-style:none}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}html{scroll-behavior:smooth}*:focus{outline:2px solid #007bff;outline-offset:2px}::selection{background-color:#007bff4d;color:#fff}::-moz-selection{background-color:#007bff4d;color:#fff}
