:root{color-scheme:light;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;--bg-soft: #f9fafb;--bg-panel: #ffffff;--bg-side: #1f2937;--line: #e5e7eb;--text-main: #111827;--text-muted: #6b7280;--accent: #2563eb;--accent-soft: #eff6ff;--danger: #ef4444;--danger-soft: #fef2f2;--shadow-soft: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-hover: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px}*{box-sizing:border-box}button,input,textarea,select,a{transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:none;border-color:#177a6c57;box-shadow:0 0 0 4px #177a6c1f}#root{min-height:100vh}.layout{max-width:1080px;margin:0 auto;padding:24px}.card,.content-card{background:#fffffff2;border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:var(--shadow-card)}@keyframes card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app-shell{min-height:100vh;display:grid;grid-template-columns:288px minmax(0,1fr)}.side-panel{background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 28%),linear-gradient(180deg,#12263b,#0d1d2c);color:#e5eef7;padding:22px 16px;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:18px;position:sticky;top:0;height:100vh;overflow:hidden}.side-panel-top{display:grid;gap:10px}.mobile-nav-toggle,.mobile-quickbar{display:none}.brand-block h1{margin:6px 0 0;font-size:30px;letter-spacing:.01em}.brand-block p{margin:8px 0 0;color:#a8c1d8;font-size:14px}.brand-chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#ffffff14;color:#d7e8f6;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.side-profile-card{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:14px 16px;background:#ffffff0d;display:grid;gap:4px}.side-profile-card strong{font-size:16px}.side-profile-card span{color:#9fb7cc;font-size:13px}.side-nav{display:flex;flex-direction:column;gap:14px;flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.24) transparent}.side-nav::-webkit-scrollbar{width:8px}.side-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:999px}.side-nav-group{display:grid;gap:6px}.side-nav-label{padding:0 10px;color:#7f9ab0;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.side-link{text-align:left;border:1px solid transparent;border-radius:14px;background:transparent;color:#d6e3ef;padding:12px 14px;cursor:pointer;transition:.18s ease;font-weight:600}.side-link:hover{background:#ffffff14;transform:translate(2px)}.side-link.active{background:var(--bg-panel);color:#10283f;border-color:#fffc;box-shadow:0 12px 24px #08141f24}.content-panel{padding:22px 24px}.content-card h2{margin-top:0}.content-card-shell{min-height:calc(100vh - 44px);border-radius:28px;background:linear-gradient(180deg,#fffffff2,#ffffffeb),var(--bg-panel);box-shadow:var(--shadow-soft)}.mobile-quickbar{position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:40;padding:8px;border:1px solid rgba(17,37,58,.08);border-radius:18px;background:#fffffff2;box-shadow:0 18px 36px #11253a24;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mobile-quickbar-link{border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text-muted);padding:10px 8px;font:inherit;font-weight:700;cursor:pointer}.mobile-quickbar-link.active{background:var(--bg-panel);color:#fff;box-shadow:0 10px 18px #177a6c38}.page-loader{min-height:calc(100vh - 88px);display:grid;place-items:center;padding:24px}.page-loader-card{width:min(420px,100%);display:grid;gap:12px;padding:22px 24px;border:1px solid #dfe7ef;border-radius:22px;background:var(--bg-panel);box-shadow:0 16px 32px #11253a14;animation:card-enter .24s ease-out}.page-loader-card strong{font-size:20px}.page-loader-bar{height:10px;border-radius:999px;background:#edf3f8;overflow:hidden}.page-loader-bar span{display:block;width:38%;height:100%;border-radius:inherit;background:var(--bg-panel);animation:page-loader-pulse 1.1s ease-in-out infinite}@keyframes page-loader-pulse{0%{transform:translate(-18%)}50%{transform:translate(135%)}to{transform:translate(-18%)}}.page-frame{margin-bottom:18px}.page-frame-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:18px;border-bottom:1px solid #edf2f6}.page-frame-head h2{margin:4px 0 0;font-size:30px}.page-frame-kicker{color:var(--text-muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.ghost-btn{border:1px solid rgba(18,38,58,.12);border-radius:12px;background:#ffffffe0;color:inherit;padding:10px 14px;cursor:pointer;transition:.18s ease}.ghost-btn:hover{background:#fff;border-color:#177a6c47}.side-panel .ghost-btn{border-color:#ffffff2e;background:#ffffff0f}.side-panel .ghost-btn:hover{background:#ffffff1f;border-color:#ffffff47}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:10px;background:#fff;color:var(--text-main)}button.primary{border:none;border-radius:12px;padding:10px 16px;background:var(--accent);color:#fff;cursor:pointer}.error-text{color:var(--danger)}.success-text{color:var(--accent)}.tasks-view{display:grid;gap:14px}.tasks-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.tasks-header h2{margin:0}.tasks-header p{margin:6px 0 0;color:var(--text-muted)}.tasks-header-actions{display:flex;gap:8px}.tasks-header-actions .ghost-btn{border-color:var(--line);color:var(--text-main)}.tasks-toolbar{display:grid;grid-template-columns:1fr 220px;gap:10px}.tasks-create{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--accent-soft)}.tasks-create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.task-toggle-row{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:.95rem}.task-toggle-row input{width:16px;height:16px}.tasks-groups{display:grid;gap:12px}.task-group{border:1px solid var(--line);border-radius:14px;background:var(--bg-panel)}.task-group h3{margin:0;padding:12px 14px;border-bottom:1px solid var(--line);font-size:18px}.task-row{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:start;padding:10px 14px;border-top:1px solid #eef3f8}.task-row:first-of-type{border-top:none}.task-check{width:22px;height:22px;border-radius:50%;border:2px solid #8ea5bc;background:#fff;margin-top:3px;cursor:pointer}.task-check.done{background:#1f5f9d;border-color:#1f5f9d}.task-main{min-width:0}.task-line{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.task-title{font-weight:600}.task-title-btn{border:none;background:transparent;padding:0;margin:0;text-align:left;color:inherit;cursor:pointer;font:inherit}.task-title.done{text-decoration:line-through;color:#8596a8}.task-time{color:var(--text-muted);font-size:13px;white-space:nowrap}.task-meta{color:var(--text-muted);font-size:13px;margin-top:4px}.task-description{margin:6px 0 0;color:#32475c;font-size:14px}.task-subtasks{margin:6px 0 0;padding-left:18px}.task-subtasks li{margin:2px 0}.overview-workspace{display:grid;gap:16px}.overview-header{display:flex;align-items:center;justify-content:space-between}.overview-header h2{margin:0}.planner-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.9fr);gap:16px;padding:22px;border:1px solid var(--line);border-radius:26px;background:radial-gradient(circle at top right,rgba(23,122,108,.12),transparent 34%),linear-gradient(135deg,#fff,#f8fcfb);box-shadow:var(--shadow-card)}.planner-hero-main h2{margin:6px 0 10px;font-size:42px;line-height:.98}.planner-hero-main p{margin:0;max-width:700px;color:#395066;font-size:15px;line-height:1.6}.planner-kicker{display:inline-flex;padding:6px 12px;border-radius:999px;background:#177a6c1a;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.planner-hero-actions{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-top:18px}.planner-date-control{min-width:180px;display:grid;gap:6px;color:var(--text-muted);font-size:12px;letter-spacing:.05em;text-transform:uppercase}.planner-date-control input{margin:0}.planner-hero-aside{display:grid;gap:10px}.planner-hero-card{display:grid;gap:6px;padding:16px 18px;border:1px solid rgba(18,38,58,.1);border-radius:18px;background:#ffffffeb}.planner-hero-card span,.planner-hero-card small{color:var(--text-muted)}.planner-hero-card strong{font-size:18px}.planner-hero-card.accent{background:var(--bg-panel);border-color:transparent;color:#f4fffd}.planner-hero-card.accent span,.planner-hero-card.accent small{color:#f4fffdc2}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.kpi-card{border:1px solid #dfe7ef;border-radius:18px;background:#fff;padding:14px 16px;display:grid;gap:6px}.kpi-card strong{font-size:26px}.kpi-card span{color:var(--text-muted);font-size:13px}.planner-ribbon{display:grid;gap:14px}.planner-ribbon-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.planner-ribbon-head h3{margin:0 0 4px}.planner-ribbon-badge{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#f3f7fb;color:#36516b;font-size:12px;font-weight:700}.planner-ribbon-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.planner-ribbon-item{border:1px solid #e0e8f0;border-radius:16px;padding:14px;background:var(--bg-panel);display:grid;gap:6px;text-align:left;cursor:pointer}.planner-ribbon-item strong{color:var(--text-main)}.planner-ribbon-item small{color:var(--text-muted)}.planner-ribbon-time{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.04em}.overview-grid{display:grid;grid-template-columns:2fr 1fr;gap:12px}.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:start}.kanban-column{border:1px solid transparent;border-radius:var(--radius-lg);background:#f3f4f6;min-height:220px;max-height:min(68vh,760px);display:flex;flex-direction:column;transition:all .2s ease;overflow:hidden}.kanban-column.drag-over{background:var(--bg-panel);border-color:#1c5fa942;box-shadow:inset 0 0 0 1px #1c5fa914}.kanban-column>header{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line);background:inherit;position:sticky;top:0;z-index:1}.kanban-column>header strong{font-size:13px;font-weight:700;color:#334155}.kanban-column>header span{font-size:11px;font-weight:700;color:#475569;background:#e2e8f0;padding:1px 7px;border-radius:999px;font-variant-numeric:tabular-nums}.kanban-list{padding:6px 4px 6px 6px;display:grid;gap:6px;overflow-y:auto;min-height:0;scrollbar-width:thin}.kanban-card{border:1px solid var(--line);border-left:3.5px solid #94a3b8;border-radius:var(--radius-md);background:#fff;padding:5px 7px;display:grid;gap:2px;cursor:grab;box-shadow:0 1px 2px #0000000a;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;-webkit-user-select:none;user-select:none}.kanban-card:hover{transform:translateY(-1px);box-shadow:0 4px 10px #00000012;border-color:#cbd5e1}.kanban-card:active{cursor:grabbing}.kanban-card.moved{animation:kanban-card-drop .42s cubic-bezier(.2,.8,.2,1)}.kanban-card.priority-critical{border-left-color:#ef4444}.kanban-card.priority-high{border-left-color:#f59e0b}.kanban-card.priority-medium{border-left-color:#3b82f6}.kanban-card.priority-low{border-left-color:#94a3b8}.kanban-card-top{display:flex;align-items:center;gap:3px;font-size:10px}.kanban-card-id{font-weight:700;color:#64748b;font-size:11px;font-variant-numeric:tabular-nums;margin-right:2px}.kanban-card-project{font-size:9px;font-weight:500;color:#475569;background:#f1f5f9;padding:1px 4px;border-radius:4px;max-width:90px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kanban-card-date{margin-left:auto;font-size:9.5px;font-weight:600;color:#64748b;line-height:1.1}.kanban-card-date.overdue{color:#dc2626;background:#fef2f2;padding:1px 3px;border-radius:3px}.kanban-card-date.slot{color:#2563eb;background:#eff6ff;padding:1px 3px;border-radius:3px}.kanban-card-title{font-size:11px;font-weight:600;line-height:1.25;color:#0f172a;word-break:break-word}.kanban-card-chips{display:flex;flex-wrap:wrap;gap:3px;align-items:center}.kanban-badge{display:inline-flex;align-items:center;padding:1px 4px;border-radius:3px;font-size:9px;font-weight:600;line-height:1.2}.kanban-badge.priority.critical{background:#fef2f2;color:#b91c1c}.kanban-badge.priority.high{background:#fffbeb;color:#b45309}.kanban-badge.fixed{background:#eff6ff;color:#1d4ed8}.kanban-badge.coord{background:#f5f3ff;color:#6d28d9}.kanban-badge.work-time{background:#f8fafc;color:#475569;border:1px solid #e2e8f0;font-variant-numeric:tabular-nums}.kanban-badge.est-time{background:#f8fafc;color:#64748b}.kanban-card-footer{display:flex;align-items:center;gap:4px;font-size:10.5px;padding:2px 5px;border-radius:4px;overflow:hidden;line-height:1.25}.kanban-card-footer.block-reason{background:#fffbeb;color:#92400e;border:1px solid #fef3c7}.kanban-card-footer.subtask{background:#f0fdf4;color:#166534;border:1px solid #dcfce7}.kanban-card-footer .chip-icon{font-size:10px;flex-shrink:0}.kanban-card-footer .footer-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10.5px}.kanban-subtask{color:#29435f;font-size:13px}@keyframes kanban-card-drop{0%{opacity:.42;transform:translateY(-14px) scale(.98);box-shadow:0 18px 34px #1c5fa91f}55%{opacity:1;transform:translateY(3px) scale(1.01);box-shadow:0 12px 24px #10233a14}to{opacity:1;transform:translateY(0) scale(1);box-shadow:0 8px 18px #11253a0d}}.deadline-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.deadline-list li{border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px 12px;display:grid;gap:4px}.overview-day-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.overview-day-header h3{margin:0}.dayplan-list{display:grid;gap:8px}.overview-notice{margin:0;padding:14px 16px;border:1px solid rgba(23,122,108,.2);border-radius:16px;background:#e5f5f2db;color:#18453e;white-space:pre-wrap;font-family:inherit}.review-panel{display:grid;gap:14px}.review-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.review-panel-head h3{margin:0 0 4px}.review-actions{display:inline-flex;gap:8px}.ghost-btn.active{background:#175cd3;color:#fff;border-color:#175cd3}.review-text{margin:0;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--text-main);white-space:pre-wrap;font-family:inherit;line-height:1.55}.priority-card{border:1px solid #dfe7ef;border-radius:18px;background:var(--bg-panel);padding:14px 16px;box-shadow:0 10px 20px #11253a0a;cursor:pointer}.priority-card.compact{transition:.18s ease}.priority-card.compact:hover{transform:translateY(-2px);box-shadow:0 14px 28px #11253a14}.dayplan-head strong{font-size:16px}.dayplan-head span,.dayplan-meta,.dayplan-subtask-current.compact,.dayplan-subtasks.compact{color:var(--text-muted)}.dayplan-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;font-size:12px}.dayplan-meta span{padding:5px 9px;border-radius:999px;background:#f3f7fb}.dayplan-subtask-current.compact{margin-top:10px}.week-day-column{border:1px solid #dfe7ef;border-radius:18px;padding:12px;background:var(--bg-panel)}.week-day-column h4{margin:0 0 12px}.week-event-card{width:100%;border:1px solid #e0e8f0;border-radius:14px;padding:12px;background:#f7fbff;text-align:left;display:grid;gap:5px;cursor:pointer}.week-event-card+.week-event-card{margin-top:8px}.dayplan-list.compact{gap:10px}.priority-card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px;display:grid;gap:6px;cursor:pointer}.priority-card:hover{border-color:#b8cbe0;box-shadow:0 6px 16px #0d253f14}.dayplan-card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px;display:grid;gap:6px}.dayplan-card.compact{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}.dayplan-card.compact:hover{border-color:#b8cbe0;box-shadow:0 6px 16px #0d253f14}.dayplan-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.dayplan-head span{color:var(--text-muted);font-size:13px}.dayplan-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--text-muted);font-size:13px}.dayplan-subtask-current{font-size:14px}.dayplan-block-reason{font-size:14px;color:#7e2b37;border:1px solid #e9c5cb;background:#fff4f5;border-radius:8px;padding:8px}.dayplan-subtasks{display:grid;gap:4px}.dayplan-subtasks.compact{max-width:860px}.dayplan-subtasks label{display:flex;align-items:center;gap:8px}.dayplan-subtasks input{width:auto;margin:0}.task-actions{display:flex;gap:6px}.task-actions button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:6px 9px;cursor:pointer;color:#29435f}.dayplan-schedule-edit{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}.dayplan-schedule-edit label{display:grid;gap:4px;font-size:13px}.dayplan-schedule-edit input{margin:0}.dayplan-schedule-edit button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 10px;cursor:pointer;color:#29435f}.dayplan-comments{border-top:1px solid #edf2f7;padding-top:8px;display:grid;gap:8px}.dayplan-comments-list{display:grid;gap:6px}.dayplan-comment-row{border:1px solid var(--line);border-radius:8px;background:#fbfdff;padding:6px 8px;display:grid;gap:2px;font-size:14px}.dayplan-comment-form{display:grid;gap:6px}.dayplan-comment-form textarea{margin:0}.dayplan-comment-form button{justify-self:start;border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 10px;color:#29435f;cursor:pointer}.week-schedule-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.week-day-column{border:1px solid var(--line);border-radius:10px;background:#f8fbff;padding:8px;display:grid;gap:6px;align-content:start;min-height:220px}.week-day-column h4{margin:0;font-size:13px;text-transform:uppercase;color:var(--text-muted)}.week-event-card{border:1px solid #dce6f1;border-radius:8px;background:#fff;color:var(--text-main);padding:7px;text-align:left;display:grid;gap:3px;cursor:pointer}.week-event-card span{font-size:12px;color:var(--text-muted)}.task-editor{grid-column:1 / -1;border:1px dashed #b7cadf;border-radius:12px;padding:10px;background:#f8fbff}.task-status-done{background:#fafcfe}.muted-text{color:var(--text-muted)}.success-text{color:#1d6b3b}.overview-notice{margin:0;border:1px solid #c9d8ea;border-radius:10px;background:#f4f9ff;padding:10px;white-space:pre-wrap;color:#234466;font-family:IBM Plex Sans,Segoe UI,sans-serif}.task-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#08142273;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:18px}.task-modal{width:min(880px,94vw);max-height:90vh;overflow-y:auto;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 25px 50px -12px #00000040;padding:20px;display:grid;gap:16px}.task-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.task-modal-header h3{margin:0 0 6px;font-size:17px;font-weight:700;color:#0f172a;line-height:1.35}.task-modal-header p{margin:4px 0 0}.task-modal-header-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.task-modal-close-btn{border:1px solid var(--line);background:#f8fafc;color:#475569;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;flex-shrink:0}.task-modal-close-btn:hover{background:#e2e8f0;color:#0f172a}.modal-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:6px;font-size:11px;font-weight:600;line-height:1.25}.modal-badge.priority.critical{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.modal-badge.priority.high{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.modal-badge.priority.medium{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.modal-badge.priority.low{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.modal-badge.status{background:#f1f5f9;color:#334155;border:1px solid #cbd5e1}.modal-badge.time{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.modal-badge.optional{background:#faf5ff;color:#7e22ce;border:1px solid #e9d5ff}.task-modal-section{border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:16px;display:grid;gap:12px;box-shadow:0 1px 2px #00000008}.task-modal-section h4{margin:0;font-size:14px;font-weight:700;color:#1e293b;letter-spacing:-.01em;display:flex;align-items:center;gap:6px}.task-modal-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task-modal-field{display:grid;gap:5px}.task-modal-field span{font-size:12px;font-weight:600;color:#475569}.task-modal-field input,.task-modal-field textarea,.task-modal-field select{border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;font-size:13px;background:#fff;color:#0f172a;transition:border-color .15s ease,box-shadow .15s ease;font-family:inherit;width:100%;box-sizing:border-box}.task-modal-field textarea{resize:vertical;min-height:72px;line-height:1.45}.task-modal-field input:focus,.task-modal-field textarea:focus,.task-modal-field select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.form-hint-box{font-size:12px;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;line-height:1.45}.task-modal-toggle-card{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;cursor:pointer;transition:all .15s ease}.task-modal-toggle-card:hover{background:#f1f5f9;border-color:#cbd5e1}.task-modal-toggle-card input[type=checkbox]{margin-top:3px;cursor:pointer;accent-color:#2563eb}.task-modal-toggle-card strong{display:block;font-size:13px;color:#1e293b}.task-modal-toggle-card small{display:block;font-size:11.5px;color:#64748b;margin-top:2px}.task-modal-section-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:4px}.task-modal-section-footer .primary-btn{border:none;border-radius:8px;background:#2563eb;color:#fff;padding:8px 18px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,transform .15s ease}.task-modal-section-footer .primary-btn:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px)}.task-modal-section-footer .primary-btn:disabled{opacity:.6;cursor:not-allowed}.task-links-container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.task-links-group{display:grid;gap:8px}.links-group-title{font-size:12px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em}.link-chips-grid{display:flex;flex-wrap:wrap;gap:6px;max-height:140px;overflow-y:auto;padding:2px}.link-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;padding:5px 9px;font-size:12px;color:#334155;cursor:pointer;transition:all .15s ease;text-align:left}.link-chip:hover{border-color:#94a3b8;background:#f8fafc}.link-chip.selected{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8;font-weight:600}.link-chip.risk.selected{background:#fff7ed;border-color:#f97316;color:#c2410c}.chip-indicator{font-size:11px;font-weight:700}.chip-sub{font-size:10.5px;color:#64748b;font-weight:400}.task-modal-multiselect{min-height:136px}.task-modal-inline{display:flex;align-items:center;gap:8px;font-size:14px}.task-modal-subtasks{display:grid;gap:6px}.task-modal-subtask-row{display:grid;grid-template-columns:24px 1fr 100px auto;gap:6px;align-items:center}.task-modal-subtask-row input{margin:0}.task-modal-subtask-row button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 10px;color:#29435f;cursor:pointer}.task-modal-actions{display:flex;gap:8px;flex-wrap:wrap}.task-modal-actions button,.task-modal-actions a{border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 10px;color:#29435f;cursor:pointer;text-decoration:none}.planner-error-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2300;background:#0913217a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px}.planner-error-popup{width:min(560px,94vw);background:#fff;border:1px solid rgba(188,58,77,.18);border-radius:18px;box-shadow:0 24px 70px #0a182747;padding:18px;display:grid;gap:14px}.planner-error-popup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.planner-error-popup-head strong{display:block;color:#8d2335;font-size:18px}.planner-error-popup-head span{display:block;margin-top:4px;color:var(--text-muted);font-size:14px}.planner-error-popup-body{padding:14px 16px;font-size:13px;color:var(--text-muted);white-space:pre-wrap;word-break:break-word}.settings-stack{display:grid;gap:12px}.task-modal-comments-list,.task-modal-attachments-list{display:grid;gap:6px}.task-modal-comment-row,.task-modal-attachment-row{border:1px solid #e3eaf3;border-radius:10px;background:#fff;padding:8px;display:grid;gap:4px}.task-slot-list{display:grid;gap:8px}.task-slot-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;padding:10px 14px;transition:all .15s ease}.task-slot-row:hover{background:#f1f5f9;border-color:#cbd5e1}.task-slot-info{display:grid;gap:3px}.task-slot-info strong{font-size:13px;color:#0f172a}.task-slot-info span{font-size:11.5px;color:#64748b}.task-slot-badge{font-size:11px;font-weight:600;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;padding:2px 8px;border-radius:6px}.task-modal-attachment-row{grid-template-columns:1fr auto;align-items:center;gap:8px}.calendar-view{display:grid;gap:12px}.calendar-pro{padding:12px}.calendar-legend{display:grid;gap:8px}.calendar-legend strong{font-size:14px}.calendar-legend-row{display:flex;gap:8px;flex-wrap:wrap}.legend-chip{border:1px solid var(--line);border-radius:999px;background:#fff;padding:4px 10px;font-size:12px;color:var(--text-main)}.legend-chip.status-active{border-color:#7fc4b2;background:#e9f7f2}.legend-chip.status-planned{border-color:#9cbbe3;background:#eef4fd}.legend-chip.status-blocked{border-color:#e3b387;background:#fff4ea}.legend-chip.status-done{border-color:#bdc8d4;background:#f3f6f9}.legend-chip.time-past{opacity:.65}.legend-chip.time-current{border-color:#8ca8e8;background:#ecf2ff}.legend-chip.time-future{border-style:dashed}.calendar-pro .fc{--fc-border-color: #d9e2ec;--fc-page-bg-color: #fff;--fc-neutral-bg-color: #f7fbff;--fc-now-indicator-color: #cf3f4f}.calendar-pro .fc .fc-toolbar-title{text-transform:capitalize;font-size:20px;color:var(--text-main)}.calendar-pro .fc .fc-button-primary{background:#fff;border-color:var(--line);color:var(--text-main)}.calendar-pro .fc .fc-button-primary:hover{background:#f3f8ff;border-color:#bfd0e4}.calendar-pro .fc .fc-button-primary.fc-button-active,.calendar-pro .fc .fc-button-primary:active{background:#1f5f9d;border-color:#1f5f9d;color:#fff}.calendar-pro .fc .fc-timegrid-axis-cushion,.calendar-pro .fc .fc-timegrid-slot-label-cushion,.calendar-pro .fc .fc-col-header-cell-cushion{color:var(--text-muted)}.calendar-pro .fc .fc-event{border-radius:8px;border:1px solid transparent;padding:2px 3px;box-shadow:0 2px 6px #0d253f14;cursor:grab}.calendar-pro .fc .fc-event.fc-event-dragging{cursor:grabbing;opacity:.92;box-shadow:0 10px 24px #0d253f2e}.calendar-pro .fc .fc-event-main,.calendar-pro .fc .fc-event-title,.calendar-pro .fc .fc-event-time{color:#0f2235;font-weight:700;text-shadow:none}.calendar-pro .fc .event-status-active{background:#cfeee3;border-color:#5ca38f}.calendar-pro .fc .event-status-planned,.calendar-pro .fc .event-status-idea{background:#d9e8ff;border-color:#7f9fd7}.calendar-pro .fc .event-status-blocked{background:#ffe8d2;border-color:#d89e62}.calendar-pro .fc .event-status-done{background:#dfe8f1;border-color:#9eb1c5}.calendar-pro .fc .event-time-past{opacity:.82}.calendar-pro .fc .event-time-current{box-shadow:0 0 0 2px #275eaa57,0 2px 8px #0d253f2e}.calendar-pro .fc .event-time-future{border-style:dashed}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.calendar-header h2{margin:0}.calendar-nav{display:inline-flex;align-items:center;gap:8px}.calendar-nav button{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text-main);width:32px;height:32px;cursor:pointer}.calendar-sync h3{margin-top:0}.calendar-range-controls{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,180px)) auto;gap:8px;align-items:end}.calendar-range-controls label{display:grid;gap:4px;font-size:13px}.calendar-range-controls input{margin:0}.calendar-range-controls button{border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text-main);padding:8px 10px;cursor:pointer}.calendar-grid{padding:14px}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:6px;color:var(--text-muted);font-size:13px}.calendar-weekdays span{text-align:center}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-cell{border:1px solid #dce4ee;border-radius:10px;padding:8px;background:#fff;min-height:72px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;color:var(--text-main);cursor:pointer}.calendar-cell:hover{border-color:#b8cbe0}.calendar-cell.small{font-size:12px}.calendar-cell small{color:var(--text-muted);font-size:12px}.calendar-cell.has-deadline{border-color:#d89aa2}.calendar-cell.muted{opacity:.55}.calendar-cell.selected{border-color:#1f5f9d;background:#edf4fc}.calendar-events-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.calendar-events-list li{border:1px solid var(--line);border-radius:10px;padding:9px 10px;display:grid;gap:4px}.calendar-deadline{color:#b73345;font-weight:600}.hour-plan{display:grid;gap:6px}.hour-row{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:start}.hour-label{color:var(--text-muted);font-size:13px;padding-top:6px}.hour-content{border:1px solid var(--line);border-radius:8px;min-height:42px;padding:6px 8px;display:grid;gap:5px}.hour-item{display:grid;gap:2px;font-size:13px}.settings-view{display:grid;gap:12px}.settings-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.settings-header h2{margin:0}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-grid h3{margin-top:0}.settings-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settings-inline label{display:grid;gap:6px;font-size:14px}.weekday-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.weekday-chip{border:1px solid var(--line);border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;gap:6px;font-size:14px}.weekday-chip input{width:auto;margin:0}.weekday-chip.active{border-color:#1f5f9d;background:#edf4fc}.toggle-row{display:flex;align-items:center;gap:8px;margin:10px 0}.toggle-row input{width:auto;margin:0}.settings-actions{display:flex;flex-wrap:wrap;gap:8px}.settings-actions button{border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 10px;color:#29435f;cursor:pointer}.feed-url{margin-top:10px;padding:8px 10px;border:1px dashed #b2c4d7;border-radius:8px;background:#f7fbff;overflow-wrap:anywhere}.settings-grid code{display:block;margin:6px 0;padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:#f8fafc}.note-row{padding:12px}.note-summary-btn{width:100%;border:1px solid var(--line);border-radius:16px;background:var(--bg-panel);padding:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;cursor:pointer;color:var(--text-main);text-align:left}.note-summary-btn:hover{border-color:#177a6c33;box-shadow:0 12px 24px #11253a0f}.note-details{margin-top:12px;display:grid;gap:12px}.note-pre{margin:0 0 10px;border:1px solid #e0e8f0;border-radius:16px;background:var(--bg-panel);padding:14px 16px;white-space:pre-wrap;word-break:break-word;font-family:IBM Plex Sans,Segoe UI,sans-serif;line-height:1.65}.stack-page{display:grid;gap:16px}.kpi-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.split-panel{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}.toolbar-row{display:grid;grid-template-columns:1fr 220px;gap:10px;align-items:start}.stack-list{display:grid;gap:12px}.stack-item{border:1px solid var(--line);border-radius:18px;padding:14px;background:var(--bg-panel);box-shadow:0 10px 18px #11253a0a;animation:card-enter .24s ease-out}.stack-item:hover{border-color:#177a6c33;box-shadow:0 14px 24px #11253a12}.stack-item.selectable{cursor:pointer}.stack-item.selectable.active{border-color:#177a6c57;background:var(--bg-panel);box-shadow:0 14px 24px #177a6c14}.stack-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.stack-item-head p{margin:4px 0 0;color:var(--text-muted)}.error-banner{border-color:#b841523d;background:#fff5f7;color:#8f2f3f}.success-banner{border-color:#177a6c3d;background:#f3fcfa;color:#17574d}.note-content-preview{margin:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fbff;white-space:pre-wrap;word-break:break-word;font:inherit;color:var(--text-main)}.detail-card{display:grid;gap:12px}.detail-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.detail-grid p{margin:0}.stack-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.stack-card-head h3{margin:0 0 6px}.stack-card-head p{margin:0;color:var(--text-muted)}.stack-toolbar-card,.stack-form-card,.stack-list-shell{animation:card-enter .24s ease-out}.search-hits{margin-top:12px;display:grid;gap:10px}.search-hit{border:1px solid var(--line);border-radius:16px;background:var(--bg-panel);padding:14px;display:grid;gap:6px;animation:card-enter .24s ease-out}.search-hit:hover{border-color:#177a6c33}.search-hit p{margin:0}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.badge-accent{background:#e5f5f2;color:#14685c}.badge-muted{background:#eef3f8;color:#5f7388}.inbox-triage-card{gap:14px}.inbox-preview-list{display:grid;gap:8px}.triage-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:8px}.triage-action-grid button{border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px 12px;color:#29435f;cursor:pointer}.triage-action-grid button:hover{border-color:#177a6c3d;color:var(--accent)}.triage-action-grid button:disabled{cursor:wait;opacity:.7}.inbox-manual-form{display:grid;gap:12px}.inbox-manual-form textarea{min-height:110px}@media (max-width: 980px){.split-panel,.toolbar-row,.kpi-grid-compact,.detail-grid{grid-template-columns:1fr}}.analytics-view{display:grid;gap:12px}.analytics-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.analytics-header h2{margin:0}.analytics-toolbar{display:flex;gap:8px;align-items:flex-end}.analytics-toolbar label{display:grid;gap:4px;font-size:13px}.analytics-toolbar input,.analytics-note{margin:0}.analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.analytics-card{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;display:grid;gap:6px}.analytics-card span{color:var(--text-muted);font-size:13px}.analytics-card strong{font-size:28px;line-height:1.1}.analytics-card small{color:var(--text-muted)}.analytics-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.analytics-section{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff}.analytics-section h3{margin:0 0 10px}.analytics-metric-list{display:grid;gap:8px}.analytics-job-card{display:grid;gap:6px;border:1px solid #e3ebf3;border-radius:10px;padding:10px 12px;background:#fbfdff}.analytics-job-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.analytics-job-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--text-muted);font-size:13px}.analytics-job-status{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700;text-transform:lowercase}.analytics-job-status.status-ok{background:#e9f7f2;color:#14685c}.analytics-job-status.status-running{background:#eef4fd;color:#365b93}.analytics-job-status.status-warning{background:#fff7e8;color:#9b6a10}.analytics-job-status.status-error{background:#fff4f5;color:#9d2f41}.analytics-job-status.status-never,.analytics-job-status.status-disabled{background:#eef3f8;color:#5f7388}.analytics-metric-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-bottom:1px dashed #e1e8f0;padding-bottom:6px}.analytics-metric-row:last-child{border-bottom:none;padding-bottom:0}.analytics-metric-row span{color:var(--text-muted)}.analytics-reasons{margin:0;padding:0;list-style:none;display:grid;gap:8px}.analytics-reasons li{display:flex;justify-content:space-between;gap:10px;border:1px solid #e3ebf3;border-radius:9px;padding:8px 10px;background:#fbfdff}.analytics-empty{margin:0}.page-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.9fr);gap:16px;padding:22px;border:1px solid var(--line);border-radius:26px;background:radial-gradient(circle at top right,rgba(23,122,108,.08),transparent 34%),linear-gradient(135deg,#fff,#f8fbfc);box-shadow:var(--shadow-card)}.page-hero-main h2{margin:6px 0 10px;font-size:38px;line-height:1}.page-hero-main p{margin:0;max-width:720px;color:#425b70;line-height:1.6}.page-hero-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start}.page-hero-mini{display:grid;gap:5px;padding:14px 16px;border:1px solid #e0e8f0;border-radius:18px;background:#ffffffeb}.page-hero-mini span,.page-hero-mini small{color:var(--text-muted)}.page-hero-mini strong{font-size:22px}.page-hero-tasks{background:radial-gradient(circle at top right,rgba(24,122,108,.1),transparent 34%),linear-gradient(135deg,#fff,#f9fdfc)}.page-hero-calendar{background:radial-gradient(circle at top right,rgba(24,110,172,.1),transparent 34%),linear-gradient(135deg,#fff,#f8fbff)}.page-hero-analytics{background:radial-gradient(circle at top right,rgba(188,58,77,.08),transparent 34%),linear-gradient(135deg,#fff,snow)}.page-hero-settings{background:radial-gradient(circle at top right,rgba(190,139,64,.08),transparent 34%),linear-gradient(135deg,#fff,#fffdf9)}.page-hero-notes{background:radial-gradient(circle at top right,rgba(121,84,162,.08),transparent 34%),linear-gradient(135deg,#fff,#fcfaff)}.page-hero-knowledge{background:radial-gradient(circle at top right,rgba(33,101,174,.08),transparent 34%),linear-gradient(135deg,#fff,#f8fbff)}.page-hero-reminders{background:radial-gradient(circle at top right,rgba(198,109,39,.08),transparent 34%),linear-gradient(135deg,#fff,#fffaf6)}.page-hero-team{background:radial-gradient(circle at top right,rgba(36,121,188,.09),transparent 34%),linear-gradient(135deg,#fff,#f7fbff)}.page-hero-projects{background:radial-gradient(circle at top right,rgba(23,122,108,.09),transparent 34%),linear-gradient(135deg,#fff,#f6fcfb)}.page-hero-inbox{background:radial-gradient(circle at top right,rgba(188,103,36,.09),transparent 34%),linear-gradient(135deg,#fff,#fffaf5)}.page-hero-events{background:radial-gradient(circle at top right,rgba(50,109,194,.1),transparent 34%),linear-gradient(135deg,#fff,#f7fbff)}.tasks-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.stack-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.stack-summary-card{display:grid;gap:5px;padding:14px 16px;border:1px solid #dfe7ef;border-radius:18px;background:var(--bg-panel);box-shadow:0 10px 18px #11253a0a;animation:card-enter .24s ease-out}.stack-summary-card span,.stack-summary-card small{color:var(--text-muted)}.stack-summary-card strong{font-size:24px}.reminders-filter-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:4px 0 2px}.reminders-filter-group{display:flex;flex-wrap:wrap;gap:8px}.reminders-filter-chip{border:1px solid #d9e4ef;border-radius:999px;background:#f7fafc;color:#24405e;padding:8px 12px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.reminders-filter-chip strong{font-size:12px;min-width:18px;text-align:center}.reminders-filter-chip:hover{background:#f0f6fb;border-color:#c4d5e7;transform:translateY(-1px)}.reminders-filter-chip.active{background:#177a6c1f;border-color:#177a6c52;color:#195348}.reminders-filter-summary{color:var(--text-muted);font-size:14px}.org-chip-row{display:flex;flex-wrap:wrap;gap:8px}.org-chip{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;background:#edf4fb;color:#29435f;font-size:12px;line-height:1.3}.org-capacity-row{display:grid;gap:8px}.org-capacity-row span{color:var(--text-muted);font-size:13px}.org-capacity-bar{height:10px;border-radius:999px;background:#edf3f8;overflow:hidden}.org-capacity-bar span{display:block;height:100%;border-radius:inherit;background:var(--bg-panel)}.tasks-summary-card{display:grid;gap:5px;padding:14px 16px;border:1px solid #dfe7ef;border-radius:18px;background:var(--bg-panel);box-shadow:0 10px 18px #11253a0a}.tasks-summary-card span,.tasks-summary-card small,.tasks-toolbar-copy span,.tasks-create-copy span{color:var(--text-muted)}.tasks-summary-card strong{font-size:26px}.tasks-toolbar-card{display:grid;gap:12px}.tasks-toolbar-copy,.tasks-create-copy{display:grid;gap:4px}.tasks-create.card{padding:20px;background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.card-inline{margin:0;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#ffffffe6}.task-group-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}.task-group-head h3{margin:0;font-size:18px}.task-group>h3{display:none}.task-row{transition:background .18s ease}.task-row:hover{background:#fbfdff}.task-title-btn:hover{color:var(--accent)}.task-actions button:hover,.task-modal-actions button:hover,.task-modal-actions a:hover{border-color:#177a6c3d;color:var(--accent)}.calendar-header{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.calendar-legend.card,.calendar-pro.card{padding:20px;background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.calendar-pro .fc .fc-toolbar.fc-header-toolbar{margin-bottom:1.2rem}.calendar-pro .fc .fc-scrollgrid{border-radius:18px;overflow:hidden}.calendar-pro .fc .fc-timegrid-slot{height:2.9rem}.calendar-pro .fc .fc-day-today{background:#177a6c0d}.calendar-pro .fc .fc-col-header-cell{background:#f8fbff}.calendar-pro .fc .fc-event{padding:4px 6px;border-radius:12px}.analytics-view,.settings-view{display:grid;gap:16px}.analytics-note{margin:0}.analytics-grid{gap:12px}.analytics-card{border-radius:18px;padding:14px 16px;box-shadow:0 10px 18px #11253a0a}.analytics-section{border-radius:18px;padding:16px;box-shadow:0 10px 18px #11253a0a}.analytics-section h3{margin:0 0 12px}.settings-panel{border-radius:20px;padding:18px;background:var(--bg-panel)}.settings-panel h3{margin:0 0 6px}.settings-panel p{color:var(--text-muted)}.settings-subpanel{display:grid;gap:12px;padding:14px 0;border-top:1px solid rgba(16,35,58,.08)}.settings-subpanel:first-of-type{border-top:none;padding-top:0}.settings-subpanel h4{margin:0;font-size:15px;color:var(--text-main)}.settings-panel-system{gap:14px}.system-health-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.system-health-card{display:grid;gap:4px;padding:12px 14px;border:1px solid #dfe6ee;border-radius:14px;background:#f9fbfc}.system-health-card span,.system-health-card small{color:var(--text-muted);font-size:12px}.system-health-card strong{font-size:18px}.system-health-jobs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.system-health-job{display:grid;gap:6px;padding:12px 14px;border:1px solid #e2e9f0;border-radius:14px;background:#fff}.system-health-job-head{display:flex;justify-content:space-between;align-items:start;gap:10px}.system-health-issues,.system-health-issues-inline{margin:0;padding-left:18px;color:var(--text-muted)}.system-health-issues{display:grid;gap:4px}.system-health-issues-inline{display:grid;gap:2px;font-size:13px}.settings-panel .primary{justify-self:start}.settings-actions button{border-radius:12px;padding:9px 12px}.danger-btn{border-color:#bc3a4d3d!important;color:#9d2f41!important}.danger-btn:hover{background:#fff4f5!important;border-color:#bc3a4d5c!important}.feed-url{border-radius:12px;padding:12px 14px}.task-modal-actions button,.task-modal-actions a{border-radius:8px;padding:8px 12px}.card,.task-group,.kpi-card,.tasks-summary-card,.stack-summary-card,.page-hero,.page-hero-mini,.analytics-card,.analytics-section,.settings-panel,.planner-ribbon-item,.priority-card{animation:card-enter .24s ease-out}@media (max-width: 980px){.app-shell{grid-template-columns:1fr}.side-panel{border-right:none;border-bottom:1px solid rgba(255,255,255,.1);position:static;height:auto}.side-nav{flex-direction:row;flex-wrap:wrap}.side-link{flex:1 1 calc(50% - 8px)}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.planner-hero,.page-hero,.overview-grid{grid-template-columns:1fr}.kanban-board{grid-template-columns:repeat(2,minmax(0,1fr))}.week-schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-grid,.analytics-sections{grid-template-columns:1fr 1fr}.tasks-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.triage-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.layout,.content-panel{padding:12px}.content-card-shell{min-height:auto}.tasks-toolbar,.tasks-create-grid{grid-template-columns:1fr}.task-row{grid-template-columns:22px 1fr}.task-actions{grid-column:2 / -1}.tasks-header{flex-direction:column}.calendar-header,.settings-header{flex-direction:column;align-items:flex-start}.calendar-pro .fc .fc-header-toolbar{flex-direction:column;align-items:flex-start;gap:8px}.calendar-pro .fc .fc-toolbar-chunk{display:flex;flex-wrap:wrap;gap:6px}.settings-grid,.settings-inline,.system-health-grid,.system-health-jobs{grid-template-columns:1fr}.hour-row{grid-template-columns:56px 1fr}.kpi-grid,.kanban-board{grid-template-columns:1fr}.planner-ribbon-head,.planner-hero-actions,.page-frame-head{flex-direction:column;align-items:flex-start}.page-hero-aside,.tasks-summary-grid,.triage-action-grid,.week-schedule-grid{grid-template-columns:1fr}.dayplan-head{flex-direction:column;align-items:flex-start}.dayplan-schedule-edit{grid-template-columns:1fr}.task-modal{width:100%;max-height:96vh;padding:12px}.task-modal-grid2{grid-template-columns:1fr}.task-modal-subtask-row{grid-template-columns:24px 1fr}.task-modal-subtask-row button{grid-column:2 / -1;justify-self:start}.task-modal-attachment-row{grid-template-columns:1fr}.analytics-header,.analytics-toolbar{flex-direction:column;align-items:flex-start}.analytics-grid,.analytics-sections{grid-template-columns:1fr}}.assistant-workbench{gap:14px}.assistant-workbench-focus{gap:12px}.assistant-header-bar{display:grid;gap:10px;padding:14px 18px}.assistant-header-bar.collapsed{gap:0}.assistant-header-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.assistant-header-title{display:grid;gap:6px}.assistant-header-copy{display:grid;gap:10px}.assistant-header-copy h2{margin:0}.assistant-header-copy p{max-width:920px;margin:0;color:var(--text-muted);line-height:1.55}.assistant-header-title h2{margin:0;font-size:30px}.assistant-header-summary{margin:0;color:var(--text-muted);line-height:1.4}.assistant-header-controls{display:flex;align-items:center}.assistant-header-details{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}.assistant-stats-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.assistant-stat-card{display:grid;gap:6px;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:#f7fafdc7}.assistant-stat-card span,.assistant-stat-card small{color:var(--text-muted)}.assistant-stat-card strong{font-size:18px;color:var(--text-main)}.assistant-workbench-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}.assistant-chat-shell,.assistant-side-rail,.assistant-side-section{display:grid;gap:14px}.assistant-chat-main{min-height:76vh;grid-template-rows:auto auto minmax(360px,1fr) auto}.assistant-chat-main-wide{gap:12px}.assistant-chat-topbar{display:flex;justify-content:space-between;gap:16px;align-items:start}.assistant-chat-topbar h3,.assistant-side-section h3{margin:0}.assistant-chat-topbar p,.assistant-side-section p{margin:0;color:var(--text-muted)}.assistant-chat-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.assistant-suggestions{display:flex;flex-wrap:wrap;gap:10px}.assistant-suggestions-column{display:grid;gap:10px}.assistant-chip{border:1px solid rgba(23,122,108,.14);border-radius:14px;background:#177a6c0f;color:var(--text-main);padding:12px 14px;cursor:pointer;font:inherit;text-align:left;line-height:1.4}.assistant-chip-block{width:100%}.assistant-chip:hover{background:#177a6c1f;border-color:#177a6c33}.assistant-guidance-list{display:grid;gap:10px}.assistant-guidance-list p{margin:0;padding:10px 12px;border-radius:12px;background:#f7fafde6;border:1px solid rgba(16,35,58,.06)}.assistant-chat-log{min-height:420px;max-height:68vh;overflow:auto;display:grid;align-content:start;gap:12px;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--bg-panel)}.assistant-empty{min-height:220px;display:grid;place-items:center;text-align:center;color:var(--text-muted)}.assistant-bubble{max-width:min(860px,94%);display:grid;gap:8px;padding:14px 16px;border-radius:18px;border:1px solid var(--line);animation:card-enter .22s ease-out}.assistant-bubble-user{justify-self:end;background:var(--bg-panel);color:#f5fbff;border-color:#11253a8c}.assistant-bubble-assistant{justify-self:start;background:var(--bg-panel)}.assistant-bubble-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--text-muted)}.assistant-bubble-user .assistant-bubble-meta{color:#f5fbffc7}.assistant-bubble-body{margin:0;font-size:14px;line-height:1.5;word-break:break-word}.assistant-bubble-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.assistant-action-btn{border:1px solid rgba(16,35,58,.12);border-radius:999px;background:#ffffffe6;color:var(--text-main);padding:8px 12px;cursor:pointer;font:inherit;font-size:13px}.assistant-action-btn:hover{background:#177a6c1f;border-color:#177a6c38}.assistant-inline-form{display:grid;gap:12px;margin-top:8px;padding:12px;border:1px solid rgba(16,35,58,.08);border-radius:14px;background:#ffffffc7}.assistant-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assistant-inline-form label{display:grid;gap:6px;font-size:13px;color:var(--text-muted)}.assistant-inline-actions{display:flex;justify-content:flex-end;gap:10px}.assistant-composer{display:grid;gap:12px}.assistant-composer textarea{width:100%;min-height:108px;resize:vertical}.assistant-composer-actions{display:flex;justify-content:space-between;gap:12px;align-items:center}.assistant-support-shell{display:grid;gap:10px;padding-top:4px;border-top:1px solid #e6edf3}.assistant-support-toggle{width:100%;border:1px solid #dce5ed;border-radius:14px;background:#f8fbfd;padding:12px 14px;display:flex;justify-content:space-between;align-items:start;gap:16px;text-align:left;cursor:pointer;font:inherit}.assistant-support-toggle:hover{background:#f1f6fa}.assistant-support-toggle div{display:grid;gap:4px}.assistant-support-toggle strong{font-size:15px}.assistant-support-toggle span{color:var(--text-muted);font-size:13px}.assistant-support-body{padding:12px 14px;display:flex;flex-direction:column;gap:10px}.assistant-guidance-list.compact{gap:8px;padding:12px 14px;border:1px solid #e2e9f0;border-radius:14px;background:#fbfcfe}.assistant-card-grid{display:grid;gap:14px}.assistant-entity-card{display:grid;gap:12px;animation:card-enter .22s ease-out}.assistant-entity-head{display:flex;justify-content:space-between;gap:14px;align-items:start}.assistant-entity-head strong{font-size:18px}.assistant-entity-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#11253a14;color:var(--text-main);font-size:12px;font-weight:700}.assistant-entity-text{margin:0;line-height:1.6}.assistant-entity-meta{display:flex;flex-wrap:wrap;gap:12px;color:var(--text-muted);font-size:13px}.severity-low{background:#177a6c1f}.severity-medium{background:#eda41a24}.severity-high{background:#dd721b29}.severity-critical{background:#bc3a4d2e;color:#7b1122}@media (max-width: 980px){.assistant-header-details,.assistant-workbench-grid{grid-template-columns:1fr}.assistant-stats-strip{grid-template-columns:1fr 1fr}.assistant-header-top{grid-template-columns:1fr}.assistant-chat-topbar{flex-direction:column}.assistant-chat-controls{justify-content:flex-start}.assistant-composer-actions{flex-direction:column;align-items:stretch}.assistant-support-toggle{flex-direction:column}.assistant-bubble{max-width:100%}.assistant-inline-grid{grid-template-columns:1fr}.assistant-inline-actions{flex-direction:column;align-items:stretch}}@media (max-width: 720px){.assistant-stats-strip{grid-template-columns:1fr}}body{margin:0;min-height:100vh;background:var(--bg-soft);color:var(--text-main)}.card,.content-card{border-radius:18px;padding:18px;box-shadow:0 10px 22px #10233a0d}.app-shell{grid-template-columns:252px minmax(0,1fr)}.side-panel{background:#16293d;padding:18px 14px;gap:14px;border-right:1px solid rgba(255,255,255,.06);overflow-y:auto;overflow-x:hidden}.brand-block{display:grid;gap:4px}.brand-block h1{margin:2px 0 0;font-size:24px}.brand-block p{margin:0;color:#9fb1c3;font-size:13px}.brand-chip{padding:4px 10px;background:#ffffff0f;color:#c7d4e2;font-size:10px}.side-profile-card{border-radius:14px;padding:12px 14px;background:#ffffff0a}.side-nav{gap:12px;padding-right:2px}.side-nav-group{gap:4px}.side-nav-label{padding:0 8px;color:#7e91a5}.side-link{padding:9px 12px;border-radius:10px;color:#d1dbe6}.side-link:hover{background:#ffffff0f;transform:none}.side-link.active{background:#ffffffeb;border-color:#ffffff7a;box-shadow:none}.side-panel .ghost-btn{margin-top:auto}.content-panel{padding:18px 20px 24px}.content-card-shell{min-height:auto;padding:0;border:none;background:transparent;box-shadow:none}.page-frame{margin-bottom:14px}.page-frame-head{padding-bottom:14px}.page-frame-head h2{font-size:26px}.page-hero{gap:14px;border-radius:18px;background:#fff;box-shadow:0 10px 22px #10233a0d}.page-hero-main h2{font-size:32px}.page-hero-main p{font-size:14px;line-height:1.55}.page-hero-mini{border-radius:14px;padding:14px 16px;background:#f8fbfd;box-shadow:none}.planner-kicker{background:#12263a0f;color:#29435f}.workspace-toolbar{display:grid;gap:14px}.workspace-toolbar-main{display:flex;justify-content:space-between;align-items:end;gap:18px}.workspace-toolbar-main h2{margin:8px 0 6px;font-size:32px}.workspace-toolbar-actions{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.planner-date-control input{margin-bottom:0}.overview-workspace-clean{gap:14px}.overview-summary-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.overview-now-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.overview-stat{display:grid;gap:4px;padding:12px 14px;border:1px solid #dfe6ee;border-radius:14px;background:#f9fbfc;transition:all .15s ease}.overview-stat.danger-stat{border-color:#ef444459;background:#fef2f2}.overview-stat.danger-stat strong{color:#dc2626}.overview-stat.warning-stat{border-color:#f59e0b59;background:#fffbeb}.overview-stat.warning-stat strong{color:#d97706}.overview-stat.active-stat{border-color:#2563eb40;background:#eff6ff}.overview-stat.active-stat strong{color:#2563eb}.overview-stat strong{font-size:20px;line-height:1}.overview-stat span{color:var(--text-muted);font-size:12px;text-transform:lowercase}.overview-primary-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(320px,.95fr);gap:14px;align-items:start}.overview-command-grid,.overview-secondary-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.95fr);gap:14px;align-items:start}.overview-main-stack,.overview-side-stack,.overview-panel{display:grid;gap:12px}.overview-kanban-panel{gap:12px}.workspace-toolbar-shortcuts{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.overview-inline-statuses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.overview-inline-note{display:grid;gap:4px;padding:10px 12px;border:1px solid #e3eaf0;border-radius:14px;background:#f8fbfd;transition:all .15s ease}.overview-inline-note.now-note{background:#eff6ff;border-color:#bfdbfe}.overview-inline-note.now-note span{color:#1d4ed8;font-weight:600}.overview-inline-note.focus-note{background:#faf5ff;border-color:#e9d5ff}.overview-inline-note.focus-note span{color:#7e22ce;font-weight:600}.overview-inline-note.clickable{cursor:pointer}.overview-inline-note.clickable:hover{border-color:#c084fc;box-shadow:0 4px 12px #7e22ce14;transform:translateY(-1px)}.overview-inline-note span,.overview-inline-note small{color:var(--text-muted);font-size:12px}.overview-inline-note strong{font-size:15px}.overview-inline-note.compact{margin-top:2px;padding:8px 10px;border-radius:10px;background:#fff}.overview-issue-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px;border-bottom:1px solid var(--line);margin-bottom:12px}.overview-issue-tab{border:1px solid var(--line);background:#f9fafb;color:var(--text-muted);border-radius:var(--radius-sm);padding:5px 11px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.overview-issue-tab:hover{background:#f3f4f6;color:var(--text);border-color:#d1d5db}.overview-issue-tab.active{background:var(--text);color:#fff;border-color:var(--text)}.overview-issue-tab.danger.active{background:#dc2626;border-color:#dc2626;color:#fff}.overview-issue-tab.warning.active{background:#d97706;border-color:#d97706;color:#fff}.overview-issue-stack{display:grid;gap:12px;max-height:380px;overflow-y:auto;align-content:flex-start;padding:0 12px 6px}.overview-issue-stack::-webkit-scrollbar{width:6px}.overview-issue-stack::-webkit-scrollbar-thumb{background-color:var(--line);border-radius:4px}.overview-issue-card{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg-soft)}.overview-issue-card.danger{border-color:#fca5a5;background:#fff8f8}.overview-issue-card.warning{border-color:#fcd34d;background:#fffdf5}.overview-issue-card.subtle{border-color:var(--line);background:transparent}.overview-issue-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.overview-issue-head strong{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.overview-issue-head span{min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#eef3f8;color:#36516b;font-size:11px;font-weight:700;padding:0 6px}.overview-issue-item{width:100%;display:flex;flex-direction:column;gap:4px;text-align:left;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer;font:inherit;transition:all .15s ease;box-shadow:0 1px 2px #00000008}.overview-issue-item:hover{border-color:#cbd5e1;background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 10px #0000000d}.overview-issue-item.danger{border-left:3px solid #ef4444}.overview-issue-item.warning{border-left:3px solid #f59e0b}.overview-issue-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px}.overview-issue-tag{font-weight:600;padding:1px 6px;border-radius:4px;font-size:11px}.overview-issue-tag.danger{background:#fee2e2;color:#991b1b}.overview-issue-tag.warning{background:#fef3c7;color:#92400e}.overview-issue-tag.info{background:#e0f2fe;color:#0369a1}.overview-issue-tag.purple{background:#f3e8ff;color:#6b21a8}.overview-issue-time{color:var(--text-muted);font-size:11px}.overview-issue-note{font-size:12px;color:var(--text-muted);line-height:1.35}.overview-issue-item strong{font-size:13px;font-weight:600;color:var(--text);line-height:1.35}.overview-empty-issues{padding:24px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.empty-issues-icon{width:36px;height:36px;border-radius:50%;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700}.slot-live-badge{background:#2563eb;color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;margin-left:6px}.overview-slot-list{display:flex;flex-direction:column;gap:8px;max-height:380px;overflow-y:auto;padding:0 16px 14px}.overview-slot-list::-webkit-scrollbar{width:6px}.overview-slot-list::-webkit-scrollbar-thumb{background-color:var(--line);border-radius:4px}.overview-slot-item{border:1px solid #e5e7eb;border-radius:12px;background:#fff;padding:10px 14px;text-align:left;display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;cursor:pointer;box-shadow:0 1px 2px #00000008;transition:all .15s ease;font:inherit;width:100%}.overview-slot-item:hover{border-color:#cbd5e1;background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 10px #0000000d}.overview-slot-item.current{border-color:#93c5fd;background:#f0f7ff;border-left:3px solid #2563eb}.overview-slot-item.next{border-color:#e5e7eb}.overview-slot-time{color:#1e3a5f;font-size:11px;font-weight:700;letter-spacing:.02em;display:flex;flex-direction:column;gap:4px}.overview-slot-body{display:flex;flex-direction:column;gap:4px;min-width:0}.overview-slot-body strong{font-size:13px;font-weight:600;color:var(--text);line-height:1.35}.review-text.compact{max-height:220px;overflow:auto;font-size:14px}.overview-day-header.compact{margin-bottom:0}.deadline-list.compact{gap:10px}.deadline-list.compact li{padding:12px}.priority-list{display:grid;gap:10px}.priority-card{border-radius:14px;padding:12px 14px;box-shadow:none}.priority-card:hover{border-color:#c7d3df;box-shadow:0 10px 20px #10233a0f}.kanban-column,.week-day-column{border-radius:14px;background:#f8fafc}.week-event-card{border-radius:12px;box-shadow:none}.overview-fold{padding:0;overflow:hidden}.overview-fold>summary{list-style:none;display:flex;justify-content:space-between;align-items:start;gap:12px;padding:16px 18px;cursor:pointer}.overview-fold>summary::-webkit-details-marker{display:none}.overview-fold>summary>div{display:grid;gap:4px}.overview-fold>summary strong{font-size:16px}.overview-fold>summary>div span{color:var(--text-muted);font-size:13px}.overview-fold[open]>summary{border-bottom:1px solid #e7edf3;background:#fafcfd}.overview-fold-body{padding:14px 16px;display:flex;flex-direction:column;gap:12px}.lab-command-panel{gap:12px}.lab-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lab-command-card{display:grid;gap:4px;padding:12px 14px;border:1px solid #dfe6ee;border-radius:14px;background:#f9fbfc}.lab-command-card.warning{background:#fff8f4;border-color:#ecd7c4}.lab-command-card span,.lab-command-card small{color:var(--text-muted);font-size:12px}.lab-command-card strong{font-size:20px}.lab-theme-strip{display:flex;flex-wrap:wrap;gap:8px}.lab-theme-strip span{padding:6px 10px;border-radius:999px;background:#f3f7fb;color:#36516b;font-size:12px}.lab-contact-list{display:grid;gap:8px}.lab-contact-row{display:grid;gap:2px;padding:10px 12px;border:1px solid #e4ebf1;border-radius:12px;background:#fff}.lab-contact-row span{font-weight:600}.lab-contact-row small{color:var(--text-muted)}.grant-grid{display:grid;gap:12px}.grant-section{border:1px solid #e3eaf1;border-radius:14px;background:#fbfcfd;padding:14px;display:grid;gap:10px}.grant-section-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.grant-section-head span{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#edf3f8;color:#36516b;font-size:12px;font-weight:700}.grant-task-list,.grant-checklist{display:grid;gap:8px}.grant-task-card,.grant-check-item{display:grid;gap:4px;padding:10px 12px;border:1px solid #e4ebf1;border-radius:12px;background:#fff}.grant-task-card span,.grant-task-card small,.grant-check-item p{color:var(--text-muted);margin:0;font-size:13px}.stack-page{gap:14px}.split-panel{gap:12px}.split-panel-tight{grid-template-columns:1.15fr .85fr}.toolbar-row-compact{grid-template-columns:1fr 160px}.stack-summary-grid{gap:10px}.stack-summary-card{border-radius:14px;padding:12px 14px;background:#f9fbfc}.stack-summary-card strong{font-size:22px}.stack-card-head.compact{margin-bottom:10px}.stack-card-head.compact h3{margin-bottom:4px;font-size:18px}.stack-list{gap:10px}.stack-item{border-radius:14px;padding:12px;background:#fbfcfd;box-shadow:none}.stack-item:hover{box-shadow:0 10px 18px #11253a0d}.assistant-card-grid.compact-grid,.stack-form-grid.compact-form-grid{gap:10px}.stack-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stack-form-grid label{display:grid;gap:6px;font-size:14px}.compact-card{border-radius:14px;padding:14px;box-shadow:none}.assistant-entity-card.compact-card,.detail-card,.detail-grid{gap:10px}.detail-grid{gap:6px 10px}.toolbar-row input,.toolbar-row select,.stack-form-grid input,.stack-form-grid textarea,.stack-form-grid select{margin-bottom:0}.tasks-view,.analytics-view,.calendar-view{gap:12px}.tasks-toolbar{grid-template-columns:minmax(0,1fr) 180px}.tasks-create{border-radius:12px;padding:12px;background:#f6fbfa}.task-group{border-radius:12px}.task-group h3{padding:10px 12px;font-size:16px}.task-row{padding:10px 12px}.page-hero{padding:18px}.page-hero-main h2{margin:4px 0 8px;font-size:30px}.page-hero-main p{max-width:620px;font-size:14px;line-height:1.5}.page-hero-aside{gap:8px}.page-hero-mini{padding:12px 14px;border-radius:14px;background:#f9fbfc}@media (max-width: 1200px){.overview-primary-grid,.overview-command-grid,.overview-secondary-grid,.overview-now-strip{grid-template-columns:1fr}}@media (max-width: 980px){.side-panel{max-height:none;overflow:visible}.workspace-toolbar-main{display:grid;gap:14px;align-items:start}.overview-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-inline-statuses,.split-panel-tight{grid-template-columns:1fr}}@media (max-width: 760px){.app-shell{grid-template-columns:1fr;min-height:100vh}.side-panel{position:static;top:auto;height:auto;overflow:visible;padding:12px;gap:12px;border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}.side-panel .ghost-btn{display:none}.side-panel-top{gap:12px}.brand-block h1{font-size:22px}.brand-block p{font-size:12px}.side-profile-card{display:none}.mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;width:100%;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:#ffffff14;color:#e5eef7;padding:12px 14px;font:inherit;font-weight:700;cursor:pointer}.side-nav{display:none;max-height:min(58vh,420px);overflow-y:auto;padding:10px 2px 4px;margin-top:2px;border-top:1px solid rgba(255,255,255,.08)}.side-nav.open{display:flex}.content-panel{padding:12px 12px 88px}.workspace-toolbar-main h2,.page-hero-main h2{font-size:28px}.workspace-toolbar-actions{width:100%}.overview-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-slot-item,.lab-command-grid,.toolbar-row-compact{grid-template-columns:1fr}.mobile-quickbar{display:grid}.kanban-board{grid-template-columns:repeat(4,minmax(240px,82vw));overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity}.kanban-column{border:1px solid transparent;border-radius:var(--radius-lg);background:#f3f4f6;min-height:220px;max-height:min(68vh,760px);display:flex;flex-direction:column;transition:all .2s ease;overflow:hidden}}.overview-dashboard-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(360px,1.15fr);gap:20px;align-items:flex-start;margin-top:10px}.overview-main-col{display:flex;flex-direction:column;gap:20px;min-width:0}.overview-side-col{display:flex;flex-direction:column;gap:20px;position:sticky;top:16px}@media (max-width: 1200px){.overview-dashboard-layout{grid-template-columns:1fr}.overview-side-col{position:static}}.task-create-modal{max-width:860px;width:95vw}.task-modal-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line, #e2e8f0);padding-bottom:8px;margin-bottom:8px;overflow-x:auto}.task-tab-btn{padding:8px 16px;font-size:14px;font-weight:600;border-radius:8px;border:1px solid transparent;background:#f1f5f9;color:#475569;cursor:pointer;transition:all .15s ease;white-space:nowrap}.task-tab-btn:hover{background:#e2e8f0;color:#1e293b}.task-tab-btn.active{background:var(--accent, #2563eb);color:#fff;border-color:var(--accent, #2563eb);box-shadow:0 2px 6px #2563eb40}.info-badge{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;padding:10px 14px;border-radius:8px;font-size:14px}.attachment-chip-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;padding:8px 14px;border-radius:8px;font-size:13px}.task-toggle-grid{display:flex;flex-direction:column;gap:8px;margin-top:4px;background:#f8fafc;padding:10px 12px;border-radius:8px;border:1px solid #e2e8f0}.subtask-index{font-size:13px;font-weight:600;color:#64748b;text-align:right;padding-right:4px}.task-modal-subtask-add{display:flex;gap:8px;align-items:center;margin-top:8px}.task-modal-subtask-add input[type=text]{flex:1}.btn-sm{padding:4px 8px!important;font-size:12px!important}.camera-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0}.choice-tile-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px 14px;background:#fff;border:1.5px dashed #cbd5e1;border-radius:12px;cursor:pointer;transition:all .2s ease;gap:6px;color:#1e293b}.choice-tile-btn:hover:not(:disabled){border-color:var(--accent, #2563eb);background:#f0f7ff;transform:translateY(-1px)}.choice-tile-btn .tile-icon{font-size:28px}.choice-tile-btn strong{font-size:14px;font-weight:600}.choice-tile-btn small{font-size:12px;color:#64748b}.camera-live-container{display:flex;flex-direction:column;gap:10px;align-items:center;background:#0f172a;padding:12px;border-radius:12px;overflow:hidden}.camera-video-stream{width:100%;max-height:380px;object-fit:cover;border-radius:8px;background:#000}.camera-live-controls{display:flex;gap:10px;width:100%;justify-content:center}.image-preview-card{margin-top:14px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;overflow:hidden}.image-preview-header{display:flex;justify-content:space-between;padding:8px 12px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-size:13px;color:#334155}.image-preview-viewport{max-height:280px;overflow:hidden;display:flex;justify-content:center;align-items:center;background:#0f172a}.image-preview-viewport img{max-height:280px;width:auto;object-fit:contain}.recognized-raw-box{margin-top:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px 14px}.recognized-raw-box strong{font-size:13px;color:#475569;display:block;margin-bottom:6px}.recognized-raw-box pre{margin:0;white-space:pre-wrap;word-break:break-word;font-size:13px;color:#1e293b;max-height:180px;overflow-y:auto;background:#fff;padding:8px 12px;border-radius:6px;border:1px solid #e2e8f0}.project-type-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.filter-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;padding:5px 12px;font-size:12px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.filter-chip:hover{background:#f1f5f9;border-color:#cbd5e1}.filter-chip.active{background:#0f172a;color:#fff;border-color:#0f172a}.project-desc-text{font-size:12.5px;color:#475569;line-height:1.45;margin:4px 0 8px}.project-team-strip{border-top:1px dashed #e2e8f0;padding-top:8px;margin-top:6px;display:grid;gap:6px}.team-strip-title{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:#64748b}.team-strip-title strong{color:#0f172a;font-weight:600}.project-member-chips{display:flex;flex-wrap:wrap;gap:5px}.project-member-chip{display:inline-flex;align-items:center;gap:4px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:2px 7px;font-size:11px;color:#334155;line-height:1.25}.project-member-chip.leader{background:#eff6ff;border-color:#bfdbfe;color:#1e40af;font-weight:600}.project-member-chip .member-avatar{font-size:10px}.project-member-chip .member-name{font-weight:500}.project-member-chip .member-role{font-size:10px;color:#64748b;margin-left:2px}.project-member-chip.leader .member-role{color:#2563eb}.project-panel-tabs{display:flex;gap:6px;border-bottom:1px solid #e2e8f0;padding-bottom:10px;margin-bottom:14px}.panel-tab-btn{border:1px solid transparent;background:transparent;padding:7px 14px;border-radius:8px;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s ease}.panel-tab-btn:hover{background:#f1f5f9;color:#0f172a}.panel-tab-btn.active{background:#0f172a;color:#fff}.project-team-full-list{display:grid;gap:12px}.team-full-header{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#64748b;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.team-full-header strong{color:#0f172a;font-size:14px}.team-members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;max-height:480px;overflow-y:auto;padding-right:4px}.team-member-card{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;background:#fff;display:grid;gap:4px;transition:all .15s ease}.team-member-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000a}.team-member-card.leader{background:#f8fbfe;border-color:#bfdbfe}.member-card-top{display:flex;align-items:center;gap:8px}.member-card-avatar{width:28px;height:28px;border-radius:8px;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:#475569;flex-shrink:0}.team-member-card.leader .member-card-avatar{background:#dbeafe;color:#1e40af}.member-card-top strong{font-size:13px;color:#0f172a;display:block}.member-card-role{font-size:11px;color:#2563eb;font-weight:500}.member-card-pos{font-size:11px;color:#64748b;margin-top:2px}.team-toolbar-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.team-view-toggle{display:flex;gap:4px;background:#f1f5f9;padding:3px;border-radius:10px}.view-mode-btn{border:none;background:transparent;padding:6px 14px;border-radius:8px;font-size:12.5px;font-weight:600;color:#475569;cursor:pointer;transition:all .15s ease}.view-mode-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #00000014}.team-search-box input{border:1px solid #cbd5e1;border-radius:8px;padding:7px 12px;font-size:12.5px;width:260px;background:#fff}.team-project-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.project-filter-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;padding:4px 11px;font-size:11.5px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.project-filter-pill .dot{width:6px;height:6px;border-radius:999px;background:#94a3b8}.project-filter-pill.gz .dot{background:#3b82f6}.project-filter-pill.ml .dot{background:#10b981}.project-filter-pill.rnf .dot{background:#f59e0b}.project-filter-pill.multi .dot{background:#8b5cf6}.pills-separator{width:1px;height:20px;background:#cbd5e1;margin:0 4px;align-self:center}.project-filter-pill:hover{background:#f8fafc;border-color:#cbd5e1}.project-filter-pill.active{background:#0f172a;color:#fff;border-color:#0f172a}.project-filter-pill.active .dot{background:#38bdf8}.combo-badge{margin-left:6px;background:#fef3c7;color:#92400e;border:1px solid #fde68a;font-weight:600}.employee-projects-box{border-top:1px dashed #e2e8f0;padding-top:8px;margin-top:6px;display:grid;gap:5px}.emp-projects-title{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.emp-projects-list{display:grid;gap:4px}.emp-project-pill{display:flex;align-items:baseline;gap:6px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:3px 8px;font-size:11px}.emp-project-pill .pill-dot{width:5px;height:5px;border-radius:999px;background:#2563eb;flex-shrink:0;margin-top:2px}.emp-project-pill .pill-proj{color:#1e293b;font-weight:600;font-size:11px}.emp-project-pill .pill-role{color:#475569;font-size:10.5px;margin-left:auto}.team-matrix-card{display:grid;gap:12px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:16px}.team-matrix-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid #f1f5f9;padding-bottom:10px}.team-matrix-header h3{margin:0;font-size:16px;font-weight:700;color:#0f172a}.team-matrix-header p{margin:4px 0 0;font-size:12.5px;color:#64748b}.matrix-legend .legend-chip.multi{display:inline-flex;align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;font-size:11px;font-weight:600;padding:3px 8px;border-radius:6px}.team-matrix-table-wrap{overflow-x:auto;max-height:68vh;border:1px solid #e2e8f0;border-radius:10px}.team-matrix-table{width:100%;border-collapse:collapse;font-size:11.5px;text-align:left}.team-matrix-table thead{position:sticky;top:0;z-index:2;background:#f8fafc}.team-matrix-table th{padding:8px 10px;border-bottom:1px solid #cbd5e1;border-right:1px solid #e2e8f0;color:#334155;font-weight:600;white-space:nowrap}.team-matrix-table th.th-num{width:36px;text-align:center}.team-matrix-table th.th-fio{width:140px}.team-matrix-table th.th-pos{width:160px}.team-matrix-table th.th-cnt{width:70px;text-align:center}.proj-th-title{font-weight:700;color:#0f172a;font-size:11px}.proj-th-org{font-size:10px;color:#64748b;font-weight:500}.matrix-row{cursor:pointer;transition:background .12s ease}.matrix-row:hover{background:#f8fafc}.matrix-row.selected{background:#eff6ff}.matrix-row.is-multi{background:#ecfdf573}.matrix-row.is-multi:hover{background:#ecfdf5}.matrix-row td{padding:6px 10px;border-bottom:1px solid #f1f5f9;border-right:1px solid #f1f5f9;vertical-align:middle}.matrix-row td.td-num{text-align:center;color:#94a3b8;font-size:10.5px}.matrix-row td.td-fio strong{color:#0f172a;font-size:12px}.matrix-row td.td-pos{color:#475569;font-size:11px}.matrix-row td.td-cnt{text-align:center}.count-pill{display:inline-block;padding:1px 6px;border-radius:999px;font-weight:700;font-size:10.5px}.count-pill.single{background:#f1f5f9;color:#475569}.count-pill.medium{background:#dbeafe;color:#1d4ed8}.count-pill.heavy{background:#fee2e2;color:#dc2626}.role-cell-badge{display:inline-block;background:#fff;border:1px solid #cbd5e1;border-radius:5px;padding:2px 6px;font-size:10.5px;color:#1e293b;font-weight:500;line-height:1.25;white-space:nowrap}.matrix-row.is-multi .role-cell-badge{background:#f0fdf4;border-color:#86efac;color:#166534}.empty-dash{color:#cbd5e1;text-align:center;display:block}.stack-list-full{width:100%;max-width:100%}.project-toolbar-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:12px}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}.project-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px;display:grid;gap:10px;box-shadow:0 1px 3px #0000000a;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.project-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000f;border-color:#cbd5e1}.project-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.project-card-head strong{font-size:14px;font-weight:700;color:#0f172a;line-height:1.35}.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;font-size:11.5px;background:#f8fafc;padding:8px 10px;border-radius:8px}.compact-grid p{margin:0;color:#475569}.project-card-actions{display:flex;gap:8px;margin-top:4px;border-top:1px solid #f1f5f9;padding-top:10px}.project-card-actions button{font-size:12px;padding:5px 10px}.project-member-chip.more{background:#f1f5f9;color:#64748b;font-weight:600}.team-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}.team-employee-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px;display:grid;gap:10px;box-shadow:0 1px 3px #0000000a;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;cursor:pointer}.team-employee-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000f;border-color:#cbd5e1}.team-card-actions{display:flex;justify-content:flex-end;margin-top:4px;border-top:1px solid #f1f5f9;padding-top:8px}.team-card-actions button{font-size:11.5px;padding:4px 10px}.project-modal,.employee-modal,.contact-modal{width:min(780px,94vw);max-height:90vh}.project-modal-form,.employee-modal-form,.contact-modal-form{display:grid;gap:12px}.assistant-entity-card.selectable{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.assistant-entity-card.selectable:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000f;border-color:#cbd5e1}.project-card.selectable{cursor:pointer}.project-card.selectable:hover{border-color:#93c5fd;box-shadow:0 10px 25px -4px #2563eb14,0 4px 6px -2px #0000000a}.modal-helper-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px;margin-bottom:4px}.helper-chip{display:inline-flex;align-items:center;gap:4px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:3px 8px;font-size:11.5px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease;line-height:1.25}.helper-chip:hover{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8;transform:translateY(-1px)}.helper-chip:active{transform:translateY(0)}.project-team-notice-strip{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;padding:8px 14px;border-radius:10px;font-size:13px;margin-bottom:12px}.project-team-notice-strip strong{font-weight:700;color:#1d4ed8}.project-team-view-shell{display:grid;gap:12px}.project-researchers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.project-researcher-card{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;display:grid;gap:10px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.project-researcher-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000d;border-color:#cbd5e1}.project-researcher-card.leader{background:#f8fbfe;border-color:#bfdbfe}.researcher-card-top{display:flex;align-items:center;gap:10px}.researcher-info{flex:1;min-width:0}.researcher-info strong{font-size:13.5px;color:#0f172a;display:block}.researcher-main-pos{font-size:11.5px;color:#64748b;margin-top:2px}.researcher-projects-list{border-top:1px dashed #e2e8f0;padding-top:8px;display:grid;gap:5px}.researcher-projects-header{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.researcher-project-item{display:flex;align-items:baseline;gap:6px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:4px 8px;font-size:11px;cursor:pointer;transition:all .12s ease}.researcher-project-item:hover{background:#eff6ff;border-color:#bfdbfe}.researcher-project-item .dot{width:5px;height:5px;border-radius:999px;background:#2563eb;flex-shrink:0;margin-top:2px}.researcher-project-item .item-title{color:#1e293b;font-weight:600;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.researcher-project-item .item-role{color:#475569;font-size:10.5px;flex-shrink:0}
