@import url(https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css);*{box-sizing:border-box}:root{--app-font:"Pretendard","Pretendard Variable",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR","Segoe UI","Roboto",sans-serif}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;font-family:Pretendard,Pretendard Variable,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,Segoe UI,Roboto,sans-serif;font-family:var(--app-font);margin:0}a,article,aside,blockquote,body,button,caption,dd,div,dl,dt,fieldset,figcaption,footer,form,h1,h2,h3,h4,h5,h6,header,html,input,label,legend,li,main,nav,ol,optgroup,p,section,select,span,table,td,textarea,th,ul{font-family:Pretendard,Pretendard Variable,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,Segoe UI,Roboto,sans-serif!important;font-family:var(--app-font)!important}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}*{-webkit-overflow-scrolling:touch}@media (max-width:768px){body{font-size:14px}button{min-height:44px;min-width:44px}input,select,textarea{font-size:16px}}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0000004d;max-height:90vh;max-width:90vw;overflow-y:auto}body.dark .modal-content{background:#141d2b;color:#e8eef7}body.dark{--d-bg:#0e1622;--d-surface:#141d2b;--d-surface-2:#1b2839;--d-line:#26344a;--d-line-soft:#22304a;--d-text:#e7edf5;--d-text-soft:#c4d0e0;--d-muted:#9daac0;--d-faint:#6f8098;--d-brand:#5b8cf0;background:#0e1622;color:var(--d-text)}body.dark,body.dark input[type=date],body.dark input[type=datetime-local],body.dark input[type=month],body.dark input[type=time],body.dark select{color-scheme:dark}body.dark .content,body.dark .layout{background:#0e1622!important}body.dark .box,body.dark .card,body.dark .content-header,body.dark .filter-bar,body.dark .filters,body.dark .form-section,body.dark .list-card,body.dark .page-header,body.dark .panel,body.dark .reports-page-header,body.dark .section-card,body.dark .section-header,body.dark .stat-card,body.dark .table-container,body.dark .tile,body.dark .toolbar,body.dark .widget,body.dark [class*=-box],body.dark [class*=-card],body.dark [class*=-form-section],body.dark [class*=-panel],body.dark [class*=-tile],body.dark [class*=-widget],body.dark [class*=table-container]{background:var(--d-surface)!important;border-color:var(--d-line)!important;box-shadow:0 1px 2px #0006,0 8px 22px #0006;color:var(--d-text)}body.dark .card .card,body.dark .card .panel,body.dark .panel .panel,body.dark .panel-b,body.dark .panel-h{background:#0000!important}body.dark table{background:var(--d-surface);color:var(--d-text-soft)}body.dark table th,body.dark thead th{background:var(--d-surface-2)!important;border-color:var(--d-line)!important;color:var(--d-muted)!important}body.dark table td,body.dark tbody td{border-color:var(--d-line-soft)!important;color:var(--d-text-soft)}body.dark tbody tr:hover{background:#1b2a40!important}body.dark tbody tr:nth-child(2n){background:hsla(0,0%,100%,.015)}body.dark .date-input,body.dark .filter-input,body.dark .search-input,body.dark input,body.dark select,body.dark textarea{background:#0f1a2a!important;border-color:#2c3b52!important;color:var(--d-text)!important}body.dark input::placeholder,body.dark textarea::placeholder{color:var(--d-faint)!important}body.dark input:focus,body.dark select:focus,body.dark textarea:focus{border-color:var(--d-brand)!important;box-shadow:0 0 0 3px #5b8cf02e!important}body.dark .create-task-modal,body.dark .edit-modal,body.dark .modal,body.dark .modal-body,body.dark .modal-content,body.dark .modal-footer,body.dark .modal-header,body.dark .task-detail-modal,body.dark [class*=modal-body],body.dark [class*=modal-content],body.dark [class*=modal-header]{background:var(--d-surface)!important;border-color:var(--d-line)!important;color:var(--d-text)!important}body.dark .modal-backdrop,body.dark [class*=modal-backdrop],body.dark [class*=modal-overlay]{background:#0000009e!important}body.dark :where(h1,h2,h3,h4,h5,h6){color:var(--d-text)}body.dark :where(p,span,li,td,th,label,strong,b,small,dt,dd,em){color:inherit}body.dark :where(.subtitle,.muted,.text-muted,.hint,.desc,.description,.meta){color:var(--d-muted)}body.dark [style*="color: #111"],body.dark [style*="color: #222"],body.dark [style*="color: #333"],body.dark [style*="color: rgb(51, 51, 51)"],body.dark [style*="color:#222"],body.dark [style*="color:#333"]{color:var(--d-text-soft)!important}body.dark [style*="background-color: #f0f0f0"],body.dark [style*="background-color: #fff"],body.dark [style*="background-color: #ffffff"],body.dark [style*="background-color: white"],body.dark [style*="background-color:#f"],body.dark [style*="background: #f8"],body.dark [style*="background: #f9"],body.dark [style*="background: #fafafa"],body.dark [style*="background: #fff"],body.dark [style*="background: #ffffff"],body.dark [style*="background: white"],body.dark [style*="background:#fff"]{background:var(--d-surface)!important;color:var(--d-text)}body.dark a{color:var(--d-brand)}body.dark hr{border-color:var(--d-line)}body.dark .dropdown,body.dark [class*=-menu]:not(.user-menu):not(.admin-menu-section):not(.admin-menu-toggle),body.dark [class*=context-menu],body.dark [class*=dropdown-menu],body.dark [class*=popover]{background:var(--d-surface)!important;border-color:var(--d-line)!important;color:var(--d-text)}body.dark code,body.dark pre{background:#0b1422!important;border-color:var(--d-line);color:#c9d6ea}body.dark .log-viewer{background:#0a0f18!important;color:#c9d6ea}body.dark .empty-box,body.dark .no-data,body.dark .no-results{background:#141d2b!important;border-color:#26344a!important;box-shadow:0 1px 2px #0006!important;color:#9daac0!important}body.dark .loading-box,body.dark .loading-container,body.dark .spinner-container{background:#141d2b!important;border-color:#26344a!important;color:#c4d0e0!important}body.dark .filter-container,body.dark .filter-section,body.dark .filters-section,body.dark .search-section{background:#141d2b!important;border-color:#26344a!important;box-shadow:0 1px 2px #0006!important;color:#d7e0ec!important}.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{border:4px solid #ffffff4d;border-top-color:#fff}.app-loading p{font-size:16px;font-weight:500;margin:0}.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{vertical-align:middle}.profile-image-inline .profile-image{font-size:9px;height:20px;width:20px}.profile-image-inline .profile-name{font-size:13px}.task-comments{border-top:2px solid #f1f5f9;margin-top:12px;padding-top:12px}.comments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.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{max-height:none!important;overflow:visible!important;padding-right:5px}.no-comments{padding:15px 10px}.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{cursor:pointer!important;display:inline-block!important;font-size:.9em!important;line-height:1.4!important;margin:0 2px!important;position:relative!important;text-decoration:none!important;transition:all .2s ease!important}.comment-text .mention,.mention{background:#dbeafe!important;border:1px solid #60a5fa!important;border-radius:4px!important;color:#1e40af!important;font-weight:600!important;padding:2px 6px!important}.comment-text .mention-me{background:#fef3c7!important;border:1px solid #fbbf24!important;color:#92400e!important;font-weight:700!important}.mention:hover{background:#bfdbfe!important;border-color:#3b82f6!important;box-shadow:0 4px 8px #3b82f666!important;transform:translateY(-1px)!important}.mention:before{content:"";font-weight:900;margin-right:1px}.mention-me{animation:mentionPulse 2s ease-in-out;background:#fef3c7!important;border:1px solid #fbbf24!important;box-shadow:0 2px 8px #fbbf244d;color:#92400e!important;font-weight:700!important}.mention-me:hover{background:#fde68a!important;border-color:#f59e0b!important;box-shadow:0 6px 20px #ef444499;transform:translateY(-1px)}@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:10px;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.4;min-height:50px;padding:10px;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 .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}.comment-attachment{margin-top:10px;max-width:100%;overflow:hidden}.attachment-image{display:inline-block}.attachment-image img{border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000001a;transition:transform .2s,box-shadow .2s}.attachment-image img:hover{box-shadow:0 4px 8px #00000026;transform:scale(1.02)}.attachment-file{align-items:center;background:#eff6ff;border:1px solid #dbeafe;border-radius:8px;color:#2563eb;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:6px;max-width:100%;padding:6px 12px;text-decoration:none;transition:background-color .2s}.attachment-file:hover{background:#dbeafe;color:#1d4ed8}.attachment-file .attachment-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attached-files-preview{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.attached-file-preview{align-items:center;background:#f0fdf4;border:1px solid #86efac;border-radius:6px;display:flex;gap:8px;padding:8px 12px}.attached-file-preview .file-name{color:#166534;flex:1 1;font-size:.85rem;word-break:break-all}.attached-file-preview .remove-file-btn{align-items:center;background:#fecaca;border:none;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:14px;height:22px;justify-content:center;transition:background-color .2s;width:22px}.attached-file-preview .remove-file-btn:hover{background:#fca5a5}.file-attach-btn{align-items:center;display:flex;font-size:.9rem;gap:6px;margin-right:8px;padding:8px 12px}.file-attach-btn:hover{background:#e5e7eb}.comment-actions{display:flex;gap:8px;justify-content:flex-end}.comment-form,.reply-form{position:relative;transition:border-color .2s,background-color .2s}.comment-form.dragging,.reply-form.dragging{background-color:#eff6ff;border:2px dashed #3b82f6;border-radius:8px}.drop-overlay{align-items:center;background:#3b82f61a;border-radius:8px;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:10}.drop-message{background:#3b82f6;border-radius:8px;box-shadow:0 4px 12px #3b82f64d;color:#fff;font-size:.95rem;font-weight:500;padding:12px 24px}@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)}}.tasks-page.admin-tasks-page.user-tasks-page .comments-list{margin-bottom:12px}.tasks-page.admin-tasks-page.user-tasks-page .comment-content{padding:9px 13px}.tasks-page.admin-tasks-page.user-tasks-page .comment-header{margin-bottom:4px}.tasks-page.admin-tasks-page.user-tasks-page .comment-footer{padding-top:6px}.tasks-page.admin-tasks-page.user-tasks-page .reply-item{margin-bottom:8px}.tasks-page.admin-tasks-page.user-tasks-page .no-comments{padding:6px 10px}.tasks-page.admin-tasks-page.user-tasks-page .no-comments-icon{font-size:1.3rem;margin-bottom:2px}.tasks-page.admin-tasks-page.user-tasks-page .no-comments p{font-size:.85rem}.tasks-page.admin-tasks-page.user-tasks-page .task-comments{margin-top:8px;padding-top:8px}.tasks-page.admin-tasks-page.user-tasks-page .comments-header{margin-bottom:6px}.tasks-page.admin-tasks-page.user-tasks-page .task-comments{border-top-width:1px;margin-top:6px;padding-top:6px}.tasks-page.admin-tasks-page.user-tasks-page .comments-header{margin-bottom:4px}.tasks-page.admin-tasks-page.user-tasks-page .comments-header h4{font-size:1rem}.tasks-page.admin-tasks-page.user-tasks-page .comment-form{border-radius:10px;padding:8px}.tasks-page.admin-tasks-page.user-tasks-page .comment-input-container{gap:8px;margin-bottom:8px}.tasks-page.admin-tasks-page.user-tasks-page .current-user-avatar{font-size:.8rem;height:30px;width:30px}.tasks-page.admin-tasks-page.user-tasks-page .comment-input{padding:8px 10px}.tasks-page.admin-tasks-page.user-tasks-page .comment-actions .btn-primary,.tasks-page.admin-tasks-page.user-tasks-page .file-attach-btn{padding:6px 12px}.tasks-page.admin-tasks-page.user-tasks-page .comment-form{padding:6px}.tasks-page.admin-tasks-page.user-tasks-page .comment-input-container{gap:6px;margin-bottom:6px}.tasks-page.admin-tasks-page.user-tasks-page .current-user-avatar{font-size:.75rem;height:28px;width:28px}.tasks-page.admin-tasks-page.user-tasks-page .comment-input{font-size:.83rem;min-height:34px;padding:7px 9px}.tasks-page.admin-tasks-page.user-tasks-page .comment-actions .btn-primary{font-size:.83rem;padding:6px 12px}.tasks-page.admin-tasks-page.user-tasks-page .file-attach-btn{font-size:.83rem;margin-right:6px;padding:6px 10px}.tasks-page.admin-tasks-page.user-tasks-page .comment-hint{font-size:.72rem}.tasks-page.admin-tasks-page.user-tasks-page .no-comments{padding:4px 8px}.tasks-page.admin-tasks-page.user-tasks-page .no-comments-icon{font-size:1.1rem;margin-bottom:0}.tasks-page.admin-tasks-page.user-tasks-page .no-comments p{font-size:.8rem}.tasks-page.admin-tasks-page.user-tasks-page .no-comments{display:none}.tasks-page.admin-tasks-page.user-tasks-page .comment-form{align-items:flex-end;display:flex;flex-wrap:wrap;gap:8px;padding:8px 10px}.tasks-page.admin-tasks-page.user-tasks-page .comment-input-container{align-items:flex-end;flex:1 1 240px;margin-bottom:0;min-width:0}.tasks-page.admin-tasks-page.user-tasks-page .comment-input-wrapper{flex:1 1 auto;min-width:0}.tasks-page.admin-tasks-page.user-tasks-page .comment-input{min-height:38px}.tasks-page.admin-tasks-page.user-tasks-page .comment-actions{align-items:center;flex-shrink:0;gap:6px}.tasks-page.admin-tasks-page.user-tasks-page .attached-files-preview{flex-basis:100%;margin:0;order:-1}.tasks-page.admin-tasks-page.user-tasks-page .comment-input-container{align-items:center!important;flex:1 1 240px!important;margin-bottom:0!important;min-width:0!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-input-wrapper{flex:1 1 auto!important;min-width:0!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-input{max-height:90px!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-actions{align-items:center!important;flex-shrink:0!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-form{align-items:center!important;border-top:none!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:8px!important;height:auto!important;max-height:160px!important;min-height:0!important;padding:8px 10px!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-input{height:38px!important;max-height:80px!important;min-height:38px!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-item{gap:10px;margin-bottom:10px}.tasks-page.admin-tasks-page.user-tasks-page .comment-content:after,.tasks-page.admin-tasks-page.user-tasks-page .comment-content:before{display:none!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-content{background:#f8fafc;padding:10px 13px}.tasks-page.admin-tasks-page.user-tasks-page .comment-header{margin-bottom:6px}.tasks-page.admin-tasks-page.user-tasks-page .comment-author{font-size:.88rem}.tasks-page.admin-tasks-page.user-tasks-page .comment-time{color:#94a3b8;font-size:.76rem}.tasks-page.admin-tasks-page.user-tasks-page .comment-text{color:#334155;font-size:.88rem;line-height:1.55}.tasks-page.admin-tasks-page.user-tasks-page .comment-delete,.tasks-page.admin-tasks-page.user-tasks-page .comment-edit{font-size:.85rem;padding:2px 5px}.tasks-page.admin-tasks-page.user-tasks-page .comment-footer{margin-top:6px}.tasks-page.admin-tasks-page.user-tasks-page .reply-button{color:#64748b;font-size:.78rem;padding:2px 0}.tasks-page.admin-tasks-page.user-tasks-page .replies-list{margin-top:8px;padding-left:16px}.tasks-page.admin-tasks-page.user-tasks-page .comments-list{margin-bottom:6px}.tasks-page.admin-tasks-page.user-tasks-page .comment-item{align-items:flex-start;gap:8px;margin-bottom:6px}.tasks-page.admin-tasks-page.user-tasks-page .comment-avatar .profile-image,.tasks-page.admin-tasks-page.user-tasks-page .comment-item>.profile-image-container .profile-image{height:30px!important;width:30px!important}.tasks-page.admin-tasks-page.user-tasks-page .comment-content{align-self:flex-start;background:#fff;border:1px solid #eef2f7;border-radius:4px 14px 14px 14px;flex:0 1 auto!important;max-width:80%;padding:7px 11px;width:auto}.tasks-page.admin-tasks-page.user-tasks-page .comment-header{gap:6px;margin-bottom:2px}.tasks-page.admin-tasks-page.user-tasks-page .comment-author{color:#1e293b;font-size:.82rem;font-weight:700}.tasks-page.admin-tasks-page.user-tasks-page .comment-time{color:#b0b8c4;font-size:.72rem}.tasks-page.admin-tasks-page.user-tasks-page .comment-text{color:#1f2937;font-size:.86rem;line-height:1.45}.tasks-page.admin-tasks-page.user-tasks-page .comment-attachment{margin-top:5px}.tasks-page.admin-tasks-page.user-tasks-page .comment-footer{border-top:none;margin-top:3px;padding-top:0}.tasks-page.admin-tasks-page.user-tasks-page .reply-button{color:#94a3b8;font-size:.74rem;padding:1px 0}.tasks-page.admin-tasks-page.user-tasks-page .replies-list{border-left-color:#eef2f7;margin-top:6px;padding-left:14px}.tasks-page.admin-tasks-page.user-tasks-page .reply-item{align-items:flex-start;gap:8px;margin-bottom:6px}.tasks-page.admin-tasks-page.user-tasks-page .comment-content{border-radius:10px;flex:1 1 auto!important;max-width:none!important;width:auto!important}.tasks-page.admin-tasks-page.user-tasks-page .current-user-avatar{display:none!important}body.dark .comment-form,body.dark .comment-input-container,body.dark .comment-input-wrapper{background:#141d2b!important;border-color:#2c3b52!important}body.dark .comment-input,body.dark .edit-comment-input{background:#0f1a2a!important;border-color:#2c3b52!important;color:#e7edf5!important}body.dark .comment-input::placeholder,body.dark .edit-comment-input::placeholder{color:#6f8098!important}body.dark .comments-header,body.dark .comments-list,body.dark .edit-comment-form,body.dark .reply-form{background:#0000!important;border-color:#26344a!important}body.dark .comment-item,body.dark .replies-list .reply-item{background:#18253a!important;border-color:#2a3b55!important;color:#dce6f2!important}body.dark .comment-author,body.dark .mention-name{color:#eaf0f8!important}body.dark .comment-hint,body.dark .comment-time,body.dark .mention-department,body.dark .mentions-label{color:#9daac0!important}body.dark .comment-content,body.dark .comment-text{color:#d7e0ec!important}body.dark .mention-list{background:#141d2b!important;border-color:#2c3b52!important;box-shadow:0 8px 24px #00000080!important}body.dark .mention-item{color:#dce6f2!important}body.dark .mention-item.mention-me,body.dark .mention-item:hover{background:#1f2f49!important}body.dark .btn-secondary,body.dark .file-attach-btn{background:#22304a!important;border-color:#2c3b52!important;color:#d7e0ec!important}body.dark .attached-file-preview,body.dark .attached-files-preview,body.dark .attachment-file{background:#18253a!important;border-color:#2a3b55!important;color:#c4d0e0!important}body.dark .comment-content{background:#18253a!important;border-color:#2a3b55!important}body.dark .comment-content:before{border-right-color:#18253a!important}body.dark .comment-content:after{border-right-color:#2a3b55!important}@media (max-width:768px){.task-comments{--c-surf:#f4f7fc;--c-line:#e7ecf3;--c-ink:#1b2533;--c-ink2:#5e6b7e;--c-ink3:#9aa6b6;border-top:1px solid var(--c-line)!important;margin:8px 16px 22px!important;padding-top:16px!important}body.dark .task-comments{--c-surf:#131d2f;--c-line:#94a3b829;--c-ink:#e7edf6;--c-ink2:#9aa7bd;--c-ink3:#6b7890}.task-comments .comments-header{align-items:center!important;display:flex!important;gap:8px!important;margin-bottom:14px!important}.task-comments .comments-header h4{color:var(--c-ink)!important;font-size:14px!important;font-weight:800!important;margin:0!important}.task-comments .comments-header h4:before{content:"💬 "}.task-comments .comment-hint{display:none!important}.task-comments .no-comments{background:#0000!important;border:1px dashed var(--c-line)!important;border-radius:14px!important;color:var(--c-ink3)!important;padding:26px 16px!important;text-align:center!important}.task-comments .no-comments-icon{font-size:22px!important;margin-bottom:8px!important;opacity:.5!important}.task-comments .no-comments p{color:var(--c-ink3)!important;font-size:12.5px!important;margin:0!important}.task-comments .comment-form,.tasks-page.admin-tasks-page.user-tasks-page .task-comments .comment-form{align-items:flex-end!important;background:#0000!important;border:0!important;display:flex!important;flex-wrap:nowrap!important;gap:10px!important;margin-top:14px!important;padding:0!important}.task-comments .comment-input-container{display:block!important;flex:1 1 auto!important;min-width:0!important}.task-comments .current-user-avatar{display:none!important}.task-comments .comment-input-wrapper{width:100%!important}.task-comments .comment-input{background:var(--c-surf)!important;border:1px solid var(--c-line)!important;border-radius:12px!important;box-sizing:border-box!important;color:var(--c-ink)!important;font-size:13px!important;min-height:46px!important;padding:12px 13px!important;width:100%!important}.task-comments .comment-input::placeholder{color:var(--c-ink3)!important}.task-comments .attached-files-preview{flex:1 0 100%!important;order:3!important}.task-comments .comment-actions{align-items:center!important;display:flex!important;flex:0 0 auto!important;gap:0!important;margin-top:0!important}.task-comments .comment-actions .file-attach-btn,.tasks-page.admin-tasks-page.user-tasks-page .comment-actions .file-attach-btn{display:none!important}.task-comments .comment-actions .btn-primary,.tasks-page.admin-tasks-page.user-tasks-page .comment-actions .btn-primary,.tasks-page.admin-tasks-page.user-tasks-page .task-comments .comment-actions .btn-primary{background:linear-gradient(180deg,#3b82f6,#2563eb)!important;border:0!important;border-radius:12px!important;box-shadow:0 4px 12px #2563eb66!important;color:#fff!important;display:grid!important;flex:none!important;font-size:0!important;height:46px!important;min-width:46px!important;padding:0!important;place-items:center!important;width:46px!important}.task-comments .comment-actions .btn-primary:before,.tasks-page.admin-tasks-page.user-tasks-page .task-comments .comment-actions .btn-primary:before{content:"↑"!important;font-size:18px!important;font-weight:800!important}.task-comments .comment-actions .btn-primary:disabled{box-shadow:none!important;opacity:.45!important}}.task-detail-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-detail-modal{background:#fff;border-radius:16px;box-shadow:0 25px 50px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:1000px;overflow:hidden;width:95%}.task-detail-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.task-detail-modal-header h2{font-size:1.25rem;font-weight:600;margin:0}.task-detail-close-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:700;padding:8px 12px;transition:all .2s}.task-detail-close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.task-detail-btn-close{background:#6b7280;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 24px;transition:all .2s}.task-detail-btn-close:hover{background:#4b5563;transform:translateY(-1px)}.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}.loading-spinner{border:4px solid #e5e7eb;border-top-color:#667eea;height:40px;margin-bottom:16px;width:40px}.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;min-width:60px}.meta-value{color:#6b7280;font-weight:500}.task-description{background:#fff;border:1px solid #e2e8f0;border-radius:12px;font-size:.85rem;padding:20px;white-space:pre-wrap}.task-description h4{color:#374151;font-size:1.1rem;font-weight:600;margin:0 0 16px}.task-description-content{color:#4b5563}.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}.claim-link-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s ease;width:100%}.claim-link-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.claim-link-btn:active{transform:translateY(0)}.task-detail-content{background:#f8f9fa;display:block;max-height:70vh;overflow-y:auto;padding:20px}.task-detail-table{background:#fff;border-collapse:collapse;font-size:.85rem;margin-bottom:16px;width:100%}.task-detail-table th{background-color:#f3f4f6;font-weight:600;text-align:left;white-space:nowrap;width:15%}.task-detail-table td,.task-detail-table th{border:1px solid #d1d5db;color:#374151;padding:10px 12px}.task-detail-table td{vertical-align:middle}.task-detail-table tr:hover{background-color:#f9fafb}.task-detail-table .status-select{background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:.8rem;padding:5px 8px}.task-detail-table .priority-badge{border-radius:4px;font-size:.75rem;font-weight:600;padding:3px 8px}.task-detail-table .title-cell{color:#1e3c72;font-size:1.1rem;font-weight:600}.task-detail-table .description-th{vertical-align:top}.task-detail-table .description-cell{line-height:1.6;min-height:100px;vertical-align:top;white-space:pre-wrap;word-break:break-word}.claim-info{font-size:.85rem;line-height:1.6}.claim-info div{margin-bottom:4px}.claim-link-btn-small{font-size:.85rem;margin-top:12px;padding:6px 12px;width:auto}.modal-header-actions{align-items:center;display:flex;gap:8px}.edit-mode-btn{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px}.edit-mode-btn:hover{background-color:#e9ecef}.edit-title-input{border:2px solid #007bff;border-radius:4px;font-size:18px;font-weight:600;margin-bottom:12px;padding:8px 12px;width:100%}.edit-textarea{min-height:150px;padding:12px;resize:vertical;width:100%}.edit-date-input,.edit-textarea{border:2px solid #007bff;border-radius:4px;font-family:inherit;font-size:14px}.edit-date-input{cursor:pointer;padding:8px 12px}.task-description-display{background:#f9fafb;border-left:4px solid #1e3c72;border-radius:8px;min-height:100px;padding:12px}.task-description-content,.task-description-display{line-height:1.6;white-space:pre-wrap;word-break:break-word}.task-description-content{color:#374151;font-size:.85rem;max-height:150px;overflow-y:auto}.claim-link-section{margin-bottom:16px}.assignee-info{align-items:center;display:flex;gap:4px}.assignee-info .profile-image{font-size:8px;height:20px;width:20px}.task-detail-layout{display:flex;gap:20px;margin-bottom:20px}.task-detail-left{flex:1 1;min-width:0}.task-detail-section{background:#fff;border:1px solid #dee2e6;border-radius:8px;margin-bottom:16px;padding:20px}.task-detail-section:last-child{margin-bottom:0}.section-title{border-bottom:2px solid #e9ecef;color:#0d6efd;font-size:1.25rem;margin:0 0 16px;padding-bottom:12px}.description-content{color:#212529;font-size:.85rem;line-height:1.7;min-height:150px;white-space:pre-wrap;word-break:break-word}.task-detail-right{flex-shrink:0;width:280px}.task-info-table{background:#fff;border:1px solid #dee2e6;border-collapse:collapse;border-radius:8px;font-size:.85rem;overflow:hidden;width:100%}.task-info-table th{background:#f8f9fa;color:#495057;font-size:.75rem;font-weight:600;text-align:left;text-transform:uppercase;width:80px}.task-info-table td,.task-info-table th{border-bottom:1px solid #dee2e6;padding:10px 12px}.task-info-table td{color:#212529}.task-info-table tr:last-child td,.task-info-table tr:last-child th{border-bottom:none}.task-info-table tr:hover{background:#f8f9fa}.task-info-table .status-select{background:#fff;border:1px solid #ced4da;border-radius:4px;cursor:pointer;font-size:.8rem;padding:5px 8px;width:100%}.task-info-table .status-select:focus{border-color:#86b7fe;box-shadow:0 0 0 .2rem #0d6efd40;outline:0}.task-info-table .priority-badge{border-radius:4px;font-size:.7rem;font-weight:600;padding:3px 8px}.profile-image-inline{gap:6px}.task-detail-loading{background:#fff;padding:60px 40px;text-align:center}.task-detail-loading-text{color:#6c757d;font-size:1.1rem}@media (max-width:768px){.task-detail-layout{flex-direction:column}.task-detail-right{width:100%}.task-detail-modal{max-width:100%;width:100%}.task-detail-modal-overlay{padding:10px}}.assignee-edit-section{display:flex;flex-direction:column;gap:8px}.selected-assignees{background:#e7f3ff;border:2px solid #007bff;border-radius:4px;display:flex;flex-wrap:wrap;gap:6px;min-height:32px;padding:8px}.assignee-tag{align-items:center;background:#007bff;border-radius:12px;color:#fff;display:inline-flex;font-size:12px;font-weight:500;padding:4px 8px}.assignee-remove-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:16px;line-height:1;margin-left:6px;padding:0}.assignee-select-list{background:#fff;border:2px solid #007bff;border-radius:4px;font-size:13px;max-height:150px;overflow-y:auto}.assignee-option{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:background-color .15s}.assignee-option:hover{background:#f8f9fa}.assignee-option.selected{background:#e7f3ff}.assignee-option input[type=checkbox]{height:16px;margin:0;width:16px}.assignee-name{flex:1 1}.assignee-option.selected .assignee-name{font-weight:600}.assignee-dept{color:#999;font-size:11px}.assignee-display{display:flex;flex-wrap:wrap;gap:6px}.assignee-tag-readonly{align-items:center;background:#007bff;border-radius:12px;color:#fff;display:inline-flex;font-size:12px;font-weight:500;padding:4px 8px}.file-upload-area{margin-bottom:12px}.file-input{border:2px solid #007bff;font-size:12px;width:100%}.file-input,.selected-files{border-radius:4px;padding:6px}.selected-files{background:#e7f3ff;color:#007bff;font-size:11px;margin-top:6px}.attachment-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:8px}.attachment-image-link{display:flex;flex:1 1;flex-direction:column;gap:4px;text-decoration:none}.attachment-image{border-radius:4px;max-height:200px;max-width:100%}.attachment-filename{color:#666;font-size:11px}.attachment-file-link,.attachment-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-file-link{background:#f0f7ff;border:1px solid #bfdbfe;border-radius:4px;color:#2563eb;display:block;flex:1 1;font-size:13px;padding:8px 12px;text-decoration:none}.attachment-file-link:hover{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8}.attachment-delete-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:10px;padding:2px 6px}.attachment-delete-btn:hover{background:#c82333}.section-subtitle{color:#495057;font-size:.9rem;font-weight:600;margin:0 0 12px}.task-detail-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:8px;justify-content:flex-end;padding:16px 24px}.task-detail-btn-save{background:#28a745;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px}.task-detail-btn-save:hover{background:#218838}.task-detail-btn-cancel{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px}.task-detail-btn-cancel:hover{background:#5a6268}@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}}.assignees-list{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.assignee-item{align-items:center;display:inline-flex;gap:2px}.view-check{color:#22c55e;font-size:.9rem;font-weight:700;margin-left:2px}.view-status{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;padding:4px 10px}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal{border-radius:14px}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal-header{background:#fff;border-bottom:1px solid #e7eaf0;color:#1e293b}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal-header h2{color:#1e293b;font-weight:800}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-close-btn{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-close-btn:hover{background:#e2e8f0;color:#1e293b;transform:none}.tasks-page.admin-tasks-page.user-tasks-page .edit-mode-btn{background:#2563eb;border:1px solid #2563eb;border-radius:8px;color:#fff;font-weight:600;padding:7px 14px}.tasks-page.admin-tasks-page.user-tasks-page .edit-mode-btn:hover{background:#1d4ed8}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content{background:#f4f6f9}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-section,.tasks-page.admin-tasks-page.user-tasks-page .task-info-table{border:1px solid #e7eaf0;border-radius:12px}.tasks-page.admin-tasks-page.user-tasks-page .task-info-table th{background:#f8fafc;color:#64748b}.tasks-page.admin-tasks-page.user-tasks-page .section-title{border-bottom:1px solid #eef2f7;color:#0f172a;font-weight:800;text-align:left}.tasks-page.admin-tasks-page.user-tasks-page .comment-submit-btn{background:#2563eb}.tasks-page.admin-tasks-page.user-tasks-page .comment-submit-btn:hover:not(:disabled){box-shadow:0 4px 12px #2563eb4d}.tasks-page.admin-tasks-page.user-tasks-page .comment-input:focus{border-color:#93c5fd;box-shadow:0 0 0 3px #3b82f61f}.tasks-page.admin-tasks-page.user-tasks-page .claim-link-btn,.tasks-page.admin-tasks-page.user-tasks-page .claim-link-btn-small,.tasks-page.admin-tasks-page.user-tasks-page .view-status{background:#2563eb;box-shadow:none}.tasks-page.admin-tasks-page.user-tasks-page .claim-link-btn:hover{box-shadow:0 4px 12px #2563eb4d}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-layout{flex-direction:column;gap:14px}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-left{min-width:0;width:100%}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-right{order:-1;width:100%}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table{background:#f8fafc;border:none;border-radius:10px;display:block;padding:10px 14px;width:100%}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table tbody{display:flex;flex-wrap:wrap;gap:8px 26px}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table tr{align-items:center;display:flex;gap:6px}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table tr:hover{background:#0000}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table td,.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table th{align-items:center;background:#0000;border:none;display:flex;padding:0;white-space:nowrap;width:auto}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table th{color:#94a3b8;font-size:.8rem;font-weight:600;text-transform:none}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal-footer,.tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal-header{flex-shrink:0}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content{display:block;flex:1 1 auto;max-height:none;min-height:0;overflow-y:auto}.tasks-page.admin-tasks-page.user-tasks-page .task-comments .comments-list{max-height:320px;overflow-y:auto!important}.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table tbody{align-items:flex-start}body.dark .task-detail-modal-overlay{background:#0009!important}body.dark .task-detail-modal,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal{background:#141d2b!important;border-color:#26344a!important;color:#e7edf5!important}body.dark .task-detail-modal-footer,body.dark .task-detail-modal-header,body.dark .task-modal-footer,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal-footer,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal-header,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-modal-footer{background:#141d2b!important;border-color:#26344a!important}body.dark .task-detail-content,body.dark .task-modal-body,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-content,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-modal-body{background:#141d2b!important;color:#e7edf5!important}body.dark .tasks-page.admin-tasks-page.user-tasks-page .section-subtitle,body.dark .tasks-page.admin-tasks-page.user-tasks-page .section-title,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal h1,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal h2,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal h3,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-header-info,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-header-info *{color:#eaf0f8!important}body.dark .task-info-table,body.dark .task-meta-info,body.dark .task-meta-item,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-table,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-info-table,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-meta-info,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-meta-item,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-meta-row{background:#0000!important;border-color:#26344a!important;color:#e7edf5}body.dark .meta-label,body.dark .tasks-page.admin-tasks-page.user-tasks-page .meta-label{color:#9daac0!important}body.dark .meta-value,body.dark .tasks-page.admin-tasks-page.user-tasks-page .meta-value{color:#e7edf5!important}body.dark .description-content,body.dark .task-description,body.dark .tasks-page.admin-tasks-page.user-tasks-page .description-content,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-description,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-description-content,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-description-display{background:#0f1a2a!important;border-color:#26344a!important;color:#d7e0ec!important}body.dark .tasks-page.admin-tasks-page.user-tasks-page .comments-list,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-comments-section{background:#0000!important}body.dark .comment-item,body.dark .tasks-page.admin-tasks-page.user-tasks-page .comment-item{background:#18253a!important;border-color:#2a3b55!important;color:#dce6f2!important}body.dark .comment-author{color:#eaf0f8!important}body.dark .comment-date{color:#9daac0!important}body.dark .comment-content{color:#d7e0ec!important}body.dark .no-comments{color:#9daac0!important}body.dark .task-detail-modal input,body.dark .task-detail-modal select,body.dark .task-detail-modal textarea,body.dark .tasks-page.admin-tasks-page.user-tasks-page .comment-input,body.dark .tasks-page.admin-tasks-page.user-tasks-page .edit-date-input,body.dark .tasks-page.admin-tasks-page.user-tasks-page .edit-textarea,body.dark .tasks-page.admin-tasks-page.user-tasks-page .edit-title-input{background:#0f1a2a!important;border-color:#2c3b52!important;color:#e7edf5!important}body.dark .assignee-item,body.dark .assignee-option,body.dark .assignee-tag,body.dark .assignee-tag-readonly{background:#22304a!important;border-color:#2c3b52!important;color:#dce6f2!important}body.dark .assignee-select-list{background:#0f1a2a!important;border-color:#2c3b52!important}body.dark .assignee-name{color:#e7edf5!important}body.dark .assignee-dept{color:#9daac0!important}body.dark .attachment-item{background:#18253a!important;border-color:#2a3b55!important}body.dark .attachment-file-link,body.dark .attachment-filename,body.dark .task-close-btn,body.dark .task-detail-btn-close,body.dark .task-detail-close-btn{color:#c4d0e0!important}body.dark .task-detail-modal *,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal *{border-color:#2a3b55!important}body.dark .task-detail-modal-header{border-bottom-color:#26344a!important}body.dark .task-detail-modal-footer,body.dark .task-modal-footer{border-top-color:#26344a!important}body.dark .tasks-page.admin-tasks-page.user-tasks-page .description-content,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-description-content{background:#18233a!important}body.dark .task-detail-section,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-section{background:#0000!important;border-color:#2a3b55!important}@media (max-width:768px){.task-detail-modal-overlay{padding:8px!important}.task-detail-modal{border-radius:12px!important;max-height:94vh!important;max-width:100%!important;width:100%!important}.task-detail-modal-header{align-items:center!important;display:flex!important;flex-direction:row!important;gap:8px!important;justify-content:space-between!important;padding:12px 14px!important}.task-detail-modal-header h2{flex:0 1 auto;font-size:16px!important;margin:0!important;white-space:nowrap}.task-detail-modal-header .modal-header-actions{align-items:center!important;display:flex!important;flex:none!important;flex-direction:row!important;gap:6px!important;margin-left:auto!important;width:auto!important}.task-detail-modal-header .edit-mode-btn{font-size:12px!important;padding:6px 10px!important;white-space:nowrap}.task-detail-modal-header .task-detail-close-btn{align-items:center!important;display:inline-flex!important;flex:none!important;font-size:20px!important;height:30px!important;justify-content:center!important;padding:0!important;position:static!important;width:30px!important}.task-detail-content{padding:12px 14px!important}.task-detail-section{padding:10px 12px!important}.task-info-table tbody,.task-meta-info{gap:8px 14px!important}.task-detail-modal-footer,.task-modal-footer{padding:10px 14px!important}}body.dark .task-detail-modal .description-content,body.dark .task-detail-modal .task-description-content,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal .description-content,body.dark .tasks-page.admin-tasks-page.user-tasks-page .task-detail-modal .task-description-content{background:#0000!important;border:none!important;box-shadow:none!important}@media (max-width:768px){.task-detail-modal-overlay{align-items:stretch!important;justify-content:stretch!important;padding:0!important}.task-detail-modal{--d-bg:#fff;--d-surf:#f4f7fc;--d-line:#e7ecf3;--d-ink:#1b2533;--d-ink2:#5e6b7e;--d-ink3:#9aa6b6;--d-blue:#2563eb;background:var(--d-bg)!important;border-radius:0!important;display:flex!important;flex-direction:column!important;height:100%!important;margin:0!important;max-height:none!important;max-width:none!important;overflow-x:hidden!important;width:100%!important}body.dark .task-detail-modal{--d-bg:#0b1220;--d-surf:#131d2f;--d-line:#94a3b829;--d-ink:#e7edf6;--d-ink2:#9aa7bd;--d-ink3:#6b7890;--d-blue:#3b82f6}.task-detail-modal-header{align-items:center!important;background:linear-gradient(180deg,#0f1a2e,#0f1729)!important;border-bottom:1px solid var(--d-line)!important;min-height:0!important;padding:10px 14px!important}.task-detail-modal-header h2{color:#e7edf6!important;font-size:15px!important;font-weight:800!important}.task-detail-modal-header h2:before{content:"📄 "}.task-detail-close-btn{background:#94a3b81f!important;border:1px solid #94a3b82e!important;border-radius:9px!important;color:#9aa7bd!important;display:grid!important;font-size:17px!important;height:32px!important;place-items:center!important;width:32px!important}.task-detail-content{background:var(--d-bg)!important;flex:1 1!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0 0 16px!important}.task-detail-layout{display:flex!important;flex-direction:column!important;gap:0!important;max-width:100%!important;padding:0!important}.task-detail-modal .task-info-table td,.task-detail-modal .task-info-table th{white-space:normal!important}.task-detail-modal .description-content,.task-detail-modal .task-detail-left{min-width:0!important;overflow-wrap:anywhere!important;word-break:break-word!important}.task-detail-modal .task-detail-right{flex:none!important;order:-1!important;width:auto!important}.task-detail-modal .task-info-table,.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table{grid-gap:12px 10px!important;align-items:center!important;background:var(--d-surf)!important;border:1px solid var(--d-line)!important;border-radius:14px!important;display:grid!important;gap:12px 10px!important;grid-template-columns:auto 1fr auto 1fr!important;margin:16px!important;max-width:100%!important;padding:13px 15px!important;width:auto!important}.task-detail-modal .task-info-table tbody,.task-detail-modal .task-info-table tr,.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table tbody,.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table tr{display:contents!important}.task-detail-modal .task-info-table th,.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table th{align-self:center!important;background:#0000!important;border:0!important;color:var(--d-ink3)!important;display:block!important;font-size:11.5px!important;font-weight:700!important;padding:0!important;text-align:left!important;white-space:nowrap!important;width:auto!important}.task-detail-modal .task-info-table td,.tasks-page.admin-tasks-page.user-tasks-page .task-detail-content:not(.editing) .task-info-table td{align-self:center!important;background:#0000!important;border:0!important;color:var(--d-ink)!important;display:block!important;font-size:12.5px!important;min-width:0!important;overflow:hidden!important;padding:0!important;text-overflow:ellipsis!important;white-space:nowrap!important}.task-detail-left{padding:0!important;width:auto!important}.task-detail-left .task-detail-section{background:#0000!important;border:0!important;border-radius:0!important;margin:4px 16px 0!important;padding:0!important}.task-detail-left .section-title{border-bottom:1px solid var(--d-line)!important;color:var(--d-ink)!important;font-size:18px!important;font-weight:800!important;margin:0!important;padding:16px 0 12px!important}.task-detail-left .description-content{color:var(--d-ink2)!important;font-size:14px!important;line-height:1.7!important;padding:14px 0 20px!important;white-space:pre-wrap!important}.task-detail-left .section-subtitle{color:var(--d-ink2)!important}body.dark .task-detail-modal [style*=fffbeb]{background:#2a2512!important;border-color:#5a4a1e!important}body.dark .task-detail-modal [style*=fffbeb] *{color:#fcd34d!important}.task-detail-modal-footer{display:none!important}}.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-dropdown .notifications-header{align-items:center;background:linear-gradient(135deg,#1e3c72,#2a5298);border-bottom:1px solid #f1f5f9;color:#fff;display:flex;justify-content:space-between;min-height:60px;padding:20px 24px}.notifications-dropdown .notifications-header h3{font-size:1.1rem;font-weight:600;line-height:1;margin:0}.notifications-dropdown .notifications-actions{align-items:center;display:flex;flex-shrink:0;gap:12px}.notifications-dropdown .clear-all-btn,.notifications-dropdown .delete-all-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 12px;transition:all .2s}.notifications-dropdown .clear-all-btn:hover,.notifications-dropdown .delete-all-btn:hover{background:#ffffff4d}.notifications-dropdown .delete-all-btn{background:#ef444433;border:1px solid #ef44444d}.notifications-dropdown .delete-all-btn:hover{background:#ef44444d}.notifications-dropdown .notifications-header .close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;height:28px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:28px}.notifications-dropdown .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:768px){.notification-bell{border-width:2px;font-size:1.1rem;height:40px;width:40px}.notification-badge{border-width:2px;font-size:.65rem;height:20px;right:-6px;top:-6px;width:20px}.notifications-dropdown{max-height:450px;max-width:340px;right:-8px;top:50px;width:calc(100vw - 32px)}.notifications-dropdown .notifications-header{padding:14px 16px}.notifications-dropdown .notifications-header h3{font-size:.95rem}.notifications-dropdown .notifications-actions{align-items:center;display:flex;gap:8px}.notifications-dropdown .clear-all-btn{font-size:.7rem;padding:4px 8px}.notifications-dropdown .notifications-header .close-btn{flex-shrink:0;font-size:1.2rem;height:24px;width:24px}.notifications-list{max-height:350px}.notification-item{padding:14px 18px}.notification-icon{font-size:1.2rem;margin-right:10px}.notification-title{font-size:.85rem}.notification-message{font-size:.8rem}.notification-time{font-size:.7rem}.no-notifications{padding:50px 20px}.no-notifications .empty-icon{font-size:2.5rem}.no-notifications p{font-size:.9rem}}@media (max-width:480px){.notification-bell{font-size:1rem;height:36px;width:36px}.notification-badge{font-size:.6rem;height:18px;right:-5px;top:-5px;width:18px}.notifications-dropdown{border-radius:10px;max-height:380px;max-width:320px;right:-10px;width:calc(100vw - 20px)}.notifications-dropdown .notifications-header{padding:12px 14px}.notifications-dropdown .notifications-header h3{font-size:.9rem}.notifications-dropdown .notifications-actions{align-items:center;display:flex;gap:6px}.notifications-dropdown .clear-all-btn{font-size:.65rem;padding:3px 6px;white-space:nowrap}.notifications-dropdown .notifications-header .close-btn{flex-shrink:0;font-size:1.1rem;height:22px;width:22px}.notifications-list{max-height:300px}.notification-item{padding:12px 14px}.notification-icon{font-size:1.1rem;margin-right:8px}.notification-title{font-size:.8rem}.notification-message{-webkit-line-clamp:2;font-size:.75rem}.notification-time{font-size:.65rem}.unread-indicator{height:6px;margin-left:6px;margin-top:6px;width:6px}.no-notifications{padding:40px 16px}.no-notifications .empty-icon{font-size:2rem;margin-bottom:12px}.no-notifications p{font-size:.85rem}}.layout{--bg:#eef2f8;--side:#fff;--line:#e7ecf3;--line-soft:#f0f3f8;--ink:#1b2533;--muted:#5e6b7e;--faint:#9aa6b6;--brand:#2b6ae8;--brand-dark:#1a53c0;--brand-soft:#ecf2fe;--brand-tint:#f5f8fe;--gold:#f6a623;--gold-dark:#d98c0a;--shadow:0 1px 2px #14202e0a,0 6px 20px #14202e0f;--nav-h:60px;background:var(--bg);display:flex;flex-direction:column;min-height:100vh}.header.topnav{align-items:center;background:linear-gradient(100deg,#0f2444,#18386f 55%,#1c3f7c);box-shadow:0 1px 0 #ffffff0a,0 4px 18px #0814282e;color:#fff;display:flex;gap:14px;height:var(--nav-h);padding:0 16px 0 12px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nv-burger{background:#0000;border:0;border-radius:10px;color:#cbd8ee;cursor:pointer;display:grid;flex:none;font-size:18px;height:38px;place-items:center;width:38px}.nv-burger:hover{background:#ffffff1a;color:#fff}.nv-logo{align-items:center;display:flex;gap:9px;padding-right:6px;text-decoration:none}.header-logo{filter:brightness(0) invert(1);height:30px;max-width:160px;object-fit:contain}.nv-search{flex:1 1;max-width:440px;position:relative}.nv-search .nv-search-ic{font-size:14px;left:12px;opacity:.7;position:absolute;top:50%;transform:translateY(-50%)}.nv-search input{background:#ffffff1a;border:1px solid #ffffff24;border-radius:11px;color:#fff;font-family:inherit;font-size:13.5px;height:40px;padding:0 14px 0 36px;width:100%}.nv-search input::placeholder{color:#a9bad6}.nv-search input:focus{background:#ffffff2e;border-color:#ffffff61;outline:none}.nv-right{align-items:center;display:flex;gap:8px;margin-left:auto}.header-quick-link.nv-cta{align-items:center;background:var(--gold);border:0;border-radius:10px;box-shadow:0 4px 12px #f6a62359;color:#3d2a04!important;cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:7px;height:38px;padding:0 15px;text-decoration:none;transition:background .15s,transform .05s;white-space:nowrap}.header-quick-link.nv-cta:hover{background:var(--gold-dark);color:#2e2003!important;transform:translateY(-1px)}.header-quick-link.nv-cta .quick-link-icon{font-size:15px}.nv-div{background:#ffffff29;height:26px;margin:0 4px;width:1px}.user-menu{align-items:center;display:flex}.user-profile-container{position:relative}.user-profile-link.nv-user{align-items:center;background:#0000;border-radius:11px;color:#fff;cursor:pointer;display:flex;gap:9px;height:42px;padding:0 10px 0 7px}.user-profile-link.nv-user:hover{background:#ffffff1a}.user-avatar{align-items:center;background:linear-gradient(135deg,#7fa8f5,#3b6fe0);border-radius:50%;display:flex;font-size:14px;height:30px;justify-content:center;overflow:hidden;position:relative;width:30px}.user-avatar .avatar-image{border-radius:50%;height:100%;object-fit:cover;width:100%}.user-avatar .avatar-placeholder{align-items:center;color:#fff;display:flex;font-size:13px;font-weight:800;height:100%;justify-content:center;width:100%}.header-user-name{color:#fff!important;font-size:13.5px;font-weight:600}.nv-caret{color:#9fb3d6;font-size:12px}.user-dropdown-menu{background:var(--side);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);margin-top:8px;min-width:200px;padding:7px;position:absolute;right:0;top:100%;z-index:1000}.dropdown-item{align-items:center;background:none;border:none;border-radius:8px;color:var(--ink);cursor:pointer;display:flex;font-size:13.5px;font-weight:500;gap:10px;padding:9px 10px;text-align:left;text-decoration:none;transition:all .15s;width:100%}.dropdown-item:hover{background:var(--brand-tint);color:var(--brand-dark)}.dropdown-icon{font-size:16px;text-align:center;width:20px}.logout-btn{color:#d63b3b}.logout-btn:hover{background:#fcecec;color:#d63b3b}.main-container{display:flex;flex:1 1;overflow:hidden;position:relative}.sidebar-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:var(--nav-h);z-index:99}.sidebar-overlay.show{display:block}.sidebar{background:var(--side);border-right:1px solid var(--line);display:flex;flex-direction:column;height:calc(100vh - var(--nav-h));overflow-y:auto;position:-webkit-sticky;position:sticky;top:var(--nav-h);transition:width .22s cubic-bezier(.4,0,.2,1);width:248px;z-index:100}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-track{background:#0000}.sidebar::-webkit-scrollbar-thumb{background:#e1e7f0;border:2px solid var(--side);border-radius:8px}.sidebar::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.sidebar-nav{display:flex;flex-direction:column;gap:1px;min-height:100%;padding:12px 10px 16px}.grp-label{color:var(--faint);font-size:10.5px;font-weight:700;letter-spacing:.07em;padding:14px 12px 6px;text-transform:uppercase}.nav-item-wrapper{align-items:center;display:flex;position:relative}.nav-item-wrapper .nav-item{flex:1 1}.nav-item{align-items:center;border-radius:10px;color:var(--muted);display:flex;font-size:13.5px;font-weight:600;gap:11px;height:42px;padding:0 11px;position:relative;text-decoration:none;transition:all .15s;white-space:nowrap}.nav-item:hover{background:var(--brand-tint);color:var(--ink)}.nav-item.active{background:var(--brand-soft);color:var(--brand-dark);font-weight:700}.nav-icon{display:grid;flex:none;font-size:17px;height:20px;place-items:center;width:20px}.nav-text{flex:1 1;font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis}.admin-menu-section{position:relative}.admin-menu-toggle{align-items:center;background:none;border:none;border-radius:10px;color:var(--muted);cursor:pointer;display:flex;font-size:13.5px;font-weight:600;gap:11px;height:42px;padding:0 11px;text-align:left;transition:all .15s;width:100%}.admin-menu-toggle:hover{background:var(--brand-tint);color:var(--ink)}.admin-menu-toggle .nav-text{flex:1 1}.admin-menu-toggle.open{color:var(--ink)}.admin-menu-section.section-active>.admin-menu-toggle{background:var(--brand-soft);color:var(--brand-dark)}.admin-menu-section.section-active>.admin-menu-toggle .nav-icon{color:var(--brand)}.accordion-arrow{color:var(--faint);flex:none;font-size:10px;transition:transform .2s}.admin-menu-toggle.open .accordion-arrow{transform:rotate(90deg)}.admin-submenu{border-left:1.5px solid var(--line);margin:2px 0 4px 22px;max-height:0;overflow:hidden;padding-left:12px;transition:max-height .24s ease}.admin-submenu.open{max-height:520px}.admin-submenu.closed{max-height:0}.submenu-wrapper{background:#0000}.submenu-item{border-radius:8px;font-size:13px;font-weight:500;gap:9px;height:36px;padding:0 10px}.submenu-item .nav-icon{font-size:14px;width:16px}.submenu-item:hover{background:var(--brand-tint);color:var(--ink)}.submenu-item.active{background:var(--brand-soft);color:var(--brand-dark);font-weight:700;position:relative}.submenu-item.active:before{background:var(--brand);border-radius:3px;bottom:7px;content:"";left:-13.5px;position:absolute;top:7px;width:2.5px}.new-window-btn{background:#0000;border:none;border-radius:6px;color:var(--faint);cursor:pointer;font-size:12px;padding:4px 6px;position:absolute;right:8px;transition:all .15s}.new-window-btn:hover{background:#e7edf6;color:var(--brand)}.submenu-new-window{right:4px}.sidebar.collapsed{width:66px}.sidebar.collapsed .accordion-arrow,.sidebar.collapsed .admin-submenu,.sidebar.collapsed .grp-label,.sidebar.collapsed .nav-text,.sidebar.collapsed .new-window-btn{display:none}.sidebar.collapsed .admin-menu-toggle,.sidebar.collapsed .nav-item{gap:0;justify-content:center;padding:0}.sidebar.collapsed .nav-item-wrapper{justify-content:center}.sidebar.collapsed .admin-menu-section:hover:after,.sidebar.collapsed .nav-item-wrapper:hover:after{background:var(--ink);border-radius:7px;box-shadow:var(--shadow);color:#fff;content:attr(data-name);font-size:12px;font-weight:600;left:60px;padding:6px 10px;position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:20}.content{background:var(--bg);flex:1 1;height:calc(100vh - var(--nav-h));overflow-y:auto;padding:10px}body.dark .layout{--bg:#0e1622;--side:#141d2b;--line:#26344a;--line-soft:#1c2839;--ink:#e7edf5;--muted:#a1b1c7;--faint:#6f8098;--brand:#5b8cf0;--brand-dark:#86a9f6;--brand-soft:#1c2e50;--brand-tint:#18253a;--shadow:0 1px 2px #00000073,0 10px 28px #00000080}body.dark .header.topnav{background:linear-gradient(100deg,#0a1730,#122747 55%,#163059);box-shadow:0 4px 18px #0006}body.dark .new-window-btn:hover{background:#22324a}@media (max-width:820px){.nv-search{display:none}}@media (max-width:768px){.header.topnav{padding:0 10px}.header-quick-link.nv-cta .quick-link-text{display:none}.header-quick-link.nv-cta{padding:0 11px}.header-user-name{display:none}.sidebar{box-shadow:4px 0 20px #0000002e;height:calc(100vh - var(--nav-h));left:0;max-width:85vw;position:fixed;top:var(--nav-h);transform:translateX(-100%);width:280px;z-index:100}.sidebar.mobile-open{transform:translateX(0)}.sidebar.collapsed{width:280px}.sidebar.collapsed .accordion-arrow,.sidebar.collapsed .admin-submenu,.sidebar.collapsed .grp-label,.sidebar.collapsed .nav-text{display:revert}.sidebar.collapsed .admin-menu-toggle,.sidebar.collapsed .nav-item{gap:11px;justify-content:flex-start;padding:0 11px}.content{padding:0;width:100%}}.dxm-overlay,.estimates-modal-overlay,.image-modal-overlay,.image-viewer-overlay,.logistics-image-modal-overlay,.logistics-modal-overlay,.modal-backdrop,.modal-overlay,.notice-modal-overlay,.partners-modal-overlay,.preview-image-overlay,.qd-overlay,.request-modal-overlay,.task-detail-modal-overlay,.team-modal-overlay,.vacation-form-overlay,.vf-overlay{z-index:5000!important}.content-loading{align-items:center;display:flex;justify-content:center;min-height:240px;padding:40px 0}.content-loading .loading-spinner{animation:spin .8s linear infinite;border:3px solid #1e3c7226;border-radius:50%;border-top-color:#1e3c72;height:32px;margin-bottom:0;width:32px}.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-group{margin-bottom:20px}.form-group label{color:#495057;display:block;font-size:.95rem;font-weight:500;margin-bottom:6px}.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;resize:vertical}.checkbox-label{align-items:center;color:#495057;cursor:pointer;display:flex;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}.form-actions{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.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%}}.color-picker-container{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(5,1fr);margin-top:8px}.color-option{align-items:center;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:8px;transition:all .2s}.color-option:hover{background:#f8f9fa}.color-option.selected{background:#f0f4ff;border-color:#667eea}.color-circle{border:2px solid #e9ecef;border-radius:50%;box-shadow:0 2px 4px #0000001a;height:32px;width:32px}.color-name{color:#6c757d;font-size:.75rem;font-weight:500}@media (max-width:480px){.color-picker-container{grid-template-columns:repeat(3,1fr)}}body.dark .vacation-form-container{background:#141d2b!important;border:1px solid #26344a!important;color:#e7edf5}body.dark .vacation-form{background:#0000!important}body.dark .vacation-form-header{border-bottom-color:#26344a}body.dark .form-group label,body.dark .vacation-form label{color:#c4d0e0!important}body.dark .form-input,body.dark .form-textarea{background:#0f1a2a!important;border-color:#2c3b52!important;color:#e7edf5!important}body.dark .form-input::placeholder,body.dark .form-textarea::placeholder{color:#6f8098!important}body.dark .days-info{color:#9daac0!important}body.dark .checkbox-label{color:#c4d0e0!important}body.dark .color-option:hover{background:#1f2f49!important}body.dark .color-option.selected{background:#1c2e50!important;border-color:#5b8cf0!important}body.dark .color-name{color:#aebbd0!important}body.dark .color-circle{border-color:#3a4a60!important}body.dark .btn-cancel{background:#22304a!important;border-color:#2c3b52!important;color:#d7e0ec!important}body.dark .btn-cancel:hover{background:#2a3b57!important}.vf-overlay{align-items:flex-end;background:#0509108c;display:flex;inset:0;justify-content:center;padding:0;position:fixed;z-index:100000}.vf-sheet{--surf:#fff;--surf2:#f4f6fa;--line:#e4eaf2;--line-soft:#eef1f6;--ink:#16202e;--muted:#5c6b82;--faint:#93a0b3;--brand:#2b6ae8;--brand-dark:#1a53c0;--brand-soft:#eaf1fe;--brand-tint:#f5f8fe;--ok:#16a34a;--ok-dark:#15803d;--req:#d63b3b;animation:vfRise .28s cubic-bezier(.4,0,.2,1);background:var(--surf);border-radius:24px 24px 0 0;box-shadow:0 -8px 40px #00000040;color:var(--ink);display:flex;flex-direction:column;max-height:94vh;max-width:480px;width:100%}@keyframes vfRise{0%{transform:translateY(100%)}to{transform:translateY(0)}}.vf-handle{background:#c8d2df;border-radius:3px;height:4px;margin:9px auto 0;width:40px}.vf-head{align-items:center;border-bottom:1px solid var(--line-soft);display:flex;gap:11px;padding:12px 18px 14px}.vf-ic{background:var(--brand-soft);border-radius:10px;display:grid;font-size:18px;height:34px;place-items:center;width:34px}.vf-ttl{flex:1 1;font-size:18px;font-weight:800;letter-spacing:-.01em}.vf-x{background:var(--surf2);border:0;border-radius:10px;color:var(--muted);cursor:pointer;font-size:16px;height:34px;width:34px}.vf-x:active{background:#e5eaf1}.vf-body{overflow-y:auto;padding:16px 18px 8px}.vf-fld{margin-bottom:16px}.vf-lbl{color:var(--muted);display:block;font-size:13px;font-weight:700;margin-bottom:7px}.vf-req{color:var(--req);margin-left:2px}.vf-opt{color:var(--faint);font-size:11.5px;font-weight:500;margin-left:5px}.vf-ctrl,.vf-sel,.vf-ta{background:var(--surf2);border:1px solid var(--line);border-radius:12px;color:var(--ink);font-family:inherit;font-size:14.5px;outline:none;width:100%}.vf-ctrl,.vf-sel{height:48px;padding:0 14px}.vf-ctrl:focus,.vf-sel:focus,.vf-ta:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.vf-ctrl:disabled{opacity:.5}.vf-sel{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235C6B82' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat}.vf-ta{line-height:1.5;min-height:84px;padding:12px 14px;resize:none}.vf-row2{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.vf-row2.locked>div:last-child{opacity:.45}.vf-toggle{align-items:center;background:var(--surf2);border:1px solid var(--line);border-radius:12px;display:flex;gap:12px;padding:12px 14px}.vf-tt{flex:1 1}.vf-tt .n{font-size:14.5px;font-weight:700}.vf-tt .s{color:var(--faint);font-size:12px;margin-top:1px}.vf-sw{background:#c2ccda;border-radius:999px;cursor:pointer;flex:none;height:28px;position:relative;transition:.2s;width:48px}.vf-sw:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:22px;left:3px;position:absolute;top:3px;transition:.2s;width:22px}.vf-sw.on{background:var(--ok)}.vf-sw.on:after{transform:translateX(20px)}.vf-half{margin-top:10px}.vf-seg{background:var(--surf2);border:1px solid var(--line);border-radius:11px;display:flex;padding:3px}.vf-seg button{background:#0000;border:0;border-radius:8px;color:var(--muted);cursor:pointer;flex:1 1;font-size:13px;font-weight:700;height:34px}.vf-seg button.on{background:var(--brand);color:#fff}.vf-summary{align-items:center;background:linear-gradient(120deg,var(--brand-soft),var(--surf2));border:1px solid var(--line);border-radius:14px;display:flex;gap:12px;margin-bottom:16px;padding:14px 16px}.vf-si{background:var(--brand);border-radius:11px;color:#fff;display:grid;flex:none;font-size:18px;height:38px;place-items:center;width:38px}.vf-sx{flex:1 1}.vf-sx .k{color:var(--muted);font-size:12px;font-weight:600}.vf-sx .v{font-size:22px;font-weight:800;letter-spacing:-.02em}.vf-sx .v b{color:var(--brand-dark)}.vf-warn{color:var(--req);font-size:11.5px;font-weight:600;text-align:right}.vf-foot{background:var(--surf);border-top:1px solid var(--line-soft);display:flex;gap:10px;padding:12px 18px calc(12px + env(safe-area-inset-bottom))}.vf-btn{border:0;border-radius:13px;cursor:pointer;font-size:15px;font-weight:800;height:50px}.vf-btn.cancel{background:var(--surf2);border:1px solid var(--line);color:var(--muted);flex:0 0 96px}.vf-btn.submit{background:var(--ok);color:#fff;flex:1 1}.vf-btn.submit:active{background:var(--ok-dark)}.vf-btn.submit:disabled{background:#cbd5e1;color:#94a3b8;cursor:not-allowed}@media (min-width:600px){.vf-overlay{align-items:center}.vf-sheet{animation:vfFade .2s ease;border-radius:20px;max-height:88vh}@keyframes vfFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}body.dark .vf-sheet{--surf:#141d2b;--surf2:#1b2738;--line:#26344a;--line-soft:#1f2c3e;--ink:#e7edf5;--muted:#a1b1c7;--faint:#6f8098;--brand:#5b8cf0;--brand-dark:#86a9f6;--brand-soft:#1c2e50;--brand-tint:#18253a;--ok:#22c55e;--ok-dark:#16a34a;--req:#f0676f}body.dark .vf-handle{background:#39485f}body.dark .vf-sw{background:#33445c}body.dark .vf-btn.submit{color:#06281a}body.dark .vf-btn.submit:disabled{background:#2b3a4d;color:#5c6e84}body.dark .vf-sel{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23A1B1C7' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.vf-colors{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(5,1fr)}.vf-color{aspect-ratio:1/1;border:2px solid #0000;border-radius:50%;box-shadow:0 1px 3px #0000002e;cursor:pointer;justify-self:center;max-width:44px;padding:0;transition:transform .12s;width:100%}.vf-color:active{transform:scale(.92)}.vf-color.on{border-color:var(--surf);box-shadow:0 0 0 2px var(--brand),0 1px 3px #0003}.vf-tplbar{align-items:center;background:var(--surf2);border:1px solid var(--line);border-radius:12px;display:flex;gap:10px;justify-content:space-between;padding:10px 12px}.vf-tpllabel{color:var(--muted);font-size:13px;font-weight:700}.vf-tplbtn{background:var(--brand);border:0;border-radius:8px;color:#fff;cursor:pointer;flex:none;font-size:12px;font-weight:700;height:30px;padding:0 13px}.vf-tplbtn.close{background:var(--req)}.vf-tpllist{background:var(--surf);border:1px solid var(--line);border-radius:12px;margin-top:8px;max-height:160px;overflow-y:auto}.vf-tplitem{border-bottom:1px solid var(--line-soft);cursor:pointer;padding:9px 12px}.vf-tplitem:last-child{border-bottom:0}.vf-tplitem:active{background:var(--surf2)}.vf-tplt{color:var(--ink);font-size:13px;font-weight:700;margin-bottom:2px}.vf-tpld{color:var(--faint);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vf-drop{background:var(--surf2);border:2px dashed var(--line);border-radius:12px;cursor:pointer;padding:18px;text-align:center;transition:.15s}.vf-drop.drag{background:var(--brand-soft);border-color:var(--brand)}.vf-drop-ic{font-size:24px;margin-bottom:6px}.vf-drop-t{color:var(--muted);font-size:13px}.vf-drop-s{color:var(--faint);font-size:11px;margin-top:3px}.vf-files{display:flex;flex-direction:column;gap:5px;margin-top:8px}.vf-file{align-items:center;background:var(--surf2);border:1px solid var(--line);border-radius:8px;color:var(--ink);display:flex;font-size:12px;gap:8px;justify-content:space-between;padding:6px 10px}.vf-file-n{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vf-file-x{background:var(--req);border:0;border-radius:50%;color:#fff;cursor:pointer;display:grid;flex:none;font-size:12px;height:18px;padding:0;place-items:center;width:18px}body.dark .vf-ctrl,body.dark .vf-sel,body.dark .vf-ta{color-scheme:dark}.vf-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.vf-chip{align-items:center;background:var(--brand);border-radius:999px;color:#fff;display:inline-flex;font-size:11.5px;font-weight:600;gap:5px;padding:4px 6px 4px 11px}.vf-chip.team{background:var(--ok)}.vf-chip-x{background:#0000;border:0;color:#fff;cursor:pointer;font-size:14px;line-height:1;padding:0}.vf-pick{background:var(--surf);border:1px solid var(--line);border-radius:12px;max-height:170px;overflow-y:auto}.vf-pick-item{align-items:center;border-bottom:1px solid var(--line-soft);color:var(--ink);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:9px 12px}.vf-pick-item:last-child{border-bottom:0}.vf-pick-item.on{background:var(--brand-soft)}.vf-pick-item input[type=checkbox]{accent-color:var(--brand);flex:none;height:15px;margin:0;width:15px}.vf-pick-name{flex:1 1}.vf-pick-item.on .vf-pick-name{font-weight:700}.vf-pick-sub{color:var(--faint);font-size:11px}.vf-pick-empty{color:var(--faint);font-size:12px;padding:10px 12px;text-align:center}.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{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:32px;margin:0 auto 16px;width:32px}.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;font-weight:600}.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-list{display:flex;flex-direction:column;gap:8px}.attachment-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#374151;display:flex;gap:8px;padding:12px 16px;text-decoration:none;transition:all .2s}.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}}.request-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.request-tasks-modal{background:#fff;border-radius:10px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;height:75vh;max-height:75vh;max-width:700px;overflow:hidden;width:90%}.request-modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e9ecef;color:#fff;display:flex;flex-shrink:0;justify-content:space-between;padding:12px 16px}.request-modal-title{align-items:center;display:flex;gap:8px}.request-modal-title h2{font-size:1.1rem;font-weight:600;margin:0}.request-task-count{background:#fff3;border-radius:10px;font-size:.8rem;font-weight:500;padding:2px 6px}.request-modal-close-btn{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.2rem;padding:4px;transition:background-color .2s}.request-modal-close-btn:hover{background-color:#ffffff1a}.request-modal-filters{background-color:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;flex-shrink:0;gap:12px;padding:8px 16px}.request-filter-group{align-items:center;display:flex;gap:6px}.request-filter-group label{color:#495057;font-size:.8rem;font-weight:500}.request-filter-group select{background:#fff;border:1px solid #ced4da;border-radius:4px;font-size:.8rem;min-width:100px;padding:4px 8px}.request-modal-content{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0}.request-modal-content::-webkit-scrollbar{width:8px}.request-modal-content::-webkit-scrollbar-track{background:#f1f1f1}.request-modal-content::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.request-modal-content::-webkit-scrollbar-thumb:hover{background:#555}.request-loading-state{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:40px 16px}.request-loading-spinner{animation:request-spin 1s linear infinite;border:2px solid #f3f4f6;border-radius:50%;border-top-color:#667eea;height:32px;margin-bottom:12px;width:32px}@keyframes request-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.request-empty-state{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:40px 16px;text-align:center}.request-empty-icon{font-size:2.5rem;margin-bottom:12px;opacity:.5}.request-empty-state h3{color:#495057;font-size:.95rem;margin:0 0 6px}.request-empty-state p{font-size:.8rem;margin:0}.request-tasks-table{border-collapse:collapse;font-size:.85rem;table-layout:auto;width:100%}.request-tasks-table thead{background:#f8f9fa;position:-webkit-sticky;position:sticky;top:0;z-index:1}.request-tasks-table th{border-bottom:2px solid #e9ecef;color:#495057;font-size:.8rem;font-weight:600;padding:12px 10px;text-align:left;white-space:nowrap}.request-tasks-table td{border-bottom:1px solid #f0f0f0;color:#212529;padding:12px 10px;vertical-align:middle}.request-task-row{cursor:pointer;transition:background .15s ease}.request-task-row:hover{background:#f8f9ff}.request-tasks-table .col-status{text-align:center;width:55px}.request-tasks-table .col-priority{text-align:center;width:50px}.request-tasks-table .col-reporter{width:80px}.request-tasks-table .col-due{white-space:nowrap;width:90px}.task-title-cell{color:#2c3e50;font-weight:600;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-image-inline{align-items:center;display:inline-flex;gap:4px}.request-priority-badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:600;line-height:1.2;padding:3px 8px;text-align:center}.request-priority-badge.priority-low{background-color:#e0f2fe!important;color:#0369a1!important}.request-priority-badge.priority-normal{background-color:#dcfce7!important;color:#166534!important}.request-priority-badge.priority-high{background-color:#fef3c7!important;color:#92400e!important}.request-priority-badge.priority-urgent{background-color:#fee2e2!important;color:#dc2626!important}.request-category-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 8px;text-transform:capitalize}.request-task-title{border-bottom:2px solid #e9ecef;color:#0d6efd;font-size:1.1rem;font-weight:700;line-height:1.4;margin:0 0 12px;padding-bottom:8px}.request-status-badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:600;line-height:1.2;padding:3px 8px;text-align:center;white-space:nowrap}.request-status-badge.requested{background-color:#fef3c7!important;color:#92400e!important}.request-status-badge.in_progress{background-color:#dbeafe!important;color:#1d4ed8!important}.request-status-badge.completed{background-color:#dcfce7!important;color:#166534!important}.request-task-description{color:#212529;font-size:.85rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.request-task-meta{display:flex;flex-wrap:wrap;font-size:.85rem;gap:20px}.request-meta-item{display:flex;gap:6px}.request-meta-label{color:#6c757d;font-weight:500}.request-meta-value{color:#495057}.request-meta-value.request-due-date{font-weight:500}.request-modal-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;flex-shrink:0;gap:10px;justify-content:flex-end;padding:12px 16px}.request-btn-primary,.request-btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px;transition:all .2s}.request-btn-secondary{background-color:#6c757d;color:#fff}.request-btn-secondary:hover{background-color:#5a6268}.request-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.request-btn-primary:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}@media (max-width:768px){.request-tasks-modal{max-height:90vh;max-width:none;width:95%}.request-modal-header{padding:10px 12px}.request-modal-title h2{font-size:1rem}.request-modal-filters{flex-direction:column;gap:8px;padding:8px 12px}.request-tasks-table td,.request-tasks-table th{font-size:.7rem;padding:8px 4px}.col-due,.col-reporter{display:none}.task-title-cell{max-width:150px}.request-modal-footer{flex-direction:column;padding:10px 12px}.request-btn-primary,.request-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%}}.mobile-calendar{--surf:#fff;--line:#e7ecf3;--line-soft:#f0f3f8;--ink:#1b2533;--muted:#5e6b7e;--faint:#9aa6b6;--brand:#2b6ae8;--brand-dark:#1a53c0;--brand-soft:#ecf2fe;--brand-tint:#f5f8fe;--sun:#e5484d;--sat:#3b6fe0;--vac:#22c55e;--meet:#4d8df5;--deliv:#f5a623;--claim:#ef4444;--vac-bg:#e7f8ee;--meet-bg:#e9f1fe;--deliv-bg:#fcf1dc;--claim-bg:#fdecec;background:var(--surf);border:1px solid var(--line);border-radius:16px;color:var(--ink);overflow:hidden}.mobile-calendar .mc-top{align-items:center;display:flex;gap:10px;padding:14px 14px 10px}.mobile-calendar .mc-nav{background:#0000;border:1px solid var(--line);border-radius:10px;color:var(--muted);cursor:pointer;display:grid;flex:none;font-size:16px;height:34px;place-items:center;width:34px}.mobile-calendar .mc-nav:active{background:var(--brand-tint)}.mobile-calendar .mc-title{flex:1 1;text-align:center}.mobile-calendar .mc-month{font-size:16px;font-weight:800;letter-spacing:-.01em}.mobile-calendar .mc-today{color:var(--brand);font-size:11px;font-weight:700;margin-top:1px}.mobile-calendar .mc-seg{background:var(--brand-tint);border:1px solid var(--line);border-radius:11px;display:flex;margin:0 14px 10px;padding:3px}.mobile-calendar .mc-seg button{background:#0000;border:0;border-radius:8px;color:var(--muted);cursor:pointer;flex:1 1;font-size:13px;font-weight:700;height:30px}.mobile-calendar .mc-seg button.on{background:var(--surf);box-shadow:0 1px 3px #0000001f;color:var(--brand-dark)}.mobile-calendar .mc-addrow{display:flex;gap:8px;margin:0 14px 12px}.mobile-calendar .mc-addrow button{border:0;border-radius:11px;color:#fff;cursor:pointer;flex:1 1;font-size:13px;font-weight:700;height:38px}.mobile-calendar .mc-addrow .vacb{background:var(--vac)}.mobile-calendar .mc-addrow .schb{background:var(--brand)}.mobile-calendar .mc-addrow button:active{transform:scale(.97)}.mobile-calendar .mc-wk{display:grid;grid-template-columns:repeat(7,1fr);padding:0 6px}.mobile-calendar .mc-wk span{color:var(--faint);font-size:11px;font-weight:700;padding:5px 0;text-align:center}.mobile-calendar .mc-wk span.s0{color:var(--sun)}.mobile-calendar .mc-wk span.s6{color:var(--sat)}.mobile-calendar .mc-grid{grid-gap:1px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);padding:0 6px 8px}.mobile-calendar .mc-cell{align-items:center;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:3px;height:44px;padding-top:5px}.mobile-calendar .mc-cell:active{background:var(--brand-tint)}.mobile-calendar .mc-cell .dnum{border-radius:50%;color:var(--ink);display:grid;font-size:13px;font-weight:600;height:24px;line-height:1;place-items:center;width:24px}.mobile-calendar .mc-cell.out .dnum{color:var(--faint);opacity:.5}.mobile-calendar .mc-cell.sun .dnum{color:var(--sun)}.mobile-calendar .mc-cell.sat .dnum{color:var(--sat)}.mobile-calendar .mc-cell.today .dnum{outline:2px solid var(--brand);outline-offset:-2px}.mobile-calendar .mc-cell.sel .dnum{background:var(--brand);color:#fff!important}.mobile-calendar .mc-cell .dots{align-items:center;display:flex;gap:3px;height:6px}.mobile-calendar .mc-cell .dots i{border-radius:50%;height:5px;width:5px}.mobile-calendar .dots i.vac{background:var(--vac)}.mobile-calendar .dots i.meet{background:var(--meet)}.mobile-calendar .dots i.deliv{background:var(--deliv)}.mobile-calendar .dots i.claim{background:var(--claim)}.mobile-calendar .mc-legend{border-top:1px solid var(--line-soft);display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0 14px;padding:8px 0}.mobile-calendar .mc-legend span{align-items:center;color:var(--muted);display:inline-flex;font-size:11px;font-weight:600;gap:5px}.mobile-calendar .mc-legend i{border-radius:50%;height:7px;width:7px}.mobile-calendar .mc-legend i.vac{background:var(--vac)}.mobile-calendar .mc-legend i.meet{background:var(--meet)}.mobile-calendar .mc-legend i.deliv{background:var(--deliv)}.mobile-calendar .mc-legend i.claim{background:var(--claim)}.mobile-calendar .mc-agenda,.mobile-calendar .mc-list{padding:4px 14px 16px}.mobile-calendar .mc-ag-h{align-items:center;display:flex;justify-content:space-between;margin:6px 0 10px}.mobile-calendar .mc-ag-h .d{font-size:14px;font-weight:800}.mobile-calendar .mc-ag-h .c{background:var(--brand-soft);border-radius:999px;color:var(--brand);font-size:12px;font-weight:700;padding:3px 9px}.mobile-calendar .mc-ld{color:var(--faint);font-size:12px;font-weight:800;margin:12px 2px 8px}.mobile-calendar .mc-ev{align-items:center;background:var(--brand-tint);border-radius:12px;cursor:pointer;display:flex;gap:11px;margin-bottom:8px;padding:10px 12px}.mobile-calendar .mc-ev:active{filter:brightness(.97)}.mobile-calendar .mc-ev-bar{align-self:stretch;border-radius:3px;flex:none;width:4px}.mobile-calendar .mc-ev-bar.vac{background:var(--vac)}.mobile-calendar .mc-ev-bar.meet{background:var(--meet)}.mobile-calendar .mc-ev-bar.deliv{background:var(--deliv)}.mobile-calendar .mc-ev-bar.claim{background:var(--claim)}.mobile-calendar .mc-ev-info{flex:1 1;min-width:0}.mobile-calendar .mc-ev-nm{color:var(--ink);font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-calendar .mc-ev-meta{color:var(--faint);font-size:12px;margin-top:1px}.mobile-calendar .mc-tg{border-radius:999px;flex:none;font-size:11px;font-weight:700;padding:3px 9px}.mobile-calendar .mc-tg.vac{background:var(--vac-bg);color:var(--vac)}.mobile-calendar .mc-tg.meet{background:var(--meet-bg);color:var(--meet)}.mobile-calendar .mc-tg.deliv{background:var(--deliv-bg);color:var(--deliv)}.mobile-calendar .mc-tg.claim{background:var(--claim-bg);color:var(--claim)}.mobile-calendar .mc-ag-empty{color:var(--faint);font-size:13px;font-weight:500;padding:24px 0;text-align:center}.mobile-calendar .mc-ag-empty .em{display:block;font-size:28px;margin-bottom:8px;opacity:.7}body.dark .mobile-calendar{--surf:#141d2b;--line:#26344a;--line-soft:#1c2839;--ink:#e7edf5;--muted:#a1b1c7;--faint:#6f8098;--brand:#5b8cf0;--brand-dark:#86a9f6;--brand-soft:#1c2e50;--brand-tint:#18253a;--sun:#f1737a;--sat:#7fa6f5;--vac-bg:#13301f;--meet-bg:#16294d;--deliv-bg:#352816;--claim-bg:#2a1717;background:var(--surf)!important;border-color:var(--line)!important}.dashboard{background:#0000;box-sizing:border-box;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;padding:0}.dashboard,.dashboard-main-container{display:flex;height:100%;min-height:0;overflow:hidden}.dashboard-main-container{flex:1 1;gap:0}.dashboard-content-area{align-items:stretch;display:flex;flex:1 1;flex-direction:row;gap:20px;height:100%;min-width:0;overflow-y:auto;padding:10px}.dashboard-left-column{display:flex;flex-direction:column;flex-shrink:0;gap:16px;max-height:100%;min-width:400px;overflow-y:auto;padding-right:8px;width:400px}.dashboard-right-column{display:flex;flex:1 1 auto;flex-direction:column;height:100%;min-width:0}.dashboard-top-section{grid-gap:20px;display:grid;flex:0 0 auto;gap:20px;grid-template-columns:1fr 1fr;max-height:250px}.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}.memo-section.collapsible{height:auto}.dashboard-section-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:8px;padding-bottom:6px}.dashboard-section-header h3{color:#1e3c72;font-size:1.1rem;font-weight:600;margin:0}.dashboard-edit-btn{background:none;border:1px solid #e2e8f0;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.875rem;padding:6px 12px;transition:all .2s}.dashboard-edit-btn:hover{background:#f8fafc;border-color:#1e3c72;color:#1e3c72}.dashboard-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}.dashboard-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;color:#6b7280;display:flex;font-size:.875rem;justify-content:center;padding:32px;text-align:center}.no-notices p{margin:0}.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}.duty-content{scrollbar-color:#cbd5e1 #f1f5f9;scrollbar-width:thin}.duty-content::-webkit-scrollbar{width:6px}.duty-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.duty-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.duty-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.cleaning-duties-list{scrollbar-color:#c7d2fe #f3f4f6;scrollbar-width:thin}.cleaning-duties-list::-webkit-scrollbar{width:6px}.cleaning-duties-list::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.cleaning-duties-list::-webkit-scrollbar-thumb{background:#c7d2fe;border-radius:3px}.cleaning-duties-list::-webkit-scrollbar-thumb:hover{background:#a5b4fc}.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}.notice-image-section{background:linear-gradient(180deg,#fff,#f8fafc);border-right:2px solid #e2e8f0;box-shadow:4px 0 24px #0000000f;display:flex;flex-direction:column;flex-shrink:0;height:100%;max-width:420px;min-width:420px;overflow:hidden;padding:20px;position:relative;width:420px}.full-notice-btn{background:linear-gradient(135deg,#667eea,#764ba2)!important;border:none!important;color:#fff!important}.full-notice-btn:hover{background:linear-gradient(135deg,#764ba2,#667eea)!important;transform:translateY(-2px)}.upload-notice-btn{background:linear-gradient(135deg,#10b981,#059669)!important;border:none!important;color:#fff!important}.upload-notice-btn:hover{background:linear-gradient(135deg,#059669,#047857)!important;transform:translateY(-2px)}.delete-notice-btn{background:linear-gradient(135deg,#ef4444,#dc2626)!important;border:none!important;color:#fff!important;padding:6px 10px!important}.delete-notice-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;transform:translateY(-2px)}.shift-schedule-btn{background:linear-gradient(135deg,#f59e0b,#d97706)!important;border:none!important;color:#fff!important}.shift-schedule-btn:hover{background:linear-gradient(135deg,#d97706,#b45309)!important;transform:translateY(-2px)}.tasks-summary{display:flex;flex:1 1;flex-direction:column;gap:20px;max-width:450px;min-width:350px}.calendar-container{display:flex;flex:1.2 1;flex-direction:column;min-height:500px}.dashboard-stats-section,.request-tasks-section,.urgent-alerts-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden;padding:20px}.dashboard-stats-section.compact{padding:16px}@media (max-width:768px){.dashboard-stats-section.compact{padding:10px}}@media (max-width:480px){.dashboard-stats-section.compact{padding:8px}}.dashboard-stats-section .stats-grid-compact{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.dashboard-stats-section .stat-card-compact{align-items:center;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex:0 1 auto;flex-direction:column;min-width:70px;padding:12px 16px;transition:all .3s ease}.dashboard-stats-section .stat-card-compact:hover{box-shadow:0 3px 10px #00000026;transform:translateY(-2px)}.dashboard-stats-section .stat-card-compact.requested{background:linear-gradient(135deg,#f59e0b,#d97706)!important;border:1px solid #fef3c7;color:#fff!important}.dashboard-stats-section .stat-card-compact.in-progress{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;border:1px solid #dbeafe;color:#fff!important}.dashboard-stats-section .stat-card-compact.completed{background:linear-gradient(135deg,#10b981,#059669)!important;border:1px solid #d1fae5;color:#fff!important}.dashboard-stats-section .stat-card-compact.total{background:linear-gradient(135deg,#7c3aed,#6d28d9)!important;border:1px solid #ede9fe;color:#fff!important}.dashboard-stats-section .stat-card-compact .stat-number{color:#fff!important;font-size:1.6rem;font-weight:800;margin-bottom:4px;text-shadow:0 1px 2px #0000001a}.dashboard-stats-section .stat-card-compact .stat-label{color:#fff!important;font-size:.75rem;font-weight:600;letter-spacing:.3px}.dashboard-stats-section .stat-card-compact.completed .stat-label,.dashboard-stats-section .stat-card-compact.completed .stat-number,.dashboard-stats-section .stat-card-compact.in-progress .stat-label,.dashboard-stats-section .stat-card-compact.in-progress .stat-number,.dashboard-stats-section .stat-card-compact.requested .stat-label,.dashboard-stats-section .stat-card-compact.requested .stat-number,.dashboard-stats-section .stat-card-compact.total .stat-label,.dashboard-stats-section .stat-card-compact.total .stat-number{color:#fff!important}.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;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#4facfe,#00f2fe);border-radius:4px;height:100%;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;font-style:italic}.no-alerts{color:#10b981;padding:30px 20px;text-align:center}.no-alerts p{font-size:1.1rem;font-weight:500;margin:0}.dashboard-request-tasks-list{display:flex;flex-direction:column;gap:12px}.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}.no-requests p{font-size:.9rem}.vacation-calendar-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #00000014;display:flex;flex:1 1;flex-direction:column;min-height:500px;overflow:hidden;padding:16px}.notice-image-container{align-items:center;background:linear-gradient(135deg,#667eea15,#764ba215);border:2px dashed #e2e8f0;border-radius:16px;display:flex;flex:1 1;justify-content:center;overflow:hidden;position:relative;transition:all .3s ease}.notice-image-container:hover{background:linear-gradient(135deg,#667eea25,#764ba225);border-color:#667eea;transform:scale(1.01)}.notice-image{border-radius:12px;height:100%;object-fit:contain;transition:transform .3s ease;width:100%}.notice-image:hover{transform:scale(1.02)}.notice-image-placeholder{align-items:center;color:#9ca3af;display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px;text-align:center}.notice-image-placeholder p:first-child{filter:grayscale(1);font-size:5rem;margin:0 0 20px;opacity:.5}.notice-image-placeholder p:last-child{color:#6b7280;font-size:1.1rem;font-weight:500;margin:0}.notice-image-controls{align-items:center;display:flex;gap:8px}.notice-upload-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;overflow:hidden;padding:10px 20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.notice-upload-btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.notice-upload-btn:hover:before{left:100%}.notice-upload-btn:hover{box-shadow:0 6px 20px #667eea80;transform:translateY(-3px)}.notice-upload-btn:active{transform:translateY(-1px)}.notice-delete-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;box-shadow:0 4px 12px #ef44444d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.notice-delete-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 20px #ef444480;transform:translateY(-3px)}.notice-delete-btn:active{transform:translateY(-1px)}.image-modal-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-modal-content{align-items:flex-start;box-sizing:border-box;display:flex;height:95vh;justify-content:center;overflow:auto;padding:20px;position:relative;width:65vw}.image-modal-img{border-radius:8px;box-shadow:0 8px 32px #00000080;cursor:zoom-in;height:auto;min-width:100%;object-fit:contain;width:auto}.image-modal-close{align-items:center;background:#fff;border:none;border-radius:50%;box-shadow:0 2px 8px #0000004d;color:#333;cursor:pointer;display:flex;font-size:20px;height:36px;justify-content:center;position:absolute;right:-40px;top:-40px;transition:all .2s;width:36px}.image-modal-close:hover{background:#f3f4f6;transform:scale(1.1)}@media (max-width:768px){.image-modal-close{right:10px;top:10px}.image-modal-content{max-height:95vh;max-width:95vw}}.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:1px solid #e2e8f0;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{display:flex;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}.dashboard-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}.dashboard-add-vacation-btn:hover{box-shadow:0 4px 20px #667eea66;transform:translateY(-2px)}.dashboard-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{display:flex;flex:1 1 auto;flex-direction:column;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);grid-template-rows:repeat(6,minmax(0,1fr));min-height:0}.calendar-day{background:#fafbfc;border:1px solid #f3f4f6;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;min-height:0;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}.company-event-indicators{display:flex;flex-direction:column;gap:2px;margin-top:2px;max-width:100%}.company-event-bar{background:#ff6b6b;border-radius:3px;box-sizing:border-box;color:#fff;cursor:pointer;font-size:.6rem;font-weight:600;max-width:100%;overflow:hidden;padding:2px 4px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.section-title{color:#1e3c72;font-size:1.5rem;font-weight:700;margin:0 0 24px;text-align:center}.stat-item{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:10px;display:flex;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;font-weight:500;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{display:flex;flex-direction:column;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}.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}.task-title{color:#1e3c72;font-size:1.1rem;font-weight:600;line-height:1.4;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}.notice-image-section{min-height:300px;min-width:100%;order:1}.tasks-summary{max-width:none;min-width:100%;order:2}.calendar-container{order:3}.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{height:auto;min-height:calc(100vh - 120px);overflow-y:auto;padding:8px}.dashboard-content-area,.dashboard-main-container{height:auto;overflow:visible}.dashboard-content-area{flex-direction:column;gap:12px;padding:8px}.dashboard-left-column{gap:12px;max-height:none;min-width:100%;order:2;overflow-y:visible;padding-right:0;width:100%}.dashboard-right-column{height:auto;order:1;width:100%}.calendar-container{height:auto}.dashboard-top-section{gap:8px;grid-template-columns:1fr;margin-bottom:8px;max-height:none;min-height:auto}.dashboard-bottom-section{flex-direction:column;gap:8px}.notice-image-section{min-height:250px;min-width:100%;order:1}.tasks-summary{gap:8px;max-width:none;min-width:100%;order:2}.stats-grid{gap:8px;grid-template-columns:1fr}.dashboard-stats-section,.in-progress-section,.memo-section,.my-requests-section,.notice-image-section,.notices-section,.request-tasks-section,.today-tasks-section,.vacation-calendar-section{border-radius:10px;padding:12px}.memo-section,.notices-section{height:auto}.dashboard-section-header{flex-wrap:wrap;gap:8px;margin-bottom:10px;padding-bottom:8px}.dashboard-section-header h3{flex:1 1;font-size:1rem;min-width:100px}.dashboard-section-header>div{display:flex;flex-wrap:wrap;gap:6px}.dashboard-stats{flex-wrap:wrap;gap:8px;justify-content:center;padding:10px}.stat-item{min-width:65px;padding:10px}.stat-number{font-size:1.6rem;margin-bottom:3px}.stat-label{font-size:.8rem}.stats-grid-compact{flex-wrap:nowrap;gap:6px;justify-content:space-between}.stat-card-compact{flex:1 1;max-width:none;min-width:60px;padding:10px 8px}.stat-card-compact .stat-number{font-size:1.3rem;margin-bottom:4px}.stat-card-compact .stat-label{font-size:.7rem}.today-task-item{flex-direction:column;gap:8px}.dashboard-request-tasks-list{gap:10px;max-height:none}.request-task-item{flex-wrap:wrap;gap:10px;padding:12px}.request-task-item .task-header{flex-direction:row;gap:8px;width:100%}.request-task-item .task-content{width:100%}.request-task-item .task-title{font-size:.95rem;margin-bottom:6px}.request-task-item .task-meta{flex-wrap:wrap;font-size:.75rem;gap:6px}.request-task-item .task-id{font-size:.7rem;padding:3px 6px}.request-task-item .priority-badge,.request-task-item .status-badge{font-size:.7rem;padding:4px 8px}.request-task-item .task-status{display:flex;justify-content:flex-end;margin-top:4px;width:100%}.vacation-calendar-section{height:auto;min-height:auto;padding:10px!important}.vacation-calendar-section .dashboard-section-header{align-items:stretch;flex-direction:column;gap:10px}.vacation-controls{align-items:center;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:space-between;width:100%}.dashboard-add-vacation-btn{font-size:.8rem!important;padding:8px 12px!important;white-space:nowrap}.calendar-controls{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:8px;width:100%}.calendar-controls span{font-size:.9rem;font-weight:600;min-width:90px;text-align:center}.calendar-controls button{border-radius:6px;font-size:.9rem;padding:6px 12px}.calendar{width:100%}.calendar-weekdays{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.calendar-weekdays>div{font-size:.75rem;font-weight:600;padding:6px 2px;text-align:center}.calendar-days{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.calendar-day{align-items:center;display:flex;flex-direction:column;min-height:50px;padding:3px}.day-number{font-size:.8rem;font-weight:600;margin-bottom:2px}.vacation-dot{min-width:14px}.company-event-bar,.vacation-dot{font-size:.5rem;max-width:100%;overflow:hidden;padding:1px 3px;text-overflow:ellipsis;white-space:nowrap}.more-vacations{font-size:.5rem;padding:1px 2px}.day-detail-modal{max-height:80vh;max-width:400px}.day-detail-modal h3{font-size:1rem;margin-bottom:12px}.day-detail-item{font-size:.85rem;margin-bottom:6px;padding:8px}.tasks-list{gap:8px}.task-card,.tasks-list{padding:10px}.dashboard-add-vacation-btn{flex:1 1;font-size:.9rem;padding:10px 16px;width:auto}.notice-item{padding:12px}.notice-header{align-items:flex-start;flex-direction:column;gap:6px;margin-bottom:8px}.notice-header h4{font-size:.95rem}.notice-item p{font-size:.85rem;line-height:1.5}.notice-date{font-size:.75rem}.important-badge{font-size:.7rem;padding:3px 8px}.notices-list{gap:10px}.memo-display,.memo-textarea{font-size:.85rem;min-height:100px;padding:10px}.dashboard-edit-btn,.dashboard-view-all-btn{font-size:.75rem;padding:6px 10px}.no-notices,.no-requests{padding:20px 15px}.no-notices p,.no-requests p{font-size:.85rem}.duty-content{max-height:none!important}.duty-section h4{font-size:.95rem!important}.modal-overlay{padding:10px}.day-detail-modal{max-height:90vh!important;padding:16px!important;width:95%!important}.image-modal-content{height:auto;max-height:90vh;width:95vw}.image-modal-close{font-size:18px;height:32px;right:10px;top:10px;width:32px}}@media (max-width:480px){.dashboard{padding:6px}.dashboard-content-area{gap:10px;padding:6px}.dashboard-left-column{gap:10px}.dashboard-top-section{gap:6px;margin-bottom:6px;min-height:auto}.dashboard-bottom-section,.tasks-summary{gap:6px}.dashboard-stats{flex-direction:row;gap:6px;padding:8px}.stat-item{min-width:55px;padding:8px 6px}.stat-number{font-size:1.4rem;margin-bottom:2px}.stat-label{font-size:.7rem}.stats-grid-compact{flex-wrap:nowrap;gap:4px}.stat-card-compact{flex:1 1;max-width:none;min-width:50px;padding:8px 6px}.stat-card-compact .stat-number{font-size:1.1rem;margin-bottom:2px}.stat-card-compact .stat-label{font-size:.6rem}.dashboard-stats-section,.memo-section,.notices-section,.request-tasks-section,.today-tasks-section,.vacation-calendar-section{border-radius:8px;padding:10px}.dashboard-section-header{margin-bottom:8px;padding-bottom:6px}.dashboard-section-header h3{font-size:.9rem}.dashboard-edit-btn,.dashboard-view-all-btn{font-size:.7rem;padding:5px 8px}.notices-list{gap:8px}.notice-item{padding:10px}.notice-header{margin-bottom:6px}.notice-header h4{font-size:.9rem}.notice-item p{font-size:.8rem;line-height:1.4}.notice-date{font-size:.7rem}.important-badge{font-size:.65rem;padding:2px 6px}.memo-display,.memo-textarea{font-size:.8rem;min-height:90px;padding:8px}.dashboard-request-tasks-list{gap:8px;max-height:none}.request-task-item{gap:8px;padding:10px}.request-task-item .task-header{gap:6px}.request-task-item .task-id{font-size:.65rem;padding:2px 5px}.request-task-item .task-title{font-size:.9rem;margin-bottom:4px}.request-task-item .task-meta{font-size:.7rem;gap:4px}.request-task-item .priority-badge,.request-task-item .status-badge{font-size:.65rem;padding:3px 6px}.vacation-calendar-section{min-height:auto}.vacation-controls{gap:8px}.vacation-controls .dashboard-add-vacation-btn{font-size:.8rem;padding:8px 12px}.calendar-controls{gap:10px}.calendar-controls button{font-size:.9rem;padding:6px 12px}.calendar-controls span{font-size:.85rem;min-width:90px}.calendar-weekdays>div{font-size:.75rem;padding:6px 2px}.calendar-days{gap:3px}.calendar-day{min-height:52px;padding:3px}.day-number{font-size:.8rem;font-weight:600;margin-bottom:2px}.vacation-dot{min-width:14px}.company-event-bar,.vacation-dot{font-size:.5rem;padding:1px 3px}.more-vacations{font-size:.5rem;min-width:14px}.task-card{padding:8px}.task-title{font-size:.9rem;margin-bottom:6px}.task-description{font-size:.75rem;margin-bottom:10px}.task-meta{font-size:.7rem;padding-top:10px}.no-notices,.no-requests{padding:15px 10px}.no-notices p,.no-requests p{font-size:.8rem}.duty-section{padding:8px 0}.duty-section h4{font-size:.9rem!important}.modal{margin:10px;max-width:95%!important}.modal-header h2{font-size:1rem}}.vacation-legend{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:16px;margin-bottom:12px;padding:8px 12px}.legend-item{align-items:center;color:#475569;display:flex;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)}.collapsible{transition:all .3s ease}.collapsible.collapsed{padding-bottom:0!important}.collapsible.collapsed .duty-content,.collapsible.collapsed .notices-list{display:none}.collapse-icon{color:#6b7280;display:inline-block;font-size:.8rem;transition:transform .3s ease}.collapse-icon.expanded{transform:rotate(90deg)}.dashboard-section-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.dashboard-section-header.clickable:hover{background:#f8fafc;border-radius:6px;margin:-4px;padding:4px 4px 10px}.leejin-hero-banner{align-items:center;background:linear-gradient(135deg,#fff7e6,#ffe9b8);border:1px solid #f5d782;border-radius:12px;box-shadow:0 2px 8px #eab30826;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px;padding:14px 18px}.leejin-hero-content{align-items:center;display:flex;gap:14px;min-width:0}.leejin-hero-trophy{flex-shrink:0;font-size:1.8rem}.leejin-hero-text{display:flex;flex-direction:column;gap:2px;min-width:0}.leejin-hero-title{color:#b45309;font-size:.78rem;font-weight:600;letter-spacing:.02em}.leejin-hero-names{color:#92400e;font-size:1.1rem;font-weight:700;word-break:keep-all}.leejin-hero-empty{color:#c2a36b;font-size:.9rem;font-weight:500}.leejin-hero-message{color:#a16207;font-size:.8rem;margin-top:2px}.leejin-hero-edit-btn{background:#ffffffb3;border:1px solid #e0b34d;border-radius:6px;color:#b45309;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:6px 14px;transition:background .15s ease}.leejin-hero-edit-btn:hover{background:#fff}.leejin-hero-banner{flex-wrap:wrap}.leejin-hero-actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:6px}.leejin-hero-result-btn,.leejin-hero-vote-btn{border:1px solid #0000;border-radius:6px;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;padding:6px 12px;transition:filter .15s ease,background .15s ease}.leejin-hero-vote-btn{background:#f59e0b;border-color:#d97706;color:#fff}.leejin-hero-vote-btn:hover{filter:brightness(1.05)}.leejin-hero-result-btn{background:#fff;border-color:#e0b34d;color:#b45309}.leejin-hero-result-btn:hover{background:#fffaf0}.dashboard-stats-section .stat-card-compact{border:1px solid #0000!important;border-radius:12px!important;box-shadow:none!important;min-width:76px;padding:14px 18px!important}.dashboard-stats-section .stat-card-compact:hover{box-shadow:0 3px 10px #0f172a12!important;transform:translateY(-1px)}.dashboard-stats-section .stat-card-compact .stat-number{font-size:1.75rem!important;text-shadow:none!important}.dashboard-stats-section .stat-card-compact .stat-label{color:#64748b!important;font-weight:600!important}.dashboard-stats-section .stat-card-compact.requested{background:#fff7ed!important;border-color:#fde7cf!important}.dashboard-stats-section .stat-card-compact.requested .stat-number{color:#ea7317!important}.dashboard-stats-section .stat-card-compact.in-progress{background:#eff6ff!important;border-color:#dbeafe!important}.dashboard-stats-section .stat-card-compact.in-progress .stat-number{color:#2563eb!important}.dashboard-stats-section .stat-card-compact.completed{background:#ecfdf5!important;border-color:#d1fae5!important}.dashboard-stats-section .stat-card-compact.completed .stat-number{color:#059669!important}.dashboard-stats-section .stat-card-compact.total{background:#f5f3ff!important;border-color:#e9e3ff!important}.dashboard-stats-section .stat-card-compact.total .stat-number{color:#7c3aed!important}.dashboard-section-header{border-bottom:1px solid #eef2f7!important;margin-bottom:12px!important;padding-bottom:8px!important}.dashboard-left-column>div{border-radius:14px}.company-event-bar{border-radius:5px;padding:2px 6px}.leejin-hero-banner{box-shadow:0 1px 3px #eab3081f}.dashboard-stats-section .stat-card-compact.completed .stat-label,.dashboard-stats-section .stat-card-compact.in-progress .stat-label,.dashboard-stats-section .stat-card-compact.requested .stat-label,.dashboard-stats-section .stat-card-compact.total .stat-label{color:#475569!important}body.dark .dashboard,body.dark .dashboard-bottom-section,body.dark .dashboard-content,body.dark .dashboard-content-area,body.dark .dashboard-left-column,body.dark .dashboard-main-container,body.dark .dashboard-right-column,body.dark .dashboard-stats-section,body.dark .dashboard-top-section,body.dark .status-columns{background:#0000!important;color:#e7edf5}body.dark .calendar-container,body.dark .cleaning-duties-list,body.dark .dashboard .stat-card,body.dark .dashboard-stats,body.dark .duty-content,body.dark .memo-content,body.dark .memo-display,body.dark .memo-section,body.dark .notices-section,body.dark .request-tasks-section,body.dark .status-column,body.dark .tasks-summary,body.dark .urgent-alerts-section,body.dark .vacation-calendar-section{background:#141d2b!important;border-color:#26344a!important;box-shadow:0 1px 2px #0006,0 8px 22px #0006;color:#e7edf5}body.dark .alert-item,body.dark .duty-item,body.dark .notice-item,body.dark .request-task-item,body.dark .stat-item,body.dark .task-card,body.dark .task-item,body.dark .today-task-item{background:#18253a!important;border-color:#26344a!important;color:#dce6f2}body.dark .notice-item:hover,body.dark .request-task-item:hover,body.dark .task-card:hover,body.dark .task-item:hover{background:#1f2f49!important}body.dark .alert-title,body.dark .dashboard-section-header,body.dark .day-number,body.dark .duty-content,body.dark .notice-header,body.dark .rate-header,body.dark .section-title,body.dark .section-title *,body.dark .stat-label,body.dark .stat-number,body.dark .task-title{color:#e7edf5!important}body.dark .alert-description,body.dark .completion-rate,body.dark .legend-item,body.dark .notice-date,body.dark .task-assignee,body.dark .task-dates,body.dark .task-description,body.dark .task-meta,body.dark .task-reporter{color:#9daac0!important}body.dark .no-alerts,body.dark .no-notices,body.dark .no-requests,body.dark .no-tasks{color:#6f8098!important}body.dark .calendar,body.dark .calendar-days,body.dark .calendar-weekdays{background:#0000!important}body.dark .calendar-weekdays .column-header,body.dark .column-header{background:#1b2839!important;border-color:#26344a!important;color:#a1b1c7!important}body.dark .calendar-day{background:#141d2b!important;border-color:#26344a!important;color:#c4d0e0!important}body.dark .calendar-day.selected,body.dark .calendar-day.today{background:#1c2e50!important}body.dark .calendar-day.other-month{background:#10192699!important;color:#56657c!important}body.dark .day-number{color:#c4d0e0!important}body.dark .more-tasks,body.dark .more-vacations{color:#9daac0!important}body.dark .leejin-hero-banner{background:linear-gradient(135deg,#2a2410,#3a310f)!important;border-color:#4a3d14!important;color:#f4e7c6!important}body.dark .leejin-hero-message,body.dark .leejin-hero-names,body.dark .leejin-hero-title{color:#f4e7c6!important}body.dark .cleaning-duties-list,body.dark .duty-content{color:#dce6f2}body.dark .progress-bar{background:#22304a!important}.day-detail-modal h3{font-size:16px!important}.day-detail-modal .dd-section{margin-bottom:12px!important}.day-detail-modal .dd-h{font-size:13.5px!important;margin:0 0 6px!important}.day-detail-modal .dd-item{border-radius:7px!important;margin-bottom:6px!important;padding:8px 10px!important}.day-detail-modal .dd-item div{line-height:1.35!important}.day-detail-modal .dd-empty{padding:14px!important}.day-detail-modal .dd-quote:hover{background:#fef3c7!important}body.dark .day-detail-modal{background:#141d2b!important;border:1px solid #26344a;color:#e7edf5!important}body.dark .day-detail-modal h3{color:#e7edf5!important}body.dark .day-detail-modal .dd-titlebar button{color:#c4d0e0!important}body.dark .day-detail-modal .dd-h{color:#86a9f6!important}body.dark .day-detail-modal .dd-empty{color:#9daac0!important}body.dark .day-detail-modal .dd-item{border-color:#2a3b55!important;color:#c4d0e0!important}body.dark .day-detail-modal .dd-item div{color:#b7c4d8!important}body.dark .day-detail-modal .dd-item div[style*=bold]{color:#f0f4fa!important}body.dark .day-detail-modal .dd-quote{background:#241f12!important}body.dark .day-detail-modal .dd-quote:hover{background:#2e2716!important}body.dark .day-detail-modal .dd-claim{background:#2a1717!important}body.dark .day-detail-modal .dd-vacation{background:#18253a!important}body.dark .dashboard-stats-section .stat-card-compact{border-color:#26344a!important}body.dark .dashboard-stats-section .stat-card-compact .stat-label{color:#aebbd0!important}body.dark .dashboard-stats-section .stat-card-compact.requested{background:#2a1e12!important;border-color:#3a2a16!important}body.dark .dashboard-stats-section .stat-card-compact.requested .stat-number{color:#f59e0b!important}body.dark .dashboard-stats-section .stat-card-compact.in-progress{background:#14243e!important;border-color:#1e3354!important}body.dark .dashboard-stats-section .stat-card-compact.in-progress .stat-number{color:#60a5fa!important}body.dark .dashboard-stats-section .stat-card-compact.completed{background:#10261c!important;border-color:#1a3a2a!important}body.dark .dashboard-stats-section .stat-card-compact.completed .stat-number{color:#34d399!important}body.dark .dashboard-stats-section .stat-card-compact.total{background:#1f1733!important;border-color:#2e2348!important}body.dark .dashboard-section-header h3,body.dark .dashboard-section-header h3 *{color:#e7edf5!important}body.dark .dashboard-view-all-btn{background:#22304a!important;border-color:#2c3b52!important;color:#d7e0ec!important}body.dark .dashboard-view-all-btn:hover{background:#2a3b57!important}body.dark .duty-content,body.dark .duty-content *,body.dark .request-task-item,body.dark .request-task-item *{color:#c8d3e2}body.dark .duty-content h4,body.dark .duty-content strong,body.dark .request-task-item .task-title{color:#eaf0f8!important}body.dark .duty-content p{color:#9daac0!important}body.dark .duty-content .duty-info span{background:#22304a!important;color:#dce6f2!important}body.dark .duty-content .duty-section{border-top-color:#26344a!important}body.dark .duty-content table{background:#141d2b!important;box-shadow:none!important}body.dark .duty-content table tbody tr{background:#152134!important}body.dark .duty-content table tbody tr:nth-child(2n){background:#1a2740!important}body.dark .duty-content table td{color:#c8d3e2!important}body.dark .duty-content table td:first-child{color:#eaf0f8!important}body.dark .mobile-calendar{background:#141d2b!important;border-color:#26344a!important;box-shadow:0 1px 2px #0006!important}body.dark .mobile-calendar .calendar-day,body.dark .mobile-calendar td{background:#141d2b!important;border-color:#26344a!important;color:#c4d0e0!important}body.dark .mobile-calendar .weekday,body.dark .mobile-calendar th{background:#1b2839!important;color:#a1b1c7!important}@media (max-width:768px){.dashboard{min-height:0!important;padding:6px!important}.dashboard,.dashboard-main-container{height:auto!important;overflow:visible!important}.dashboard-content-area{gap:8px!important;height:auto!important;overflow:visible!important;padding:6px!important}.dashboard-left-column,.dashboard-right-column{gap:8px!important;height:auto!important;max-height:none!important;overflow:visible!important}.leejin-hero-banner{margin-bottom:8px!important;padding:12px 14px!important}.calendar-container,.vacation-calendar-section{margin:0!important}.dashboard-section-header,.memo-section,.notices-section,.request-tasks-section,.stat-card,.tasks-summary,.urgent-alerts-section{margin-bottom:8px!important}.current-month,.mobile-calendar-title{font-size:15px!important}.month-nav-btn{font-size:14px!important;padding:6px 12px!important}.mobile-add-btn{font-size:12px!important;padding:6px 12px!important}.mobile-calendar-weekdays,.mobile-calendar-weekdays>*{font-size:11px!important}.date-cell{padding:3px!important}.date-cell .day-number,.date-cell .num,.date-cell>span:first-child{font-size:11px!important}.company-event-bar,.event-bar{font-size:9.5px!important;padding:1px 4px!important}.more-events{font-size:10px!important}.leejin-hero-title{font-size:11px!important}.leejin-hero-names{font-size:15px!important}.leejin-hero-message{font-size:12px!important}.leejin-hero-edit-btn,.leejin-hero-result-btn,.leejin-hero-vote-btn{font-size:12px!important;padding:6px 12px!important}.leejin-hero-trophy{font-size:28px!important}.dashboard-add-vacation-btn{font-size:12px!important;padding:6px 12px!important}.dashboard-section-header h3{font-size:14px!important}.dashboard-stats-section .stat-card-compact .stat-number{font-size:1.45rem!important}.dashboard-stats-section .stats-grid-compact{gap:6px!important;grid-template-columns:repeat(4,1fr)!important}.dashboard-stats-section .stat-card-compact{align-items:center;border-radius:9px!important;min-width:0!important;padding:8px 4px!important;text-align:center}.dashboard-stats-section .stat-card-compact .stat-number{font-size:1.15rem!important}.dashboard-stats-section .stat-card-compact .stat-label{font-size:10.5px!important}}.my-progress{margin-top:12px}.my-progress-label{color:#5e6b7e;display:flex;font-size:12px;font-weight:600;justify-content:space-between;margin-bottom:6px}.my-progress-label b{color:#16a34a}.my-progress-bar{background:#eef1f6;border-radius:5px;height:7px;overflow:hidden}.my-progress-bar i{background:linear-gradient(90deg,#16a34a,#22c55e);border-radius:5px;display:block;height:100%;transition:width .4s ease}body.dark .my-progress-label{color:#a1b1c7!important}body.dark .my-progress-label b{color:#22c55e!important}body.dark .my-progress-bar{background:#1b2738!important}.no-requests{color:#9aa6b6;padding:6px 0;text-align:center}.no-requests-emoji{display:block;font-size:30px;margin-bottom:8px;opacity:.6}.no-requests p{font-size:13.5px;font-weight:500;margin:0}body.dark .no-requests{color:#6f8098!important}@media (max-width:768px){.dashboard-stats-section .stats-grid-compact{gap:8px!important;grid-template-columns:repeat(4,1fr)!important}.dashboard-stats-section .stat-card-compact{align-items:center!important;border-radius:13px!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;padding:12px 6px!important;text-align:center!important}.dashboard-stats-section .stat-card-compact .stat-number{font-size:24px!important;font-weight:800!important;line-height:1!important}.dashboard-stats-section .stat-card-compact .stat-label{font-size:11.5px!important;font-weight:600!important;margin-top:5px!important}}.duty-content{--dsurf2:#f4f7fc;--dline:#e7ecf3;--dline-soft:#f0f3f8;--dink:#1b2533;--dmuted:#5e6b7e;--dfaint:#9aa6b6;--dbrand:#2b6ae8;--dbrand-dark:#1a53c0;--dbrand-soft:#ecf2fe;--dbrand-tint:#f5f8fe;--damber:#f5a623;--damber-bg:#fcf3e2;--dblue-bg:#e9f1fe}body.dark .duty-content{--dsurf2:#1b2738;--dline:#26344a;--dline-soft:#1f2c3e;--dink:#e7edf5;--dmuted:#a1b1c7;--dfaint:#6f8098;--dbrand-soft:#1c2e50;--dbrand-tint:#18253a;--damber-bg:#322715;--dblue-bg:#16294d}.duty-content .duty{padding:2px 0}.duty-content .duty+.duty{border-top:1px solid var(--dline-soft);margin-top:6px;padding-top:14px}.duty-content .duty .dtop{align-items:center;display:flex;gap:9px;margin-bottom:10px}.duty-content .duty .dico{border-radius:10px;display:grid;flex:none;font-size:17px;height:34px;place-items:center;width:34px}.duty-content .duty .dico.rice{background:var(--damber-bg)}.duty-content .duty .dico.clean{background:var(--dblue-bg)}.duty-content .duty .dname{color:var(--dink);font-size:14.5px;font-weight:800}.duty-content .duty .dwhen{color:var(--dfaint);font-size:11.5px;margin-top:1px}.duty-content .duty .dbtn{border:0;border-radius:9px;cursor:pointer;font-size:12.5px;font-weight:700;height:32px;margin-left:auto;padding:0 12px}.duty-content .duty .dbtn.menu{background:var(--damber);color:#3a2706}.duty-content .duty .people{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:9px}.duty-content .duty .chip{align-items:center;background:var(--dsurf2);border:1px solid var(--dline);border-radius:999px;color:var(--dink);display:inline-flex;font-size:13px;font-weight:600;gap:7px;padding:5px 12px 5px 5px}.duty-content .duty .chip .pa{background:var(--dbrand-soft);border-radius:50%;color:var(--dbrand-dark);display:grid;font-size:11px;font-weight:800;height:24px;place-items:center;width:24px}.duty-content .duty .drange{align-items:center;background:var(--dbrand-tint);border-radius:8px;color:var(--dmuted);display:inline-flex;font-size:12.5px;font-weight:600;gap:6px;padding:6px 10px}.duty-content .duty .dempty{color:var(--dfaint);font-size:13px;padding:4px 0 2px}.duty-content .duty .areas{border:1px solid var(--dline);border-radius:12px;margin-top:2px;overflow:hidden}.duty-content .duty .ahead{align-items:center;background:var(--dbrand-tint);border-bottom:1px solid var(--dline);color:var(--dfaint);display:flex;font-size:11px;font-weight:700;letter-spacing:.04em;padding:8px 13px}.duty-content .duty .ahead span:first-child{flex:1 1}.duty-content .duty .area{align-items:center;border-bottom:1px solid var(--dline-soft);display:flex;gap:10px;padding:10px 13px}.duty-content .duty .area:last-child{border-bottom:0}.duty-content .duty .area .an{color:var(--dink);flex:1 1;font-size:13.5px;font-weight:600}.duty-content .duty .area .aw{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.duty-content .duty .ac{background:var(--dbrand-soft);border-radius:8px;color:var(--dbrand-dark);font-size:12px;font-weight:700;padding:4px 9px}.duty-content .duty .ac.muted{background:var(--dsurf2);color:var(--dfaint)}body.dark .dashboard-stats-section .stat-card-compact{border:1px solid #0000!important;border-radius:13px!important;box-shadow:none!important}body.dark .dashboard-stats-section .stat-card-compact.requested{background:#322715!important}body.dark .dashboard-stats-section .stat-card-compact.requested .stat-number{color:#f5a623!important}body.dark .dashboard-stats-section .stat-card-compact.in-progress{background:#16294d!important}body.dark .dashboard-stats-section .stat-card-compact.in-progress .stat-number{color:#4d8df5!important}body.dark .dashboard-stats-section .stat-card-compact.completed{background:#13301f!important}body.dark .dashboard-stats-section .stat-card-compact.completed .stat-number{color:#22c55e!important}body.dark .dashboard-stats-section .stat-card-compact.total{background:#241c3d!important}body.dark .dashboard-stats-section .stat-card-compact.total .stat-number{color:#a78bfa!important}body.dark .dashboard-stats-section .stat-card-compact .stat-label{color:#a1b1c7!important}.dashboard-stats-section .stat-card-compact{padding:6px!important}.dashboard-stats-section .stats-grid-compact{align-items:start!important}.dashboard-stats-section .stat-card-compact{align-self:start!important;aspect-ratio:1/1!important;min-height:0!important}.dashboard-stats-section .stats-grid-compact{align-items:stretch!important}.dashboard-stats-section .stat-card-compact{align-items:center!important;align-self:stretch!important;aspect-ratio:auto!important;border-radius:13px!important;display:flex!important;flex-direction:column!important;gap:4px!important;height:auto!important;justify-content:center!important;min-height:64px!important;padding:12px 6px!important}.dashboard-stats-section .stat-card-compact .stat-number{font-size:22px!important;line-height:1!important}.dashboard-stats-section .stat-card-compact .stat-label{font-size:11.5px!important;margin-top:0!important}.dashboard-stats-section .stats-grid-compact{grid-gap:8px!important;display:grid!important;gap:8px!important;grid-template-columns:repeat(4,1fr)!important}.dashboard-stats-section .stat-card-compact{max-width:none!important;min-width:0!important;width:auto!important}.dashboard-left-column .dashboard-section-header h3{font-size:.95rem!important}.dashboard-left-column .dashboard-stats-section,.dashboard-left-column .dashboard-stats-section.compact,.dashboard-left-column .memo-section,.dashboard-left-column .request-tasks-section,.dashboard-left-column .urgent-alerts-section{padding:14px!important}.dashboard-left-column .stats-grid-compact{box-sizing:border-box!important;flex-wrap:nowrap!important;gap:8px!important;width:100%!important}.dashboard-left-column .stats-grid-compact .stat-card-compact{box-sizing:border-box!important;flex:1 1!important;min-width:0!important;padding:10px 6px!important}.dashboard-left-column{overflow:hidden!important}.dashboard-left-column .dashboard-stats-section,.dashboard-left-column .request-tasks-section{flex:0 0 auto!important}.dashboard-left-column .memo-section{display:flex!important;flex:1 1 auto!important;flex-direction:column!important;min-height:0!important}.dashboard-left-column .memo-section .duty-content{flex:1 1 auto!important;max-height:none!important;min-height:0!important;overflow-y:auto!important}.ai-todo-box{background:linear-gradient(180deg,#f6faff,#fff);border:1px solid #dbe6fb;border-radius:10px;margin:0 0 12px;padding:10px 12px}.ai-todo-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.ai-todo-title{color:#1e40af;font-size:.9rem;font-weight:700}.ai-todo-btn{background:#2563eb;border:0;border-radius:7px;color:#fff;cursor:pointer;font-size:.78rem;font-weight:700;padding:5px 12px;white-space:nowrap}.ai-todo-btn:hover:not(:disabled){background:#1d4ed8}.ai-todo-btn:disabled{cursor:default;opacity:.55}.ai-todo-hint{color:#64748b;font-size:.76rem;margin-top:7px}.ai-todo-err{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.8rem;margin-top:7px;padding:6px 9px}.ai-todo-text{background:#fff;border:1px solid #eef2f7;border-radius:8px;color:#1f2937;font-family:inherit;font-size:.82rem;line-height:1.55;margin:8px 0 0;padding:10px 12px;white-space:pre-wrap;word-break:break-word}body.dark .ai-todo-box{background:#101a2e;border-color:#26344a}body.dark .ai-todo-title{color:#7db0ff}body.dark .ai-todo-hint{color:#93a1b6}body.dark .ai-todo-text{background:#0e1828;border-color:#26344a;color:#d7e0ec}body.dark .ai-todo-err{background:#2a1416;border-color:#5b2626;color:#fca5a5}.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-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-group label{color:#374151;font-size:14px;font-weight:600}.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}@keyframes spin{0%{transform:translateY(-50%) rotate(0deg)}to{transform:translateY(-50%) rotate(1turn)}}.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}