:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#f7f8fa;font-family:Inter,Be Vietnam Pro,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh}#root{position:relative}.ant-dropdown,.ant-select-dropdown,.ant-picker-dropdown,.ant-popover,.ant-tooltip{z-index:5000!important;transition-property:opacity,transform!important}.app-error-fallback{color:#172033;background:#f4f7fb;place-items:center;min-height:100vh;padding:24px;display:grid}.app-error-fallback section{text-align:center;background:#fff;border:1px solid #dfe6ef;border-radius:16px;width:min(520px,100%);padding:32px;box-shadow:0 12px 36px #0f23411a}.app-error-fallback h1{margin:0 0 12px;font-size:24px}.app-error-fallback p{color:#5b667a;margin:0 0 20px}.app-error-fallback button{color:#fff;font:inherit;cursor:pointer;background:#ed1c24;border:0;border-radius:8px;padding:10px 18px}:root{--dovitec-red:#ed1c24;--dovitec-red-dark:#b5121b;--dovitec-gold:#e4c817;--dovitec-gold-warm:#f3d83b;--color-ink:#172033;--color-text-secondary:#667085;--color-bg:#f7f8fa;--color-surface:#fff;--color-border:#e5e7eb;--color-success:#168f63;--color-warning:#d99000;--color-error:#d92d20;--color-info:#2563eb;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-surface:0 1px 2px #1018280a, 0 4px 16px #1018280a;--motion-fast:.16s;--motion-normal:.2s;--content-max-width:1600px}:focus-visible{outline-offset:2px;outline:3px solid #ed1c243d}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.system-status-banner{z-index:3000;border-radius:var(--radius-md);border:1px solid #d92d203d;width:min(720px,100vw - 24px);position:fixed;top:12px;left:50%;transform:translate(-50%);box-shadow:0 14px 36px #10182829}.portfolio-gantt-card{border:1px solid #e3eaf3;margin-top:16px}.portfolio-gantt-card .ant-card-head-title{white-space:normal;min-width:0}.portfolio-gantt-toolbar{background:#f8fafc;border:1px solid #e6ebf2;border-radius:8px;align-items:flex-end;gap:12px;margin:0 0 16px;padding:14px;display:flex}.portfolio-gantt-filter{flex-direction:column;flex:320px;gap:5px;min-width:260px;display:flex}.portfolio-gantt-filter>.ant-select{width:100%}.portfolio-gantt-sort{flex-basis:210px;min-width:180px;max-width:230px}.portfolio-gantt-actions{margin-left:auto}.portfolio-gantt-scroll{border-radius:8px;max-height:720px;position:relative;overflow:auto}.portfolio-gantt{border:1px solid #e6ebf2;border-radius:8px;min-width:1080px;overflow:visible}.portfolio-gantt-header,.portfolio-gantt-row{grid-template-columns:440px minmax(720px,1fr);min-height:48px;display:grid}.portfolio-gantt-header{z-index:8;background:#f5f7fa;min-height:44px;font-weight:600;position:sticky;top:0}.portfolio-project-label{z-index:7;box-sizing:border-box;background:#fff;border-right:1px solid #e6ebf2;position:sticky;left:0;box-shadow:3px 0 7px #0f172a1f}.portfolio-gantt-header>.portfolio-project-label{z-index:11;background:#f5f7fa}.portfolio-group-row>.portfolio-project-label{background:#f8fbff}.portfolio-resizable-label{align-items:center;gap:8px;display:flex;position:relative}.portfolio-column-width{margin-left:auto;font-size:11px;font-weight:400}.portfolio-label-resize-handle{z-index:12;cursor:col-resize;width:9px;position:absolute;top:0;bottom:0;right:-4px}.portfolio-label-resize-handle:after{content:"";background:#91a4bc;border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;right:4px}.portfolio-label-resize-handle:hover:after,body.portfolio-resizing .portfolio-label-resize-handle:after{background:#1677ff;width:3px}body.portfolio-resizing{-webkit-user-select:none;user-select:none;cursor:col-resize!important}.portfolio-gantt-exporting .portfolio-project-label,.portfolio-gantt-exporting .portfolio-gantt-header{position:static}.portfolio-gantt-exporting .portfolio-label-resize-handle,.portfolio-gantt-exporting .portfolio-column-width{display:none}.portfolio-gantt-scroll.portfolio-gantt-export-container{max-height:none;overflow:visible}.portfolio-gantt-header>.portfolio-project-label{padding:11px 14px}.portfolio-axis{display:flex}.portfolio-axis span{text-align:center;white-space:nowrap;border-right:1px solid #e2e8f0;padding:11px 8px}.portfolio-year-axis{align-items:stretch}.portfolio-year-group{text-align:center;border-right:2px solid #b8c5d6;flex-direction:column;min-width:0;display:flex}.portfolio-year-group>strong{color:#1e3a5f;height:25px;padding-top:4px}.portfolio-quarters{flex:1;display:flex}.portfolio-quarters span{color:#52657d;text-align:center;border-top:1px solid #dce3ec;border-right:1px solid #d5deea;padding:4px 0;font-size:11px;font-weight:600}.portfolio-gantt-body{position:relative}.portfolio-gantt-row{border-top:1px solid #edf0f5;min-height:64px}.portfolio-group-row{background:#f8fbff;min-height:55px}.portfolio-tree-label{align-items:center;gap:6px;padding:7px 10px;display:flex;overflow:hidden}.portfolio-expand{flex:0 0 24px;width:24px;padding:0}.portfolio-expand-spacer{flex:0 0 24px}.portfolio-name-button{color:#10233f;text-align:left;cursor:default;background:0 0;border:0;flex-direction:column;flex:1;gap:1px;min-width:0;padding:0;display:flex;overflow:hidden}.portfolio-group-row .portfolio-name-button{cursor:pointer}.portfolio-name-button strong{color:#64748b;font-size:11px}.portfolio-name-button span{overflow-wrap:anywhere;white-space:normal;line-height:1.35;overflow:visible}.portfolio-row-tags{flex:0 auto;min-width:0}.portfolio-row-tags .ant-tag:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.portfolio-row-tags .ant-tag{margin-inline-end:0}.portfolio-track{background-color:#fff;background-image:repeating-linear-gradient(90deg,#0000,#0000 calc(10% - 1px),#eef1f5 10%);position:relative}.portfolio-year-track{background-image:linear-gradient(90deg,#0000 calc(100% - 1px),#e1e8f0 calc(100% - 1px));background-repeat:repeat-x}.portfolio-group-row .portfolio-track{background-color:#f8fbff}.portfolio-project-bar{background:#dceaff;border-radius:6px;min-width:8px;height:25px;position:absolute;top:20px;overflow:hidden;box-shadow:inset 0 0 0 1px #8db9f8}.portfolio-project-bar>span{background:#1677ff;height:100%;display:block}.portfolio-project-bar>em{color:#10233f;font-size:11px;font-style:normal;font-weight:700;position:absolute;top:3px;right:5px}.portfolio-task-bar{background:#e6f4ff;border-radius:4px;height:18px;top:23px}.portfolio-task-bar>span{background:#4096ff}.portfolio-project-bar.late{background:#fff1f0;box-shadow:inset 0 0 0 1px #ff7875}.portfolio-project-bar.late>span{background:#ff4d4f}.portfolio-task-milestone{background:#ffd666;border:2px solid #d48806;width:14px;height:14px;position:absolute;top:25px;transform:rotate(45deg)}.portfolio-task-milestone.late{background:#ff7875;border-color:#cf1322}.portfolio-today{z-index:6;pointer-events:none;background:#f5222d;width:2px;position:absolute;top:0;bottom:0}.portfolio-today span{color:#cf1322;white-space:nowrap;background:#fff1f0;border-radius:4px;padding:1px 5px;font-size:10px;position:sticky;top:45px;left:5px}@media (width<=1100px){.portfolio-gantt-toolbar{flex-wrap:wrap;align-items:stretch}.portfolio-gantt-actions{margin-left:0}}@media (width<=640px){.portfolio-gantt-card .ant-card-head{padding-inline:16px}.portfolio-gantt-card .ant-card-body{padding:16px}.portfolio-gantt-toolbar{grid-template-columns:1fr;padding:12px;display:grid}.portfolio-gantt-filter,.portfolio-gantt-sort{width:100%;min-width:0;max-width:none}.portfolio-gantt-toolbar .ant-segmented{width:100%}.portfolio-gantt-toolbar .ant-segmented-group{display:flex}.portfolio-gantt-toolbar .ant-segmented-item{flex:1}.portfolio-gantt-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.portfolio-gantt-actions .ant-btn:last-child{grid-column:1/-1}.portfolio-gantt-scroll{border-radius:0;margin-inline:-16px}.portfolio-gantt{min-width:820px}.portfolio-gantt-header,.portfolio-gantt-row{grid-template-columns:220px minmax(600px,1fr)!important}.portfolio-project-label{width:220px!important}.portfolio-label-resize-handle,.portfolio-column-width{display:none}.portfolio-tree-label{padding-inline:7px}}.portfolio-cancelled-project{color:#8c8c8c;opacity:.75;text-decoration:line-through}.ds-page-header{margin-bottom:22px}.ds-page-header h2{color:var(--color-ink);letter-spacing:-.025em;margin:3px 0 5px!important}.ds-page-eyebrow{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:750;color:var(--dovitec-red)!important}.ds-page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ds-stat-card{border-color:var(--color-border);height:100%;box-shadow:var(--shadow-surface);position:relative;overflow:hidden}.ds-stat-card:before{content:"";background:#d0d5dd;width:3px;position:absolute;inset:0 auto 0 0}.ds-stat-card--brand:before{background:var(--dovitec-red)}.ds-stat-card--success:before{background:var(--color-success)}.ds-stat-card--warning:before{background:var(--color-warning)}.ds-stat-card--danger:before{background:var(--color-error)}.ds-stat-card--info:before{background:var(--color-info)}.ds-stat-card .ant-statistic-title{color:#667085;font-weight:550}.ds-stat-card .ant-statistic-content{color:var(--color-ink);letter-spacing:-.025em;font-size:28px;font-weight:720}.ds-stat-icon{width:38px;height:38px;color:var(--dovitec-red);background:#fff1f1;border-radius:10px;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.ds-stat-context{margin-top:9px;font-size:12px;display:block}.ds-status-badge{align-items:center;gap:6px;padding:3px 9px;font-weight:600;display:inline-flex}.ds-status-dot{opacity:.8;background:currentColor;border-radius:999px;width:6px;height:6px}.ds-empty-state{padding:32px 16px}.ds-empty-state .ant-empty-description>span{display:block}.ds-empty-state .ant-typography{margin:5px 0 0}@media (width<=768px){.ds-page-header{margin-bottom:16px}.ds-page-header h2{font-size:24px}.ds-stat-card .ant-card-body{padding:14px}.ds-stat-card .ant-statistic-content{font-size:23px}.ds-empty-state{padding:22px 8px}}.executive-dashboard{flex-direction:column;gap:16px;margin-bottom:20px;display:flex}.executive-hero{color:#fff;background:linear-gradient(120deg,#071f3d,#0d4f8b)}.executive-hero .ant-card-body{justify-content:space-between;align-items:center;gap:24px;display:flex}.executive-hero h3,.executive-hero .ant-typography{color:#fff;margin-bottom:4px}.executive-eyebrow{letter-spacing:.12em;font-size:12px;font-weight:700;color:#91caff!important}.executive-score-tag{white-space:nowrap;border-radius:999px;padding:9px 14px;font-size:16px}.executive-project-link{text-align:left;height:auto;padding:0;font-weight:600}.executive-project-meta{font-size:12px}.executive-progress-cell{min-width:180px}.executive-progress-cell>.ant-typography{font-size:12px}.executive-value-card,.executive-value-card>.ant-card-body{height:100%}.executive-value-card>.ant-card-body{flex-direction:column;gap:18px;display:flex}.executive-value-item>div:first-child{justify-content:space-between;gap:12px;display:flex}.executive-value-item .ant-typography-secondary{font-size:12px}.executive-decision-list{flex-direction:column;display:flex}.executive-decision-item{border-bottom:1px solid #05050514;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.executive-decision-item:last-child{border-bottom:0}.executive-decision-item .ant-btn-link{height:auto;padding:0;font-weight:600}.executive-decision-impact{white-space:nowrap;grid-template-columns:auto auto auto;align-items:center;gap:10px;display:grid}.executive-capacity-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;display:grid}.executive-capacity-grid>div{background:#f5f8fc;border:1px solid #e6eef8;border-radius:10px;flex-direction:column;padding:14px;display:flex}.executive-capacity-grid strong{color:#0b3768;font-size:24px}@media (width<=767px){.executive-hero .ant-card-body{flex-direction:column;align-items:flex-start}.executive-hero h3{font-size:22px}.executive-score-tag{padding:6px 10px;font-size:13px}.executive-decision-item{flex-direction:column;align-items:flex-start}.executive-decision-impact{white-space:normal;grid-template-columns:1fr auto auto;width:100%}.executive-capacity-grid{grid-template-columns:1fr}.executive-progress-cell{min-width:140px}}.app-shell{background:var(--color-bg);min-height:100vh}.sidebar{border-right:1px solid var(--color-border);z-index:100;height:100vh;top:0;box-shadow:2px 0 12px #10182808;background:var(--color-surface)!important;position:sticky!important}.sidebar .ant-layout-sider-children{flex-direction:column;height:100%;display:flex;overflow:hidden}.brand{min-height:76px;color:var(--color-ink);border-bottom:1px solid var(--color-border);flex:none;align-items:center;gap:12px;padding:0 18px;display:flex}.brand-mark{background:#fff;border-radius:11px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid;overflow:hidden;box-shadow:0 0 0 1px #ed1c241a}.brand-logo{object-fit:contain;width:100%;height:100%;display:block}.brand-name{letter-spacing:-.2px;white-space:nowrap;font-size:16px;font-weight:750}.brand-caption{color:var(--color-text-secondary);white-space:nowrap;margin-top:2px;font-size:11px}.sidebar.ant-layout-sider-collapsed .brand{padding-inline:17px}.sidebar.ant-layout-sider-collapsed .brand>div:last-child{display:none}.sidebar .ant-menu{background:0 0;flex:1;padding:10px 6px 88px;overflow:hidden auto;border-inline-end:0!important}.sidebar .ant-menu-item-group-title{letter-spacing:.08em;font-size:10px;font-weight:700;line-height:1.2;color:#98a2b3!important;padding:16px 16px 6px!important}.sidebar.ant-layout-sider-collapsed .ant-menu-item-group-title{display:none}.sidebar .ant-menu-item{color:#475467;transition:color var(--motion-fast), background var(--motion-fast);margin-block:3px;font-weight:550;position:relative}.sidebar .ant-menu-item:hover{color:var(--dovitec-red)!important;background:#fff7f7!important}.sidebar .ant-menu-item-selected{font-weight:700;color:var(--dovitec-red-dark)!important;background:#fff1f1!important}.sidebar .ant-menu-item-selected:before{content:"";background:var(--dovitec-red);border-radius:0 4px 4px 0;width:3px;position:absolute;top:9px;bottom:9px;left:0}.sidebar .ant-menu-item .anticon{font-size:17px}.ecosystem-link{border:1px solid var(--color-border);border-radius:var(--radius-md);color:#475467;min-height:44px;box-shadow:var(--shadow-surface);transition:border-color var(--motion-fast), color var(--motion-fast);background:#fff;align-items:center;gap:10px;padding:10px 13px;font-size:13px;font-weight:600;display:flex;position:absolute;bottom:14px;left:12px;right:12px}.ecosystem-link:hover{color:var(--dovitec-red);border-color:#ed1c2459}.sidebar.ant-layout-sider-collapsed .ecosystem-link{justify-content:center;padding-inline:0}.sidebar.ant-layout-sider-collapsed .ecosystem-link span{display:none}.environment-badge{color:#83a4cc;letter-spacing:1.4px;text-align:center;font-size:10px;position:absolute;bottom:20px;left:20px;right:20px}.sidebar .ant-layout-sider-trigger{justify-content:center;align-items:center;display:flex;background:0 0!important;border-radius:0!important;width:36px!important;height:100vh!important;padding:0!important;top:0!important;bottom:0!important}.sidebar .ant-layout-sider-trigger:before,.sidebar .ant-layout-sider-trigger:after{top:50%!important;transform:translateY(-50%)!important}.sider-toggle{z-index:1200;justify-content:center;align-items:center;width:36px;height:100vh;transition:left .2s;display:flex;position:fixed;top:0}.sider-toggle .toggle-button{color:#667085;border:1px solid var(--color-border);background:#fff;border-radius:0 9px 9px 0;justify-content:center;align-items:center;width:30px;height:40px;display:flex;box-shadow:2px 2px 8px #1018280f}@media (width<=768px){.sider-toggle{width:32px}.sider-toggle .toggle-button{height:40px}}.topbar{z-index:90;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);background:#fffffff5;grid-template-columns:minmax(180px,1fr) minmax(260px,420px) minmax(220px,1fr);align-items:center;gap:20px;height:68px;padding:0 28px;display:grid;position:sticky;top:0}.topbar-breadcrumb{min-width:0}.global-search-trigger{color:#667085;border-color:var(--color-border);box-shadow:none;background:#fafafa;justify-content:flex-start}.global-search-trigger>span:nth-child(2){text-align:left;flex:1}kbd{color:#667085;background:#fff;border:1px solid #d0d5dd;border-bottom-width:2px;border-radius:6px;justify-content:center;align-items:center;min-width:24px;min-height:22px;padding:1px 6px;font-family:inherit;font-size:11px;line-height:1.2;display:inline-flex}.topbar-actions{justify-self:end}.topbar-actions>.ant-btn{min-width:40px}.user-menu-trigger{align-items:center;gap:9px;height:52px;display:flex;padding:5px 8px!important}.avatar{background:var(--dovitec-red);color:#fff;font-weight:700}.user-identity{flex-direction:column;align-items:flex-start;max-width:160px;line-height:1.25;display:flex}.user-identity strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;overflow:hidden}.user-identity small{color:var(--color-text-secondary);font-size:11px}.content{max-width:var(--content-max-width);width:100%;margin:0 auto;padding:30px clamp(20px,3vw,44px) 48px}.page-heading{padding-bottom:4px}.page-heading h2{color:var(--color-ink);letter-spacing:-.025em;margin:0 0 6px}.page-heading .ant-typography-secondary{font-size:14px}.content>.ant-spin-nested-loading>.ant-spin-container>.ant-card,.content>.ant-card{border-color:var(--color-border);box-shadow:var(--shadow-surface)}.ant-card{box-shadow:var(--shadow-surface)}.ant-card .ant-card-head{border-bottom-color:#f0f1f3}.ant-table-wrapper .ant-table-container{border-radius:var(--radius-md)}.ant-table-wrapper .ant-table-thead>tr>th{letter-spacing:.015em;font-size:12px}.ant-btn{transition:color var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast)}.ant-btn-primary:hover{transform:translateY(-1px)}.command-palette .ant-modal-body{padding-top:8px}.command-results{max-height:360px;margin-top:10px;overflow-y:auto}.command-results .ant-list-item{border:0;padding:2px 0}.command-results .ant-btn{text-align:left;justify-content:space-between;min-height:44px;display:flex}.summary-row,.overview-dashboard-row{margin:24px 0}.overview-card{border:1px solid #e3eaf3;box-shadow:0 2px 8px #10233f0d}.health-metrics,.utilization-summary{gap:16px;margin-top:16px;display:grid}.overview-metric-item{cursor:pointer;border:1px solid #0000;border-radius:12px;padding:14px;transition:background .18s,border .18s}.overview-metric-item:hover{background:#52b9810d;border-color:#52b98126}.health-metric-row,.utilization-metric-row{gap:8px;display:grid}.health-metric-label,.utilization-metric-label{justify-content:space-between;align-items:center;gap:14px;margin-bottom:6px;display:flex}.health-summary{border-top:1px solid #f0f3f7;padding-top:10px}.detail-panel{padding:18px 0 0}.utilization-summary__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.utilization-summary__header div{flex-direction:column;gap:4px;display:flex}.utilization-summary__value{color:#10233f;font-size:28px;font-weight:700}.donut-chart-wrapper{justify-content:center;align-items:center;display:flex}.donut-chart{background:conic-gradient(#52c41a 0 50%, #00000014 0 100%);border-radius:50%;place-items:center;width:96px;height:96px;display:grid;position:relative}.donut-center{color:#10233f;background:#fff;border-radius:50%;place-items:center;width:60px;height:60px;font-weight:700;display:grid;box-shadow:inset 0 0 0 6px #ffffffe6}.resource-subtitle{color:#7f8fa4;font-size:12px}.utilization-metric-row .ant-progress{width:100%}.summary-row .ant-card{border:1px solid #e3eaf3;box-shadow:0 2px 8px #10233f08}.summary-row .ant-statistic-title{font-size:13px}.project-table-card{border:1px solid #e3eaf3;box-shadow:0 4px 18px #10233f0a}.project-table-card .ant-card-head-title{color:#10233f}.project-table-card .ant-card-head{align-items:flex-start;padding-block:16px}.project-filter-bar .ant-input-affix-wrapper{width:min(280px,30vw)}.project-filter-bar .ant-select{width:180px}.project-code{color:#1769e0}.row-subtitle{font-size:11px}.create-form{margin-top:22px}.full-width{width:100%}.clickable-row{cursor:pointer}.clickable-row:hover td{background:#f0f6ff!important}.manager-select{width:100%;min-width:260px}.team-editor{margin-bottom:14px}.team-resource-select{flex:1;min-width:240px}.issue-heading{margin-bottom:8px}.module-card{margin-top:24px}.module-placeholder{place-items:center;min-height:420px;margin-top:24px;display:grid}.session-loading{color:#64748b;place-items:center;min-height:100vh;display:grid}@media (width<=991px){.sidebar{z-index:1000;inset:0 auto 0 0;box-shadow:8px 0 30px #1018282e;position:fixed!important}.topbar{grid-template-columns:1fr auto;gap:8px;padding:0 16px 0 42px}.topbar-breadcrumb{display:none}.global-search-trigger{justify-content:center;width:40px;min-width:40px;padding-inline:0}.global-search-trigger span:not(.anticon),.global-search-trigger kbd,.user-identity,.user-menu-trigger>.anticon:last-child{display:none}}@media (width<=768px){.app-shell>.ant-layout{min-width:0}.topbar{height:58px;padding-right:8px}.topbar-actions{gap:0!important}.topbar-actions>.ant-btn,.user-menu-trigger{width:38px;min-width:38px;padding-inline:4px!important}.content{min-width:0;padding:14px 10px 32px;overflow-x:hidden}.page-heading{margin-bottom:16px}.page-heading h2{font-size:24px}.page-heading,.ds-page-header{flex-direction:column;align-items:flex-start!important}.page-heading>*,.ds-page-header>*{width:100%;min-width:0}.page-heading .ant-btn,.ds-page-actions .ant-btn{min-height:40px}.ds-page-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.ds-page-actions>*{width:100%}.ds-page-actions>:only-child,.ds-page-actions>:last-child:nth-child(odd){grid-column:1/-1}.summary-row{margin:16px 0}.summary-row .ant-card-body{padding:14px}.summary-row .ant-statistic-content{font-size:22px}.ant-card{border-radius:10px}.ant-card .ant-card-head{min-height:48px;padding-inline:14px}.ant-card .ant-card-head-wrapper{flex-direction:column;align-items:flex-start;gap:10px;padding-block:10px}.ant-card .ant-card-head-title,.ant-card .ant-card-extra{white-space:normal;width:100%;min-width:0}.ant-card .ant-card-body{padding:14px}.ant-card .ant-card-extra>.ant-space{flex-wrap:wrap;width:100%;display:flex}.ant-modal{max-width:calc(100vw - 16px);padding-bottom:10px;top:10px;width:calc(100vw - 16px)!important}.ant-modal .ant-modal-content{border-radius:12px;padding:16px 14px}.ant-modal .ant-modal-header{margin-bottom:14px;padding-right:28px}.ant-modal .ant-modal-body{overscroll-behavior:contain;max-height:calc(100dvh - 150px);overflow:auto}.ant-modal .ant-modal-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ant-modal .ant-modal-footer .ant-btn{width:100%;min-height:42px;margin-inline-start:0!important}.ant-modal .ant-form .ant-col-4,.ant-modal .ant-form .ant-col-6,.ant-modal .ant-form .ant-col-8,.ant-modal .ant-form .ant-col-10,.ant-modal .ant-form .ant-col-12,.ant-modal .ant-form .ant-col-14,.ant-modal .ant-form .ant-col-16,.ant-modal .ant-form .ant-col-18,.ant-modal .ant-form .ant-col-20{flex:0 0 100%;max-width:100%}.ant-drawer-content-wrapper{width:100%!important}.ant-drawer .ant-drawer-header{padding:14px 16px}.ant-drawer .ant-drawer-body{padding:14px;overflow-x:hidden}.ant-drawer .ant-descriptions-view{overflow-x:auto}.ant-drawer .ant-descriptions-row{flex-direction:column;display:flex}.ant-drawer .ant-descriptions-item-label,.ant-drawer .ant-descriptions-item-content{width:100%}.content .ant-space{max-width:100%}.content .ant-space-item{min-width:0}.content .ant-input-search,.content .ant-picker,.content .ant-select,.content .ant-input-number,.content .ant-segmented{max-width:100%}.content .ant-flex{min-width:0}.content .ant-card-body>.ant-flex:has(>.ant-space-wrap){flex-direction:column;align-items:stretch!important}.content .ant-card-body>.ant-flex>.ant-space-wrap{width:100%;display:flex}.content .ant-card-body>.ant-flex>.ant-space-wrap>.ant-space-item{flex:220px}.content .ant-card-body>.ant-flex>.ant-space-wrap .ant-input-search,.content .ant-card-body>.ant-flex>.ant-space-wrap .ant-select{width:100%!important}.content .ant-tabs-nav{margin-bottom:12px}.content .ant-tabs-nav-wrap,.content .ant-segmented{overflow-x:auto}.content .ant-segmented-group{min-width:max-content}.ant-table-wrapper{max-width:100%;overflow:hidden}.ant-table-wrapper .ant-table-content,.ant-table-wrapper .ant-table-body{overscroll-behavior-inline:contain;scrollbar-width:thin;overflow-x:auto!important}.ant-table-wrapper .ant-table-cell{overflow-wrap:anywhere}.ant-table-wrapper .ant-pagination{justify-content:center;gap:4px}.ant-table-wrapper .ant-pagination-options,.ant-table-wrapper .ant-table-sticky-scroll{display:none}.ant-list .ant-list-item-action{margin-inline-start:0}.ant-alert{padding:10px 12px}.ant-checkbox-wrapper{white-space:normal;align-items:flex-start}.ant-checkbox-wrapper .ant-typography{overflow-wrap:anywhere}.ant-statistic-content{font-size:22px!important}.manager-select,.team-resource-select{width:100%;min-width:0}.team-editor>.ant-space{grid-template-columns:1fr;width:100%;display:grid}.team-editor .ant-btn{width:100%}.project-table-card .ant-card-head{flex-direction:column;gap:12px}.project-table-card .ant-card-extra,.project-filter-bar,.project-filter-bar .ant-input-affix-wrapper,.project-filter-bar .ant-select{width:100%}.project-filter-bar{grid-template-columns:1fr;display:grid}.project-filter-bar>*,.parent-report-heading .ant-select{width:100%!important}.parent-wbs-report-card .ant-card-body{padding-inline:12px}.parent-wbs-report-card .ant-table-wrapper{max-width:calc(100% + 24px);margin-inline:-12px}}@media (width<=420px){.content{padding-inline:8px}.page-heading h2,.ds-page-header h2{font-size:22px!important}.ds-page-actions{grid-template-columns:1fr}.ds-page-actions>*{grid-column:1!important}.ant-card .ant-card-body{padding:12px}.ant-btn{max-width:100%}}.project-cancelled-row{background:#fafafa}.project-cancelled-row .row-subtitle{opacity:.65}.login-page{background:radial-gradient(circle at 12% 15%,#ed1c2414,#0000 34%),linear-gradient(145deg,#fff 0%,#f7f8fa 56%,#f2f4f7 100%);grid-template-columns:minmax(360px,1fr) minmax(430px,560px);align-items:center;gap:clamp(44px,7vw,120px);min-height:100vh;padding:clamp(28px,6vw,96px);display:grid}.login-intro{max-width:620px;padding-left:clamp(0px,3vw,40px)}.login-intro__brand{color:var(--dovitec-red);letter-spacing:.12em;align-items:center;gap:12px;margin-bottom:42px;font-size:13px;display:flex}.login-intro__brand .brand-mark{flex-basis:48px;width:48px;height:48px}.login-intro h1{color:var(--color-ink);letter-spacing:-.045em;margin:0 0 20px;font-size:clamp(42px,5vw,68px);line-height:1.08}.login-intro p{color:#667085;max-width:560px;font-size:18px;line-height:1.65}.login-intro__footer{color:#667085;align-items:center;gap:10px;margin-top:48px;font-size:13px;display:flex}.login-intro__footer span{background:var(--dovitec-gold);border-radius:999px;width:28px;height:3px}.login-card{border:1px solid var(--color-border);border-radius:20px;justify-self:center;width:min(480px,100%);box-shadow:0 24px 70px #1018281f}.login-card .ant-card-body{padding:38px}.login-brand{align-items:center;gap:12px;margin-bottom:32px;display:flex}.login-brand h3{margin:0}.login-hint{text-align:center;margin:18px 0 0;font-size:12px}.account-mobile-list,.my-work-mobile{display:none}.my-work-heading{margin-bottom:18px}.my-work-heading .ant-typography{margin-bottom:0}.my-work-eyebrow{color:var(--dovitec-red);letter-spacing:.11em;margin-bottom:5px;font-size:12px;font-weight:800;display:block}.my-work-heading .ant-segmented{border:1px solid var(--color-border);box-shadow:var(--shadow-surface);background:#fff;padding:4px}.my-work-heading .ant-segmented-item{min-height:36px;padding-inline:8px}.my-work-workflow-card{border-radius:var(--radius-md);background:linear-gradient(135deg,#f5faff 0%,#fff 70%);border:1px solid #d6e4ff;margin-bottom:16px;overflow:hidden}.my-work-workflow-card summary{cursor:pointer;justify-content:space-between;align-items:center;padding:12px 16px;font-weight:700;list-style:none;display:flex}.my-work-workflow-card summary::-webkit-details-marker{display:none}.my-work-workflow-card[open] summary{border-bottom:1px solid #d6e4ff}.my-work-workflow{align-items:stretch;gap:10px;display:flex}.my-work-workflow-card .my-work-workflow{padding:14px}.my-work-step{background:#fff;border:1px solid #d6e4ff;border-radius:8px;flex-direction:column;flex:1 1 0;gap:4px;min-width:0;padding:12px;display:flex}.my-work-arrow{color:#1677ff;flex:none;align-self:center}.my-work-status-alert{margin-bottom:12px}.my-work-summary{margin-bottom:16px}.my-work-summary .ant-card{border:1px solid var(--color-border);border-radius:var(--radius-md);height:100%;box-shadow:var(--shadow-surface)}.my-work-summary .ant-statistic-title{font-size:14px}.my-work-summary .ant-statistic-content{font-weight:750}.my-work-awaiting-card{background:#fffbe6;border-color:#ffd666}.my-work-rework-card{background:#fff2f0;border-color:#ffccc7}.my-work-toolbar-card{z-index:8;border-radius:var(--radius-md);margin-bottom:16px;position:sticky;top:72px;box-shadow:0 10px 30px #10182814}.my-work-toolbar-card .ant-card-body{justify-content:space-between;align-items:center;gap:16px;display:flex}.my-work-toolbar{flex:1;grid-template-columns:minmax(260px,1.4fr) minmax(240px,1fr) minmax(320px,1.2fr);gap:10px;display:grid}.my-work-toolbar .ant-input-affix-wrapper,.my-work-toolbar .ant-select-selector{min-height:40px}.my-work-focus{gap:16px;display:grid}.my-work-focus-hero{border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);background:radial-gradient(circle at 92% 20%,#e4c81738,#0000 28%),linear-gradient(120deg,#fff 0%,#f5f8ff 72%);border:1px solid #d6e4ff;overflow:hidden}.my-work-focus-hero .ant-card-body{justify-content:space-between;align-items:center;gap:30px;padding:24px 28px;display:flex}.my-work-focus-hero h3.ant-typography{margin:2px 0 6px}.my-work-focus-hero .ant-typography-secondary{font-size:15px}.my-work-focus-score{text-align:center;background:#ffffffd1;border:1px solid #ed1c2424;border-radius:16px;min-width:142px;padding:16px;display:grid;box-shadow:0 8px 24px #10182812}.my-work-focus-score strong{color:var(--dovitec-red);font-size:30px;line-height:1.1}.my-work-focus-score span{color:var(--color-text-secondary);margin-top:4px;font-size:12px}.my-work-focus-lane{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);background:#f7f9fc;overflow:hidden}.my-work-focus-lane>header{background:#fff;border-left:5px solid #2563eb;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;display:flex}.my-work-focus-lane.is-danger>header{border-left-color:var(--color-error)}.my-work-focus-lane.is-warning>header{border-left-color:var(--color-warning)}.my-work-focus-lane.is-review>header{border-left-color:var(--dovitec-gold)}.my-work-focus-lane.is-done>header{border-left-color:var(--color-success)}.my-work-focus-lane-title{align-items:center;gap:12px;display:flex}.my-work-focus-lane-title h4.ant-typography{margin:0;font-size:17px}.my-work-focus-icon{color:#2563eb;background:#eef4ff;border-radius:10px;place-items:center;width:36px;height:36px;font-size:17px;display:grid}.is-danger .my-work-focus-icon{color:var(--color-error);background:#fff1f0}.is-warning .my-work-focus-icon{color:var(--color-warning);background:#fff8e6}.is-review .my-work-focus-icon{color:#a87900;background:#fffbe6}.is-done .my-work-focus-icon{color:var(--color-success);background:#ecfdf3}.my-work-focus-cards{scroll-snap-type:x proximity;scrollbar-color:#cbd5e1 transparent;grid-auto-columns:minmax(300px,350px);grid-auto-flow:column;gap:12px;padding:12px;display:grid;overflow-x:auto}.my-work-focus-cards>.my-work-task-family{scroll-snap-align:start;align-self:start}.my-work-focus-empty{color:var(--color-text-secondary);text-align:center;padding:28px}.my-work-focus-all-clear{border-radius:var(--radius-lg);background:#f3fbf7;border:1px dashed #b7dfce}.my-work-project-groups{gap:18px;display:grid}.my-work-project-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-surface);overflow:hidden}.my-work-project-card>.ant-card-head{background:linear-gradient(90deg,#fff 0%,#fafbff 100%);min-height:72px}.my-work-project-card>.ant-card-body{padding:0}.my-work-project-title,.my-work-project-cell,.my-work-kanban-project{align-items:center;gap:10px;min-width:0;display:flex}.my-work-project-title .ant-typography{margin:0;display:block}.my-work-project-title h4.ant-typography{margin-top:2px;font-size:18px}.my-work-project-mark{border-radius:999px;flex:none;width:6px;height:42px}.my-work-project-dot{border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 0 3px #2563eb1a}.my-work-list-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-surface)}.my-work-tree-table .my-work-awaiting-row>td{background:#fffbe6!important}.my-work-tree-table .my-work-rework-row>td{background:#fff2f0!important}.my-work-tree-table .ant-table-cell{vertical-align:top}.my-work-tree-table .ant-table-thead>tr>th{color:#344054;text-transform:uppercase;letter-spacing:.035em;background:#f8fafc;font-size:13px}.my-work-progress-cell{width:100%}.my-work-progress-cell .ant-progress{margin:0}.my-work-kanban-guide{border-radius:var(--radius-md);margin-bottom:12px}.my-work-kanban-guide-content{flex-wrap:wrap;gap:8px 24px;margin-top:4px;display:flex}.my-work-kanban-guide-content span{flex:240px;line-height:1.55}.my-work-kanban{grid-template-columns:repeat(var(--kanban-columns,5),minmax(300px,1fr));scrollbar-color:#cbd5e1 transparent;gap:12px;padding:2px 2px 14px;display:grid;overflow-x:auto}.my-work-kanban-column{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#f6f8fb;min-height:480px;overflow:hidden}.my-work-kanban-column>header{background:#fff;border-top:4px solid #98a2b3;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px 14px 12px;display:flex}.my-work-kanban-column>header>div{gap:2px;display:grid}.my-work-kanban-column>header strong{font-size:15px}.my-work-kanban-column>header .ant-typography{font-size:12px}.my-work-kanban-column.is-active>header{border-top-color:#2563eb}.my-work-kanban-column.is-review>header{border-top-color:#d99000}.my-work-kanban-column.is-hold>header{border-top-color:#f97316}.my-work-kanban-column.is-done>header{border-top-color:#168f63}.my-work-kanban-stack{align-content:start;gap:10px;padding:10px;display:grid}.my-work-task-family{background:#fff;border:1px solid #dce3ee;border-radius:14px;overflow:hidden;box-shadow:0 4px 16px #0f172a0f}.my-work-task-family>header{background:linear-gradient(145deg,#fff 0%,#f7f9fd 100%);gap:7px;padding:12px;display:grid}.my-work-task-family>header h5.ant-typography{color:var(--color-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:15px;line-height:1.4;display:-webkit-box;overflow:hidden}.my-work-task-family-project{min-width:0;color:var(--color-text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.my-work-task-family-project span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.my-work-task-family-label{width:max-content;color:var(--dovitec-red-dark);letter-spacing:.08em;background:#fff1f0;border:1px solid #ed1c242e;border-radius:6px;padding:3px 7px;font-size:10px;font-weight:800}.my-work-task-family-action{border-top:1px solid #e8edf4;padding-top:7px}.my-work-task-family-action .ant-btn{white-space:normal;height:auto;min-height:34px}.my-work-task-family-children{background:#f3f6fa;border-top:1px solid #e8edf4}.my-work-task-family-children>summary{cursor:pointer;color:#475467;letter-spacing:.035em;text-transform:uppercase;transition:background var(--motion-fast);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:11px;font-weight:800;list-style:none;display:flex}.my-work-task-family-children>summary::-webkit-details-marker{display:none}.my-work-task-family-children>summary:hover{background:#eaf0f7}.my-work-task-family-children>summary:after{content:"›";color:#667085;transition:transform var(--motion-fast);margin-left:auto;font-size:20px;font-weight:400;line-height:1;transform:rotate(90deg)}.my-work-task-family-children[open]>summary:after{transform:rotate(-90deg)}.my-work-task-family-children>summary .ant-tag{margin-inline-end:0;margin-left:4px;font-size:11px}.my-work-task-family-children-list{gap:8px;padding:0 10px 10px;display:grid}.my-work-task-family-note{color:var(--color-text-secondary);text-align:center;background:#f8fafc;border-top:1px solid #e8edf4;padding:12px;font-size:12px}.my-work-kanban-card{transition:transform var(--motion-fast),box-shadow var(--motion-fast),border-color var(--motion-fast);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 3px 12px #0f172a0d}.my-work-kanban-card.is-grouped{border-color:#d9e1eb;box-shadow:0 2px 8px #0f172a0a}.my-work-kanban-card:hover{border-color:#b8c5d8;transform:translateY(-2px);box-shadow:0 10px 24px #0f172a1a}.my-work-kanban-card.is-overdue{border-left:4px solid var(--color-error)}.my-work-kanban-card .ant-card-body{gap:9px;padding:14px;display:grid}.my-work-kanban-card h5.ant-typography{color:var(--color-ink);margin:0;font-size:15px;line-height:1.45}.my-work-kanban-project{color:var(--color-text-secondary);font-size:12px}.my-work-kanban-project .ant-typography{max-width:220px;color:inherit;font-size:inherit}.my-work-kanban-code{color:#475467;letter-spacing:.04em;font-size:12px;font-weight:750}.my-work-kanban-date{justify-content:space-between;align-items:center;gap:8px;padding-top:2px;display:flex}.my-work-kanban-actions{border-top:1px solid #eef2f6;gap:4px;padding-top:10px;display:grid}.my-work-kanban-actions .ant-btn{white-space:normal;height:auto;min-height:36px}.my-work-kanban-locked{text-align:center;padding:8px;display:block}.my-work-modal-note{margin-bottom:16px}@media (width<=1200px){.my-work-toolbar-card .ant-card-body{flex-direction:column;align-items:stretch}.my-work-toolbar{grid-template-columns:1fr 1fr}.my-work-toolbar .ant-segmented{grid-column:1/-1}}@media (width<=768px){.login-page{grid-template-columns:1fr;padding:20px;display:grid}.login-intro{display:none}.login-card{width:min(460px,100%)}.account-desktop-table,.my-work-desktop{display:none}.account-mobile-list,.my-work-mobile{display:block}.login-card .ant-card-body{padding:28px 24px}.mobile-task-card{margin-bottom:12px}.mobile-task-card .ant-progress{margin-top:8px}.my-work-workflow{flex-direction:column}.my-work-arrow{transform:rotate(90deg)}.my-work-heading{align-items:stretch!important}.my-work-heading .ant-segmented{width:100%}.my-work-heading .ant-segmented-group{overflow-x:auto}.my-work-toolbar-card{position:static}.my-work-toolbar{grid-template-columns:1fr}.my-work-toolbar .ant-segmented{grid-column:auto;overflow-x:auto}.my-work-toolbar .ant-segmented-group{min-width:max-content}.my-work-focus-hero .ant-card-body{flex-direction:column;align-items:stretch;padding:20px}.my-work-focus-score{min-width:0}.my-work-focus-lane>header{align-items:flex-start}.my-work-focus-cards{grid-auto-columns:minmax(82vw,1fr)}.my-work-project-card>.ant-card-head{padding:12px 14px}.my-work-project-card>.ant-card-head .ant-card-head-wrapper{flex-direction:column;align-items:flex-start;gap:10px}.my-work-project-card>.ant-card-head .ant-card-extra{margin-inline-start:0}.my-work-kanban-guide-content{gap:8px;display:grid}.my-work-kanban{grid-template-columns:repeat(var(--kanban-columns,5),minmax(84vw,1fr));scroll-snap-type:x mandatory}.my-work-kanban-column{scroll-snap-align:start;min-height:420px}.mobile-task-card .ant-card-head-wrapper{align-items:flex-start}.mobile-task-card .ant-card-extra{width:100%}.mobile-task-card .ant-card-extra .ant-space{grid-template-columns:1fr;width:100%;display:grid}.mobile-task-card .ant-card-extra .ant-btn{width:100%}.my-work-mobile .ant-segmented{width:100%;overflow-x:auto}.my-work-mobile .ant-segmented-group{min-width:max-content}.account-mobile-list .ant-list-item{padding-inline:0}.account-mobile-list .mobile-task-card{width:100%}}
