.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}:root{--color-canvas: #F7F8FA;--color-surface: #FFFFFF;--color-surface-subtle: #F1F3F5;--color-ink: #181D26;--color-ink-muted: #667085;--color-ink-subtle: #9297A0;--color-border: #DDE1E7;--color-border-subtle: #EAECF0;--color-action: #181D26;--color-accent: #2F6BFF;--color-success: #16A36A;--color-warning: #F59E0B;--color-danger: #E5484D;--color-info: #1B61C9;--color-success-ink: #0F7A4F;--color-warning-ink: #8A4B00;--color-danger-ink: #C9353B;--color-pale-blue: #EEF4FF;--color-pale-red: #FFF1F1;--color-pale-amber: #FFF7E6;--color-pale-green: #ECFDF3;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--font-size-caption: 12px;--font-size-secondary: 13px;--font-size-body: 14px;--font-size-section: 16px;--font-size-page-title: 20px;--font-size-metric: 24px;--font-size-hero-metric: 28px;--line-height-caption: 18px;--line-height-body: 22px;--line-height-section: 24px;--line-height-title: 28px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{background:var(--color-canvas);color:var(--color-ink);font-size:var(--font-size-body);line-height:var(--line-height-body);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font:inherit}.number-mono,.tabular-number{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ddms-shell{min-height:100vh;background:var(--color-canvas)}.ddms-sidebar{position:fixed!important;inset:0 auto 0 0;z-index:100;background:var(--color-surface)!important;border-right:1px solid var(--color-border-subtle)}.ddms-brand{display:flex;align-items:center;height:64px;padding:0 16px;border-bottom:1px solid var(--color-border-subtle);-webkit-user-select:none;user-select:none}.ddms-brand-collapsed{justify-content:center;padding:0}.ddms-brand-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:var(--color-ink);color:#fff;font-size:13px;font-weight:700;letter-spacing:-.02em}.ddms-brand-copy{min-width:0;margin-left:10px}.ddms-brand-name{display:block;color:var(--color-ink);font-size:14px;font-weight:650;letter-spacing:.01em}.ddms-brand-subtitle{display:block;margin-top:1px;color:var(--color-ink-subtle);font-size:10px}.ddms-sidebar-menu{padding-top:12px;border-inline-end:0!important;background:transparent!important}.ddms-sidebar .ant-layout-sider-trigger{color:var(--color-ink-muted)!important;background:var(--color-surface)!important;border-top:1px solid var(--color-border-subtle)}.ddms-sidebar .ant-layout-sider-trigger:hover{color:var(--color-ink)!important;background:var(--color-surface-subtle)!important}.ddms-main{min-width:0;background:var(--color-canvas)!important;transition:margin .2s ease}.ddms-topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;height:56px;gap:12px;padding:0 24px;background:#fffffff0;border-bottom:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.ddms-topbar-spacer{flex:1}.ddms-user-trigger{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:3px 8px 3px 4px;border-radius:999px;cursor:pointer;transition:background .16s ease}.ddms-user-trigger:hover{background:var(--color-surface-subtle)}.ddms-user-name{color:var(--color-ink);font-size:13px}.ddms-content{min-height:calc(100vh - 56px);padding:24px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.page-eyebrow{margin-bottom:4px;color:var(--color-ink-subtle);font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.page-title{color:var(--color-ink);font-size:20px;font-weight:650;line-height:28px;letter-spacing:-.01em}.page-description{max-width:680px;margin-top:4px;color:var(--color-ink-muted);font-size:13px;line-height:20px}.surface-card{background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.section-heading{color:var(--color-ink);font-size:14px;font-weight:600;line-height:22px}.section-caption{color:var(--color-ink-muted);font-size:12px}.tone-blue{--tone-pale: var(--color-pale-blue);--tone-fg: var(--color-accent)}.tone-green{--tone-pale: var(--color-pale-green);--tone-fg: var(--color-success)}.tone-amber{--tone-pale: var(--color-pale-amber);--tone-fg: var(--color-warning)}.tone-red{--tone-pale: var(--color-pale-red);--tone-fg: var(--color-danger)}.dashboard-page,.project-page{max-width:1600px;margin:0 auto}.dashboard-toolbar,.project-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dashboard-kpi{position:relative;min-width:0;padding:16px;overflow:hidden;background:var(--color-surface)}.dashboard-kpi-label{display:flex;align-items:center;gap:7px;color:var(--color-ink-muted);font-size:12px;line-height:18px}.dashboard-kpi-label:before{content:"";width:8px;height:8px;flex:0 0 8px;border-radius:999px;background:var(--tone-fg, var(--color-accent))}.dashboard-kpi-value-row{display:flex;align-items:baseline;gap:4px;margin-top:9px}.dashboard-kpi-value{color:var(--color-ink);font-size:28px;font-weight:650;line-height:34px;font-variant-numeric:tabular-nums}.dashboard-kpi-unit,.dashboard-kpi-change{color:var(--color-ink-muted);font-size:11px}.dashboard-kpi-change{display:flex;align-items:center;gap:4px;margin-top:10px}.dashboard-kpi-change.is-positive{color:var(--color-success)}.dashboard-kpi-change.is-negative{color:var(--color-danger)}.dashboard-analysis-grid{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:14px;margin-top:14px}.dashboard-analysis-card{min-width:0;padding:16px}.dashboard-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.dashboard-chart{width:100%;min-height:176px}.risk-bars,.module-progress-list{display:flex;flex-direction:column;gap:12px}.risk-bar-label,.module-progress-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;color:var(--color-ink-muted);font-size:11px}.risk-bar-label strong,.module-progress-label strong{color:var(--color-ink);font-variant-numeric:tabular-nums}.risk-bar-track{height:7px;overflow:hidden;border-radius:999px;background:var(--color-border-subtle)}.risk-bar-track span{display:block;min-width:8px;height:100%;border-radius:inherit}.module-progress-row .ant-progress{line-height:1}.dashboard-bottom-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.7fr);gap:14px;margin-top:14px}.dashboard-table-card{overflow:hidden}.dashboard-table-card .dashboard-card-header{margin:0;padding:14px 16px;border-bottom:1px solid var(--color-border-subtle)}.project-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md)}.project-summary-item{padding:14px 16px;background:var(--color-surface);border-right:1px solid var(--color-border-subtle)}.project-summary-item:last-child{border-right:0}.project-summary-label{display:flex;align-items:center;gap:7px;color:var(--color-ink-muted);font-size:11px}.project-summary-label:before{content:"";width:7px;height:7px;flex:0 0 7px;border-radius:999px;background:var(--tone-fg, var(--color-accent))}.project-summary-value{display:block;margin-top:5px;color:var(--tone-fg, var(--color-ink));font-size:20px;font-weight:650;font-variant-numeric:tabular-nums}.project-table-shell{overflow:hidden}.project-toolbar{padding:12px 14px;border-bottom:1px solid var(--color-border-subtle)}.project-toolbar .ant-input-affix-wrapper{width:min(320px,100%)}.project-toolbar .ant-input-affix-wrapper-focused,.project-toolbar .ant-select-focused .ant-select-selector{background:var(--color-pale-blue)!important}.project-toolbar-spacer{flex:1}.status-tag{margin:0;padding:2px 8px;border:1px solid currentColor;border-radius:999px;font-size:11px;font-weight:500}.status-draft{background:var(--color-surface-subtle);color:var(--color-ink-muted)}.status-collecting,.status-reporting{background:var(--color-pale-blue);color:var(--color-info)}.status-onsite{background:var(--color-pale-amber);color:var(--color-warning-ink)}.status-completed{background:var(--color-pale-green);color:var(--color-success-ink)}.status-cancelled{background:var(--color-pale-red);color:var(--color-danger-ink)}.project-name-cell{color:var(--color-ink);font-weight:600}.project-target-cell{color:var(--color-ink-muted)}.ant-card{border-color:var(--color-border-subtle)!important;border-radius:var(--radius-md)!important;box-shadow:none!important}.ant-table-wrapper .ant-table{font-variant-numeric:tabular-nums}.ant-table-wrapper .ant-table-thead>tr>th{text-align:center!important;color:var(--color-ink-muted)!important;font-size:12px!important;font-weight:600!important;background:var(--color-surface-subtle)!important;border-bottom:1px solid var(--color-border)!important}.ant-table-wrapper .ant-table-tbody>tr>td{border-bottom:1px solid var(--color-border-subtle)!important}.ant-table-wrapper .ant-table-tbody>tr:hover>td{background:var(--color-pale-blue)!important}.ant-btn-primary{box-shadow:none!important}.ant-btn:not(.ant-btn-text):not(.ant-btn-link){font-weight:500}.ant-progress-bg{border-radius:999px!important}.ant-modal-content{padding:24px!important;border-radius:var(--radius-lg)!important}.ant-modal-header{margin-bottom:20px!important}.ant-spin-nested-loading>div>.ant-spin{max-height:none}.project-detail-page{max-width:1600px;margin:0 auto}.project-detail-skeleton{padding:24px}.project-command-header{overflow:hidden}.project-command-main{padding:14px 20px 18px}.project-back-button{height:30px;margin:0 0 8px -10px;color:var(--color-ink-muted);font-size:12px}.project-command-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.project-command-title-row h1{margin-top:8px;color:var(--color-ink);font-size:22px;font-weight:650;line-height:30px;letter-spacing:-.02em}.project-command-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--color-ink-muted);font-size:11px}.project-command-kicker>span+span:before{content:"";display:inline-block;width:3px;height:3px;margin:0 8px 2px 0;border-radius:999px;background:var(--color-ink-subtle)}.project-command-company{margin-top:3px;color:var(--color-ink);font-size:13px;font-weight:550}.project-command-description{max-width:760px;margin-top:6px;color:var(--color-ink-muted);font-size:12px;line-height:19px}.project-command-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--color-border-subtle)}.project-command-metrics>div{position:relative;min-width:0;padding:13px 18px;border-right:1px solid var(--color-border-subtle)}.project-command-metrics>div:last-child{border-right:0}.project-command-metrics>div:before{content:"";position:absolute;top:17px;left:10px;width:5px;height:5px;border-radius:999px;background:var(--color-accent)}.project-command-metrics .has-risk:before{background:var(--color-danger)}.project-command-metrics .is-clear:before{background:var(--color-success)}.project-command-metrics span,.project-command-metrics small{display:block;color:var(--color-ink-muted);font-size:10px;line-height:16px}.project-command-metrics strong{display:inline-block;margin:2px 5px 0 0;color:var(--color-ink);font-size:22px;font-weight:650;line-height:28px;font-variant-numeric:tabular-nums}.project-command-metrics small{display:inline}.project-detail-tabs{margin-top:12px}.project-detail-tabs>.ant-tabs-nav{margin-bottom:14px}.project-detail-tabs>.ant-tabs-nav:before{border-color:var(--color-border-subtle)}.project-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:stretch}.project-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:2px 0 10px}.project-section-heading h2{color:var(--color-ink);font-size:14px;font-weight:650;line-height:22px}.project-section-heading p,.project-section-heading>span{color:var(--color-ink-muted);font-size:11px;line-height:17px}.project-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-module-card{min-width:0;padding:15px;color:var(--color-ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.project-module-card:hover{border-color:color-mix(in srgb,var(--tone-fg) 45%,var(--color-border));background:color-mix(in srgb,var(--tone-pale) 45%,white);transform:translateY(-1px)}.project-module-card:focus-visible{outline:2px solid var(--color-focus, var(--color-accent));outline-offset:2px}.project-module-topline{display:flex;align-items:center;color:var(--color-ink-subtle)}.project-module-topline>.anticon:last-child{margin-left:auto;font-size:11px}.project-module-icon,.panel-icon,.project-secondary-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--tone-fg);background:var(--tone-pale)}.project-module-icon{width:30px;height:30px;border-radius:8px;font-size:15px}.project-module-number{margin-left:8px;color:var(--tone-fg);font-size:11px;font-weight:700;letter-spacing:.05em}.project-module-title,.project-module-description,.project-module-progress-copy,.project-module-riskline{display:flex}.project-module-title{margin-top:11px;font-size:14px;line-height:21px}.project-module-description{min-height:34px;margin-top:2px;color:var(--color-ink-muted);font-size:11px;line-height:17px}.project-module-progress-copy{justify-content:space-between;margin:11px 0 3px;color:var(--color-ink-muted);font-size:10px;font-variant-numeric:tabular-nums}.project-module-card .ant-progress{line-height:1}.project-module-riskline{align-items:center;gap:5px;margin-top:10px}.project-module-riskline small{margin-left:auto;color:var(--color-ink-subtle);font-size:10px}.risk-signal{padding:1px 5px;border:1px solid var(--color-border-subtle);border-radius:999px;color:var(--color-ink-subtle);background:var(--color-surface);font-size:9px;font-variant-numeric:tabular-nums}.risk-signal.risk-high,.risk-summary-strip .risk-high{color:var(--color-danger-ink);background:var(--color-pale-red);border-color:currentColor}.risk-signal.risk-medium,.risk-summary-strip .risk-medium{color:var(--color-warning-ink);background:var(--color-pale-amber);border-color:currentColor}.risk-signal.risk-low,.risk-summary-strip .risk-low{color:var(--color-info);background:var(--color-pale-blue);border-color:currentColor}.project-secondary-heading{margin-top:18px}.project-secondary-modules{overflow:hidden}.project-secondary-modules button,.risk-module-list button{display:flex;align-items:center;width:100%;border:0;border-bottom:1px solid var(--color-border-subtle);color:var(--color-ink);background:var(--color-surface);font:inherit;text-align:left;cursor:pointer}.project-secondary-modules button{gap:10px;min-height:56px;padding:8px 12px}.project-secondary-modules button:last-child,.risk-module-list button:last-child{border-bottom:0}.project-secondary-modules button:hover,.risk-module-list button:hover{background:var(--color-pale-blue)}.project-secondary-icon{width:28px;height:28px;flex:0 0 28px;border-radius:7px}.project-secondary-modules button>span:nth-child(2){min-width:0;flex:1}.project-secondary-modules strong,.project-secondary-modules small,.risk-module-list strong,.risk-module-list small{display:block}.project-secondary-modules strong,.risk-module-list strong{font-size:11px;font-weight:600}.project-secondary-modules small,.risk-module-list small{margin-top:1px;color:var(--color-ink-muted);font-size:10px}.project-secondary-modules .ant-tag{margin:0;color:var(--color-ink-muted);background:var(--color-surface-subtle)}.project-secondary-modules .anticon-right,.risk-module-list .anticon-right{color:var(--color-ink-subtle);font-size:10px}.project-workspace-rail{display:flex;flex-direction:column;gap:10px}.project-team-panel{padding:15px;box-sizing:border-box}.project-team-panel .project-panel-heading h3{font-size:14px;line-height:21px}.project-team-panel .project-panel-heading p{font-size:11px;line-height:17px}.project-team-members{margin:14px 0 0;padding:0;list-style:none}.project-team-member{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid var(--color-border-subtle)}.project-team-member:last-child{border-bottom:0;padding-bottom:0}.project-team-member .ant-avatar{flex:0 0 24px;margin-top:1px}.project-team-member-content{min-width:0;flex:1}.project-team-member-name{display:block;color:var(--color-ink);font-size:12px;line-height:18px}.project-team-member-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.project-team-member-tags .ant-tag{margin:0;font-size:10px;line-height:18px}.project-evidence-panel,.project-risk-panel{padding:15px}.project-panel-heading{display:flex;align-items:center;gap:10px}.panel-icon{width:32px;height:32px;flex:0 0 32px;border-radius:8px}.project-panel-heading h3{font-size:12px;font-weight:650}.project-panel-heading p{color:var(--color-ink-muted);font-size:10px}.evidence-score{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:15px}.evidence-score strong{font-size:24px;font-weight:650;font-variant-numeric:tabular-nums}.evidence-score span{color:var(--color-ink-muted);font-size:10px}.project-evidence-panel ul{display:flex;flex-direction:column;gap:7px;margin-top:12px;list-style:none}.project-evidence-panel li{display:flex;align-items:flex-start;gap:7px;color:var(--color-ink-muted);font-size:10px;line-height:16px}.project-evidence-panel li .anticon{margin-top:2px;color:var(--color-success)}.risk-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:14px}.risk-summary-strip span{padding:7px 5px;border:1px solid var(--color-border-subtle);border-radius:7px;color:var(--color-ink-muted);background:var(--color-surface-subtle);font-size:9px;text-align:center}.risk-summary-strip strong{display:block;font-size:16px;line-height:20px;font-variant-numeric:tabular-nums}.risk-module-list{margin:12px -15px -15px;border-top:1px solid var(--color-border-subtle)}.risk-module-list button{gap:8px;min-height:50px;padding:8px 15px}.risk-module-list button span{min-width:0;flex:1}.risk-empty{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px;border-radius:8px;color:var(--color-success-ink);background:var(--color-pale-green)}.risk-empty strong,.risk-empty small{display:block;font-size:10px}.risk-empty small{margin-top:2px;color:var(--color-ink-muted)}.module-workspace-page{max-width:1600px;margin:0 auto}.module-workspace-header{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;overflow:hidden}.module-workspace-heading{min-width:0;padding:12px 18px 15px}.module-workspace-back{height:28px;margin:0 0 6px -9px;color:var(--color-ink-muted);font-size:11px}.module-workspace-title-row{display:flex;align-items:flex-start;gap:11px}.module-workspace-badge{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:9px;color:var(--tone-fg);background:var(--tone-pale);font-size:12px;font-weight:750;letter-spacing:.04em}.module-workspace-title-row h1{color:var(--color-ink);font-size:18px;font-weight:650;line-height:24px}.module-workspace-title-row p{max-width:720px;margin-top:2px;color:var(--color-ink-muted);font-size:11px;line-height:17px}.module-workspace-actions{display:flex;align-items:flex-start;gap:8px;padding:16px 18px}.module-workspace-metrics{display:grid;grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--color-border-subtle)}.module-workspace-metrics>span{position:relative;min-width:0;padding:10px 14px 11px 20px;border-right:1px solid var(--color-border-subtle)}.module-workspace-metrics>span:last-child{border-right:0}.module-workspace-metrics>span:before{content:"";position:absolute;top:14px;left:10px;width:5px;height:5px;border-radius:999px;background:var(--color-accent)}.module-workspace-metrics .has-risk:before{background:var(--color-danger)}.module-workspace-metrics .is-clear:before{background:var(--color-success)}.module-workspace-metrics small,.module-workspace-metrics em{display:block;overflow:hidden;color:var(--color-ink-muted);font-size:9px;font-style:normal;line-height:14px;text-overflow:ellipsis;white-space:nowrap}.module-workspace-metrics strong{display:inline-block;margin:1px 5px 0 0;color:var(--color-ink);font-size:18px;font-weight:650;line-height:24px;font-variant-numeric:tabular-nums}.module-workspace-metrics em{display:inline}.module-workspace-context{display:flex;align-items:center;justify-content:space-between;min-height:34px;margin:8px 0;padding:6px 10px;border:1px solid var(--color-border-subtle);border-radius:8px;color:var(--color-ink-muted);background:var(--color-surface);font-size:10px}.module-workspace-context .anticon{margin-right:6px;color:var(--color-success)}.module-asset-toolbar{margin-bottom:8px;padding:10px 12px}.module-record-surface{overflow:hidden;border-color:var(--color-border-subtle)}.module-record-surface>.ant-card-body{padding:0}.module-record-surface .ant-tabs-nav{margin:0;padding:0 14px}.module-record-surface .ant-tabs-content-holder{padding:12px 14px 14px;border-top:1px solid var(--color-border-subtle)}.m4-section-switcher{display:grid;grid-template-columns:1fr 1fr;margin:10px 0 12px;overflow:hidden}.m4-section-switcher button{position:relative;display:flex;align-items:center;gap:10px;min-height:58px;padding:9px 14px;border:0;border-right:1px solid var(--color-border-subtle);color:var(--color-ink-muted);background:var(--color-surface);font:inherit;text-align:left;cursor:pointer}.m4-section-switcher button:last-child{border-right:0}.m4-section-switcher button:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:transparent}.m4-section-switcher button:hover{background:var(--color-pale-blue)}.m4-section-switcher button.is-active{color:var(--color-info);background:var(--color-pale-blue)}.m4-section-switcher button.is-active:after{background:var(--color-accent)}.m4-section-switcher button>.anticon{font-size:16px}.m4-section-switcher strong,.m4-section-switcher small{display:block}.m4-section-switcher strong{color:inherit;font-size:12px;font-weight:650}.m4-section-switcher small{margin-top:1px;color:var(--color-ink-muted);font-size:9px}.react-resizable{position:relative;background-clip:padding-box}.react-resizable-handle{position:absolute;top:0;right:-6px;bottom:0;z-index:9999;width:10px;height:100%;cursor:col-resize;touch-action:none;background-image:none!important;background:#2f6bff29;border-right:1px solid rgba(47,107,255,.35);opacity:1!important;pointer-events:auto}.react-resizable-handle:hover,.react-resizable-handle:active{background:#2f6bff2e;opacity:1}.column-resize-handle{position:absolute;top:0;right:-5px;bottom:0;z-index:1000;width:10px;cursor:col-resize;background:#2f6bff29;border-right:1px solid rgba(47,107,255,.35);opacity:0;transition:opacity .15s ease}.ant-table-thead th:hover .column-resize-handle,.column-resize-handle:hover{opacity:.7;background:#2f6bff66}.ant-table-thead th:hover .react-resizable-handle{background:#2f6bff59}.ant-table-thead th{overflow:visible!important}.ant-table-wrapper .ant-table{table-layout:fixed!important}.ant-table-wrapper .ant-table-thead th,.ant-table-wrapper .ant-table-tbody td{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}@media (max-width: 1180px){.dashboard-kpi-grid,.project-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.project-summary-item:nth-child(2){border-right:0}.project-summary-item:nth-child(-n+2){border-bottom:1px solid var(--color-border-subtle)}.dashboard-analysis-grid{grid-template-columns:1fr 1fr}.dashboard-analysis-card:last-child{grid-column:1 / -1}.dashboard-bottom-grid,.project-workspace-grid{grid-template-columns:1fr}.project-workspace-rail{display:grid;grid-template-columns:1fr 1fr;padding-top:0}.module-workspace-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.module-workspace-metrics>span:nth-child(2){border-right:0}.module-workspace-metrics>span:nth-child(-n+2){border-bottom:1px solid var(--color-border-subtle)}}@media (max-width: 760px){.ddms-content{padding:16px}.ddms-topbar{padding:0 16px}.ddms-user-name{display:none}.page-header{align-items:stretch;flex-direction:column}.page-header>.ant-btn{width:100%}.dashboard-kpi-grid,.dashboard-analysis-grid,.project-summary{grid-template-columns:1fr}.dashboard-analysis-card:last-child{grid-column:auto}.project-summary-item{border-right:0;border-bottom:1px solid var(--color-border-subtle)}.project-summary-item:last-child{border-bottom:0}.project-toolbar-spacer{display:none}.project-command-title-row{flex-direction:column}.project-command-title-row>.ant-btn{width:100%}.project-command-metrics,.project-module-grid,.project-workspace-rail{grid-template-columns:1fr}.project-command-metrics>div{border-right:0;border-bottom:1px solid var(--color-border-subtle)}.project-command-metrics>div:last-child{border-bottom:0}.project-section-heading{align-items:flex-start;flex-direction:column;gap:2px}.module-workspace-header{grid-template-columns:1fr}.module-workspace-actions{padding-top:0}.module-workspace-actions .ant-btn{width:100%}.module-workspace-metrics,.m4-section-switcher{grid-template-columns:1fr}.module-workspace-metrics>span,.module-workspace-metrics>span:nth-child(2),.m4-section-switcher button{border-right:0;border-bottom:1px solid var(--color-border-subtle)}.module-workspace-metrics>span:last-child,.m4-section-switcher button:last-child{border-bottom:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
