.vec-app{height:calc(100vh - 112px);min-height:480px;display:flex;background:var(--bg-page);color:var(--text-primary);overflow:hidden;border:1px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-md)}.vec-app *{box-sizing:border-box}.vec-sidebar{width:260px;min-width:260px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-card);border-right:1px solid var(--border-color);height:100%;overflow:hidden;position:relative;z-index:20;transition:transform .25s ease;border-radius:16px 0 0 16px}.vec-main{border-radius:0 16px 16px 0}@media (max-width: 900px){.vec-sidebar{border-radius:0}}.vec-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:19;display:none}@media (max-width: 900px){.vec-sidebar{position:fixed;top:0;left:0;bottom:0;transform:translate(-100%);z-index:30;box-shadow:var(--shadow-lg)}.vec-sidebar.vec-open{transform:translate(0)}.vec-sidebar-overlay.vec-open{display:block}}.vec-sidebar-header{display:flex;align-items:center;gap:10px;padding:18px 16px;border-bottom:1px solid var(--border-color)}.vec-sidebar-header .vec-logo-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:linear-gradient(135deg,var(--brand-green) 0%,#4a7018 100%);color:#fff;box-shadow:0 2px 8px #6b9a2a66}.vec-sidebar-header .vec-title{font-weight:700;font-size:14px;letter-spacing:-.01em}.vec-sidebar-header .vec-subtitle{font-size:11px;color:var(--text-muted)}.vec-sidebar-close{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;display:none}@media (max-width: 900px){.vec-sidebar-close{display:block}}.vec-nav-section{padding:10px 10px 4px}.vec-nav-btn{width:100%;display:flex;align-items:center;gap:10px;padding:9px 12px;margin-bottom:2px;background:none;border:none;border-radius:8px;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;text-align:left;transition:background .15s ease,color .15s ease;font-family:inherit}.vec-nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.vec-nav-btn.vec-active{background:#6b9a2a1f;color:var(--brand-green);font-weight:600}[data-theme=dark] .vec-nav-btn.vec-active{background:#6b9a2a2e;color:#8bc34a}.vec-divider{height:1px;background:var(--border-color);margin:6px 12px}.vec-group-toggle{width:100%;display:flex;align-items:center;gap:6px;padding:8px 12px;background:none;border:none;color:var(--text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;font-family:inherit}.vec-group-toggle .vec-count{margin-left:auto;background:var(--bg-surface);color:var(--text-muted);border-radius:10px;padding:1px 7px;font-size:10px;font-weight:600}.vec-project-list{padding:0 6px}.vec-project-btn{width:100%;display:flex;align-items:center;gap:8px;padding:7px 12px 7px 22px;background:none;border:none;border-radius:8px;color:var(--text-secondary);font-size:13px;cursor:pointer;text-align:left;font-family:inherit;transition:background .15s ease}.vec-project-btn:hover{background:var(--bg-hover)}.vec-project-btn.vec-active{background:#6b9a2a1a;color:var(--text-primary);font-weight:600}.vec-project-btn .vec-emoji{font-size:14px;flex-shrink:0}.vec-project-btn .vec-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vec-project-btn .vec-progress-pill{font-size:10px;color:var(--text-faint);flex-shrink:0}.vec-projects-scroll{flex:1;overflow-y:auto;padding-bottom:8px}.vec-team-section{border-top:1px solid var(--border-color);padding:10px}.vec-team-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px}.vec-team-row .vec-name{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vec-team-row .vec-role{font-size:11px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vec-ai-tag{font-size:9px;font-weight:700;background:#fbbf242e;color:#b45309;border-radius:6px;padding:1px 6px}[data-theme=dark] .vec-ai-tag{color:#fbbf24}.vec-avatar{border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;overflow:hidden}.vec-avatar img{width:100%;height:100%;object-fit:cover}.vec-avatar-xs{width:20px;height:20px;font-size:9px}.vec-avatar-sm{width:24px;height:24px;font-size:10px}.vec-avatar-md{width:32px;height:32px;font-size:12px}.vec-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.vec-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 18px;border-bottom:1px solid var(--border-color);background:var(--bg-card);flex-shrink:0}.vec-topbar-left{display:flex;align-items:center;gap:10px;min-width:0}.vec-hamburger{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer}@media (max-width: 900px){.vec-hamburger{display:flex}}.vec-topbar h2{font-size:16px;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vec-topbar .vec-sub{font-size:11px;color:var(--text-muted)}.vec-icon-btn{background:none;border:1px solid var(--border-color);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.vec-icon-btn:hover{background:var(--bg-hover);color:var(--text-primary);transform:translateY(-1px)}.vec-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:none;background:linear-gradient(135deg,var(--brand-green) 0%,#5a8323 100%);color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;box-shadow:0 2px 8px #6b9a2a59;transition:all .15s ease}.vec-btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 14px #6b9a2a73}.vec-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.vec-btn-ghost{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;background:none;border:1px solid var(--border-color);color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s ease}.vec-btn-ghost:hover{background:var(--bg-hover)}.vec-btn-danger{color:#dc2626}[data-theme=dark] .vec-btn-danger{color:#f87171}.vec-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.vec-body-scroll{flex:1;overflow-y:auto}.vec-alert-error{margin:16px;padding:12px 14px;border-radius:10px;background:#dc262614;border:1px solid rgba(220,38,38,.25);color:#b91c1c;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:10px}[data-theme=dark] .vec-alert-error{color:#f87171;background:#dc26261f}.vec-project-grid{padding:18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.vec-project-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:16px;cursor:pointer;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s ease,border-color .18s ease}.vec-project-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:#6b9a2a59}.vec-project-card-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.vec-project-card-emoji{font-size:22px}.vec-project-card-title{font-weight:700;font-size:14px}.vec-project-card-track{font-size:11px;color:var(--text-muted)}.vec-project-card-desc{font-size:12px;color:var(--text-secondary);margin:6px 0 10px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vec-project-card-foot{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-muted)}.vec-progress-track{flex:1;height:5px;border-radius:3px;background:var(--bg-surface);overflow:hidden}.vec-progress-fill{height:100%;background:linear-gradient(90deg,var(--brand-green),#8bc34a);border-radius:3px;transition:width .3s ease}.vec-board{display:flex;gap:14px;height:100%;overflow-x:auto;padding:16px}@media (max-width: 900px){.vec-board{flex-direction:column;overflow-x:visible}}.vec-bucket{display:flex;flex-direction:column;width:280px;min-width:280px;flex-shrink:0;background:var(--bg-surface);border-radius:12px;border-top:3px solid var(--border-color);max-height:100%}@media (max-width: 900px){.vec-bucket{width:100%;min-width:0;max-height:none}}.vec-bucket.vec-drag-over{box-shadow:0 0 0 2px var(--brand-green) inset}.vec-bucket-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border-color)}.vec-bucket-head .vec-bucket-name{font-weight:600;font-size:13px}.vec-bucket-count{font-size:11px;background:var(--bg-card);color:var(--text-muted);border-radius:10px;padding:1px 7px}.vec-bucket-add{background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:6px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.vec-bucket-add:hover{background:var(--bg-hover);color:var(--brand-green)}.vec-bucket-cards{overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px;flex:1}.vec-bucket-empty{text-align:center;font-size:11px;color:var(--text-faint);padding:20px 0}.vec-task-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s ease}.vec-task-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.vec-task-card[draggable=true]{cursor:grab}.vec-task-card[draggable=true]:active{cursor:grabbing}.vec-task-labels{display:flex;flex-wrap:wrap;gap:4px}.vec-label-chip{font-size:10px;font-weight:600;padding:1px 6px;border-radius:6px;border:1px solid var(--brand-green);color:var(--brand-green);background:#6b9a2a14}.vec-task-title{font-size:13px;font-weight:500;line-height:1.35}.vec-task-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--text-muted)}.vec-pri-chip{font-size:10px;font-weight:700;padding:1px 7px;border-radius:20px}.vec-pri-urgent{background:#dc26261f;color:#dc2626}.vec-pri-high{background:#fb923c26;color:#ea580c}.vec-pri-medium{background:#60a5fa26;color:#2563eb}.vec-pri-low{background:var(--bg-surface);color:var(--text-muted)}[data-theme=dark] .vec-pri-urgent{background:#dc262633;color:#f87171}[data-theme=dark] .vec-pri-high{background:#fb923c33;color:#fb923c}[data-theme=dark] .vec-pri-medium{background:#60a5fa33;color:#60a5fa}.vec-task-assignee{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary)}.vec-list{padding:16px;height:100%;display:flex;flex-direction:column;overflow:hidden}.vec-list-filters{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;align-items:center}.vec-select{padding:7px 10px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-input);color:var(--text-primary);font-size:12px;font-family:inherit}.vec-list-count{margin-left:auto;font-size:12px;color:var(--text-muted)}.vec-table-wrap{flex:1;overflow:auto;border:1px solid var(--border-color);border-radius:12px}.vec-table{width:100%;border-collapse:collapse;font-size:12.5px}.vec-table th{position:sticky;top:0;text-align:left;text-transform:uppercase;letter-spacing:.04em;font-size:10.5px;font-weight:700;color:var(--text-muted);background:var(--bg-surface);padding:9px 12px;border-bottom:1px solid var(--border-color);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.vec-table td{padding:9px 12px;border-bottom:1px solid var(--border-light);vertical-align:middle}.vec-table tr:hover td{background:var(--bg-hover)}.vec-table-row{cursor:pointer}.vec-status-chip{font-size:10px;font-weight:700;padding:2px 8px;border-radius:20px}.vec-status-0{background:var(--bg-surface);color:var(--text-muted)}.vec-status-1{background:#fbbf2426;color:#b45309}.vec-status-2{background:#6b9a2a26;color:var(--brand-green)}[data-theme=dark] .vec-status-1{color:#fbbf24}[data-theme=dark] .vec-status-2{color:#8bc34a}.vec-dashboard{padding:18px;height:100%;overflow-y:auto}.vec-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:18px}.vec-stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:16px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}.vec-stat-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);display:flex;align-items:center;gap:6px;margin-bottom:6px}.vec-stat-value{font-size:28px;font-weight:800;letter-spacing:-.02em}.vec-stat-sub{font-size:11px;color:var(--text-muted);margin-top:2px}.vec-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:14px;padding:16px;box-shadow:var(--shadow-sm)}.vec-panel h3{font-size:13px;font-weight:700;margin:0 0 12px;display:flex;align-items:center;gap:8px}.vec-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 900px){.vec-panel-grid{grid-template-columns:1fr}}.vec-overall-bar{display:flex;height:22px;border-radius:10px;overflow:hidden;background:var(--bg-surface)}.vec-overall-seg{display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;transition:width .4s cubic-bezier(.22,1,.36,1)}.vec-legend{display:flex;gap:14px;margin-top:8px;font-size:11px;color:var(--text-muted)}.vec-legend-dot{width:8px;height:8px;border-radius:3px;display:inline-block;margin-right:5px}.vec-proj-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border-light);cursor:pointer}.vec-proj-row:last-child{border-bottom:none}.vec-proj-row:hover{background:var(--bg-hover);border-radius:8px}.vec-workload-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.vec-workload-bar{flex:1;height:6px;border-radius:3px;background:var(--bg-surface);display:flex;overflow:hidden;margin-top:4px}.vec-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100;display:flex;align-items:flex-end;justify-content:center}@media (min-width: 640px){.vec-modal-overlay{align-items:flex-start;padding-top:60px}}.vec-modal{width:100%;max-width:640px;max-height:88vh;background:var(--bg-card);border-radius:18px 18px 0 0;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:vecModalIn .22s cubic-bezier(.22,1,.36,1)}@media (min-width: 640px){.vec-modal{border-radius:16px;max-height:82vh}}@keyframes vecModalIn{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.vec-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border-color);flex-shrink:0}.vec-modal-header h3{font-size:16px;font-weight:700;margin:0}.vec-modal-body{flex:1;overflow-y:auto;padding:16px 18px;display:flex;flex-direction:column;gap:14px}.vec-field label{display:block;font-size:11px;font-weight:700;color:var(--text-muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:.03em}.vec-input,.vec-textarea{width:100%;padding:9px 11px;border-radius:9px;border:1px solid var(--border-color);background:var(--bg-input);color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.vec-input:focus,.vec-textarea:focus,.vec-select:focus{border-color:var(--brand-green);box-shadow:0 0 0 3px #6b9a2a26}.vec-textarea{resize:vertical;min-height:80px}.vec-field-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}@media (max-width: 640px){.vec-field-row{grid-template-columns:1fr}}.vec-field-row-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media (max-width: 640px){.vec-field-row-2{grid-template-columns:1fr}}.vec-comment-row{display:flex;gap:8px;margin-bottom:8px}.vec-comment-bubble{flex:1;background:var(--bg-surface);border-radius:10px;padding:8px 10px}.vec-comment-author{font-size:11px;font-weight:700}.vec-comment-text{font-size:13px;margin-top:1px}.vec-comment-time{font-size:10px;color:var(--text-faint);margin-top:3px}.vec-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border-color);flex-shrink:0}.vec-ai-bar{display:flex;gap:8px;padding:10px 16px;border-top:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0}.vec-ai-input{flex:1;padding:8px 12px;border-radius:20px;border:1px solid var(--border-color);background:var(--bg-input);color:var(--text-primary);font-size:13px;font-family:inherit;outline:none}.vec-ai-input:focus{border-color:var(--brand-green)}.vec-ai-send{width:34px;height:34px;border-radius:50%;border:none;background:var(--brand-green);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .15s ease}.vec-ai-send:hover:not(:disabled){transform:scale(1.08)}.vec-ai-send:disabled{opacity:.4;cursor:not-allowed}.vec-loading{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--text-muted)}.vec-spinner{width:30px;height:30px;border:3px solid var(--border-color);border-top-color:var(--brand-green);border-radius:50%;animation:vecSpin .8s linear infinite}@keyframes vecSpin{to{transform:rotate(360deg)}}
