body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.notifications-container{display:inline-block;position:relative}.notification-bell{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:50%;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;font-size:1.2rem;height:45px;justify-content:center;position:relative;transition:all .3s ease;width:45px}.notification-bell:hover{background:#f8fafc;border-color:#1e3c72;box-shadow:0 4px 12px #1e3c7226;transform:translateY(-1px)}.notification-bell.has-notifications{animation:notification-pulse 2s infinite;background:linear-gradient(135deg,#1e3c72,#2a5298);border-color:#1e3c72;color:#fff}@keyframes notification-pulse{0%,to{box-shadow:0 2px 8px #1e3c724d;transform:scale(1)}50%{box-shadow:0 4px 15px #1e3c7266;transform:scale(1.05)}}.notification-badge{align-items:center;animation:badge-bounce .6s ease-out;background:#ff4757;border:2px solid #fff;border-radius:50%;color:#fff;display:flex;font-size:.7rem;font-weight:700;height:22px;justify-content:center;position:absolute;right:-8px;top:-8px;width:22px}@keyframes badge-bounce{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.notifications-overlay{background:#0000;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.notifications-dropdown{animation:dropdown-appear .3s ease-out;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 20px 50px #00000026;max-height:500px;overflow:hidden;position:absolute;right:0;top:55px;width:380px;z-index:1000}@keyframes dropdown-appear{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.notifications-header{align-items:center;background:linear-gradient(135deg,#1e3c72,#2a5298);border-bottom:1px solid #f1f5f9;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.notifications-header h3{font-size:1.1rem;font-weight:600;margin:0}.notifications-actions{align-items:center;display:flex;gap:12px}.clear-all-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;padding:6px 12px;transition:all .2s}.clear-all-btn:hover{background:#ffffff4d}.notifications-header .close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:28px;justify-content:center;padding:0;transition:all .2s;width:28px}.notifications-header .close-btn:hover{background:#fff3}.notifications-list{max-height:400px;overflow-y:auto}.no-notifications{color:#9ca3af;padding:60px 20px;text-align:center}.no-notifications .empty-icon{display:block;font-size:3rem;margin-bottom:16px;opacity:.5}.no-notifications p{font-size:.95rem;margin:0}.notification-item{align-items:flex-start;border-bottom:1px solid #f8fafc;cursor:pointer;display:flex;padding:16px 24px;position:relative;transition:all .2s}.notification-item:hover{background:#f8fafc}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:#fef7f0;border-left:4px solid #1e3c72}.notification-item.unread:hover{background:#fef2e8}.notification-icon{flex-shrink:0;font-size:1.3rem;margin-right:12px;margin-top:2px}.notification-content{flex:1 1;min-width:0}.notification-title{color:#1e3c72;font-size:.9rem;font-weight:600;line-height:1.4;margin-bottom:4px}.notification-message{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4b5563;display:-webkit-box;font-size:.85rem;line-height:1.4;margin-bottom:6px;overflow:hidden}.notification-time{color:#9ca3af;font-size:.75rem;font-weight:500}.unread-indicator{background:#1e3c72;border-radius:50%;flex-shrink:0;height:8px;margin-left:8px;margin-top:8px;width:8px}@media (max-width:480px){.notifications-dropdown{right:-10px;width:calc(100vw - 40px)}.notification-item{padding:14px 16px}.notifications-header{padding:16px 20px}}.layout{background:#f8fafc;display:flex;flex-direction:column;min-height:100vh}.header{align-items:center;background:linear-gradient(135deg,#1e3c72,#2a5298);box-shadow:0 2px 10px #0000001a;color:#fff;display:flex;height:60px;justify-content:space-between;padding:0 20px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.header-left{gap:20px}.sidebar-toggle{background:#ffffff1a;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:18px;padding:8px 12px;transition:background .2s}.sidebar-toggle:hover{background:#fff3}.header-title{font-size:1.5rem;font-weight:600;margin:0}.header-logo{filter:brightness(0) invert(1);height:36px;max-width:200px;object-fit:contain}.user-menu{align-items:center;display:flex}.user-profile-container{position:relative}.user-profile-link{align-items:center;background:#ffffff1a;border-radius:20px;color:#fff;cursor:pointer;display:flex;gap:12px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.user-profile-link:hover{background:#fff3;color:#fff;transform:translateY(-1px)}.user-name{font-weight:500}.user-avatar{align-items:center;background:#fff3;border-radius:50%;display:flex;font-size:16px;height:32px;justify-content:center;overflow:hidden;position:relative;width:32px}.user-avatar .avatar-image{border-radius:50%;height:100%;object-fit:cover;width:100%}.user-avatar .avatar-placeholder{align-items:center;background:linear-gradient(135deg,#ffffff4d,#ffffff1a);color:#fff;display:flex;font-size:14px;font-weight:600;height:100%;justify-content:center;width:100%}.user-dropdown-menu{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:8px;min-width:180px;padding:8px;position:absolute;right:0;top:100%;z-index:1000}.dropdown-item{align-items:center;background:none;border:none;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:10px 12px;text-decoration:none;transition:all .2s;width:100%}.dropdown-item:hover{background:#f3f4f6;color:#1e3c72}.dropdown-icon{font-size:16px;text-align:center;width:20px}.logout-btn{color:#ef4444}.logout-btn:hover{background:#fef2f2;color:#dc2626}.main-container{display:flex;flex:1 1;overflow:hidden}.sidebar{background:#fff;box-shadow:2px 0 10px #0000000d;overflow-y:auto;transition:transform .3s ease,width .3s ease;width:260px;z-index:100}.sidebar.closed{width:70px}.sidebar-nav{padding:20px 0}.nav-item{align-items:center;border-left:3px solid #0000;color:#64748b;display:flex;padding:12px 20px;position:relative;text-decoration:none;transition:all .2s}.nav-item:hover{background:#f1f5f9}.nav-item.active,.nav-item:hover{border-left-color:#1e3c72;color:#1e3c72}.nav-item.active{background:linear-gradient(90deg,#1e3c721a,#2a52980d);font-weight:600}.nav-icon{font-size:20px;margin-right:12px;min-width:20px;text-align:center}.nav-text{font-size:14px;font-weight:500}.sidebar.closed .nav-icon{margin-right:0}.sidebar.closed .nav-item{justify-content:center;padding:12px}.content{background:#f8fafc;flex:1 1;height:calc(100vh - 80px);overflow-y:auto;padding:10px}@media (max-width:768px){.header-title{font-size:1.2rem}.sidebar{height:calc(100vh - 60px);left:0;position:fixed;top:60px;transform:translateX(-100%);width:260px;z-index:1000}.sidebar.open{transform:translateX(0)}.sidebar.closed{transform:translateX(-100%);width:260px}.content{padding:20px;width:100%}.user-name{display:none}}.admin-menu-section{margin-top:auto}.admin-menu-toggle{align-items:center;background:none;border:none;border-left:3px solid #0000;color:#64748b;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:12px 20px;text-align:left;transition:all .2s;width:100%}.admin-menu-toggle:hover{background:#f1f5f9;border-left-color:#1e3c72;color:#1e3c72}.admin-menu-toggle.open{background:linear-gradient(90deg,#1e3c721a,#2a52980d);border-left-color:#1e3c72;color:#1e3c72;font-weight:600}.accordion-arrow{font-size:12px;transition:transform .2s}.admin-menu-toggle.open .accordion-arrow{transform:rotate(0deg)}.admin-submenu{background:#f8fafc;overflow:hidden;transition:max-height .3s ease-out}.admin-submenu.closed{max-height:0}.admin-submenu.open{max-height:300px}.submenu-item{border-left:3px solid #0000;padding-left:40px!important}.submenu-item:hover{background:#e2e8f0;border-left-color:#1e3c72}.submenu-item.active{background:linear-gradient(90deg,#1e3c7226,#2a529814);border-left-color:#1e3c72;font-weight:600}.sidebar.closed .admin-menu-toggle{justify-content:center;padding:12px}.sidebar.closed .accordion-arrow,.sidebar.closed .admin-submenu,.sidebar.closed .nav-text{display:none}@media (max-width:480px){.header{padding:0 15px}.header-title{font-size:1rem}.content{padding:15px}}.vacation-form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.vacation-form-container{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.vacation-form-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e9ecef;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.vacation-form-header h3{font-size:1.3rem;font-weight:600;margin:0}.close-button{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;transition:background-color .2s;width:30px}.close-button:hover{background:#fff3}.vacation-form{padding:24px}.form-input,.form-select,.form-textarea{background:#fff;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-textarea{min-height:80px}.checkbox-label{color:#495057;font-weight:500}.form-checkbox{margin-right:8px;transform:scale(1.2);width:auto!important}.vacation-days-info{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-left:4px solid #667eea;border-radius:8px;color:#495057;font-size:.95rem;margin:20px 0;padding:12px 16px}.vacation-days-info strong{color:#667eea;font-weight:600}.btn-cancel,.btn-submit{border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;min-width:100px;padding:12px 24px;transition:all .2s}.btn-cancel{background:#f8f9fa;border:2px solid #dee2e6;color:#6c757d}.btn-cancel:hover{background:#e9ecef;border-color:#adb5bd}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff}.btn-submit:hover{box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.btn-submit:active{transform:translateY(0)}@media (max-width:640px){.vacation-form-container{margin:10px;width:95%}.vacation-form,.vacation-form-header{padding:16px}.form-row{gap:0;grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%}}.profile-image-container{align-items:center;display:inline-flex;gap:8px}.profile-image{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 2px 4px #0000001a;display:flex;flex-shrink:0;justify-content:center;overflow:hidden;position:relative}.profile-image.small{font-size:10px;height:24px;width:24px}.profile-image.medium{font-size:12px;height:32px;width:32px}.profile-image.large{font-size:16px;height:48px;width:48px}.profile-image.extra-large{font-size:20px;height:64px;width:64px}.profile-img{display:block;height:100%;object-fit:cover;width:100%}.profile-initials{align-items:center;color:#fff;display:flex;font-weight:600;height:100%;justify-content:center;text-transform:uppercase;width:100%}.profile-name{color:#374151;font-size:14px;font-weight:500}.profile-image:hover{box-shadow:0 4px 8px #00000026;transform:scale(1.05);transition:transform .2s ease}.profile-image:first-child{background:linear-gradient(135deg,#667eea,#764ba2)}.profile-image:nth-child(2){background:linear-gradient(135deg,#f093fb,#f5576c)}.profile-image:nth-child(3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.profile-image:nth-child(4){background:linear-gradient(135deg,#43e97b,#38f9d7)}.profile-image:nth-child(5){background:linear-gradient(135deg,#fa709a,#fee140)}.profile-image-inline{align-items:center;display:inline-flex;gap:6px;vertical-align:middle}.profile-image-inline .profile-image{font-size:9px;height:20px;width:20px}.profile-image-inline .profile-name{font-size:13px}.notice-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.notice-modal-container{animation:noticeModalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 40px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:700px;overflow:hidden;width:90%}@keyframes noticeModalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.notice-modal-header{align-items:flex-start;background:linear-gradient(135deg,#3b82f6,#1e40af);border-bottom:2px solid #f1f5f9;color:#fff;display:flex;justify-content:space-between;padding:24px 24px 20px}.notice-header-info{flex:1 1;margin-right:16px}.notice-modal-title{color:#fff;font-size:1.5rem;font-weight:700;line-height:1.4;margin:0 0 8px}.notice-pinned-badge{background:#fbbf24;border-radius:12px;color:#92400e;font-size:.75rem;font-weight:600;padding:4px 8px}.notice-close-btn{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:1.5rem;padding:4px;transition:background-color .2s}.notice-close-btn:hover{background-color:#fff3}.notice-modal-body{flex:1 1;overflow-y:auto;padding:24px}.notice-loading{padding:40px 20px;text-align:center}.loading-spinner{border:3px solid #e5e7eb;margin:0 auto 16px}.notice-meta-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:16px}.notice-meta-item{align-items:center;display:flex;font-size:.875rem;gap:8px}.meta-label{color:#64748b}.meta-value{color:#1f2937}.notice-content{margin-bottom:24px}.notice-content-text{word-wrap:break-word;background:#fefefe;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-family:inherit;font-size:1rem;line-height:1.6;margin:0;padding:20px;white-space:pre-wrap}.notice-attachments{margin-top:24px}.notice-attachments h4{color:#1e3c72;font-size:1.1rem;font-weight:600;margin:0 0 12px}.attachment-item{background:#f8fafc;border-radius:8px;padding:12px 16px}.attachment-item:hover{background:#e2e8f0;border-color:#cbd5e1}.attachment-icon{font-size:1.2rem}.attachment-name{flex:1 1;font-weight:500}.attachment-size{color:#64748b;font-size:.875rem}.notice-error{color:#ef4444;padding:40px 20px;text-align:center}.notice-error p{font-size:1rem;margin:0}.notice-modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;padding:20px 24px}.notice-action-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 24px;transition:background-color .2s}.notice-action-btn:hover{background:#1e40af}@media (max-width:768px){.notice-modal-container{max-height:90vh;width:95%}.notice-modal-header{padding:20px 20px 16px}.notice-modal-title{font-size:1.25rem}.notice-modal-body{padding:20px}.notice-meta-info{flex-direction:column;gap:8px}.notice-content-text{font-size:.9rem;padding:16px}}.task-comments{border-top:2px solid #f1f5f9;margin-top:30px;padding-top:25px}.comments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.comments-header h4{color:#1e3c72;font-size:1.2rem;font-weight:600;margin:0}.comment-hint{color:#6b7280;font-size:.8rem;font-style:italic}.comments-list{padding-right:5px}.no-comments{padding:40px 20px}.no-comments-icon{font-size:2rem;margin-bottom:10px}.no-comments p{font-size:.9rem;margin:0}.comment-item{animation:slideInComment .3s ease-out;display:flex;gap:12px;margin-bottom:20px}@keyframes slideInComment{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.comment-avatar,.comment-item .profile-image-container{flex-shrink:0}.comment-header .profile-image-container{margin-right:4px}.comment-content{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex:1 1;padding:15px;position:relative}.comment-content:before{border-right:8px solid #f8fafc;left:-8px}.comment-content:after,.comment-content:before{border-bottom:8px solid #0000;border-top:8px solid #0000;content:"";height:0;position:absolute;top:15px;width:0}.comment-content:after{border-right:8px solid #e2e8f0;left:-9px}.comment-header{gap:10px}.comment-author{color:#1e3c72;font-size:.9rem}.comment-time{color:#6b7280;font-size:.8rem}.comment-actions{gap:5px;margin-left:auto}.comment-delete,.comment-edit{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1rem;opacity:.7;padding:4px 6px;transition:all .2s}.comment-edit{color:#3b82f6}.comment-edit:hover{background:#3b82f61a;opacity:1}.comment-delete{color:#ef4444}.comment-delete:hover{background:#ef44441a;opacity:1}.comment-text{word-wrap:break-word;color:#374151;font-size:.9rem;line-height:1.5}.mention{background:linear-gradient(135deg,#3b82f6,#1e40af);border-radius:12px;box-shadow:0 2px 4px #3b82f64d;color:#fff;cursor:pointer;display:inline-block;font-size:.85em;font-weight:700;line-height:1.2;margin:0 1px;padding:3px 8px;position:relative;text-decoration:none;transition:all .2s ease}.mention:hover{background:linear-gradient(135deg,#1e40af,#1e3a8a);box-shadow:0 4px 8px #3b82f666;transform:translateY(-1px)}.mention:before{content:"";font-weight:900;margin-right:1px}.mention-me{animation:mentionPulse 2s ease-in-out;background:linear-gradient(135deg,#ef4444,#dc2626)!important;border:2px solid #fecaca;box-shadow:0 0 15px #ef444466;color:#fff!important}.mention-me:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;box-shadow:0 6px 20px #ef444499;transform:translateY(-2px)}@keyframes mentionPulse{0%{box-shadow:0 0 0 0 #ef4444b3}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 0 0 #ef444400}}.comment-mentions{border-top:1px solid #e5e7eb;font-size:.8rem;margin-top:10px;padding-top:10px}.mentions-label{color:#6b7280;margin-right:8px}.mentioned-user{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #7dd3fc;border-radius:15px;box-shadow:0 1px 3px #0ea5e933;color:#0369a1;display:inline-block;font-size:.75rem;font-weight:600;margin-bottom:4px;margin-right:8px;padding:4px 10px}.mentioned-user:before{color:#0284c7;content:"@";font-weight:700;margin-right:2px}.comment-form{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:16px;transition:border-color .2s}.comment-form:focus-within{border-color:#1e3c72}.comment-input-container{display:flex;gap:12px;margin-bottom:12px}.current-user-avatar{align-items:center;background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.9rem;font-weight:600;height:36px;justify-content:center;width:36px}.comment-input-wrapper{flex:1 1;position:relative}.comment-input{line-height:1.5;transition:border-color .2s}.comment-input:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a}.comment-input::placeholder{color:#9ca3af}.mention-list{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 25px #00000026;max-height:200px;overflow-y:auto;width:280px}.mention-item{align-items:center;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;gap:10px;padding:10px 12px;transition:background-color .2s}.mention-item:last-child{border-bottom:none}.mention-item:hover{background:#f8fafc}.mention-item.no-results{color:#6b7280;cursor:default;font-style:italic;justify-content:center}.mention-item.no-results:hover{background:#fff}.mention-avatar{align-items:center;background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.8rem;font-weight:600;height:28px;justify-content:center;width:28px}.mention-info{flex:1 1}.mention-name{color:#1e3c72;font-size:.9rem;font-weight:600}.mention-department{color:#6b7280;font-size:.8rem}.comment-actions{display:flex;justify-content:flex-end}.comment-actions .btn-primary{font-size:.9rem;padding:8px 16px}.comment-actions .btn-primary:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.edit-comment-form{margin-top:10px}.edit-comment-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.9rem;line-height:1.4;margin-bottom:8px;min-height:60px;padding:8px 12px;resize:vertical;width:100%}.edit-comment-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.edit-comment-actions{display:flex;gap:8px}.btn-sm{border-radius:4px;font-size:.8rem;padding:6px 12px}.comment-footer{border-top:1px solid #f3f4f6;margin-top:10px;padding-top:8px}.reply-button{background:none;border:none;color:#6b7280;cursor:pointer;font-size:.8rem;padding:4px 0;transition:color .2s}.reply-button:hover{color:#3b82f6}.replies-list{border-left:2px solid #e5e7eb;margin-top:15px;padding-left:20px}.reply-item{display:flex;gap:10px;margin-bottom:12px}.reply-avatar{font-size:.8rem!important;height:30px!important;width:30px!important}.reply-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:12px;padding:12px}.reply-input-container{display:flex;gap:10px;margin-bottom:10px}.reply-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;flex:1 1;font-size:.85rem;line-height:1.4;min-height:50px;padding:8px 12px;resize:vertical}.reply-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a;outline:none}.reply-actions{display:flex;gap:8px;justify-content:flex-end}.btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.btn-secondary:hover{background:#e5e7eb}@media (max-width:768px){.comments-header{align-items:flex-start;flex-direction:column;gap:8px}.comment-input-container{gap:8px}.comment-avatar,.current-user-avatar{font-size:.8rem;height:32px;width:32px}.mention-list{width:250px}.comment-actions{justify-content:stretch}.comment-actions .btn-primary{width:100%}}@media (max-width:480px){.task-comments{margin-top:20px;padding-top:20px}.comment-form{padding:12px}.mention-list{left:20px!important;width:calc(100vw - 40px)}}.task-modal-overlay{align-items:center;background:#0009;bottom:0;box-sizing:border-box;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.task-modal-container{background:#fff;border-radius:16px;box-shadow:0 25px 50px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.task-modal-header{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;color:#fff;display:flex;justify-content:space-between;padding:24px 28px}.task-header-info{flex:1 1;margin-right:16px}.task-modal-title{color:#fff;font-size:1.5rem;font-weight:700;line-height:1.4;margin:0 0 12px}.task-header-badges{display:flex;flex-wrap:wrap;gap:8px}.task-header-badges .priority-badge,.task-header-badges .status-badge{border-radius:16px;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.task-header-badges .priority-badge{background:#fff3;border:1px solid #ffffff4d;color:#fff}.task-header-badges .status-badge{background:#ffffffe6;color:#374151}.task-close-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-size:1.2rem;font-weight:700;padding:8px 12px;transition:all .2s}.task-close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.task-modal-body{flex:1 1;gap:24px;overflow-y:auto;padding:24px 28px}.task-loading,.task-modal-body{display:flex;flex-direction:column}.task-loading{align-items:center;color:#6b7280;justify-content:center;padding:60px 20px}.task-meta-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.task-meta-row{display:flex;gap:32px;margin-bottom:12px}.task-meta-row:last-child{margin-bottom:0}.task-meta-item{align-items:center;display:flex;flex:1 1;gap:8px}.meta-label{color:#374151;font-weight:600;min-width:60px}.meta-value{color:#6b7280;font-weight:500}.task-description{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.task-description h4{color:#374151;font-size:1.1rem;font-weight:600;margin:0 0 16px}.task-description-content{color:#4b5563;font-size:.95rem;line-height:1.6;white-space:pre-wrap}.task-comments-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.task-comments-section h4{color:#374151;font-size:1.1rem;font-weight:600;margin:0 0 16px}.comments-list{margin-bottom:20px;max-height:300px;overflow-y:auto}.comment-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;padding:16px}.comment-item:last-child{margin-bottom:0}.comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.comment-author{color:#374151;font-weight:600}.comment-date{color:#6b7280;font-size:.85rem}.comment-content{color:#4b5563;line-height:1.5;white-space:pre-wrap}.no-comments{color:#9ca3af;font-style:italic;margin:0;padding:20px;text-align:center}.comment-form{border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:12px;padding-top:16px}.comment-input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:.9rem;min-height:80px;padding:12px;resize:vertical;width:100%}.comment-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.comment-submit-btn{align-self:flex-end;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s}.comment-submit-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.comment-submit-btn:disabled{cursor:not-allowed;opacity:.6}.task-error{align-items:center;color:#ef4444;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.task-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;padding:20px 28px}.task-action-btn{background:#6b7280;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 24px;transition:all .2s}.task-action-btn:hover{background:#4b5563;transform:translateY(-1px)}.priority-low{background:#4caf501a!important;border:1px solid #4caf504d!important;color:#4caf50!important}.priority-normal{background:#2196f31a!important;border:1px solid #2196f34d!important;color:#2196f3!important}.priority-high{background:#ff98001a!important;border:1px solid #ff98004d!important;color:#ff9800!important}.priority-urgent{background:#f443361a!important;border:1px solid #f443364d!important;color:#f44336!important}.status-badge.requested{background:#667eea1a!important;color:#667eea!important}.status-badge.in_progress{background:#43e97b1a!important;color:#43e97b!important}.status-badge.completed{background:#4facfe1a!important;color:#4facfe!important}@media (max-width:768px){.task-modal-overlay{padding:10px}.task-modal-container{max-height:95vh}.task-modal-body,.task-modal-footer,.task-modal-header{padding:16px 20px}.task-meta-row{flex-direction:column;gap:12px}.task-modal-title{font-size:1.3rem}}.modal-overlay{background-color:#00000080}.request-tasks-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;max-height:80vh;max-width:900px;overflow:hidden;width:90%}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-title{align-items:center;display:flex;gap:12px}.modal-title h2{font-size:1.4rem;font-weight:600;margin:0}.task-count{background:#fff3;font-size:.9rem;font-weight:500}.modal-close-btn{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5rem;padding:8px;transition:background-color .2s}.modal-close-btn:hover{background-color:#ffffff1a}.modal-filters{background-color:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;gap:20px;padding:16px 24px}.filter-group{align-items:center;gap:8px}.filter-group label{color:#495057;font-size:.9rem}.filter-group select{background:#fff;border:1px solid #ced4da;border-radius:6px;font-size:.9rem;min-width:120px;padding:6px 12px}.modal-content{flex:1 1;overflow-y:auto;padding:0}.loading-state{padding:60px 20px}.empty-state,.loading-state{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center}.empty-icon{font-size:4rem;opacity:.5}.empty-state h3{color:#495057;margin:0 0 8px}.empty-state p{font-size:.9rem;margin:0}.tasks-list{padding:16px 24px 24px}.task-item{border:1px solid #e9ecef;margin-bottom:12px;padding:16px;transition:all .2s ease}.task-item:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.task-item:last-child{margin-bottom:0}.task-priority{display:flex;gap:8px;margin-bottom:12px}.priority-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.priority-low{background-color:#d1ecf1;color:#0c5460}.priority-normal{background-color:#d4edda;color:#155724}.priority-high{background-color:#fff3cd;color:#856404}.priority-urgent{background-color:#f8d7da;color:#721c24}.category-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 8px;text-transform:capitalize}.task-main-content{flex:1 1}.task-header{gap:12px;margin-bottom:8px}.task-title{color:#2c3e50;flex:1 1;margin:0}.status-badge{border-radius:12px;font-size:.8rem;font-weight:500;padding:4px 12px;white-space:nowrap}.status-badge.requested{background-color:#fff3cd;color:#856404}.status-badge.in_progress{background-color:#cce7ff;color:#004085}.status-badge.completed{background-color:#d4edda;color:#155724}.task-description{color:#6c757d;margin-bottom:12px}.task-meta{flex-wrap:wrap;font-size:.85rem;gap:20px}.meta-item{display:flex;gap:6px}.meta-label{color:#6c757d;font-weight:500}.meta-value{color:#495057}.meta-value.due-date{font-weight:500}.modal-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;gap:12px;padding:20px 24px}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s}.btn-secondary:hover{background-color:#5a6268}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}@media (max-width:768px){.request-tasks-modal{max-height:90vh;width:95%}.modal-header{padding:16px 20px}.modal-title h2{font-size:1.2rem}.modal-filters{flex-direction:column;gap:12px;padding:12px 20px}.tasks-list{padding:12px 20px 20px}.task-item{padding:12px}.task-header{align-items:flex-start}.task-header,.task-meta{flex-direction:column;gap:8px}.modal-footer{flex-direction:column;padding:16px 20px}.btn-primary,.btn-secondary{width:100%}}.vacation-detail-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden;width:90%}.vacation-detail-modal .modal-header{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-bottom:1px solid #e9ecef;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.vacation-detail-modal .modal-title{align-items:center;display:flex;gap:12px}.vacation-detail-modal .modal-title h2{font-size:1.3rem;font-weight:600;margin:0}.vacation-detail-modal .vacation-count{background:#fff3;border-radius:12px;font-size:.85rem;font-weight:500;padding:4px 8px}.vacation-detail-modal .modal-close-btn{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5rem;padding:8px;transition:background-color .2s}.vacation-detail-modal .modal-close-btn:hover{background-color:#ffffff1a}.vacation-detail-modal .modal-content{flex:1 1;overflow-y:auto;padding:0}.vacation-detail-modal .empty-state{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.vacation-detail-modal .empty-icon{font-size:4rem;margin-bottom:16px;opacity:.5}.vacation-detail-modal .empty-state h3{color:#495057;margin:0 0 8px}.vacation-detail-modal .empty-state p{font-size:.9rem;margin:0}.vacation-list{padding:20px 24px}.vacation-item{background:#fafbfc;border:1px solid #e9ecef;border-radius:8px;display:flex;gap:16px;margin-bottom:12px;padding:16px;position:relative;transition:all .2s ease}.vacation-item:hover{background:#f0fdf4;border-color:#10b981;box-shadow:0 4px 12px #10b9811a;transform:translateY(-1px)}.vacation-item:last-child{margin-bottom:0}.vacation-icon{align-items:center;display:flex;flex-shrink:0;font-size:2rem;justify-content:center}.vacation-info{flex:1 1}.vacation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.employee-name{color:#2c3e50;font-size:1.1rem;margin:0}.vacation-type-badge{border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:4px 12px;text-transform:capitalize}.vacation-details{display:flex;flex-direction:column;gap:8px}.detail-item{font-size:.9rem;gap:8px}.detail-label{color:#6c757d;flex-shrink:0;font-weight:500;min-width:80px}.detail-value{color:#495057;flex:1 1}.vacation-actions{display:flex;flex-direction:column;flex-shrink:0;gap:8px;margin-left:auto}.action-btn{align-items:center;background:none;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;justify-content:center;min-height:36px;min-width:36px;padding:8px;transition:all .2s ease}.action-btn:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.edit-btn{background:#f0f9ff;border-color:#0ea5e9}.edit-btn:hover{background:#0ea5e9;color:#fff}.delete-btn{background:#fef2f2;border-color:#ef4444}.delete-btn:hover:not(:disabled){background:#ef4444;color:#fff}.delete-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.delete-btn:disabled:hover{box-shadow:none;transform:none}.vacation-detail-modal .modal-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.vacation-detail-modal .btn-primary,.vacation-detail-modal .btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s}.vacation-detail-modal .btn-secondary{background-color:#6c757d;color:#fff}.vacation-detail-modal .btn-secondary:hover{background-color:#5a6268}.vacation-detail-modal .btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.vacation-detail-modal .btn-primary:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}@media (max-width:768px){.vacation-detail-modal{max-height:90vh;width:95%}.vacation-detail-modal .modal-header{padding:16px 20px}.vacation-detail-modal .modal-title h2{font-size:1.1rem}.vacation-list{padding:16px 20px}.vacation-item{flex-direction:column;gap:12px;padding:12px}.vacation-icon{font-size:1.5rem}.vacation-header{align-items:flex-start;flex-direction:column;gap:8px}.detail-item{flex-direction:column;gap:4px}.detail-label{font-weight:600;min-width:auto}.vacation-detail-modal .modal-footer{flex-direction:column;padding:16px 20px}.vacation-detail-modal .btn-primary,.vacation-detail-modal .btn-secondary{width:100%}}.vacation-edit-form{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:90%}.vacation-edit-form .form-header{align-items:center;background:linear-gradient(135deg,#0ea5e9,#0284c7);border-bottom:1px solid #e9ecef;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.vacation-edit-form .form-header h2{font-size:1.3rem;font-weight:600;margin:0}.vacation-edit-form .close-btn{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5rem;padding:8px;transition:background-color .2s}.vacation-edit-form .close-btn:hover{background-color:#ffffff1a}.vacation-edit-form .form-content{flex:1 1;overflow-y:auto;padding:24px}.vacation-edit-form .form-group{margin-bottom:20px}.vacation-edit-form .form-group:last-child{margin-bottom:0}.vacation-edit-form .form-group label{color:#374151;display:block;font-size:.9rem;font-weight:500;margin-bottom:6px}.vacation-edit-form .form-group input,.vacation-edit-form .form-group select,.vacation-edit-form .form-group textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.95rem;padding:10px 12px;transition:all .2s ease;width:100%}.vacation-edit-form .form-group input:focus,.vacation-edit-form .form-group select:focus,.vacation-edit-form .form-group textarea:focus{border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91a;outline:none}.vacation-edit-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.vacation-edit-form .checkbox-group{margin-bottom:16px}.vacation-edit-form .checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-weight:500;margin-bottom:0}.vacation-edit-form .checkbox-label input[type=checkbox]{margin-right:8px;transform:scale(1.2);width:auto}.vacation-edit-form .radio-group{display:flex;gap:20px;margin-top:8px}.vacation-edit-form .radio-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-weight:400;margin-bottom:0}.vacation-edit-form .radio-label input[type=radio]{margin-right:8px;transform:scale(1.1);width:auto}.vacation-edit-form .form-actions{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.vacation-edit-form .btn-cancel,.vacation-edit-form .btn-submit{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;min-width:80px;padding:10px 20px;transition:all .2s}.vacation-edit-form .btn-cancel{background-color:#6b7280;color:#fff}.vacation-edit-form .btn-cancel:hover{background-color:#4b5563}.vacation-edit-form .btn-submit{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff}.vacation-edit-form .btn-submit:hover:not(:disabled){box-shadow:0 4px 12px #0ea5e94d;transform:translateY(-1px)}.vacation-edit-form .btn-submit:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.vacation-edit-form{max-height:95vh;width:95%}.vacation-edit-form .form-header{padding:16px 20px}.vacation-edit-form .form-header h2{font-size:1.1rem}.vacation-edit-form .form-content{padding:20px}.vacation-edit-form .form-row{gap:12px;grid-template-columns:1fr}.vacation-edit-form .radio-group{flex-direction:column;gap:12px}.vacation-edit-form .form-actions{flex-direction:column}.vacation-edit-form .btn-cancel,.vacation-edit-form .btn-submit{width:100%}}.dashboard{background:#0000;box-sizing:border-box;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:calc(100vh - 120px);overflow:hidden;padding:20px}.dashboard-top-section{grid-gap:20px;display:grid;flex:0 0 auto;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px;max-height:250px;min-height:180px}.memo-section,.notices-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;overflow:hidden;padding:16px}.section-header{border-bottom:2px solid #f1f5f9;flex-shrink:0;margin-bottom:12px;padding-bottom:8px}.section-header h3{color:#1e3c72;font-size:1.1rem;font-weight:600;margin:0}.edit-btn{background:none;border:1px solid #e2e8f0;border-radius:6px;color:#6b7280;font-size:.875rem;padding:6px 12px;transition:all .2s}.edit-btn:hover{background:#f8fafc;border-color:#1e3c72;color:#1e3c72}.view-all-btn{background:none;border:1px solid #e2e8f0;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.875rem;padding:6px 12px;transition:all .2s}.view-all-btn:hover{background:#1e3c72;border-color:#1e3c72;color:#fff}.notices-list{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-height:0;overflow-y:auto}.notice-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:16px;transition:all .2s}.notice-item.clickable{cursor:pointer}.notice-item.important{background:linear-gradient(45deg,#fef3c7,#fef9c3);border-color:#fbbf24}.notice-item:hover{box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.notice-item.clickable:hover{background:#e5e7eb;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.notice-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.notice-header h4{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.notice-date{color:#6b7280;font-size:.75rem}.important-badge{background:#f59e0b;border-radius:10px;color:#fff;font-size:.7rem;font-weight:600;padding:2px 8px}.no-notices{align-items:center;display:flex;font-size:.875rem;justify-content:center;padding:32px;text-align:center}.notice-item p{color:#4b5563;font-size:.875rem;line-height:1.5;margin:0}.memo-content{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.memo-textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;flex:1 1 auto;font-family:inherit;font-size:.875rem;height:100%;line-height:1.5;min-height:120px;padding:12px;resize:none;width:100%}.memo-textarea:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a;outline:none}.memo-display{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4b5563;flex:1 1 auto;font-family:inherit;font-size:.875rem;height:100%;line-height:1.6;margin:0;min-height:120px;overflow-y:auto;padding:12px;white-space:pre-wrap}.dashboard-stats{background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:12px;box-shadow:0 4px 12px #1e3c7233;display:flex;flex:0 0 auto;gap:20px;justify-content:center;margin-bottom:16px;padding:16px}.dashboard-bottom-section{display:flex;flex:1 1 auto;gap:20px;min-height:0}.tasks-summary{display:flex;flex:1 1;flex-direction:column;gap:20px;max-width:450px;min-width:350px}.request-tasks-section,.task-stats-section,.urgent-alerts-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:20px}.task-stats-section.compact{padding:16px}.stats-grid-compact{display:flex;gap:12px;justify-content:center}.stat-card-compact{align-items:center;border-radius:8px;display:flex;flex-direction:column;min-width:70px;padding:12px 16px;transition:transform .2s}.stat-card-compact:hover{transform:translateY(-2px)}.stat-card-compact.total{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-card-compact.completed{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.stat-card-compact.in-progress{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.stat-card-compact .stat-number{font-size:1.8rem;font-weight:700;margin-bottom:4px}.stat-card-compact .stat-label{font-size:.8rem;font-weight:500;opacity:.9}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:20px}.stat-card{border-radius:10px;padding:20px 15px;text-align:center;transition:transform .2s}.stat-card:hover{transform:translateY(-2px)}.stat-card.total{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-card.completed{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.stat-card.in-progress{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.stat-card.requested{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}.stat-label{font-size:.9rem}.completion-rate{margin-top:10px}.rate-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.rate-percentage{color:#4facfe;font-size:1.2rem;font-weight:600}.progress-bar{background:#e2e8f0;border-radius:4px;height:8px}.progress-fill{background:linear-gradient(90deg,#4facfe,#00f2fe);border-radius:4px;transition:width .5s ease}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{align-items:center;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:15px;transition:all .2s}.alert-item.overdue{background:#fef2f2;border:1px solid #fecaca}.alert-item.urgent{background:#fff7ed;border:1px solid #fed7aa}.alert-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.alert-icon{flex-shrink:0;font-size:1.5rem}.alert-content{flex:1 1}.alert-title{color:#1f2937;font-weight:600;margin-bottom:2px}.alert-description{color:#6b7280;font-size:.9rem;margin-bottom:8px}.alert-tasks{display:flex;flex-direction:column;gap:4px;margin-top:8px}.alert-task{background:#ffffff80;border-left:3px solid;border-radius:4px;color:#374151;font-size:.8rem;padding:4px 8px}.more-tasks{color:#9ca3af;font-size:.75rem}.no-alerts{color:#10b981;padding:30px 20px;text-align:center}.no-alerts p{font-size:1.1rem;font-weight:500;margin:0}.request-tasks-list{display:flex;flex-direction:column;gap:12px;max-height:280px;overflow-y:auto}.request-task-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s}.request-task-item:hover{background:#f1f5f9;border-color:#cbd5e1;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.request-task-item .task-header{display:flex;flex-direction:column;flex-shrink:0;gap:4px}.request-task-item .task-id{background:#e5e7eb;border-radius:4px;color:#6b7280;font-family:Courier New,monospace;font-size:.7rem;font-weight:700;padding:2px 6px;text-align:center}.request-task-item .task-priority{flex-shrink:0}.request-task-item .priority-badge{border-radius:12px;font-size:.7rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.request-task-item .task-content{flex:1 1;min-width:0}.request-task-item .task-title{color:#1e293b;font-size:.9rem;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-task-item .task-meta{color:#64748b;display:flex;font-size:.75rem;gap:8px;justify-content:space-between}.request-task-item .task-due,.request-task-item .task-requester{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.request-task-item .task-status{flex-shrink:0}.request-task-item .status-badge{border-radius:12px;font-size:.7rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.status-badge.requested{background:#667eea1a;border:1px solid #667eea4d;color:#667eea}.status-badge.in_progress{background:#43e97b1a;border:1px solid #43e97b4d;color:#43e97b}.status-badge.completed{background:#4facfe1a;border:1px solid #4facfe4d;color:#4facfe}.no-requests{color:#6b7280;padding:30px 20px;text-align:center}.no-requests p{font-size:.9rem;margin:0}.vacation-calendar-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #00000014;display:flex;flex:2 1;flex-direction:column;min-height:500px;overflow:hidden;padding:16px}.in-progress-list,.requests-list,.today-tasks-list{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-height:0;overflow-y:auto}.task-item{align-items:center;background:#f8fafc;border-radius:8px;cursor:pointer;display:flex;gap:12px;min-height:60px;padding:12px;transition:all .2s}.task-item:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px)}.task-info{flex-direction:column;gap:4px;overflow:hidden}.task-info h4{color:#1e293b;font-size:14px;overflow:hidden}.task-info h4,.task-info p{margin:0;text-overflow:ellipsis;white-space:nowrap}.task-info p{color:#64748b;font-size:12px}.task-meta{color:#64748b;font-size:11px;gap:8px}.task-meta span{white-space:nowrap}.today-task-item:hover{border-color:#1e3c72;box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.task-info{flex:1 1}.task-info h4{color:#1e3c72;font-size:1rem;font-weight:600;margin:0 0 8px}.task-info p{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4b5563;display:-webkit-box;font-size:.875rem;line-height:1.4;margin:0 0 12px;overflow:hidden}.task-meta{align-items:center;color:#6b7280;display:flex;font-size:.75rem;gap:12px}.no-tasks{color:#9ca3af;padding:40px 20px;text-align:center}.no-tasks p{font-size:1.1rem;margin:0}.vacation-controls{align-items:center;display:flex;gap:16px}.add-vacation-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 10px #667eea4d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s}.add-vacation-btn:hover{box-shadow:0 4px 20px #667eea66;transform:translateY(-2px)}.add-vacation-btn:active{transform:translateY(0)}.calendar-controls{align-items:center;display:flex;gap:16px}.calendar-controls button{background:#f3f4f6;border:none;border-radius:6px;color:#374151;cursor:pointer;font-weight:600;padding:6px 12px;transition:all .2s}.calendar-controls button:hover{background:#1e3c72;color:#fff}.calendar-controls span{color:#1e3c72;font-weight:600;min-width:100px;text-align:center}.calendar{flex:1 1 auto;margin-top:12px;min-height:0}.calendar-weekdays{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.calendar-weekdays>div{color:#6b7280;font-size:.875rem;font-weight:600;padding:8px 4px;text-align:center}.calendar-days{grid-gap:4px;display:grid;flex:1 1 auto;gap:4px;grid-template-columns:repeat(7,1fr)}.calendar-day{background:#fafbfc;border:1px solid #f3f4f6;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;min-height:80px;overflow:hidden;padding:4px;position:relative;transition:all .2s}.calendar-day:hover{background:#f1f5f9;border-color:#e2e8f0}.calendar-day.current-month{background:#fff}.calendar-day.other-month{background:#f9fafb;color:#9ca3af}.calendar-day.today{background:linear-gradient(135deg,#1e3c72,#2a5298);color:#fff;font-weight:600}.calendar-day.today:hover{background:linear-gradient(135deg,#2a5298,#1e3c72)}.day-number{display:block;flex-shrink:0;font-size:.9rem;font-weight:500;margin-bottom:2px;text-align:center}.vacation-indicators{align-items:center;display:flex;flex-direction:column;gap:1px;max-height:calc(100% - 20px);overflow:hidden}.vacation-dot{background:#3b82f6;border-radius:8px;box-sizing:border-box;color:#fff;font-size:.55rem;font-weight:600;line-height:1.2;max-width:100%;min-width:18px;overflow:hidden;padding:1px 3px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.vacation-dot.annual{background:#10b981}.vacation-dot.half{background:#f59e0b}.vacation-dot.special{background:#8b5cf6}.more-vacations{background:#6b7280;border-radius:6px;color:#fff;cursor:help;font-size:.5rem;font-weight:600;line-height:1.2;min-width:16px;padding:1px 3px;text-align:center}.section-title{color:#1e3c72;font-size:1.5rem;font-weight:700;margin:0 0 24px;text-align:center}.stat-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:10px;flex-direction:column;min-width:80px;padding:20px}.stat-number{font-size:2.5rem;font-weight:700;margin-bottom:5px}.stat-label{font-size:1rem;opacity:.9}.dashboard-content{margin:0 auto;max-width:1400px}.status-columns{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr 1fr}.status-column{background:#fff;border-radius:15px;box-shadow:0 10px 30px #0000001a;min-height:500px;overflow:hidden}.column-header{color:#fff;font-size:1.2rem;font-weight:600;padding:20px 25px;text-align:center;text-shadow:1px 1px 2px #0003}.status-column.requested .column-header{background:linear-gradient(135deg,#667eea,#764ba2)}.status-column.in-progress .column-header{background:linear-gradient(135deg,#f093fb,#f5576c)}.status-column.completed .column-header{background:linear-gradient(135deg,#4facfe,#00f2fe)}.column-header h3{font-size:1.3rem;margin:0}.tasks-list{gap:15px;padding:20px}.task-card{background:#fff;border:1px solid #e8eaed;border-radius:12px;box-shadow:0 4px 12px #00000014;cursor:pointer;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.task-card:hover{border-color:#1e3c72;box-shadow:0 8px 25px #1e3c7226;transform:translateY(-3px)}.task-card:before{background:linear-gradient(135deg,#1e3c72,#2a5298);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.task-priority{border-radius:12px;display:inline-block;flex-shrink:0;font-size:10px;font-weight:600;letter-spacing:.5px;min-width:45px;padding:3px 8px;text-align:center;text-transform:uppercase}.task-title{font-size:1.1rem;margin:0 0 10px}.task-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.9rem;line-height:1.5;margin:0 0 15px;overflow:hidden}.task-meta{border-top:1px solid #f0f0f0;color:#888;font-size:.8rem;padding-top:15px}.task-meta>div{margin-bottom:6px}.task-meta strong{color:#1e3c72;font-weight:600}.task-assignee{color:#4caf50}.task-reporter{color:#2196f3}.task-dates{display:flex;justify-content:space-between}.task-dates>div{margin-bottom:0}@media (max-width:1200px){.dashboard-top-section{gap:20px;grid-template-columns:1fr}.dashboard-bottom-section{flex-direction:column;gap:20px}.tasks-summary{max-width:none;min-width:100%}.stats-grid{gap:12px;grid-template-columns:1fr}.status-columns{gap:20px;grid-template-columns:1fr}.dashboard-stats{gap:20px}}@media (max-width:768px){.dashboard-bottom-section,.dashboard-top-section{gap:15px}.tasks-summary{max-width:none;min-width:100%}.stats-grid{gap:12px;grid-template-columns:1fr}.in-progress-section,.memo-section,.my-requests-section,.notices-section,.today-tasks-section,.vacation-calendar-section{padding:20px}.dashboard-stats{flex-wrap:wrap;gap:15px;justify-content:center}.stat-item{min-width:80px;padding:15px}.stat-number{font-size:2rem}.today-task-item{flex-direction:column;gap:12px}.calendar-day{min-height:45px;padding:3px}.vacation-dot{font-size:.55rem;min-width:16px;padding:1px 3px}.task-card,.tasks-list{padding:15px}}@media (max-width:480px){.dashboard-stats{flex-direction:row;gap:12px}.stat-item{min-width:70px;padding:12px}.stat-number{font-size:1.8rem}.memo-section,.notices-section,.today-tasks-section,.vacation-calendar-section{padding:16px}.section-header h3{font-size:1rem}.calendar-day{min-height:40px;padding:2px}.day-number{font-size:.75rem}.vacation-dot{font-size:.5rem;min-width:14px;padding:0 2px}.calendar-controls button{padding:4px 8px}.calendar-controls span{font-size:.875rem}}.vacation-legend{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:16px;margin-bottom:12px;padding:8px 12px}.legend-item{color:#475569;font-size:.875rem;gap:6px}.legend-dot{border-radius:50%;flex-shrink:0;height:12px;width:12px}.legend-dot.annual{background:#3b82f6}.legend-dot.sick{background:#ef4444}.legend-dot.special{background:#8b5cf6}.calendar-day.clickable{cursor:pointer;transition:all .2s ease}.calendar-day.clickable:hover{background-color:#f0f9ff;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626;transform:scale(1.02)}.calendar-day.clickable:active{transform:scale(.98)}.mypage{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:20px}.mypage-container{background:#fff;border-radius:20px;box-shadow:0 15px 35px #0000001a;margin:0 auto;max-width:1200px;overflow:hidden}.mypage-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:30px 40px}.mypage-header h2{font-size:1.8rem;font-weight:600;margin:0}.edit-btn{background:#fff3;border:2px solid #ffffff4d;border-radius:25px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .3s ease}.edit-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.edit-actions{display:flex;gap:12px}.cancel-btn,.save-btn{border:none;border-radius:25px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .3s ease}.cancel-btn{background:#fff3;border:2px solid #ffffff4d;color:#fff}.cancel-btn:hover{background:#ffffff4d}.save-btn{background:#28a745;border:2px solid #28a745;color:#fff}.save-btn:hover:not(:disabled){background:#218838;transform:translateY(-2px)}.save-btn:disabled{cursor:not-allowed;opacity:.6}.profile-content{display:grid;grid-template-columns:300px 1fr;min-height:600px}.profile-sidebar{background:#f8f9fc;border-right:1px solid #e9ecf1;padding:40px 30px}.avatar-section{text-align:center}.avatar-container{margin-bottom:20px;position:relative}.avatar-image{object-fit:cover}.avatar-image,.avatar-placeholder{border:4px solid #fff;border-radius:50%;box-shadow:0 8px 25px #00000026;height:120px;width:120px}.avatar-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;font-size:2rem;font-weight:600;justify-content:center;margin:0 auto}.avatar-upload{margin-top:15px}.avatar-input{display:none}.avatar-upload-btn{background:#667eea;border-radius:20px;color:#fff;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.avatar-upload-btn:hover{background:#5a67d8;transform:translateY(-2px)}.user-info h3{color:#2d3748;font-size:1.4rem;font-weight:600;margin:0 0 8px}.position{color:#667eea;font-size:1.1rem;font-weight:600;margin:0 0 4px}.department{color:#718096;font-size:1rem;margin:0}.profile-main{padding:40px}.profile-form{display:flex;flex-direction:column;gap:40px}.form-section{background:#f8f9fc;border-radius:15px;padding:30px}.form-section h4{border-bottom:2px solid #e9ecf1;color:#2d3748;font-size:1.3rem;font-weight:600;margin:0 0 25px;padding-bottom:10px}.form-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-group{gap:8px}.form-group label{color:#4a5568;font-size:.95rem;font-weight:500}.form-input,.form-select{background:#fff;border:2px solid #e9ecf1;border-radius:10px;font-size:1rem;padding:12px 16px;transition:all .3s ease}.form-input:focus,.form-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-input:disabled{background:#f7fafc;color:#4a5568;cursor:not-allowed}.form-select{cursor:pointer}.mypage-loading{align-items:center;color:#718096;display:flex;flex-direction:column;justify-content:center;min-height:400px}.loading-spinner{border:4px solid #e2e8f0;border-top-color:#667eea}@media (max-width:900px){.profile-content{grid-template-columns:1fr}.profile-main,.profile-sidebar{padding:30px 20px}.mypage-header{flex-direction:column;gap:15px;padding:20px;text-align:center}}@media (max-width:600px){.mypage{padding:10px}.mypage-container{border-radius:15px}.form-grid{grid-template-columns:1fr}.edit-actions{flex-direction:column;width:100%}.cancel-btn,.edit-btn,.save-btn{text-align:center;width:100%}.avatar-image,.avatar-placeholder{height:100px;width:100px}.form-section{padding:20px}}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:450px;overflow:hidden;padding:40px;position:relative;width:100%}.login-card:before{background:linear-gradient(90deg,#1e3c72,#2a5298);content:"";height:4px;left:0;position:absolute;right:0;top:0}.login-header{margin-bottom:32px;text-align:center}.login-header h2{color:#1e3c72;font-size:28px;font-weight:700;margin:0 0 8px}.login-header p{color:#64748b;font-size:14px;margin:0}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:6px}.form-input{background-color:#fafafa;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .2s}.form-input:focus{background-color:#fff;border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a;outline:none}.form-input::placeholder{color:#9ca3af}.login-btn{background:linear-gradient(135deg,#1e3c72,#2a5298);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:8px;padding:14px 24px;transition:all .2s}.login-btn:hover:not(:disabled){box-shadow:0 4px 12px #1e3c7266;transform:translateY(-1px)}.login-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.login-footer{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:20px;text-align:center}.login-footer p{color:#64748b;font-size:14px;margin:0}.toggle-btn{background:none;border:none;color:#1e3c72;cursor:pointer;font-size:14px;font-weight:600;margin-left:8px;text-decoration:underline}.toggle-btn:hover{color:#2a5298}@media (max-width:480px){.login-container{padding:16px}.login-card{padding:32px 24px}.form-row{grid-template-columns:1fr}.login-header h2{font-size:24px}}.login-btn:disabled{position:relative}.login-btn:disabled:after{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;content:"";height:16px;margin:auto;position:absolute;right:16px;top:50%;transform:translateY(-50%);width:16px}.remember-group{margin:8px 0}.remember-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:400;gap:8px}.remember-checkbox{accent-color:#1e3c72;cursor:pointer;height:16px;margin:0;width:16px}.remember-text{color:#64748b;-webkit-user-select:none;user-select:none}.remember-info{align-items:center;background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;display:flex;font-size:14px;justify-content:space-between;margin-bottom:16px;padding:8px 12px}.remember-info strong{color:#1e3c72}.clear-saved-btn{background:none;border:1px solid #ef4444;border-radius:4px;color:#ef4444;cursor:pointer;font-size:12px;padding:2px 8px;transition:all .2s}.clear-saved-btn:hover{background-color:#ef4444;color:#fff}.tasks-page{box-sizing:border-box;margin:0;max-width:100%;overflow-x:hidden;padding:20px 20px 50px;width:100%}.header-actions{gap:20px}.view-toggle{background:#f1f5f9;border-radius:8px;display:flex;gap:4px;padding:4px}.view-btn{background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s}.view-btn:hover{background:#1e3c721a;color:#1e3c72}.view-btn.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#1e3c72;font-weight:600}.tasks-stats{border-radius:15px;box-shadow:0 8px 25px #1e3c724d;display:flex;gap:30px;justify-content:center;margin-bottom:30px;padding:20px}.btn-primary,.tasks-stats{background:linear-gradient(135deg,#1e3c72,#2a5298)}.btn-primary{border:none;border-radius:8px;box-shadow:0 4px 12px #1e3c724d;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #1e3c7266;transform:translateY(-2px)}.task-tabs{background:#f1f5f9;border-radius:12px;display:flex;gap:4px;margin-bottom:30px;overflow-x:auto;padding:4px}.tab{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-weight:500;padding:12px 20px;transition:all .2s;white-space:nowrap}.tab:hover{background:#1e3c721a;color:#1e3c72}.tab.active{background:#fff;box-shadow:0 2px 8px #0000001a;color:#1e3c72;font-weight:600}.tasks-list{display:flex;flex-direction:column;gap:20px}.task-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #0000000d;padding:24px;transition:all .3s ease}.task-item:hover{border-color:#1e3c72;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.task-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.task-meta-line{display:flex;flex-wrap:wrap;gap:8px}.category-badge,.priority-badge,.status-badge{border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.task-priority.compact{border-radius:12px;display:inline-block;font-size:.65rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;padding:2px 8px;text-transform:uppercase}.task-priority.compact.priority-low{background:#4caf501a;border:1px solid #4caf504d;color:#4caf50}.task-priority.compact.priority-normal{background:#2196f31a;border:1px solid #2196f34d;color:#2196f3}.task-priority.compact.priority-high{background:#ff98001a;border:1px solid #ff98004d;color:#ff9800}.task-priority.compact.priority-urgent{background:#f443361a;border:1px solid #f443364d;color:#f44336}.priority-low{background:#4caf501a;border:1px solid #4caf504d;color:#4caf50}.priority-normal{background:#2196f31a;border:1px solid #2196f34d;color:#2196f3}.priority-high{background:#ff98001a;border:1px solid #ff98004d;color:#ff9800}.priority-urgent{background:#f443361a;border:1px solid #f443364d;color:#f44336}.status-requested{background:#677eea1a;border:1px solid #677eea4d;color:#667eea}.status-in_progress{background:#f093fb1a;border:1px solid #f093fb4d;color:#f093fb}.status-completed{background:#4facfe1a;border:1px solid #4facfe4d;color:#4facfe}.status-problem{background:#ff576c1a;border:1px solid #ff576c4d;color:#f5576c}.status-cancelled{background:#9ca3af1a;border:1px solid #9ca3af4d;color:#6b7280}.category-badge{background:#8b5cf61a;border:1px solid #8b5cf64d;color:#8b5cf6}.status-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-size:.875rem;padding:6px 12px}.status-select:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a;outline:none}.task-title{color:#1e3c72;font-size:1.25rem;font-weight:600;line-height:1.4;margin:0 0 12px}.task-description{color:#4b5563;font-size:.95rem;line-height:1.6;margin:0 0 20px}.task-details{grid-gap:20px;border-top:1px solid #f3f4f6;display:grid;font-size:.875rem;gap:20px;grid-template-columns:1fr 1fr;padding-top:16px}.task-dates>div,.task-people>div{color:#6b7280;margin-bottom:6px}.task-dates strong,.task-people strong{color:#1e3c72;font-weight:600}.modal{border-radius:16px;box-shadow:0 20px 50px #0000004d;max-width:600px;width:100%}.modal-header{margin-bottom:20px;padding:24px 24px 0}.modal-header h2{font-size:1.5rem}.close-btn{color:#9ca3af;font-size:2rem;height:32px;width:32px}.task-form{padding:0 24px 24px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group label{margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:.875rem;padding:10px 12px;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-actions{border-top:1px solid #f3f4f6}.form-actions button{padding:10px 20px}.form-actions button[type=button]{background:#f9fafb;border:1px solid #d1d5db;color:#374151}.form-actions button[type=button]:hover{background:#f3f4f6}@media (max-width:768px){.page-header{align-items:stretch;flex-direction:column;gap:16px}.header-actions{flex-direction:column;gap:12px}.tasks-stats,.view-toggle{justify-content:center}.tasks-stats{flex-wrap:wrap;gap:15px}.kanban-columns{gap:20px;grid-template-columns:1fr;overflow-x:hidden;width:100%}.task-details{gap:16px}.form-row,.task-details{grid-template-columns:1fr}.task-header{flex-direction:column;gap:12px}.task-actions{align-self:flex-start}.modal{margin:20px;max-height:calc(100vh - 40px)}}@media (max-width:480px){.task-tabs{flex-direction:column}.tab{text-align:center}.form-actions{flex-direction:column}.form-actions button{width:100%}}.kanban-board{margin-bottom:40px}.kanban-columns{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr 1fr}.kanban-column,.kanban-columns{box-sizing:border-box;max-width:100%;width:100%}.kanban-column{background:#fff;border-radius:15px;box-shadow:0 10px 30px #0000001a;min-height:500px;overflow:hidden}.kanban-column .column-header{color:#fff;font-size:1.2rem;font-weight:600;padding:20px 25px;text-align:center;text-shadow:1px 1px 2px #0003}.kanban-column.requested .column-header{background:linear-gradient(135deg,#667eea,#764ba2)}.kanban-column.in-progress .column-header{background:linear-gradient(135deg,#f093fb,#f5576c)}.kanban-column.completed .column-header{background:linear-gradient(135deg,#4facfe,#00f2fe)}.kanban-column .column-header h3{font-size:1.3rem;margin:0}.kanban-tasks-list{display:flex;flex-direction:column;gap:10px;padding:15px}.kanban-task-card{background:#fff;border:1px solid #e8eaed;border-radius:8px;box-shadow:0 2px 8px #0000000f;cursor:pointer;overflow:hidden;padding:12px;position:relative;text-align:center;transition:all .3s ease}.kanban-task-card:hover{border-color:#1e3c72;box-shadow:0 8px 25px #1e3c7226;transform:translateY(-3px)}.kanban-task-card:before{background:linear-gradient(135deg,#1e3c72,#2a5298);content:"";height:100%;left:0;position:absolute;top:0;width:4px}.kanban-task-card .task-title{color:#1e3c72;font-size:.95rem;font-weight:600;line-height:1.3;margin:0 0 6px}.kanban-task-card .task-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.8rem;line-height:1.4;margin:0 0 10px;overflow:hidden}.kanban-task-card .task-meta{align-items:center;color:#888;display:flex;font-size:.75rem;justify-content:space-between;padding-top:8px;text-align:left}.kanban-task-card .task-reporter{align-items:center;display:flex;flex:1 1;gap:5px}.kanban-task-card .task-dates{display:flex;flex:1 1;flex-direction:column;gap:2px;text-align:right}.kanban-task-card .task-dates>div{line-height:1.4;margin-bottom:0}.kanban-task-card .task-meta strong{color:#1e3c72;font-weight:600}.tasks-page.dragging-active{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.tasks-page.dragging-active *{cursor:grabbing!important}.tasks-page.dragging-active .kanban-task-card:not(.dragging){pointer-events:none}.tasks-page.dragging-active .kanban-column{pointer-events:auto}.kanban-task-card{cursor:grab;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.kanban-task-card:hover{box-shadow:0 15px 40px #1e3c7240;cursor:grab;transform:translateY(-3px) scale(1.03)}.kanban-task-card:active{cursor:grabbing;transform:scale(.98)}.kanban-task-card.dragging{opacity:.3;pointer-events:none;transform:scale(.95);transition:all .2s ease}.ghost-card{animation:ghost-float .6s ease-in-out infinite alternate;background:#fff;border:2px solid #1e3c72;border-radius:8px;box-shadow:0 20px 60px #1e3c7266;cursor:grabbing;max-width:280px;opacity:.95;padding:12px;pointer-events:none;position:fixed;transform:rotate(5deg) scale(1.05);z-index:9999}@keyframes ghost-float{0%{box-shadow:0 20px 60px #1e3c7266;transform:rotate(5deg) scale(1.05)}to{box-shadow:0 25px 70px #1e3c7280;transform:rotate(3deg) scale(1.08)}}.ghost-card .task-title{color:#1e3c72;font-size:.95rem;font-weight:600;line-height:1.3;margin:0 0 6px}.ghost-card .task-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:.8rem;line-height:1.4;margin:0 0 10px;overflow:hidden}.ghost-card .task-meta{color:#888;font-size:.75rem;padding-top:8px}.ghost-card .task-meta strong{color:#1e3c72;font-weight:600}.kanban-column{border:3px solid #0000;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.dragging-active .kanban-column{transform:scale(1.02)}.kanban-column.drag-over{animation:magnetic-pulse .8s infinite alternate;background:linear-gradient(135deg,#1e3c721a,#2a529814);border:3px solid #1e3c72;box-shadow:0 0 30px #1e3c7266,inset 0 0 20px #1e3c721a;transform:scale(1.05)}@keyframes magnetic-pulse{0%{box-shadow:0 0 30px #1e3c7266,inset 0 0 20px #1e3c721a;transform:scale(1.05)}to{box-shadow:0 0 40px #1e3c7299,inset 0 0 30px #1e3c7226;transform:scale(1.08)}}.empty-column{background:#f9fafb;border:2px dashed #e5e7eb;border-radius:12px;color:#9ca3af;font-size:1.1rem;font-style:italic;font-weight:500;margin:20px 0;padding:60px 20px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.dragging-active .empty-column{animation:magnetic-attract 1s infinite;background:#1e3c7214;border-color:#1e3c72;color:#1e3c72;font-weight:600;transform:scale(1.05)}.kanban-column.drag-over .empty-column{animation:drop-zone-ready .6s infinite alternate;background:#1e3c7226;border-color:#2a5298;transform:scale(1.1)}@keyframes magnetic-attract{0%,to{background:#1e3c7214;transform:scale(1.05)}50%{background:#1e3c721f;transform:scale(1.08)}}@keyframes drop-zone-ready{0%{background:#1e3c7226;border-color:#2a5298;transform:scale(1.1)}to{background:#1e3c7233;border-color:#1e3c72;transform:scale(1.12)}}.dragging-active .kanban-task-card:not(.dragging){filter:grayscale(.3);opacity:.4;transform:scale(.95)}.dragging-active .kanban-column .column-header{text-shadow:2px 2px 4px #0000004d;transform:scale(1.02)}.kanban-column.drag-over .column-header{animation:header-magnetic .6s infinite alternate;transform:scale(1.05)}@keyframes header-magnetic{0%{text-shadow:2px 2px 8px #1e3c7299;transform:scale(1.05)}to{text-shadow:2px 2px 12px #1e3c72cc;transform:scale(1.08)}}.task-detail-modal{max-height:90vh;max-width:900px;overflow-y:auto}.task-detail-content{display:flex;gap:0;max-height:calc(90vh - 80px);overflow-y:auto;padding:0}.task-detail-main{border-right:1px solid #e5e7eb;flex:1 1;padding:24px}.task-detail-header{margin-bottom:20px}.task-detail-header h3{color:#1e3c72;font-size:1.4rem;font-weight:600;line-height:1.3;margin:0 0 12px}.task-badges{flex-wrap:wrap;gap:6px;margin-bottom:12px}.task-badges .category-badge,.task-badges .department-badge,.task-badges .priority-badge,.task-badges .status-badge{font-size:.7rem;padding:3px 8px}.task-content-section{margin-bottom:24px}.task-content-section h4{border-bottom:2px solid #e5e7eb;color:#1e3c72;font-size:1.1rem;font-weight:600;margin:0 0 12px;padding-bottom:8px}.task-content-section .task-description{background:#f9fafb;border-left:4px solid #1e3c72;border-radius:8px;color:#374151;font-size:1rem;line-height:1.7;margin:0;padding:16px}.task-detail-sidebar{background:#f8fafc;display:flex;flex-direction:column;gap:20px;min-width:280px;padding:20px;width:280px}.sidebar-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.sidebar-section h4{border-bottom:1px solid #e5e7eb;color:#1e3c72;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 12px;padding-bottom:8px;text-transform:uppercase}.sidebar-info-grid{grid-gap:12px;display:grid;gap:12px}.sidebar-info-item{display:flex;flex-direction:column;gap:4px}.sidebar-info-label{color:#6b7280;font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.sidebar-info-value{color:#374151;font-size:.9rem;font-weight:500}.task-detail-actions{background:#f9fafb;border-top:1px solid #e5e7eb;gap:12px;padding:16px 24px}.task-detail-actions .status-select{border-radius:6px;font-size:.85rem;padding:8px 12px}.task-detail-actions{align-items:center;border-top:1px solid #f3f4f6;display:flex;gap:15px;justify-content:flex-end;padding-top:20px}.task-detail-actions .status-select{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.9rem;min-width:120px;padding:8px 15px}.task-detail-actions .status-select:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a;outline:none}@media (max-width:768px){.task-detail-modal{max-height:95vh;max-width:95vw}.task-detail-content{flex-direction:column}.task-detail-main{border-bottom:1px solid #e5e7eb;border-right:none;padding:16px}.task-detail-sidebar{flex-direction:row;flex-wrap:wrap;gap:12px;min-width:auto;padding:16px;width:100%}.sidebar-section{flex:1 1;min-width:calc(50% - 6px)}.task-detail-actions{padding:12px 16px}.task-content-section .task-description{font-size:.9rem;padding:12px}}@media (max-width:480px){.task-detail-sidebar{flex-direction:column}.sidebar-section{min-width:auto}.sidebar-info-grid{gap:8px}.sidebar-info-label{font-size:.7rem}.sidebar-info-value{font-size:.85rem}}.log-filters{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:20px;margin-bottom:24px;padding:16px}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{color:#64748b;font-size:12px;font-weight:500}.filter-group input,.filter-group select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;min-width:120px;padding:8px 12px}.filter-group input:focus,.filter-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.logs-list{display:flex;flex-direction:column;gap:12px}.log-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .2s ease}.log-item:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #0000001a}.log-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.log-action{align-items:center;display:flex;gap:12px}.action-badge{border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px;text-transform:uppercase}.log-task-title{color:#1f2937;font-weight:500}.log-meta{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.log-user{background:#ede9fe;border-radius:12px;color:#4f46e5;font-size:12px;font-weight:500;padding:2px 8px}.log-date{color:#6b7280;font-size:12px}.log-details{background:#f8fafc;border-radius:6px;margin-top:8px;padding:12px}.log-changes{display:flex;flex-direction:column;gap:8px}.change-item{align-items:center;display:flex;font-size:14px;gap:8px}.change-item strong{color:#374151;min-width:80px}.change-from{background:#fee2e2;border-radius:4px;color:#dc2626;font-size:12px;padding:2px 6px}.change-arrow{color:#6b7280;font-weight:700}.change-to{background:#dcfce7;border-radius:4px;color:#16a34a;font-size:12px;padding:2px 6px}.deleted-task-info{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;margin-top:8px;padding:12px}.deleted-task-info div{color:#7f1d1d;font-size:13px;line-height:1.4;margin-bottom:6px}.deleted-task-info div:last-child{margin-bottom:0}.deleted-task-info div:first-child{color:#991b1b;font-weight:600}.log-technical{border-top:1px solid #f1f5f9;margin-top:8px;padding-top:8px}.log-technical small{color:#94a3b8;font-size:11px}.empty-logs{color:#6b7280;padding:40px;text-align:center}.error-message{background:#fef2f2;border:1px solid #fecaca;margin-bottom:24px;padding:16px;text-align:center}.error-message p{color:#dc2626;margin-bottom:12px}.error-message button{background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px}.error-message button:hover{background:#b91c1c}.pagination{margin-top:32px;padding:16px}.pagination-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px;transition:background-color .2s ease}.pagination-btn:hover:not(:disabled){background:#2563eb}.pagination-btn:disabled{background:#d1d5db;cursor:not-allowed}.pagination-info{color:#6b7280;font-size:14px}.page-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:60px}.loading-spinner{border:3px solid #f3f4f6;border-top-color:#3b82f6;height:32px;width:32px}@media (max-width:768px){.log-filters{align-items:stretch;flex-direction:column;gap:12px}.log-header{flex-direction:column;gap:8px}.change-item,.log-meta{align-items:flex-start}.change-item{flex-direction:column;gap:4px}.pagination{flex-direction:column;gap:12px}}.admin-tasks-page{height:100%;margin:0;overflow-x:hidden;padding:0;width:100%}.tasks-page{padding-bottom:50px}.admin-layout{display:flex;gap:0;height:100%;margin:0;overflow:hidden;padding:0;width:100%}.admin-sidebar{background:#fff;border-right:1px solid #e9ecef;box-shadow:2px 0 4px #0000000d;display:flex;flex-direction:column;flex-shrink:0;height:100%;min-width:320px;overflow-y:auto;scrollbar-color:#c1c1c1 #0000;scrollbar-width:thin;width:320px}.admin-sidebar::-webkit-scrollbar{width:8px}.admin-sidebar::-webkit-scrollbar-track{background:#0000;border-radius:4px;margin:8px 0}.admin-sidebar::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea,#764ba2);background-clip:content-box;border:2px solid #0000;border-radius:20px;opacity:.7;-webkit-transition:all .3s ease;transition:all .3s ease}.admin-sidebar::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#5a6fd8,#6b4190);background-clip:content-box;border:1px solid #0000;opacity:1;transform:scaleY(1.1)}.admin-sidebar::-webkit-scrollbar-thumb:active{background:linear-gradient(180deg,#4e5bc6,#5e377e);background-clip:content-box;border:0 solid #0000;opacity:1;transform:scaleY(1.2)}.admin-sidebar::-webkit-scrollbar-corner{background:#0000}.admin-main-content{background:#f8fafc;flex:1 1;height:100%;min-width:0;overflow-x:hidden;overflow-y:auto;padding:20px}.admin-main-content .analytics-view,.admin-main-content .individual-view,.admin-main-content .kanban-board,.admin-main-content .report-view,.admin-main-content .tasks-list{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;padding:20px}.content-header{align-items:center;background:#fff;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin:-20px -20px 20px;padding:20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.content-header h1{color:#2c3e50;font-size:24px;font-weight:600;margin:0}.sidebar-section{border-bottom:1px solid #e9ecef;padding:20px}.sidebar-section:last-child{border-bottom:none}.sidebar-title{align-items:center;color:#2c3e50;display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:15px}.employee-list{display:flex;flex-direction:column;gap:8px}.employee-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;text-align:left;transition:all .2s ease;width:100%}.employee-item:hover{background:#e9ecef;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.employee-item.active{background:#007bff;border-color:#007bff;color:#fff}.employee-avatar{flex-shrink:0}.employee-avatar:not(.profile-image-container){align-items:center;background:#6c757d;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:600;height:40px;justify-content:center;width:40px}.employee-avatar.all{background:#28a745}.employee-item.active .employee-avatar{background:#fff3;border:2px solid #ffffff4d}.employee-info{flex:1 1;gap:2px}.employee-name{font-size:14px;font-weight:600}.employee-detail{font-size:12px;opacity:.7}.employee-item.active .employee-detail{opacity:.9}.task-count{background:#007bff;border-radius:12px;color:#fff;font-size:12px;font-weight:600;min-width:24px;padding:4px 8px;text-align:center}.employee-item.active .task-count{background:#fff3;border:1px solid #ffffff4d}.department-group{margin-bottom:12px}.department-header{align-items:center;background:#e9ecef;border:2px solid #0000;border-radius:6px;color:#495057;cursor:default;display:flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:6px;padding:8px 40px 8px 12px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.department-header:hover{background:#dee2e6;border-color:#ced4da}.department-header:active{cursor:grabbing}.department-header.dragging{background:#007bff;border-color:#0056b3;box-shadow:0 10px 30px #0000004d;color:#fff;opacity:.6;transform:rotate(3deg) scale(1.05);z-index:1000}.department-header.drag-over{background:linear-gradient(135deg,#28a745,#20c997);border-color:#20c997;box-shadow:0 6px 20px #28a74566;color:#fff;transform:scale(1.05)}.department-header.drag-over:before{animation:pulse 1s infinite;background:linear-gradient(90deg,#ffc107,#fd7e14);border-radius:2px;content:"";height:4px;left:-2px;position:absolute;right:-2px;top:-4px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.department-toggle{align-items:center;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:background-color .2s}.department-toggle:hover{background:#0000001a}.toggle-icon{color:#6c757d;font-size:10px;transition:transform .3s ease}.toggle-icon.expanded{transform:rotate(0deg)}.toggle-icon:not(.expanded){transform:rotate(-90deg)}.department-info{align-items:center;border-radius:4px;cursor:pointer;display:flex;flex:1 1;justify-content:space-between;padding:4px 8px;position:relative;transition:background-color .2s}.department-info:hover{background:#007bff1a}.department-name{align-items:center;display:flex;flex:1 1;gap:6px}.department-name:before{content:"📁";font-size:12px}.drag-handle{align-items:center;background:#fffc;border:1px solid #e9ecef;border-radius:6px;box-shadow:0 1px 3px #0000001a;color:#adb5bd;display:flex;height:20px;justify-content:center;opacity:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:all .3s ease;width:20px}.department-header:hover .drag-handle{color:#6c757d;opacity:1}.drag-handle:hover{background:#f8f9fa;border-color:#ced4da;box-shadow:0 2px 8px #00000026;color:#495057;transform:translateY(-50%) scale(1.1)}.drag-handle:active{background:#e9ecef;transform:translateY(-50%) scale(.95)}.department-header.dragging .drag-handle{background:#ffffff4d;border-color:#ffffff80;color:#ffffffe6;opacity:1}.department-header.drag-over .drag-handle{background:#fff3;border-color:#fff6;color:#ffffffe6;opacity:1}.department-count{background:#6c757d;border-radius:8px;color:#fff;font-size:11px;padding:2px 6px}.department-group .employee-item{animation:slideIn .3s ease-out;border-left:2px solid #e9ecef;margin-left:16px}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.department-employees{overflow:hidden;transition:max-height .3s ease-out}.department-employees.collapsed{max-height:0}.department-employees.expanded{max-height:1000px}.employee-list{scrollbar-color:#c1c1c1 #0000;scrollbar-width:thin}.employee-list::-webkit-scrollbar{width:6px}.employee-list::-webkit-scrollbar-track{background:#0000;border-radius:3px}.employee-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea,#764ba2);border-radius:15px;-webkit-transition:all .3s ease;transition:all .3s ease}.employee-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#5a6fd8,#6b4190)}.department-employees::-webkit-scrollbar{width:6px}.department-employees::-webkit-scrollbar-track{background:#0000;border-radius:3px}.department-employees::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea,#764ba2);border-radius:15px;-webkit-transition:all .3s ease;transition:all .3s ease}.department-employees::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#5a6fd8,#6b4190)}.filter-list{display:flex;flex-direction:column;gap:12px}.filter-item{gap:6px}.filter-item label{color:#495057;font-size:13px;font-weight:500}.filter-select-sidebar{background:#fff;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s}.filter-select-sidebar:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff1a;outline:none}.selected-summary{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:15px}.summary-employee{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:12px}.summary-stats{display:flex;flex-direction:column;gap:8px}.stat-row{align-items:center;display:flex;font-size:14px;justify-content:space-between}.stat-value{color:#007bff;font-weight:600}.selected-employee-info{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 6px #0000001a;color:#fff;margin-bottom:20px;padding:20px}.selected-employee-info h3{font-size:20px;margin-bottom:10px}.employee-stats{display:flex;font-size:14px;gap:15px;opacity:.95}.stat-separator{opacity:.6}.department-badge{background:#6c757d;border-radius:3px;color:#fff;font-size:11px;font-weight:500;margin-left:5px;padding:3px 8px}.analytics-view{padding:20px 0}.analytics-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.analytics-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border:1px solid #fff3;border-radius:16px;box-shadow:0 8px 32px #0000001a;overflow:hidden;padding:25px;position:relative;transition:transform .3s ease,box-shadow .3s ease}.analytics-card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.analytics-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.analytics-card h3{align-items:center;color:#2c3e50;display:flex;font-size:20px;font-weight:700;gap:10px;margin-bottom:25px}.analytics-card h3:before{content:"📊";font-size:24px}.priority-graph-container{padding:10px 0}.priority-graph{display:flex;flex-direction:column;gap:30px}.priority-bars{align-items:flex-end;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;display:flex;height:250px;justify-content:space-around;padding:20px 15px 60px;position:relative}.priority-bars:before{background:#dee2e6;bottom:50px;content:"";height:1px;left:15px;position:absolute;right:15px}.priority-bar-container{align-items:center;display:flex;flex:1 1;flex-direction:column;max-width:80px}.priority-bar-wrapper{align-items:flex-end;display:flex;height:150px;margin-bottom:15px;position:relative;width:45px}.priority-bar-fill{align-items:flex-start;border-radius:8px 8px 4px 4px;box-shadow:0 4px 15px #0003;display:flex;justify-content:center;overflow:hidden;padding-top:8px;position:relative;transition:height 1s cubic-bezier(.4,0,.2,1);width:100%}.priority-bar-fill:after{background:linear-gradient(180deg,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.priority-bar-count{color:#fff;font-size:14px;font-weight:700;position:relative;z-index:1}.priority-bar-label{align-items:center;display:flex;flex-direction:column;gap:5px;text-align:center}.priority-icon{font-size:16px}.priority-text{color:#2c3e50;font-size:12px;font-weight:600}.priority-percentage{background:#e9ecef;border-radius:8px;color:#6c757d;font-size:10px;font-weight:500;padding:1px 4px}.priority-summary{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:center;padding:15px}.total-tasks{align-items:center;display:flex;flex-direction:column;gap:5px}.summary-label{color:#6c757d;font-size:14px;font-weight:500}.summary-count{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:24px;font-weight:700}.employee-tasks-chart{display:flex;flex-direction:column;gap:20px}.employee-stat-row{grid-gap:20px;align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #e9ecef;border-radius:12px;display:grid;gap:20px;grid-template-columns:180px 1fr 140px;overflow:hidden;padding:18px;position:relative;transition:all .3s ease}.employee-stat-row:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);box-shadow:0 4px 15px #0000001a;transform:translateX(5px)}.employee-stat-row:before{background:linear-gradient(180deg,#667eea,#764ba2);bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.employee-info{display:flex;flex-direction:column;gap:4px}.employee-info .emp-name{color:#2c3e50;font-size:16px;font-weight:700}.employee-info .emp-dept{background:#e9ecef;border-radius:12px;color:#6c757d;display:inline-block;font-size:13px;font-weight:500;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.task-counts{display:flex;gap:12px}.count-badge{align-items:center;border-radius:20px;box-shadow:0 2px 8px #0000001a;display:flex;font-size:13px;font-weight:600;gap:5px;padding:6px 12px;transition:transform .2s ease}.count-badge:hover{transform:scale(1.05)}.count-badge.total{background:linear-gradient(135deg,#6c757d,#495057);color:#fff}.count-badge.total:before{content:"📋"}.count-badge.progress{background:linear-gradient(135deg,#ffc107,#fd7e14);color:#fff}.count-badge.progress:before{content:"⏳"}.count-badge.completed{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.count-badge.completed:before{content:"✅"}.completion-rate{align-items:center;display:flex;gap:15px}.rate-bar{background:#e9ecef;box-shadow:inset 0 2px 4px #0000001a;flex:1 1;height:12px;overflow:hidden}.rate-bar,.rate-fill{border-radius:20px;position:relative}.rate-fill{background:linear-gradient(90deg,#667eea,#764ba2);height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.rate-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#ffffff4d,#0000 50%,#ffffff4d);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.rate-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:15px;font-weight:700;min-width:45px;text-align:right}.priority-chart{display:flex;flex-direction:column;gap:16px}.priority-stat{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-left:6px solid;border-radius:12px;display:flex;justify-content:space-between;overflow:hidden;padding:16px;position:relative;transition:all .3s ease}.priority-stat:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);box-shadow:0 6px 20px #0000001a;transform:translateY(-2px)}.priority-stat.urgent{border-left-color:#dc3545}.priority-stat.high{border-left-color:#fd7e14}.priority-stat.normal{border-left-color:#28a745}.priority-stat.low{border-left-color:#6c757d}.priority-label{align-items:center;display:flex;font-size:16px;font-weight:700;gap:8px}.priority-label.urgent{color:#dc3545}.priority-label.urgent:before{content:"🚨"}.priority-label.high{color:#fd7e14}.priority-label.high:before{content:"⚡"}.priority-label.normal{color:#28a745}.priority-label.normal:before{content:"📌"}.priority-label.low{color:#6c757d}.priority-label.low:before{content:"🔽"}.priority-count{background:#fff;border-radius:20px;box-shadow:0 2px 8px #0000001a;color:#2c3e50;font-size:18px;font-weight:700;padding:6px 12px}.department-chart{display:flex;flex-direction:column;gap:16px}.dept-stat{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #e9ecef;border-radius:12px;display:flex;gap:15px;overflow:hidden;padding:16px;position:relative;transition:all .3s ease}.dept-stat:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);box-shadow:0 6px 20px #0000001a;transform:translateY(-2px)}.dept-stat:before{background:linear-gradient(180deg,#667eea,#764ba2);bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.dept-name{align-items:center;color:#2c3e50;display:flex;font-size:16px;font-weight:700;gap:8px;min-width:100px}.dept-name:before{content:"🏢";font-size:18px}.dept-count{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;color:#2c3e50;font-size:16px;font-weight:700;min-width:60px;padding:4px 10px}.dept-bar{background:#e9ecef;box-shadow:inset 0 2px 4px #0000001a;flex:1 1;height:24px;overflow:hidden}.dept-bar,.dept-bar-fill{border-radius:12px;position:relative}.dept-bar-fill{background:linear-gradient(90deg,#667eea,#764ba2);height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.dept-bar-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#ffffff4d,#0000 50%,#ffffff4d);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.dept-percentage{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000001a;color:#2c3e50;font-size:14px;font-weight:600;min-width:45px;padding:4px 10px;text-align:center}.admin-tasks-page .kanban-task-card.compact{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;margin-bottom:10px;min-height:auto;padding:14px 16px;position:relative;transition:all .2s ease}.admin-tasks-page .kanban-task-card.compact:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.admin-tasks-page .kanban-task-card.compact:before{border-radius:8px 8px 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.admin-tasks-page .kanban-task-card.compact.priority-bg-urgent{background:#fff;border:2px solid #dc3545}.admin-tasks-page .kanban-task-card.compact.priority-bg-urgent:before{background:#dc3545}.admin-tasks-page .kanban-task-card.compact.priority-bg-urgent:hover{background:#fff;border-color:#dc3545;box-shadow:0 4px 12px #dc354533}.admin-tasks-page .kanban-task-card.compact.priority-bg-high{background:#fff;border:2px solid #f59e0b}.admin-tasks-page .kanban-task-card.compact.priority-bg-high:before{background:#f59e0b}.admin-tasks-page .kanban-task-card.compact.priority-bg-high:hover{background:#fff;border-color:#f59e0b;box-shadow:0 4px 12px #f59e0b33}.admin-tasks-page .kanban-task-card.compact.priority-bg-normal{background:#fff;border:2px solid #10b981}.admin-tasks-page .kanban-task-card.compact.priority-bg-normal:before{background:#10b981}.admin-tasks-page .kanban-task-card.compact.priority-bg-normal:hover{background:#fff;border-color:#10b981;box-shadow:0 4px 12px #10b98133}.admin-tasks-page .kanban-task-card.compact.priority-bg-low{background:#fff;border:2px solid #6b7280}.admin-tasks-page .kanban-task-card.compact.priority-bg-low:before{background:#6b7280}.admin-tasks-page .kanban-task-card.compact.priority-bg-low:hover{background:#fff;border-color:#6b7280;box-shadow:0 4px 12px #6b728033}.admin-tasks-page .kanban-task-card.compact.exception-task{animation:exception-pulse 2s infinite;border:2px solid #dc3545;box-shadow:0 4px 16px #dc354533,0 0 0 1px #dc35451a}.admin-tasks-page .kanban-task-card.compact.exception-task:hover{border-color:#c82333;box-shadow:0 8px 32px #dc35454d,0 0 0 2px #dc354533;transform:translateY(-3px) scale(1.02)}.admin-tasks-page .kanban-task-card.compact.exception-task:before{background:linear-gradient(90deg,#dc3545,#c82333)!important;height:4px!important}@keyframes exception-pulse{0%,to{box-shadow:0 4px 16px #dc354533,0 0 0 1px #dc35451a}50%{box-shadow:0 4px 16px #dc35454d,0 0 0 2px #dc354533}}.admin-tasks-page .kanban-task-card.compact .task-assignee-badge{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;font-size:11px;font-weight:600;padding:4px 8px;position:absolute;right:12px;top:10px;z-index:1}.admin-tasks-page .kanban-task-card.compact .task-title-center{color:#111827;font-size:15px;font-weight:600;line-height:1.5;margin:0 0 8px;overflow:hidden;padding:0;position:relative;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.admin-tasks-page .kanban-task-card.compact .task-description-compact{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:13px;line-height:1.4;margin-bottom:10px;overflow:hidden;padding:0 10px;text-align:center;word-break:break-word}.admin-tasks-page .kanban-task-card.compact .task-info-row{align-items:center;border-top:1px solid #e5e7eb;color:#6b7280;display:flex;font-size:12px;justify-content:space-between;margin-top:6px;padding-top:6px}.admin-tasks-page .kanban-task-card.compact .task-category{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;color:#374151;font-size:11px;font-weight:500;padding:2px 6px}.admin-tasks-page .kanban-task-card.compact .task-dates{color:#6b7280;font-size:11px;font-weight:500}.admin-tasks-page .task-department{color:#666;font-size:11px;font-style:italic;margin-top:4px}.admin-tasks-page .tasks-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden}.admin-tasks-page .tasks-table-header{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px 28px}.admin-tasks-page .tasks-table-header h3{align-items:center;color:#1e293b;display:flex;font-size:20px;font-weight:700;gap:8px;margin:0}.admin-tasks-page .tasks-table-header h3:before{content:"📋";font-size:18px}.admin-tasks-page .search-input{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;padding:10px 16px;transition:all .2s ease;width:250px}.admin-tasks-page .search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none;transform:translateY(-1px)}.admin-tasks-page .search-input::placeholder{color:#94a3b8}.admin-tasks-page .table-wrapper{background:#fff;overflow-x:auto}.admin-tasks-page .tasks-table{border-collapse:initial;border-spacing:0;font-size:14px;line-height:1.5;width:100%}.admin-tasks-page .tasks-table th{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-bottom:2px solid #cbd5e1;color:#475569;font-size:12px;font-weight:700;letter-spacing:1px;padding:16px 20px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:10}.admin-tasks-page .tasks-table th.sortable{cursor:pointer;padding-right:35px;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.admin-tasks-page .tasks-table th.sortable:hover{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#334155;transform:translateY(-1px)}.admin-tasks-page .tasks-table th.sortable.active{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-bottom-color:#3b82f6;color:#1e40af}.admin-tasks-page .tasks-table th .sort-indicator{animation:sortBounce .3s ease;color:#3b82f6;font-size:14px;font-weight:900;position:absolute;right:8px;top:50%;transform:translateY(-50%)}@keyframes sortBounce{0%{opacity:0;transform:translateY(-50%) scale(.8)}50%{opacity:.7;transform:translateY(-50%) scale(1.2)}to{opacity:1;transform:translateY(-50%) scale(1)}}.admin-tasks-page .tasks-table th.sortable:before{border-bottom:6px solid #94a3b8;border-left:4px solid #0000;border-right:4px solid #0000;content:"";height:0;opacity:.3;position:absolute;right:10px;top:50%;transform:translateY(-50%);transition:opacity .2s ease;width:0}.admin-tasks-page .tasks-table th.sortable:hover:before{opacity:.6}.admin-tasks-page .tasks-table th:first-child{border-top-left-radius:0}.admin-tasks-page .tasks-table th:last-child{border-top-right-radius:0}.admin-tasks-page .tasks-table td{background:#fff;border-bottom:1px solid #f1f5f9;padding:20px;transition:background-color .2s ease;vertical-align:middle}.admin-tasks-page .task-row{cursor:pointer;position:relative;transition:all .2s ease}.admin-tasks-page .task-row:hover{background-color:#f8fafc!important;box-shadow:0 4px 12px #0000000d;transform:translateY(-1px)}.admin-tasks-page .task-row.exception-row{background:linear-gradient(135deg,#fef2f2,#fee2e2)!important;border-left:4px solid #dc3545;position:relative}.admin-tasks-page .task-row.exception-row:before{align-items:center;background:#dc3545;border-radius:50%;color:#fff;content:"⚠️";display:flex;font-size:10px;height:20px;justify-content:center;left:-2px;position:absolute;top:50%;transform:translateY(-50%);width:20px;z-index:1}.admin-tasks-page .task-row.exception-row:hover{background:linear-gradient(135deg,#fecaca,#fca5a5)!important}.admin-tasks-page .priority-indicator{align-items:center;border-radius:20px;display:flex;font-size:13px;font-weight:700;gap:8px;justify-content:center;min-width:80px;padding:6px 12px}.admin-tasks-page .priority-indicator.priority-urgent{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #f87171;color:#991b1b}.admin-tasks-page .priority-indicator.priority-high{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;color:#92400e}.admin-tasks-page .priority-indicator.priority-normal{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981;color:#065f46}.admin-tasks-page .priority-indicator.priority-low{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border:2px solid #9ca3af;color:#374151}.admin-tasks-page .title-cell{max-width:350px;min-width:250px}.admin-tasks-page .title-content{display:flex;flex-direction:column;gap:6px}.admin-tasks-page .task-title-text{color:#1e293b;font-size:15px;font-weight:700;line-height:1.4;margin-bottom:2px}.admin-tasks-page .task-description-preview{background:#f8fafc;border-left:3px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:13px;line-height:1.4;padding:6px 12px}.admin-tasks-page .category-tag{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border:2px solid #a5b4fc;border-radius:16px;color:#4338ca;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;min-width:60px;padding:6px 12px;text-align:center;text-transform:uppercase}.admin-tasks-page .assignee-name{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1px solid #cbd5e1;border-radius:8px;color:#1e293b;display:inline-block;font-weight:600;min-width:70px;padding:8px 12px;text-align:center}.admin-tasks-page .status-select-table{border:2px solid #0000;border-radius:8px;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.5px;min-width:90px;padding:8px 12px;text-transform:uppercase;transition:all .2s ease}.admin-tasks-page .status-select-table:focus{box-shadow:0 4px 12px #0000001a;outline:none;transform:translateY(-1px)}.admin-tasks-page .status-select-table.status-requested{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b;color:#92400e}.admin-tasks-page .status-select-table.status-in_progress{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;color:#1e40af}.admin-tasks-page .status-select-table.status-completed{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981;color:#065f46}.admin-tasks-page .status-select-table.status-problem{background:linear-gradient(135deg,#fecaca,#fca5a5);border-color:#ef4444;color:#991b1b}.admin-tasks-page .status-select-table.status-cancelled{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-color:#9ca3af;color:#374151}.admin-tasks-page .date-cell{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#475569;font-size:13px;font-weight:600;padding:8px 12px!important;text-align:center;white-space:nowrap}.admin-tasks-page .action-btn.view-btn-small{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-shadow:0 2px 4px #3b82f64d;color:#fff;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:.5px;padding:10px 16px;text-transform:uppercase;transition:all .2s ease}.admin-tasks-page .action-btn.view-btn-small:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.admin-tasks-page .empty-state{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px dashed #cbd5e1;border-radius:12px;color:#64748b;margin:20px;padding:60px 20px;text-align:center}.admin-tasks-page .empty-state:before{content:"📝";display:block;font-size:48px;margin-bottom:16px}.admin-tasks-page .empty-state p{font-size:16px;font-weight:600;margin:0}.admin-tasks-page .report-view.compact{padding:16px}.admin-tasks-page .report-header-compact{align-items:center;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #e2e8f0;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.admin-tasks-page .report-title-compact{align-items:center;display:flex;gap:12px}.admin-tasks-page .report-title-compact h2{color:#1e293b;font-size:18px;font-weight:700;margin:0}.admin-tasks-page .report-date-compact{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:12px;padding:4px 8px}.admin-tasks-page .report-summary-inline{align-items:center;display:flex;gap:16px}.admin-tasks-page .summary-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;min-width:60px;padding:8px 12px}.admin-tasks-page .summary-item .summary-number{color:#1e293b;font-size:18px;font-weight:700}.admin-tasks-page .summary-item .summary-label{color:#64748b;font-size:10px;letter-spacing:.5px;margin-top:2px;text-transform:uppercase}.admin-tasks-page .summary-item.completed .summary-number{color:#10b981}.admin-tasks-page .summary-item.progress .summary-number{color:#3b82f6}.admin-tasks-page .summary-item.urgent .summary-number{color:#ef4444}.admin-tasks-page .btn-print-compact{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 16px;transition:all .2s ease}.admin-tasks-page .btn-print-compact:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.admin-tasks-page .employee-reports-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.admin-tasks-page .employee-report-card-compact{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;transition:all .2s ease}.admin-tasks-page .employee-report-card-compact:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.admin-tasks-page .employee-header-compact{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.admin-tasks-page .employee-info-compact{align-items:center;display:flex;gap:8px}.admin-tasks-page .employee-name-compact h4{color:#1e293b;font-size:14px;font-weight:600;margin:0}.admin-tasks-page .department-compact{background:#f8fafc;border-radius:4px;color:#64748b;display:inline-block;font-size:11px;margin-top:2px;padding:2px 6px}.admin-tasks-page .metrics-compact{text-align:right}.admin-tasks-page .metric-compact{align-items:center;display:flex;flex-direction:column}.admin-tasks-page .metric-compact .metric-value{color:#10b981;font-size:16px;font-weight:700}.admin-tasks-page .metric-compact .metric-label{color:#64748b;font-size:9px;letter-spacing:.5px;text-transform:uppercase}.admin-tasks-page .status-row-compact{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.admin-tasks-page .status-chip{align-items:center;border:1px solid;border-radius:6px;display:flex;flex-direction:column;font-size:10px;min-width:35px;padding:4px 8px}.admin-tasks-page .status-chip .count{font-size:12px;font-weight:700}.admin-tasks-page .status-chip .label{margin-top:1px;opacity:.8}.admin-tasks-page .status-chip.total{background:#f8fafc;border-color:#e2e8f0;color:#475569}.admin-tasks-page .status-chip.completed{background:#ecfdf5;border-color:#10b981;color:#065f46}.admin-tasks-page .status-chip.progress{background:#eff6ff;border-color:#3b82f6;color:#1e40af}.admin-tasks-page .status-chip.requested{background:#fffbeb;border-color:#f59e0b;color:#92400e}.admin-tasks-page .status-chip.problem{background:#fef2f2;border-color:#ef4444;color:#991b1b}.admin-tasks-page .priority-row-compact{display:flex;flex-wrap:wrap;gap:4px}.admin-tasks-page .priority-chip{align-items:center;border-radius:12px;display:flex;font-size:10px;font-weight:600;gap:4px;padding:3px 6px}.admin-tasks-page .priority-chip.urgent{background:#fef2f2;color:#991b1b}.admin-tasks-page .priority-chip.high{background:#fffbeb;color:#92400e}.admin-tasks-page .priority-chip.normal{background:#ecfdf5;color:#065f46}.admin-tasks-page .priority-chip.low{background:#f8fafc;color:#475569}.admin-tasks-page .priority-chip .priority-icon{font-size:8px}.admin-tasks-page .issues-compact{display:flex;gap:6px;margin-top:8px}.admin-tasks-page .issue-badge{border-radius:8px;font-size:9px;font-weight:600;padding:2px 6px}.admin-tasks-page .issue-badge.overdue,.admin-tasks-page .issue-badge.problem{background:#fef2f2;color:#991b1b}.admin-tasks-page .report-footer-compact{border-top:1px solid #e2e8f0;margin-top:20px;padding:16px;text-align:center}.admin-tasks-page .footer-text{color:#64748b;font-size:11px}.user-info-bar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;font-size:16px;font-weight:500;margin-bottom:20px;padding:12px 20px}.user-info-bar span{align-items:center;display:inline-flex;gap:8px}.report-view{background:#fff;padding:20px 20px 100px}.report-header{align-items:flex-start;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.report-title-section h2{color:#2c3e50;font-size:28px;font-weight:700;margin-bottom:10px}.report-meta{color:#6c757d;gap:20px}.print-btn,.report-meta{display:flex;font-size:14px}.print-btn{align-items:center;background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;gap:8px;padding:10px 20px;transition:background .3s}.print-btn:hover{background:#5a6268}.report-summary{margin-bottom:40px}.report-summary h3{color:#2c3e50;font-size:22px;font-weight:600;margin-bottom:20px}.summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.summary-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#fff;padding:20px;text-align:center}.summary-card.urgent{background:linear-gradient(135deg,#ff6b6b,#ee5a24)}.summary-number{font-size:36px;font-weight:700;margin-bottom:8px}.summary-label{font-size:16px;opacity:.9}.employee-reports{display:flex;flex-direction:column;gap:25px}.employee-report-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 4px #0000001a;overflow:hidden;page-break-inside:avoid}.employee-report-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;justify-content:space-between;padding:20px}.employee-basic-info{align-items:center;display:flex;gap:15px}.employee-name-info h4{color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 8px}.employee-details{display:flex;font-size:14px;gap:12px}.employee-details .department{background:#007bff}.employee-details .department,.employee-details .position{border-radius:4px;color:#fff;font-weight:500;padding:4px 8px}.employee-details .position{background:#6c757d}.employee-metrics{display:flex;gap:20px}.metric{text-align:center}.metric-value{color:#2c3e50;display:block;font-size:24px;font-weight:700}.metric-label{color:#6c757d;font-size:12px;margin-top:4px}.employee-report-body{padding:20px}.report-section{margin-bottom:25px}.report-section h5{border-bottom:1px solid #e9ecef;color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:12px;padding-bottom:6px}.status-breakdown{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.status-item{align-items:center;background:#f8f9fa;border-left:4px solid #6c757d;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.status-item.completed{background:#d4edda;border-left-color:#28a745}.status-item.progress{background:#fff3cd;border-left-color:#ffc107}.status-item.requested{background:#d1ecf1;border-left-color:#17a2b8}.status-item.problem{background:#f8d7da;border-left-color:#dc3545}.status-label{font-size:14px;font-weight:500}.status-count{font-size:14px;font-weight:600}.priority-breakdown{display:flex;flex-wrap:wrap;gap:10px}.priority-item{align-items:center;border-radius:20px;display:flex;font-size:13px;font-weight:500;justify-content:space-between;min-width:80px;padding:6px 12px}.priority-item.urgent{background:#ffebee;border:1px solid #ffcdd2;color:#c62828}.priority-item.high{background:#fff3e0;border:1px solid #ffcc02;color:#ef6c00}.priority-item.normal{background:#e8f5e8;border:1px solid #c8e6c9;color:#2e7d32}.priority-item.low{background:#f3f4f6;border:1px solid #dee2e6;color:#6c757d}.report-section.issues{background:#fff5f5;border-left:4px solid #dc3545;border-radius:8px;padding:15px}.issues-list{display:flex;flex-direction:column;gap:10px}.issue-item{align-items:center;background:#fff;border:1px solid #fee;border-radius:6px;display:flex;gap:12px;padding:10px}.issue-item.overdue{border-left:4px solid #ffc107}.issue-item.problem{border-left:4px solid #dc3545}.issue-icon{font-size:18px}.issue-content{align-items:center;display:flex;flex:1 1;justify-content:space-between}.issue-title{color:#2c3e50;font-weight:500}.issue-count{color:#dc3545;font-weight:600}.recent-tasks{display:flex;flex-direction:column;gap:8px}.recent-task{align-items:center;background:#e8f5e8;border-left:4px solid #28a745;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.recent-task .task-title{color:#2c3e50;font-weight:500}.recent-task .task-category{background:#28a745;border-radius:4px;color:#fff;font-size:12px;padding:2px 8px}.more-tasks{color:#6c757d;font-size:13px;font-style:italic;padding:8px;text-align:center}.progress-section{margin-top:20px}.progress-bar-container{background:#f8f9fa;border-radius:8px;padding:15px}.progress-bar{background:#e9ecef;border-radius:10px;display:flex;height:20px;margin-bottom:10px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease}.progress-fill.completed{background:linear-gradient(90deg,#28a745,#20c997)}.progress-fill.progress{background:linear-gradient(90deg,#ffc107,#fd7e14)}.progress-legend{display:flex;gap:20px;justify-content:center}.legend-item{align-items:center;display:flex;font-size:14px;gap:8px}.legend-color{border-radius:2px;height:12px;width:12px}.legend-color.completed{background:#28a745}.legend-color.progress{background:#ffc107}.report-footer{grid-gap:40px;border-top:2px solid #e9ecef;display:grid;gap:40px;grid-template-columns:2fr 1fr;margin-top:40px;padding-top:30px}.report-notes h4{color:#2c3e50;font-size:18px;font-weight:600;margin-bottom:15px}.report-notes ul{list-style:none;padding:0}.report-notes li{border-bottom:1px solid #f8f9fa;color:#6c757d;font-size:14px;padding:6px 0}.report-notes li:before{content:"📌 ";margin-right:8px}.report-signature{text-align:right}.report-signature p{color:#6c757d;font-size:13px;margin:4px 0}@media print{.report-view{background:#fff;padding:0}.employee-selector-section,.filter-section,.page-header{display:none}.employee-report-card{border:1px solid #ddd;box-shadow:none;margin-bottom:20px;page-break-inside:avoid}.print-btn{display:none}.report-header{border-bottom:2px solid #000}.summary-card{background:#f8f9fa!important;border:1px solid #ddd;color:#000!important}}.individual-view{padding:20px 0}.empty-state{padding:60px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:20px;opacity:.6}.empty-state h3{color:#2c3e50;font-size:24px;margin-bottom:10px}.empty-state p{color:#6c757d;font-size:16px;line-height:1.5}.employee-detail-report{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.detail-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:30px}.employee-profile{align-items:center;display:flex;gap:20px}.profile-avatar{align-items:center;background:#fff3;border:3px solid #ffffff4d;border-radius:50%;color:#fff;display:flex;font-size:32px;font-weight:700;height:80px;justify-content:center;width:80px}.profile-info h2{font-size:32px;font-weight:700;margin-bottom:8px}.profile-details{display:flex;gap:15px}.profile-details .department,.profile-details .position{background:#fff3;border:1px solid #ffffff4d;border-radius:20px;font-size:14px;font-weight:500;padding:6px 12px}.key-metrics{display:flex;gap:20px}.metric-card{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;min-width:100px;padding:20px;text-align:center}.metric-number{font-size:28px;font-weight:700;margin-bottom:5px}.metric-label{font-size:14px;opacity:.9}.attention-section,.recent-activity-section,.status-analysis-section,.timeline-section{border-bottom:1px solid #e9ecef;padding:30px}.attention-section:last-child,.recent-activity-section:last-child,.status-analysis-section:last-child,.timeline-section:last-child{border-bottom:none}.attention-section h3,.recent-activity-section h3,.status-analysis-section h3,.timeline-section h3{color:#2c3e50;font-size:22px;font-weight:600;margin-bottom:25px}.timeline{padding-left:30px;position:relative}.timeline:before{background:#e9ecef;bottom:0;content:"";left:15px;position:absolute;top:0;width:2px}.timeline-item{margin-bottom:30px;padding-left:40px;position:relative}.timeline-marker{align-items:center;background:#fff;border:3px solid #e9ecef;border-radius:50%;display:flex;font-size:12px;font-weight:600;height:30px;justify-content:center;left:-25px;position:absolute;top:0;width:30px;z-index:1}.timeline-item.completed .timeline-marker{background:#28a745;border-color:#28a745;color:#fff}.timeline-item.in_progress .timeline-marker{background:#ffc107;border-color:#ffc107;color:#fff}.timeline-item.requested .timeline-marker{background:#17a2b8;border-color:#17a2b8;color:#fff}.timeline-item.problem .timeline-marker{background:#dc3545;border-color:#dc3545;color:#fff}.task-card-timeline{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000000d;padding:20px}.task-header-timeline{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.task-header-timeline h4{color:#2c3e50;flex:1 1;font-size:18px;font-weight:600;margin-right:15px}.task-badges{display:flex;gap:8px}.task-description-timeline{color:#6c757d;font-size:14px;line-height:1.5;margin-bottom:15px}.task-meta-timeline{align-items:center;display:flex;font-size:13px;justify-content:space-between}.date-info{display:flex;gap:15px}.created-date,.due-date{color:#6c757d}.category{background:#e9ecef;border-radius:4px;color:#495057;font-weight:500;padding:4px 8px}.status-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.status-analysis-card{background:#f8f9fa;border:1px solid #e9ecef;border-left:4px solid;border-radius:8px;padding:20px}.status-analysis-card.requested{border-left-color:#17a2b8}.status-analysis-card.in-progress{border-left-color:#ffc107}.status-analysis-card.completed{border-left-color:#28a745}.status-analysis-card.problem{border-left-color:#dc3545}.status-header h4{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:15px}.task-list-mini{display:flex;flex-direction:column;gap:8px}.mini-task-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:4px;display:flex;font-size:13px;justify-content:space-between;padding:8px 12px}.mini-task-item.urgent{border-left:3px solid #dc3545}.task-title-mini{color:#2c3e50;flex:1 1;font-weight:500;margin-right:10px}.more-items,.task-date-mini{color:#6c757d;font-size:12px}.more-items{font-style:italic;padding:8px;text-align:center}.attention-section{background:#fff5f5}.attention-cards{display:flex;flex-direction:column;gap:20px}.attention-card{background:#fff;border:1px solid #fee;border-left:4px solid;border-radius:8px;padding:20px}.attention-card.overdue{border-left-color:#ffc107}.attention-card.problem{border-left-color:#dc3545}.attention-card h4{color:#2c3e50;font-size:16px;font-weight:600;margin-bottom:15px}.attention-list{display:flex;flex-direction:column;gap:10px}.attention-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;justify-content:space-between;padding:10px 15px}.attention-item .task-title{color:#2c3e50;flex:1 1;font-weight:500;margin-right:15px}.delay-days,.problem-status{background:#dc3545;border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px}.delay-days{background:#ffc107;color:#000}.activity-summary p{color:#6c757d;font-size:16px;margin-bottom:20px}.recent-tasks-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.recent-task-card{background:#fff;border:1px solid #e9ecef;border-left:4px solid;border-radius:8px;padding:15px}.recent-task-card.requested{border-left-color:#17a2b8}.recent-task-card.in_progress{border-left-color:#ffc107}.recent-task-card.completed{border-left-color:#28a745}.recent-task-card.problem{border-left-color:#dc3545}.recent-task-card h5{color:#2c3e50;font-size:14px;font-weight:600;line-height:1.3;margin-bottom:8px}.task-info{align-items:center;display:flex;font-size:12px;justify-content:space-between}.task-info .status{border-radius:3px;font-weight:500;padding:2px 6px}.task-info .status.requested{background:#d1ecf1;color:#0c5460}.task-info .status.in_progress{background:#fff3cd;color:#856404}.task-info .status.completed{background:#d4edda;color:#155724}.task-info .status.problem{background:#f8d7da;color:#721c24}.admin-tasks-page .department-reports{display:flex;flex-direction:column;gap:30px}.admin-tasks-page .department-report-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.admin-tasks-page .department-section-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.admin-tasks-page .department-section-header h3{align-items:center;color:#1e293b;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.admin-tasks-page .dept-employee-count{background:#3b82f6;border-radius:16px;color:#fff;font-size:12px;font-weight:500;padding:4px 12px}.admin-tasks-page .department-report-section .employee-reports-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.admin-tasks-page .department-report-section .employee-report-card-compact{background:#fff;border:1px solid #e2e8f0;border-radius:8px}.task-info .date{color:#6c757d}.admin-tasks-page .efficiency-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:30px 0;padding:20px}.admin-tasks-page .efficiency-section h3{color:#1e293b;font-size:18px;font-weight:600;margin-bottom:20px}.admin-tasks-page .efficiency-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.admin-tasks-page .efficiency-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;text-align:center}.admin-tasks-page .efficiency-header h4{color:#64748b;font-size:14px;font-weight:500;margin:0 0 12px}.admin-tasks-page .efficiency-content{align-items:baseline;display:flex;gap:4px;justify-content:center}.admin-tasks-page .large-number{color:#1e293b;font-size:36px;font-weight:700}.admin-tasks-page .efficiency-label{color:#64748b;font-size:14px;font-weight:500}.admin-tasks-page .monthly-stats-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:30px 0;padding:20px}.admin-tasks-page .monthly-stats-section h3{color:#1e293b;font-size:18px;font-weight:600;margin-bottom:20px}.admin-tasks-page .chart-container{align-items:flex-end;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;height:200px;padding:20px;position:relative}.admin-tasks-page .month-bar{align-items:center;display:flex;flex:1 1;flex-direction:column;height:100%}.admin-tasks-page .month-label{color:#64748b;font-size:12px;font-weight:500;margin-bottom:8px}.admin-tasks-page .bar-container{display:flex;flex:1 1;flex-direction:column;justify-content:flex-end;min-height:120px;position:relative;width:100%}.admin-tasks-page .bar{border-radius:4px 4px 0 0;bottom:0;position:absolute;transition:all .3s ease;width:100%}.admin-tasks-page .total-bar{background:#e2e8f0;z-index:1}.admin-tasks-page .completed-bar{background:#22c55e;z-index:2}.admin-tasks-page .bar-labels{color:#64748b;font-size:11px;margin-top:8px;text-align:center}.admin-tasks-page .completed-count{color:#22c55e;font-weight:600}.admin-tasks-page .chart-legend{display:flex;gap:12px;position:absolute;right:10px;top:10px}.admin-tasks-page .legend-item{align-items:center;color:#64748b;display:flex;font-size:11px;gap:4px}.admin-tasks-page .legend-color{border-radius:2px;height:12px;width:12px}.admin-tasks-page .legend-color.total{background:#e2e8f0}.admin-tasks-page .legend-color.completed{background:#22c55e}.admin-tasks-page .category-analysis-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:30px 0;padding:20px}.admin-tasks-page .category-analysis-section h3{color:#1e293b;font-size:18px;font-weight:600;margin-bottom:20px}.admin-tasks-page .category-stats{display:flex;flex-direction:column;gap:12px}.admin-tasks-page .category-stat-item{grid-gap:12px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:12px;grid-template-columns:2fr 3fr 1fr;padding:12px}.admin-tasks-page .category-info{align-items:center;display:flex;justify-content:space-between}.admin-tasks-page .category-name{color:#1e293b;font-weight:500}.admin-tasks-page .category-count{color:#64748b;font-size:12px}.admin-tasks-page .category-progress{background:#e2e8f0;border-radius:4px;height:8px;overflow:hidden}.admin-tasks-page .progress-bar{background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:4px;height:100%;transition:width .3s ease}.admin-tasks-page .category-percentage{color:#22c55e;font-size:14px;font-weight:600;text-align:right}.admin-users-page{margin:0 auto;max-width:1200px;padding:20px}.page-header{border-bottom:2px solid #e9ecef;margin-bottom:20px;padding-bottom:15px}.header-actions{align-items:center;display:flex;gap:12px}.page-header h1{color:#2c3e50}.create-btn{background:#007bff;font-size:14px;padding:12px 20px;transition:background-color .2s}.create-btn:hover{background:#0056b3}.excel-btn{background:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:background-color .2s}.excel-btn:hover{background:#218838}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;margin-bottom:20px;padding:12px 16px}.loading{color:#6c757d}.users-grid{background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.users-header{background:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;display:grid;font-weight:600;grid-template-columns:120px 100px 200px 120px 100px 130px 100px 80px}.header-item{border-right:1px solid #dee2e6;font-size:14px;padding:15px 10px;text-align:center}.header-item:last-child{border-right:none}.user-row{border-bottom:1px solid #e9ecef;display:grid;grid-template-columns:120px 100px 200px 120px 100px 130px 100px 80px;transition:background-color .2s}.user-row:hover{background:#f8f9fa}.user-item{align-items:center;border-right:1px solid #e9ecef;display:flex;font-size:14px;justify-content:center;padding:12px 10px;text-align:center;word-break:break-word}.user-item:last-child{border-right:none;gap:5px}.delete-btn,.edit-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:4px 8px;transition:background-color .2s}.edit-btn:hover{background:#e3f2fd}.delete-btn:hover{background:#ffebee}.no-users{color:#6c757d;font-size:16px;padding:40px;text-align:center}.modal{box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:90vw;overflow-y:auto;width:600px}.modal-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;border-radius:12px 12px 0 0;padding:20px 25px}.modal-header h2{color:#2c3e50;font-size:20px}.close-btn{align-items:center;border-radius:50%;color:#6c757d;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:background-color .2s;width:30px}.close-btn:hover{background:#e9ecef;color:#495057}.user-form{padding:25px}.form-row{display:flex;gap:15px;margin-bottom:20px}.form-group{flex:1 1}.form-group label{color:#495057;font-size:14px}.form-group input,.form-group select{border:2px solid #e9ecef;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus,.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-group input::placeholder{color:#adb5bd}.form-actions{border-top:1px solid #e9ecef;gap:10px;margin-top:30px}.form-actions button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;min-width:100px;padding:12px 24px;transition:all .2s}.form-actions button[type=button]{background:#6c757d;color:#fff}.form-actions button[type=button]:hover{background:#545b62}.form-actions button[type=submit]{background:#28a745;color:#fff}.form-actions button[type=submit]:hover{background:#218838}@media (max-width:1000px){.user-row,.users-header{font-size:12px;grid-template-columns:100px 80px 150px 100px 80px 100px 80px 60px}.header-item,.user-item{padding:8px 6px}}@media (max-width:768px){.admin-users-page{padding:10px}.page-header{flex-direction:column;gap:15px;text-align:center}.users-grid{overflow-x:auto}.form-row{flex-direction:column;gap:10px}.modal{width:95vw}}.excel-upload-content{padding:20px 0}.upload-section{border-bottom:1px solid #e9ecef;margin-bottom:30px;padding-bottom:20px}.upload-section:last-child{border-bottom:none;margin-bottom:0}.upload-section h3{color:#2c3e50;font-size:18px;margin-bottom:10px}.upload-section p{color:#6c757d;margin-bottom:15px}.template-btn{background:#17a2b8;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:20px;padding:10px 16px;transition:background-color .2s}.template-btn:hover{background:#138496}.template-info{background:#f8f9fa;border-left:4px solid #17a2b8;border-radius:6px;padding:15px}.template-info h4{color:#495057;font-size:14px;margin-bottom:10px}.template-info ul{margin:0;padding-left:20px}.template-info li{color:#6c757d;font-size:13px;margin-bottom:5px}.template-info strong{color:#495057}.file-upload{display:inline-block;position:relative}.file-upload input[type=file]{left:-9999px;position:absolute}.file-upload-label{background:#007bff;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:500;padding:12px 20px;transition:background-color .2s}.file-upload-label:hover{background:#0056b3}.file-upload-label.uploading{background:#6c757d;cursor:not-allowed}.upload-result{border-radius:6px;padding:15px}.upload-result.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.upload-result.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.upload-result h3{font-size:16px;margin:0 0 10px}.upload-result p{font-size:14px;margin:0}.result-details{border-top:1px solid #0000001a;margin-top:15px;padding-top:15px}.result-details h4{font-size:14px;font-weight:600;margin:0 0 10px}.result-details ul{margin:0;max-height:200px;overflow-y:auto;padding-left:20px}.result-details li{font-size:13px;margin-bottom:5px}.success-item{color:#155724}.error-item{color:#721c24}.select-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.select-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:90vw;width:600px}.select-modal-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.select-modal-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.select-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.select-modal-close:hover{background-color:#e9ecef;color:#495057}.select-modal-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:20px 24px}.search-section{margin-bottom:16px}.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 12px;width:100%}.search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.items-list{border:1px solid #dee2e6;border-radius:4px;flex:1 1;max-height:300px;min-height:200px;overflow-y:auto}.loading,.no-items{color:#6c757d;font-size:14px;padding:40px 20px;text-align:center}.item-row{border-bottom:1px solid #e9ecef;cursor:pointer;padding:12px 16px;transition:background-color .2s ease}.item-row:last-child{border-bottom:none}.item-row:hover{background-color:#f8f9fa}.item-row.selected{background-color:#e7f3ff;border-color:#007bff}.item-info{align-items:center;display:flex;gap:8px}.item-code{color:#007bff;font-size:13px;font-weight:500}.item-name{color:#495057;font-size:14px}.item-extra{color:#6c757d;font-size:12px;margin-left:8px}.selected-info{background-color:#e8f5e8;border:1px solid #28a745;border-radius:4px;color:#155724;font-size:14px;margin-top:16px;padding:12px}.select-modal-footer{background-color:#f8f9fa;border-radius:0 0 8px 8px;border-top:1px solid #dee2e6;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.btn{border-radius:4px;justify-content:center;min-height:36px;text-decoration:none;transition:all .3s ease}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:#007bff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-secondary{background-color:#6c757d}.btn-secondary:hover:not(:disabled){background-color:#545b62}@media (max-width:768px){.select-modal{margin:20px;width:95vw}.select-modal-body,.select-modal-footer,.select-modal-header{padding:16px}}.logistics-page{margin:0 auto}.logistics-page-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.logistics-page-header h1{color:#1e3c72;font-size:2rem;font-weight:700;margin:0}.logistics-btn-primary{background:linear-gradient(135deg,#1e3c72,#2a5298);border:none;border-radius:8px;box-shadow:0 4px 12px #1e3c724d;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.logistics-btn-primary:hover{box-shadow:0 6px 20px #1e3c7266;transform:translateY(-2px)}.logistics-view-tabs{gap:8px;margin-bottom:16px;width:-webkit-fit-content;width:fit-content}.logistics-type-filter-tabs,.logistics-view-tabs{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;padding:4px}.logistics-type-filter-tabs{gap:4px;margin-bottom:24px;overflow-x:auto;scrollbar-width:thin}.logistics-type-filter-tabs::-webkit-scrollbar{height:4px}.logistics-type-filter-tabs::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:2px}.logistics-type-tab{align-items:center;background:#0000;border:none;border-radius:6px;color:#4a5568;cursor:pointer;display:flex;font-weight:500;gap:6px;min-width:-webkit-fit-content;min-width:fit-content;padding:8px 12px;transition:all .2s ease;white-space:nowrap}.logistics-type-tab:hover{background:#4299e11a;color:#2b6cb0}.logistics-type-tab.active{background:#3182ce;background:var(--tab-color,#3182ce);box-shadow:0 2px 4px #0000001a;color:#fff}.logistics-type-tab:first-child{--tab-color:#3182ce}.logistics-tab-icon{font-size:14px}.logistics-tab-label{font-size:13px;font-weight:600}.logistics-header-actions{align-items:center;display:flex;gap:16px}.logistics-view-toggle{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;overflow:hidden}.logistics-toggle-btn{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.logistics-toggle-btn:hover{background:#1e3c721a;color:#1e3c72}.logistics-toggle-btn.active{background:#1e3c72;color:#fff}.logistics-tabs-container{margin-bottom:30px}.logistics-tabs{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:8px;padding:4px}.logistics-tab{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.logistics-tab:hover{background:#1e3c721a;color:#1e3c72}.logistics-tab.active{background:#1e3c72;box-shadow:0 2px 8px #1e3c724d;color:#fff}.exceptions-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.logistics-calendar-view{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;padding:24px}.logistics-calendar-grid{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.logistics-calendar-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.logistics-calendar-header h3{color:#1e3c72;font-size:1.5rem;font-weight:600;margin:0}.logistics-calendar-legend{display:flex;gap:16px}.logistics-legend-item{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:6px}.logistics-legend-dot{border-radius:50%;display:inline-block;height:12px;width:12px}.logistics-legend-dot.outbound{background:#ff9800}.logistics-legend-dot.missing{background:#f44336}.logistics-legend-dot.complaint{background:#9c27b0}.calendar{display:flex;flex-direction:column}.logistics-calendar-weekdays{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.logistics-weekday{background:#f8fafc;border-radius:6px;color:#6b7280;font-weight:600;padding:12px;text-align:center}.logistics-calendar-days{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr)}.logistics-calendar-day{background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;min-height:80px;padding:8px;position:relative;transition:all .2s ease}.logistics-calendar-day:hover{background:#f8fafc;border-color:#1e3c72}.logistics-calendar-day.today{background:#1e3c721a;border-color:#1e3c72;font-weight:600}.logistics-calendar-day.other-month{background:#f8fafc;color:#9ca3af}.logistics-calendar-day.other-month .logistics-day-number{color:#9ca3af}.logistics-calendar-day.has-exceptions{background:#1e3c720d;cursor:pointer}.logistics-calendar-day.has-exceptions:hover{background:#1e3c721a;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.logistics-calendar-day.empty{background:#0000;border:none;cursor:default}.logistics-day-number{color:#374151;font-size:.875rem;font-weight:500;margin-bottom:4px}.logistics-day-exceptions{display:flex;flex-wrap:wrap;gap:2px;margin-top:auto}.logistics-exception-dot{align-items:center;border-radius:8px;color:#fff;display:flex;font-size:.7rem;font-weight:600;height:16px;justify-content:center;min-width:16px;text-align:center}.logistics-exception-dot.outbound{background:#ff9800}.logistics-exception-dot.missing{background:#f44336}.logistics-exception-dot.complaint{background:#9c27b0}.logistics-exception-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 8px #0000000d;height:-webkit-fit-content;height:fit-content;padding:16px;transition:all .2s ease}.logistics-exception-card:hover{border-color:#1e3c72;box-shadow:0 4px 16px #0000001a;transform:translateY(-1px)}.logistics-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.logistics-card-badges{display:flex;flex-wrap:wrap;gap:6px}.logistics-card-date{color:#6b7280;flex-shrink:0;font-size:.75rem;margin-left:8px}.logistics-card-content{display:flex;flex-direction:column;gap:10px}.logistics-card-title{color:#1e3c72;font-size:.9rem;font-weight:600;line-height:1.3;margin:0}.logistics-card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4b5563;display:-webkit-box;font-size:.8rem;line-height:1.4;margin:0;overflow:hidden}.logistics-card-details{display:flex;flex-direction:column;gap:6px;margin-top:4px}.logistics-detail-item{align-items:center;display:flex;font-size:.75rem;gap:8px;justify-content:space-between}.logistics-detail-label{color:#6b7280;flex-shrink:0;font-weight:500}.logistics-detail-value{color:#374151;font-weight:500;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.logistics-status-badge,.logistics-type-badge{border-radius:12px;font-size:.65rem;font-weight:600;letter-spacing:.3px;padding:3px 8px;text-transform:uppercase;white-space:nowrap}.logistics-type-outbound_error{background:#ff98001a;border:1px solid #ff98004d;color:#ff9800}.logistics-type-missing_shipment{background:#f443361a;border:1px solid #f443364d;color:#f44336}.logistics-type-complaint{background:#9c27b01a;border:1px solid #9c27b04d;color:#9c27b0}.logistics-status-reported{background:#ffc1071a;border:1px solid #ffc1074d;color:#ffc107}.logistics-status-in_progress{background:#2196f31a;border:1px solid #2196f34d;color:#2196f3}.logistics-status-resolved{background:#4caf501a;border:1px solid #4caf504d;color:#4caf50}.logistics-modal-overlay{background:#00000080;padding:20px}.logistics-modal{max-width:600px;width:100%}.logistics-modal-header{flex-shrink:0;margin-bottom:20px;padding:24px 24px 0}.logistics-modal-actions{align-items:center;display:flex;gap:12px}.logistics-cancel-btn,.logistics-edit-btn,.logistics-save-btn{border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;padding:6px 12px;transition:all .2s ease}.logistics-edit-btn{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.logistics-edit-btn:hover{background:#e5e7eb}.logistics-save-btn{background:#10b981;color:#fff}.logistics-save-btn:hover{background:#059669}.logistics-cancel-btn{background:#ef4444;color:#fff}.logistics-cancel-btn:hover{background:#dc2626}.logistics-modal-header h2{color:#1e3c72;font-size:1.5rem;font-weight:600;margin:0}.logistics-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.logistics-close-btn:hover{background:#f3f4f6;color:#374151}.logistics-exception-form{flex:1 1;overflow-y:auto;padding:0 24px 24px}.logistics-form-group{margin-bottom:20px}.logistics-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.logistics-form-group label{color:#374151;display:block;font-size:.875rem;font-weight:600}.logistics-form-group input,.logistics-form-group select,.logistics-form-group textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:.875rem;transition:border-color .2s;width:100%}.logistics-form-group input:focus,.logistics-form-group select:focus,.logistics-form-group textarea:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a}.logistics-form-group input[type=date]{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M6.75 3v2.25M17.25 3v2.25M6.75 13.5h.008v.008H6.75V13.5zm2.25 0h.008v.008H9V13.5zm2.25 0h.008v.008h-.008V13.5zm2.25 0h.008v.008H13.5V13.5zm2.25 0h.008v.008h-.008V13.5zm2.25 0h.008v.008H18V13.5zM7.5 15.75h.008v.008H6.75v-.008zm2.25 0h.008v.008H9v-.008zm2.25 0h.008v.008H12v-.008zm2.25 0h.008v.008H13.5v-.008zm2.25 0h.008v.008H16.5v-.008zm2.25 0h.008v.008H18v-.008zm-12 3.75V15m0 0V9.75m0 5.25 9 .75m-9-6L15 9m-8.25 6.75v-4.5m0 0v-1.5m0 5.25 9 .75'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:20px;cursor:pointer;padding:10px 40px 10px 12px;position:relative}.logistics-form-group input[type=date]::-webkit-calendar-picker-indicator{background:#0000;color:#0000;cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.logistics-form-group input[type=date]:hover{background-color:#f8fafc;border-color:#1e3c72}.logistics-form-group input[type=date]:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a;outline:none}.logistics-form-actions{border-top:1px solid #f3f4f6;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.logistics-form-actions button{border-radius:8px;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .2s}.logistics-form-actions button[type=button]{background:#f9fafb;border:1px solid #d1d5db;color:#374151}.logistics-form-actions button[type=button]:hover{background:#f3f4f6}.logistics-date-modal-content{flex:1 1;overflow-y:auto;padding:0 24px 24px}.logistics-date-summary{background:#f8fafc;border-radius:8px;margin-bottom:20px;padding:12px}.summary-stats-compact{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.logistics-stat-chip{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000001a;color:#374151;display:flex;font-size:.875rem;font-weight:500;gap:6px;padding:6px 12px}.logistics-stat-chip.outbound{background:#ff98000d;border-color:#ff98004d}.logistics-stat-chip.missing{background:#f443360d;border-color:#f443364d}.logistics-stat-chip.complaint{background:#9c27b00d;border-color:#9c27b04d}.logistics-stat-icon{font-size:.75rem}.logistics-stat-text{white-space:nowrap}.logistics-stat-item{align-items:center;border-radius:6px;display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:60px;padding:8px 12px}.logistics-stat-item.outbound{background:#ff98001a;border:1px solid #ff98004d}.logistics-stat-item.missing{background:#f443361a;border:1px solid #f443364d}.logistics-stat-item.complaint{background:#9c27b01a;border:1px solid #9c27b04d}.logistics-stat-label{color:#6b7280;font-size:.75rem;font-weight:500}.logistics-stat-count{color:#1e3c72;font-size:1.25rem;font-weight:700}.logistics-date-exceptions-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.logistics-mini-exception-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px;transition:all .2s ease}.logistics-mini-exception-card:hover{border-color:#1e3c72;box-shadow:0 2px 8px #0000001a}.logistics-mini-card-header{display:flex;gap:6px;margin-bottom:8px}.logistics-mini-card-content h5{color:#1e3c72;font-size:.875rem;font-weight:600;margin:0 0 6px}.logistics-mini-card-content p{color:#4b5563;font-size:.8rem;line-height:1.4;margin:0 0 8px}.logistics-mini-details{color:#6b7280;display:flex;flex-direction:column;font-size:.75rem;gap:4px}.logistics-mini-exception-card.clickable{cursor:pointer;transition:all .2s ease}.logistics-mini-exception-card.clickable:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.logistics-mini-exception-card.clickable:hover .logistics-mini-card-header .logistics-type-outbound_error{border-color:#ff9800;box-shadow:0 2px 4px #ff98004d}.logistics-mini-exception-card.clickable:hover .logistics-mini-card-header .logistics-type-missing_shipment{border-color:#f44336;box-shadow:0 2px 4px #f443364d}.logistics-mini-exception-card.clickable:hover .logistics-mini-card-header .logistics-type-complaint{border-color:#9c27b0;box-shadow:0 2px 4px #9c27b04d}.logistics-detail-indicator{color:#6b7280;font-size:.7rem;font-weight:500;margin-left:auto;transition:color .2s ease}.logistics-mini-exception-card:hover .logistics-detail-indicator{color:#1e3c72}.logistics-detail-modal{display:flex;flex-direction:column;max-height:90vh;max-width:700px}.logistics-detail-modal-content{flex:1 1;overflow-y:auto;padding:0 24px 24px}.complaint-details{display:flex;flex-direction:column;gap:24px}.logistics-detail-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.logistics-detail-section h3{color:#1e3c72;font-size:1.1rem;font-weight:600;margin:0 0 12px}.logistics-detail-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.logistics-detail-row{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:8px 0}.logistics-detail-row:last-child{border-bottom:none}.logistics-detail-row .label{color:#6b7280;flex-shrink:0;font-weight:500}.logistics-detail-row .value{color:#374151;font-weight:500;text-align:right}.description-box,.reason-box{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#374151;font-size:.9rem;line-height:1.5;padding:12px}.logistics-edit-form{display:flex;flex-direction:column;gap:16px}.logistics-edit-row{display:flex;flex-direction:column;gap:6px}.logistics-edit-row label{color:#374151;font-size:.875rem;font-weight:500}.logistics-edit-row input,.logistics-edit-row select{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:8px 12px;transition:border-color .2s}.logistics-edit-row input:focus,.logistics-edit-row select:focus{border-color:#1e3c72;box-shadow:0 0 0 2px #1e3c721a;outline:none}.logistics-edit-textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.9rem;line-height:1.5;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.logistics-edit-textarea:focus{border-color:#1e3c72;box-shadow:0 0 0 2px #1e3c721a;outline:none}.logistics-comments-section{background:#fff;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.logistics-comments-list{max-height:300px;overflow-y:auto;padding:12px}.logistics-comment-item{border-bottom:1px solid #f3f4f6;padding:12px 0}.logistics-comment-item:last-child{border-bottom:none}.logistics-comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.logistics-comment-author{color:#1e3c72;font-size:.875rem;font-weight:600}.logistics-comment-time{color:#6b7280;font-size:.75rem}.logistics-delete-comment-btn{background:none;border:none;border-radius:4px;color:#ef4444;cursor:pointer;font-size:.75rem;padding:2px 6px;transition:background-color .2s}.logistics-delete-comment-btn:hover{background:#fef2f2}.logistics-comment-text{color:#374151;font-size:.875rem;line-height:1.5}.logistics-no-comments{color:#9ca3af;font-style:italic;padding:20px;text-align:center}.logistics-comment-input{background:#f8fafc;border-top:1px solid #e2e8f0;padding:12px}.logistics-comment-input textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.875rem;margin-bottom:8px;min-height:60px;padding:8px 12px;resize:vertical;width:100%}.logistics-comment-input textarea:focus{border-color:#1e3c72;box-shadow:0 0 0 2px #1e3c721a;outline:none}.logistics-add-comment-btn{background:#1e3c72;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:background-color .2s}.logistics-add-comment-btn:hover:not(:disabled){background:#2a5298}.logistics-add-comment-btn:disabled{background:#9ca3af;cursor:not-allowed}@media (max-width:768px){.page-header{align-items:stretch;flex-direction:column;gap:16px}.header-actions{flex-direction:column;gap:12px}.view-toggle{width:100%}.toggle-btn{flex:1 1}.tabs{flex-wrap:wrap;gap:4px}.logistics-tab{flex:1 1;font-size:.8rem;min-width:0;padding:8px 12px}.exceptions-grid{gap:12px;grid-template-columns:1fr}.logistics-exception-card{padding:12px}.logistics-card-header{align-items:flex-start;flex-direction:column;gap:8px}.logistics-card-date{margin-left:0}.logistics-calendar-view{padding:16px}.logistics-calendar-header{align-items:flex-start;flex-direction:column;gap:12px}.logistics-calendar-legend{flex-wrap:wrap;gap:8px}.logistics-calendar-day{min-height:60px;padding:6px}.summary-stats-compact{gap:6px}.logistics-stat-chip{font-size:.8rem;padding:4px 8px}.logistics-stat-icon{font-size:.7rem}.logistics-detail-modal{max-width:95vw}.logistics-detail-grid{grid-template-columns:1fr}.logistics-comment-header{align-items:flex-start;flex-direction:column;gap:4px}.logistics-delete-comment-btn{align-self:flex-end}.logistics-form-row{grid-template-columns:1fr}.logistics-form-actions{flex-direction:column}.logistics-form-actions button{width:100%}.logistics-select-field{align-items:stretch;flex-direction:column}.logistics-select-btn{border-radius:0 0 3px 3px;margin-top:-1px}}.logistics-select-field{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:4px;display:flex}.logistics-selected-value{align-items:center;background:none;border:none;color:#495057;display:flex;flex:1 1;font-size:14px;min-height:40px;padding:10px 12px}.logistics-selected-value:empty:before{color:#6c757d;content:attr(placeholder)}.logistics-select-btn{background-color:#007bff;border:none;border-radius:0 3px 3px 0;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:8px 16px;transition:background-color .3s ease;white-space:nowrap}.logistics-select-btn:hover{background-color:#0056b3}.logistics-select-field:focus-within{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.logistics-filters-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:20px}.logistics-search-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.logistics-filter-select,.logistics-search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:150px;padding:10px 12px}.logistics-search-input{flex:1 1;min-width:200px}.logistics-filter-select:focus,.logistics-search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.exceptions-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;overflow:hidden}.exceptions-table{border-collapse:collapse;font-size:14px;width:100%}.exceptions-table th{background-color:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:14px 12px;text-align:left;white-space:nowrap}.exceptions-table td{border-bottom:1px solid #dee2e6;color:#495057;padding:12px;vertical-align:middle}.exceptions-table tbody tr:hover{background-color:#f8f9fa}.exceptions-table tbody tr.clickable-row{cursor:pointer}.exceptions-table tbody tr.clickable-row:hover{background-color:#e8f4f8;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px);transition:all .2s ease}.logistics-type-badge{border-radius:12px;color:#fff;font-size:12px;font-weight:500;padding:4px 8px}.logistics-type-badge.logistics-type-wrong_shipping{background-color:#dc3545}.logistics-type-badge.logistics-type-missing_shipping{background-color:#fd7e14}.logistics-type-badge.logistics-type-complaint{background-color:#6f42c1}.logistics-type-badge.logistics-type-damage{background-color:#e83e8c}.logistics-type-badge.logistics-type-quality{background-color:#20c997}.logistics-exception-dot.logistics-type-wrong_shipping{background-color:#dc3545}.logistics-exception-dot.logistics-type-missing_shipping{background-color:#fd7e14}.logistics-exception-dot.logistics-type-complaint{background-color:#6f42c1}.logistics-exception-dot.logistics-type-damage{background-color:#e83e8c}.logistics-exception-dot.logistics-type-quality{background-color:#20c997}.exception-create-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;max-height:85vh;max-width:1000px;overflow:hidden;position:relative;width:85vw}.logistics-exception-modal-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);box-shadow:0 4px 12px #3b82f626;color:#fff;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 28px}.logistics-modal-title-section h2{margin:0 0 6px}.logistics-modal-subtitle{font-size:13px;font-weight:400;letter-spacing:.2px;margin:0;opacity:.95}.logistics-modal-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:36px;justify-content:center;transition:all .3s ease;width:36px}.logistics-modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.logistics-exception-modal-body{background:#f8f9fa;flex:1 1;max-height:calc(85vh - 80px);min-height:0;overflow-x:hidden;overflow-y:scroll;padding:28px 32px;scrollbar-color:#cbd5e0 #f1f5f9;scrollbar-width:thin}.exception-create-modal::-webkit-scrollbar{width:8px}.exception-create-modal::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.exception-create-modal::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.exception-create-modal::-webkit-scrollbar-thumb:hover{background:#a0aec0}.logistics-exception-modal-body::-webkit-scrollbar{width:8px}.logistics-exception-modal-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.logistics-exception-modal-body::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.logistics-exception-modal-body::-webkit-scrollbar-thumb:hover{background:#a0aec0}.logistics-form-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;margin-bottom:28px;padding:20px}.logistics-section-title{border-bottom:2px solid #f3f4f6;font-size:16px;gap:8px;padding-bottom:10px}.exception-type-grid,.logistics-exception-type-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.exception-type-card{align-items:center!important;background:#fff!important;border:2px solid #e2e8f0!important;border-radius:12px!important;cursor:pointer!important;display:flex!important;gap:8px!important;justify-content:center!important;min-width:100px!important;overflow:hidden!important;padding:14px 18px!important;position:relative!important;transition:all .3s ease!important;-webkit-user-select:none!important;user-select:none!important}.exception-type-card:hover{background:#f0f9ff!important;border-color:var(--type-color)!important;box-shadow:0 6px 20px #0003!important;transform:translateY(-3px)!important}.exception-type-card.selected{background:var(--type-color)!important;border-color:var(--type-color)!important;box-shadow:0 4px 12px #00000040!important;color:#fff!important;transform:scale(1.05)!important}.exception-type-card.selected:before{align-items:center;background:#ffffff4d;border-radius:50%;color:#fff;content:"✓";display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;position:absolute;right:8px;top:4px;width:20px}.logistics-type-icon{font-size:18px;transition:all .3s ease}.exception-type-card:hover .logistics-type-icon{transform:scale(1.1)}.exception-type-card:active{transform:scale(.96)!important;transition:transform .1s ease!important}.exception-type-card[style*="--type-color: #dc3545"]:hover{background:#dc35451a!important;border-color:#dc3545!important}.exception-type-card[style*="--type-color: #fd7e14"]:hover{background:#fd7e141a!important;border-color:#fd7e14!important}.exception-type-card[style*="--type-color: #6f42c1"]:hover{background:#6f42c11a!important;border-color:#6f42c1!important}.exception-type-card[style*="--type-color: #e83e8c"]:hover{background:#e83e8c1a!important;border-color:#e83e8c!important}.exception-type-card[style*="--type-color: #20c997"]:hover{background:#20c9971a!important;border-color:#20c997!important}.logistics-type-label{font-size:13px;font-weight:600;letter-spacing:-.3px}.logistics-info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.logistics-info-card{background:#f7fafc;border:1px solid #e2e8f0}.logistics-info-card:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000000d}.logistics-card-label{align-items:center;color:#4a5568;display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:12px}.logistics-label-icon{font-size:16px}.logistics-select-field-modern{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:all .3s ease}.logistics-select-field-modern:hover{border-color:#cbd5e0;box-shadow:0 0 0 3px #4299e11a}.logistics-selected-value-modern{color:#2d3748;flex:1 1;font-size:14px}.logistics-select-arrow{color:#a0aec0;font-size:12px}.logistics-detail-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.logistics-input-group{display:flex;flex-direction:column}.logistics-input-group.full-width{grid-column:1/-1}.logistics-modern-label{align-items:center;color:#4a5568;display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:8px}.logistics-modern-label.required:after{color:#e53e3e;content:" *"}.logistics-modern-input{background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;padding:12px 16px;transition:all .3s ease}.logistics-modern-input:focus{border-color:#3182ce;box-shadow:0 0 0 3px #4299e11a;outline:none}.logistics-modern-textarea{background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:14px;padding:12px 16px;resize:vertical;transition:all .3s ease}.logistics-modern-textarea:focus{border-color:#3182ce;box-shadow:0 0 0 3px #4299e11a;outline:none}.logistics-date-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.logistics-date-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.logistics-form-buttons{border-top:2px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:20px}.logistics-cancel-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.logistics-cancel-btn:hover{background:#f7fafc;border-color:#cbd5e0}.logistics-submit-btn{background:linear-gradient(135deg,#48bb78,#38a169);border:none;border-radius:8px;box-shadow:0 4px 12px #48bb784d;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.logistics-submit-btn:hover{box-shadow:0 6px 20px #48bb7866;transform:translateY(-2px)}@media (max-width:768px){.logistics-exception-create-modal{margin:10px;max-height:90vh;width:95vw}.logistics-exception-modal-body,.logistics-exception-modal-footer,.logistics-exception-modal-header{padding:16px 20px}.logistics-modal-title-section h2{font-size:20px}.logistics-date-grid,.logistics-info-grid{grid-template-columns:1fr}}.logistics-exception-count{align-items:center;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:11px;font-weight:600;gap:2px;height:20px;justify-content:center;margin:1px;min-width:24px;transition:all .2s ease}.logistics-exception-count:hover{box-shadow:0 2px 4px #0003;transform:scale(1.1)}.logistics-exception-count.type-wrong_shipping{background-color:#dc3545}.logistics-exception-count.type-missing_shipping{background-color:#fd7e14}.logistics-exception-count.type-complaint{background-color:#6f42c1}.logistics-exception-count.type-damage{background-color:#e83e8c}.logistics-exception-count.type-quality{background-color:#20c997}.logistics-type-initial{font-size:10px;font-weight:700}.logistics-count-number{font-size:11px;font-weight:600}.logistics-legend-color{border-radius:50%;display:inline-block;height:12px;margin-right:4px;width:12px}.logistics-legend-color.logistics-type-wrong_shipping{background-color:#dc3545}.logistics-legend-color.logistics-type-missing_shipping{background-color:#fd7e14}.logistics-legend-color.logistics-type-complaint{background-color:#6f42c1}.logistics-legend-color.logistics-type-damage{background-color:#e83e8c}.logistics-legend-color.logistics-type-quality{background-color:#20c997}.status-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 8px}.status-select.logistics-status-reported{background-color:#fff3cd;color:#856404}.status-select.logistics-status-in_progress{background-color:#cce5ff;color:#004085}.status-select.logistics-status-resolved{background-color:#d4edda;color:#155724}.status-select.logistics-status-cancelled{background-color:#f8d7da;color:#721c24}.logistics-pagination{display:flex;gap:8px;justify-content:center;margin-top:24px}.logistics-pagination .logistics-btn{align-items:center;display:flex;height:40px;justify-content:center;min-width:40px}.logistics-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;justify-content:center;min-height:36px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.logistics-btn:disabled{cursor:not-allowed;opacity:.6}.logistics-btn-primary{background-color:#007bff;color:#fff}.logistics-btn-primary:hover:not(:disabled){background-color:#0056b3}.logistics-btn-secondary{background-color:#6c757d;color:#fff}.logistics-btn-secondary:hover:not(:disabled){background-color:#545b62}.logistics-btn-danger{background-color:#dc3545;color:#fff}.logistics-btn-danger:hover:not(:disabled){background-color:#c82333}.logistics-btn-outline{background-color:initial;border:1px solid #007bff;color:#007bff}.logistics-btn-outline:hover:not(:disabled){background-color:#007bff;color:#fff}.logistics-btn-sm{min-height:30px}.logistics-modal{border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:90vw;overflow:hidden;width:500px}.logistics-modal-large{max-width:95vw;width:800px}.logistics-modal-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:20px 24px}.logistics-modal-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.logistics-modal-close{border-radius:4px;color:#6c757d;font-size:24px;height:30px;width:30px}.logistics-modal-close:hover{background-color:#e9ecef;color:#495057}.logistics-modal-body{flex:1 1;overflow-y:auto;padding:24px}.logistics-modal-footer{background-color:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.logistics-form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.logistics-form-group{display:flex;flex-direction:column}.logistics-form-group.full-width{grid-column:1/-1}.logistics-form-group label{color:#495057;font-size:14px;font-weight:500;margin-bottom:6px}.logistics-form-group input,.logistics-form-group select,.logistics-form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 12px;transition:border-color .3s ease}.logistics-form-group input:focus,.logistics-form-group select:focus,.logistics-form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.logistics-form-group textarea{min-height:80px;resize:vertical}.logistics-loading{color:#6c757d;font-size:16px;padding:60px 20px;text-align:center}@media (max-width:768px){.logistics-search-filters{align-items:stretch;flex-direction:column}.logistics-filter-select,.logistics-search-input{width:100%}.exceptions-table-container{overflow-x:auto}.exceptions-table{min-width:800px}.logistics-form-grid{grid-template-columns:1fr}}.logistics-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.logistics-modal{background:#fff;border-radius:16px;box-shadow:0 20px 50px #0000004d;display:flex;flex-direction:column}.logistics-modal-extra-large{display:flex;flex-direction:column;height:90vh;margin:20px auto;max-width:1400px;width:95vw}.logistics-detail-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:16px 16px 0 0;box-shadow:0 4px 12px #667eea33;color:#fff;display:flex;justify-content:space-between;padding:20px 28px}.logistics-modal-title-section{align-items:center;display:flex;gap:16px}.logistics-modal-title-section h2{font-size:22px;font-weight:600;letter-spacing:-.5px;margin:0}.logistics-modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#fffc;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;padding:0;transition:all .2s ease;width:40px}.logistics-modal-close:hover{background:#ffffff1a;color:#fff}.logistics-detail-type-badge{background:#fff3;border:1px solid #ffffff4d;border-radius:20px;color:#fff;font-size:14px;font-weight:600;padding:8px 16px}.logistics-detail-modal-body{background:#f8f9fa;flex:1 1;overflow-y:auto;padding:28px;scrollbar-color:#cbd5e0 #f1f5f9;scrollbar-width:thin}.logistics-detail-modal-body::-webkit-scrollbar{width:8px}.logistics-detail-modal-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.logistics-detail-modal-body::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.logistics-detail-modal-body::-webkit-scrollbar-thumb:hover{background:#a0aec0}.logistics-compact-info-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:24px}.logistics-info-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;padding:20px;transition:all .3s ease}.logistics-info-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.logistics-info-card h3{align-items:center;border-bottom:2px solid #f3f4f6;color:#1f2937;display:flex;font-size:15px;font-weight:700;gap:8px;margin:0 0 16px;padding-bottom:10px}.logistics-info-items{display:flex;flex-direction:column;gap:12px}.logistics-info-item{align-items:center;border-radius:6px;display:flex;justify-content:space-between;min-height:28px;padding:4px 8px;transition:background-color .2s}.logistics-info-item:hover{background-color:#f9fafb}.logistics-info-item .label{align-items:center;color:#6b7280;display:flex;font-size:13px;font-weight:600;gap:6px;min-width:80px}.logistics-info-item .value{color:#111827;flex:1 1;font-size:14px;font-weight:500;margin-left:12px;text-align:right;word-break:break-word}.logistics-compact-status-badge{border-radius:12px;color:#fff;font-size:11px;font-weight:600;padding:4px 8px}.logistics-compact-status-badge.logistics-status-reported{background:#f59e0b}.logistics-compact-status-badge.logistics-status-in_progress{background:#3b82f6}.logistics-compact-status-badge.logistics-status-resolved{background:#10b981}.logistics-compact-status-badge.logistics-status-cancelled{background:#ef4444}.logistics-dates-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:8px;display:flex;gap:20px;margin-bottom:20px;padding:16px}.logistics-date-item{flex:1 1;text-align:center}.logistics-date-label{color:#0369a1;display:block;font-size:12px;font-weight:500;margin-bottom:4px}.logistics-date-value{color:#0c4a6e;display:block;font-size:14px;font-weight:600}.logistics-action-section{margin-bottom:20px}.logistics-action-section h3{align-items:center;color:#374151;display:flex;font-size:14px;font-weight:600;margin:0 0 8px}.logistics-action-section h3:before{content:"⚡";font-size:16px;margin-right:8px}.logistics-action-content-compact{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;font-size:13px;line-height:1.5;max-height:80px;overflow-y:auto;padding:12px}.logistics-comments-section-compact{margin-bottom:20px}.logistics-comments-section-compact h3{align-items:center;color:#374151;display:flex;font-size:14px;font-weight:600;margin:0 0 12px}.logistics-comments-section-compact h3:before{content:"💬";font-size:16px;margin-right:8px}.logistics-comments-container-compact{background:#fff;border:1px solid #e2e8f0;border-radius:8px;max-height:300px;overflow-y:auto;padding:16px}.logistics-comments-section-compact h3{display:none}.logistics-comments-container-compact .task-comments{border-top:none;margin-top:0;padding-top:0}.logistics-profile-image-placeholder{background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:50%;color:#fff;font-size:16px;font-weight:600;height:40px;text-transform:uppercase;width:40px}.logistics-profile-image-container,.logistics-profile-image-placeholder{align-items:center;display:flex;justify-content:center}.logistics-section-title{align-items:center;border-bottom:2px solid #e5e7eb;color:#1f2937;display:flex;font-size:18px;font-weight:700;margin:0 0 16px;padding-bottom:8px}.logistics-section-title:before{background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:2px;content:"";height:20px;margin-right:12px;width:4px}.logistics-detail-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.logistics-detail-row{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.logistics-detail-field{display:flex;flex-direction:column;gap:8px}.logistics-detail-field.full-width{grid-column:1/-1}.logistics-detail-field label{color:#374151;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.logistics-detail-value{color:#1f2937;font-size:16px;line-height:1.5}.logistics-detail-value strong{color:#1e3c72}.logistics-detail-content{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#374151;font-size:15px;line-height:1.6;min-height:50px;padding:16px}.logistics-action-content{min-height:80px}.logistics-no-data{color:#9ca3af;font-style:italic}.logistics-detail-status-badge{border-radius:20px;box-shadow:0 2px 4px #0000001a;display:inline-block;font-size:14px;font-weight:600;max-width:-webkit-fit-content;max-width:fit-content;padding:8px 16px;text-align:center}.logistics-detail-status-badge.logistics-status-reported{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.logistics-detail-status-badge.logistics-status-in_progress{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.logistics-detail-status-badge.logistics-status-resolved{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.logistics-detail-status-badge.logistics-status-cancelled{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.logistics-comments-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow-x:hidden;padding:24px;width:100%}.logistics-detail-modal-footer{background:#f8fafc;border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;padding:20px 32px}.logistics-btn-lg{font-size:16px;font-weight:600;padding:12px 32px}@media (max-width:1200px){.logistics-detail-row{gap:24px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (max-width:1000px){.logistics-compact-info-grid{gap:16px;grid-template-columns:1fr}}@media (max-width:768px){.logistics-modal-extra-large{border-radius:0;height:100vh;margin:0;width:100vw}.logistics-detail-modal-header{border-radius:0;padding:20px}.logistics-detail-modal-body{padding:16px}.logistics-compact-info-grid{gap:12px;grid-template-columns:1fr;margin-bottom:16px}.logistics-info-card{padding:12px}.logistics-dates-section{flex-direction:column;gap:12px;margin-bottom:16px;padding:12px}.logistics-date-item{text-align:left}.logistics-action-content-compact{max-height:60px;padding:10px}.logistics-comments-container-compact{max-height:200px;padding:12px}.logistics-modal-title-section{align-items:flex-start;flex-direction:column;gap:12px}.logistics-modal-title-section h2{font-size:20px}.logistics-detail-modal-footer{border-radius:0;padding:16px 20px}}.logistics-modal-header-actions{align-items:center;display:flex;gap:12px}.logistics-edit-actions{display:flex;gap:8px}.detail-type-badge{background:#ffffff40;border:1px solid #fff6;border-radius:20px;box-shadow:0 2px 8px #00000026;color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase}.detail-type-badge.type-wrong_shipping{background:#dc35454d;border-color:#dc354580}.detail-type-badge.type-missing_shipping{background:#fd7e144d;border-color:#fd7e1480}.detail-type-badge.type-complaint{background:#6f42c14d;border-color:#6f42c180}.detail-type-badge.type-damage{background:#e83e8c4d;border-color:#e83e8c80}.detail-type-badge.type-quality{background:#20c9974d;border-color:#20c99780}.logistics-edit-form{background:#f8f9fa;overflow:visible;padding-right:0}.logistics-edit-form .logistics-form-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;margin-bottom:28px;padding:20px}.logistics-edit-form .logistics-section-title{align-items:center;border-bottom:2px solid #f3f4f6;color:#1f2937;display:flex;font-size:16px;font-weight:700;gap:8px;margin:0 0 16px;padding-bottom:10px}.logistics-modern-select{background:#fff;border:2px solid #e5e7eb;border-radius:10px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;padding:14px 18px;transition:all .3s ease;width:100%}.logistics-modern-select:focus{background:#fafbfc;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a;outline:none}.logistics-btn-success{background:#10b981;border:none;color:#fff}.logistics-btn-success:hover{background:#059669}.logistics-btn-sm{font-size:12px;padding:6px 12px}@media (max-width:768px){.logistics-modal-header-actions{align-items:stretch;flex-direction:column;gap:8px}.logistics-edit-actions{justify-content:stretch}.logistics-edit-actions .logistics-btn{flex:1 1}.logistics-edit-form{max-height:60vh}}.logistics-logs-page{background:#f8fafc;margin:0 auto;max-width:1400px;min-height:100vh;padding:24px}.page-header{background:#fff;border-left:4px solid #3b82f6;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:32px}.page-header h1{color:#1e293b;font-size:28px;margin:0 0 8px}.page-description{color:#64748b;font-size:16px;margin:0}.filter-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.filter-form{width:100%}.filter-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.filter-item{display:flex;flex-direction:column}.filter-item label{color:#374151;font-size:14px;font-weight:600;margin-bottom:6px}.filter-item input,.filter-item select{border:1px solid #d1d5db;border-radius:8px;font-size:14px;padding:10px 12px;transition:all .2s ease}.filter-item input:focus,.filter-item select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.filter-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.logs-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;overflow:hidden}.logs-header{background:#f8fafc;border-bottom:1px solid #e5e7eb;padding:24px}.logs-header h2{color:#1e293b;font-size:20px;font-weight:600;margin:0}.loading{color:#64748b;font-size:16px;padding:60px}.no-logs{padding:60px;text-align:center}.no-logs-icon{font-size:48px;margin-bottom:16px}.no-logs p{color:#64748b;font-size:16px;margin:0}.logs-table{overflow-x:auto}.table-header,.table-row{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:80px 120px 120px 120px 150px 180px 80px;padding:16px 24px}.table-header{background:#f8fafc;border-bottom:1px solid #e5e7eb;color:#374151;font-size:14px;font-weight:600;position:-webkit-sticky;position:sticky;top:0;z-index:10}.table-row{border-bottom:1px solid #f1f5f9;transition:background-color .2s ease}.table-row:hover{background:#f8fafc}.table-row:last-child{border-bottom:none}.col-exception-id,.col-id{color:#3b82f6;font-weight:600}.col-action,.col-type{align-items:center;display:flex}.col-user{font-weight:500}.col-time{color:#64748b;font-size:13px}.col-actions{display:flex;justify-content:center}.action-badge,.type-badge{background-color:var(--badge-color);border-radius:6px;color:#fff;display:inline-block;font-size:12px;font-weight:600;min-width:60px;padding:4px 8px;text-align:center}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#6b7280;color:#fff}.btn-secondary:hover{background:#4b5563}.btn-secondary:disabled{background:#d1d5db;cursor:not-allowed}.btn-detail{background:#f3f4f6;border:none;border-radius:6px;cursor:pointer;padding:6px 8px;transition:all .2s ease}.btn-detail:hover{background:#e5e7eb}.pagination{border-top:1px solid #e5e7eb;gap:16px;padding:24px}.page-info{color:#374151;font-weight:500}.log-detail-modal{background:#fff;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.modal-header{background:#f8fafc;border-bottom:1px solid #e5e7eb;justify-content:between;padding:24px}.modal-header h3{color:#1e293b;flex:1 1;font-size:20px;font-weight:600;margin:0}.modal-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:24px;line-height:1;padding:4px}.modal-close:hover{background:#e5e7eb}.modal-body{flex:1 1;overflow-y:auto;padding:24px}.modal-footer{background:#f8fafc;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;padding:24px}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:24px}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item .label{color:#374151;font-size:14px;font-weight:600}.detail-item .value{color:#1e293b;font-size:15px}.changes-section,.new-values-section,.old-values-section{margin-bottom:24px}.changes-section h4,.new-values-section h4,.old-values-section h4{color:#374151;font-size:16px;font-weight:600;margin:0 0 12px}.json-display{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;max-height:300px;overflow-x:auto;overflow-y:auto;padding:16px;white-space:pre-wrap}@media (max-width:768px){.logistics-logs-page{padding:16px}.page-header{padding:20px}.filter-section{padding:16px}.filter-grid{grid-template-columns:1fr}.filter-actions{justify-content:stretch}.filter-actions .btn{flex:1 1;justify-content:center}.table-header,.table-row{font-size:13px;grid-template-columns:repeat(7,minmax(100px,1fr));padding:12px 16px}.logs-table{min-width:700px}.modal-overlay{padding:10px}.modal-body{padding:16px}.detail-grid{grid-template-columns:1fr}}.notices-page{background:#f8fafc;min-height:100vh;padding:20px}.notices-loading{align-items:center;color:#6b7280;display:flex;flex-direction:column;height:60vh;justify-content:center}.loading-spinner{border:4px solid #e5e7eb;border-top-color:#1e3c72}.notices-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;justify-content:space-between;margin-bottom:24px;padding:20px 24px}.header-left,.notices-header{align-items:center;display:flex}.header-left{gap:16px}.header-left h1{color:#1e3c72;font-size:1.5rem;font-weight:600;margin:0}.notice-count{background:#1e3c72;border-radius:12px;color:#fff;font-size:.875rem;font-weight:500;padding:4px 12px}.header-right{gap:16px}.header-right,.search-box{align-items:center;display:flex}.search-box{position:relative}.search-input{border:2px solid #e2e8f0;border-radius:8px;padding:10px 40px 10px 16px;transition:all .2s;width:250px}.search-input:focus{box-shadow:0 0 0 3px #1e3c721a}.search-icon{color:#6b7280;font-size:16px;position:absolute;right:12px}.create-btn{background:linear-gradient(135deg,#1e3c72,#2a5298);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 20px;transition:all .2s}.create-btn:hover{box-shadow:0 4px 12px #1e3c724d;transform:translateY(-1px)}.notices-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.notices-table{border-collapse:collapse;width:100%}.notices-table thead th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#374151;font-size:.875rem;font-weight:600;padding:16px;text-align:left}.notices-table tbody td{border-bottom:1px solid #f1f5f9;font-size:.875rem;padding:16px;vertical-align:middle}.notices-table tbody tr{transition:background-color .2s}.notices-table tbody tr:hover{background:#f8fafc}.notices-table tbody tr.pinned{background:linear-gradient(135deg,#fff7ed,#fef3c7);border-left:4px solid #f59e0b}.notices-table tbody tr.pinned:hover{background:linear-gradient(135deg,#fef3c7,#fde68a)}.title-cell{max-width:0;width:100%}.notice-title{align-items:center;color:#1f2937;cursor:pointer;display:flex;font-weight:500;gap:8px;overflow:hidden;text-overflow:ellipsis;transition:color .2s;white-space:nowrap}.notice-title:hover{color:#1e3c72;text-decoration:underline}.pin-icon{color:#f59e0b;font-size:16px}.pin-badge{background:#f59e0b;border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;padding:2px 8px}.delete-btn{background:none;border:none;border-radius:6px;cursor:pointer;padding:6px;transition:background-color .2s}.delete-btn:hover{background:#fee2e2}.no-data{padding:60px 20px;text-align:center}.no-notices{color:#6b7280}.empty-icon{display:block;font-size:3rem;margin-bottom:16px}.no-notices p{font-size:1rem;margin:0}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0003;max-height:95vh;max-width:95vw;overflow:hidden;width:95vw}.detail-modal{max-width:700px}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.notice-detail-header{align-items:center;display:flex;flex:1 1;gap:12px}.modal-header h2{color:#1e3c72;font-size:1.25rem;font-weight:600;margin:0}.close-btn{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:4px;transition:all .2s}.close-btn:hover{background:#f3f4f6;color:#374151}.notice-form{max-height:70vh;overflow-y:auto;padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}.form-input,.form-textarea{border:2px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:.875rem;padding:12px;transition:all .2s;width:100%}.form-input:focus,.form-textarea:focus{border-color:#1e3c72;box-shadow:0 0 0 3px #1e3c721a;outline:none}.form-textarea{font-family:inherit;line-height:1.5;resize:vertical}.checkbox-group,.checkbox-label{align-items:center;display:flex}.checkbox-label{cursor:pointer;gap:8px}.checkbox-label input[type=checkbox]{accent-color:#1e3c72;height:18px;width:18px}.checkbox-text{color:#4b5563;font-size:.875rem}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.cancel-btn{background:#f3f4f6;border:none;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 20px;transition:all .2s}.cancel-btn:hover{background:#e5e7eb}.submit-btn{background:linear-gradient(135deg,#1e3c72,#2a5298);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:10px 20px;transition:all .2s}.submit-btn:hover{box-shadow:0 4px 12px #1e3c724d;transform:translateY(-1px)}.notice-detail-meta{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#6b7280;display:flex;font-size:.875rem;gap:24px;padding:16px 24px}.notice-detail-content{max-height:60vh;overflow-y:auto;padding:24px}.content-text{line-height:1.6}.content-text p{margin:0 0 12px}.content-text p:last-child{margin-bottom:0}@media (max-width:768px){.notices-page{padding:10px}.notices-header{align-items:stretch;flex-direction:column;gap:16px}.header-right{flex-direction:column;gap:12px}.search-input{width:100%}.notices-table-container{overflow-x:auto}.notices-table{min-width:600px}.modal{margin:10px;max-height:calc(100vh - 20px)}}.editor-toolbar{background:#f8fafc;border:2px solid #e2e8f0;border-bottom:none;border-radius:8px 8px 0 0;gap:8px;margin-bottom:0;padding:8px 12px}.editor-btn,.editor-toolbar{align-items:center;display:flex}.editor-btn{background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:.875rem;gap:4px;padding:6px 12px;transition:all .2s}.editor-btn:hover{background:#f3f4f6;border-color:#9ca3af}.editor-btn.file-upload-btn,.editor-btn.image-upload-btn{background:#1e3c72;border-color:#1e3c72;color:#fff}.editor-btn.file-upload-btn:hover,.editor-btn.image-upload-btn:hover{background:#2a5298;border-color:#2a5298}.editor-divider{background:#d1d5db;height:20px;margin:0 8px;width:1px}.rich-editor{border-radius:0 0 8px 8px!important;border-top:none!important;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;resize:vertical}.wysiwyg-editor{max-height:70vh;min-height:500px;overflow-y:auto;position:relative}.wysiwyg-editor:empty:before{color:#9ca3af;content:"공지사항 내용을 입력하세요...";pointer-events:none;position:absolute}.wysiwyg-editor:focus:empty:before{content:""}.wysiwyg-editor div{margin:8px 0}.wysiwyg-editor div:first-child{margin-top:0}.wysiwyg-editor div:last-child{margin-bottom:0}.image-wrapper{display:block;margin:20px 0;position:relative;text-align:center}.image-wrapper img{border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;height:auto;max-width:100%;transition:all .2s}.image-wrapper img:hover{box-shadow:0 4px 12px #00000026}.image-wrapper.selected img{outline:2px solid #1e3c72;outline-offset:2px}.resize-controls{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;font-size:13px;gap:10px;left:50%;padding:8px 12px;position:absolute;top:-50px;transform:translateX(-50%);white-space:nowrap;z-index:20}.resize-controls button{background:#f8f9fa;border:1px solid #d1d5db;border-radius:5px;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .2s}.resize-controls button:hover{background:#e9ecef;border-color:#adb5bd}.size-display{color:#1e3c72;font-weight:600;min-width:50px;padding:0 5px;text-align:center}.drag-handle{background:#1e3c72;border-radius:5px;color:#fff;cursor:grab;font-size:12px;padding:4px 8px;-webkit-user-select:none;user-select:none}.drag-handle:active{cursor:grabbing}.drag-handle:hover{background:#2a5298}.wysiwyg-editor strong{color:#1f2937;font-weight:700}.wysiwyg-editor em{color:#374151;font-style:italic}.wysiwyg-editor u{text-decoration:underline;-webkit-text-decoration-color:#1e3c72;text-decoration-color:#1e3c72}.wysiwyg-editor p{line-height:1.6;margin:8px 0}.wysiwyg-editor p:first-child{margin-top:0}.wysiwyg-editor p:last-child{margin-bottom:0}.uploaded-images{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px;padding:16px}.uploaded-images h4{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 12px}.image-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.image-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.image-item img{border-radius:6px;height:120px;margin-bottom:8px;object-fit:cover;width:100%}.image-controls{display:flex;flex-direction:column;gap:8px}.size-slider{accent-color:#1e3c72;width:100%}.image-controls span{color:#6b7280;font-size:.75rem;text-align:center}.insert-btn{background:#10b981;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;padding:6px 12px;transition:background-color .2s}.insert-btn:hover{background:#059669}.remove-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;padding:4px 8px;transition:background-color .2s}.remove-btn:hover{background:#dc2626}.attached-files{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:16px;padding:16px}.attached-files h4{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 12px}.file-list{display:flex;flex-direction:column;gap:8px}.file-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:8px;padding:8px 12px}.file-icon{color:#6b7280;font-size:16px}.file-name{color:#374151;flex:1 1;font-size:.875rem;font-weight:500}.file-size{color:#9ca3af;font-size:.75rem}.content-text{color:#374151;line-height:1.7}.content-text.html-content{word-wrap:break-word;overflow-wrap:break-word}.content-text p,.content-text.html-content p{margin:0 0 16px}.content-text strong,.content-text.html-content strong{color:#1f2937;font-weight:700}.content-text em,.content-text.html-content em{font-style:italic}.content-text u,.content-text.html-content u{text-decoration:underline}.content-text img,.content-text.html-content img{border-radius:8px;box-shadow:0 2px 8px #0000001a;display:block;height:auto;margin:16px auto;max-width:100%}.content-text a,.content-text.html-content a{color:#1e3c72;text-decoration:none}.content-text a:hover,.content-text.html-content a:hover{text-decoration:underline}.content-text.html-content br{content:"";display:block;margin:8px 0}.attachment-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-top:20px;padding:16px}.attachment-section h4{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 12px}.attachment-list{display:flex;flex-direction:column;gap:8px}.attachment-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#374151;display:flex;gap:8px;padding:8px 12px;text-decoration:none;transition:all .2s}.attachment-item:hover{background:#f3f4f6;color:#1e3c72;text-decoration:none}.download-icon{margin-left:auto;opacity:.7;transition:opacity .2s}.attachment-item:hover .download-icon{opacity:1}.product-upload-page{margin:0 auto;max-width:1200px;padding:20px}.page-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.page-header h1{color:#1e3c72;font-size:2rem;font-weight:700;margin:0}.company-info{align-items:center;display:flex;gap:10px}.company-name{background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:8px 16px}.upload-section{margin-bottom:40px}.upload-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:30px}.upload-card h2{color:#1e3c72;font-size:1.5rem;font-weight:600;margin:0 0 10px}.upload-description{color:#6b7280;line-height:1.6;margin-bottom:25px}.file-input-section{align-items:center;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.file-input{display:none}.file-input-label{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;color:#475569;cursor:pointer;display:inline-block;font-weight:500;padding:12px 20px;transition:all .2s ease}.file-input-label:hover{background:#f1f5f9;border-color:#1e3c72;color:#1e3c72}.selected-file{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;color:#059669;font-weight:500;padding:8px 12px}.upload-btn{background:linear-gradient(135deg,#1e3c72,#2a5298);border:none;border-radius:8px;box-shadow:0 4px 12px #1e3c724d;color:#fff;cursor:pointer;font-weight:600;margin-bottom:25px;padding:12px 24px;transition:all .3s ease}.upload-btn:hover:not(:disabled){box-shadow:0 6px 20px #1e3c7266;transform:translateY(-2px)}.upload-btn:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.upload-btn.uploading{background:#6b7280}.required-columns{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.required-columns h3{color:#374151;font-size:1.1rem;margin:0 0 15px}.columns-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.column-item{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-size:.875rem;padding:8px 12px;text-align:center}.upload-result{border:1px solid;border-radius:8px;margin-top:20px;padding:20px}.upload-result.success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.upload-result.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.error-content h3,.success-content h3{font-size:1.2rem;margin:0 0 15px}.result-stats{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:15px}.stat-item{align-items:center;display:flex;gap:8px}.stat-label{font-weight:500}.stat-value{border-radius:4px;font-weight:700;padding:4px 8px}.stat-value.success{background:#d1fae5;color:#065f46}.stat-value.error{background:#fecaca;color:#991b1b}.error-details{margin-top:15px}.error-details h4{color:#7f1d1d;margin:0 0 10px}.error-details ul{margin:0;padding-left:20px}.error-details li{font-size:.875rem;margin-bottom:5px}.products-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #0000001a;padding:30px}.section-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:25px}.section-header h2{color:#1e3c72;font-size:1.5rem;font-weight:600;margin:0}.search-form{display:flex;gap:8px}.search-input{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;min-width:250px;padding:8px 12px}.search-input:focus{border-color:#1e3c72;box-shadow:0 0 0 2px #1e3c721a;outline:none}.search-btn{background:#1e3c72;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 12px;transition:background .2s}.search-btn:hover{background:#2a5298}.loading{color:#6b7280;font-style:italic;padding:40px;text-align:center}.products-table-container{margin-bottom:20px;overflow-x:auto}.products-table{background:#fff;border-collapse:collapse;width:100%}.products-table td,.products-table th{border-bottom:1px solid #e2e8f0;padding:12px;text-align:left}.products-table th{background:#f8fafc;color:#374151;font-weight:600;position:-webkit-sticky;position:sticky;top:0;z-index:1}.products-table tr:hover{background:#f8fafc}.product-code{color:#1e3c72;font-family:monospace;font-weight:600}.product-name{font-weight:500;min-width:200px}.price{font-family:monospace;font-weight:500;text-align:right}.date{color:#6b7280;font-size:.875rem}.no-products{color:#6b7280;font-style:italic;padding:40px;text-align:center}.pagination{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:20px}.page-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;padding:8px 12px;transition:all .2s}.page-btn:hover:not(:disabled){background:#f3f4f6;border-color:#1e3c72}.page-btn:disabled{cursor:not-allowed;opacity:.5}.page-btn.active{background:#1e3c72;border-color:#1e3c72;color:#fff}.page-numbers{display:flex;gap:4px}@media (max-width:768px){.product-upload-page{padding:15px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.upload-card{padding:20px}.file-input-section{align-items:flex-start;flex-direction:column}.file-input-label{text-align:center;width:100%}.columns-grid{grid-template-columns:repeat(2,1fr)}.result-stats{flex-direction:column;gap:10px}.section-header{align-items:flex-start;flex-direction:column}.search-form{width:100%}.search-input{flex:1 1;min-width:0}.products-table{font-size:.875rem}.products-table td,.products-table th{padding:8px}.pagination{gap:4px}.page-numbers,.pagination{flex-wrap:wrap}}.partners-page{background-color:#f8f9fa;min-height:100vh;padding:24px}.partners-page-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px}.partners-page-header h1{color:#2c3e50;font-size:28px;font-weight:600;margin:0}.partners-header-actions{display:flex;gap:12px}.partners-search-filters{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:20px}.partners-search-form{width:100%}.partners-search-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.partners-search-input{flex:2 1;min-width:200px}.partners-filter-input,.partners-search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 12px}.partners-filter-input{flex:1 1;min-width:150px}.partners-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;overflow:hidden}.partners-table{border-collapse:collapse;font-size:14px;width:100%}.partners-table th{background-color:#f8f9fa;border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:14px 12px;text-align:left;white-space:nowrap}.partners-table td{border-bottom:1px solid #dee2e6;color:#495057;padding:12px;vertical-align:middle}.partners-table tbody tr:hover{background-color:#f8f9fa}.partners-table td:last-child{white-space:nowrap}.partners-table .btn{margin-right:8px}.partners-loading{color:#6c757d;font-size:16px;padding:60px 20px;text-align:center}.partners-pagination{display:flex;gap:8px;justify-content:center;margin-top:24px}.partners-pagination .partners-btn{align-items:center;display:flex;height:40px;justify-content:center;min-width:40px}.partners-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.partners-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:90vw;overflow:hidden;width:500px}.partners-modal-large{max-width:95vw;width:800px}.partners-modal-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:20px 24px}.partners-modal-header h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0}.partners-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.partners-modal-close:hover{background-color:#e9ecef;color:#495057}.partners-modal-body{flex:1 1;overflow-y:auto;padding:24px}.partners-modal-footer{background-color:#f8f9fa;border-top:1px solid #dee2e6;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.partners-upload-info{background-color:#f8f9fa;border-radius:4px;margin-bottom:20px;padding:16px}.partners-upload-info h4{color:#2c3e50;font-size:16px;margin:0 0 12px}.partners-upload-info p{color:#495057;font-size:14px;margin:0 0 8px}.partners-upload-info ul{color:#495057;font-size:14px;margin:8px 0 0 20px}.partners-upload-info li{margin-bottom:4px}.partners-file-upload{margin-bottom:20px}.partners-file-input-label{align-items:center;background-color:#f8f9fa;border:2px dashed #ddd;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:all .3s ease;width:100%}.partners-file-input-label:hover{background-color:#e7f3ff;border-color:#007bff}.partners-file-input-text{color:#6c757d;font-size:14px}.partners-file-input-button{background-color:#007bff;border-radius:4px;color:#fff;font-size:12px;font-weight:500;padding:6px 12px}.partners-file-input-hidden{display:none}.partners-file-selected{align-items:center;background-color:#e8f5e8;border:1px solid #28a745;border-radius:4px;display:flex;gap:8px;margin-top:12px;padding:10px 12px}.partners-file-icon{font-size:16px}.partners-file-name{color:#155724;flex:1 1;font-size:14px;font-weight:500}.partners-file-remove{align-items:center;background:none;border:none;border-radius:50%;color:#dc3545;cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;padding:0;width:20px}.partners-file-remove:hover{background-color:#f8d7da}.partners-upload-progress{align-items:center;display:flex;gap:8px}.partners-spinner{animation:partners-spin 1s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@keyframes partners-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.partners-upload-result{background-color:#f8f9fa;border-radius:4px;margin-top:16px;padding:16px}.partners-upload-result h4{color:#2c3e50;font-size:16px;margin:0 0 12px}.partners-upload-result p{color:#495057;font-size:14px;margin:0 0 12px}.partners-error-details{margin-top:12px}.partners-error-details h5{color:#dc3545;font-size:14px;margin:0 0 8px}.partners-error-details ul{color:#dc3545;font-size:13px;margin:0 0 0 20px;max-height:150px;overflow-y:auto}.partners-error-details li{margin-bottom:4px}.partners-form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.partners-form-group{display:flex;flex-direction:column}.partners-form-group.partners-full-width{grid-column:1/-1}.partners-form-group label{color:#495057;font-size:14px;font-weight:500;margin-bottom:6px}.partners-form-group input,.partners-form-group select,.partners-form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 12px;transition:border-color .3s ease}.partners-form-group input:focus,.partners-form-group select:focus,.partners-form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.partners-form-group textarea{min-height:80px;resize:vertical}.partners-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;justify-content:center;min-height:36px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.partners-btn:disabled{cursor:not-allowed;opacity:.6}.partners-btn-primary{background-color:#007bff;color:#fff}.partners-btn-primary:hover:not(:disabled){background-color:#0056b3}.partners-btn-secondary{background-color:#6c757d;color:#fff}.partners-btn-secondary:hover:not(:disabled){background-color:#545b62}.partners-btn-success{background-color:#28a745;color:#fff}.partners-btn-success:hover:not(:disabled){background-color:#1e7e34}.partners-btn-danger{background-color:#dc3545;color:#fff}.partners-btn-danger:hover:not(:disabled){background-color:#c82333}.partners-btn-outline{background-color:initial;border:1px solid #007bff;color:#007bff}.partners-btn-outline:hover:not(:disabled){background-color:#007bff;color:#fff}.partners-btn-sm{font-size:12px;min-height:30px;padding:6px 12px}@media (max-width:768px){.partners-page{padding:16px}.partners-page-header{align-items:stretch;flex-direction:column;gap:16px}.partners-header-actions{justify-content:center}.partners-search-row{flex-direction:column}.partners-filter-input,.partners-search-input{width:100%}.partners-table-container{overflow-x:auto}.partners-table{min-width:800px}.partners-modal{margin:20px;width:95vw}.partners-form-grid{grid-template-columns:1fr}}@media (max-width:480px){.partners-page{padding:12px}.partners-modal-body,.partners-page-header,.partners-search-filters{padding:16px}.partners-modal-footer{padding:12px 16px}}.App{height:100vh;overflow:hidden}.app-loading{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;height:100vh;justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:40px;margin-bottom:16px;width:40px}.app-loading p{font-size:16px;font-weight:500;margin:0}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.7f0f2162.css.map*/