:root{--navbar-height: 80px;--navbar-height-mobile: 70px}.navbar{box-shadow:0 4px 20px #0000001a;border:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 0;min-height:var(--navbar-height);height:var(--navbar-height);display:flex;align-items:center;position:relative;z-index:1000}.navbar-red{background:linear-gradient(135deg,#dc3545,#b91c1c)!important;border-bottom:4px solid rgba(255,255,255,.2)}.navbar-brand{color:#fff!important;font-weight:600;font-size:1.6rem}.navbar-brand i{font-size:1.8rem}.navbar-brand-centered{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;text-align:center}.navbar-subtitle{font-size:1rem;font-weight:400;opacity:.9;margin-top:-.2rem;line-height:1.2}@media(max-width:991.98px){.navbar-brand-centered{position:static;transform:none;margin:0 auto}.navbar{min-height:var(--navbar-height-mobile);height:auto;padding:.5rem 0}}@media(max-width:768px){.navbar{padding:.5rem 0;min-height:auto;height:auto}.navbar-brand-centered{display:none!important}.navbar-brand-mobile{display:flex!important;align-items:center;color:#fff!important;font-weight:600;font-size:1rem;text-decoration:none;flex-shrink:0;margin-right:.5rem}.navbar-brand-mobile i{font-size:1.2rem;flex-shrink:0}.navbar-brand-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;font-weight:600}.navbar .container-fluid{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:.5rem .75rem;gap:.5rem;flex-wrap:nowrap}.mobile-header-right{display:flex!important;align-items:center;gap:.5rem;flex-shrink:0;margin-left:auto}.navbar-text-mobile{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;display:inline-block}.logout-btn-mobile{font-size:.85rem!important;padding:.25rem .5rem!important;white-space:nowrap;flex-shrink:0}.logout-btn-mobile i{font-size:.9rem}}@media(max-width:360px){.navbar-brand-text{max-width:100px;font-size:.9rem}.navbar-text-mobile{max-width:70px;font-size:.85rem}.logout-btn-mobile{font-size:.8rem!important;padding:.2rem .4rem!important}.navbar .container-fluid{padding:.5rem;gap:.25rem}}.navbar .container-fluid{display:flex;align-items:center;min-height:inherit;height:100%}.navbar-nav .nav-link{color:#ffffffe6!important;font-weight:500;padding:.5rem 1rem;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;height:fit-content}.navbar-nav .nav-link:hover{background:#ffffff1a;color:#fff!important;transform:translateY(-1px)}.navbar-nav .nav-link.btn{text-decoration:none;border:none;cursor:pointer}.navbar-nav .nav-link.btn:hover{background:#ffffff1a;color:#fff!important}.navbar-nav .nav-link.btn:focus{box-shadow:none;outline:none}.navbar-text{font-size:1.1rem!important}.navbar-text i{font-size:1.3rem}.top-loading-bar{position:fixed;top:0;left:0;right:0;height:3px;background:transparent;z-index:9999;pointer-events:none}.top-loading-bar__progress{height:100%;background:linear-gradient(90deg,#2563eb,#3b82f6,#60a5fa);animation:loading-progress 1.5s ease-in-out infinite;box-shadow:0 0 10px #2563eb80}@keyframes loading-progress{0%{transform:translate(-100%);width:0%}50%{transform:translate(0);width:70%}to{transform:translate(100%);width:100%}}.app-layout{min-height:100vh;display:flex;flex-direction:column;width:100%;background:linear-gradient(135deg,#f8fafc,#f3f4f6)}@media(min-width:1025px){.app-layout main.container-fluid{max-width:100%;width:100%!important;margin:0;padding:var(--space-lg, 16px);flex:1;display:flex;flex-direction:column}.app-layout main.container-fluid>.card,.app-layout main.container-fluid>.content-wrapper,.app-layout main.container-fluid>div:first-child:not(.dashboard-modern):not(.task-form-page-modern):not(.analytics-page-modern):not(.report-form-page-modern){background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:var(--space-lg, 16px);flex:1}.app-layout main.container-fluid>.task-form-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.app-layout main.container-fluid>.analytics-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.app-layout main.container-fluid>.report-form-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.page-header,.content-header{margin-bottom:var(--space-lg, 16px);padding-bottom:var(--space-md, 12px);border-bottom:2px solid #f0f0f0}.page-header h1,.page-header h2{font-size:var(--font-size-2xl, 1.5rem);font-weight:600;color:#1a1a2e;line-height:var(--line-height-tight, 1.3)}}@media(min-width:768px)and (max-width:1024px){.app-layout main.container-fluid{width:100%;max-width:100%;margin:0;padding:var(--space-md, 12px);flex:1;display:flex;flex-direction:column}.app-layout main.container-fluid>.card,.app-layout main.container-fluid>.content-wrapper,.app-layout main.container-fluid>div:first-child:not(.dashboard-modern):not(.task-form-page-modern):not(.analytics-page-modern):not(.report-form-page-modern){background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014;padding:1.5rem;flex:1}.app-layout main.container-fluid>.dashboard-modern{background:transparent!important;padding:0!important;box-shadow:none!important}.app-layout main.container-fluid>.task-form-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.app-layout main.container-fluid>.analytics-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.app-layout main.container-fluid>.report-form-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.page-header,.content-header{margin-bottom:1.5rem;padding-bottom:1rem}.page-header h1,.page-header h2{font-size:1.5rem;font-weight:600}.btn-group-tablet-stack{display:flex;flex-direction:column;gap:.75rem}.btn-group-tablet-stack .btn{width:100%}}@media(max-width:767px){.app-layout main.container-fluid{width:100%;max-width:100%;margin:0;padding:1rem;flex:1}.app-layout main.container-fluid>.card,.app-layout main.container-fluid>.content-wrapper,.app-layout main.container-fluid>div:first-child:not(.dashboard-modern):not(.task-form-page-modern):not(.analytics-page-modern):not(.report-form-page-modern){background:#fff;border-radius:10px;box-shadow:0 2px 10px #00000014;padding:1rem}.app-layout main.container-fluid>.dashboard-modern{background:transparent!important;padding:0!important;box-shadow:none!important}.app-layout main.container-fluid>.task-form-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.app-layout main.container-fluid>.analytics-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.app-layout main.container-fluid>.report-form-page-modern{background:transparent!important;padding:0!important;box-shadow:none!important;border-radius:0!important}.page-header,.content-header{margin-bottom:1rem}.page-header h1,.page-header h2{font-size:1.25rem;font-weight:600}}@media(orientation:landscape)and (max-height:600px){.app-layout main.container-fluid{padding:1rem}.page-header,.content-header{margin-bottom:.75rem;padding-bottom:.5rem}}.app-layout main{flex:1;display:flex;flex-direction:column}.content-wrapper{flex:1;display:flex;flex-direction:column}.page-title{display:flex;align-items:center;gap:.75rem;margin-bottom:0}.page-title i{color:#dc3545}.action-buttons{display:flex;gap:.75rem;flex-wrap:wrap}@media(max-width:767px){.action-buttons{flex-direction:column}.action-buttons .btn{width:100%}}.loading-container{display:flex;align-items:center;justify-content:center;min-height:300px;flex:1}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:#6c757d}.empty-state i{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state h3{font-size:1.25rem;margin-bottom:.5rem}.empty-state p{font-size:.95rem;max-width:400px}.login-page{min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:2rem;box-sizing:border-box;overflow:auto}@media(min-width:1025px){.login-container{width:100%;max-width:900px;margin:0 auto;padding:0}.login-card{width:100%;background:#fff;border-radius:24px;box-shadow:0 30px 100px #00000080;overflow:hidden;display:flex;flex-direction:row;min-height:500px}.login-header{background:linear-gradient(180deg,#dc3545,#b91c1c);padding:3rem 2.5rem;color:#fff;flex:0 0 340px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.app-title{font-size:1.75rem;font-weight:700;margin:0;display:flex;flex-direction:column;align-items:center;gap:1rem}.app-title-icon{font-size:4rem;margin-bottom:.5rem}.app-subtitle{font-size:1rem;margin-top:1rem;opacity:.9;font-weight:300}.login-body{flex:1;padding:3rem;display:flex;flex-direction:column;justify-content:center;overflow-y:auto}.form-group{margin-bottom:1.5rem}.form-label{font-size:.95rem;font-weight:600}.form-control{padding:1rem;font-size:1rem;border-radius:8px}.btn-login{padding:1rem;font-size:1.1rem;border-radius:8px}}@media(min-width:768px)and (max-width:1024px){.login-container{width:100%;max-width:480px;margin:0 auto;padding:0}.login-card{width:100%;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0006;overflow:hidden;display:flex;flex-direction:column}.login-header{background:linear-gradient(135deg,#dc3545,#b91c1c);padding:2.5rem 2rem;text-align:center;color:#fff}.app-title{font-size:1.6rem;font-weight:600;margin:0;display:flex;align-items:center;justify-content:center;gap:.75rem}.app-title-icon{font-size:2rem}.app-subtitle{font-size:.95rem;margin-top:.75rem;opacity:.9}.login-body{padding:2.5rem}.form-group{margin-bottom:1.5rem}.form-label{font-size:1rem;font-weight:500}.form-control,.btn-login{padding:1rem;font-size:1.1rem;border-radius:10px}}@media(max-width:767px){.login-page{padding:1rem}.login-container{width:100%;max-width:400px;margin:0 auto}.login-card{width:100%;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.login-header{background:linear-gradient(135deg,#dc3545,#b91c1c);padding:2rem 1.5rem;text-align:center;color:#fff}.app-title{font-size:1.25rem;font-weight:600;margin:0;display:flex;align-items:center;justify-content:center;gap:.5rem}.app-title-icon{font-size:1.5rem}.app-subtitle{font-size:.8rem;margin-top:.5rem}.login-body{padding:1.5rem}.form-group{margin-bottom:1rem}.form-label{font-size:.85rem}.form-control,.btn-login{padding:.75rem;font-size:1rem}}.form-label{font-weight:500;color:#212529;margin-bottom:.5rem;display:block}.form-control{width:100%;border:2px solid #e9ecef;border-radius:8px;transition:all .2s ease;box-sizing:border-box}.form-control:focus{outline:none;border-color:#dc3545;box-shadow:0 0 0 4px #dc35451a}.totp-input{text-align:center;font-size:2rem;font-weight:700;letter-spacing:.75rem;padding:1.25rem;border:3px solid #dc3545;border-radius:12px;font-family:Courier New,monospace;color:#dc3545;background:#fff5f5}.totp-input:focus{border-color:#b91c1c;box-shadow:0 0 0 4px #dc354526}.totp-help-text{text-align:center;color:#6c757d;font-size:.875rem;margin-top:.75rem}.btn-login{width:100%;background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;border:none;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #dc35454d}.btn-login:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#b91c1c);transform:translateY(-2px);box-shadow:0 6px 20px #dc354566}.btn-login:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-back{width:100%;padding:.875rem;background:#f8f9fa;color:#6c757d;border:2px solid #e9ecef;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-back:hover{background:#e9ecef;border-color:#dc3545;color:#dc3545}.login-divider{text-align:center;color:#6c757d;font-size:.875rem;margin:1.5rem 0;position:relative}.login-divider:before{content:"";position:absolute;left:0;top:50%;right:0;height:1px;background:#dee2e6}.login-divider span{background:#fff;padding:0 1rem;position:relative}.alert-error{background:linear-gradient(135deg,#fff5f5,#fee);border:2px solid #dc3545;border-radius:10px;padding:1rem;color:#721c24;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.alert-error-icon{font-size:1.25rem}.alert-error-close{background:none;border:none;color:#721c24;cursor:pointer;padding:0;font-size:1.25rem;opacity:.7;transition:opacity .2s}.alert-error-close:hover{opacity:1}@media(orientation:landscape)and (max-height:600px){.login-page{padding:1rem}.login-container{max-width:700px}.login-card{flex-direction:row;min-height:auto}.login-header{flex:0 0 250px;padding:2rem}.app-title{flex-direction:column;font-size:1.25rem}.app-title-icon{font-size:2.5rem}.login-body{padding:2rem}.form-group{margin-bottom:1rem}}.change-password-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.change-password-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0006;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.change-password-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:2px solid #e9ecef}.change-password-modal-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#212529}.change-password-modal-close{background:none;border:none;color:#6c757d;cursor:pointer;padding:.5rem;font-size:1.25rem;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.change-password-modal-close:hover:not(:disabled){background:#f8f9fa;color:#dc3545}.change-password-modal-close:disabled{opacity:.5;cursor:not-allowed}.change-password-modal-body{padding:1.5rem}.alert-success{background:linear-gradient(135deg,#f0fff4,#e6ffed);border:2px solid #28a745;border-radius:10px;padding:1rem;color:#155724;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.btn-change-password-link:hover{color:#b91c1c;text-decoration:none}@media(max-width:767px){.change-password-modal{max-width:100%;border-radius:12px}.change-password-modal-header{padding:1.25rem}.change-password-modal-header h3{font-size:1.25rem}.change-password-modal-body{padding:1.25rem}}
