@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800;900&family=Inter:wght@300;400;500;600;700;800;900&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.z-20{z-index:20}.z-\[100\]{z-index:100}.mx-auto{margin-inline:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-full{height:100%}.max-h-\[92vh\]{max-height:92vh}.w-full{width:100%}.flex-1{flex:1}.flex-\[2\]{flex:2}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.text-\[10px\]{font-size:10px}.leading-none{--tw-leading:1;line-height:1}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.shadow-\[0_0_12px_rgba\(16\,185\,129\,0\.3\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#10b9814d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_12px_rgba\(37\,99\,235\,0\.3\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#2563eb4d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_12px_rgba\(37\,99\,235\,0\.4\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#2563eb66);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-1000{--tw-duration:1s;transition-duration:1s}@media (hover:hover){.hover\:scale-\[1\.02\]:hover{scale:1.02}}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}:root{--app-bg:#f7fafc;--brand:#2684ff;--bg-card:#fff;--border:#e2e8f0;--text-primary:#1e293b;--text-muted:#64748b;--text-faint:#94a8b8;--sidebar-dark:#1e293b}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--app-bg);color:var(--text-primary);margin:0;font-family:Inter,sans-serif;overflow-x:hidden}h1,h2,h3,h4,.font-montserrat{font-family:Montserrat,sans-serif}.sidebar-nav-item.active{color:#2684ff;background:#2b6cb014}.card-hover{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover:hover{transform:translateY(-4px);box-shadow:0 1px 3px #0000000f,0 4px 16px #0000000a}.stat-icon-container{transition:transform .3s}.card-hover:hover .stat-icon-container{transform:scale(1.1)}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.sidebar-search-input::placeholder{color:#94a3b8}.sidebar-nav-item:hover{background:#00000005}@keyframes spin{to{transform:rotate(360deg)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sk{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/1200px 100%;border-radius:6px;flex-shrink:0;animation:1.4s linear infinite shimmer}.sk-line{height:12px}.sk-sm{height:8px}.sk-lg{height:18px}.sk-circle{border-radius:50%}.sk-round{border-radius:20px}.sk-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.sk-row{align-items:center;gap:10px;display:flex}.empty-state{color:#94a3b8;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.empty-state-icon{color:#cbd5e1;background:#f1f5f9;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.empty-state-title{color:#64748b;margin:0;font-size:15px;font-weight:700}.empty-state-desc{color:#94a3b8;max-width:280px;margin:0;font-size:13px;line-height:1.5}.empty-state-btn{color:#fff;cursor:pointer;background:#2684ff;border:none;border-radius:8px;align-items:center;gap:6px;margin-top:4px;padding:8px 18px;font-size:13px;font-weight:600;transition:background .15s;display:flex}.empty-state-btn:hover{background:#0747a6}.gantt-root{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;flex:1;height:100%;min-height:0;font-family:Inter,sans-serif;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 4px #0000000a}.gantt-navbar{z-index:50;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;height:48px;padding:0 16px;display:flex}.gantt-navbar-left{align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.gantt-stat-chip{color:#475569;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:600;display:flex}.gantt-stat-chip .dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.gantt-avatars{align-items:center;display:flex}.gantt-avatar{color:#fff;border:2px solid #fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;margin-left:-6px;font-size:8px;font-weight:800;display:flex;box-shadow:0 0 0 1px #e2e8f0}.gantt-avatars .gantt-avatar:first-child{margin-left:0}.gantt-navbar-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.gantt-today-btn{color:#1e293b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;height:28px;padding:0 12px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s}.gantt-today-btn:hover{color:#2b6cb0;background:#eff6ff;border-color:#bfdbfe}.gantt-body{flex:1;display:flex;overflow:hidden}.gantt-left{background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;flex-shrink:0;min-width:180px;max-width:480px;display:flex}.gantt-left-header{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;background:#fafbfc;border-bottom:1px solid #e2e8f0;flex-shrink:0;align-items:center;height:44px;padding:0 16px;font-size:10px;font-weight:800;display:flex}.gantt-left-body{scrollbar-width:none;flex:1;overflow-y:auto}.gantt-left-body::-webkit-scrollbar{display:none}.gantt-resize-handle{cursor:col-resize;z-index:20;background:0 0;flex-shrink:0;width:4px;transition:background .15s;position:relative}.gantt-resize-handle:hover{background:#2684ff}.gantt-resize-handle:after{content:"";position:absolute;inset:0 -3px}.gantt-task-row{cursor:pointer;user-select:none;border-bottom:1px solid #f1f5f9;align-items:center;height:40px;transition:background .1s;display:flex;position:relative}.gantt-task-row:hover{background:#f8fafc}.gantt-task-row.selected{background:#eff6ff}.gantt-task-row.overdue{background:#fff5f5}.gantt-task-row.overdue .gantt-task-title{color:#dc2626}.gantt-task-row.overdue:after{content:"";opacity:.6;background:#dc2626;width:2px;position:absolute;top:0;bottom:0;left:0}.gantt-task-row.selected:before{content:"";background:#2b6cb0;border-radius:0 2px 2px 0;width:3px;position:absolute;top:0;bottom:0;left:0}.gantt-task-row-inner{align-items:center;gap:4px;width:100%;min-width:0;padding-right:10px;display:flex;overflow:hidden}.gantt-task-toggle{color:#94a3b8;flex-shrink:0;justify-content:center;align-items:center;width:20px;display:flex}.gantt-task-status-dot{flex-shrink:0;width:6px;height:6px;margin-right:1px}.gantt-task-key-badge{letter-spacing:.04em;color:#64748b;white-space:nowrap;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;flex-shrink:0;padding:1px 5px;font-size:9px;font-weight:700}.gantt-task-row.selected .gantt-task-key-badge{color:#2563eb;background:#dbeafe;border-color:#bfdbfe}.gantt-task-title{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;flex:1;min-width:0;font-size:12px;font-weight:500;overflow:hidden}.gantt-task-row.selected .gantt-task-title{color:#1d4ed8;font-weight:600}.gantt-timeline{background:#fafbfc;flex-direction:column;flex:1;display:flex;overflow:hidden}.gantt-timeline-header{background:#fafbfc;border-bottom:1px solid #e2e8f0;flex-shrink:0;overflow:hidden}.gantt-timeline-body{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;flex:1;overflow:auto}.gantt-timeline-body::-webkit-scrollbar{width:6px;height:6px}.gantt-timeline-body::-webkit-scrollbar-thumb{background:#cbd5e1;border:2px solid #fafbfc;border-radius:6px}.gantt-today-line{z-index:10;pointer-events:none;background:#ef444499;width:1.5px;position:absolute;top:0;bottom:0}.gantt-today-diamond{background:#ef4444;border-radius:2px;width:9px;height:9px;position:absolute;top:-5px;left:-4px;transform:rotate(45deg)}.gantt-today-label{color:#ef4444;white-space:nowrap;background:#ffffffeb;border:1px solid #ef444433;border-radius:4px;padding:1px 5px;font-size:9px;font-weight:800;line-height:1.4;position:absolute;top:8px;left:5px}.gantt-header-top{border-bottom:1px solid #edf0f5;height:18px;display:flex}.gantt-header-top-cell{color:#475569;letter-spacing:.04em;border-right:1px solid #edf0f5;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.gantt-header-bottom{height:26px;display:flex}.gantt-header-bottom-cell{color:#94a3b8;border-right:1px solid #edf0f5;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:500;transition:background .1s,color .1s;display:flex}.gantt-header-bottom-cell.today{color:#2563eb;background:#eff6ff;font-weight:700}.gantt-header-bottom-cell.weekend{color:#b0b8c4}.gantt-weekend-col{pointer-events:none;z-index:0;background:#f1f5f999;position:absolute;top:0;bottom:0}.gantt-grid-lines{pointer-events:none;z-index:1;display:flex;position:absolute;inset:0}.gantt-grid-line{border-right:1px solid #f0f3f8;flex-shrink:0}.gantt-row{z-index:2;border-bottom:1px solid #f0f3f8;height:40px;transition:background .1s;position:relative}.gantt-row:hover{background:#f8fafccc}.gantt-row.selected{background:#eff6ffcc}.gantt-row.overdue{background:#fef2f280}.gantt-group-header-row{z-index:2;background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;flex-shrink:0;align-items:center;gap:8px;height:32px;padding:0 12px 0 14px;display:flex;position:sticky;top:0}.gantt-group-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.gantt-group-header-label{text-transform:uppercase;letter-spacing:.08em;color:#475569;flex:1;font-size:10px;font-weight:800}.gantt-group-header-count{color:#94a3b8;background:#e2e8f0;border-radius:10px;padding:1px 8px;font-size:10px;font-weight:700}.gantt-timeline-group-row{z-index:2;background:linear-gradient(90deg,#f8fafc 0%,#f1f5f9 100%);border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;height:32px;position:relative}.gantt-group-btn{color:#475569;cursor:pointer;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;flex-shrink:0;align-items:center;gap:5px;height:28px;padding:0 11px;font-size:11px;font-weight:600;transition:background .1s,border-color .1s,color .1s;display:flex;position:relative}.gantt-group-btn:hover,.gantt-group-btn.active{color:#2b6cb0;background:#eff6ff;border-color:#bfdbfe}.gantt-group-clear{color:#2b6cb0;cursor:pointer;background:#2b6cb01f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;transition:background .1s;display:flex}.gantt-group-clear:hover{background:#bfdbfe}.gantt-dropdown{z-index:200;background:#fff;border:1px solid #e2e8f0;border-radius:10px;min-width:160px;padding:4px;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 8px 28px #0000001a}.gantt-dropdown-item{text-align:left;color:#475569;cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;width:100%;padding:9px 12px;font-size:13px;font-weight:500;transition:background .1s;display:flex}.gantt-dropdown-item:hover{color:#1e293b;background:#f8fafc}.gantt-dropdown-item.active{color:#2b6cb0;background:#eff6ff;font-weight:700}.gantt-dropdown-divider{background:#f1f5f9;height:1px;margin:4px 8px}.gantt-navbar-divider{background:#e2e8f0;flex-shrink:0;width:1px;height:16px}.board-view{grid-template-columns:repeat(3,1fr);align-items:start;gap:14px;height:100%;min-height:0;padding-bottom:12px;display:grid}.board-column{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;max-height:calc(100vh - 120px);display:flex;overflow:hidden}.board-column-header{background:#fff;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.board-column-title{align-items:center;gap:7px;display:flex}.board-column-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.board-column-dot.todo{background:#94a3b8}.board-column-dot.in-progress{background:#2684ff;box-shadow:0 0 0 3px #3b82f626}.board-column-dot.completed{background:#36b37e;box-shadow:0 0 0 3px #22c55e26}.board-column-name{color:#334155;letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:700}.board-column-count{color:#64748b;background:#e2e8f0;border-radius:20px;padding:1px 8px;font-size:11px;font-weight:700}.board-column.in-progress .board-column-count{color:#0052cc;background:#deebff}.board-column.completed .board-column-count{color:#00875a;background:#e3fcef}.board-column-add{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;transition:background .15s,color .15s;display:flex}.board-column-add:hover{color:#2684ff;background:#e6f0ff}.board-column-body{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;flex-direction:column;flex:1;gap:6px;padding:8px;display:flex;overflow-y:auto}.board-column-body::-webkit-scrollbar{width:4px}.board-column-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.board-card{cursor:pointer;background:#fff;border:1px solid #e8edf3;border-left:3px solid #cbd5e1;border-radius:8px;padding:10px 12px 9px;transition:box-shadow .15s,border-color .15s,transform .12s;animation:.2s both card-in}.board-card.priority-urgent{border-left-color:#dc2626}.board-card.priority-high{border-left-color:#f97316}.board-card.priority-normal{border-left-color:#2684ff}.board-card.priority-low{border-left-color:#cbd5e1}.board-card:hover{border-color:#c7d6e8;transform:translateY(-1px);box-shadow:0 3px 14px #00000017}.board-card.overdue{background:snow;border-top:2px solid #fca5a5}.board-card-overdue-badge{letter-spacing:.05em;color:#dc2626;text-transform:uppercase;background:#fee2e2;border:1px solid #fca5a5;border-radius:4px;align-items:center;gap:4px;margin-bottom:6px;padding:2px 7px;font-size:9px;font-weight:800;display:inline-flex}@keyframes card-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.board-card-title{color:#1e293b;letter-spacing:-.01em;margin-bottom:10px;font-size:13px;font-weight:500;line-height:1.5}.board-card:hover .board-card-title{color:#0052cc}.board-card-footer{justify-content:space-between;align-items:center;gap:6px;display:flex}.board-card-footer-left{align-items:center;gap:5px;min-width:0;display:flex;overflow:hidden}.board-card-footer-right{flex-shrink:0;align-items:center;gap:5px;display:flex}.board-card-key{letter-spacing:.07em;color:#94a3b8;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:800}.board-card-team{letter-spacing:.04em;color:#2684ff;white-space:nowrap;text-overflow:ellipsis;background:#e6f0ff;border-radius:4px;flex-shrink:1;min-width:0;padding:2px 7px;font-size:9px;font-weight:700;overflow:hidden}.board-card-priority-icon{flex-shrink:0;justify-content:center;align-items:center;display:flex}.board-card-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:7px;font-weight:800;display:flex}.board-card-avatar-empty{background:#e2e8f0;border:1.5px dashed #cbd5e1}.board-empty{color:#cbd5e1;border:2px dashed #e2e8f0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin:2px 0;padding:24px 16px;font-size:11px;font-weight:500;display:flex}.board-card{cursor:grab}.board-card:active{cursor:grabbing}.board-card.dragging{opacity:.3;box-shadow:none;border-style:dashed;transform:scale(.97)rotate(.8deg)}.board-column.drag-over{border-color:#93c5fd}.board-column-body.drop-target{outline-offset:-4px;background:#3b82f608;border-radius:6px;outline:2px dashed #93c5fd}.board-empty--active{color:#0052cc;background:#e6f0ff;border-color:#2684ff;font-weight:700}.board-drop-placeholder{opacity:.6;background:#e6f0ff;border:2px dashed #93c5fd;border-radius:8px;height:48px;animation:.8s ease-in-out infinite alternate pulse-drop}@keyframes pulse-drop{0%{opacity:.4}to{opacity:.8}}.board-card-sp{color:#2684ff;white-space:nowrap;background:#e6f0ff;border-radius:6px;flex-shrink:0;padding:1px 6px;font-size:9px;font-weight:800}.board-swimlane-view{flex-direction:column;gap:16px;height:100%;display:flex}.board-swimlane{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.board-swimlane-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;align-items:center;gap:8px;padding:10px 14px;display:flex}.board-swimlane-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.board-swimlane-label{color:#334155;letter-spacing:.02em;font-size:12px;font-weight:700}.board-swimlane-count{color:#64748b;background:#e2e8f0;border-radius:10px;margin-left:2px;padding:1px 7px;font-size:10px;font-weight:700}.board-swimlane-columns{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.board-swimlane-col{border-right:1px solid #f1f5f9}.board-swimlane-col:last-child{border-right:none}.board-swimlane-col-header{background:#fff;border-bottom:1px solid #f1f5f9;align-items:center;gap:6px;padding:8px 12px;display:flex}@media (width<=900px){.board-view,.board-swimlane-columns{grid-template-columns:1fr}}.table-view{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.table-toolbar{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;display:flex}.table-toolbar-left{align-items:center;gap:8px;display:flex}.table-stat-chip{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:700;display:flex}.table-stat-chip .dot{border-radius:50%;width:7px;height:7px}.table-stat-chip--overdue{color:#dc2626;background:#fff5f5;border-color:#fca5a5}.table-container{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex:1;min-height:0;overflow:auto;box-shadow:0 1px 4px #0000000a}.table-container::-webkit-scrollbar{width:6px;height:6px}.table-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:6px}.tasks-table{border-collapse:separate;border-spacing:0;width:100%}.tasks-table thead th{text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;white-space:nowrap;z-index:4;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:12px 16px;font-size:10px;font-weight:800;position:sticky;top:0}.tasks-table thead th:first-child{z-index:6;background:#f8fafc;border-right:1px solid #f1f5f9;position:sticky;left:0}.task-row{cursor:pointer;transition:background .1s;animation:.2s both row-in}.task-row:hover{background:#f0f7ff}.task-row:hover .task-row-title{color:#0065cc}.task-row.overdue td:first-child{box-shadow:inset 3px 0 #dc2626,2px 0 6px -2px #0000000d}.task-row.overdue .date-cell{color:#dc2626}@keyframes row-in{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.tasks-table tbody td{vertical-align:middle;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:13px 16px}.tasks-table tbody tr:last-child td{border-bottom:none}.tasks-table tbody td:first-child{z-index:3;background:#fff;border-right:1px solid #f1f5f9;position:sticky;left:0;box-shadow:2px 0 6px -2px #0000000d}.task-row:hover td:first-child{background:#f0f7ff}.task-row-title-cell{align-items:center;gap:10px;max-width:260px;display:flex}.task-row-key{color:#94a3b8;background:#f1f5f9;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:800}.task-row-title{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;transition:color .15s;overflow:hidden}.status-badge{text-transform:uppercase;letter-spacing:.05em;border:1px solid #0000;border-radius:6px;align-items:center;gap:5px;padding:3px 10px;font-size:10px;font-weight:700;display:inline-flex}.status-badge:before{content:"";border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-badge.todo{color:#64748b;background:#f8fafc;border-color:#e2e8f0}.status-badge.todo:before{background:#94a3b8}.status-badge.pending{color:#b45309;background:#fffbeb;border-color:#fde68a}.status-badge.pending:before{background:#f59e0b}.status-badge.in-progress{color:#0065cc;background:#e6f0ff;border-color:#b3d4ff}.status-badge.in-progress:before{background:#2684ff;animation:1.5s ease-in-out infinite pulse-dot}.status-badge.completed{color:#064;background:#f0fdf4;border-color:#abf5d1}.status-badge.completed:before{background:#00875a}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.priority-badge{border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-flex}.priority-badge.low{color:#64748b;background:#f8fafc}.priority-badge.normal{color:#2684ff;background:#e6f0ff}.priority-badge.high{color:#c2410c;background:#fff7ed}.priority-badge.urgent{color:#dc2626;background:#fef2f2;font-weight:800}.assignee-cell{align-items:center;gap:8px;display:flex}.assignee-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:9px;font-weight:800;display:flex}.assignee-name{color:#475569;font-size:12px;font-weight:600}.team-chip{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;padding:3px 10px;font-size:10px;font-weight:700}.date-cell{color:#94a3b8;flex-direction:column;gap:2px;font-size:11px;font-weight:600;display:flex}.date-cell .date-start{color:#475569}.progress-cell{align-items:center;gap:10px;min-width:120px;display:flex}.progress-bar{background:#f1f5f9;border-radius:6px;flex:1;height:6px;overflow:hidden;box-shadow:inset 0 1px 2px #0000000a}.progress-fill{border-radius:6px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.progress-fill.completed{background:#00875a}.progress-fill.in-progress{background:linear-gradient(90deg,#2684ff,#2684ff)}.progress-fill.todo{background:#cbd5e1}.progress-fill.pending{background:#f59e0b}.progress-pct{color:#475569;text-align:right;width:30px;font-size:11px;font-weight:800}.task-row.selected td,.task-row.selected td:first-child{background:#eff6ff}.bulk-action-bar{color:#fff;background:#1e3a5f;border-radius:10px;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;padding:8px 14px;animation:.15s bulk-slide-in;display:flex}@keyframes bulk-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.bulk-count{color:#93c5fd;margin-right:4px;font-size:12px;font-weight:700}.bulk-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:7px;align-items:center;gap:5px;padding:5px 12px;font-size:11px;font-weight:600;transition:background .12s;display:flex}.bulk-btn:hover{background:#fff3}.bulk-btn--danger{color:#fca5a5;background:#ef444426;border-color:#ef444466}.bulk-btn--danger:hover{background:#ef44444d}.bulk-clear{color:#ffffff80;cursor:pointer;background:0 0;border:none;border-radius:5px;margin-left:auto;padding:4px 8px;font-size:11px;transition:color .12s}.bulk-clear:hover{color:#fff}.bulk-dropdown{z-index:400;background:#fff;border:1px solid #e2e8f0;border-radius:10px;min-width:150px;padding:4px;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 28px #0000001f}.bulk-dropdown-item{text-align:left;color:#334155;cursor:pointer;background:0 0;border:none;border-radius:7px;width:100%;padding:8px 12px;font-size:12px;transition:background .12s;display:block}.bulk-dropdown-item:hover{color:#2684ff;background:#f0f7ff}.table-empty{color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:60px 20px;display:flex}.table-empty-icon{font-size:32px}.table-empty-text{font-size:13px;font-weight:500}.team-view{flex-direction:column;gap:14px;height:100%;min-height:0;display:flex}.team-stats-bar{flex-shrink:0;gap:10px;display:flex}.team-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex:1;align-items:center;gap:12px;padding:14px 16px;display:flex}.team-stat-icon{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.team-stat-value{color:#0f172a;font-size:22px;font-weight:800;line-height:1}.team-stat-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-top:3px;font-size:10px;font-weight:600}.team-grid{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;flex:1;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));align-content:start;gap:12px;padding-bottom:4px;display:grid;overflow-y:auto}.team-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:12px;padding:16px;transition:box-shadow .15s,border-color .15s;display:flex}.team-card:hover{border-color:#b3d4ff;box-shadow:0 4px 18px #0000000f}.team-card.has-overdue{border-left:3px solid #ef4444}.team-card-top{align-items:center;gap:12px;display:flex}.team-card-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:15px;font-weight:800;display:flex}.team-card-info{flex:1;min-width:0}.team-card-name{color:#0f172a;font-size:14px;font-weight:700}.team-card-team{color:#94a3b8;margin-top:2px;font-size:11px;font-weight:500}.team-card-workload{white-space:nowrap;border-radius:6px;flex-shrink:0;padding:3px 9px;font-size:10px;font-weight:700}.team-card-workload.free{color:#064;background:#f0fdf4}.team-card-workload.active{color:#0065cc;background:#e6f0ff}.team-card-workload.medium{color:#c2410c;background:#fff7ed}.team-card-workload.high{color:#dc2626;background:#fef2f2}.team-card-stats{background:#f8fafc;border-radius:9px;grid-template-columns:repeat(4,1fr);gap:4px;padding:10px 8px;display:grid}.team-card-stat{flex-direction:column;align-items:center;gap:3px;display:flex}.team-card-stat-value{color:#0f172a;font-size:18px;font-weight:800;line-height:1}.team-card-stat-label{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;text-align:center;font-size:9px;font-weight:600}.team-card-overdue-alert{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;font-weight:700;display:flex}.team-card-progress{flex-direction:column;gap:5px;display:flex}.team-card-progress-bar{background:#f1f5f9;border-radius:6px;height:6px;overflow:hidden}.team-card-progress-fill{background:linear-gradient(90deg,#2684ff,#2684ff);border-radius:6px;height:100%;transition:width .5s}.team-card-progress-pct{color:#94a3b8;font-size:10px;font-weight:600}.team-card-toggle{color:#64748b;cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;padding:4px 0;font-size:11px;font-weight:600;transition:color .1s;display:flex}.team-card-toggle:hover{color:#2684ff}.team-card-tasks{border-top:1px solid #f1f5f9;flex-direction:column;gap:3px;padding-top:8px;display:flex}.team-task-row{background:#f8fafc;border-radius:6px;align-items:center;gap:8px;padding:5px 8px;display:flex}.team-task-row.overdue{background:#fef2f2}.team-task-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.team-task-title{color:#475569;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;font-weight:500;overflow:hidden}.team-task-overdue-badge{color:#dc2626;background:#fee2e2;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:9px;font-weight:700}.team-card.is-me{border-color:#2684ff;position:relative;box-shadow:0 0 0 3px #2b6cb01a}.team-card-me-badge{color:#fff;letter-spacing:.05em;text-transform:uppercase;background:#2684ff;border-radius:20px;padding:2px 9px;font-size:9px;font-weight:800;position:absolute;top:-10px;right:14px}.tv-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative;overflow:visible}.tv-avatar--me{box-shadow:0 0 0 2px #fff,0 0 0 4px #2684ff}.tv-avatar-me-dot{background:#2684ff;border:2px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;bottom:1px;right:1px}.tv-tab-bar{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:flex}.tv-tabs{background:#f1f5f9;border-radius:10px;gap:2px;padding:3px;display:flex}.tv-tab{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:flex}.tv-tab:hover{color:#1e293b;background:#e2e8f0}.tv-tab.active{color:#2684ff;background:#fff;box-shadow:0 1px 4px #00000014}.tv-share-btn{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #e2e8f0;border-radius:9px;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:600;transition:border-color .15s,color .15s,background .15s;display:flex}.tv-share-btn:hover{color:#2684ff;background:#e6f0ff;border-color:#2684ff}.tv-mywork{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;flex-direction:column;flex:1;gap:16px;min-height:0;display:flex;overflow-y:auto}.tv-mywork-stats{flex-shrink:0;gap:10px;display:flex}.tv-mywork-stat{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;flex:1;gap:4px;padding:12px 14px;display:flex}.tv-mywork-stat-val{font-size:24px;font-weight:800;line-height:1}.tv-mywork-stat-lbl{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.tv-mywork-sections{flex-direction:column;gap:6px;display:flex}.tv-task-section{border:1px solid #f1f5f9;border-radius:10px;overflow:hidden}.tv-task-section-header{cursor:pointer;text-align:left;background:#f8fafc;border:none;align-items:center;gap:8px;width:100%;padding:10px 14px;transition:background .1s;display:flex}.tv-task-section-header:hover{background:#f1f5f9}.tv-task-section-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.tv-task-section-icon.overdue{color:#dc2626;background:#fef2f2}.tv-task-section-icon.active{color:#2684ff;background:#e6f0ff}.tv-task-section-icon.pending{color:#64748b;background:#f8fafc}.tv-task-section-icon.done{color:#00875a;background:#f0fdf4}.tv-task-section-label{color:#1e293b;flex:1;font-size:13px;font-weight:700}.tv-task-section-count{color:#475569;background:#e2e8f0;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:800}.tv-task-section-chevron{color:#94a3b8;flex-shrink:0;transition:transform .2s}.tv-task-section-chevron.open{transform:rotate(180deg)}.tv-task-section-body{background:#fff;flex-direction:column;gap:2px;padding:6px 8px;display:flex}.tv-task-row{border-radius:7px;align-items:center;gap:8px;padding:7px 8px;transition:background .1s;display:flex}.tv-task-row:hover{background:#f8fafc}.tv-task-row.overdue{background:#fef9f9}.tv-task-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.tv-task-title{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:500;overflow:hidden}.tv-task-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.tv-task-priority{font-size:10px;font-weight:700}.tv-task-date{color:#94a3b8;font-size:10px}.tv-task-date.overdue{color:#dc2626;font-weight:700}.tv-collab-section{border:1px solid #e2e8f0;border-radius:12px;flex-shrink:0;overflow:hidden}.tv-collab-header{color:#475569;background:#f8fafc;border-bottom:1px solid #f1f5f9;align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:700;display:flex}.tv-collab-count{color:#475569;background:#e2e8f0;border-radius:20px;padding:2px 8px;font-size:10px;font-weight:800}.tv-collab-grid{background:#fff;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;padding:10px;display:grid}.tv-collab-card{border:1px solid #e2e8f0;border-radius:9px;flex-direction:column;gap:6px;padding:12px;transition:border-color .15s;display:flex}.tv-collab-card:hover{border-color:#b3d4ff}.tv-collab-card.overdue{border-left:2px solid #ef4444}.tv-collab-card-top{align-items:center;gap:6px;display:flex}.tv-collab-assignee{color:#1e293b;flex:1;font-size:11px;font-weight:700}.tv-collab-team{text-transform:uppercase;color:#2684ff;background:#e6f0ff;border-radius:4px;padding:1px 6px;font-size:9px;font-weight:800}.tv-collab-title{color:#475569;font-size:12px;font-weight:500;line-height:1.4}.tv-collab-meta{align-items:center;gap:8px;display:flex}.tv-collab-status{font-size:10px;font-weight:600}.tv-collab-date{color:#94a3b8;margin-left:auto;font-size:10px}.tv-no-profile{color:#94a3b8;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:40px 24px;display:flex}.tv-no-profile p{color:#64748b;margin:0;font-size:15px;font-weight:600}.tv-no-profile span{font-size:13px}.tasks-detail-view{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.td-filters{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.td-search-wrap{flex:1;min-width:180px;position:relative}.td-search-icon{color:#94a3b8;pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.td-search{color:#1e293b;box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;outline:none;width:100%;height:34px;padding:0 12px 0 34px;font-size:13px;transition:border-color .15s}.td-search:focus{border-color:#2684ff}.td-select{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;outline:none;height:34px;padding:0 10px;font-size:12px}.td-clear-btn{color:#dc2626;cursor:pointer;white-space:nowrap;background:#fef2f2;border:1.5px solid #fecaca;border-radius:8px;height:34px;padding:0 14px;font-size:12px;font-weight:600;transition:background .1s}.td-clear-btn:hover{background:#fee2e2}.td-content{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;flex-direction:column;flex:1;gap:10px;min-height:0;padding-bottom:8px;display:flex;overflow-y:auto}.td-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.td-section-overdue{border-left:3px solid #ef4444}.td-section-active{border-left:3px solid #2684ff}.td-section-pending{border-left:3px solid #94a3b8}.td-section-done{border-left:3px solid #00875a}.td-section-header{cursor:pointer;text-align:left;background:#f8fafc;border:none;align-items:center;gap:8px;width:100%;padding:12px 16px;transition:background .1s;display:flex}.td-section-header:hover{background:#f1f5f9}.td-section-icon{border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.td-section-icon.overdue{color:#dc2626;background:#fef2f2}.td-section-icon.active{color:#2684ff;background:#e6f0ff}.td-section-icon.pending{color:#64748b;background:#f8fafc}.td-section-icon.done{color:#00875a;background:#f0fdf4}.td-section-label{color:#1e293b;font-size:12px;font-weight:700}.td-section-count{color:#94a3b8;background:#e2e8f0;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:700}.td-section-body{flex-direction:column;display:flex}.td-task-row{cursor:pointer;border-top:1px solid #f1f5f9;align-items:center;gap:10px;padding:11px 16px;transition:background .1s;display:flex}.td-task-row:hover{background:#f8fafc}.td-task-row.overdue{background:#fef2f280}.td-task-row.overdue:hover{background:#fef2f2}.td-task-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.td-task-status-dot.in-progress{background:#2684ff}.td-task-status-dot.todo{background:#94a3b8}.td-task-status-dot.pending{background:#f59e0b}.td-task-status-dot.completed,.td-task-status-dot.done{background:#00875a}.td-task-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.td-task-key{color:#94a3b8;background:#f1f5f9;border-radius:4px;padding:2px 6px;font-size:9px;font-weight:800}.td-task-priority{border-radius:5px;padding:2px 7px;font-size:9px;font-weight:700}.td-task-priority.urgent{color:#dc2626;background:#fef2f2}.td-task-priority.high{color:#c2410c;background:#fff7ed}.td-task-priority.normal{color:#2684ff;background:#e6f0ff}.td-task-priority.low{color:#64748b;background:#f8fafc}.td-task-title{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.td-task-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.td-task-team{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:5px;padding:2px 8px;font-size:10px;font-weight:600}.td-task-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:8px;font-weight:800;display:flex}.td-task-days{white-space:nowrap;border-radius:5px;padding:2px 8px;font-size:10px;font-weight:700}.td-task-days.over{color:#dc2626;background:#fef2f2}.td-task-days.soon{color:#c2410c;background:#fff7ed}.td-task-days.ok{color:#64748b;background:#f8fafc}.td-task-progress-wrap{align-items:center;gap:6px;min-width:80px;display:flex}.td-task-progress-bar{background:#f1f5f9;border-radius:4px;flex:1;height:4px;overflow:hidden}.td-task-progress-fill{border-radius:4px;height:100%;transition:width .4s}.td-task-progress-fill.completed{background:#00875a}.td-task-progress-fill.in-progress{background:#2684ff}.td-task-progress-fill.todo{background:#94a3b8}.td-task-progress-fill.pending{background:#f59e0b}.td-task-progress-pct{color:#94a3b8;text-align:right;width:26px;font-size:10px;font-weight:700}.td-empty{color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:60px 20px;font-size:13px;font-weight:500;display:flex}.profile-backdrop{backdrop-filter:blur(4px);z-index:500;background:#0f172a73;justify-content:center;align-items:center;animation:.15s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.profile-modal{background:#fff;border-radius:18px;width:380px;max-width:calc(100vw - 32px);animation:.2s cubic-bezier(.34,1.56,.64,1) slide-up;overflow:hidden;box-shadow:0 24px 64px #0000002e}@keyframes slide-up{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.profile-modal-header{justify-content:space-between;align-items:center;padding:20px 20px 0;display:flex}.profile-modal-title{color:#0f172a;font-size:16px;font-weight:700}.profile-modal-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s;display:flex}.profile-modal-close:hover{background:#e2e8f0}.profile-avatar-section{flex-direction:column;align-items:center;gap:10px;padding:24px 20px 8px;display:flex}.profile-avatar-preview{cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:90px;height:90px;transition:box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 16px #0000001f}.profile-avatar-preview:hover{box-shadow:0 6px 24px #0000002e}.profile-avatar-img{object-fit:cover;width:100%;height:100%}.profile-avatar-initials{color:#fff;letter-spacing:-1px;user-select:none;font-size:28px;font-weight:800}.profile-avatar-overlay{color:#fff;opacity:0;background:#00000059;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.profile-avatar-preview:hover .profile-avatar-overlay{opacity:1}.profile-avatar-remove{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;transition:background .15s;display:flex}.profile-avatar-remove:hover{background:#fef2f2}.profile-field{flex-direction:column;gap:7px;padding:8px 20px;display:flex}.profile-label{color:#64748b;text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.profile-input{color:#0f172a;box-sizing:border-box;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:10px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.profile-input:focus{border-color:#2684ff;box-shadow:0 0 0 3px #2b6cb01f}.profile-colors{flex-wrap:wrap;gap:8px;display:flex}.profile-color-dot{cursor:pointer;border:2.5px solid #0000;border-radius:50%;outline:none;width:28px;height:28px;transition:transform .15s,border-color .15s}.profile-color-dot:hover{transform:scale(1.15)}.profile-color-dot.selected{border-color:#0f172a;transform:scale(1.1);box-shadow:inset 0 0 0 2px #fff}.profile-modal-actions{justify-content:flex-end;gap:8px;padding:16px 20px 20px;display:flex}.profile-btn-cancel{color:#64748b;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:9px 18px;font-size:13px;font-weight:600;transition:background .15s}.profile-btn-cancel:hover{background:#f8fafc}.profile-btn-save{color:#fff;cursor:pointer;background:#2684ff;border:none;border-radius:10px;align-items:center;gap:6px;padding:9px 24px;font-size:13px;font-weight:700;transition:background .15s,transform .1s;display:flex}.profile-btn-save:hover:not(:disabled){background:#0747a6}.profile-btn-save:disabled{opacity:.5;cursor:not-allowed}.profile-btn-save.saved{background:#00875a}.profile-claude-section{border-top:1px solid #f1f5f9;margin-top:4px;padding-top:14px}.profile-token-row{align-items:center;gap:6px;display:flex}.profile-token-value{color:#475569;text-overflow:ellipsis;white-space:nowrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;flex:1;padding:7px 10px;font-family:Courier New,monospace;font-size:12px;overflow:hidden}.profile-token-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s;display:flex}.profile-token-btn:hover{background:#f1f5f9}.profile-snippet-details{margin-top:8px}.profile-snippet-summary{color:#94a3b8;cursor:pointer;user-select:none;font-size:11px;list-style:none}.profile-snippet-summary:hover{color:#2684ff}.profile-snippet-wrap{margin-top:6px;position:relative}.profile-snippet{color:#e2e8f0;white-space:pre;background:#0f172a;border-radius:8px;margin:0;padding:12px 14px;font-size:11px;line-height:1.6;overflow-x:auto}.profile-snippet-copy{gap:4px;width:auto;padding:0 8px;font-size:11px;position:absolute;top:8px;right:8px}.burndown-container{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px 10px;overflow:hidden}.burndown-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.burndown-title{color:#334155;letter-spacing:.01em;font-size:12px;font-weight:700}.burndown-label{color:#94a3b8;font-size:10px;font-weight:500}.burndown-svg{width:100%;height:auto;display:block}.burndown-legend{border-top:1px solid #f1f5f9;align-items:center;gap:16px;margin-top:8px;padding-top:8px;display:flex}.burndown-legend-item{color:#64748b;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.burndown-legend-sp{color:#94a3b8;margin-left:auto;font-weight:500}.burndown-empty{color:#94a3b8;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:10px;align-items:center;gap:10px;padding:20px 16px;font-size:12px;font-weight:500;display:flex}.burndown-skeleton{background:#f1f5f9;border-radius:10px;height:120px;overflow:hidden}.burndown-shimmer{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200%;width:100%;height:100%;animation:1.4s infinite burndown-shimmer}@keyframes burndown-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sprint-view{flex-direction:column;gap:16px;height:100%;min-height:0;padding-bottom:24px;display:flex;overflow-y:auto}.sprint-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.sprint-section-header{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.sprint-section-title{color:#334155;letter-spacing:.01em;font-size:13px;font-weight:700}.sprint-panel{border-bottom:1px solid #f1f5f9}.sprint-panel:last-child{border-bottom:none}.sprint-panel-header{background:#fff;align-items:center;gap:10px;padding:12px 16px;transition:background .15s;display:flex}.sprint-panel-header:hover{background:#fafcff}.sprint-panel-info{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.sprint-panel-name{color:#1e293b;font-size:14px;font-weight:700}.sprint-panel-dates{color:#94a3b8;font-size:11px;font-weight:500}.sprint-status-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:700}.sprint-panel-meta{flex-shrink:0;align-items:center;gap:8px;display:flex}.sprint-sp-total{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:2px 8px;font-size:11px;font-weight:700}.sprint-panel-body{background:#fafcff;border-top:1px solid #f1f5f9}.sprint-task-row,.sprint-backlog-row{cursor:pointer;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:12px;padding:9px 16px;transition:background .12s;display:flex}.sprint-task-row:last-child,.sprint-backlog-row:last-child{border-bottom:none}.sprint-task-row:hover,.sprint-backlog-row:hover{background:#f0f7ff}.sprint-backlog-left{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.sprint-backlog-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.sprint-task-key{color:#94a3b8;white-space:nowrap;letter-spacing:.04em;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;flex-shrink:0;padding:1px 6px;font-size:9px;font-weight:800}.sprint-task-title{color:#334155;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.sprint-sp-badge{color:#2684ff;white-space:nowrap;background:#e6f0ff;border-radius:8px;padding:2px 7px;font-size:10px;font-weight:700}.sprint-count-badge{color:#64748b;background:#e2e8f0;border-radius:10px;padding:1px 8px;font-size:10px;font-weight:700}.sprint-avatar{color:#fff;background:#4c6ef5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:8px;font-weight:800;display:flex}.sprint-btn-primary{color:#fff;cursor:pointer;background:#2684ff;border:none;border-radius:8px;align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:700;transition:background .15s;display:flex}.sprint-btn-primary:hover:not(:disabled){background:#1a6fe0}.sprint-btn-primary:disabled{opacity:.6;cursor:not-allowed}.sprint-btn-secondary{color:#475569;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;align-items:center;gap:5px;padding:7px 14px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s;display:flex}.sprint-btn-secondary:hover:not(:disabled){color:#2684ff;background:#f0f7ff;border-color:#bfdbfe}.sprint-btn-secondary:disabled{opacity:.6;cursor:not-allowed}.sprint-btn-sm{padding:5px 10px;font-size:11px}.sprint-move-btn{color:#64748b;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;transition:background .12s,color .12s;display:flex}.sprint-move-btn:hover{color:#2684ff;background:#e6f0ff;border-color:#bfdbfe}.sprint-remove-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;width:24px;height:24px;transition:background .12s,color .12s;display:flex}.sprint-remove-btn:hover{color:#dc2626;background:#fee2e2}.sprint-move-menu{z-index:200;background:#fff;border:1px solid #e2e8f0;border-radius:10px;min-width:160px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 8px 28px #0000001f}.sprint-move-menu-item{text-align:left;color:#334155;cursor:pointer;background:0 0;border:none;border-radius:7px;width:100%;padding:8px 12px;font-size:13px;transition:background .12s;display:block}.sprint-move-menu-item:hover{color:#2684ff;background:#f0f7ff}.sprint-create-form{background:#f8fafc;border-bottom:1px solid #f1f5f9;flex-direction:column;gap:12px;padding:16px;display:flex}.sprint-create-title{color:#334155;font-size:13px;font-weight:700}.sprint-form-label{color:#64748b;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.sprint-form-input{color:#334155;box-sizing:border-box;background:#fff;border:1.5px solid #e2e8f0;border-radius:7px;outline:none;width:100%;padding:8px 10px;font-family:inherit;font-size:13px;transition:border-color .15s}.sprint-form-input:focus{border-color:#2684ff}.sprint-backlog-section .sprint-section-header{z-index:10;position:sticky;top:0}.sprint-backlog-body{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent;max-height:400px;overflow-y:auto}.sprint-backlog-search{color:#334155;background:#fff;border:1.5px solid #e2e8f0;border-radius:7px;outline:none;width:180px;padding:5px 10px;font-family:inherit;font-size:12px;transition:border-color .15s}.sprint-backlog-search:focus{border-color:#2684ff}.sprint-empty{color:#94a3b8;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:48px 24px;font-size:13px;display:flex}.sprint-empty-tasks{color:#94a3b8;align-items:center;gap:8px;padding:16px 20px;font-size:13px;display:flex}.sprint-loading{flex-direction:column;gap:8px;padding:12px 16px;display:flex}.sprint-skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200%;border-radius:8px;height:52px;animation:1.4s infinite shimmer}.sprint-collapse-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:background .12s;display:flex}.sprint-collapse-btn:hover{background:#e2e8f0}.ttv-container{flex-direction:column;gap:12px;height:100%;padding:4px 0 24px;display:flex;overflow-y:auto}.ttv-global-stats{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:10px 16px;display:flex}.ttv-global-stat{align-items:center;gap:6px;display:flex}.ttv-global-stat-val{color:#0f172a;font-size:16px;font-weight:800;line-height:1}.ttv-global-stat-label{color:#64748b;font-size:11px;font-weight:500}.ttv-global-divider{background:#e2e8f0;flex-shrink:0;width:1px;height:20px}.ttv-group-toggle{background:#f1f5f9;border-radius:8px;align-items:center;gap:4px;margin-left:auto;padding:3px;display:flex}.ttv-group-btn{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:6px;align-items:center;gap:5px;padding:5px 10px;font-size:11px;font-weight:600;transition:all .15s;display:flex}.ttv-group-btn.active{color:#2684ff;background:#fff;box-shadow:0 1px 4px #00000014}.ttv-teams-list{flex-direction:column;gap:10px;display:flex}.ttv-team-block{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.ttv-team-header{cursor:pointer;user-select:none;justify-content:space-between;align-items:center;padding:12px 16px;transition:background .12s;display:flex}.ttv-team-header:hover{background:#f8fafc}.ttv-team-header-left{align-items:center;gap:10px;min-width:0;display:flex}.ttv-team-color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.ttv-team-name{color:#0f172a;font-size:14px;font-weight:700}.ttv-team-count{color:#94a3b8;font-size:11px;font-weight:500}.ttv-overdue-pill{color:#dc2626;background:#fef2f2;border-radius:20px;align-items:center;gap:3px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.ttv-team-header-right{align-items:center;gap:10px;display:flex}.ttv-team-progress-wrap{align-items:center;gap:6px;display:flex}.ttv-team-progress-bar{background:#f1f5f9;border-radius:3px;width:100px;height:6px;display:flex;overflow:hidden}.ttv-team-progress-seg{height:100%;transition:width .4s}.ttv-team-progress-seg.inprog{background:#93c5fd}.ttv-team-progress-seg.done{background:#16a34a}.ttv-team-pct{color:#64748b;min-width:30px;font-size:11px;font-weight:700}.ttv-expand-btn{color:#94a3b8;align-items:center;display:flex}.ttv-team-body{border-top:1px solid #f1f5f9;flex-direction:column;gap:6px;padding:0 12px 12px;display:flex}.ttv-empty-team{text-align:center;color:#94a3b8;padding:16px;font-size:13px}.ttv-member-card{background:#fafafa;border:1px solid #e2e8f0;border-radius:10px;margin-top:6px;overflow:hidden}.ttv-member-header{cursor:pointer;user-select:none;justify-content:space-between;align-items:center;padding:10px 14px;transition:background .12s;display:flex}.ttv-member-header:hover{background:#f1f5f9}.ttv-member-left{align-items:center;gap:10px;display:flex}.ttv-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:11px;font-weight:800;display:flex}.ttv-member-info{flex-direction:column;display:flex}.ttv-member-name{color:#0f172a;font-size:13px;font-weight:700}.ttv-member-sub{color:#94a3b8;align-items:center;gap:5px;font-size:11px;display:flex}.ttv-member-right{align-items:center;gap:10px;display:flex}.ttv-stat-chips{flex-wrap:wrap;gap:5px;display:flex}.ttv-stat-chip{border-radius:20px;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:600;display:inline-flex}.ttv-task-list{border-top:1px solid #e2e8f0}.ttv-empty-tasks{color:#94a3b8;padding:12px 14px;font-size:12px;font-style:italic}.ttv-task-row{cursor:pointer;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:8px 14px;transition:background .1s;display:flex}.ttv-task-row:last-child{border-bottom:none}.ttv-task-row:hover{background:#f8fafc}.ttv-task-row.overdue{background:#fff5f5}.ttv-task-row.overdue:hover{background:#fef2f2}.ttv-task-left{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.ttv-task-key{color:#94a3b8;flex-shrink:0;font-family:monospace;font-size:10px;font-weight:700}.ttv-task-title{color:#334155;text-overflow:ellipsis;white-space:nowrap;max-width:360px;font-size:12px;overflow:hidden}.ttv-overdue-badge{color:#dc2626;background:#fef2f2;border-radius:20px;flex-shrink:0;align-items:center;gap:3px;padding:1px 5px;font-size:9px;font-weight:700;display:inline-flex}.ttv-task-right{flex-shrink:0;align-items:center;gap:8px;margin-left:12px;display:flex}.ttv-task-date{font-size:10px;font-weight:600}.ttv-status-pill{border-radius:20px;padding:2px 8px;font-size:10px;font-weight:600}.ttv-sp-badge{color:#7c3aed;background:#f5f3ff;border-radius:6px;padding:2px 6px;font-size:10px;font-weight:700}.import-backdrop{backdrop-filter:blur(4px);z-index:500;background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.import-modal{background:#fff;border-radius:16px;flex-direction:column;width:640px;max-width:calc(100vw - 32px);max-height:calc(100vh - 48px);display:flex;overflow:hidden;box-shadow:0 24px 64px #00000029}.import-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.import-title{color:#0f172a;font-size:16px;font-weight:700}.import-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;transition:background .15s;display:flex}.import-close:hover{background:#e2e8f0}.import-body{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex;overflow-y:auto}.import-dropzone{text-align:center;cursor:pointer;border:2px dashed #cbd5e1;border-radius:12px;padding:32px 24px;transition:border-color .15s,background .15s}.import-dropzone:hover,.import-dropzone.drag-over{background:#eff6ff;border-color:#2684ff}.import-dropzone-icon{color:#94a3b8;margin-bottom:8px}.import-dropzone-text{color:#64748b;font-size:14px}.import-dropzone-sub{color:#94a3b8;margin-top:4px;font-size:12px}.import-project-row{gap:10px;display:flex}.import-field{flex-direction:column;flex:1;gap:5px;display:flex}.import-field label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.import-field input{color:#0f172a;border:1.5px solid #e2e8f0;border-radius:8px;outline:none;padding:9px 12px;font-size:13px;transition:border-color .15s}.import-field input:focus{border-color:#2684ff}.import-preview{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.import-preview-header{color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:10px 14px;font-size:12px;font-weight:700}.import-preview-list{max-height:260px;overflow-y:auto}.import-preview-item{border-bottom:1px solid #f1f5f9;align-items:center;gap:10px;padding:8px 14px;font-size:13px;display:flex}.import-preview-item:last-child{border-bottom:none}.import-preview-type{text-transform:uppercase;border-radius:5px;flex-shrink:0;padding:2px 7px;font-size:10px;font-weight:700}.type-parent{color:#1e40af;background:#dbeafe}.type-task{color:#166534;background:#dcfce7}.type-subtask{color:#854d0e;background:#fef9c3}.import-preview-title{color:#1e293b;flex:1}.import-preview-priority{border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.prio-urgent{color:#dc2626;background:#fee2e2}.prio-high{color:#ea580c;background:#ffedd5}.prio-normal{color:#2563eb;background:#dbeafe}.prio-low{color:#94a3b8;background:#f1f5f9}.import-error{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;padding:10px 14px;font-size:13px}.import-footer{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:14px 24px 18px;display:flex}.import-count{color:#94a3b8;font-size:12px}.import-btn-cancel{color:#64748b;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;transition:background .15s}.import-btn-cancel:hover{background:#f8fafc}.import-btn-submit{color:#fff;cursor:pointer;background:#2684ff;border:none;border-radius:8px;align-items:center;gap:6px;padding:8px 22px;font-size:13px;font-weight:700;transition:background .15s;display:flex}.import-btn-submit:hover:not(:disabled){background:#0747a6}.import-btn-submit:disabled{opacity:.55;cursor:not-allowed}.login-root{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:100%;max-width:380px;padding:40px 36px 32px;box-shadow:0 8px 32px #00000014}.login-logo{justify-content:center;align-items:center;margin-bottom:28px;display:flex}.login-title{color:#0f172a;text-align:center;margin:0 0 4px;font-size:22px;font-weight:800}.login-subtitle{color:#94a3b8;text-align:center;margin:0 0 28px;font-size:13px}.login-field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.login-label{color:#475569;text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.login-input{color:#0f172a;box-sizing:border-box;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;width:100%;padding:11px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.login-input:focus{border-color:#2684ff;box-shadow:0 0 0 3px #2684ff1f}.login-password-wrap{position:relative}.login-password-wrap .login-input{padding-right:42px}.login-password-toggle{cursor:pointer;color:#94a3b8;background:0 0;border:none;padding:4px;transition:color .15s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.login-password-toggle:hover{color:#475569}.login-error{color:#dc2626;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.login-btn{color:#fff;cursor:pointer;background:#2684ff;border:none;border-radius:10px;width:100%;margin-top:4px;padding:12px;font-size:14px;font-weight:700;transition:background .15s,transform .1s}.login-btn:hover:not(:disabled){background:#0747a6}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-btn:active:not(:disabled){transform:scale(.98)}
