:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;align-items:center;padding:12px;min-height:100vh}.wrapper{display:flex;width:100%;max-width:900px;max-height:calc(100vh - 24px);background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;overflow:hidden}.container{flex:1;padding:24px;display:flex;flex-direction:column;min-width:0;overflow-y:auto}.logo-side p{opacity:.9;font-size:.95rem;line-height:1.4}.tab-switcher{display:flex;margin-bottom:24px;border-bottom:2px solid #eee}.tab{flex:1;text-align:center;padding:12px 0;font-weight:700;color:#764ba2;border-bottom:3px solid #764ba2;font-size:1rem}h1{text-align:center;color:#4b3f72;margin:0 0 20px;font-size:1.4rem}input[type=text],input[type=password]{width:100%;padding:12px;margin-bottom:16px;border:2px solid #ddd;border-radius:8px;font-size:1rem;transition:border-color .3s}input:focus{outline:none;border-color:#667eea;background-color:#f8f9ff}button{width:100%;background:#764ba2;color:#fff;font-size:1rem;font-weight:700;padding:12px;border:none;border-radius:8px;cursor:pointer;transition:background .3s;box-shadow:0 4px 8px #764ba266}.popup-message{font-size:1.1rem;margin-bottom:16px;font-weight:600}@media (max-width: 768px){.wrapper{flex-direction:column;max-height:100vh;height:100%;max-width:100%}.logo-side{display:none}.container{padding:20px}h1{font-size:1.3rem}input{padding:10px;font-size:.95rem}button{padding:11px;font-size:.95rem}}html,body{overflow-x:hidden;width:100%;margin:0;padding:0;height:100%}.container{width:100%;max-width:1600px;padding:0 24px;margin:0 auto;box-sizing:border-box}.container *,.container *:before,.container *:after{box-sizing:border-box}.MuiBox-root,.MuiCard-root,.MuiCardContent-root{min-width:0!important;overflow-wrap:break-word!important}.ag-theme-material{width:100%!important;max-width:100%!important;overflow-x:auto!important}.header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 24px;border-radius:12px;margin-bottom:20px;box-shadow:0 6px 24px #0000001f;width:100%}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:28px;width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px}::-webkit-scrollbar-thumb{background:#b0b0b0;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#999}@media (max-width: 768px){.container{padding:0 16px}.header{padding:16px;text-align:center}.stats{grid-template-columns:1fr;gap:20px}.ag-theme-material{--ag-font-size: 13px;--ag-header-height: 44px;--ag-row-height: 52px;min-height:400px}.ag-theme-material .ag-cell{padding:0 12px;font-size:13px}}@media (max-width: 480px){.container{padding:0 12px}.header{padding:14px;font-size:.95rem}.stats{gap:16px}.ag-theme-material{min-height:350px}.ag-theme-material .ag-cell{padding:0 10px;font-size:12px}}.header.MuiBox-root{width:100%!important;max-width:100%!important;overflow-x:hidden!important;box-sizing:border-box!important}.header.MuiBox-root,.header.MuiBox-root>*{min-width:0!important;overflow-wrap:break-word!important}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2)}.wrapper{display:flex;width:100%;min-width:392px;max-width:900px;height:100%;background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;overflow-y:auto}.container{padding:24px}.logo-side{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(135deg,#667eeae6,#764ba2e6);color:#fff;padding:20px;text-align:center}.logo-side img{max-width:160px;height:auto;margin-bottom:20px}.logo-side h2{font-size:1.4rem;margin-bottom:10px}.logo-side p{opacity:.9;line-height:1.4;font-size:.9rem}.tab-switcher{display:flex;margin-bottom:20px;border-bottom:2px solid #eee}.tab{flex:1;text-align:center;padding:10px 0;cursor:pointer;font-weight:700;color:#666;border-bottom:3px solid transparent;transition:all .2s ease;-webkit-user-select:none;user-select:none;font-size:.95rem}.tab.active{color:#764ba2;border-color:#764ba2}h1{text-align:center;color:#4b3f72;margin:0 0 18px;font-weight:700;font-size:1.3rem}label{display:block;margin-bottom:6px;font-weight:600;color:#555;font-size:.875rem}input[type=text],input[type=email],input[type=password],select{width:100%;padding:10px 12px;margin-bottom:14px;border:2px solid #ddd;border-radius:8px;font-size:.95rem;background-color:#fff;color:#333}input:focus,select:focus{outline:none;border-color:#667eea;background-color:#f8f9ff}select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='%23667eea' d='M8 11l-6-6h12z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 12px}button{width:100%;background:#764ba2;color:#fff;font-size:1rem;font-weight:700;padding:11px;border:none;border-radius:8px;cursor:pointer;transition:background .3s;box-shadow:0 4px 8px #764ba266;margin-top:8px}button:hover{background:#5a3585}form{display:none;flex-direction:column}form.active{display:flex}.row-fields{display:flex;gap:12px;margin-bottom:14px}.row-fields .field-group{flex:2}@media (max-width: 1024px){.wrapper{max-width:95vw}}@media (max-width: 768px){.wrapper{max-height:calc(100vh - 24px);height:fit-content}.logo-side{display:none}.container{padding:16px}h1{font-size:1.2rem}.tab{font-size:.9rem;padding:8px 0}input[type=text],input[type=email],input[type=password],select{padding:9px 10px;font-size:.9rem}button{padding:10px;font-size:.95rem}}@media (max-width: 420px){.wrapper{min-height:100vh;min-width:100vw;border-radius:0}.container{overflow-y:auto}}.profile-card{background:#fff;border-radius:20px;box-shadow:0 15px 30px #0000001a;width:100%;max-width:800px;overflow:hidden;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.profile-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;display:flex;align-items:center;position:relative}.avatar-container{position:relative;margin-right:25px}.profile-avatar{width:120px;height:120px;border-radius:50%;border:4px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:700;color:#fff;background:linear-gradient(135deg,#5c6bc0,#3949ab);position:relative;overflow:hidden}.initials-avatar{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#ff7e5f,#feb47b)}.avatar-overlay{position:absolute;bottom:0;right:0;background:#fff;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 10px #0003;transition:all .3s ease}.avatar-overlay:hover{transform:scale(1.1)}.avatar-upload-btn{cursor:pointer;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.profile-info{flex:1}.profile-name{margin:0 0 8px;font-size:28px;font-weight:700}.profile-email{margin:0 0 5px;opacity:.9;font-size:16px}.profile-role{margin:0;background:#fff3;padding:5px 12px;border-radius:20px;display:inline-block;font-size:14px}.profile-tabs{display:flex;background:#f8f9fa;border-bottom:1px solid #e9ecef}.tab-btn{padding:15px 25px;background:none;border:none;cursor:pointer;font-size:16px;font-weight:500;color:#6c757d;position:relative;transition:all .3s ease}.tab-btn:hover{color:#495057;background:#00000008}.tab-btn.active{color:#495057;font-weight:600}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:3px 3px 0 0}.profile-content{padding:30px}.tab-content{display:none}.tab-content.active{display:block;animation:fadeIn .4s ease}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.info-item{display:flex;align-items:center;padding:15px;background:#f8f9fa;border-radius:12px;transition:all .3s ease}.info-item:hover{background:#e9ecef;transform:translateY(-2px);box-shadow:0 4px 10px #0000000d}.info-icon{font-size:24px;margin-right:15px;width:50px;height:50px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a}.info-details{display:flex;flex-direction:column}.info-label{font-size:12px;color:#6c757d;margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:16px;font-weight:500;color:#212529}.settings-options{display:flex;flex-direction:column;gap:15px}.settings-btn{padding:15px 20px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;text-align:left;cursor:pointer;font-size:16px;transition:all .3s ease}.settings-btn:hover{background:#e9ecef;transform:translate(5px)}.activity-placeholder{text-align:center;padding:30px;color:#6c757d}.activity-item{display:flex;align-items:center;justify-content:center;gap:15px}.activity-icon{font-size:40px;opacity:.7}.activity-details p{margin:0 0 5px;font-size:18px}.activity-details span{font-size:14px}.profile-actions{padding:20px 30px;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end}.btn-logout{padding:12px 25px;background:linear-gradient(135deg,#ff7e5f,#feb47b);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;transition:all .3s ease}.btn-logout:hover{transform:translateY(-2px);box-shadow:0 5px 15px #ff7e5f66}.btn-download{padding:12px 25px;background:linear-gradient(135deg,#612ddb,#5919ad);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px;transition:all .3s ease}.btn-download:hover{transform:translateY(-2px);box-shadow:0 5px 15px #31209166}.error-message{text-align:center;padding:40px;background:#fff;border-radius:15px;box-shadow:0 10px 25px #0000001a}.error-icon{font-size:60px;margin-bottom:20px}.error-message h2{color:#dc3545;margin-bottom:15px}.error-message p{margin-bottom:25px;color:#6c757d}.error-actions{display:flex;gap:15px;justify-content:center}.btn{padding:12px 25px;border-radius:8px;border:none;cursor:pointer;font-weight:500;transition:all .3s ease}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0069d9;transform:translateY(-2px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.loading-spinner{text-align:center;padding:40px}.spinner{border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.avatar-loading{position:absolute;inset:0;background:#00000080;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:50%}@media (max-width: 768px){.profile-header{flex-direction:column;text-align:center;padding:25px 20px}.avatar-container{margin-right:0;margin-bottom:20px}.profile-name{font-size:24px}.profile-tabs{overflow-x:auto;white-space:nowrap}}.password-change-section{margin-top:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.password-change-section h4{margin-bottom:1.5rem;color:#333;font-size:1.2rem}.password-form{max-width:400px}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#555}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.form-group small{display:block;margin-top:.25rem;color:#6c757d;font-size:.875rem}.message{padding:.75rem 1rem;margin-bottom:1.5rem;border-radius:4px;font-weight:500}.message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.btn-primary{background:#007bff;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-primary:disabled{background:#6c757d;cursor:not-allowed}.form-group input.success{border-color:#28a745;box-shadow:0 0 0 2px #28a74540}.form-group input.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc354540}.validation-success{color:#28a745;font-size:.875rem;margin-top:.25rem;display:flex;align-items:center}.validation-success:before{content:"✓";margin-right:.25rem;font-weight:700}.validation-error{color:#dc3545;font-size:.875rem;margin-top:.25rem;display:flex;align-items:center}.validation-error:before{content:"⚠";margin-right:.25rem;font-weight:700}.btn-primary:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000}.popup-content{background:#fff;padding:24px;border-radius:12px;text-align:center;max-width:400px;width:90%;box-shadow:0 6px 20px #00000040}.popup-message{font-size:1.1rem;margin-bottom:16px}.popup-message.success{color:#28a745}.popup-message.error{color:#dc3545}.popup-close-btn{padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:600}.popup-close-btn:hover{background-color:#0056b3}
