*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f7fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.app-container{display:flex;min-height:100vh}.main-content{background-color:#f5f7fa;flex:1 1;margin-left:250px;padding:24px}.sidebar{background-color:#1a1a2e;bottom:0;color:#fff;left:0;padding:20px;position:fixed;top:0;width:250px}.sidebar h2,.sidebar-logo{border-bottom:1px solid #333;margin-bottom:30px;padding-bottom:20px}.sidebar-logo{display:flex;justify-content:center}.sidebar-logo img{height:auto;width:120px}.sidebar nav a{border-radius:8px;color:#aaa;display:block;margin-bottom:8px;padding:12px 16px;text-decoration:none;transition:all .3s}.sidebar nav a.active,.sidebar nav a:hover{background-color:#16213e;color:#fff}.sidebar nav a.active{background-color:#e94560}.login-container{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;justify-content:center;min-height:100vh}.login-box{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;padding:40px;width:400px}.login-box h2{color:#1a1a2e;margin-bottom:30px;text-align:center}.login-box input{border:1px solid #ddd;border-radius:8px;font-size:14px;margin-bottom:16px;padding:12px;width:100%}.login-box button{background-color:#e94560;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:12px;transition:background .3s;width:100%}.login-box button:hover{background-color:#d13350}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.stat-card h3{color:#666;font-size:14px;margin-bottom:8px}.stat-card .value{color:#1a1a2e;font-size:32px;font-weight:700}.stat-card.warning .value{color:#f39c12}.stat-card.success .value{color:#27ae60}.stat-card.danger .value{color:#e74c3c}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-header h1{color:#1a1a2e}.filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.filters input,.filters select{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px 14px}.filters button{background-color:#e94560;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:10px 20px}.data-table{box-shadow:0 2px 8px #00000014}.data-table td,.data-table th{border-bottom:1px solid #eee;padding:14px 16px;text-align:left}.data-table th,.data-table tr:hover{background-color:#f8f9fa}.status-badge{border-radius:20px;font-size:12px;font-weight:500;padding:4px 12px}.status-badge.open{background:#d1ecf1;color:#0c5460}.status-badge.in_progress{background:#fff3cd;color:#856404}.status-badge.resolved{background:#d4edda;color:#155724}.status-badge.closed{background:#e2e3e5;color:#383d41}.action-btn{border:none;border-radius:6px;cursor:pointer;font-size:12px;margin-right:4px;padding:6px 12px}.action-btn.primary{background:#3498db}.action-btn.danger{background:#e74c3c}.action-btn.success{background:#27ae60;color:#fff}.analytics-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.chart-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.chart-card h3{color:#1a1a2e;margin-bottom:16px}.modal{align-items:center;background:#00000080;bottom:0;justify-content:center;left:0;position:fixed;right:0;top:0}.modal-content{background:#fff;border-radius:12px;max-width:90%;padding:24px;width:400px}.modal-content h3{margin-bottom:16px}.modal-content form input,.modal-content form select{border:1px solid #ddd;border-radius:6px;margin-bottom:12px;padding:10px;width:100%}.modal-actions button{border:none;border-radius:6px;cursor:pointer;padding:8px 16px}.modal-actions .cancel{background:#ddd}.modal-actions .save{background:#3498db;color:#fff}.user-card{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 4px #0000000d;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px}.user-info h4{margin-bottom:4px}.user-info p{color:#666;font-size:14px}.role-badge{border-radius:4px;font-size:12px;font-weight:500;padding:4px 10px}.role-badge.admin{background:#e94560;color:#fff}.role-badge.student{background:#3498db;color:#fff}.role-badge.staff{background:#f39c12;color:#fff}.ticket-detail-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.ticket-body-card,.ticket-info-card,.ticket-status-card,.ticket-student-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.ticket-body-card h3,.ticket-info-card h3,.ticket-status-card h3,.ticket-student-card h3{border-bottom:1px solid #eee;color:#1a1a2e;margin-bottom:16px;padding-bottom:12px}.info-row{border-bottom:1px solid #f5f5f5;display:flex;justify-content:space-between;padding:10px 0}.info-row .label{color:#666;font-weight:500}.info-row .value{color:#1a1a2e}.form-group{margin-bottom:16px}.form-group label{color:#666;display:block;font-weight:500;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px;width:100%}.form-group textarea{resize:vertical}.ticket-body{color:#333;line-height:1.6;white-space:pre-wrap}.modal{border-radius:12px;max-height:90vh;max-width:90%;overflow-y:auto;padding:24px;width:500px}.modal .form-group,.modal h3{margin-bottom:12px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.status-badge.escalated{background:#e74c3c;color:#fff}.status-badge.low{background:#27ae60;color:#fff}.status-badge.normal{background:#3498db;color:#fff}.status-badge.high{background:#f39c12;color:#fff}.status-badge.urgent{background:#e74c3c;color:#fff}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#e94560;height:30px;width:30px}.app-loading{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.loading-content{color:#fff;text-align:center}.loading-content .spinner{border-top-color:#e94560;border-width:4px;height:50px;margin:0 auto 20px;width:50px}.loading-content p{font-size:18px;opacity:.8}.managers-page{max-width:1200px}.managers-page .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.tabs{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:8px;margin-bottom:24px;padding:4px}.tabs .tab{background:#0000;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.tabs .tab:hover{background:#f5f7fa}.tabs .tab.active{background:#1a1a2e;color:#fff}.managers-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.manager-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px;transition:transform .2s,box-shadow .2s}.manager-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.manager-card .manager-avatar{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:50%;color:#fff;display:flex;font-size:24px;font-weight:600;height:56px;justify-content:center;margin-bottom:16px;width:56px}.manager-card .manager-info h3{color:#1a1a2e;font-size:18px;margin-bottom:4px}.manager-card .manager-email{color:#666;font-size:14px;margin-bottom:12px}.manager-card .status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:500;padding:4px 12px}.manager-card .status-badge.active{background:#d4edda;color:#155724}.manager-card .status-badge.inactive{background:#f8d7da;color:#721c24}.manager-card .manager-department{background:#f8f9fa;border-radius:8px;margin:16px 0;padding:12px}.manager-card .dept-label{color:#666;display:block;font-size:12px;margin-bottom:4px}.manager-card .dept-name{color:#1a1a2e;font-weight:600}.departments-list{display:flex;flex-direction:column;gap:12px}.department-row{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;gap:24px;padding:20px 24px}.department-row .dept-info{flex:1 1}.department-row .dept-info h3{color:#1a1a2e;font-size:16px;margin-bottom:2px}.department-row .dept-slug{color:#999;font-size:13px}.department-row .dept-manager{min-width:200px}.department-row .assigned-manager{align-items:center;display:flex;gap:12px}.department-row .manager-mini-avatar{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:50%;color:#fff;display:flex;font-weight:600;height:40px;justify-content:center;width:40px}.department-row .manager-mini-info{display:flex;flex-direction:column}.department-row .manager-mini-name{color:#1a1a2e;font-size:14px;font-weight:500}.department-row .manager-mini-email{color:#666;font-size:12px}.department-row .no-manager{color:#999;font-size:14px;font-style:italic}.department-row .dept-actions{min-width:140px;text-align:right}.modal{display:flex;flex-direction:column;max-height:80vh}.modal-header h3{font-size:18px}.modal-close{transition:background .2s}.modal-close:hover{color:#333}.modal-body{flex:1 1;overflow-y:auto}.modal-description{color:#666;font-size:14px;margin-bottom:16px}.manager-select-list{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.manager-select-item{align-items:center;border:2px solid #eee;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s}.manager-select-item:hover{background:#f8f9fa;border-color:#1a1a2e}.manager-select-item.selected{background:#f0f1f5;border-color:#1a1a2e}.manager-select-avatar{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:50%;color:#fff;display:flex;font-size:16px;font-weight:600;height:44px;justify-content:center;width:44px}.manager-select-avatar.dept-avatar{background:linear-gradient(135deg,#e94560,#c73e54)}.manager-select-info{display:flex;flex-direction:column}.manager-select-name{color:#1a1a2e;font-size:14px;font-weight:500}.manager-select-dept{color:#666;font-size:12px}.no-managers{color:#999;font-style:italic;padding:24px;text-align:center}.empty-state{color:#666;padding:48px}.action-btn.primary{background:#1a1a2e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background .2s}.action-btn.primary:hover{background:#16213e}.action-btn.secondary{background:#fff;border:2px solid #1a1a2e;border-radius:8px;color:#1a1a2e;cursor:pointer;font-size:14px;font-weight:500;padding:8px 14px;transition:all .2s}.action-btn.secondary:hover{background:#f5f7fa}.cancel{background:#fff;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s}.cancel:hover{background:#f5f5f5}.save{background:#1a1a2e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background .2s}.save:hover{background:#16213e}.save:disabled{background:#ccc;cursor:not-allowed}.approvals-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px}.requests-list{gap:16px}.request-card{background:#f8f9fa;border:1px solid #e9ecef;justify-content:space-between}.request-info{flex:1 1;gap:24px}.request-info,.request-manager{align-items:center;display:flex}.request-manager{gap:12px;min-width:200px}.request-manager-details{display:flex;flex-direction:column}.request-manager-name{color:#1a1a2e;font-weight:500}.request-manager-email{color:#666;font-size:12px}.request-change{align-items:center;gap:16px}.request-arrow{color:#1a1a2e}.request-dept{display:flex;flex-direction:column;min-width:140px}.request-dept-label{color:#999;font-size:11px;text-transform:uppercase}.request-dept-name{color:#1a1a2e;font-weight:500}.request-status .status-badge.pending{background:#fff3cd;color:#856404}.action-btn.danger{background:#dc3545;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;padding:8px 14px;transition:background .2s}.action-btn.danger:hover{background:#c82333}.approval-note{color:#856404;font-size:11px;margin-top:2px}.error-message{border-radius:6px;color:#dc3545;font-size:14px;margin-bottom:12px;padding:10px}.ticket-detail{max-width:900px}.back-btn{background:none;border:none;color:#666;cursor:pointer;font-size:14px;margin-bottom:20px}.back-btn:hover{color:#1a1a2e}.ticket-info{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.ticket-info .ticket-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.ticket-info .ticket-number{color:#666;font-size:14px}.ticket-badges{display:flex;gap:8px}.ticket-badges .badge{border-radius:20px;font-size:12px;font-weight:500;padding:4px 12px;text-transform:capitalize}.ticket-badges .badge.status{color:#fff}.ticket-badges .badge.priority{background:#f8f9fa;color:#666}.ticket-badges .badge.tag{background:#e7f3ff;color:#06c}.ticket-info .ticket-subject{color:#1a1a2e;font-size:24px;margin-bottom:16px}.ticket-info .ticket-body{color:#333;font-size:16px;line-height:1.6;white-space:pre-wrap}.ticket-meta{border-top:1px solid #eee;display:flex;gap:24px}.ticket-attachments,.ticket-meta{margin-top:24px;padding-top:24px}.ticket-attachments h3{margin-bottom:12px}.attachments-list{display:flex;flex-wrap:wrap;gap:12px}.attachment-link{background:#f8f9fa;border-radius:6px;color:#1a1a2e;font-size:14px;padding:8px 16px;text-decoration:none}.ticket-responses{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.ticket-responses h3{margin-bottom:16px}.response{border-radius:8px;padding:16px}.response.staff{background:#e8f4fd;margin-left:20px}.response.student{background:#f8f9fa}.response-header{justify-content:space-between}.response .responder-name{color:#1a1a2e;font-weight:600}.response .responder-role{color:#666;font-size:12px;font-weight:400;margin-left:4px}.response-text{line-height:1.5}.update-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.update-section h3{margin-bottom:16px}.status-select,.update-section textarea{margin-bottom:12px;width:100%}.update-section textarea{border:1px solid #ddd;border-radius:8px;font-family:inherit;font-size:14px;padding:12px;resize:vertical}.update-section button{background:#1a1a2e;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px}.update-section button:hover{background:#16213e}.update-section button:disabled{background:#ccc;cursor:not-allowed}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 20px;transition:all .2s}.btn-primary{background:#1a1a2e;color:#fff}.btn-primary:hover{background:#16213e}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:#e9ecef;color:#495057}.btn-secondary:hover{background:#dee2e6}.btn-outline{background:#fff;border:1px solid #1a1a2e;color:#1a1a2e}.btn-outline:hover{background:#f5f7fa}.btn-danger{background:#dc3545;color:#fff}.page-error,.page-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.page-error p,.page-loading p{color:#666;margin-top:16px}.page-error h3{color:#dc3545;margin-bottom:8px}.spinner-lg{animation:spin 1s linear infinite;border:4px solid #e9ecef;border-radius:50%;border-top-color:#1a1a2e;height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.empty-state{align-items:center;background:#fff;border-radius:12px;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state h3{color:#1a1a2e;margin-bottom:8px}.empty-state p{color:#666}.loading-state{align-items:center;display:flex;flex-direction:column;padding:60px 20px}.loading-state .spinner{animation:spin 1s linear infinite;border:3px solid #e9ecef;border-radius:50%;border-top-color:#1a1a2e;height:40px;width:40px}.tickets-page{max-width:1200px}.tickets-page .page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.tickets-page .page-header h1{color:#1a1a2e;font-size:24px}.header-actions{display:flex;gap:8px}.filters-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:16px}.filter-item{min-width:150px}.filter-item.search-filter{flex:1 1;min-width:200px}.filter-item input,.filter-item select,.search-input{background:#fff;border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px 12px;width:100%}.filter-item input:focus,.filter-item select:focus,.search-input:focus{border-color:#1a1a2e;outline:none}.filter-actions{align-items:center;display:flex;gap:8px;margin-left:auto}.results-info{color:#666;font-size:14px;margin-bottom:16px}.tickets-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.ticket-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;color:inherit;display:block;padding:20px;text-decoration:none;transition:all .2s}.ticket-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.ticket-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.ticket-number{color:#1a1a2e;font-size:14px;font-weight:600}.ticket-badge{border-radius:20px;color:#fff;font-size:12px;font-weight:500;padding:4px 10px;text-transform:capitalize}.ticket-subject{font-size:16px;line-height:1.4;margin-bottom:8px}.ticket-preview{color:#666;font-size:14px;line-height:1.5;margin-bottom:12px}.ticket-card-footer{align-items:center;border-top:1px solid #eee;display:flex;justify-content:space-between;padding-top:12px}.ticket-priority{font-size:12px;font-weight:600;text-transform:uppercase}.ticket-date{color:#999;font-size:12px}.pagination{align-items:center;border-top:1px solid #eee;display:flex;gap:16px;justify-content:center;margin-top:24px;padding-top:24px}.page-info{color:#666;font-size:14px}.ticket-detail-page{max-width:900px}.back-link{background:none;border:none;color:#666;cursor:pointer;display:inline-block;font-size:14px;margin-bottom:20px;padding:0}.back-link:hover{color:#1a1a2e}.ticket-header-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:20px;padding:24px}.ticket-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.ticket-id-section{align-items:center;display:flex;gap:12px}.ticket-id{color:#666;font-size:14px;font-weight:500}.ticket-status-badge{border-radius:20px;color:#fff;font-size:12px;font-weight:500;padding:4px 12px}.ticket-subject{color:#1a1a2e;font-size:24px;line-height:1.3;margin-bottom:20px}.ticket-meta-grid{grid-gap:16px;border-top:1px solid #eee;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding-top:20px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-label{color:#999;font-size:12px;text-transform:uppercase}.meta-value{color:#1a1a2e;font-weight:500}.priority-high{color:#dc3545}.priority-medium{color:#ffc107}.priority-low{color:#28a745}.ticket-body-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:20px;padding:24px}.ticket-body-card h3{color:#1a1a2e;margin-bottom:12px}.ticket-description{color:#333;font-size:15px;line-height:1.7;white-space:pre-wrap}.ticket-tag{border-top:1px solid #eee;margin-top:16px;padding-top:16px}.tag-label{color:#999;font-size:12px;margin-right:8px}.tag-value{background:#e7f3ff;border-radius:20px;color:#06c;display:inline-block;font-size:12px;padding:4px 12px;text-transform:capitalize}.ticket-attachments{border-top:1px solid #eee;margin-top:20px;padding-top:20px}.ticket-attachments h4{color:#1a1a2e;margin-bottom:12px}.attachments-grid{display:flex;flex-wrap:wrap;gap:8px}.attachment-item{align-items:center;background:#f8f9fa;border-radius:6px;color:#1a1a2e;display:inline-flex;font-size:13px;gap:6px;padding:8px 14px;text-decoration:none}.ticket-responses-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:20px;padding:24px}.ticket-responses-card h3{color:#1a1a2e;margin-bottom:20px}.no-responses{color:#999;padding:20px;text-align:center}.responses-list{flex-direction:column}.response-item,.responses-list{display:flex;gap:16px}.response-avatar{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:600;height:44px;justify-content:center;width:44px}.response-item.student .response-avatar{background:linear-gradient(135deg,#6c757d,#495057)}.response-content{background:#f8f9fa;border-radius:12px;flex:1 1;padding:16px}.response-item.staff .response-content{background:#e8f4fd}.response-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.responder-name{color:#1a1a2e;font-weight:600}.responder-role{background:#e9ecef;border-radius:10px;color:#666;font-size:11px;padding:2px 8px}.response-date{color:#999;font-size:12px;margin-left:auto}.response-text{color:#333;line-height:1.6}.ticket-reply-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px}.ticket-reply-card h3{color:#1a1a2e;margin-bottom:16px}.reply-form{display:flex;flex-direction:column;gap:12px}.reply-form textarea,.status-select{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:12px}.reply-form textarea{font-family:inherit;resize:vertical}.reply-form textarea:focus{border-color:#1a1a2e;outline:none}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:16px;max-width:500px;overflow:hidden;width:90%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{color:#1a1a2e;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;width:32px}.modal-close:hover{background:#f5f5f5}.modal-body{padding:24px}.modal-body .form-group{margin-bottom:16px}.modal-body .form-group:last-child{margin-bottom:0}.modal-body label{color:#666;display:block;font-size:14px;margin-bottom:6px}.modal-body input,.modal-body textarea{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px 12px;width:100%}.modal-body input:focus,.modal-body textarea:focus{border-color:#1a1a2e;outline:none}.modal-footer{border-top:1px solid #eee;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.sidebar.manager-sidebar .sidebar-title{color:#e94560;display:block;font-size:11px;letter-spacing:1px;margin-bottom:20px;text-transform:uppercase}.data-table{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden}.data-table table{border-collapse:collapse;width:100%}.data-table th{background:#f8f9fa;color:#666;font-size:12px;font-weight:600;text-align:left;text-transform:uppercase}.data-table td,.data-table th{border-bottom:1px solid #eee;padding:14px 16px}.data-table td{color:#333;font-size:14px}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover{background:#f8f9fa}@media (max-width:768px){.filters-card{flex-direction:column}.filter-item{width:100%}.filter-actions{flex-direction:column;margin-left:0;width:100%}.filter-actions .btn{width:100%}.tickets-page .page-header{align-items:flex-start;flex-direction:column;gap:16px}.header-actions{width:100%}.header-actions .btn{flex:1 1}}.manager-dashboard{max-width:1000px}.manager-dashboard>h1{color:#1a1a2e;font-size:28px;margin-bottom:24px}.reassignment-section{background:linear-gradient(135deg,#fff3cd,#ffeeba);border:1px solid #ffc107;border-radius:16px;margin-bottom:24px;padding:24px}.section-header{align-items:center;display:flex;gap:12px;margin-bottom:8px}.section-header h2{color:#856404;font-size:18px;margin:0}.section-description{color:#856404;font-size:14px;margin-bottom:16px}.badge-count{background:#dc3545;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:4px 12px}.requests-list{display:flex;flex-direction:column;gap:12px}.request-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:20px;padding:20px}.request-icon{font-size:32px}.request-details{align-items:center;display:flex;flex:1 1;gap:16px}.request-change{display:flex;flex-direction:column;gap:4px}.request-change .dept-label{color:#999;font-size:11px;text-transform:uppercase}.request-change .dept-name{color:#1a1a2e;font-size:15px;font-weight:600}.request-change .dept-name.new{color:#28a745}.request-arrow{color:#28a745;font-size:20px}.request-actions{display:flex;gap:8px}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838}.btn-danger-outline{background:#fff;border:1px solid #dc3545;color:#dc3545}.btn-danger-outline:hover{background:#fff5f5}.stats-section{margin-bottom:24px}.stats-section h2{color:#1a1a2e;font-size:18px;margin-bottom:16px}.stats-section .stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stats-section .stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;gap:16px;padding:20px}.stats-section .stat-icon{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;font-size:28px;height:48px;justify-content:center;width:48px}.stats-section .stat-content{display:flex;flex-direction:column}.stats-section .stat-number{color:#1a1a2e;font-size:24px;font-weight:700}.stats-section .stat-label{color:#666;font-size:12px}.quick-actions{display:flex;gap:16px}.action-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;color:#1a1a2e;display:flex;flex:1 1;gap:12px;padding:20px 24px;text-decoration:none;transition:all .2s}.action-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.action-card .action-icon{font-size:24px}.action-card .action-text{flex:1 1;font-weight:500}.action-card .action-arrow{color:#1a1a2e;font-size:18px}.page-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px}.page-loading p{color:#666;margin-top:16px}.profile-page{margin:0 auto;max-width:800px}.profile-page h1{color:#1a1a2e;font-size:28px;margin-bottom:24px}.profile-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:24px;padding:24px}.profile-header{align-items:center;border-bottom:1px solid #eee;display:flex;gap:24px;margin-bottom:32px;padding-bottom:24px}.profile-avatar-container{flex-shrink:0;height:100px;position:relative;width:100px}.profile-avatar-img{object-fit:cover}.profile-avatar-img,.profile-avatar-placeholder{border:3px solid #e94560;border-radius:50%;height:100px;width:100px}.profile-avatar-placeholder{background:linear-gradient(135deg,#e94560,#1a1a2e);font-size:40px;font-weight:600}.change-photo-btn,.profile-avatar-placeholder{align-items:center;color:#fff;display:flex;justify-content:center}.change-photo-btn{background:#e94560;border:none;border-radius:50%;bottom:0;cursor:pointer;font-size:14px;height:32px;position:absolute;right:0;transition:background .2s;width:32px}.change-photo-btn:hover{background:#d63652}.profile-info h2{color:#1a1a2e;font-size:24px;margin-bottom:4px}.profile-email{color:#666;margin-bottom:8px}.profile-role{background:#f0f0f0;border-radius:20px;color:#1a1a2e;display:inline-block;font-size:12px;font-weight:500;padding:4px 12px}.profile-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.profile-form .form-group{margin-bottom:16px}.profile-form label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.profile-form input{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.profile-form input:focus{border-color:#e94560;outline:none}.form-actions{margin-top:20px}.form-actions button{background:#e94560;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:background .2s}.form-actions button:hover{background:#d63652}.form-actions button:disabled{background:#ccc;cursor:not-allowed}.profile-section h3{color:#1a1a2e;font-size:18px;margin-bottom:16px}.password-form .form-group{margin-bottom:16px}.password-form label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.password-form input{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.password-form input:focus{border-color:#e94560;outline:none}.danger-zone{border-left:4px solid #dc3545}.logout-btn{background:#dc3545;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:background .2s}.logout-btn:hover{background:#c82333}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724}.error-message,.success-message{margin-bottom:16px;padding:12px 16px}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24}
/*# sourceMappingURL=main.89d53756.css.map*/