.gantt_splitContainer{display:flex;width:100%;height:100%;min-height:0}.gantt_splitLeft{min-width:0;overflow:hidden}.gantt_splitter{width:8px;cursor:col-resize;position:relative;border-left:1px solid #d9d9d9;border-right:1px solid #d9d9d9;background:#f8f9fa}.gantt_splitter:after{content:"";position:absolute;top:50%;left:50%;width:2px;height:18px;border-radius:1px;transform:translate(-50%,-50%);background:#a6a8ab}.gantt_splitterActive{background:#eef4ff}.gantt_splitRight{flex:1;min-width:0;overflow:hidden}.gantt_legendBar{display:flex;align-items:center;gap:14px;min-height:32px;padding:0 10px;border-top:1px solid #dfe3e8;background:#fff}.gantt_legendLabel{font-size:12px;color:#6b7280}.gantt_lgItem{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#333}.gantt_lgSwatch{width:12px;height:8px;border-radius:2px}.gantt_timelineContainer{display:flex;flex-direction:column;height:100%;overflow:hidden}.gantt_timelineHeader{overflow:hidden;flex-shrink:0}.gantt_timelineBody{flex:1;overflow:auto;position:relative;scrollbar-width:thin;scrollbar-color:#CBD5E1 #F8FAFC}.gantt_timelineBody::-webkit-scrollbar{width:8px;height:8px}.gantt_timelineBody::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.gantt_presenceLayer{position:absolute;inset:0;pointer-events:none;z-index:20}.gantt_presenceMarker{position:absolute;right:8px;width:16px;height:16px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff;box-shadow:0 0 0 1px #fffffff2,0 2px 6px #02061733}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*:focus-visible{outline:2px solid #2563EB;outline-offset:2px}:root{--color-text-muted: #667085;--color-text-secondary: #6B7280;--color-text-primary: #111827;--color-bg-page: #F8FAFC;--color-bg-card: #FFFFFF;--color-bg-header: #F1F5F9;--color-border: #E5E7EB;--color-bg-stripe: #FCFCFD;--color-warning-light: #FFFBEB;--color-absence: #64748B;--color-primary: #2563EB;--color-success: #16A34A;--color-warning: #D97706;--color-error: #DC2626;--color-bg-hover: #F8FAFC;--layout-nav-height: 48px;--layout-content-padding: 16px;--layout-sticky-gap: 8px;--layout-filter-top: calc(var(--layout-nav-height) + var(--layout-sticky-gap));--layout-admin-viewport-height: calc(100vh - var(--layout-nav-height) - (var(--layout-content-padding) * 2))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:0;top:-48px;background:var(--color-primary);color:#fff;padding:8px 16px;font-size:14px;font-weight:600;z-index:1200}.skip-link:focus-visible{top:0}.ant-table-small .ant-table-thead>tr>th,.ant-table-small .ant-table-thead>tr>td{font-size:10px!important;font-weight:600!important;color:var(--color-text-secondary)!important;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.ant-table-small .ant-table-tbody>tr>td{font-size:12px!important;font-variant-numeric:tabular-nums}.ant-table-small .ant-table-tbody>tr:hover>td{background:var(--color-bg-hover)!important}.mini-table .ant-table-thead>tr>th{font-size:10px!important;font-weight:600!important;color:var(--color-text-muted)!important;text-transform:uppercase;letter-spacing:.5px;padding:6px 8px!important;white-space:nowrap;background:transparent!important}.mini-table .ant-table-tbody>tr>td{font-size:12px!important;padding:7px 8px!important;border-bottom:1px solid var(--color-bg-header)!important}.mini-table .ant-table-tbody>tr:last-child>td{border-bottom:none!important}.mini-table .ant-table-tbody>tr:hover>td{background:var(--color-bg-page)!important}.table-scroll::-webkit-scrollbar{width:6px;height:6px}.table-scroll::-webkit-scrollbar-track{background:transparent}.table-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.table-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.filter-bar{position:sticky;top:var(--layout-nav-height);z-index:50;background:var(--color-bg-card);border-bottom:1px solid var(--color-border);padding:8px 24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-bar .filter-label{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px}.filter-bar .ant-select-selector{height:30px!important;font-size:12px!important}.filter-bar .ant-select-selection-item{line-height:28px!important;font-size:12px!important}.filter-bar .ant-picker{height:30px!important;font-size:12px!important}.filter-card{position:sticky;top:var(--layout-filter-top);z-index:50;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:12px 16px;margin-bottom:12px;box-shadow:0 1px 3px #0000000a}.projects-kpi-primary-grid,.projects-kpi-secondary-grid{display:grid;gap:10px}.projects-kpi-primary-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:8px}.projects-kpi-secondary-grid{grid-template-columns:repeat(9,minmax(0,1fr));margin-bottom:12px}.projects-kpi-cell{min-width:0}.projects-kpi-cell .ant-card{height:100%}.projects-kpi-primary-grid .ant-card-body,.projects-kpi-secondary-grid .ant-card-body{padding:10px!important}.compact-segmented .ant-segmented-item-label{font-size:11px!important;padding:5px 12px!important;line-height:18px!important}.schedule-table .ant-table-cell{font-size:12px!important;padding:4px 6px!important;font-variant-numeric:tabular-nums}.schedule-table .cell-weekend{background:var(--color-bg-header)!important;color:var(--color-text-primary)!important}.schedule-table .cell-holiday{background:var(--color-warning-light)!important}.schedule-table .cell-absence{background:var(--color-absence)!important;color:var(--color-bg-card)!important}.cell-ok{background:#f0fdf4!important;color:#16a34a!important}.cell-warn{background:#fffbeb!important;color:#d97706!important}.cell-danger{background:#fef2f2!important;color:#dc2626!important}.cell-critical{background:#fee2e2!important;color:#991b1b!important;font-weight:600}.cell-ok:hover,.cell-warn:hover,.cell-danger:hover,.cell-critical:hover{filter:brightness(.97)}.row-overdue>td:first-child{box-shadow:inset 4px 0 #dc2626}.row-today>td:first-child{box-shadow:inset 4px 0 #2563eb}.row-inprogress>td:first-child{box-shadow:inset 4px 0 #16a34a}.row-completed>td:first-child{box-shadow:inset 4px 0 0 var(--color-text-muted)}.row-warning>td:first-child{box-shadow:inset 4px 0 #d97706}.bulk-bar{position:fixed;bottom:0;left:0;right:0;z-index:200;background:#111827eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#fff;font-size:13px;box-shadow:0 -4px 20px #00000026;animation:slideUpBar .2s ease-out}@keyframes slideUpBar{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.bulk-bar .bulk-count{font-weight:600;font-size:14px}.bulk-bar button{background:#ffffff1f;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:6px 14px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.bulk-bar button:hover{background:#fff3}.bulk-bar button.bulk-primary{background:var(--color-primary);border-color:var(--color-primary)}.bulk-bar button.bulk-primary:hover{background:#1d4ed8}.nav-tab{position:relative}.nav-tab:after{content:"";position:absolute;bottom:-1px;left:50%;right:50%;height:2px;background:var(--color-primary);border-radius:2px 2px 0 0;transition:left .2s ease,right .2s ease}.nav-tab:hover:after{left:8px;right:8px}.nav-tab.nav-tab-active:after{left:8px;right:8px}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-slide-up{animation:fadeSlideUp .4s ease-out both}.fade-slide-up:nth-child(1){animation-delay:0ms}.fade-slide-up:nth-child(2){animation-delay:60ms}.fade-slide-up:nth-child(3){animation-delay:.12s}.fade-slide-up:nth-child(4){animation-delay:.18s}.fade-slide-up:nth-child(5){animation-delay:.24s}.fade-slide-up:nth-child(6){animation-delay:.3s}.fade-slide-up:nth-child(7){animation-delay:.36s}.fade-slide-up:nth-child(8){animation-delay:.42s}.fade-slide-up:nth-child(9){animation-delay:.48s}.fade-slide-up:nth-child(10){animation-delay:.54s}.fade-slide-up:nth-child(11){animation-delay:.6s}.fade-slide-up:nth-child(12){animation-delay:.66s}.fade-slide-up:nth-child(13){animation-delay:.72s}.fade-slide-up:nth-child(14){animation-delay:.78s}.fade-slide-up:nth-child(15){animation-delay:.84s}@keyframes progressGrow{0%{width:0}to{width:var(--progress-width, 0%)}}.progress-grow{animation:progressGrow .8s ease-out both}@keyframes ringDraw{0%{stroke-dashoffset:var(--ring-circumference, 283)}to{stroke-dashoffset:var(--ring-offset, 283)}}.ring-draw{animation:ringDraw 1s ease-out both}@keyframes rowSlideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.row-slide-in{animation:rowSlideIn .3s ease-out both}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.interactive-btn{transition:all .15s ease!important}.interactive-btn:active{transform:scale(.96)!important}.schedule-row-workshop{background:#dbeafe!important;font-weight:700}.schedule-row-workshop td:first-child{box-shadow:inset 3px 0 0 var(--color-primary)}.schedule-row-position{background:#eff6ff!important;padding-left:24px}.schedule-row-employee{padding-left:40px}.schedule-row-employee:nth-child(2n){background:var(--color-bg-stripe)}.schedule-row-total{position:sticky;bottom:0;z-index:10;background:var(--color-bg-card)!important;border-top:2px solid var(--color-text-primary)!important;font-weight:700}.frozen-shadow{position:relative}.frozen-shadow:after{content:"";position:absolute;top:0;right:-8px;bottom:0;width:8px;background:linear-gradient(to right,rgba(0,0,0,.06),transparent);pointer-events:none}.capacity-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin-bottom:12px}.capacity-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:10px 16px;box-shadow:0 1px 2px #0000000a;display:flex;flex-direction:column;gap:6px;transition:box-shadow .2s ease}.capacity-card:hover{box-shadow:0 2px 8px #0000000f}.capacity-card-header{display:flex;align-items:center;justify-content:space-between}.capacity-card-title{font-size:12px;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:6px}.capacity-card-title .ws-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.capacity-card-stats{display:flex;gap:12px;font-size:11px}.capacity-stat{display:flex;align-items:baseline;gap:3px}.capacity-stat-label{color:var(--color-text-muted);font-weight:500}.capacity-stat-value{font-weight:700;font-variant-numeric:tabular-nums}.capacity-card-bar{display:flex;align-items:center;gap:8px}.capacity-progress-bar{flex:1;height:8px;background:var(--color-bg-header);border-radius:4px;overflow:hidden;position:relative}.capacity-progress-fill{height:100%;border-radius:4px;transition:width .8s ease-out}.capacity-progress-text{font-size:13px;font-weight:700;min-width:42px;text-align:right;font-variant-numeric:tabular-nums}.schedule-legend{display:flex;align-items:center;gap:16px;padding:8px 16px;font-size:11px;color:var(--color-text-secondary);flex-wrap:wrap}.schedule-legend-item{display:inline-flex;align-items:center;gap:6px}.schedule-legend-swatch{width:14px;height:14px;border-radius:3px;border:1px solid var(--color-border);flex-shrink:0}.kanban-column{border-radius:12px;background:var(--color-bg-page);min-height:200px}.kanban-column-header{text-transform:uppercase;font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--color-text-secondary);padding:12px 12px 8px;border-top:3px solid var(--column-color, var(--color-border));border-radius:12px 12px 0 0;display:flex;align-items:center;justify-content:space-between}.kanban-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;margin:6px 12px;cursor:grab;transition:all .15s ease;border-left:3px solid var(--card-border-color, var(--color-border))}.kanban-card:active{transform:scale(.98);cursor:grabbing}.kanban-card:hover{box-shadow:0 2px 8px #00000014;border-color:#cbd5e1}.kanban-card .card-progress{height:3px;border-radius:2px;background:var(--color-border);margin-top:8px;overflow:hidden}.kanban-card .card-progress-fill{height:100%;border-radius:2px;transition:width .3s ease}.capacity-bar-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary)}.capacity-bar-value{font-size:14px;font-weight:700;color:var(--color-text-primary)}.avatar-initials{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--color-primary);background:#eff6ff;flex-shrink:0}.profile-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;color:var(--color-text-primary);background:none;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:background .15s}.profile-menu-item:hover{background:var(--color-bg-hover)}.priority-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.priority-dot-high{background:var(--color-error)}.priority-dot-medium{background:var(--color-warning)}.priority-dot-normal{background:var(--color-primary)}.priority-dot-low{background:var(--color-text-muted)}.welcome-banner-gap{background:linear-gradient(135deg,#eff6ff,#dbeafe,#eff6ff)}.welcome-banner-assistant{background:linear-gradient(135deg,#faf5ff,#ede9fe,#faf5ff)}.welcome-banner-workshop{background:linear-gradient(135deg,#f0fdfa,#ccfbf1,#f0fdfa)}.welcome-banner-linear{background:linear-gradient(135deg,#eef2ff,#e0e7ff,#eef2ff)}.welcome-banner-department{background:linear-gradient(135deg,#f0f9ff,#e0f2fe,#f0f9ff)}.grouped-header th{text-align:center!important;border-bottom:2px solid var(--color-border)!important}.grouped-header .group-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:4px 8px}.sticky-first-col .ant-table-cell-fix-left{z-index:2;background:var(--color-bg-card)!important}.sticky-first-col .ant-table-thead .ant-table-cell-fix-left{z-index:3;background:var(--color-bg-card)!important}.sticky-first-col .ant-table-cell-fix-left-last:after{box-shadow:inset 8px 0 8px -8px #0000001a}.sticky-first-col .ant-table-tbody>tr:nth-child(2n)>.ant-table-cell-fix-left{background:var(--color-bg-stripe)!important}.sticky-first-col .ant-table-tbody>tr:hover>.ant-table-cell-fix-left{background:var(--color-bg-hover)!important}.projects-report-table .ant-table-thead>tr>th,.projects-report-table .ant-table-thead>tr>td{font-size:9px!important;line-height:1.1;padding:8px 10px!important;white-space:normal;vertical-align:middle}.projects-report-table .ant-table-tbody>tr>td{font-size:11px!important;line-height:1.25;padding:6px 8px!important;white-space:nowrap;font-variant-numeric:tabular-nums}.projects-report-table .ant-table-cell .ant-tag,.projects-report-table .ant-table-cell .ant-progress-text{font-size:11px!important}.projects-report-table .ant-table-thead .ant-table-column-sorters{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px}.projects-report-table .ant-table-thead .ant-table-column-title{min-width:0}.projects-report-table .projects-table-header-label{display:block;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word;word-break:normal;line-height:1.1}.closed-projects-summary{overflow:hidden}.closed-projects-summary__header{display:flex;align-items:center;padding:8px 16px}.closed-projects-summary__header-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.closed-projects-summary__header-dot,.closed-projects-summary__comparison-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.closed-projects-summary__metrics-grid{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));padding:12px 16px}.closed-projects-summary__metric{min-width:0;padding:8px 8px 10px}.closed-projects-summary__metric-label{font-size:7px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.24px;margin-bottom:4px;white-space:normal;line-height:1.2}.closed-projects-summary__metric-value{font-size:12px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap}.closed-projects-summary__metric-delta{display:inline-flex;align-items:center;gap:2px;font-size:8px;font-weight:700;padding:1px 4px;border-radius:3px;margin-top:4px;white-space:nowrap}.closed-projects-summary__metric:last-child{border-right:none!important}.closed-projects-summary__periods{display:grid;gap:10px;padding:10px 16px 14px;background:var(--color-bg-page)}.closed-projects-summary__period{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;overflow:hidden}.closed-projects-summary__comparison-row{display:grid;padding:10px 12px;align-items:stretch}.closed-projects-summary__comparison-period{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:600;padding-right:8px}.closed-projects-summary__comparison-period--muted{color:var(--color-text-muted)}.closed-projects-summary__comparison-cell{min-width:0;padding:1px 8px;border-left:1px solid var(--color-border);font-variant-numeric:tabular-nums}.closed-projects-summary__comparison-cell-label{font-size:7px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.22px;margin-bottom:2px;white-space:normal;line-height:1.2}.closed-projects-summary__comparison-cell-value{font-size:12px;font-weight:600;color:var(--color-text-primary);white-space:nowrap}.closed-projects-summary__comparison-cell-value--muted{color:var(--color-text-secondary)}.closed-projects-table .ant-table-thead>tr>th,.closed-projects-table .ant-table-thead>tr>td{font-size:7px!important;padding:6px!important;letter-spacing:.22px!important}.closed-projects-table .projects-table-header-label{line-height:1.15}.closed-projects-table .ant-table-tbody>tr>td{font-size:10px!important;padding:4px 6px!important}.closed-projects-table .ant-table-column-sorters{gap:4px!important}.closed-projects-table .ant-table-column-sorter{transform:scale(.82);transform-origin:center}.closed-projects-table .ant-tag,.closed-projects-table .ant-progress-text{font-size:10px!important}.conflict-card-critical{border-left:4px solid var(--color-error)}.conflict-card-high{border-left:4px solid var(--color-warning)}.conflict-card-medium{border-left:4px solid var(--color-primary)}.hint-shift{background:#eff6ff;color:#2563eb}.hint-split{background:#f0fdf4;color:#16a34a}.hint-replace{background:#faf5ff;color:#7c3aed}.settings-matrix .ant-table-thead>tr>th{text-align:center!important;font-size:11px!important}.settings-matrix .ant-table-tbody>tr>td{text-align:center;vertical-align:middle}.search-count{font-size:12px;color:var(--color-text-muted);white-space:nowrap}.ant-table-small .ant-table-tbody>tr:nth-child(2n)>td{background:var(--color-bg-stripe)}.ant-table-small .ant-table-tbody>tr:nth-child(2n):hover>td{background:var(--color-bg-hover)!important}@media(max-width:1400px){.filter-bar{padding:6px 16px;gap:8px}.filter-card{padding:10px 12px}.capacity-bar-value{font-size:13px}}@media(max-width:1200px){.filter-bar{padding:6px 12px;gap:6px}.ant-table-small .ant-table-thead>tr>th,.ant-table-small .ant-table-thead>tr>td{font-size:9px!important;padding:6px 8px!important}.ant-table-small .ant-table-tbody>tr>td{font-size:11px!important;padding:6px 8px!important}.schedule-table .ant-table-cell{padding:3px 4px!important}.closed-projects-summary__metrics-grid,.closed-projects-summary__periods{padding-left:12px;padding-right:12px}.closed-projects-summary__comparison-row{padding:10px 12px}}@media(max-width:768px){.grouped-header .group-label{display:none}.ant-table-small .ant-table-thead>tr>th{font-size:8px!important;padding:4px!important}.ant-table-small .ant-table-tbody>tr>td{font-size:10px!important;padding:4px!important}.filter-card{padding:8px}.projects-kpi-primary-grid,.projects-kpi-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-cards{grid-template-columns:1fr}}@media(max-width:560px){.projects-kpi-primary-grid,.projects-kpi-secondary-grid{grid-template-columns:1fr}}@media(max-width:1024px){.filter-bar .ant-select{min-width:80px!important}.avatar-initials{width:24px;height:24px;font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--layer-nav: 100;--layer-modal-base: 1000;--layer-ai-quick-button: 1400;--layer-ai-drawer: 1600}
