.oauthBtns{margin-bottom:20px;display:flex;gap:12px;align-items:center;flex-direction:column}.oauthBtn{width:100%;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:2px;background-color:#fff;color:#333;border:1px solid #333333;padding:10px 20px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.oauthBtn:hover{border-color:#fff;background-color:#333;color:#fff}.oauthIcon{width:20px;height:20px}.modalBackdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modalContent{background:#fff;padding:1rem;border-radius:8px;width:80%;max-width:800px;position:relative}.closeButton{position:absolute;top:10px;right:10px;background:#ff4d4f;color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer}.base-button{height:fit-content;width:fit-content;padding:.5rem 1.5rem;border-radius:8px;background:#546dc7;color:#fff;font-weight:500;box-shadow:0 4px 10px #00000026;border:none;cursor:pointer;transition:background .2s ease}.base-button:hover{background:#9fb0e3}.base-button:active{transform:translateY(1px);box-shadow:0 2px 6px #0003}.error-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;display:flex;align-items:center;justify-content:center;z-index:9999}.error-popup-box{background:#fff;padding:20px 30px;border-radius:8px;max-width:400px;text-align:center;box-shadow:0 2px 12px #0000004d;display:flex;flex-direction:column;align-items:center}.error-popup-box h2{margin-bottom:10px;color:red;font-size:1.5em}.error-popup-box p{margin-bottom:15px;color:red;font-weight:700}.error-popup-box button{padding:8px 15px;background:red;color:#fff;border:none;border-radius:4px;cursor:pointer}.error-popup-box button:hover{background:#8b0000}body.dark .loginContainer{background:#212121}body.dark .loginTitle{color:#fff}body.dark .loginInput{background:#111;border:1px solid #212121;color:#aaa}body.dark .forgotPass{color:#aaa}body.dark .separator:before{border-bottom:1px solid #AAAAAA}body.dark .oauthBtn,body.dark .loginButton,body.dark .selectButton,body.dark .cancelButton{background:#333;color:#fff}body.dark .loginButton:hover{border:1px solid white}body.dark .separator:after{border-bottom:1px solid #AAAAAA}body.dark .separator span{color:#aaa}body.dark .content{background:#212121}body.dark .top-bar{background:#3d3d3d}body.dark .top-bar_button:hover{background-color:#b3b3b3;color:#fff}body.dark .sidebar{background:#3d3d3d}body.dark .user-dropdown{background:#3d3d3d;color:#fff}body.dark .user-dropdown_item:hover{background:#b3b3b3}body.dark button:focus{color:#fff;background-color:#b3b3b3}body.dark .reports-popup-content{background-color:#3d3d3d;color:#fff}body.dark .reports-popup-content th,body.dark .reports-popup-content td{color:#fff}body.dark .sidebar:not(.expanded) .sidebar-button{background:transparent}body.dark .sidebar-button:hover{background-color:#b3b3b3}body.dark.sidebar-button:focus{background-color:#b3b3b3}body.dark .sidebar:not(.expanded) .sidebar-button:hover{background:#b3b3b3}body.dark .sidebar:not(.expanded) .sidebar-button:focus{background:#b3b3b3}body.dark .settingsTitle{color:#fff}body.dark .settingsText{color:#b3b3b3}body.dark .closeBtn{margin-top:3px}body.dark .closeBtn:hover svg{stroke:#9fb0e3}body.dark .closeBtn:focus svg{stroke:#9fb0e3}body.dark .closeBtn svg{stroke:#b3b3b3}body.dark .optDropLabel{color:#b3b3b3}body.dark .grid-stack-item-content{background:#3d3d3d;color:#fff}body.dark .module-title{color:#fff}body.dark .dot{background-color:#b9b9b9}:root{--mainBlue: #546dc7;--errRed: #ff0202}body{margin:0;padding:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#fff}.loginContainer{display:flex;align-items:center;justify-content:center;min-height:100vh}.loginBox{width:30vw;max-width:350px;text-align:center}.loginTitle{font-size:1.875rem;font-weight:700;margin-bottom:1.25rem;color:#333;text-align:center;margin-top:0}.loginLogo{display:block;margin:auto;width:150px}.loginForm{display:flex;flex-direction:column;gap:12px}.loginInput{color:#333;background:#fff;padding:10px;font-size:.875rem;border:1px solid #ccc;border-radius:6px;outline:none}.loginInput::placeholder{text-align:center}.loginButton{border:1px solid transparent!important;padding:6px 0;background-color:var(--mainBlue);color:#fff;font-size:1.125rem;font-weight:500;border:none;border-radius:6px;cursor:pointer}.loginButton:hover{background-color:#fff;border-color:var(--mainBlue)!important;color:var(--mainBlue)}.forgotText{position:relative;bottom:10px}.forgotPass{font-size:.75rem;color:#555;text-decoration:none}.forgotText p{font-size:.75rem;color:#555;text-decoration:none;cursor:pointer;margin:0}.forgotPass a:hover{text-decoration:underline}.inputError{border:1px solid red!important;background-color:#ffecec}.loginErr{bottom:10px;position:relative;color:red;font-size:.75rem;text-align:left;margin:0}.separator{position:relative;bottom:10px;display:flex;align-items:center;text-align:center}.separator:before,.separator:after{content:"";flex:1;border-bottom:1px solid #333333}.separator:not(:empty):before{margin-right:.75em}.separator:not(:empty):after{margin-left:.75em}.separator span{color:#333;font-size:.75rem}.smooth-load{display:block;width:auto;height:auto;max-width:100%;image-rendering:auto;opacity:0;transition:opacity .1s ease-in}.smooth-load.loaded{opacity:1;aspect-ratio:3/4;height:450px;position:relative;bottom:10vh;right:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.msgBox{text-align:center;font-size:1.25rem;font-weight:700;max-height:85vh;max-width:35vw;background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 12px #0000004d;display:flex;flex-direction:column;align-items:center}.msgOverlay{position:absolute;background-color:#0006;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;z-index:9999}.msgBox p{margin:0}.msgBox button{background-color:#546dc7;margin-top:10px}.msgBox button:hover{background-color:#9fb0e3}.clientDropdown{border-radius:6px;display:block;margin:auto auto 20px;background:#fff;color:#333}.loginTitle{margin-bottom:10px!important}.buttonRow{display:flex;justify-content:center;gap:20px}.selectButton,.cancelButton{border-radius:6px;border:1px solid transparent!important;color:#fff;background-color:#546dc7}.selectButton:hover,.cancelButton:hover{background-color:#fff;border-color:#546dc7!important;color:#546dc7}
