:root{--primary-900: #0a1628;--primary-800: #0f1d32;--primary-700: #152a45;--primary-600: #1a3a5c;--primary-500: #1e4a73;--primary-400: #2d5a8a;--primary-300: #4a7ba8;--primary-200: #7ba3c7;--primary-100: #b3cce3;--accent-blue: #3b82f6;--accent-cyan: #06b6d4;--accent-teal: #14b8a6;--accent-green: #22c55e;--accent-yellow: #eab308;--accent-orange: #f97316;--accent-red: #ef4444;--accent-purple: #8b5cf6;--success: #22c55e;--warning: #eab308;--error: #ef4444;--info: #3b82f6;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--bg-primary: var(--primary-900);--bg-secondary: var(--primary-800);--bg-tertiary: var(--primary-700);--bg-card: var(--primary-800);--bg-hover: var(--primary-700);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--text-accent: var(--accent-blue);--border-color: var(--primary-600);--border-light: var(--primary-700);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary)}#root{min-height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--primary-600);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-500)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:600}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}a{color:var(--accent-blue);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-200)}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s ease}input,textarea,select{font-family:inherit;font-size:1rem;color:var(--text-primary);background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem 1rem;transition:all .2s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f633}input::placeholder,textarea::placeholder{color:var(--text-muted)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-accent{color:var(--text-accent)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.bg-card{background-color:var(--bg-card)}.card{background-color:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:500;border-radius:9999px;text-transform:uppercase;letter-spacing:.025em}.badge-success{background-color:#22c55e26;color:var(--success)}.badge-warning{background-color:#eab30826;color:var(--warning)}.badge-error{background-color:#ef444426;color:var(--error)}.badge-info{background-color:#3b82f626;color:var(--info)}.badge-pending{background-color:#64748b26;color:var(--gray-400)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-fadeIn{animation:fadeIn .3s ease-out}.animate-slideInUp{animation:slideInUp .4s ease-out}.animate-slideInLeft{animation:slideInLeft .4s ease-out}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary)}.loading-screen p{margin-top:1rem;font-size:.875rem;color:var(--text-secondary)}.spinner{width:40px;height:40px;border:3px solid var(--primary-700);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--primary-900) 0%,var(--primary-800) 50%,var(--primary-700) 100%)}.login-background{position:absolute;inset:0;overflow:hidden}.bg-shape{position:absolute;border-radius:50%;filter:blur(80px);opacity:.4}.bg-shape-1{width:600px;height:600px;background:var(--accent-blue);top:-200px;right:-100px;animation:float 20s ease-in-out infinite}.bg-shape-2{width:400px;height:400px;background:var(--accent-purple);bottom:-100px;left:-100px;animation:float 15s ease-in-out infinite reverse}.bg-shape-3{width:300px;height:300px;background:var(--accent-cyan);top:50%;left:50%;transform:translate(-50%,-50%);animation:pulse 10s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(30px,30px)}}@keyframes pulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.5}}.login-card{width:100%;max-width:440px;background:#0f1d32e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--primary-600);border-radius:20px;padding:2.5rem;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #3b82f61a;position:relative;z-index:10}.login-header{text-align:center;margin-bottom:2rem}.logo-container{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);border-radius:20px;margin-bottom:1.5rem;box-shadow:0 10px 30px #3b82f64d}.login-logo-image{width:58px;height:58px;border-radius:14px;object-fit:cover}.login-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.login-subtitle{color:var(--text-secondary);font-size:.875rem;letter-spacing:.05em;text-transform:uppercase}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-group input{width:100%;padding:.875rem 1rem;font-size:1rem;background:var(--primary-700);border:1px solid var(--primary-600);border-radius:10px;color:var(--text-primary);transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f633;background:var(--primary-600)}.form-group input::placeholder{color:var(--text-muted)}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:3rem}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.password-toggle:hover{color:var(--text-primary)}.input-trailing-icon{position:absolute;right:.9rem;top:50%;transform:translateY(-50%);color:var(--text-muted);display:inline-flex}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--error);padding:.75rem 1rem;border-radius:8px;font-size:.875rem;text-align:center}.login-button{width:100%;padding:1rem;font-size:1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);border:none;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s ease;margin-top:.5rem}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #3b82f64d}.login-button:disabled{opacity:.7;cursor:not-allowed}.spin{animation:spin 1s linear infinite}.login-footer{margin-top:2rem;text-align:center}.login-footer p{font-size:.75rem;color:var(--text-muted)}@media(max-width:480px){.login-card{padding:1.5rem;border-radius:16px}.logo-container{width:60px;height:60px;border-radius:16px}.login-header h1{font-size:1.5rem}}.layout{display:flex;min-height:100vh;background-color:var(--bg-primary)}.sidebar{position:fixed;left:0;top:0;bottom:0;width:260px;background-color:var(--bg-secondary);border-right:1px solid var(--border-light);display:flex;flex-direction:column;transition:all .3s ease;z-index:100}.sidebar.collapsed{width:72px}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid var(--border-light)}.logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}.logo-image{width:34px;height:34px;border-radius:8px;object-fit:cover;flex-shrink:0}.logo-text{font-size:1.25rem;font-weight:700;color:var(--text-primary);white-space:nowrap}.sidebar-toggle{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);padding:.5rem;border-radius:8px;cursor:pointer;transition:all .2s}.sidebar-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav{flex:1;padding:1rem .75rem;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--text-secondary);text-decoration:none;border-radius:10px;transition:all .2s ease;font-size:.9375rem;font-weight:500}.nav-item:hover{background-color:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:linear-gradient(135deg,#3b82f626,#8b5cf626);color:var(--accent-blue);border-left:3px solid var(--accent-blue)}.nav-item svg{flex-shrink:0}.nav-item span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-footer{padding:1rem;border-top:1px solid var(--border-light)}.itil-badge{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background:var(--bg-tertiary);border-radius:8px;font-size:.6875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.itil-badge .separator{color:var(--accent-blue)}.main-wrapper{flex:1;margin-left:260px;display:flex;flex-direction:column;transition:margin-left .3s ease}.sidebar.collapsed+.main-wrapper,.sidebar.collapsed~.main-wrapper{margin-left:72px}.top-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-light);z-index:50}.header-left{display:flex;align-items:center;gap:1rem}.mobile-menu-btn{display:none;background:none;border:none;color:var(--text-secondary);padding:.5rem;cursor:pointer}.page-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.header-right{display:flex;align-items:center;gap:1rem}.notif-menu{position:relative}.notif-trigger{position:relative;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);border-radius:10px;padding:.5rem;cursor:pointer}.notif-count{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:999px;background:#ef4444;color:#fff;font-size:.65rem;display:inline-flex;align-items:center;justify-content:center;font-weight:700;padding:0 4px}.notif-dropdown{position:absolute;top:calc(100% + .4rem);right:0;width:320px;border:1px solid var(--border-light);border-radius:12px;background:var(--bg-card);box-shadow:var(--shadow-lg);padding:.65rem}.notif-header{margin-bottom:.4rem;color:var(--text-primary)}.notif-empty{color:var(--text-muted);font-size:.8rem;margin-bottom:.55rem}.notif-list{list-style:none;display:grid;gap:.35rem;max-height:240px;overflow:auto;margin-bottom:.55rem}.notif-list li{border:1px solid var(--border-color);border-radius:8px;padding:.45rem;background:var(--bg-secondary);display:grid;gap:.1rem}.notif-list strong{color:var(--text-primary);font-size:.8rem}.notif-list span{color:var(--text-muted);font-size:.72rem}.notif-link{color:var(--accent-blue);text-decoration:none;font-size:.8rem;font-weight:600}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:10px;cursor:pointer;transition:all .2s}.user-menu-trigger:hover{border-color:var(--accent-blue)}.user-avatar{width:36px;height:36px;background:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;color:#fff}.user-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:240px;background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;box-shadow:var(--shadow-lg);overflow:hidden}.dropdown-header{padding:1rem}.user-email{font-size:.875rem;color:var(--text-primary);margin-bottom:.25rem}.user-role{font-size:.75rem;color:var(--text-muted)}.dropdown-divider{height:1px;background:var(--border-light)}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;color:var(--text-secondary);text-decoration:none;transition:all .2s;width:100%;background:none;border:none;cursor:pointer}.dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.dropdown-item.logout{color:var(--error)}.dropdown-item.logout:hover{background:#ef44441a;color:var(--error)}.main-content{flex:1;background-color:var(--bg-primary);overflow-x:hidden}.sidebar-overlay{display:none}@media(max-width:1024px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar.collapsed{transform:translate(-100%)}.main-wrapper{margin-left:0}.mobile-menu-btn{display:flex}.sidebar-overlay{display:block;position:fixed;inset:0;background:#00000080;z-index:90}}@media(max-width:768px){.top-header{padding:1rem}.user-name{display:none}.user-menu-trigger{padding:.375rem}}.stats-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;display:flex;align-items:flex-start;gap:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.stats-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-blue),var(--accent-purple));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.stats-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0000004d;border-color:var(--primary-500)}.stats-card:hover:before{transform:scaleX(1)}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-blue .stat-icon{background:#3b82f626;color:#3b82f6}.stat-purple .stat-icon{background:#8b5cf626;color:#8b5cf6}.stat-green .stat-icon{background:#22c55e26;color:#22c55e}.stat-orange .stat-icon{background:#f9731626;color:#f97316}.stat-cyan .stat-icon{background:#06b6d426;color:#06b6d4}.stat-content{flex:1;min-width:0}.stat-title{font-size:.8125rem;font-weight:500;color:var(--text-muted);margin-bottom:.25rem}.stat-value{font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1.2}.stat-trend{display:flex;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.75rem;color:var(--text-secondary)}.stat-trend .trend-up{color:var(--success)}.stat-trend .trend-down{color:var(--error)}.project-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-blue),var(--accent-purple));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.project-card:hover{border-color:var(--primary-500);box-shadow:0 20px 40px #0000004d;transform:translateY(-4px)}.project-card:hover:before{transform:scaleX(1)}.project-card.compact{padding:1rem}.project-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.project-name{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4}.compact .project-name{font-size:.9375rem}.status-badge{display:inline-flex;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;border-radius:6px;text-transform:uppercase;letter-spacing:.025em;flex-shrink:0}.status-blue{background:#3b82f626;color:#3b82f6}.status-yellow{background:#eab30826;color:#eab308}.status-green{background:#22c55e26;color:#22c55e}.status-purple{background:#8b5cf626;color:#8b5cf6}.status-gray{background:#64748b26;color:#64748b}.project-description{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-meta{display:flex;flex-direction:column;gap:.5rem}.project-progress{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light)}.project-card-actions{margin-top:.9rem;display:flex;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.project-detail-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:8px;padding:.45rem .7rem;font-size:.78rem;color:var(--text-primary);text-decoration:none;background:var(--bg-secondary)}.project-detail-link:hover{border-color:var(--accent-blue)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-blue) 0%,var(--accent-purple) 100%);border-radius:3px;transition:width .3s ease}.workorder-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.workorder-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-blue));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.workorder-card:hover{border-color:var(--primary-500);box-shadow:0 20px 40px #0000004d;transform:translateY(-4px)}.workorder-card:hover:before{transform:scaleX(1)}.workorder-card.compact{padding:1rem}.workorder-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.workorder-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.workorder-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4}.compact .workorder-title{font-size:.9375rem}.status-draft{background:#64748b26;color:#64748b}.status-submitted{background:#eab30826;color:#eab308}.status-review{background:#8b5cf626;color:#8b5cf6}.status-approved{background:#06b6d426;color:#06b6d4}.status-progress{background:#3b82f626;color:#3b82f6}.status-cancelled{background:#ef444426;color:#ef4444}.workorder-description{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.workorder-meta{display:flex;flex-direction:column;gap:.5rem}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-muted)}.workorder-progress{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light)}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.8125rem}.progress-header span:first-child{color:var(--text-secondary)}.progress-value{font-weight:600;color:var(--accent-blue)}.progress-bar{height:6px;background:var(--primary-700);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-cyan) 0%,var(--accent-blue) 100%);border-radius:3px;transition:width .3s ease}.task-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.task-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-green),var(--accent-teal));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.task-card:hover{border-color:var(--primary-500);box-shadow:0 20px 40px #0000004d;transform:translateY(-4px)}.task-card:hover:before{transform:scaleX(1)}.task-card.compact{padding:1rem;display:flex;flex-direction:column;gap:.5rem}.task-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.task-title-row{display:flex;align-items:flex-start;gap:.5rem;flex:1;min-width:0}.task-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4;word-break:break-word}.compact .task-title{font-size:.875rem}.task-complete-icon{color:var(--success);flex-shrink:0;margin-top:2px}.task-blocked-icon{color:var(--error);flex-shrink:0;margin-top:2px}.task-pending-icon{color:var(--text-muted);flex-shrink:0;margin-top:2px}.priority-badge{display:inline-flex;padding:.125rem .5rem;font-size:.625rem;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.025em;flex-shrink:0}.priority-low{background:#64748b26;color:#64748b}.priority-medium{background:#3b82f626;color:#3b82f6}.priority-high{background:#f9731626;color:#f97316}.priority-critical{background:#ef444426;color:#ef4444}.task-description{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-meta{display:flex;flex-wrap:wrap;gap:1rem}.meta-item{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-muted)}.meta-item svg{flex-shrink:0}.overdue-icon{color:var(--error);margin-left:.25rem}.task-subtasks{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light)}.subtask-progress{font-size:.75rem;color:var(--text-secondary);margin-bottom:.5rem}.subtask-list{display:flex;flex-direction:column;gap:.375rem}.subtask-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary)}.subtask-complete{color:var(--success);flex-shrink:0}.subtask-pending{color:var(--text-muted);flex-shrink:0}.more-subtasks{font-size:.75rem;color:var(--text-muted);font-style:italic;margin-top:.25rem}.status-badge{display:inline-flex;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;border-radius:6px;text-transform:uppercase;letter-spacing:.025em}.status-not-started{background:#64748b26;color:#64748b}.status-in-progress{background:#3b82f626;color:#3b82f6}.status-completed{background:#22c55e26;color:#22c55e}.status-blocked{background:#ef444426;color:#ef4444}.status-on-hold{background:#eab30826;color:#eab308}.task-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light);display:flex;justify-content:flex-end}.dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.welcome-section h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.role-badge{display:inline-block;padding:.375rem .875rem;background:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);color:#fff;font-size:.75rem;font-weight:600;border-radius:20px;text-transform:uppercase;letter-spacing:.05em}.header-actions{display:flex;gap:.75rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}.admin-shortcuts{border:1px solid var(--border-light);border-radius:12px;background:var(--bg-card);padding:1rem;margin-bottom:1.5rem}.admin-shortcuts h3{color:var(--text-primary);font-size:.95rem;margin-bottom:.7rem}.admin-shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.55rem}.admin-shortcut-card{border:1px solid var(--border-color);border-radius:9px;background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;padding:.55rem .65rem;font-size:.82rem;font-weight:600}.admin-shortcut-card:hover{border-color:var(--accent-blue);color:var(--accent-blue)}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.stats-grid{grid-template-columns:1fr}}.tabs-container{margin-bottom:1.5rem;border-bottom:1px solid var(--border-light)}.tabs{display:flex;gap:.5rem;overflow-x:auto}.tab{padding:.75rem 1.25rem;font-size:.875rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--accent-blue);border-bottom:2px solid var(--accent-blue)}.tab-content{animation:fadeIn .3s ease}.overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media(max-width:900px){.overview-grid{grid-template-columns:1fr}}.dashboard-section{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;overflow:hidden}.dashboard-section.full-width{grid-column:1 / -1}.section-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-light)}.section-header h3{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.view-all{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;color:var(--accent-blue);text-decoration:none;transition:gap .2s}.view-all:hover{gap:.5rem}.section-content{padding:1rem;max-height:400px;overflow-y:auto}.empty-state svg{margin-bottom:.75rem;opacity:.5}.empty-state p{font-size:.875rem}.task-list{display:flex;flex-direction:column;gap:.5rem}.projects-grid,.workorders-grid,.tasks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}@media(max-width:480px){.projects-grid,.workorders-grid,.tasks-grid{grid-template-columns:1fr}}@media(max-width:768px){.dashboard{padding:1rem}.dashboard-header{flex-direction:column}.welcome-section h1{font-size:1.5rem}.header-actions{width:100%}.header-actions .btn{flex:1;justify-content:center}}.popup-message-overlay{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:2000;pointer-events:none}.popup-message{pointer-events:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 18px 45px #00000059;padding:.85rem 3rem .85rem 1rem;min-width:min(720px,calc(100vw - 2rem));position:relative}.popup-message-content{color:var(--text-primary);font-weight:650}.popup-message-close{position:absolute;top:.25rem;right:.5rem;border:none;background:transparent;color:var(--text-muted);font-size:1.4rem;cursor:pointer}.popup-message-info{border-left:6px solid var(--accent-blue)}.popup-message-success{border-left:6px solid #22c55e}.popup-message-error{border-left:6px solid #ef4444}.right-drawer-overlay{position:fixed;inset:0;z-index:1300;background:#0206178c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:flex-end}.right-drawer{width:min(520px,100%);height:100%;background:var(--bg-card);border-left:1px solid var(--border-color);box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.right-drawer-header{padding:.9rem 1rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:.75rem}.right-drawer-header h3{margin:0;color:var(--text-primary)}.right-drawer-close{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-size:1.2rem;line-height:1}.right-drawer-body{padding:1rem;overflow:auto;flex:1}.tdr-content{display:grid;gap:.9rem}.tdr-toolbar{display:flex;flex-wrap:wrap;gap:.45rem}.tdr-tab{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;padding:.35rem .7rem;font-size:.76rem}.tdr-tab.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.tdr-section{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.7rem;display:grid;gap:.6rem}.tdr-section h4{margin:0;font-size:.9rem}.tdr-section-head{display:flex;justify-content:space-between;align-items:center}.tdr-empty{color:var(--text-muted);font-size:.82rem}.tdr-list{list-style:none;display:grid;gap:.45rem}.tdr-list li{border:1px solid var(--border-color);border-radius:8px;padding:.5rem;display:flex;justify-content:space-between;gap:.5rem;align-items:flex-start}.tdr-list p{margin:.18rem 0 0;color:var(--text-secondary);font-size:.76rem}.tdr-comment-box{display:grid;gap:.45rem}.tdr-comment-box textarea{border:1px solid var(--border-color);border-radius:8px;padding:.45rem .55rem;background:var(--bg-card);color:var(--text-primary)}.tdr-list-compact li{display:grid;gap:.4rem}.tdr-todo-row{display:grid;grid-template-columns:auto 1fr 1fr 1fr auto auto;gap:.4rem;align-items:center}.tdr-checkbox{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-secondary);font-size:.75rem}.tdr-grid-row{display:grid;grid-template-columns:minmax(120px,1.6fr) minmax(95px,1fr) minmax(95px,1fr) auto;gap:.4rem;width:100%;align-items:center}.tdr-inline-form{display:grid;gap:.45rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.tdr-inline-form input,.tdr-inline-form select,.tdr-grid-row input,.tdr-grid-row select,.tdr-todo-row input{border:1px solid var(--border-color);border-radius:7px;background:var(--bg-card);color:var(--text-primary);padding:.35rem .45rem}.tdr-muted{color:var(--text-muted);font-size:.72rem}@media(max-width:820px){.tdr-todo-row,.tdr-grid-row{grid-template-columns:1fr}}.projects-page{padding:2rem;max-width:1400px;margin:0 auto}.projects-header-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.filters-bar{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:.75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:0 1rem;flex:1;max-width:400px}.search-box svg{color:var(--text-muted);flex-shrink:0}.search-box input{flex:1;border:none;background:transparent;padding:.75rem 0;font-size:.9375rem;color:var(--text-primary)}.search-box input:focus{outline:none;box-shadow:none}.filter-group{display:flex;align-items:center;gap:.5rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:0 1rem}.filter-group svg{color:var(--text-muted)}.filter-group select{border:none;background:transparent;padding:.75rem 1.5rem .75rem 0;font-size:.9375rem;color:var(--text-primary);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2394a3b8' viewBox='0 0 16 16'%3e%3cpath d='M8 11L3 6h10l-5 5z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center}.filter-group select:focus{outline:none;box-shadow:none}.filter-group select option{background:var(--bg-secondary);color:var(--text-primary)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.projects-list-table-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:auto}.projects-list-table{width:100%;border-collapse:collapse;min-width:880px}.projects-list-table th,.projects-list-table td{border-bottom:1px solid var(--border-light);padding:.75rem;text-align:left}.project-row-title{font-weight:600;color:var(--text-primary)}.project-row-meta{color:var(--text-muted);font-size:.82rem;margin-top:.2rem}.project-status-chip{font-size:.75rem;border-radius:999px;padding:.23rem .62rem;text-transform:capitalize;font-weight:600}.project-status-initiating{background:#94a3b833;color:#94a3b8}.project-status-planning{background:#60a5fa33;color:#93c5fd}.project-status-in_execution{background:#3b82f633;color:#60a5fa}.project-status-monitoring{background:#facc1533;color:#facc15}.project-status-closed{background:#22c55e33;color:#4ade80}.project-status-unknown{background:#64748b33;color:#94a3b8}.project-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:1rem;display:grid;gap:.75rem}.modal-overlay{position:fixed;inset:0;background:#020617b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.modal-card{width:min(900px,100%);max-height:92vh;overflow:auto;background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:1rem}.modal-wide{width:min(1120px,100%)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.8rem}.modal-header h3{color:var(--text-primary)}.modal-close{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:8px;width:32px;height:32px;cursor:pointer}.project-task-table-wrap{overflow:auto;border:1px solid var(--border-color);border-radius:10px}.project-task-table{width:100%;min-width:860px;border-collapse:collapse}.project-task-table th,.project-task-table td{border-bottom:1px solid var(--border-light);padding:.55rem;text-align:left}.project-task-table input,.project-task-table select{width:100%;border:1px solid var(--border-color);border-radius:7px;background:var(--bg-secondary);color:var(--text-primary);padding:.35rem .45rem}.btn-small{padding:.45rem .7rem;font-size:.8rem}.project-form h3{color:var(--text-primary);font-size:1rem}.project-form-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.project-form label{display:grid;gap:.35rem;color:var(--text-secondary);font-size:.8rem}.project-form input,.project-form select,.project-form textarea{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.5rem .65rem}.project-docs-overview{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:1rem;margin-bottom:1rem}.project-docs-overview h3{font-size:1rem;color:var(--text-primary);margin-bottom:.65rem}.project-docs-controls{display:flex;gap:.65rem;flex-wrap:wrap;margin-bottom:.7rem}.project-docs-controls select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.5rem .65rem;min-width:220px}.project-docs-list{display:grid;gap:.45rem}.project-doc-item{border:1px solid var(--border-color);border-radius:8px;padding:.5rem .6rem;display:grid;gap:.15rem;font-size:.82rem}.project-doc-item span{color:var(--text-muted)}.empty-state{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;padding:4rem;color:var(--text-muted);font-size:.9375rem}.project-smart-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.75rem}.project-drawer-content{display:grid;gap:.8rem}.project-drawer-tabs{display:flex;flex-wrap:wrap;gap:.4rem}.project-drawer-tabs button{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;padding:.35rem .7rem;font-size:.76rem}.project-drawer-tabs button.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.project-drawer-section{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.7rem;display:grid;gap:.6rem}.project-drawer-section h4{margin:0;font-size:.92rem}.project-drawer-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.45rem}.project-drawer-form-grid input,.project-drawer-form-grid select,.project-drawer-list-item-grid input,.project-drawer-list-item-grid select{border:1px solid var(--border-color);border-radius:7px;background:var(--bg-card);color:var(--text-primary);padding:.35rem .45rem}.project-drawer-list{list-style:none;display:grid;gap:.45rem}.project-drawer-list li{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);padding:.5rem;display:grid;gap:.2rem}.project-drawer-list li p,.project-drawer-list li span{color:var(--text-secondary);font-size:.78rem}.project-drawer-list-item-grid{display:grid;grid-template-columns:minmax(120px,1.6fr) minmax(90px,1fr) minmax(95px,1fr) auto auto;gap:.4rem;align-items:center}.phase-grid-item{grid-template-columns:minmax(120px,1.8fr) minmax(75px,1fr) minmax(90px,1fr) auto auto}.project-plan-pill{justify-self:start;border-radius:999px;padding:.1rem .45rem;font-size:.67rem;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.project-plan-pill.task{background:#3b82f633;color:#93c5fd}.project-plan-pill.todo{background:#10b98133;color:#6ee7b7}@media(max-width:768px){.projects-page{padding:1rem}.page-header,.filters-bar{flex-direction:column}.search-box{max-width:100%}.projects-grid,.project-drawer-list-item-grid,.phase-grid-item{grid-template-columns:1fr}}.project-task-table-wrap{overflow:auto;max-height:70vh}.project-details-page{padding:1.5rem;max-width:1400px;margin:0 auto}.pd-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.pd-header h1{color:var(--text-primary);margin:.35rem 0}.pd-header p{color:var(--text-secondary)}.pd-back-btn,.pd-secondary-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);border-radius:9px;padding:.45rem .75rem;cursor:pointer}.pd-primary-btn{border:1px solid var(--accent-blue);background:var(--accent-blue);color:#fff;border-radius:9px;padding:.45rem .75rem;cursor:pointer}.pd-meta-grid{display:grid;gap:.45rem;align-content:start;color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:.7rem}.pd-error{margin-bottom:.8rem;border-radius:10px;padding:.7rem .9rem;background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.pd-section{border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);padding:.9rem;margin-bottom:.9rem}.pd-summary-grid{display:grid;gap:.55rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.pd-summary-grid article{border:1px solid var(--border-color);border-radius:9px;background:var(--bg-secondary);padding:.6rem;display:grid;gap:.15rem}.pd-summary-grid strong{color:var(--text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.03em}.pd-summary-grid span{color:var(--text-primary);font-size:1rem;font-weight:700}.pd-section h3{margin-bottom:.6rem;color:var(--text-primary)}.pd-task-form{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.75rem;margin-bottom:.8rem;display:grid;gap:.65rem}.pd-modal-overlay{position:fixed;inset:0;background:#020617b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.pd-modal-card{width:min(980px,100%);max-height:92vh;overflow:auto;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);padding:1rem}.pd-milestone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.55rem}.pd-milestone-card{border:1px solid var(--border-color);border-radius:9px;background:var(--bg-secondary);padding:.55rem;display:grid;gap:.25rem}.pd-milestone-head{display:flex;justify-content:space-between;gap:.45rem;align-items:center}.pd-milestone-head span{font-size:.72rem;color:var(--text-muted)}.pd-milestone-meta{display:grid;gap:.1rem;font-size:.76rem;color:var(--text-muted)}.pd-milestone-actions{display:flex;gap:.35rem;flex-wrap:wrap}.pd-task-form-grid{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.pd-task-form label{display:grid;gap:.3rem;color:var(--text-secondary);font-size:.8rem}.pd-task-form input,.pd-task-form select,.pd-task-form textarea,.pd-inline-field select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary);padding:.4rem .5rem}.pd-form-wide{grid-column:1 / -1}.pd-stage-board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:.8rem;overflow-x:auto}.pd-stage-column{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);min-height:320px;display:flex;flex-direction:column}.pd-stage-header{display:flex;justify-content:space-between;align-items:center;padding:.6rem;border-bottom:1px solid var(--border-color)}.pd-stage-header h4{color:var(--text-primary);font-size:.86rem}.pd-stage-header span{color:var(--text-muted);font-size:.75rem}.pd-stage-body{padding:.55rem;display:grid;gap:.55rem}.pd-stage-card{border:1px solid var(--border-color);border-left-width:4px;border-radius:9px;background:var(--bg-card);padding:.55rem;display:grid;gap:.25rem;cursor:grab}.pd-stage-card p{color:var(--text-secondary);font-size:.82rem}.pd-inline-field{display:grid;gap:.18rem;font-size:.74rem;color:var(--text-muted)}.pd-inline-actions{display:flex;gap:.4rem;align-items:flex-end;flex-wrap:wrap}.pd-timeline-wrap{margin-top:1rem;border-top:1px solid var(--border-color);padding-top:.8rem}.pd-timeline{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.7rem;overflow-x:auto}.pd-timeline-scale{position:relative;height:32px;border-bottom:1px dashed var(--border-color);margin-bottom:.45rem;min-width:620px;overflow:hidden}.pd-timeline-tick{position:absolute;top:0;transform:translate(-50%);display:grid;justify-items:center;gap:.1rem}.pd-timeline-tick:first-child{transform:translate(0);justify-items:start}.pd-timeline-tick:last-child{transform:translate(-100%);justify-items:end}.pd-timeline-tick:before{content:"";width:1px;height:10px;background:var(--border-color)}.pd-timeline-tick span{font-size:.68rem;color:var(--text-muted);white-space:nowrap}.pd-timeline-rows{display:grid;gap:.45rem;min-width:620px}.pd-timeline-row{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:.5rem;align-items:center}.pd-timeline-label{display:grid;gap:.1rem}.pd-timeline-label strong{color:var(--text-primary);font-size:.82rem}.pd-timeline-label span{color:var(--text-muted);font-size:.72rem}.pd-timeline-track{position:relative;height:18px;border-radius:999px;background:#0f172a99;overflow:hidden}.pd-timeline-bar{position:absolute;top:3px;height:12px;border-radius:999px;min-width:6px}.pd-timeline-marker{position:absolute;top:2px;width:14px;height:14px;transform:translate(-50%) rotate(45deg);border-radius:2px;border:1px solid rgba(255,255,255,.35)}.pd-milestone-planned{background:#64748b}.pd-milestone-in_progress{background:#3b82f6}.pd-milestone-completed{background:#22c55e}.pd-milestone-blocked{background:#ef4444}.pd-task-draft,.pd-task-confirmed{border-left-color:#94a3b8}.pd-task-in_progress{border-left-color:#3b82f6}.pd-task-on_hold{border-left-color:#f59e0b}.pd-task-stagnated{border-left-color:#f43f5e}.pd-task-cancelled{border-left-color:#ef4444}.pd-task-done{border-left-color:#22c55e}.pd-section-header{display:flex;justify-content:space-between;gap:.8rem;align-items:center;margin-bottom:.55rem}.pd-subproject-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.55rem}.pd-subproject-item{display:grid;text-align:left;gap:.15rem;border:1px solid var(--border-color);border-radius:9px;padding:.55rem;background:var(--bg-secondary);color:var(--text-primary);cursor:pointer}.pd-subproject-item span{font-size:.76rem;color:var(--text-muted)}.pd-workspace{border-style:dashed}.pd-workspace-grid{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.pd-workspace-grid article{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.65rem}.pd-workspace-grid h4{margin-bottom:.35rem;color:var(--text-primary)}.pd-workspace-grid p{font-size:.8rem;color:var(--text-secondary);margin:.15rem 0}.pd-workspace-right{justify-self:end}.pd-chatter-input{display:grid;gap:.35rem;margin-bottom:.35rem}.pd-chatter-input textarea{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary);padding:.45rem}.pd-details-list{list-style:none;display:grid;gap:.35rem}.pd-details-list li{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);padding:.45rem;display:grid;gap:.1rem}.pd-details-list p{margin:0}.pd-details-list span{color:var(--text-muted);font-size:.72rem}.pd-phase-manager{margin-top:.9rem;border-top:1px solid var(--border-color);padding-top:.7rem}.pd-phase-add{display:flex;gap:.45rem;margin-bottom:.6rem;flex-wrap:wrap}.pd-phase-add input,.pd-phase-item input{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary);padding:.42rem .52rem}.pd-phase-list{display:grid;gap:.45rem}.pd-phase-item{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);padding:.5rem;display:flex;justify-content:space-between;align-items:center;gap:.45rem;flex-wrap:wrap}.pd-doc-list,.pd-task-list{display:grid;gap:.55rem}.pd-doc-item,.pd-task-item{border:1px solid var(--border-color);border-radius:9px;background:var(--bg-secondary);padding:.6rem;display:grid;gap:.2rem}.pd-doc-item span{font-size:.78rem;color:var(--text-muted)}.pd-task-header{display:flex;justify-content:space-between;gap:.6rem;align-items:center}.pd-task-meta{display:flex;gap:.65rem;flex-wrap:wrap;font-size:.78rem;color:var(--text-muted)}.pd-status{display:inline-flex;border-radius:999px;padding:.18rem .55rem;font-size:.7rem;text-transform:capitalize}.pd-status-done{background:#22c55e33;color:#4ade80}.pd-status-cancelled{background:#ef444433;color:#f87171}.pd-status-in_progress{background:#3b82f633;color:#60a5fa}.pd-status-stagnated{background:#fb718533;color:#fda4af}.pd-status-on_hold{background:#facc1533;color:#facc15}.pd-status-draft,.pd-status-confirmed{background:#94a3b833;color:#cbd5e1}.pd-chatter-list{list-style:none;display:grid;gap:.35rem;margin-top:.35rem}.pd-chatter-list li{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);padding:.45rem}.pd-chatter-list p{margin:.08rem 0;color:var(--text-secondary);font-size:.8rem}.pd-chatter-list span{color:var(--text-muted);font-size:.72rem}@media(max-width:780px){.project-details-page{padding:1rem}.pd-header{flex-direction:column}.pd-stage-board{grid-template-columns:repeat(5,minmax(260px,1fr))}.pd-timeline-row{grid-template-columns:1fr}}.milestones-page{padding:1.5rem;max-width:1400px;margin:0 auto}.milestones-header{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start;flex-wrap:wrap;margin-bottom:1rem}.milestones-header h1{color:var(--text-primary)}.milestones-header p{color:var(--text-secondary)}.milestones-toolbar{display:flex;gap:.65rem;margin-bottom:.9rem;flex-wrap:wrap}.milestones-toolbar select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary);padding:.45rem .55rem}.milestones-search{display:flex;align-items:center;gap:.45rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);padding:0 .6rem}.milestones-search input{border:none;background:transparent;color:var(--text-primary);padding:.45rem 0}.milestones-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.65rem}.milestone-card{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-card);padding:.65rem;display:grid;gap:.25rem}.milestone-card-head{display:flex;justify-content:space-between;gap:.5rem;align-items:center}.milestone-card-head span{font-size:.72rem;color:var(--text-muted)}.milestone-meta{display:grid;gap:.15rem;font-size:.8rem;color:var(--text-muted)}.milestone-actions{display:flex;gap:.45rem;flex-wrap:wrap}.milestone-modal-overlay{position:fixed;inset:0;background:#020617b3;display:flex;align-items:center;justify-content:center;z-index:1200;padding:1rem}.milestone-modal{width:min(680px,100%);max-height:92vh;overflow:auto;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);padding:1rem}.milestone-modal h3{color:var(--text-primary);margin-bottom:.7rem}.milestone-form{display:grid;gap:.5rem}.milestone-form label{display:grid;gap:.25rem;color:var(--text-secondary);font-size:.82rem}.milestone-form input,.milestone-form select,.milestone-form textarea{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.45rem .55rem}.error-message{margin-bottom:.8rem;border-radius:10px;padding:.7rem .9rem;background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .95rem;font-size:.84rem;border-radius:8px;cursor:pointer;border:none}.btn-primary{background:var(--accent-blue);color:#fff}.workorders-page{padding:1.5rem;max-width:1450px;margin:0 auto}.audit-panel{justify-self:end;width:100%;max-width:1100px}.page-header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.header-actions{display:flex;gap:.6rem}.header-content h1{font-size:1.75rem;color:var(--text-primary);margin-bottom:.25rem}.info-message,.error-message{border-radius:10px;padding:.7rem .9rem;margin-bottom:.8rem;font-size:.9rem}.info-message{background:#0ea5e91f;border:1px solid rgba(14,165,233,.35);color:#7dd3fc}.error-message{background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.workorder-form{border:1px solid var(--border-color);background:var(--bg-card);border-radius:14px;padding:1rem;margin-bottom:1rem;display:grid;gap:.8rem}.workorder-form h3{font-size:1rem;margin-bottom:.2rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.workorder-form label{display:grid;gap:.35rem;font-size:.8rem;color:var(--text-secondary)}.workorder-form input,.workorder-form select,.workorder-form textarea{border:1px solid var(--border-color);border-radius:8px;padding:.5rem .65rem;background:var(--bg-secondary);color:var(--text-primary)}.checkbox-row{display:flex;align-items:center;gap:.5rem}.form-actions{display:flex;justify-content:flex-end}.filters-bar{display:flex;gap:.8rem;margin-bottom:1rem;flex-wrap:wrap}.search-box,.filter-group{display:flex;align-items:center;gap:.55rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:0 .8rem}.search-box{flex:1;min-width:240px;max-width:450px}.search-box input,.filter-group select{border:none;outline:none;background:transparent;color:var(--text-primary);padding:.65rem 0}.workorders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.workorder-item{border:1px solid var(--border-color);background:var(--bg-card);border-radius:12px;padding:.85rem;display:grid;gap:.65rem}.item-header{display:flex;justify-content:space-between;gap:.5rem}.item-header h3{font-size:.95rem}.item-description{font-size:.84rem;color:var(--text-secondary)}.item-meta{display:flex;flex-wrap:wrap;gap:.45rem}.chip{display:inline-flex;align-items:center;gap:.3rem;border-radius:999px;padding:.22rem .62rem;font-size:.72rem;background:#94a3b82e;color:#cbd5e1;text-transform:capitalize}.chip-type{background:#3b82f633;color:#93c5fd}.chip-sla.ok{background:#22c55e33;color:#86efac}.chip-sla.warn{background:#ef444433;color:#fca5a5}.chip-approval{background:#facc1533;color:#fde68a}.item-footer{display:flex;gap:.5rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.38rem;padding:.55rem .8rem;font-size:.82rem;border-radius:8px;border:1px solid var(--border-color);cursor:pointer}.btn-primary{border:none;background:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);color:#fff}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.btn-danger{background:#ef444429;border-color:#ef444466;color:#fecaca}.audit-panel{margin-top:1.25rem;border:1px solid var(--border-color);border-radius:14px;padding:1rem;background:var(--bg-card);display:grid;gap:1rem}.audit-header{display:flex;justify-content:space-between;align-items:center}.approval-box{border:1px dashed var(--border-color);border-radius:10px;padding:.75rem}.approval-box ul{list-style:none;display:grid;gap:.45rem;margin-top:.5rem}.approval-box li{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;align-items:center}.audit-list{display:grid;gap:.5rem}.audit-event{border:1px solid var(--border-color);border-radius:9px;padding:.65rem;display:grid;gap:.45rem}.audit-event p{font-size:.75rem;color:var(--text-muted)}.audit-event pre{white-space:pre-wrap;word-break:break-word;background:var(--bg-secondary);border-radius:7px;padding:.45rem;font-size:.72rem}.empty-state{grid-column:1 / -1;min-height:120px;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}@media(max-width:860px){.workorders-page{padding:1rem}.page-header,.header-actions{flex-direction:column;align-items:flex-start}}.tasks-page{padding:1.5rem;max-width:1480px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem}.header-content h1{font-size:1.7rem;color:var(--text-primary);margin-bottom:.25rem}.header-content p{color:var(--text-secondary);font-size:.92rem}.view-mode-toggle{display:flex;gap:.5rem}.task-header-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.task-smart-actions{display:flex;flex-wrap:wrap;gap:.4rem}.task-smart-actions button{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:999px;padding:.42rem .62rem;font-size:.74rem}.task-create-toggle{border:1px solid var(--accent-blue);background:var(--accent-blue);color:#fff;border-radius:9px;padding:.55rem .8rem;cursor:pointer}.view-mode-toggle button{display:inline-flex;align-items:center;gap:.35rem;background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:9px;padding:.55rem .8rem;cursor:pointer}.view-mode-toggle button.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.filters-bar{display:flex;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.search-box,.filter-group{display:flex;align-items:center;gap:.6rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:.2rem .85rem}.search-box{flex:1;min-width:260px;max-width:420px}.search-box input,.filter-group select{border:none;outline:none;background:transparent;color:var(--text-primary);padding:.62rem 0}.tasks-list-table-wrap{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:auto}.tasks-list-table{width:100%;border-collapse:collapse;min-width:860px}.tasks-list-table th,.tasks-list-table td{border-bottom:1px solid var(--border-light);padding:.75rem;text-align:left}.tasks-list-table td input{width:100%;border:1px solid var(--border-color);border-radius:8px;padding:.4rem .5rem;background:var(--bg-secondary);color:var(--text-primary)}.task-main-cell{min-width:230px}.task-row-title{font-weight:600;color:var(--text-primary)}.task-row-meta{color:var(--text-muted);font-size:.82rem;margin-top:.2rem}.status-chip{font-size:.75rem;border-radius:999px;padding:.23rem .62rem;text-transform:capitalize;font-weight:600}.status-draft{background:#94a3b833;color:#94a3b8}.status-confirmed{background:#60a5fa33;color:#93c5fd}.status-in_progress{background:#3b82f633;color:#60a5fa}.status-on_hold{background:#facc1533;color:#facc15}.status-stagnated{background:#fb718533;color:#fda4af}.status-cancelled{background:#ef444433;color:#f87171}.status-done{background:#22c55e33;color:#4ade80}.kanban-board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:1rem;overflow-x:auto}.kanban-column{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;min-height:64vh;display:flex;flex-direction:column}.kanban-column-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-light);padding:.75rem}.kanban-column-header h3{font-size:.92rem}.kanban-column-header span{font-size:.78rem;color:var(--text-muted)}.kanban-column-body{padding:.75rem;display:flex;flex-direction:column;gap:.7rem}.kanban-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:.7rem}.kanban-card h4{font-size:.9rem;margin-bottom:.4rem}.kanban-card p{font-size:.8rem;color:var(--text-secondary);margin-bottom:.55rem}.kanban-meta{display:flex;flex-direction:column;gap:.2rem;font-size:.76rem;color:var(--text-muted);margin-bottom:.5rem}.kanban-dates{display:grid;grid-template-columns:1fr;gap:.35rem}.kanban-dates label{display:grid;gap:.2rem;font-size:.7rem;color:var(--text-muted)}.kanban-dates input{border:1px solid var(--border-color);border-radius:7px;background:var(--bg-secondary);color:var(--text-primary);padding:.35rem .42rem}.empty-state{display:flex;align-items:center;justify-content:center;min-height:140px;color:var(--text-muted)}.task-planning-preview{margin-bottom:1rem;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);padding:.8rem}.task-planning-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.55rem;gap:.5rem}.task-planning-preview h3{margin:0;font-size:.95rem}.task-planning-preview p{color:var(--text-muted);font-size:.82rem}.task-planning-preview ul{list-style:none;display:grid;gap:.45rem}.task-planning-preview li{border:1px solid var(--border-color);border-radius:9px;background:var(--bg-secondary);padding:.45rem .55rem;display:grid;gap:.15rem}.planning-pill{justify-self:start;border-radius:999px;padding:.1rem .45rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.planning-pill.task{background:#3b82f633;color:#93c5fd}.planning-pill.todo{background:#10b98133;color:#6ee7b7}.task-approval-panel{margin-bottom:.9rem;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);padding:.8rem}.task-approval-panel h3{color:var(--text-primary);margin-bottom:.5rem}.task-approval-list{display:grid;gap:.5rem}.task-selector-hint{margin:0 0 .45rem;color:var(--text-muted);font-size:.78rem}.task-multi-select{width:100%;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);padding:.45rem}.task-multi-select option{padding:.35rem .45rem}.task-approval-item{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.55rem;display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap}.task-approval-item p,.task-approval-item span{color:var(--text-secondary);font-size:.8rem}.task-approval-actions{display:flex;gap:.4rem;align-items:flex-start}.task-create-form{margin-bottom:1rem;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);padding:.9rem;display:grid;gap:.55rem}.task-create-form h3{color:var(--text-primary);margin-bottom:.2rem}.task-create-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.55rem}.task-create-form label{display:grid;gap:.3rem;font-size:.8rem;color:var(--text-secondary)}.task-create-form input,.task-create-form textarea,.task-create-form select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.45rem .55rem}.blocked-by-list{display:grid;gap:.35rem}.blocked-by-list p{font-size:.8rem;color:var(--text-muted)}.checkbox-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.task-create-submit{justify-self:start;border:1px solid var(--accent-blue);background:var(--accent-blue);color:#fff;border-radius:8px;padding:.5rem .75rem;cursor:pointer}.task-tag-selectors{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);padding:.55rem;display:grid;gap:.45rem}.task-tag-selectors h4{margin:0;font-size:.82rem;color:var(--text-primary)}.task-tag-picker-row{display:grid;grid-template-columns:1fr auto;gap:.45rem}.task-tag-picker-row select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary);padding:.35rem .45rem}.task-tag-list{display:flex;flex-wrap:wrap;gap:.35rem}.task-tag-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(59,130,246,.4);background:#3b82f626;color:#cde2ff;border-radius:999px;padding:.2rem .5rem;font-size:.74rem}.task-tag-chip.follower{border-color:#10b98173;background:#10b98126;color:#b8f3df}.task-tag-chip button{border:none;background:transparent;color:inherit;font-size:.74rem;padding:0}.task-details-btn{margin-top:.5rem;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:8px;padding:.35rem .55rem;cursor:pointer;font-size:.76rem}.task-details-panel{margin-top:1rem;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);padding:.85rem}.task-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem}.task-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.task-details-grid h4{margin-bottom:.4rem}.details-list{list-style:none;display:grid;gap:.5rem}.details-list li{border:1px solid var(--border-color);border-radius:8px;padding:.45rem;display:flex;justify-content:space-between;gap:.5rem}.details-list p{margin-top:.12rem;color:var(--text-muted);font-size:.75rem}.document-link-row{display:flex;gap:.5rem;margin-bottom:.5rem}.document-link-row input{flex:1;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.45rem .55rem}@media(max-width:1000px){.page-header{flex-direction:column;align-items:flex-start}.kanban-board{grid-template-columns:repeat(5,minmax(260px,1fr))}}.timelog-page{padding:2rem;max-width:1400px;margin:0 auto}.timelog-layout{display:grid;grid-template-columns:400px 1fr;gap:2rem}.timelog-entries-section{justify-self:end;width:100%}@media(max-width:1024px){.timelog-layout{grid-template-columns:1fr}}.timelog-form-section{display:flex;flex-direction:column;gap:1.5rem}.form-card,.summary-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem}.form-card h3,.summary-card h3{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem}.timelog-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{width:100%}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.summary-stats{display:flex;flex-direction:column;gap:1rem}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--bg-tertiary);border-radius:8px}.summary-label{font-size:.875rem;color:var(--text-secondary)}.summary-value{font-size:1.25rem;font-weight:700;color:var(--accent-blue)}.timelog-entries-section{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem}.timelog-entries-section h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem}.entries-list{display:flex;flex-direction:column;gap:1rem}.entry-card{background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:10px;padding:1rem;transition:all .2s}.entry-card:hover{border-color:var(--primary-500)}.entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.entry-task{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;color:var(--text-primary)}.entry-task svg{color:var(--accent-blue)}.delete-btn{background:none;border:none;color:var(--text-muted);padding:.25rem;cursor:pointer;border-radius:4px;transition:all .2s}.delete-btn:hover{color:var(--error);background:#ef44441a}.entry-details{display:flex;gap:1.5rem;margin-bottom:.5rem}.entry-meta,.entry-hours{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-muted)}.entry-description{font-size:.8125rem;color:var(--text-secondary);margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-light)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-muted);text-align:center}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state p{font-size:1rem;font-weight:500;margin-bottom:.25rem}.empty-state span{font-size:.875rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;border-radius:10px;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}@media(max-width:768px){.timelog-page{padding:1rem}.form-row{grid-template-columns:1fr}}.reports-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header{margin-bottom:2rem;display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;flex-wrap:wrap}.reports-actions{display:flex;gap:.45rem;flex-wrap:wrap}.reports-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);border-radius:8px;padding:.5rem .7rem;font-size:.78rem;cursor:pointer}.reports-btn:disabled{opacity:.5;cursor:not-allowed}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.report-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.report-card:hover{border-color:var(--accent-blue);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.report-icon{width:48px;height:48px;background:#3b82f626;color:var(--accent-blue);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.report-card h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.report-card p{font-size:.875rem;color:var(--text-secondary);line-height:1.5}.reports-link{display:inline-flex;margin-top:.8rem;color:var(--accent-blue);font-size:.8rem;font-weight:600}.project-report-panel{margin-top:1.5rem;background:var(--bg-card);border:1px solid var(--border-light);border-radius:14px;padding:1.2rem;display:grid;gap:1rem}.project-report-panel h2{margin:0 0 .2rem;font-size:1.05rem}.project-report-panel p{color:var(--text-secondary);font-size:.86rem}.project-report-controls{display:flex;gap:.6rem;flex-wrap:wrap}.project-report-controls select{min-width:260px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.55rem .7rem}.project-report-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem}.project-report-summary div{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:10px;padding:.7rem .8rem}.reports-drawer{display:grid;gap:1rem}.reports-drawer-actions{display:flex;gap:.55rem;flex-wrap:wrap}.project-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.project-detail-card{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:10px;padding:.8rem;display:grid;gap:.25rem}.project-detail-card span{color:var(--text-muted);font-size:.75rem}.reports-table-wrap{overflow:auto;border:1px solid var(--border-color);border-radius:12px}.reports-table{width:100%;border-collapse:collapse;min-width:560px}.reports-table th,.reports-table td{padding:.75rem;border-bottom:1px solid var(--border-light);text-align:left}.reports-table th{font-size:.78rem;letter-spacing:.02em;color:var(--text-muted)}@media(max-width:768px){.reports-page{padding:1rem}.reports-grid,.project-detail-grid{grid-template-columns:1fr}}.documents-page{padding:1.5rem;max-width:1480px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.header-content p{color:var(--text-secondary);font-size:.9rem}.documents-header-actions{display:flex;gap:.6rem;flex-wrap:wrap}.documents-toolbar-panel,.documents-summary-card,.documents-folders-panel,.documents-table-panel{background:var(--bg-card);border:1px solid var(--border-light);border-radius:14px}.documents-toolbar-panel{padding:1rem;margin-bottom:1rem;display:grid;gap:.8rem}.documents-scope-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem}.documents-scope-grid label,.documents-drawer-form label{display:grid;gap:.35rem;color:var(--text-secondary);font-size:.82rem}.documents-scope-grid select,.documents-scope-grid input,.documents-drawer-form input,.documents-drawer-form textarea{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);padding:.6rem .7rem}.documents-breadcrumbs{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.documents-breadcrumbs button{border:none;background:transparent;color:var(--accent-blue);cursor:pointer}.documents-breadcrumbs span{display:inline-flex;align-items:center;gap:.35rem}.documents-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-bottom:1rem}.documents-summary-card{padding:.95rem 1rem;display:grid;gap:.25rem}.documents-summary-card span{color:var(--text-muted);font-size:.78rem}.documents-summary-card strong{font-size:1.25rem;color:var(--text-primary)}.documents-layout{display:grid;grid-template-columns:320px 1fr;gap:1rem}.documents-folders-panel,.documents-table-panel{padding:1rem}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:.85rem}.section-heading h2{font-size:1rem}.section-heading span{color:var(--text-muted);font-size:.78rem}.documents-grid{display:grid;gap:.75rem}.folder-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:.9rem}.folder-live-card{display:flex;justify-content:space-between;align-items:flex-start;gap:.6rem}.folder-open-btn{border:none;background:transparent;color:inherit;display:grid;justify-items:start;gap:.25rem;cursor:pointer}.folder-open-btn svg{color:var(--accent-blue)}.folder-open-btn span{font-weight:600;color:var(--text-primary)}.folder-open-btn small{color:var(--text-muted)}.folder-delete-btn{border:none;background:#ef44441a;color:#ef4444;border-radius:8px;padding:.35rem;cursor:pointer}.folder-actions-stack{display:grid;gap:.35rem}.folder-edit-btn{border:none;background:#3b82f61a;color:var(--accent-blue);border-radius:8px;padding:.35rem;cursor:pointer}.folder-card.empty{text-align:center;color:var(--text-muted)}.documents-table{overflow:auto;border-radius:12px;border:1px solid var(--border-color)}.documents-table table{width:100%;border-collapse:collapse;min-width:760px}.documents-table th,.documents-table td{padding:.9rem 1rem;text-align:left;border-bottom:1px solid var(--border-light)}.documents-table th{color:var(--text-muted);font-size:.78rem}.file-info{display:flex;align-items:center;gap:.7rem}.file-main-copy{display:grid;gap:.12rem}.file-main-copy span{color:var(--text-primary);font-weight:600}.file-main-copy small{color:var(--text-muted)}.file-icon{color:var(--accent-blue)}.documents-row-actions{display:flex;gap:.45rem;flex-wrap:wrap}.action-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .7rem;font-size:.8rem;font-weight:500;color:var(--accent-blue);background:#3b82f61a;border:none;border-radius:8px;cursor:pointer}.action-btn.danger{color:#ef4444;background:#ef44441a}.documents-drawer-form{display:grid;gap:.9rem}.error-message{margin-bottom:.9rem;border-radius:10px;padding:.7rem .9rem;background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.1rem;font-size:.875rem;font-weight:600;border-radius:10px;cursor:pointer;border:none}.btn-primary{background:linear-gradient(135deg,var(--accent-blue) 0%,#0f766e 100%);color:#fff}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}@media(max-width:1024px){.documents-layout{grid-template-columns:1fr}}@media(max-width:768px){.documents-page{padding:1rem}.documents-summary-grid{grid-template-columns:1fr}}.users-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.users-stats{display:flex;gap:1rem;margin-bottom:2rem}.users-toolbar{display:flex;gap:.7rem;margin-bottom:1rem;flex-wrap:wrap}.users-toolbar input,.users-toolbar select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary);padding:.5rem .65rem}.users-toolbar input{min-width:280px;flex:1}.stat-box{display:flex;align-items:center;gap:1rem;background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;padding:1.25rem 1.5rem}.stat-box svg{color:var(--accent-blue)}.stat-box div{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.8125rem;color:var(--text-muted)}.users-table{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;overflow:hidden}.users-table table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:1rem 1.5rem;text-align:left}.users-table th{background:var(--bg-tertiary);font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.users-table td{font-size:.9375rem;color:var(--text-primary);border-bottom:1px solid var(--border-light)}.users-table tr:last-child td{border-bottom:none}.users-table tr:hover td{background:var(--bg-hover)}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;color:#fff}.user-details{display:flex;flex-direction:column}.user-name{font-weight:600}.user-email{font-size:.8125rem;color:var(--text-muted)}.role-badge{display:inline-flex;padding:.25rem .75rem;font-size:.75rem;font-weight:600;border-radius:6px;text-transform:uppercase;letter-spacing:.025em}.role-admin{background:#ef444426;color:#ef4444}.role-pm{background:#8b5cf626;color:#8b5cf6}.role-tm{background:#3b82f626;color:#3b82f6}.role-member,.role-user{background:#22c55e26;color:#22c55e}.role-client{background:#64748b26;color:#64748b}.status-badge{display:inline-flex;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;border-radius:6px;text-transform:uppercase}.status-active{background:#22c55e26;color:#22c55e}.status-inactive{background:#94a3b833;color:#94a3b8}.users-actions{display:flex;gap:.35rem;flex-wrap:wrap}.users-loading{padding:.8rem;color:var(--text-muted)}.users-modal-overlay{position:fixed;inset:0;background:#020617ad;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem}.users-modal{width:min(700px,100%);background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:1rem;max-height:90vh;overflow:auto}.users-form{display:grid;gap:.55rem;margin-top:.55rem}.users-form label{display:grid;gap:.25rem;color:var(--text-secondary);font-size:.82rem}.users-form input,.users-form select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.45rem .55rem}.users-form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.35rem}.error-message{margin-bottom:.75rem;border-radius:10px;padding:.7rem .9rem;background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.action-btn{padding:.375rem .75rem;font-size:.8125rem;font-weight:500;color:var(--accent-blue);background:#3b82f61a;border:none;border-radius:6px;cursor:pointer;transition:all .2s}.action-btn:hover{background:#3b82f633}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;border-radius:10px;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary{background:linear-gradient(135deg,var(--accent-blue) 0%,var(--accent-purple) 100%);color:#fff;border:none}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #3b82f64d}@media(max-width:768px){.users-page{padding:1rem}.page-header,.users-stats{flex-direction:column}.users-table{overflow-x:auto}.users-table table{min-width:600px}}.settings-page{padding:2rem;max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem}.header-content h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.header-content p{font-size:.875rem;color:var(--text-secondary)}.success-message,.error-message{margin-bottom:.9rem;border-radius:10px;padding:.6rem .8rem;border:1px solid}.success-message{background:#22c55e1f;border-color:#22c55e59;color:#86efac}.error-message{background:#ef44441f;border-color:#ef444459;color:#fca5a5}.settings-grid{display:flex;flex-direction:column;gap:1.5rem}.settings-section{background:var(--bg-card);border:1px solid var(--border-light);border-radius:12px;overflow:hidden}.section-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border-light)}.section-header svg{color:var(--accent-blue)}.section-header h3{font-size:1rem;font-weight:600;color:var(--text-primary)}.settings-options{padding:1rem 1.5rem}.settings-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.7rem}.settings-form-grid label{display:grid;gap:.35rem;color:var(--text-secondary);font-size:.82rem}.settings-form-grid input{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.45rem .55rem}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border-light)}.settings-security-row{gap:.45rem;flex-wrap:wrap}.settings-security-row input{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:.45rem .55rem;min-width:150px}.setting-item:last-child{border-bottom:none}.setting-info{display:flex;flex-direction:column;gap:.25rem}.setting-label{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.setting-description{font-size:.8125rem;color:var(--text-muted)}.toggle{position:relative;display:inline-block;width:48px;height:26px}.toggle input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:var(--primary-600);transition:.3s;border-radius:26px}.slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle input:checked+.slider{background:var(--accent-blue)}.toggle input:checked+.slider:before{transform:translate(22px)}.setting-select{padding:.5rem 1rem;font-size:.875rem;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;min-width:150px}.setting-select:focus{outline:none;border-color:var(--accent-blue)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--accent-blue)}@media(max-width:768px){.settings-page{padding:1rem}.setting-item{flex-direction:column;align-items:flex-start;gap:1rem}.setting-select{width:100%}}
