:root{--color-bg:#f5f5f5;--color-surface:#fff;--color-border:#e0e0e0;--color-text:#1a1a1a;--color-text-muted:#6b6b6b;--color-primary:#29a8ff;--color-primary-hover:#1a8fe0;--color-primary-light:#e8f4ff;--color-danger:#f5007a;--color-success:#16a34a;--color-warning:#d97706;--color-sidebar-bg:#fff;--color-sidebar-text:#1b2a4a;--color-sidebar-active:#0f1d3d;--color-accent:#f5007a;--color-mint:#c8f5ee;--radius:6px;--radius-lg:10px;--shadow-sm:0 1px 2px #0000000d;--shadow:0 1px 3px #0000001a, 0 1px 2px #0000000f;--shadow-lg:0 4px 6px #00000012, 0 2px 4px #0000000f;--transition:.15s ease;--font-heading:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;color:var(--color-text);background:var(--color-bg);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}*,:before,:after{box-sizing:border-box}body{margin:0}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-heading)}input,textarea,select,button{font-family:inherit}input,textarea,select{background:#fff}.app-layout{min-height:100vh;display:flex}.main-content{background:var(--color-surface);flex:1;min-height:100vh;overflow-y:auto}.sidebar{background:var(--color-sidebar-bg);width:240px;color:var(--color-sidebar-text);border-right:1px solid #e0e0e0;flex-direction:column;flex-shrink:0;height:100vh;transition:width .2s;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-header{align-items:center;gap:8px;padding:20px 16px 12px;display:flex}.sidebar-header h2{color:#fff;letter-spacing:-.3px;margin:0;font-size:16px;font-weight:700}.sidebar-logo-link{width:100%;display:block}.sidebar-logo{object-fit:contain;width:100%;height:auto;display:block}.role-badge{text-transform:uppercase;letter-spacing:.5px;color:#999;background:#ffffff1a;border-radius:10px;padding:2px 8px;font-size:10px}.sidebar-nav{flex-direction:column;flex:1;justify-content:center;gap:0;padding:12px 12px 56px;display:flex;position:relative}.sidebar-nav a{color:var(--color-sidebar-text);border-radius:var(--radius);transition:all var(--transition);align-items:center;gap:10px;padding:6px 14px;font-size:16px;font-weight:400;text-decoration:none;display:flex;position:relative}.sidebar-nav a svg{display:none}.sidebar-nav a:hover{color:var(--color-sidebar-active);background:#0000000a}.sidebar-nav a.active{color:var(--color-sidebar-active);background:0 0;font-weight:600}.sidebar-nav a.active:after{content:"•";color:var(--color-sidebar-active);margin-left:6px;font-size:20px;line-height:1}.nav-badge{color:#fff;text-align:center;background:#e53935;border-radius:10px;min-width:18px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:600;line-height:16px}.nav-icon-wrap{display:none;position:relative}.nav-icon-dot{border:2px solid var(--color-sidebar,#fff);background:#e53935;border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-2px}.sidebar.collapsed .nav-icon-wrap{display:inline-flex}.sidebar.collapsed .nav-badge{display:none}.sidebar-footer{border-top:1px solid #e0e0e0;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex;position:relative}.user-info{flex-direction:column;min-width:0;display:flex}.user-name{color:#0f1d3d;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-email{color:#8a8a8a;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.sidebar-collapse-btn{color:var(--color-sidebar-text);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);opacity:.5;background:0 0;border:none;align-items:center;gap:10px;padding:6px 14px;font-size:14px;font-weight:400;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.sidebar-collapse-btn svg{display:none}.sidebar-collapse-btn:hover{opacity:1;background:#0000000a}.sidebar.collapsed{width:64px}.sidebar.collapsed .sidebar-header{justify-content:center;padding:16px 0}.sidebar.collapsed .sidebar-logo-link{justify-content:center;width:auto;display:flex}.sidebar.collapsed .sidebar-logo{width:32px}.sidebar.collapsed .sidebar-logo-icon{width:28px;height:28px}.sidebar.collapsed .sidebar-nav{justify-content:center;padding:8px 6px}.sidebar.collapsed .sidebar-nav a svg{display:block}.sidebar.collapsed .sidebar-nav a,.sidebar.collapsed .sidebar-collapse-btn{justify-content:center;padding:10px}.sidebar.collapsed .nav-label,.sidebar.collapsed .sidebar-nav a.active:after{display:none}.sidebar.collapsed .sidebar-nav a.active{background:var(--color-sidebar-active);color:#fff;border-radius:10px}.sidebar.collapsed .sidebar-nav a.active svg{color:#fff}.sidebar.collapsed .sidebar-collapse-btn svg{display:block}.sidebar.collapsed .sidebar-footer{flex-direction:column;gap:6px;padding:8px}.sidebar.collapsed .user-info,.sidebar.collapsed .sidebar-footer .btn-icon{display:none}.sidebar-credit{color:#8a8a8a;text-align:center;border-top:1px solid #e0e0e0;flex-direction:column;align-items:center;gap:2px;padding:8px 16px 12px;font-size:11px;display:flex}.sidebar-credit-text{line-height:1.3}.sidebar-credit a{color:#1b2a4a;text-decoration:none}.sidebar-credit a:hover{text-decoration:underline}.sidebar-version{color:#8a8a8a;font-variant-numeric:tabular-nums;font-size:10px;text-decoration:none}a.sidebar-version:hover{color:#1b2a4a;text-decoration:underline}.sidebar.collapsed .sidebar-credit{padding:6px 4px 8px}.sidebar.collapsed .sidebar-credit-text{display:none}.page{padding:24px 32px}.page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-header h1{color:#0f1d3d;letter-spacing:-.3px;margin:0;font-size:22px;font-weight:700}.page-header-left{align-items:center;gap:12px;display:flex}.page-header-left h1,.page-header-left p{margin:0}.text-muted{color:var(--color-text-muted)}.btn{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all var(--transition);align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;display:inline-flex}.btn:hover{background:var(--color-bg)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-full{justify-content:center;width:100%}.btn-icon{width:32px;height:32px;color:inherit;cursor:pointer;border-radius:var(--radius);transition:background var(--transition);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.btn-icon:hover{background:#ffffff1a}.btn-tiny{width:20px;height:20px}.link-btn{color:var(--color-primary);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-header h2{align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;display:flex}.form-group{flex-direction:column;gap:4px;margin-bottom:16px;display:flex}.form-group label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px;font-size:12px;font-weight:600}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition);padding:8px 10px;font-size:14px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-error{color:var(--color-danger);margin:8px 0;font-size:13px}.form-info{color:var(--color-success);margin:8px 0;font-size:13px}.modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-surface);border-radius:var(--radius-lg);width:480px;max-width:90vw;max-height:90vh;box-shadow:var(--shadow-lg);padding:24px;overflow-y:auto}.modal h2{margin:0 0 20px;font-size:18px;font-weight:700}.modal-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.login-page{background:#0f1d3d;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:400px;max-width:90vw;padding:40px;box-shadow:0 24px 64px #00000059}.login-card h1{letter-spacing:-.5px;margin:0 0 4px;font-size:24px;font-weight:800}.login-logo{width:180px;max-width:100%;height:auto;margin:0 0 12px;display:block}.login-subtitle{color:var(--color-text-muted);margin-bottom:24px}.login-toggle{text-align:center;color:var(--color-text-muted);margin-top:16px;font-size:13px}.btn-google{color:#1f1f1f;background:#fff;border:1px solid #dadce0;justify-content:center;align-items:center;gap:10px;font-weight:500;display:inline-flex}.btn-google:hover{background:#f8f9fa;border-color:#c6c9cc}.btn-google:disabled{opacity:.6;cursor:default}.login-divider{color:var(--color-text-muted);align-items:center;gap:12px;margin:18px 0;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.login-version{text-align:center;color:var(--color-text-muted);opacity:.6;margin-top:24px;font-size:11px}.clients-toolbar{align-items:stretch;gap:8px;margin-bottom:20px;display:flex}.clients-search{flex:1;min-width:0;position:relative}.clients-search-icon{color:var(--color-text-muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.clients-search-input{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:100%;color:var(--color-text);transition:border-color var(--transition);padding:10px 12px 10px 36px;font-size:14px}.clients-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.clients-search-input::placeholder{color:var(--color-text-muted)}.clients-division-filter{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);cursor:pointer;min-width:200px;transition:border-color var(--transition);padding:10px 12px;font-size:14px}.clients-division-filter:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.clients-sections{flex-direction:column;gap:28px;display:flex}.clients-section-title{text-transform:uppercase;letter-spacing:.6px;color:#fff;border-radius:var(--radius-lg);background:#0f1d3d;margin:0 0 14px;padding:10px 16px;font-size:13px;font-weight:700}.archived-section{border-top:1px solid var(--color-border);margin-top:32px;padding-top:20px}.archived-toggle{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition);border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.archived-toggle:hover{border-color:var(--color-primary);color:var(--color-primary)}.project-card-archived{opacity:.6}.project-card-archived:hover{opacity:.85}.project-card-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.archive-btn{opacity:0;transition:opacity var(--transition)}.project-card:hover .archive-btn{opacity:1}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}a.project-card{color:inherit;transition:box-shadow var(--transition), border-color var(--transition);text-decoration:none}a.project-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow)}.project-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.project-card-header h3{margin:0;font-size:16px;font-weight:600}.project-description{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:13px;display:-webkit-box;overflow:hidden}.project-card-footer{border-top:1px solid var(--color-border);color:var(--color-primary);justify-content:space-between;align-items:center;padding-top:12px;font-size:13px;display:flex}.subprojects-bar,.subprojects-list{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;font-size:13px;display:flex}.subproject-label{color:var(--color-text-muted)}.subproject-chip{background:var(--color-primary-light);color:var(--color-primary);border-radius:12px;padding:2px 10px;font-size:12px;font-weight:500;text-decoration:none}.status-badge{text-transform:capitalize;white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.status-active,.status-in_progress{color:#0d7a63;background:#c8f5ee}.status-on_hold,.status-review{color:#92400e;background:#fef3c7}.status-completed{color:#29a8ff;background:#e8f4ff}.status-archived,.status-todo{color:#4a4a4a;background:#f0f0f0}.task-filters{flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.filter-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;text-transform:capitalize;transition:all var(--transition);border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.filter-count{background:#00000014;border-radius:8px;padding:0 6px;font-size:11px}.filter-btn.active .filter-count{background:#fff3}.task-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.task-row{border-bottom:1px solid var(--color-border);transition:background var(--transition);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.task-row:last-child{border-bottom:none}.task-row:hover{background:#f5f5f5}.task-row.depth-1{padding-left:44px}.task-row.depth-2{padding-left:68px}.task-row-left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.task-row-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.drag-handle{color:silver;cursor:grab;flex-shrink:0}.subtask-spacer{flex-shrink:0;width:20px}.status-icon{cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;display:flex}.status-icon.status-todo{color:#999}.status-icon.status-in_progress{color:var(--color-primary)}.status-icon.status-review{color:var(--color-warning)}.status-icon.status-completed{color:var(--color-success)}.task-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.task-title.completed{color:var(--color-text-muted);text-decoration:line-through}.priority-select,.assignee-select{cursor:pointer;appearance:none;text-align:center;border:none;border-radius:10px;padding:3px 8px;font-size:11px;font-weight:600}.assignee-select{border-radius:var(--radius);color:var(--color-text-muted);background:0 0;border:1px solid #0000;padding:3px 6px;font-size:12px;font-weight:500}.assignee-select:hover{border-color:var(--color-border);background:var(--color-bg)}.task-row.priority-bar-low{border-left:3px solid #0000}.task-row.priority-bar-medium{border-left:3px solid #4ade80}.task-row.priority-bar-high{border-left:3px solid #fbbf24}.task-row.priority-bar-urgent{border-left:3px solid #ef4444}.due-date{color:var(--color-text-muted);white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.due-date.overdue{color:var(--color-danger);font-weight:600}.due-date-input{border-radius:var(--radius);color:var(--color-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;padding:2px 4px;font-family:inherit;font-size:12px;font-weight:400}.due-date-input:hover{border-color:var(--color-border);background:var(--color-bg)}.due-date-input:focus{border-color:var(--color-primary);outline:none}.task-detail-due{align-items:center;gap:6px;display:flex}.dashboard-widgets{flex-wrap:wrap;gap:16px;margin-bottom:20px;display:flex}.widget-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);align-items:center;gap:12px;min-width:200px;padding:16px 20px;display:flex}.widget-wide{flex:1;min-width:300px}.widget-danger{border-color:#f5007a4d}.widget-danger .widget-icon,.widget-danger .widget-number{color:var(--color-danger)}.widget-warning{border-color:#d977064d}.widget-warning .widget-icon{color:var(--color-warning)}.widget-ok .widget-icon,.widget-ok .widget-number{color:var(--color-success)}.widget-icon{flex-shrink:0}.widget-content{flex-direction:column;flex:1;display:flex}.widget-number{font-size:28px;font-weight:700;line-height:1}.widget-label{color:var(--color-text-muted);font-size:12px}.widget-label-bold{font-size:13px;font-weight:600}.widget-link{color:var(--color-primary);white-space:nowrap;font-size:12px;text-decoration:none}.widget-link:hover{text-decoration:underline}.widget-attention-list{flex-direction:column;gap:4px;margin-top:6px;display:flex}.widget-attention-item{color:var(--color-text);justify-content:space-between;align-items:center;padding:4px 0;font-size:13px;text-decoration:none;display:flex}.widget-attention-item:hover{color:var(--color-primary)}.widget-attention-count{color:var(--color-danger);font-size:12px;font-weight:600}.dashboard-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=900px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-list{margin:0;padding:0;list-style:none}.dashboard-list li{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.dashboard-list li:last-child{border-bottom:none}.dashboard-list a{color:var(--color-text);align-items:center;gap:8px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.dashboard-list a:hover{color:var(--color-primary)}.dashboard-task-btn{font:inherit;color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-size:14px;font-weight:500;display:flex}.dashboard-task-btn:hover{color:var(--color-primary)}.dashboard-page{color:#fff;background:#0a0a0a;max-width:none;min-height:100vh}.dashboard-page .page-header h1{color:#fff}.dashboard-page .page-header .text-muted{color:#ffffff80}.dashboard-page .widget-card{border-color:var(--color-border);background:#fff}.dashboard-page .widget-number{color:var(--color-text)}.dashboard-page .widget-label{color:var(--color-text-muted)}.dashboard-page .widget-label-bold,.dashboard-page .widget-attention-item{color:var(--color-text)}.dashboard-page .card{border-color:var(--color-border);color:var(--color-text);background:#fff}.dashboard-page .card h2{color:var(--color-text)}.dashboard-page .dashboard-list li{border-bottom-color:var(--color-border)}.dashboard-page .dashboard-list a{color:var(--color-text)}.dashboard-page .dashboard-list a:hover{color:var(--color-primary)}.dashboard-page .dashboard-task-btn{color:var(--color-text)}.dashboard-page .dashboard-task-btn:hover{color:var(--color-primary)}.dashboard-page .due-date{color:#ffffff80}.dashboard-page .due-date.overdue{color:#ef4444}.dashboard-page .btn{color:var(--color-text);border-color:var(--color-border)}.dashboard-page .btn:hover{background:var(--color-bg)}.task-meta{align-items:center;gap:8px;display:flex}.priority-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.priority-dot.priority-low{background:#d1d5db}.priority-dot.priority-medium{background:#4ade80}.priority-dot.priority-high{background:#fbbf24}.priority-dot.priority-urgent{background:#ef4444}.empty-state{color:var(--color-text-muted);padding:8px 0;font-size:14px}.empty-state-large{text-align:center;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-state-large h2{color:var(--color-text);margin:16px 0 4px;font-size:18px}.empty-state-large p{margin:0;font-size:14px}.loading-screen{justify-content:center;align-items:center;min-height:100vh;display:flex}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:24px;height:24px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.week-nav{align-items:center;gap:8px;margin-bottom:20px;display:flex}.week-label{justify-content:center;align-items:center;gap:6px;min-width:200px;font-size:14px;font-weight:600;display:inline-flex}.btn-sm{padding:4px 10px;font-size:12px}.time-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);align-items:flex-end;gap:24px;margin-bottom:20px;padding:20px;display:flex}.time-summary-total{flex-shrink:0;align-items:center;gap:8px;display:flex}.total-hours{color:var(--color-text);font-size:28px;font-weight:700;line-height:1}.time-summary-days{flex:1;justify-content:space-around;align-items:flex-end;gap:6px;height:80px;display:flex}.day-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;height:100%;display:flex}.day-bar-fill{background:var(--color-primary-light);border-radius:4px 4px 0 0;width:100%;max-width:40px;min-height:0;transition:height .3s}.day-bar.today .day-bar-fill{background:var(--color-primary)}.day-bar-hours{color:var(--color-text);min-height:14px;font-size:11px;font-weight:600}.day-bar-label{color:var(--color-text-muted);font-size:11px;font-weight:500}.day-bar.today .day-bar-label{color:var(--color-primary);font-weight:700}.time-entries-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.time-entry-row{border-bottom:1px solid var(--color-border);transition:background var(--transition);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.time-entry-row:last-child{border-bottom:none}.time-entry-row:hover{background:#f5f5f5}.time-entry-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.time-entry-hours{color:var(--color-primary);min-width:48px;font-size:16px;font-weight:700}.time-entry-details{flex-direction:column;gap:2px;min-width:0;display:flex}.time-entry-task{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.time-entry-meta{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.time-entry-project{font-weight:500}.time-entry-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.time-entry-user{color:var(--color-text-muted);background:var(--color-bg);border-radius:10px;padding:2px 8px;font-size:12px}.time-entry-date{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.btn-danger-icon{color:var(--color-text-muted)}.btn-danger-icon:hover{color:var(--color-danger);background:#f5007a14}.workload-list{flex-direction:column;gap:12px;display:flex}.workload-card{padding:0;overflow:hidden}.workload-card-header{cursor:pointer;transition:background var(--transition);align-items:center;gap:20px;padding:16px 20px;display:flex}.workload-card-header:hover{background:#f5f5f5}.workload-user{align-items:center;gap:10px;min-width:180px;display:flex}.workload-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.workload-user-info{flex-direction:column;display:flex}.workload-name{font-size:14px;font-weight:600}.workload-role{color:var(--color-text-muted);text-transform:capitalize;font-size:11px}.workload-stats{align-items:center;gap:16px;min-width:200px;display:flex}.workload-stat{color:var(--color-text-muted);align-items:center;gap:4px;font-size:13px;display:flex}.workload-stat-value{color:var(--color-text);font-weight:600}.workload-stat-label{font-size:11px}.workload-stat-badges{flex-wrap:wrap;gap:4px;display:flex}.workload-bar-container{flex:1;align-items:center;gap:10px;min-width:120px;display:flex}.workload-bar{background:var(--color-bg);border-radius:4px;flex:1;height:8px;overflow:hidden}.workload-bar-fill{border-radius:4px;height:100%;transition:width .3s}.workload-bar-fill.light{background:var(--color-success)}.workload-bar-fill.moderate{background:var(--color-warning)}.workload-bar-fill.heavy{background:var(--color-danger)}.workload-task-count{color:var(--color-text-muted);white-space:nowrap;text-align:right;min-width:50px;font-size:12px;font-weight:600}.workload-tasks{border-top:1px solid var(--color-border);padding:4px 0}.workload-task-row{color:var(--color-text);transition:background var(--transition);align-items:center;gap:8px;padding:8px 20px 8px 66px;font-size:13px;text-decoration:none;display:flex}.workload-task-row:hover{background:#f5f5f5}.workload-task-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:500;overflow:hidden}.workload-task-project{color:var(--color-text-muted);background:var(--color-bg);white-space:nowrap;border-radius:8px;padding:1px 8px;font-size:12px}.chat-layout{height:100vh;display:flex}.chat-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;width:220px;display:flex}.chat-sidebar-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:16px;display:flex}.chat-sidebar-header h2{margin:0;font-size:14px;font-weight:700}.channel-list{flex:1;padding:8px;overflow-y:auto}.channel-empty{color:var(--color-text-muted);padding:8px;font-size:13px}.channel-badge{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex;overflow:hidden}.channel-badge-text{line-height:1}.channel-badge-img{object-fit:cover;border-radius:50%;flex-shrink:0}.channel-color-picker{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.channel-color-swatch{cursor:pointer;width:28px;height:28px;transition:transform var(--transition), border-color var(--transition);border:2px solid #0000;border-radius:50%;padding:0}.channel-color-swatch:hover{transform:scale(1.1)}.channel-color-swatch.selected{border-color:var(--color-text);transform:scale(1.1)}.channel-unread-dot{background:var(--color-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-left:auto}.channel-item{border-radius:var(--radius);width:100%;color:var(--color-text-muted);cursor:pointer;text-align:left;transition:all var(--transition);background:0 0;border:none;align-items:center;gap:8px;padding:7px 10px;font-size:13px;font-weight:500;display:flex}.channel-item:hover{background:var(--color-bg);color:var(--color-text)}.channel-item.active{background:var(--color-primary-light);color:var(--color-primary)}.channel-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-main{flex-direction:column;flex:1;min-width:0;display:flex}.chat-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.chat-header-info{align-items:center;gap:8px;display:flex}.chat-header-info h3{margin:0;font-size:15px;font-weight:600}.chat-badge{color:var(--color-warning);background:#fef3c7;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.chat-messages{background:#fff;flex-direction:column;flex:1;gap:0;padding:16px 0;display:flex;overflow-y:auto}.chat-empty{color:var(--color-text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.chat-empty p{margin:0;font-size:14px}.chat-empty-state{color:var(--color-text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.chat-empty-state h2{color:var(--color-text);margin:16px 0 4px;font-size:18px}.chat-empty-state p{margin:0;font-size:14px}.chat-date-separator{justify-content:center;align-items:center;padding:12px 0 8px;display:flex}.chat-date-separator span{color:var(--color-text-muted);background:var(--color-bg);border-radius:10px;padding:2px 12px;font-size:11px;font-weight:600}.chat-message{transition:background var(--transition);gap:10px;padding:6px 20px;display:flex;position:relative}.chat-message:hover{background:#f5f5f5}.chat-message-actions{opacity:0;transition:opacity var(--transition);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);gap:4px;padding:4px;display:flex;position:absolute;top:4px;right:16px}.chat-message-actions .btn-icon{width:30px;height:30px}.chat-message:hover .chat-message-actions{opacity:1}.chat-message-edit{flex-direction:column;gap:4px;display:flex}.chat-message-edit textarea{border:1px solid var(--color-border);border-radius:var(--radius);resize:vertical;min-height:60px;padding:8px 10px;font-family:inherit;font-size:14px}.chat-message-edit-actions{justify-content:flex-end;gap:4px;display:flex}.chat-reactions{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.chat-reaction{background:var(--color-bg);border:1px solid var(--color-border);cursor:pointer;transition:all var(--transition);border-radius:12px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;display:inline-flex}.chat-reaction:hover{border-color:var(--color-primary);background:#fff}.chat-reaction.mine{border-color:var(--color-primary);background:#e8f4ff}.chat-reaction-count{color:var(--color-text-muted);font-weight:600}.chat-reaction.mine .chat-reaction-count{color:var(--color-primary)}.chat-reaction-picker{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:20;gap:2px;padding:4px;display:flex;position:absolute;top:-40px;right:0}.chat-reaction-picker-btn{border-radius:var(--radius);cursor:pointer;transition:background var(--transition);background:0 0;border:none;padding:4px 6px;font-size:18px}.chat-reaction-picker-btn:hover{background:var(--color-bg)}.file-link-btn{font:inherit;color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.file-link-btn:hover{color:var(--color-primary-hover)}.file-preview-overlay{z-index:300;background:#000000bf;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.file-preview{background:var(--color-surface);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:1100px;height:100%;max-height:90vh;display:flex;overflow:hidden}.file-preview-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.file-preview-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:600;display:flex;overflow:hidden}.file-preview-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.file-preview-body{background:#1a1a1a;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:auto}.file-preview-image{object-fit:contain;max-width:100%;max-height:100%}.file-preview-iframe{background:#fff;border:none;width:100%;height:100%}.file-preview-video{max-width:100%;max-height:100%}.file-preview-audio{width:80%;max-width:500px}.file-preview-fallback{color:#fff;text-align:center;flex-direction:column;align-items:center;gap:12px;padding:40px;display:flex}.file-preview-fallback p{opacity:.7;margin:0;font-size:14px}.chat-message-avatar{color:#4a4a4a;background:#e0e0e0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.chat-message.own .chat-message-avatar{background:var(--color-primary);color:#fff}.chat-message-body{flex:1;min-width:0}.chat-message-header{align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.chat-message-author{color:var(--color-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px;font-weight:700}.chat-message-time{color:var(--color-text-muted);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:11px}.chat-message-content{word-wrap:break-word;white-space:pre-wrap;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px;line-height:1.5}.chat-message-continuation{padding-top:1px;padding-bottom:1px}.chat-message-time-gutter{flex-shrink:0;justify-content:flex-end;align-items:center;width:36px;display:flex}.chat-message-time-hover{color:var(--color-text-muted);opacity:0;white-space:nowrap;font-size:10px;line-height:1;transition:opacity .1s}.chat-message-continuation:hover .chat-message-time-hover{opacity:1}.chat-message-edited-inline{color:var(--color-text-muted);margin-left:4px;font-size:11px}.chat-quote-block{background:#f0f0f0;border-left:3px solid #a0a0a0;border-radius:0 6px 6px 0;max-width:100%;margin-bottom:4px;padding:6px 10px}.chat-quote-line{color:#555;white-space:pre-wrap;word-break:break-word;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:12px;line-height:1.5}.chat-quote-line strong{color:#333;font-weight:600}.message-toast-stack{z-index:250;pointer-events:none;flex-direction:column;gap:8px;max-width:360px;display:flex;position:fixed;top:16px;right:16px}.message-toast{pointer-events:auto;text-align:left;color:#fff;cursor:pointer;width:360px;font:inherit;background:#0f1d3d;border:none;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;animation:.18s ease-out message-toast-in;display:flex;box-shadow:0 8px 24px #00000040}.message-toast:hover{background:#18305f}@keyframes message-toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.message-toast-icon{background:#ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.message-toast-body{flex:1;min-width:0}.message-toast-header{align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.message-toast-sender{font-size:13px;font-weight:600}.message-toast-channel{opacity:.7;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.message-toast-content{opacity:.9;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.message-toast-close{color:#fff;opacity:.5;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px}.message-toast-close:hover{opacity:1;background:#ffffff1f}.chat-input-textarea{resize:none;width:100%;min-height:42px;max-height:160px;color:var(--color-text);transition:border-color var(--transition), background var(--transition);background:#fafafa;border:1px solid #ececec;border-radius:18px;padding:10px 14px;font-family:inherit;font-size:14px;line-height:1.5;overflow-y:auto}.chat-input-textarea:focus{border-color:var(--color-primary);background:#fff;outline:none}.chat-input-textarea::placeholder{color:#9e9e9e}.chat-input{border-top:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;gap:4px;padding:12px 20px;display:flex}.btn-icon-send{border-radius:var(--radius-lg);justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex}.btn-icon-send:disabled{opacity:.4;cursor:not-allowed}.checkbox-label{color:var(--color-text-muted);cursor:pointer;align-items:center;gap:8px;margin-bottom:16px;font-size:13px;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:16px;height:16px}.notif-filters{gap:4px;margin-bottom:16px;display:flex}.notif-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.notif-row{border-bottom:1px solid var(--color-border);transition:background var(--transition);align-items:flex-start;gap:10px;padding:14px 16px;display:flex}.notif-row:last-child{border-bottom:none}.notif-row:hover{background:#f5f5f5}.notif-row.unread{background:var(--color-primary-light)}.notif-row.unread:hover{background:#e8f4ff}.notif-row-clickable,.notif-row.unread{cursor:pointer}.notif-indicator{flex-shrink:0;width:8px;padding-top:6px}.notif-dot{background:var(--color-primary);border-radius:50%;width:8px;height:8px;display:block}.notif-content{flex:1;min-width:0}.notif-title{font-size:14px;font-weight:600;display:block}.notif-row.unread .notif-title{color:var(--color-text)}.notif-row:not(.unread) .notif-title{color:var(--color-text-muted)}.notif-body{color:var(--color-text-muted);margin:2px 0 0;font-size:13px;line-height:1.4}.notif-time{color:var(--color-text-muted);margin-top:4px;font-size:11px;display:block}.notif-actions{opacity:0;transition:opacity var(--transition);flex-shrink:0;align-items:center;gap:2px;display:flex}.notif-row:hover .notif-actions{opacity:1}.page-header-actions{align-items:center;gap:8px;display:flex}.task-lists-container{flex-direction:column;gap:16px;display:flex}.task-list-drag-wrap{transition:transform .15s,opacity .15s}.task-list-drag-wrap.dragging{opacity:.4}.task-list-drag-wrap.drag-over{border-top:2px solid var(--color-primary);border-radius:var(--radius-lg)}.task-list-drag-wrap[draggable=true]{cursor:grab}.task-list-drag-wrap[draggable=true]:active{cursor:grabbing}.client-detail-page{background:#fff}.task-list-section{background:0 0;border:none;border-radius:0}.task-list-header{color:#fff;border-radius:var(--radius-lg);background:#1a1a1a;align-items:center;gap:8px;padding:12px 16px;display:flex}.task-list-header h3{color:#fff;flex:1;align-items:center;gap:4px;margin:0;font-size:14px;font-weight:600;display:flex}.task-list-menu-wrap{position:relative}.task-list-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:50;min-width:150px;margin-top:4px;padding:4px;position:absolute;top:100%;right:0}.task-list-menu-item{width:100%;color:var(--color-text);border-radius:var(--radius);cursor:pointer;transition:background var(--transition);background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.task-list-menu-item:hover{background:var(--color-bg)}.task-list-menu-danger{color:#ef4444}.task-list-menu-danger:hover{background:#fef2f2}.task-list-count{color:#fff9;background:#ffffff26;border-radius:8px;padding:0 7px;font-size:12px}.task-list-header .btn-icon{color:#ffffffb3}.task-list-header .btn-icon:hover{color:#fff}.task-list-header .btn{color:#fff;background:#ffffff1a;border-color:#fff3}.task-list-header .btn:hover{background:#ffffff2e}.task-list-empty{text-align:center;color:var(--color-text-muted);padding:20px 16px;font-size:13px}.show-completed-toggle{color:var(--color-text-muted);cursor:pointer;width:100%;transition:color var(--transition);background:0 0;border:none;align-items:center;gap:4px;padding:8px 16px;font-size:12px;display:flex}.show-completed-toggle:hover{color:var(--color-text)}.task-row{cursor:pointer}.task-detail-overlay{z-index:100;background:#0000004d;justify-content:flex-end;display:flex;position:fixed;inset:0}.tdp{background:var(--color-surface);width:620px;max-width:100vw;height:100vh;color:var(--color-text);flex-direction:column;display:flex;position:relative;overflow-y:auto;box-shadow:-4px 0 16px #0000001f}.tdp-dragging{outline:2px dashed var(--color-primary);outline-offset:-8px}.tdp-drop-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--color-primary);pointer-events:none;z-index:10;background:#1e82e614;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:15px;font-weight:600;display:flex;position:absolute;inset:0}.tdp-topbar{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:10px 20px;display:flex}.tdp-topbar-left,.tdp-topbar-right{align-items:center;gap:6px;display:flex}.tdp-timer-live{color:var(--color-primary);padding:0 4px;font-family:ui-monospace,Consolas,monospace;font-size:15px;font-weight:700}.tdp-timer-live.paused{color:var(--color-text-muted)}.tdp-stat{color:var(--color-text-muted);white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:flex}.tdp-breadcrumb{color:var(--color-text-muted);align-items:center;gap:4px;padding:8px 20px 0;font-size:12px;display:flex}.tdp-breadcrumb-link{color:var(--color-text-muted);text-decoration:none}.tdp-breadcrumb-link:hover{color:var(--color-primary);text-decoration:underline}.tdp-title-row{align-items:flex-start;gap:10px;padding:12px 20px 4px;display:flex}.tdp-check{flex-shrink:0;margin-top:2px}.tdp-title{flex:1;margin:0;font-size:22px;font-weight:700;line-height:1.3}.tdp-title.completed{color:var(--color-text-muted);text-decoration:line-through}.tdp-title.editable-title{cursor:pointer}.tdp-title.editable-title:hover{color:var(--color-primary)}.tdp-title-input{border:1px solid var(--color-primary);border-radius:var(--radius);width:100%;color:var(--color-text);outline:none;flex:1;padding:2px 8px;font-size:22px;font-weight:700}.tdp-desc{padding:0 20px 12px}.tdp-meta-grid{border-bottom:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:12px 16px;padding:0 20px 16px;display:grid}.tdp-meta-item{flex-direction:column;gap:4px;display:flex}.tdp-meta-label{color:var(--color-text);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:4px;font-size:11px;font-weight:700;display:flex}.tdp-meta-value{flex:1;align-items:center;gap:6px;min-width:0;font-weight:400;display:flex}.tdp-meta-select{border-radius:var(--radius);cursor:pointer;color:var(--color-text);appearance:none;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") right 6px center no-repeat;border:1px solid #0000;padding:3px 22px 3px 6px;font-size:13px;font-weight:400}.tdp-meta-select:hover{border-color:var(--color-border);background-color:var(--color-bg)}.tdp-meta-text{color:var(--color-text);padding:2px 0;font-size:13px}.tdp-meta-item .priority-select{text-align:left;font-weight:400}.tdp-meta-item select,.tdp-meta-item input{font-weight:400}.tdp-dates{align-items:center;gap:4px;display:flex}.tdp-dates input{border-radius:var(--radius);color:var(--color-text);cursor:pointer;background:0 0;border:1px solid #0000;width:110px;padding:2px 4px;font-family:inherit;font-size:13px;font-weight:400}.tdp-dates input:hover{border-color:var(--color-border)}.tdp-dates span{color:var(--color-text-muted);font-size:12px}.tdp-date-field{align-items:center;gap:2px;display:flex}.tdp-date-clear{width:18px;height:18px;color:var(--color-text-muted);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.tdp-date-clear:hover{background:var(--color-bg);opacity:1;color:var(--color-danger,#e53e3e)}.tdp-see-more{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:8px 20px;font-size:12px;display:flex}.tdp-see-more:hover{color:var(--color-primary)}.tdp-more-section{border-bottom:1px solid var(--color-border);padding:0 20px 16px}.tdp-tabs{border-bottom:1px solid var(--color-border);flex-shrink:0;gap:0;padding:0 20px;display:flex}.tdp-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:5px;margin-bottom:-1px;padding:10px 16px;font-size:13px;font-weight:600;display:flex}.tdp-tab:hover{color:var(--color-text)}.tdp-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tdp-tab-count{background:var(--color-bg);border-radius:6px;padding:0 5px;font-size:11px}.tdp-tab-content{flex:1;padding:16px 20px;overflow-y:auto}.tdp-section{margin-bottom:20px}.tdp-section h4{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:6px;margin:0 0 10px;font-size:12px;font-weight:600;display:flex}.tdp-section-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.tdp-section-header h4{margin:0}.tdp-comments-tab{flex-direction:column;display:flex}.tdp-comments-tab .comments-list{flex:1;overflow-y:auto}.priority-badge-low{color:#6b7280;background:#f3f4f6}.priority-badge-medium{color:#fff;background:#4ade80}.priority-badge-high{color:#fff;background:#fbbf24}.priority-badge-urgent{color:#fff;background:#ef4444}.attachment-list{flex-direction:column;gap:4px;display:flex}.attachment-row{border-radius:var(--radius);background:var(--color-bg);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.attachment-info{cursor:pointer;min-width:0;color:var(--color-text);flex:1;align-items:center;gap:8px;display:flex}.attachment-info:hover{color:var(--color-primary)}.attachment-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.attachment-size{color:var(--color-text-muted);flex-shrink:0;font-size:11px}.attachment-actions{flex-shrink:0;gap:2px;display:flex}.comments-list{flex-direction:column;flex:1;gap:4px;margin-bottom:12px;display:flex;overflow-y:auto}.comment-item{gap:10px;padding:8px 0;display:flex}.comment-avatar{color:#4a4a4a;background:#e0e0e0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:flex}.comment-body{flex:1;min-width:0}.comment-header{align-items:center;gap:6px;margin-bottom:2px;display:flex}.comment-author{font-size:13px;font-weight:600}.comment-time{color:var(--color-text-muted);font-size:11px}.comment-delete{opacity:0;transition:opacity var(--transition)}.comment-item:hover .comment-delete{opacity:1}.comment-content{word-wrap:break-word;margin:0;font-size:14px;line-height:1.5}.mention-highlight{color:var(--color-primary);background:var(--color-primary-light);border-radius:3px;padding:0 2px;font-weight:600}.comment-input-container{border-top:1px solid var(--color-border);align-items:flex-end;gap:8px;padding:12px 0 24px;display:flex}.comment-input-wrapper{flex:1;position:relative}.comment-input-wrapper textarea{border:1px solid var(--color-border);border-radius:var(--radius);resize:none;width:100%;color:var(--color-text);background:#fff;padding:8px 10px;font-family:inherit;font-size:14px}.comment-input-wrapper textarea:focus{border-color:var(--color-primary);background:#fff;outline:none}.mention-dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:10;margin-bottom:4px;position:absolute;bottom:100%;left:0;right:0;overflow:hidden}.mention-item{cursor:pointer;text-align:left;width:100%;color:var(--color-text);background:0 0;border:none;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.mention-item:hover,.mention-item.active{background:var(--color-primary-light)}.mention-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:10px;font-weight:700;display:flex}.members-list{flex-direction:column;gap:4px;max-height:400px;display:flex;overflow-y:auto}.member-toggle{border-radius:var(--radius);cursor:pointer;transition:background var(--transition);align-items:center;gap:12px;padding:10px 12px;display:flex}.member-toggle:hover{background:var(--color-bg)}.member-toggle input[type=checkbox]{cursor:pointer;width:16px;height:16px}.member-info{flex-direction:column;display:flex}.member-name{font-size:14px;font-weight:500}.member-role{color:var(--color-text-muted);text-transform:capitalize;font-size:12px}.users-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.users-header-row{text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);background:#f5f5f5;grid-template-columns:2fr 1fr 3fr;gap:12px;padding:10px 16px;font-size:11px;font-weight:600;display:grid}.user-row{border-bottom:1px solid var(--color-border);transition:background var(--transition);grid-template-columns:2fr 1fr 3fr;align-items:center;gap:12px;padding:12px 16px;display:grid}.user-row-bottom{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-row:last-child{border-bottom:none}.user-row:hover{background:#f5f5f5}.user-row.deactivated{opacity:.6}.user-row-info{align-items:center;gap:10px;min-width:0;display:flex}.user-row-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.user-row.deactivated .user-row-avatar{background:#999}.user-row-pending{opacity:.85}.user-row-avatar-pending{background:#94a3b8}.status-pending{color:#92400e;background:#fef3c7}.role-select-label{color:var(--color-text-muted);padding:4px 0;font-size:13px}.user-row-details{flex-direction:column;min-width:0;display:flex}.user-row-name{align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.you-badge{color:var(--color-primary);background:var(--color-primary-light);border-radius:8px;padding:1px 6px;font-size:10px;font-weight:500}.user-row-email{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.role-select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;padding:4px 8px;font-size:13px}.role-select:disabled{opacity:.5;cursor:not-allowed}.user-row-date{color:var(--color-text-muted);font-size:12px}.user-row-actions{gap:4px;display:flex}.btn-danger-text{color:var(--color-danger);border-color:#f5007a4d}.btn-danger-text:hover{border-color:var(--color-danger);background:#f5007a0f}.btn-danger-solid{background:var(--color-danger);color:#fff;border:1px solid var(--color-danger);border-radius:var(--radius);cursor:pointer;align-items:center;gap:6px;padding:7px 14px;font-size:13px;font-weight:500;display:inline-flex}.btn-danger-solid:hover{background:#d4006a;border-color:#d4006a}.btn-danger-solid:disabled{opacity:.5;cursor:not-allowed}.deactivate-task-notice{border-radius:var(--radius);color:#92400e;background:#fef3c7;border:1px solid #fbbf24;margin-bottom:16px;padding:10px 14px;font-size:13px}.status-deactivated{color:#d4006a;background:#fde8f0}.form-hint{color:var(--color-text-muted);align-items:center;gap:6px;margin:0 0 12px;font-size:12px;display:flex}.form-success{color:var(--color-success);margin:8px 0;font-size:13px}.tab-bar{border-bottom:2px solid var(--color-border);gap:2px;margin-bottom:20px;display:flex}.tab-btn{color:var(--color-text-muted);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-2px;padding:10px 16px;font-size:13px;font-weight:600;display:inline-flex}.tab-btn:hover{color:var(--color-text)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-badge{background:var(--color-danger);color:#fff;text-align:center;border-radius:8px;min-width:18px;padding:1px 6px;font-size:10px;font-weight:700}.approval-status-select{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;background:#fff;min-width:140px;padding:4px 8px;font-size:12px}.inline-edit{align-items:center;gap:4px;display:flex}.inline-edit input{border:1px solid var(--color-primary);border-radius:var(--radius);outline:none;padding:2px 6px;font-size:16px;font-weight:600}.project-card-header h3{align-items:center;gap:6px;display:flex}.project-card-header h3 a{color:inherit;text-decoration:none}.project-card-header h3 a:hover{color:var(--color-primary)}.edit-name-btn{opacity:0;transition:opacity var(--transition)}.project-card:hover .edit-name-btn{opacity:1}.project-card-footer{color:inherit;text-decoration:none}.time-range-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.time-range-btns{gap:4px;display:flex}.time-range-custom{align-items:center;gap:8px;display:flex}.time-range-custom input{border:1px solid var(--color-border);border-radius:var(--radius);padding:5px 8px;font-size:13px}.time-range-custom span{color:var(--color-text-muted);font-size:13px}.client-time-summary{align-items:center;display:flex}.client-time-total{align-items:center;gap:10px;display:flex}.task-hours-breakdown{flex-direction:column;gap:8px;display:flex}.task-hours-row{align-items:center;gap:10px;display:flex}.task-hours-name{white-space:nowrap;text-overflow:ellipsis;min-width:150px;font-size:13px;font-weight:500;overflow:hidden}.task-hours-bar-wrap{background:var(--color-bg);border-radius:4px;flex:1;height:8px;overflow:hidden}.task-hours-bar{background:var(--color-primary);border-radius:4px;min-width:4px;height:100%;transition:width .3s}.task-hours-value{text-align:right;min-width:50px;font-size:13px;font-weight:600}.agendas-header{justify-content:flex-end;margin-bottom:16px;display:flex}.agendas-list{flex-direction:column;gap:12px;display:flex}.agenda-card{cursor:default}.agenda-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.agenda-card-header h3{cursor:pointer;margin:0;font-size:16px;font-weight:600}.agenda-card-header h3:hover{color:var(--color-primary)}.agenda-card-actions{opacity:0;transition:opacity var(--transition);gap:2px;display:flex}.agenda-card:hover .agenda-card-actions{opacity:1}.agenda-preview{color:var(--color-text-muted);white-space:pre-line;margin:0 0 8px;font-size:13px;line-height:1.5}.agenda-meta{color:var(--color-text-muted);gap:12px;font-size:12px;display:flex}.agenda-editor{flex-direction:column;gap:12px;display:flex}.agenda-editor-header{justify-content:space-between;align-items:center;display:flex}.agenda-title-input{color:var(--color-text);background:0 0;border:none;outline:none;width:100%;padding:8px 0;font-size:22px;font-weight:700}.agenda-title-input::placeholder{color:silver}.agenda-body-input{border:1px solid var(--color-border);border-radius:var(--radius-lg);resize:vertical;background:var(--color-surface);width:100%;min-height:400px;color:var(--color-text);padding:16px;font-family:inherit;font-size:15px;line-height:1.7}.agenda-body-input:focus{border-color:var(--color-primary);outline:none}.agenda-body-input::placeholder{color:silver}.agenda-editor-actions{align-items:center;gap:8px;display:flex}.agenda-editor-hint{color:var(--color-text-muted);margin:0;font-size:12px}.agenda-bullets{margin:4px 0;padding-left:20px;list-style:outside}.agenda-bullets .agenda-bullets{list-style:circle}.agenda-bullets .agenda-bullets .agenda-bullets{list-style:square}.agenda-bullets li{color:var(--color-text);font-size:13px;line-height:1.6}.agenda-text-line{color:var(--color-text);margin:2px 0;font-size:13px;line-height:1.6}.tiptap-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.tiptap-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-surface);align-items:center;gap:4px;padding:10px 14px;display:flex}.tiptap-toolbar .btn-icon{width:36px;height:36px}.tiptap-separator{background:var(--color-border);width:1px;height:18px;margin:0 4px}.tiptap-active{border-radius:4px;background:var(--color-primary)!important;color:#fff!important}.tiptap-editor .tiptap{min-height:400px;color:var(--color-text);outline:none;padding:16px;font-size:15px;line-height:1.7}.tiptap-editor .tiptap p{margin:4px 0}.tiptap-editor .tiptap ul,.tiptap-editor .tiptap ol{margin:4px 0;padding-left:24px}.tiptap-editor .tiptap li{margin:2px 0}.tiptap-editor .tiptap h2{margin:16px 0 8px;font-size:20px;font-weight:700}.tiptap-editor .tiptap h3{margin:12px 0 6px;font-size:16px;font-weight:600}.tiptap-editor .tiptap a{color:var(--color-primary);text-decoration:underline}.tiptap-editor .tiptap img.agenda-inline-image{border-radius:var(--radius);max-width:100%;margin:8px 0;display:block}.resizable-image-wrapper{display:inline-block}.resizable-image-container{border-radius:var(--radius);border:2px solid #0000}.resizable-image-container.selected{border-color:var(--color-primary)}.resizable-image-container .resize-handle{opacity:0;transition:opacity .15s}.resizable-image-container:hover .resize-handle,.resizable-image-container.selected .resize-handle{opacity:1}.tiptap-editor .tiptap strong{font-weight:600}.agenda-rich-body ul,.agenda-rich-body ol{margin:4px 0;padding-left:20px}.agenda-rich-body ul{list-style:outside}.agenda-rich-body ul ul{list-style:circle}.agenda-rich-body ul ul ul{list-style:square}.agenda-rich-body li{font-size:13px;line-height:1.6}.agenda-rich-body p{margin:2px 0;font-size:13px;line-height:1.6}.agenda-rich-body a{color:var(--color-primary);text-decoration:underline}.agenda-rich-body img{border-radius:var(--radius);max-width:100%;margin:8px 0}.agenda-rich-body strong{font-weight:600}.agenda-rich-body h2{margin:12px 0 6px;font-size:18px;font-weight:700}.agenda-rich-body h3{margin:10px 0 4px;font-size:15px;font-weight:600}.agenda-rich-body--present p{font-size:20px;line-height:1.8}.agenda-rich-body--present li{font-size:18px;line-height:1.8}.agenda-rich-body--present h2{margin:24px 0 12px;font-size:28px}.agenda-rich-body--present h3{margin:18px 0 8px;font-size:22px}.presenter-overlay{z-index:200;background:#fff;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.presenter-toolbar{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 32px;display:flex}.presenter-title-area{align-items:center;gap:16px;display:flex}.presenter-logo{border-radius:var(--radius);object-fit:contain;width:48px;height:48px}.presenter-logo-placeholder{border-radius:var(--radius);color:#fff;background:#1a1a1a;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;font-weight:700;display:flex}.presenter-toolbar h1{color:#1a1a1a;margin:0;font-size:24px;font-weight:700}.presenter-date{color:var(--color-text-muted);font-size:13px}.presenter-actions{align-items:center;gap:8px;display:flex}.presenter-content{color:#1a1a1a;width:100%;max-width:800px;margin:0 auto;padding:48px 32px}.task-detail-header-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.client-logo{border-radius:var(--radius-lg);object-fit:cover;flex-shrink:0}.client-logo-placeholder{border-radius:var(--radius-lg);color:#fff;letter-spacing:-.5px;background:linear-gradient(135deg,#29a8ff,#f5007a);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.project-card-top{align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.project-card-logo-wrap,.client-detail-logo-wrap{flex-shrink:0;position:relative}.logo-upload-btn{background:var(--color-surface);border:1px solid var(--color-border);cursor:pointer;opacity:0;width:22px;height:22px;transition:opacity var(--transition);color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:-2px;right:-2px}.logo-upload-btn-lg{width:26px;height:26px}.project-card-logo-wrap:hover .logo-upload-btn,.client-detail-logo-wrap:hover .logo-upload-btn{opacity:1}.logo-upload-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.project-card-name-group{flex-direction:column;flex:1;min-width:0;display:flex}.project-division-label{color:var(--color-text-muted);margin-top:-2px;font-size:11px;font-weight:500}.settings-tab{flex-direction:column;gap:20px;max-width:600px;display:flex}.settings-section h3{margin:0 0 16px;font-size:15px;font-weight:600}.settings-logo-row{align-items:center;gap:14px;display:flex}.settings-logo-actions{gap:6px;display:flex}.settings-save-row{align-items:center;gap:12px;display:flex}.settings-danger-zone{border-color:#f5007a33;margin-top:12px}.settings-danger-zone h3{color:var(--color-danger)}.settings-danger-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-danger-row p{margin:2px 0 0;font-size:13px}.settings-danger-row strong{font-size:14px}.project-card-badges{flex-wrap:wrap;flex-shrink:0;gap:4px;display:flex}.division-badge{text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:8px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}.division-atm{color:#29a8ff;background:#e8f4ff}.division-honor_craft{color:#9d174d;background:#fce7f3}.recurrence-indicator{color:var(--color-primary);opacity:.7;flex-shrink:0;align-items:center;display:inline-flex}.recurrence-badge{color:var(--color-primary);background:var(--color-primary-light);border-radius:8px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-flex}.brand-tab{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.brand-tab>.brand-tab-toolbar,.brand-tab>.brand-section-full{grid-column:1/-1}.brand-tab-toolbar{justify-content:flex-end;display:flex}@media (width<=900px){.brand-tab{grid-template-columns:1fr}}.brand-readonly-list{flex-direction:column;gap:10px;display:flex}.brand-readonly-row{grid-template-columns:140px 1fr;align-items:baseline;gap:12px;font-size:13px;display:grid}.brand-readonly-label{letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-muted);font-size:11px;font-weight:600}.brand-empty{color:var(--color-text-muted);margin:0;font-size:13px}.brand-book{flex-direction:column;gap:20px;display:flex}.brand-section h3{align-items:center;gap:8px;margin:0 0 14px;font-size:14px;font-weight:600;display:flex}.brand-colors-grid{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.brand-color-item{background:var(--color-bg);border-radius:var(--radius);align-items:center;gap:8px;padding:6px 10px;display:flex}.brand-color-swatch{border-radius:var(--radius);border:1px solid #0000001a;flex-shrink:0;width:32px;height:32px}.brand-color-info{flex-direction:column;display:flex}.brand-color-label{font-size:12px;font-weight:600}.brand-color-hex{color:var(--color-text-muted);font-family:monospace;font-size:11px}.brand-add-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.color-picker-input{border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;background:var(--color-surface);width:36px;height:32px;padding:2px}.brand-input{border:1px solid var(--color-border);border-radius:var(--radius);min-width:140px;padding:6px 10px;font-size:13px}.brand-input-wide{min-width:200px}.brand-hex-preview{color:var(--color-text-muted);font-family:monospace;font-size:12px}.brand-fonts-list{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.brand-font-item{background:var(--color-bg);border-radius:var(--radius);align-items:center;gap:8px;padding:8px 10px;display:flex}.brand-font-label{color:var(--color-text-muted);min-width:70px;font-size:12px;font-weight:600}.brand-font-name{flex:1;font-size:14px;font-weight:500}.brand-logos-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:14px;display:grid}.brand-logo-item{background:var(--color-bg);border-radius:var(--radius-lg);flex-direction:column;gap:8px;padding:12px;display:flex;position:relative}.brand-logo-item .btn-danger-icon{opacity:0;transition:opacity var(--transition);position:absolute;top:8px;right:8px}.brand-logo-item:hover .btn-danger-icon{opacity:1}.brand-logo-img{object-fit:contain;border-radius:var(--radius);background:#fff;width:100%;height:100px}.brand-logo-info{flex-direction:column;display:flex}.brand-logo-label{font-size:13px;font-weight:600}.brand-logo-file{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.brand-link-input-row{align-items:center;gap:8px;display:flex}.brand-link-input-row input{flex:1}.brand-links-section{margin-top:16px}.brand-links-section>label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.brand-links-list{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.brand-link-item{background:var(--color-bg);border-radius:var(--radius);align-items:center;gap:8px;padding:8px 10px;display:flex}.brand-link-name{color:var(--color-primary);font-size:13px;font-weight:500;text-decoration:none}.brand-link-name:hover{text-decoration:underline}.brand-link-url{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;overflow:hidden}.brand-add-link{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.status-client_review{color:#92400e;background:#fef3c7}.status-select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;padding:4px 8px;font-size:13px;font-weight:500}.inline-link{color:var(--color-primary);word-break:break-all;text-decoration:underline}.inline-link:hover{text-decoration:none}.editable-desc textarea{border:1px solid var(--color-border);border-radius:var(--radius);resize:vertical;background:var(--color-bg);width:100%;color:var(--color-text);padding:8px 10px;font-family:inherit;font-size:14px;line-height:1.5}.editable-desc textarea:focus{border-color:var(--color-primary);outline:none}.editable-desc-actions{gap:6px;margin-top:8px;display:flex}.editable-desc-display{cursor:pointer;border-radius:var(--radius);transition:border-color var(--transition);border:1px solid #0000;min-height:40px;padding:8px 10px}.editable-desc-display:hover{border-color:var(--color-border)}.editable-desc-display p{margin:0;font-size:14px;line-height:1.5}.time-filters-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.time-filters-selects{gap:8px;display:flex}.time-filter-select{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-width:160px;padding:6px 10px;font-size:13px}.time-summary-card{align-items:center;gap:24px;margin-bottom:20px;display:flex}.time-summary-stat{align-items:center;gap:8px;display:flex}.time-summary-number{color:var(--color-text);font-size:28px;font-weight:700;line-height:1}.time-breakdowns{flex-direction:column;gap:16px;display:flex}.time-breakdown-title{margin:0 0 12px;font-size:14px;font-weight:600}.task-hours-name-group{flex-direction:column;min-width:150px;display:flex}.task-hours-project{color:var(--color-text-muted);font-size:11px}.task-hours-bar-user{background:var(--color-success)}.time-entries-compact{flex-direction:column;display:flex}.time-entry-compact{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:8px 0;display:flex}.time-entry-compact:last-child{border-bottom:none}.time-user-filter{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);margin-left:8px;padding:5px 8px;font-size:13px}.channel-group-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);padding:12px 10px 4px;font-size:10px;font-weight:700}.chat-header-badges{gap:4px;display:flex}.chat-badge-type{color:#4a4a4a;text-transform:capitalize;background:#f0f0f0}.modal-wide{width:520px}.msg-type-selector{gap:6px;margin-bottom:16px;display:flex}.msg-type-btn{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition);align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;display:inline-flex}.msg-type-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.msg-type-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.user-select-list{border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column;max-height:250px;display:flex;overflow-y:auto}.user-select-item{cursor:pointer;transition:background var(--transition);border-bottom:1px solid var(--color-border);align-items:center;gap:10px;padding:8px 12px;display:flex}.user-select-item:last-child{border-bottom:none}.user-select-item:hover{background:var(--color-bg)}.user-select-item.selected{background:var(--color-primary-light)}.user-select-item input{cursor:pointer;width:16px;height:16px}.user-select-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:flex}.user-select-info{flex-direction:column;display:flex}.user-select-info span:first-child{font-size:13px;font-weight:500}.user-select-role{color:var(--color-text-muted);text-transform:capitalize;font-size:11px}.report-section{margin-top:8px}.report-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.report-header h2{align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;display:flex}.report-table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.report-table{border-collapse:collapse;width:100%;font-size:13px}.report-table th{text-align:left;border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#f5f5f5;padding:10px 16px;font-size:11px;font-weight:600}.report-table th:hover{color:var(--color-text)}.report-table td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:10px 16px}.report-table tr:last-child td{border-bottom:none}.report-table tr:hover td{background:#f5f5f5}.report-task-name{font-weight:500}.report-link{color:var(--color-primary);text-decoration:none}.report-link:hover{text-decoration:underline}.comm-input{border-radius:var(--radius);width:100%;color:var(--color-text);transition:border-color var(--transition), background var(--transition);background:0 0;border:1px solid #0000;padding:6px 8px;font-family:inherit;font-size:14px}.comm-input:hover{border-color:var(--color-border)}.comm-input:focus{border-color:var(--color-primary);background:#fff;outline:none}.sort-icon-inactive{opacity:.3;margin-left:4px}.sort-icon-active{opacity:1;color:var(--color-primary);margin-left:4px}.sort-icon-active.desc{transform:scaleY(-1)}.overdue-badge{border-radius:8px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.overdue-badge.mild{color:#92400e;background:#fef3c7}.overdue-badge.moderate{color:#9a3412;background:#fed7aa}.overdue-badge.severe{color:#d4006a;background:#fde8f0}@media print{.sidebar,.page-header .btn,.widget-link{display:none!important}.main-content{margin:0}.page{max-width:100%;padding:0}.report-table-wrap{box-shadow:none;border:none}.report-table th{background:#eee}}.user-avatar-img{object-fit:cover;border-radius:50%;flex-shrink:0}.user-avatar-placeholder{color:#fff;background:#29a8ff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.sidebar-avatar-wrap{cursor:pointer;border-radius:50%;flex-shrink:0;width:34px;height:34px;position:relative;overflow:hidden}.sidebar-avatar-overlay{opacity:0;transition:opacity var(--transition);background:#ffffff59;border-radius:50%;position:absolute;inset:0}.sidebar-avatar-wrap:hover .sidebar-avatar-overlay{opacity:1}.profile-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:250;min-width:180px;padding:6px;position:fixed;bottom:100px;left:8px}.profile-menu-item{width:100%;color:var(--color-text);border-radius:var(--radius);cursor:pointer;text-align:left;transition:background var(--transition);background:0 0;border:none;align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:500;display:flex}.profile-menu-item:hover{background:var(--color-bg)}.profile-menu-danger{color:#ef4444}.profile-menu-danger:hover{background:#fef2f2}.profile-menu-divider{background:var(--color-border);height:1px;margin:4px 0}.sidebar.collapsed .profile-menu{left:70px}.profile-modal-overlay{z-index:200}.profile-panel{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:101;background:#fff;border:1px solid #1a1a1a;width:420px;max-width:90vw;max-height:90vh;position:relative;overflow-y:auto}.feedback-panel{width:520px}.feedback-panel-tabs{border-bottom:1px solid var(--color-border);gap:0;padding:0 24px;display:flex}.feedback-panel-tab{color:var(--color-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 16px;font-size:14px;font-weight:500;transition:color .15s,border-color .15s}.feedback-panel-tab.active{color:#1a1a1a;border-bottom-color:#1a1a1a}.feedback-panel-tab:hover:not(.active){color:#1a1a1a}.feedback-type-toggle{gap:6px;padding:16px 24px 0;display:flex}.feedback-type-btn{border:1px solid var(--color-border);color:var(--color-muted);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:5px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.feedback-type-btn.active{color:#fff;background:#1a1a1a;border-color:#1a1a1a}.feedback-type-btn:hover:not(.active){color:#1a1a1a;border-color:#1a1a1a}.feedback-submitted-view{flex-direction:column;gap:0;display:flex}.feedback-filters{flex-wrap:wrap;gap:6px;padding:12px 24px;display:flex}.feedback-list{flex-direction:column;gap:4px;padding:0 16px 16px;display:flex}.feedback-list-row{border-radius:var(--radius);cursor:pointer;align-items:flex-start;gap:10px;padding:10px 8px;transition:background .12s;display:flex}.feedback-list-row:hover{background:var(--color-bg-hover,#f5f5f5)}.feedback-list-info{flex-direction:column;gap:2px;min-width:0;display:flex}.feedback-list-desc{color:#1a1a1a;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.feedback-list-meta{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;display:flex}.feedback-empty{color:var(--color-muted);flex-direction:column;align-items:center;gap:8px;padding:40px 24px;font-size:14px;display:flex}.profile-panel-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:20px 24px 12px;display:flex}.profile-panel-header h2{color:#1a1a1a;margin:0;font-size:18px;font-weight:700}.profile-panel-body{flex-direction:column;gap:20px;padding:24px;display:flex}.profile-panel-avatar-section{justify-content:center;display:flex}.profile-panel-avatar-wrap{cursor:pointer;border-radius:50%;flex-shrink:0;width:96px;height:96px;position:relative;overflow:hidden}.profile-panel-avatar-overlay{color:#fff;opacity:0;transition:opacity var(--transition);background:#00000080;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.profile-panel-avatar-overlay span{font-size:11px;font-weight:500}.profile-panel-avatar-wrap:hover .profile-panel-avatar-overlay{opacity:1}.profile-name-row{gap:8px;display:flex}.profile-name-row input{flex:1}.input-disabled{cursor:not-allowed;background:var(--color-bg)!important;color:var(--color-text-muted)!important}.ooo-dates-row{gap:12px;display:flex}.ooo-dates-row input[type=date]{width:100%;font-family:inherit;font-size:13px;font-weight:400}.ooo-active-badge{color:#92400e;border-radius:var(--radius);background:#fef3c7;padding:10px 14px;font-size:13px;font-weight:500}.ooo-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.ooo-entries-section{border-top:1px solid var(--color-border);padding-top:16px}.ooo-entries-title{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin:0 0 10px;font-size:11px;font-weight:700}.ooo-entries-list{flex-direction:column;gap:6px;display:flex}.ooo-entry{background:var(--color-bg);border-radius:var(--radius);align-items:center;gap:8px;padding:10px 12px;display:flex}.ooo-entry-active{background:#fef3c7;border:1px solid #fcd34d}.ooo-entry-info{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.ooo-entry-dates{color:var(--color-text);font-size:13px;font-weight:500}.ooo-entry-badge{text-transform:uppercase;letter-spacing:.3px;color:#fff;background:#92400e;border-radius:8px;padding:1px 6px;font-size:10px;font-weight:600}.ooo-entry-reason{color:var(--color-text-muted);font-size:12px}.ooo-entry-delete{flex-shrink:0;margin-left:auto}.chat-body{flex:1;display:flex;overflow:hidden}.chat-body .chat-messages{flex-direction:column;flex:1;gap:2px;padding:16px 20px;display:flex;overflow-y:auto}.chat-members-panel{border-left:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;width:200px;padding:12px;overflow-y:auto}.chat-members-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.chat-members-panel h4{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin:0;font-size:11px;font-weight:700}.chat-add-member-box{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);margin-bottom:10px;overflow:hidden}.chat-add-member-input{border:none;border-bottom:1px solid var(--color-border);box-sizing:border-box;background:0 0;outline:none;width:100%;padding:6px 8px;font-size:12px}.chat-add-member-list{flex-direction:column;max-height:160px;display:flex;overflow-y:auto}.chat-add-member-item{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:5px 8px;font-size:12px;font-weight:500;transition:background .1s;display:flex}.chat-add-member-item:hover{background:var(--color-surface)}.chat-add-member-role{color:var(--color-text-muted);margin-left:auto;font-size:10px;font-weight:400}.chat-add-member-empty{color:var(--color-text-muted);text-align:center;padding:8px;font-size:12px}.chat-members-list{flex-direction:column;gap:6px;display:flex}.chat-member-item{align-items:center;gap:8px;display:flex}.chat-member-remove{opacity:0;flex-shrink:0;margin-left:auto;transition:opacity .15s}.chat-member-item:hover .chat-member-remove{opacity:1}.chat-member-info{flex-direction:column;min-width:0;display:flex}.chat-member-name{color:#1a1a1a;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.chat-code-block-wrap{margin:6px 0;position:relative}.chat-code-block-wrap:hover .chat-code-copy-btn{opacity:1}.chat-code-copy-btn{color:#555;cursor:pointer;opacity:0;background:#fff;border:1px solid #e4e4e7;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:500;transition:opacity .15s,color .15s;display:flex;position:absolute;top:8px;right:8px}.chat-code-copy-btn:hover{color:#1a1a1a}.chat-code-block{color:#1a1a1a;white-space:pre;background:#f4f4f5;border:1px solid #e4e4e7;border-radius:6px;margin:0;padding:10px 14px;font-family:Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12.5px;line-height:1.6;overflow-x:auto}.chat-member-role{color:#6b6b6b;text-transform:capitalize;font-size:10px}.chat-input-row{align-items:center;gap:8px;display:flex}.chat-input-wrapper{flex:1;position:relative}.chat-input-wrapper input{border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;color:var(--color-text);background:#fff;padding:10px 14px;font-size:14px}.chat-input-wrapper input:focus{border-color:var(--color-primary);outline:none}.mention-dropdown-up{margin-bottom:4px;bottom:100%}.chat-attach-btn{color:var(--color-text-muted);flex-shrink:0;position:relative}.chat-attach-btn:hover{color:var(--color-primary)}.chat-attach-btn[data-tooltip]:before{content:attr(data-tooltip);color:#fff;white-space:nowrap;pointer-events:none;opacity:0;z-index:100;background:#1a1a1a;border-radius:6px;padding:5px 9px;font-size:12px;font-weight:500;line-height:1.4;transition:opacity .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.chat-attach-btn[data-tooltip]:after{content:"";pointer-events:none;opacity:0;z-index:100;border:5px solid #0000;border-top-color:#1a1a1a;transition:opacity .15s;position:absolute;bottom:calc(100% + 3px);left:50%;transform:translate(-50%)}.chat-attach-btn[data-tooltip]:hover:before,.chat-attach-btn[data-tooltip]:hover:after{opacity:1}.chat-input-client{background:#fffbeb;border-top:2px solid #d97706}.chat-input-client input{background:#fff;border-color:#fbbf24}.chat-input-client input:focus{border-color:#d97706}.chat-pending-file{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:6px;align-items:center;gap:5px;max-width:100%;margin-bottom:6px;padding:4px 8px;font-size:12px;display:inline-flex}.chat-pending-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--color-text-primary);flex:1;overflow:hidden}.chat-pending-file-remove{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:flex}.chat-pending-file-remove:hover{color:var(--color-danger,#dc2626)}.chat-input-warning{color:#d97706;align-items:center;gap:4px;margin-bottom:4px;font-size:11px;font-weight:600;display:flex}.channel-client-dot{background:#d97706;border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-left:auto}.channel-item.client-facing{color:#d97706}.channel-item.client-facing.active,.chat-badge-client{color:#92400e;background:#fef3c7}.task-timer{background:var(--color-bg);border-radius:var(--radius-lg);align-items:center;gap:16px;margin-bottom:8px;padding:12px 16px;display:flex}.timer-display{color:var(--color-text);letter-spacing:1px;min-width:120px;font-family:ui-monospace,Consolas,monospace;font-size:28px;font-weight:700}.timer-controls{gap:6px;display:flex}.manual-time-btn{color:var(--color-text-muted);margin-top:4px}.time-log-list{flex-direction:column;gap:4px;display:flex}.time-log-entry{background:var(--color-bg);border-radius:var(--radius);align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.time-log-hours{color:var(--color-primary);min-width:40px;font-size:14px;font-weight:700}.time-log-details{flex-direction:column;gap:2px;min-width:0;display:flex}.time-log-desc{color:var(--color-text);font-size:13px}.time-log-meta{color:var(--color-text-muted);font-size:11px}.time-log-delete{opacity:0;transition:opacity var(--transition);flex-shrink:0;width:28px;height:28px}.time-log-entry:hover .time-log-delete{opacity:1}.my-tasks-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.my-task-row{border-bottom:1px solid var(--color-border);cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.my-task-row:last-child{border-bottom:none}.my-task-row:hover{background:#f5f5f5}.my-task-overdue{background:#fef2f2}.my-task-overdue:hover{background:#fde8f0}.my-task-left{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.my-task-info{flex-direction:column;gap:2px;min-width:0;display:flex}.my-task-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.my-task-client{color:var(--color-text-muted);font-size:12px}.my-task-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.floating-timer{color:#fff;border-radius:var(--radius-lg);z-index:200;cursor:grab;-webkit-user-select:none;user-select:none;background:#3a4a3a;align-items:center;gap:14px;min-width:250px;padding:10px 16px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 24px #0000004d}.floating-timer:active{cursor:grabbing}.floating-timer button{cursor:pointer}.floating-timer-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.floating-timer-task{color:#fff9;cursor:pointer;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;padding:0;font-size:12px;font-weight:500;overflow:hidden}.floating-timer-task:hover{color:#fff;text-decoration:underline}.floating-timer-time{letter-spacing:1px;font-family:ui-monospace,Consolas,monospace;font-size:20px;font-weight:700}.floating-timer-controls{gap:4px;display:flex}.floating-timer-btn{color:#fff9;width:28px;height:28px}.floating-timer-btn:hover{color:#fff;background:#ffffff1a}.floating-timer-stop:hover{color:#ef4444}.floating-timer-discard{opacity:.5}.floating-timer-discard:hover{opacity:1;color:#ef4444}.view-as-banner{color:#fff;background:#f5007a;align-items:center;gap:8px;padding:8px 20px;font-size:13px;font-weight:600;display:flex}.view-as-exit{color:#fff;background:#fff3;border:none;margin-left:auto}.view-as-exit:hover{background:#0003}.view-as-buttons{gap:6px;display:flex}.view-as-toggle-bar{justify-content:flex-end;padding:6px 20px;display:flex}.view-as-btn{color:var(--color-text-muted);border-color:#0000;font-size:12px}.view-as-btn:hover{border-color:var(--color-border);color:var(--color-text)}.report-header-actions{align-items:center;gap:10px;display:flex}.requests-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.request-row{border-bottom:1px solid var(--color-border);cursor:pointer;transition:background var(--transition);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.request-row:last-child{border-bottom:none}.request-row:hover{background:#f5f5f5}.request-row-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.request-row-info{flex-direction:column;gap:2px;min-width:0;display:flex}.request-row-title{font-size:14px;font-weight:500}.request-row-meta{color:var(--color-text-muted);font-size:12px}.request-row-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.request-response-indicator{color:var(--color-success);background:var(--color-mint);border-radius:8px;padding:2px 8px;font-size:11px;font-weight:500}.request-file-row{align-items:center;gap:8px;display:flex}.request-detail-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.request-detail-header h2{margin:0;font-size:18px;font-weight:700}.request-detail-meta{color:var(--color-text-muted);margin-bottom:16px;font-size:13px}.request-detail-section{margin-bottom:16px}.request-detail-section h3{text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-muted);margin:0 0 8px;font-size:12px;font-weight:600}.request-detail-body{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.6}.request-response-card{background:var(--color-mint);border-radius:var(--radius);padding:12px 14px}.request-response-card p{margin:0 0 4px;font-size:14px;line-height:1.5}.tag-chip{white-space:nowrap;color:#fff;text-overflow:ellipsis;border-radius:20px;max-width:180px;padding:5px 13px;font-size:12px;font-weight:600;display:inline-block;overflow:hidden}.task-row-tags{flex-wrap:wrap;gap:3px;display:flex}.tdp-tags-section{border-bottom:1px solid var(--color-border);padding:12px 24px}.tdp-tags-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tag-chip-toggle{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:none;border-radius:20px;max-width:180px;padding:5px 13px;font-size:12px;font-weight:600;transition:opacity .15s,box-shadow .15s;overflow:hidden}.tag-chip-toggle.active{background:var(--tag-color);color:#fff;opacity:1}.tag-chip-toggle.inactive{background:var(--tag-color);color:#fff;opacity:.3}.tag-chip-toggle.inactive:hover{opacity:.65}.tag-chip-toggle.active:hover{box-shadow:0 0 0 2px color-mix(in srgb, var(--tag-color) 40%, transparent)}.tag-chip-add{border:1.5px dashed var(--color-border);color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:20px;padding:5px 13px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s}.tag-chip-add:hover{border-color:var(--color-primary);color:var(--color-primary)}.tdp-tag-adder{margin-top:8px}.tdp-tag-search-dropdown{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-md);margin-top:8px;padding:10px}.tdp-new-tag-input{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-sizing:border-box;width:100%;margin-bottom:10px;padding:5px 10px;font-size:13px}.tdp-tag-search-list{flex-wrap:wrap;gap:6px;max-height:160px;display:flex;overflow-y:auto}.tag-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;width:22px;height:22px;padding:0;transition:transform .1s}.tag-color-swatch:hover{transform:scale(1.2)}.tag-color-swatch.selected{border-color:#1a1a1a;transform:scale(1.2)}.tags-page-create-row{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 0;display:flex}.tags-page-colors{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tags-page-list{flex-direction:column;gap:0;margin-top:4px;display:flex}.tags-page-row{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0;display:flex}.tags-page-color-dot{border-radius:50%;flex-shrink:0;width:14px;height:14px}.tags-page-row-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.task-time-display{color:var(--color-primary);white-space:nowrap;font-size:11px;font-weight:500}.task-time-display.not-started{color:var(--color-text-muted);font-style:italic}.task-est-display{color:var(--color-text-muted);background:var(--color-bg);white-space:nowrap;border-radius:6px;padding:1px 6px;font-size:10px;font-weight:500}.timer-est-label{color:var(--color-text-muted);margin-bottom:6px;font-size:13px;font-weight:600}.est-clickable{cursor:pointer;padding:4px 0}.est-clickable:hover{color:var(--color-primary)}.est-edit-row{align-items:center;gap:4px;margin-bottom:8px;display:flex}.est-edit-row span{color:var(--color-text-muted);font-size:13px}.task-row-assignee,.est-time-row{align-items:center;gap:4px;display:flex}.est-time-input{border:1px solid var(--color-border);border-radius:var(--radius);width:60px;padding:6px 8px;font-size:14px}.est-time-row span{color:var(--color-text-muted);font-size:13px}.my-tasks-grouped{flex-direction:column;gap:20px;display:flex}.my-tasks-group-title{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);margin:0 0 8px;padding-bottom:6px;font-size:12px;font-weight:700}.notes-tab{flex-direction:column;gap:16px;display:flex}.note-add-btn{border:1.5px dashed var(--color-border);border-radius:var(--radius);color:var(--color-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;width:100%;padding:10px 16px;font-size:14px;font-weight:500;transition:border-color .15s,color .15s;display:inline-flex}.note-add-btn:hover{color:#1a1a1a;border-color:#1a1a1a}.note-compose{border-radius:var(--radius);background:#fff;border:1.5px solid #1a1a1a;flex-direction:column;gap:8px;padding:12px;display:flex}.note-compose-textarea{resize:vertical;color:#1a1a1a;background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:14px;line-height:1.6}.note-compose-actions{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-top:6px;display:flex}.notes-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.note-card{border:1px solid var(--color-border);border-radius:var(--radius);background:#fff;flex-direction:column;min-height:120px;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.note-card:hover{border-color:silver;box-shadow:0 1px 4px #0000000f}.note-content{color:#1a1a1a;white-space:pre-wrap;cursor:text;flex:1;margin:0 0 10px;font-size:14px;line-height:1.65}.note-footer{justify-content:space-between;align-items:center;display:flex}.note-timestamp{color:var(--color-muted);font-size:12px}.note-delete-btn{opacity:0;color:var(--color-muted);transition:opacity .15s}.note-card:hover .note-delete-btn{opacity:1}.note-delete-btn:hover{color:#ef4444}.note-edit,.approvals-list{flex-direction:column;gap:8px;display:flex}.approval-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.approval-card-left{flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}.approval-card-info{flex-direction:column;gap:2px;min-width:0;display:flex}.approval-card-title{color:var(--color-text);font-size:14px;font-weight:600}.approval-card-meta{color:var(--color-text-muted);font-size:12px}.approval-card-desc{color:var(--color-text-muted);margin:4px 0 0;font-size:13px;line-height:1.4}.approval-review-content{flex-direction:column;gap:6px;margin-top:6px;display:flex}.approval-card-message{color:var(--color-text);margin:0;font-size:13px;line-height:1.5}.approval-link{color:var(--color-primary);align-items:center;gap:4px;font-size:12px;text-decoration:none;display:inline-flex}.approval-link:hover{text-decoration:underline}.approval-attachment{width:fit-content}.approval-card-actions{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.approval-edits-form{flex-direction:column;gap:8px;margin-top:10px;display:flex}.approval-edits-form textarea{border:1px solid var(--color-border);border-radius:var(--radius);resize:vertical;padding:10px;font-family:inherit;font-size:13px}.approval-edits-actions{justify-content:flex-end;gap:6px;display:flex}.cal-page{padding:0 0 32px}.cal-nav{align-items:center;gap:8px;padding:16px 0;display:flex}.cal-month-title{text-align:center;min-width:180px;margin:0;font-size:18px;font-weight:700}.cal-grid{border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.cal-day-header{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);text-align:center;background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:8px;font-size:11px;font-weight:700}.cal-day{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:#fff;flex-direction:column;gap:2px;min-height:90px;padding:6px;display:flex}.cal-day:nth-child(7n){border-right:none}.cal-grid>.cal-day:nth-last-child(-n+7){border-bottom:none}.cal-day-outside{background:var(--color-bg);opacity:.5}.cal-today{background:#eff6ff}.cal-today .cal-day-num{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.cal-day-num{color:var(--color-text);margin-bottom:2px;font-size:12px;font-weight:600}.cal-day-entries{flex-direction:column;flex:1;gap:2px;display:flex}.cal-ooo-chip{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:600;overflow:hidden}.cal-more{color:var(--color-text-muted);padding-left:4px;font-size:10px}.cal-legend{flex-wrap:wrap;gap:16px;padding:16px 0;display:flex}.cal-legend-item{color:var(--color-text);align-items:center;gap:6px;font-size:12px;display:flex}.cal-legend-dot{border-radius:50%;width:10px;height:10px}.cal-list-page{padding:16px 0}.cal-list-section{margin-bottom:24px}.cal-list-heading{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin:0 0 10px;font-size:11px;font-weight:700}.cal-list{flex-direction:column;gap:4px;display:flex}.cal-list-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);align-items:center;gap:12px;padding:10px 14px;display:flex}.cal-list-row-active{background:#fef3c7;border-color:#fcd34d}.cal-list-row-past{opacity:.5}.cal-list-user{align-items:center;gap:8px;min-width:160px;display:flex}.cal-list-name{font-size:13px;font-weight:600}.cal-list-dates{color:var(--color-text);font-size:13px}.cal-list-badge{text-transform:uppercase;letter-spacing:.3px;color:#fff;background:#92400e;border-radius:8px;padding:1px 6px;font-size:10px;font-weight:600}.cal-list-reason{color:var(--color-text-muted);margin-left:auto;font-size:12px}.changelog-list{flex-direction:column;gap:24px;display:flex}.changelog-entry{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:20px 24px}.changelog-entry-header{align-items:center;gap:12px;margin-bottom:14px;display:flex}.changelog-version{color:#fff;background:var(--color-primary);border-radius:6px;padding:3px 10px;font-size:14px;font-weight:700}.changelog-date{color:var(--color-text-muted);font-size:13px}.changelog-changes{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.changelog-changes li{color:var(--color-text);font-size:13px;line-height:1.5}.gantt-container{margin-top:8px;overflow-x:auto}.gantt-chart{min-width:900px}.gantt-header{border-bottom:2px solid var(--color-border);background:var(--color-bg);z-index:2;display:flex;position:sticky;top:0}.gantt-header-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);align-items:flex-end;padding-bottom:6px;font-size:11px;font-weight:700;display:flex}.gantt-label-col{flex-shrink:0;align-items:center;gap:8px;width:220px;min-width:220px;padding:6px 12px;display:flex}.gantt-timeline-col{flex:1;min-height:28px;position:relative}.gantt-days-row{height:36px;display:flex;position:relative}.gantt-day-header{color:var(--color-text-muted);box-sizing:border-box;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:4px;font-size:10px;display:flex;position:absolute}.gantt-day-header.gantt-weekend{background:#8080800d}.gantt-day-header.gantt-today-header{color:var(--color-primary);font-weight:700}.gantt-day-num{font-size:11px;line-height:1}.gantt-month-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:2px;font-size:9px;font-weight:700}.gantt-group{margin-bottom:4px}.gantt-group-title{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:10px 12px 4px;font-size:11px;font-weight:700}.gantt-row{cursor:pointer;transition:background var(--transition);border-bottom:1px solid #80808014;align-items:center;display:flex}.gantt-row:hover{background:#8080800f}.gantt-task-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.gantt-bar-track{width:100%;height:24px;margin:4px 0;position:relative}.gantt-weekend-bg{pointer-events:none;background:#8080800d;position:absolute;top:-4px;bottom:-4px}.gantt-today-line{background:var(--color-primary);opacity:.5;z-index:1;pointer-events:none;width:2px;position:absolute;top:-4px;bottom:-4px}.gantt-bar{z-index:2;height:20px;transition:opacity var(--transition);border-radius:4px;align-items:center;padding:0 6px;display:flex;position:absolute;top:2px;overflow:hidden}.gantt-bar:hover{opacity:.85}.gantt-bar-label{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:600;overflow:hidden}.gantt-no-dates-label{color:var(--color-text-muted);align-items:center;height:100%;padding-left:8px;font-size:11px;font-style:italic;display:flex}.gantt-row-nodates .gantt-bar-track{border-left:2px dashed var(--color-border)}.tdp-review-status{color:var(--color-text-muted);margin-top:6px;font-size:11px;font-style:italic;display:block}.media-recorder-active{align-items:center;display:inline-flex}.media-recorder-stop{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:600;display:inline-flex}.media-recorder-stop:hover{background:#dc2626}.media-recorder-dot{background:#fff;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite media-recorder-pulse}.media-recorder-time{font-variant-numeric:tabular-nums}@keyframes media-recorder-pulse{0%,to{opacity:1}50%{opacity:.3}}.media-recorder-preview{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;gap:8px;width:100%;padding:12px;display:flex}.media-recorder-preview-media{border-radius:var(--radius);background:#000;width:100%;max-height:280px}.media-recorder-preview audio.media-recorder-preview-media{background:0 0;height:40px}.media-recorder-preview-actions{justify-content:flex-end;gap:6px;display:flex}.summary-modal{flex-direction:column;width:92vw;max-width:720px;max-height:90vh;display:flex}.summary-modal-body{padding:16px 20px 20px;overflow-y:auto}.summary-sent-banner{color:#065f46;border-radius:var(--radius);background:#ecfdf5;border:1px solid #a7f3d0;align-items:center;gap:6px;margin:0 0 16px;padding:8px 12px;font-size:12px;display:flex}.pref-toggle{cursor:pointer;border-bottom:1px solid var(--color-border);align-items:flex-start;gap:12px;padding:12px 0;display:flex}.pref-toggle:last-of-type{border-bottom:none}.pref-toggle input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px;margin-top:4px}.pref-toggle-text{flex-direction:column;gap:2px;display:flex}.pref-toggle-title{color:var(--color-text);font-size:14px;font-weight:600}.pref-toggle-desc{color:var(--color-text-muted);font-size:12px;line-height:1.4}.insights-tab{padding-bottom:60px}.insights-intro{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(135deg,#f0f4ff,#fff6f0);align-items:flex-start;gap:12px;margin-bottom:20px;padding:16px 18px;display:flex}.insights-intro h3{margin:0 0 4px;font-size:14px;font-weight:700}.insights-intro p{margin:0}.insights-intro>svg{color:#29a8ff;flex-shrink:0;margin-top:2px}.insights-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:28px;padding:18px 20px}.insights-form .form-group{margin-bottom:14px}.insights-form .form-group label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:4px;font-size:12px;display:block}.insights-form textarea{font-family:inherit;font-size:13px;line-height:1.6}.insights-history h3{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin:0 0 12px;font-size:12px}.insight-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);margin-bottom:12px;overflow:hidden}.insight-card-header{cursor:pointer;text-align:left;width:100%;transition:background var(--transition);background:0 0;border:none;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.insight-card-header:hover{background:var(--color-bg)}.insight-card-meta{flex-direction:column;gap:2px;display:flex}.insight-card-title{color:var(--color-text);font-size:14px;font-weight:600}.insight-card-body{border-top:1px solid var(--color-border);padding:0 18px 18px}.rec-section{border-radius:var(--radius);margin-top:14px;padding:12px 14px}.rec-section h4{text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px;font-size:12px}.rec-section ul{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.rec-section li strong{color:var(--color-text);margin-bottom:4px;font-size:14px;display:block}.rec-reasoning{color:var(--color-text);margin:0 0 4px;font-size:13px;line-height:1.5}.rec-action{color:var(--color-text);margin:0;font-size:13px}.rec-action-label{text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-muted);margin-right:4px;font-size:11px;font-weight:600}.rec-priority{background:#fff6f0;border:1px solid #ffd6a8}.rec-priority h4{color:#c2410c}.rec-quick-win{background:#ecfdf5;border:1px solid #a7f3d0}.rec-quick-win h4{color:#065f46}.rec-watch-out{background:#fef2f2;border:1px solid #fca5a5}.rec-watch-out h4{color:#991b1b}.rec-talking{background:#eff6ff;border:1px solid #bfdbfe}.rec-talking h4{color:#1e40af}.spin{animation:1s linear infinite spin}.chat-main{position:relative}.chat-main-dragging .chat-messages,.chat-main-dragging .chat-input,.chat-main-dragging .chat-header{pointer-events:none}.chat-drop-overlay{border-radius:var(--radius-lg);z-index:10;color:#29a8ff;pointer-events:none;background:#29a8ff14;border:2px dashed #29a8ff;flex-direction:column;justify-content:center;align-items:center;gap:12px;margin:8px;font-size:16px;font-weight:600;display:flex;position:absolute;inset:0}.chat-drop-overlay svg{opacity:.7}.stage-templates-list{flex-direction:column;display:flex}.stage-template-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;align-items:center;gap:16px;margin-bottom:10px;padding:16px 20px;display:flex}.stage-template-name{flex:1;font-size:14px;font-weight:600}.stage-template-steps{flex-wrap:wrap;flex:2;align-items:center;gap:6px;display:flex}.stage-chip{background:var(--color-bg);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:6px;padding:3px 8px;font-size:12px}.stage-chip-arrow{color:var(--color-text-muted);font-size:11px}.stage-template-actions{align-items:center;gap:6px;display:flex}.stages-toggle-label{cursor:pointer;align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.stages-toggle-label input[type=checkbox]{width:16px;height:16px}.stages-builder{border:1px solid var(--color-border);background:var(--color-bg);border-radius:10px;flex-direction:column;gap:10px;margin-top:4px;padding:14px;display:flex}.stage-list{flex-direction:column;gap:8px;display:flex}.stage-row{align-items:center;gap:8px;display:flex}.stage-number{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex}.stage-name-input{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:7px;flex:1.5;padding:6px 10px;font-size:13px}.stage-assignee-select{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:7px;flex:1;padding:6px 10px;font-size:13px}.stages-save-template{border-top:1px solid var(--color-border);align-items:center;gap:10px;padding-top:4px;font-size:13px;display:flex}.stages-save-template label{cursor:pointer;white-space:nowrap;align-items:center;gap:6px;display:flex}.template-name-input{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:7px;flex:1;padding:5px 10px;font-size:13px}.tdp-stages{flex-direction:column;gap:0;margin:12px 0;padding:0 24px;display:flex;position:relative}.tdp-stages:before{content:"";background:var(--color-border);width:2px;position:absolute;top:16px;bottom:16px;left:33px}.tdp-stage{align-items:center;gap:12px;padding:8px 0;display:flex;position:relative}.tdp-stage-indicator{border:2px solid var(--color-border);background:var(--color-surface);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.tdp-stage.active .tdp-stage-indicator{border-color:var(--color-primary);background:var(--color-primary)}.tdp-stage.completed .tdp-stage-indicator{border-color:var(--color-success,#22c55e);background:var(--color-success,#22c55e);color:#fff}.tdp-stage-dot{background:var(--color-text-muted);border-radius:50%;width:6px;height:6px}.tdp-stage.active .tdp-stage-dot{background:#fff}.tdp-stage-info{flex-direction:column;flex:1;display:flex}.tdp-stage-name{color:var(--color-text);font-size:13px;font-weight:500}.tdp-stage.pending .tdp-stage-name{color:var(--color-text-secondary)}.tdp-stage.completed .tdp-stage-name{color:var(--color-text-secondary);text-decoration:line-through}.tdp-stage-assignee{color:var(--color-text-muted);font-size:11px}.tdp-stage-btn{padding:3px 10px;font-size:11px}.stage-builder-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.stage-builder-controls{flex-direction:column;gap:2px;display:flex}@media (width<=768px){.mobile-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);z-index:9999;align-items:center;gap:8px;padding:8px 12px;display:flex;position:fixed;top:0;left:0;right:0}.main-content{min-height:0;padding-top:53px;overflow-y:auto}.mobile-header-logo{width:auto;height:22px;position:absolute;left:50%;transform:translate(-50%)}.mobile-header-spacer{flex-shrink:0;width:36px}.mobile-nav-toggle{width:36px;height:36px;color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.mobile-nav-toggle:hover{background:var(--color-bg)}input,select,textarea{font-size:16px!important}.my-task-row .status-badge,.my-task-row .priority-badge-low,.my-task-row .priority-badge-medium,.my-task-row .priority-badge-high,.my-task-row .priority-badge-urgent,.my-task-row .task-est-display,.my-task-row .task-time-display,.task-row .task-est-display,.task-row .task-time-display,.task-row .task-row-tags,.task-row .recurrence-indicator,.task-row .task-row-assignee-select,.due-date-desktop-only{display:none}.due-date-mobile-only{align-items:center;gap:3px;display:inline-flex}.task-row-right{flex-shrink:0;gap:6px}.my-task-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.mobile-nav-backdrop{z-index:199;background:#00000073;position:fixed;inset:0}.sidebar{z-index:200;height:100vh;box-shadow:none;transition:transform .25s,width .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.mobile-nav-open .sidebar{transform:translate(0);box-shadow:4px 0 24px #0000002e}.mobile-nav-open .sidebar.collapsed{width:240px}.mobile-nav-open .sidebar.collapsed .nav-label{display:block}.mobile-nav-open .sidebar.collapsed .sidebar-footer{flex-direction:row;gap:12px;padding:12px 16px}.mobile-nav-open .sidebar.collapsed .user-info{display:flex}.mobile-nav-open .sidebar.collapsed .sidebar-nav{justify-content:flex-start;padding:8px 12px}.mobile-nav-open .sidebar.collapsed .sidebar-nav a,.mobile-nav-open .sidebar.collapsed .sidebar-collapse-btn{justify-content:flex-start;padding:10px 12px}.mobile-nav-open .sidebar.collapsed .sidebar-logo-link{justify-content:flex-start;width:100%;display:block}.main-content{width:100%;min-width:0}.page-header{flex-wrap:wrap;gap:10px}.page{padding:16px}.page-header{margin-bottom:16px}.form-row{flex-direction:column;gap:0}.tab-bar{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab-bar .tab-btn{white-space:nowrap;flex-shrink:0}.tdp-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tdp-tabs::-webkit-scrollbar{display:none}.tdp-tab{white-space:nowrap;flex-shrink:0}.task-detail-overlay{align-items:flex-end}.tdp{border-radius:16px 16px 0 0;width:100vw;max-width:100vw;height:90vh}.tdp-meta-grid{grid-template-columns:1fr}.chat-layout{background:var(--color-surface);flex-direction:column;height:auto;position:fixed;inset:53px 0 0}.chat-sidebar{border-right:none;border-bottom:1px solid var(--color-border);flex:1;width:100%;overflow-y:auto}.chat-layout.has-active-channel .chat-sidebar,.chat-layout .chat-main{display:none}.chat-layout.has-active-channel .chat-main{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.chat-input{flex-shrink:0;padding-bottom:8px}.mobile-back-btn,.chat-header{flex-shrink:0}.chat-body{flex:1;min-height:0;overflow:hidden}.chat-body .chat-messages{-webkit-overflow-scrolling:touch;overflow-y:auto}.chat-attach-btn,.chat-members-panel,.media-recorder-buttons,.chat-header-badges .btn-danger-icon{display:none}.mobile-back-btn{color:var(--color-primary);cursor:pointer;border:none;border-bottom:1px solid var(--color-border);text-align:left;background:0 0;align-items:center;gap:6px;width:100%;padding:8px 16px;font-size:13px;font-weight:600;display:flex}.members-panel{z-index:150;width:280px;height:100vh;position:fixed;top:0;right:0;box-shadow:-4px 0 16px #00000026}.projects-grid,.dashboard-grid{grid-template-columns:1fr}.modal{width:95vw;max-width:95vw;max-height:90vh;overflow-y:auto}.panel-overlay{align-items:flex-end}.panel{border-radius:16px 16px 0 0;width:100vw;max-width:100vw;height:90vh}.floating-timer{padding:8px 12px;font-size:12px;bottom:12px;right:12px}.table-container,.report-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:500px}.time-filters{flex-direction:column;align-items:flex-start}.notes-list{grid-template-columns:1fr}.stage-row{flex-wrap:wrap}.stage-name-input,.stage-assignee-select{flex:100%;min-width:0}.project-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.project-tabs::-webkit-scrollbar{display:none}.project-tab{white-space:nowrap;flex-shrink:0}.workload-grid{grid-template-columns:1fr}.feedback-panel{border-radius:16px 16px 0 0;width:100vw;max-width:100vw;height:90vh}.profile-modal-overlay{align-items:flex-end}.profile-panel,.ooo-panel,.preferences-panel,.feedback-panel{border-radius:16px 16px 0 0;width:100vw;max-width:100vw;height:calc(100svh - 53px);max-height:calc(100svh - 53px);overflow-y:auto}.login-card{width:95vw;padding:24px 20px}.users-header-row,.user-row-avatar{display:none}.user-row{flex-wrap:wrap;align-items:center;gap:4px 8px;padding:14px 16px;display:flex}.user-row-info{flex:1;order:1;min-width:0}.user-row-date{color:var(--color-text-muted);flex-shrink:0;order:1;margin-left:auto;font-size:12px}.user-row-role{order:2;width:100%;margin-top:4px}.role-select{width:100%}.user-row-status{order:3;margin-top:4px}.user-row-actions{order:3;margin-top:4px;margin-left:auto}.user-row-bottom{display:contents}.page-header-actions{flex-wrap:wrap;gap:8px}.est-time-row{flex-wrap:wrap}.view-as-banner{flex-wrap:wrap;gap:6px;padding:8px 16px}}@media (width>=769px){.mobile-header,.mobile-nav-toggle,.due-date-mobile-only,.mobile-nav-backdrop,.mobile-back-btn{display:none}}
