@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Instrument+Serif:ital@0;1&display=swap";#root{min-height:100vh}:root{--font-body: "DM Sans", system-ui, sans-serif;--font-display: "Instrument Serif", Georgia, serif;--bg-canvas: #FAF9F7;--bg-surface: #FFFFFF;--bg-raised: #F4F3F1;--bg-sunken: #EEECEA;--bg-sidebar: #1A1A1A;--bg-sidebar-hover: #2A2A2A;--bg-sidebar-active: rgba(255, 255, 255, .08);--ink-primary: #1A1A1A;--ink-secondary: #6B6B6B;--ink-tertiary: #9B9B9B;--ink-muted: #C4C4C4;--ink-inverse: #FFFFFF;--ink-sidebar: rgba(255, 255, 255, .65);--ink-sidebar-active: #FFFFFF;--accent: #E8503A;--accent-soft: #FFF0ED;--accent-hover: #D4432F;--green: #2D9D5A;--green-soft: #EAFAF0;--amber: #D4860A;--amber-soft: #FFF8EB;--red: #D94040;--red-soft: #FFF0F0;--violet: #7C5CFC;--violet-soft: #F3F0FF;--border: rgba(0, 0, 0, .07);--border-strong: rgba(0, 0, 0, .12);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .06), 0 0 0 1px rgba(0, 0, 0, .03);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .03);--shadow-lg: 0 12px 48px rgba(0, 0, 0, .12);--shadow-panel: -8px 0 40px rgba(0, 0, 0, .08);--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--duration: .2s;--duration-md: .35s}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:var(--bg-canvas);color:var(--ink-primary);line-height:1.55;overflow-x:hidden;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}.app{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--bg-sidebar);display:flex;flex-direction:column;position:fixed;left:0;top:0;bottom:0;z-index:100;transition:left var(--duration-md) var(--ease)}.sidebar-header{padding:24px 20px 20px}.logo{display:flex;align-items:center;gap:12px;color:var(--ink-inverse)}.logo-icon{width:34px;height:34px;background:var(--accent);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;font-weight:700;letter-spacing:-.5px}.logo span:last-child{font-family:var(--font-display);font-size:20px;font-weight:400;letter-spacing:-.3px}.sidebar-nav{flex:1;padding:8px 12px;overflow-y:auto;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.nav-section{margin-bottom:28px}.nav-section-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;color:#ffffff4d;padding:0 12px 10px}.nav-item{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration) var(--ease);font-size:13.5px;font-weight:450;color:var(--ink-sidebar);position:relative}.nav-item:hover{background:var(--bg-sidebar-hover);color:var(--ink-sidebar-active)}.nav-item.active{background:var(--bg-sidebar-active);color:var(--ink-sidebar-active)}.nav-item.active:before{content:"";position:absolute;left:-4px;top:50%;transform:translateY(-50%);width:3px;height:16px;background:var(--accent);border-radius:2px}.nav-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.nav-item-icon svg{width:18px;height:18px}.nav-item-badge{margin-left:auto;background:#ffffff1f;color:#ffffffb3;font-size:11px;font-weight:600;padding:1px 7px;border-radius:var(--radius-full);min-width:20px;text-align:center}.nav-item.active .nav-item-badge{background:var(--accent);color:#fff}.project-item{display:flex;align-items:center;gap:10px;padding:7px 12px;border-radius:var(--radius-xs);cursor:pointer;transition:all var(--duration) var(--ease);font-size:13px;color:var(--ink-sidebar)}.project-item:hover{background:var(--bg-sidebar-hover);color:var(--ink-sidebar-active)}.project-item.active{color:var(--ink-sidebar-active);background:var(--bg-sidebar-active)}.project-item.archived{opacity:.72}.project-item.archived.active{opacity:1}.project-group-block{margin-bottom:8px}.project-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 12px 6px}.project-group-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.9px;color:#ffffff57}.project-group-count{min-width:18px;padding:0 6px;border-radius:var(--radius-full);background:#ffffff14;color:#ffffff85;font-size:10px;font-weight:600;text-align:center;line-height:18px}.project-color{width:7px;height:7px;border-radius:50%;flex-shrink:0}.add-project-btn{display:flex;align-items:center;gap:8px;padding:7px 12px;color:#ffffff4d;font-size:12.5px;cursor:pointer;transition:color var(--duration) var(--ease);margin-top:4px}.add-project-btn:hover{color:#ffffffb3}.sidebar-footer{padding:12px 16px 16px;border-top:1px solid rgba(255,255,255,.08)}.kbd-hint{font-size:11px;color:#ffffff6b;letter-spacing:.2px}.main{flex:1;margin-left:240px;min-height:100vh;transition:margin-left var(--duration-md) var(--ease)}.header{background:#faf9f7d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:0 40px;height:60px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between}.header-left{display:flex;align-items:center;gap:16px}.menu-toggle{display:none;width:36px;height:36px;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-sm);cursor:pointer;font-size:16px;color:var(--ink-secondary);align-items:center;justify-content:center}.page-title{font-family:var(--font-display);font-size:22px;font-weight:400;letter-spacing:-.3px}.header-right{display:flex;align-items:center;gap:10px}.user-chip{background:var(--bg-raised);padding:5px 14px;border-radius:var(--radius-full);font-size:12.5px;font-weight:500;color:var(--ink-secondary);border:1px solid var(--border)}.ai-button{display:inline-flex;align-items:center;gap:7px;padding:8px 18px;background:var(--ink-primary);color:var(--ink-inverse);border:none;border-radius:var(--radius-full);font-size:12.5px;font-weight:600;cursor:pointer;transition:all var(--duration) var(--ease);font-family:var(--font-body);letter-spacing:.1px}.ai-button:hover{background:#333;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.ai-button.loading{opacity:.6;pointer-events:none}.content{padding:32px 40px;max-width:1200px}.progress-card{background:var(--ink-primary);border-radius:var(--radius-lg);padding:28px 32px;margin-bottom:32px;color:#fff;position:relative;overflow:hidden}.progress-card:before{content:"";position:absolute;top:-60%;right:-15%;width:280px;height:280px;background:radial-gradient(circle,rgba(232,80,58,.25) 0%,transparent 70%);pointer-events:none}.progress-card:after{content:"";position:absolute;bottom:-40%;left:-10%;width:200px;height:200px;background:radial-gradient(circle,rgba(124,92,252,.15) 0%,transparent 70%);pointer-events:none}.progress-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;position:relative}.progress-title{font-size:12px;text-transform:uppercase;letter-spacing:1px;opacity:.5;margin-bottom:6px;font-weight:500}.progress-date{font-family:var(--font-display);font-size:22px;font-weight:400}.progress-stats{text-align:right}.progress-percent{font-size:42px;font-weight:300;letter-spacing:-2px;line-height:1}.progress-label{font-size:12px;opacity:.5;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.progress-bar-container{background:#ffffff1f;border-radius:var(--radius-full);height:4px;overflow:hidden;margin-bottom:20px}.progress-bar{height:100%;background:var(--accent);border-radius:var(--radius-full);transition:width .6s var(--ease)}.progress-details{display:flex;gap:28px;font-size:12.5px;opacity:.7}.progress-detail{display:flex;align-items:center;gap:7px}.progress-dot{width:6px;height:6px;border-radius:50%}.section{margin-bottom:40px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.section-title{font-family:var(--font-display);font-size:20px;font-weight:400}.section-action{color:var(--accent);font-size:12.5px;font-weight:600;cursor:pointer;transition:opacity var(--duration);letter-spacing:.2px}.section-action:hover{opacity:.7}.section-action-pill{margin-left:8px;background:var(--amber-soft);color:var(--amber);border-radius:var(--radius-full);padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.search-bar{display:flex;align-items:center;gap:8px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;margin-bottom:12px}.search-icon{color:var(--ink-tertiary);font-size:14px;width:14px;flex-shrink:0}.search-input{border:none;background:transparent;outline:none;width:100%;font-family:var(--font-body);font-size:13px;color:var(--ink-primary)}.search-input::placeholder{color:var(--ink-muted)}.search-clear{width:22px;height:22px;border:1px solid var(--border);background:var(--bg-raised);border-radius:50%;color:var(--ink-secondary);cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}.project-focus-card{border:1px solid var(--border);background:linear-gradient(180deg,#fff7f4,#fff);border-radius:var(--radius-md);padding:16px 18px;margin-bottom:16px}.project-focus-title{font-size:12px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--accent);margin-bottom:10px}.project-focus-list{display:flex;flex-direction:column;gap:8px}.project-focus-item{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border:1px dashed var(--border);border-radius:var(--radius-sm);padding:10px 12px;background:#fffc}.project-focus-text{font-size:13px;line-height:1.45;color:var(--ink-secondary)}.day-review-metrics{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.day-review-details{margin-top:6px}.day-review-summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:600;color:var(--ink-secondary)}.day-review-box{margin-top:10px;max-height:320px;overflow:auto;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff9}.analytics-root{display:flex;flex-direction:column;gap:14px}.analytics-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.analytics-select{min-width:104px;height:32px;font-size:12px;padding:4px 8px}.analytics-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.analytics-kpi-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);padding:12px 14px;min-height:92px}.analytics-kpi-label{font-size:10px;letter-spacing:.7px;text-transform:uppercase;color:var(--ink-tertiary);margin-bottom:6px;font-weight:700}.analytics-kpi-value{font-size:24px;font-weight:600;line-height:1;color:var(--ink-primary);margin-bottom:6px}.analytics-kpi-sub{font-size:11px;color:var(--ink-secondary)}.analytics-grid.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.analytics-card{margin-bottom:0}.analytics-empty{border:1px dashed var(--border);border-radius:var(--radius-sm);padding:20px;color:var(--ink-secondary);text-align:center}.analytics-chart-wrap{width:100%}.analytics-chart{width:100%;height:220px;display:block}.analytics-grid-line{stroke:#00000014;stroke-width:1}.analytics-axis-label{font-size:10px;fill:#8b8b8b;font-family:var(--font-body)}.analytics-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}.analytics-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-secondary)}.analytics-legend-dot{width:9px;height:9px;border-radius:50%}.analytics-table{display:flex;flex-direction:column;gap:8px}.analytics-row{border:1px dashed var(--border);border-radius:var(--radius-sm);background:#ffffffbf;padding:10px 12px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.analytics-row-main{flex:1;min-width:0}.analytics-row-metrics{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.analytics-project-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.analytics-routing-list{display:flex;flex-direction:column;gap:8px}.analytics-routing-item{border:1px dashed var(--border);border-radius:var(--radius-sm);background:#ffffffd1;padding:10px 12px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.analytics-routing-main{flex:1;min-width:0}.analytics-routing-title{font-weight:600;font-size:13px;line-height:1.4}.analytics-routing-meta{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}.analytics-routing-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.analytics-orch-summary{white-space:pre-wrap;font-size:13px;line-height:1.45;color:var(--ink-primary);margin-bottom:10px}.analytics-orch-actions{display:flex;flex-direction:column;gap:8px}.analytics-orch-action{border:1px dashed var(--border);border-radius:var(--radius-sm);background:#ffffffd9;padding:10px 12px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.analytics-orch-action-main{flex:1;min-width:0}.analytics-orch-action-title{font-size:12px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--accent)}.analytics-orch-action-meta{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}.analytics-risk-tag.low{border-color:#2d9d5a66}.analytics-risk-tag.medium{border-color:#d4860a73;background:#d4860a14}.analytics-risk-tag.high{border-color:#d9404080;background:#d940401a}.task-input-container{background:var(--bg-surface);border-radius:var(--radius-md);padding:16px 20px;margin-bottom:20px;border:1px solid var(--border);transition:border-color var(--duration)}.task-input-container:focus-within{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.task-input{width:100%;border:none;font-size:14px;font-family:var(--font-body);background:none;outline:none;resize:none;min-height:22px;color:var(--ink-primary)}.task-input::placeholder{color:var(--ink-muted)}.task-input-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.task-input-left{display:flex;gap:6px;flex-wrap:wrap}.task-input-btn{padding:5px 12px;border:1px solid var(--border);background:transparent;border-radius:var(--radius-xs);font-size:12px;font-weight:500;color:var(--ink-secondary);cursor:pointer;transition:all var(--duration);display:inline-flex;align-items:center;gap:5px;font-family:var(--font-body)}.task-input-btn:hover{border-color:var(--ink-primary);color:var(--ink-primary)}.task-input-btn.primary{background:var(--ink-primary);border-color:var(--ink-primary);color:var(--ink-inverse)}.task-input-btn.primary:hover{background:#333}.task-input-select{padding:5px 12px;border:1px solid var(--border);background:transparent;border-radius:var(--radius-xs);font-size:12px;font-weight:500;color:var(--ink-secondary);cursor:pointer;transition:all var(--duration);font-family:var(--font-body);max-width:280px;flex:0 1 280px}.task-input-select:hover{border-color:var(--ink-primary);color:var(--ink-primary)}.task-input-select:focus{outline:none;border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.task-list{display:flex;flex-direction:column;gap:6px}.task-item{background:var(--bg-surface);border-radius:var(--radius-sm);padding:14px 18px;display:flex;align-items:flex-start;gap:14px;border:1px solid var(--border);transition:all var(--duration) var(--ease);cursor:pointer;animation:taskSlideIn .3s var(--ease) both}@keyframes taskSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.task-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.task-item.completed{opacity:.45}.task-checkbox{width:18px;height:18px;border:1.5px solid var(--ink-muted);border-radius:50%;cursor:pointer;transition:all var(--duration) var(--ease);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;font-size:10px}.task-checkbox:hover{border-color:var(--ink-secondary)}.task-item.completed .task-checkbox{background:var(--green);border-color:var(--green);color:#fff}.task-content{flex:1;min-width:0}.task-title{font-size:13.5px;font-weight:500;margin-bottom:4px;line-height:1.4}.task-item.completed .task-title{text-decoration:line-through;color:var(--ink-tertiary)}.task-meta{display:flex;align-items:center;gap:10px;font-size:11.5px;color:var(--ink-tertiary);flex-wrap:wrap}.task-tag{padding:1px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:600;letter-spacing:.1px}.task-tag.subtle{background:var(--bg-raised);color:var(--ink-tertiary);border:1px dashed var(--border)}.task-priority{display:flex;align-items:center;gap:3px;font-weight:500}.priority-high{color:var(--red)}.priority-medium{color:var(--amber)}.priority-low{color:var(--green)}.task-actions{display:flex;gap:4px;opacity:0;transition:opacity var(--duration)}.task-item:hover .task-actions{opacity:1}.task-action-btn{width:28px;height:28px;border:1px solid transparent;background:transparent;border-radius:var(--radius-xs);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--ink-tertiary);transition:all var(--duration);padding:0}.task-action-btn svg{width:16px;height:16px}.task-action-btn.active{background:var(--accent-soft);border-color:var(--border);color:var(--accent)}.task-action-btn:hover{background:var(--bg-raised);border-color:var(--border);color:var(--ink-primary)}.task-action-btn.delete:hover{background:var(--red-soft);color:var(--red);border-color:transparent}.kanban-container{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}.kanban-column{background:var(--bg-raised);border-radius:var(--radius-md);padding:16px;min-height:320px}.kanban-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.kanban-title{font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-secondary)}.kanban-col-icon{display:inline-flex;align-items:center;justify-content:center}.kanban-title svg{width:16px;height:16px}.kanban-count{background:var(--bg-surface);padding:1px 7px;border-radius:var(--radius-full);font-size:11px;color:var(--ink-tertiary);font-weight:600}.kanban-add{width:26px;height:26px;border:1px dashed var(--border-strong);background:transparent;border-radius:var(--radius-xs);cursor:pointer;font-size:14px;color:var(--ink-tertiary);transition:all var(--duration);display:flex;align-items:center;justify-content:center}.kanban-add:hover{border-style:solid;color:var(--ink-primary);background:var(--bg-surface)}.kanban-tasks{display:flex;flex-direction:column;gap:8px}.kanban-task{background:var(--bg-surface);border-radius:var(--radius-sm);padding:14px;border:1px solid var(--border);cursor:grab;transition:all var(--duration) var(--ease);position:relative;overflow:hidden}.kanban-task:hover{box-shadow:var(--shadow-sm);border-color:var(--border-strong)}.kanban-task.dragging{opacity:.5;transform:rotate(1.5deg);box-shadow:var(--shadow-md)}.kanban-task-title{font-weight:600;font-size:13px;color:var(--ink-primary);margin-bottom:4px;line-height:1.4}.kanban-task-desc{color:var(--ink-secondary);font-size:12px;line-height:1.5;margin-bottom:10px;max-height:54px;overflow:hidden}.kanban-task-footer{display:flex;justify-content:space-between;align-items:center}.kanban-task-actionsbar{display:flex;gap:8px;margin:12px -14px -14px;padding:10px 12px;background:var(--bg-raised);border-top:1px solid var(--border)}.kanban-action-btn{flex:1;height:36px;border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--bg-surface);color:var(--ink-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--duration);padding:0}.kanban-action-btn svg{width:18px;height:18px}.kanban-action-btn:hover{border-color:var(--border-strong);color:var(--ink-primary)}.kanban-action-btn.danger{color:var(--red);border-color:#d9404040}.kanban-action-btn.danger:hover{background:var(--red-soft);border-color:transparent}.ai-panel{position:fixed;right:-420px;top:0;bottom:0;width:420px;background:var(--bg-surface);border-left:1px solid var(--border);box-shadow:var(--shadow-panel);z-index:200;transition:right var(--duration-md) var(--ease);display:flex;flex-direction:column}.ai-panel.open{right:0}.ai-panel-header{padding:18px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.ai-panel-title{font-family:var(--font-display);font-size:18px;display:flex;align-items:center;gap:8px}.ai-panel-close{width:30px;height:30px;border:1px solid var(--border);background:transparent;border-radius:var(--radius-xs);cursor:pointer;font-size:14px;color:var(--ink-secondary);display:flex;align-items:center;justify-content:center;transition:all var(--duration)}.ai-panel-close:hover{background:var(--bg-raised);color:var(--ink-primary)}.ai-panel-content{flex:1;padding:20px 24px;overflow-y:auto;scrollbar-width:thin}.ai-messages{display:flex;flex-direction:column;gap:14px}.ai-message{padding:12px 16px;border-radius:var(--radius-md);font-size:13.5px;max-width:92%;line-height:1.55}.ai-message.user{background:var(--ink-primary);color:var(--ink-inverse);align-self:flex-end;border-bottom-right-radius:var(--radius-xs)}.ai-message.assistant{background:var(--bg-raised);align-self:flex-start;border-bottom-left-radius:var(--radius-xs)}.ai-message p,.path-markdown p{margin:0 0 8px;white-space:pre-wrap}.ai-message ul,.ai-message ol,.path-markdown ul,.path-markdown ol{padding-left:18px;margin:4px 0 8px}.ai-message li,.path-markdown li{margin:2px 0}.ai-message code,.path-markdown code{background:#0000000f;padding:1px 5px;border-radius:4px;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace;font-size:.9em}.ai-message pre,.path-markdown pre{background:#18181b;color:#e4e4e7;padding:12px 14px;border-radius:var(--radius-sm);overflow-x:auto;margin:8px 0}.ai-message pre code,.path-markdown pre code{background:transparent;padding:0;display:block;white-space:pre}.ai-actions{margin-top:12px;display:flex;flex-direction:column;gap:8px}.ai-action-item{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;background:var(--bg-surface)}.ai-action-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.ai-action-text{font-weight:600;font-size:12.5px;line-height:1.4}.ai-action-details{margin-top:6px;font-size:12px;color:var(--ink-secondary);white-space:pre-wrap;line-height:1.5}.ai-action-badges{display:flex;align-items:center;gap:5px;flex-shrink:0}.ai-action-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.5px}.ai-action-badge.high{background:var(--red-soft);color:var(--red)}.ai-action-badge.medium{background:var(--amber-soft);color:var(--amber)}.ai-action-badge.low{background:var(--violet-soft);color:var(--violet)}.ai-action-badge.today{background:var(--green-soft);color:var(--green)}.ai-action-executed{margin-top:8px;font-size:11px;color:var(--green);font-weight:500}.ai-action-buttons{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ai-action-mini{padding:5px 10px;border:1px solid var(--border);border-radius:var(--radius-xs);font-size:11.5px;font-weight:500;cursor:pointer;background:transparent;color:var(--ink-primary);font-family:var(--font-body);transition:all var(--duration)}.ai-action-mini:hover{background:var(--bg-raised);border-color:var(--border-strong)}.ai-action-mini.primary{background:var(--accent);border-color:var(--accent);color:#fff}.ai-action-mini.primary:hover{background:var(--accent-hover)}.ai-action-mini:disabled{opacity:.4;cursor:not-allowed}.ai-action-status{font-size:11px;color:var(--ink-tertiary)}.ai-chat-input{display:flex;gap:8px;padding:16px 20px;border-top:1px solid var(--border);background:var(--bg-canvas);flex-shrink:0}.ai-chat-toggle{width:38px;height:38px;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-sm);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--duration)}.ai-chat-toggle svg{width:18px;height:18px}.ai-chat-toggle.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.ai-chat-input input{flex:1;border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 14px;font-size:13px;font-family:var(--font-body);outline:none;background:var(--bg-surface);transition:border-color var(--duration)}.ai-chat-input input:focus{border-color:var(--ink-primary)}.ai-chat-send{width:38px;height:38px;border:none;background:var(--ink-primary);color:var(--ink-inverse);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;flex-shrink:0;transition:background var(--duration);display:flex;align-items:center;justify-content:center}.ai-chat-send svg{width:18px;height:18px}.ai-chat-send:hover{background:#333}.ai-suggestion{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;margin-bottom:8px;transition:border-color var(--duration)}.ai-suggestion:hover{border-color:var(--border-strong)}.ai-suggestion-header{display:flex;align-items:center;gap:6px;margin-bottom:10px;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--accent);font-weight:700}.ai-suggestion-text{font-size:13.5px;font-weight:500;color:var(--ink-primary);margin-bottom:12px;line-height:1.4}.ai-suggestion-actions{display:flex;gap:6px}.ai-action-btn{padding:5px 12px;border:none;border-radius:var(--radius-xs);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--duration);font-family:var(--font-body)}.ai-action-btn.accept{background:var(--accent);color:#fff}.ai-action-btn.accept:hover{background:var(--accent-hover)}.ai-action-btn.decline{background:var(--bg-raised);color:var(--ink-secondary)}.project-settings{margin:20px 0 28px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.project-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-meta-group{grid-column:1 / -1}.project-group-inline-actions{margin-top:8px;display:flex;justify-content:flex-start;gap:8px;flex-wrap:wrap}.settings-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px}.settings-card.full{grid-column:1 / -1}.settings-card.collapsible{padding:16px 18px}.settings-card-title{font-weight:600;font-size:13px;margin-bottom:10px;color:var(--ink-primary);letter-spacing:.1px}.settings-card-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap}.settings-card-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.chevron{display:inline-flex;transform:rotate(90deg);transition:transform var(--duration) var(--ease);font-size:15px;color:var(--ink-tertiary)}.chevron.open{transform:rotate(270deg)}.section-badge{display:inline-flex;align-items:center;border-radius:var(--radius-full);background:var(--bg-raised);color:var(--ink-secondary);padding:2px 8px;font-size:10px;text-transform:uppercase;letter-spacing:.4px;font-weight:700}.collapsible-body{margin-top:10px}.settings-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center;margin:10px 0 28px}.save-status{font-size:12px;color:var(--ink-tertiary);margin-right:auto}.settings-form-wrapper{max-width:820px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px}.notes-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;scrollbar-width:thin}.note-item{background:var(--bg-raised);border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;border:1px solid transparent;transition:border-color var(--duration)}.note-item:hover{border-color:var(--border)}.note-date{font-size:11px;color:var(--ink-tertiary);margin-top:4px}.inline-add{margin-top:10px;display:flex;gap:8px;align-items:center}.inline-add .btn{width:38px;height:38px;padding:0}.path-badge{display:inline-flex;align-items:center;font-size:10px;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-raised);color:var(--ink-tertiary);margin-left:8px;text-transform:uppercase;letter-spacing:.5px}.path-badge-active{background:var(--green-soft);color:var(--green)}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all var(--duration-md) var(--ease);overflow-y:auto;padding:16px}.modal-overlay.open{opacity:1;visibility:visible}.modal{background:var(--bg-surface);border-radius:var(--radius-lg);width:92%;max-width:480px;max-height:calc(100vh - 32px);box-shadow:var(--shadow-lg);transform:scale(.95) translateY(10px);transition:transform var(--duration-md) var(--ease);display:flex;flex-direction:column}.modal-overlay.open .modal{transform:scale(1) translateY(0)}.modal-header{padding:22px 28px 18px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-title{font-family:var(--font-display);font-size:20px;font-weight:400}.modal-close{width:30px;height:30px;border:1px solid var(--border);background:transparent;border-radius:var(--radius-xs);cursor:pointer;font-size:16px;color:var(--ink-secondary);display:flex;align-items:center;justify-content:center}.modal-body{padding:0 28px 20px;overflow-y:auto;flex:1 1 auto;min-height:0}.modal-footer{padding:16px 28px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px;flex-shrink:0}.task-modal{max-width:700px}.task-modal-focus{display:flex;flex-direction:column;gap:10px}.task-title-textarea{min-height:56px;max-height:200px;resize:none;font-size:16px;line-height:1.4;font-weight:500}.task-modal-topline{display:flex;flex-wrap:wrap;gap:8px}.task-ai-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.task-ai-toolbar-buttons{display:flex;gap:8px;flex-wrap:wrap}.task-details-toggle{border:none;background:transparent;color:var(--ink-secondary);font-size:12.5px;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.task-details-toggle:hover{color:var(--ink-primary)}.task-modal-details{margin-top:10px;padding-top:14px;border-top:1px dashed var(--border)}.task-ai-insights{margin-top:12px;padding-top:12px;border-top:1px dashed var(--border)}.task-insights-toggle{width:100%;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer;color:var(--ink-primary);font-family:var(--font-body)}.task-insights-toggle:hover{border-color:var(--border-strong);background:var(--bg-raised)}.task-insights-toggle-left{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600}.task-insights-toggle-meta{font-size:11.5px;color:var(--ink-tertiary)}.task-ai-insights-body{margin-top:10px;display:flex;flex-direction:column;gap:10px}.task-review-card{border:1px solid var(--border);border-radius:var(--radius-md);background:linear-gradient(180deg,#fff8f6,#fff);padding:12px 14px}.task-review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.task-review-title{font-size:12px;font-weight:700;letter-spacing:.45px;text-transform:uppercase;color:var(--accent)}.task-review-source{color:var(--ink-tertiary)}.task-review-scores{display:flex;gap:6px;flex-wrap:wrap}.task-review-scores span{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-full);padding:2px 8px;font-size:11px;color:var(--ink-secondary)}.task-review-summary{margin-top:10px;font-size:13px;line-height:1.5;color:var(--ink-secondary)}.task-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.task-review-block{margin-top:10px}.task-review-label{font-size:11px;font-weight:700;letter-spacing:.35px;text-transform:uppercase;color:var(--ink-tertiary);margin-bottom:6px}.task-review-list{margin:0;padding-left:16px;display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--ink-secondary);line-height:1.45}.task-review-actions{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.task-blueprint-card{background:linear-gradient(180deg,#f3f9ff,#fff)}.task-blueprint-steps{display:flex;flex-direction:column;gap:8px}.task-blueprint-step{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px;background:#fffc}.task-blueprint-step-title{font-size:12.5px;font-weight:700;color:var(--ink-primary);margin-bottom:6px}.task-blueprint-step-id{margin-left:6px;color:var(--ink-tertiary);font-weight:500;font-size:11px}.task-blueprint-step-line{font-size:12.5px;color:var(--ink-secondary);line-height:1.45;margin-top:4px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:12px;font-weight:600;margin-bottom:6px;color:var(--ink-secondary);text-transform:uppercase;letter-spacing:.3px}.form-input{width:100%;padding:9px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13.5px;font-family:var(--font-body);outline:none;transition:border-color var(--duration);background:var(--bg-surface);color:var(--ink-primary)}.form-input:focus{border-color:var(--ink-primary)}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239B9B9B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}textarea.form-input{resize:vertical;min-height:42px;line-height:1.5}.form-row{display:flex;gap:10px}.form-hint{margin-top:6px;font-size:12px;color:var(--ink-tertiary);line-height:1.45}.form-error{margin-top:8px;font-size:12px;color:var(--red);line-height:1.45}.checkbox-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-secondary)}.checkbox-label input[type=checkbox]{width:16px;height:16px}.form-colors{display:flex;gap:8px}.color-option{width:30px;height:30px;border-radius:50%;cursor:pointer;border:3px solid transparent;transition:all var(--duration) var(--ease-bounce)}.color-option:hover{transform:scale(1.15)}.color-option.selected{border-color:var(--ink-primary);transform:scale(1.1)}.btn{padding:8px 18px;border:1px solid transparent;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--duration);font-family:var(--font-body);display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn-sm{padding:6px 12px;font-size:12px}.btn-secondary{background:transparent;border-color:var(--border);color:var(--ink-primary)}.btn-secondary:hover{background:var(--bg-raised);border-color:var(--border-strong)}.btn-primary{background:var(--ink-primary);color:var(--ink-inverse)}.btn-primary:hover{background:#333}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{background:#bf3434}.btn:disabled{opacity:.4;cursor:not-allowed}.empty-state{text-align:center;padding:48px 24px;color:var(--ink-tertiary)}.empty-state-icon{margin-bottom:16px;opacity:.4;display:flex;justify-content:center}.empty-state-icon svg{width:46px;height:46px}.empty-state-title{font-family:var(--font-display);font-size:17px;color:var(--ink-secondary);margin-bottom:6px}.empty-state-text{font-size:12.5px;color:var(--ink-tertiary);line-height:1.5}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-canvas);padding:24px;position:relative}.auth-screen:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 20% 80%,rgba(232,80,58,.06),transparent),radial-gradient(ellipse 50% 50% at 80% 20%,rgba(124,92,252,.05),transparent);pointer-events:none}.auth-card{width:100%;max-width:380px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:36px 32px;position:relative}.auth-card h2{font-family:var(--font-display);font-size:26px;font-weight:400;margin-bottom:28px;text-align:center}.auth-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.auth-actions .btn{width:100%;justify-content:center;padding:10px}.auth-error{color:var(--red);font-size:12.5px;margin-top:10px;text-align:center}.auth-hint{margin-top:14px;font-size:12px;color:var(--ink-tertiary);text-align:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.loading{animation:pulse 1.8s ease infinite}.toast{position:fixed;left:50%;top:16px;transform:translate(-50%);background:var(--ink-primary);color:var(--ink-inverse);border-radius:var(--radius-full);padding:8px 14px;font-size:12.5px;font-weight:500;z-index:600;box-shadow:var(--shadow-md)}.typing-dots{display:inline-flex;align-items:center;gap:4px}.typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--ink-tertiary);animation:typingDots 1s infinite ease-in-out}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typingDots{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99}.sidebar-overlay.open{display:block}@media(max-width:1024px){.kanban-container{grid-template-columns:repeat(2,1fr)}.project-settings,.project-meta-grid{grid-template-columns:1fr}.analytics-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-grid.two{grid-template-columns:1fr}}@media(max-width:768px){.sidebar{left:-240px}.sidebar.open{left:0}.main{margin-left:0}.menu-toggle{display:flex;align-items:center;justify-content:center}.header{padding:0 16px;height:56px}.content{padding:20px 16px}.page-title{font-size:18px}.ai-panel{width:100%;right:-100%}.kanban-container{grid-template-columns:1fr}.progress-details{flex-wrap:wrap;gap:16px}.progress-card{padding:22px}.progress-percent{font-size:32px}.project-focus-item{flex-direction:column;align-items:stretch}.settings-form-wrapper{padding:14px}.task-review-grid{grid-template-columns:1fr}.task-modal{max-width:94%}.analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-row,.analytics-routing-item,.analytics-orch-action{flex-direction:column;align-items:stretch}.analytics-routing-actions{justify-content:flex-start}}@media(max-width:480px){.header-right{gap:6px}.user-chip{display:none}.ai-button span:last-child{display:none}.ai-button{padding:8px 12px}}code{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace;font-size:.9em}
