*{box-sizing:border-box}body{margin:0;color:#172b4d;background:#f4f6fa;font-family:Inter,Microsoft YaHei,sans-serif}button,a{-webkit-tap-highlight-color:transparent}.muted{color:#7b879b}.login{display:flex;min-height:100vh}.login-story{width:52%;background:#102a4c;color:#fff;padding:56px 64px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;background-image:linear-gradient(90deg,#ffffff04 1px,transparent 1px),linear-gradient(#ffffff04 1px,transparent 1px);background-size:52px 52px}.brand{font-size:22px;font-weight:700;display:flex;align-items:center;gap:10px}.brand-mark{display:inline-grid;place-items:center;background:#155eef;color:#fff;width:36px;height:36px;border-radius:6px;font-size:23px}.login-story h1{font-size:42px;line-height:1.6;letter-spacing:2px;margin:24px 0}.login-story p{color:#b6c5d9;line-height:2}.eyebrow{font-size:11px;letter-spacing:2px;color:#94add0}.login-grid{display:flex;gap:24px;margin-top:44px;font-size:12px;color:#b6c5d9}.login-story small{color:#94add0}.login-form{flex:1;display:grid;place-items:center;padding:32px}.login-box{width:360px;max-width:100%}.login-box form{margin-top:34px}.login-caption{font-size:10px;color:#9ba6b6;margin-top:32px;text-align:center}.initial-layout{padding:60px}@media(max-width:800px){.login-story{display:none}.login-form{min-height:100vh}}.app-layout{min-height:100vh}.sidebar{border-right:1px solid #e7ecf3;position:sticky!important;top:0;height:100vh;overflow:auto}.sidebar-brand{display:flex;gap:11px;align-items:center;padding:26px 20px 30px;color:#18304f;white-space:nowrap}.sidebar-brand strong{font-size:20px;letter-spacing:2px}.sidebar-brand small{display:block;font-size:10px;color:#8a97a9;letter-spacing:1px;margin-top:4px}.nav-section-label{font-size:10px;color:#9aa6b7;padding:10px 27px;letter-spacing:2px}.sidebar .ant-menu{border-inline-end:0!important;padding:0 10px}.sidebar .ant-menu-item{height:44px;margin-bottom:7px}.sidebar .ant-menu-submenu-title{height:44px}.sidebar .ant-menu-item-selected{font-weight:600}.sidebar-footer{padding:24px;color:#8796ab;display:flex;gap:10px;align-items:center;font-size:12px;margin-top:24px;border-top:1px solid #edf0f5}.sidebar-footer small{font-size:10px;line-height:2}.main-layout{min-width:0}.header{height:76px;background:#fff!important;border-bottom:1px solid #e9edf4;display:flex;align-items:center;justify-content:space-between;padding:0 30px!important;gap:20px}.header-company{display:flex;align-items:center;gap:16px;font-size:13px;color:#52627b;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:22px}.global-search{color:#8e9aab!important;background:#f6f8fb!important;border-color:#edf0f5!important;font-size:12px}.user-button{height:44px;display:flex;align-items:center;gap:9px;text-align:left}.user-button small{display:block;font-size:10px;color:#9aa6b7;margin-top:3px}.content{padding:30px;max-width:1920px;width:100%;margin:auto}.password-alert{margin-bottom:22px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.page-heading .eyebrow,.detail-heading .eyebrow{color:#8494aa;font-size:10px;letter-spacing:1.7px}.page-heading h1,.detail-heading h1{font-size:26px;line-height:1.4;margin:10px 0 8px;color:#192c49;font-weight:650}.page-heading p{font-size:12px;margin:0;color:#8b97a8}.heading-dot{color:#155eef}.today{display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-size:12px;color:#6b7a90}.page-count{color:#8190a4;font-size:12px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e8ecf3;border-radius:8px;padding:19px 21px 13px;box-shadow:0 2px 4px #172b4d02;transition:border-color .2s}.stat-card:hover{border-color:#a0bff8}.stat-top{display:flex;align-items:center;justify-content:space-between;color:#6a7b92;font-size:12px}.stat-icon{color:#447bea;background:#eef4ff;padding:9px;border-radius:6px;font-size:16px}.icon-1{color:#399e91;background:#edf8f6}.icon-2{color:#8573b7;background:#f4f1fa}.stat-card strong{display:block;color:#172b4d;font-size:28px;letter-spacing:-.7px;margin:9px 0 19px;font-variant-numeric:tabular-nums}.stat-card small{font-size:11px;font-weight:400;margin-left:8px;color:#97a3b3}.stat-foot{border-top:1px solid #f0f3f7;padding-top:11px;font-size:10px;color:#9aa7b7;display:flex;justify-content:space-between}.workspace-grid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(270px,1fr);gap:20px;margin-bottom:20px}.panel,.table-card,.detail-overview{background:#fff;border:1px solid #e6ebf2;border-radius:8px;box-shadow:0 2px 6px #162f5102;overflow:hidden}.panel-title{padding:22px 22px 12px;display:flex;justify-content:space-between;gap:10px;align-items:center}.panel-title h2{font-size:15px;margin:0;color:#233753}.panel-title p{font-size:11px;color:#94a0b2;margin:8px 0 0}.panel-title a,.panel-title>.muted{font-size:11px;white-space:nowrap}.project-panel .ant-table{padding:0 16px}.ant-table-thead>tr>th{font-size:11px!important;color:#8190a6!important;font-weight:500!important;background:#f9fafc!important;border-bottom:1px solid #edf0f5!important}.ant-table-tbody>tr>td{font-size:12px!important;border-bottom:1px solid #f0f3f7!important;padding-top:20px!important;padding-bottom:20px!important}.ant-table-tbody a strong{color:#344766;font-weight:600}.table-sub{font-size:10px;color:#9ba7b8;margin-top:7px}.ant-table-pagination{padding-right:15px}.reminder-list{max-height:400px;overflow:auto}.reminder{display:flex;gap:12px;padding:17px 22px;color:#344766;border-top:1px solid #f0f3f7;align-items:center}.reminder>div{flex:1}.reminder strong{font-size:12px;font-weight:500}.reminder p{font-size:11px;color:#8593a9;margin:7px 0}.reminder small{font-size:10px;color:#adb7c5}.reminder>.anticon{font-size:10px;color:#a5b1c2}.reminder-dot{width:7px;height:7px;border-radius:50%;background:#e8af4f;align-self:flex-start;margin-top:6px}.reminder-dot.overdue{background:#dd766f}.charts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.chart{height:245px;margin:8px 10px 16px}.table-toolbar{padding:19px 22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}.table-toolbar h3{margin:0}.table-toolbar p{font-size:11px}.table-card .ant-table-container{padding:0 12px}.record-form{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding-top:18px}.record-form .wide{grid-column:1/-1}.back-link{font-size:12px;display:inline-block;margin-bottom:22px}.detail-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px}.detail-heading h1 .ant-tag{vertical-align:middle;margin-left:10px}.detail-heading p{font-size:12px}.detail-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #e8ecf3;border-radius:8px;background:#e8ecf3;overflow:hidden;margin-bottom:20px}.detail-metrics>div{background:#fff;padding:22px}.detail-metrics span{display:block;font-size:12px;color:#8b98aa;margin-bottom:12px}.detail-metrics strong{font-size:25px;font-weight:600}.detail-tabs .ant-tabs-nav{background:#fff;padding:0 20px;border-radius:8px;border:1px solid #e6ebf2}.detail-overview{padding:30px}.detail-overview .ant-descriptions-item-label{font-size:12px;color:#8c99ac}.detail-overview .ant-descriptions-item-content{font-size:12px;color:#344766;word-break:break-all}.progress-panel{max-width:500px;margin-top:20px;font-size:12px;color:#8796aa}.timeline{padding:32px;background:#fff;border:1px solid #e6ebf2;border-radius:8px}.timeline h3{font-size:15px}.timeline .muted{font-size:11px}.qr-panel{display:flex;gap:26px;padding:24px;background:#fff;border:1px solid #e6ebf2;border-radius:8px;margin-bottom:24px}.qr-panel p{font-size:12px}.relation-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.relation-card{padding:24px;background:#fff;border:1px solid #e6ebf2;border-radius:6px}.relation-card span{margin-right:15px}.search-results section{padding:14px 0;border-bottom:1px solid #edf0f5}.search-results a{display:block;padding:8px 0}.search-results small{color:#8b99ad;margin-left:15px}.app-footer{display:flex;justify-content:space-between;font-size:10px;color:#a2adbc;padding-top:30px;margin-top:20px}.embedded-resource .table-card{border-top-left-radius:0;border-top-right-radius:0}@media(min-width:1600px){.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card strong{font-size:33px}}@media(max-width:1200px){.header-company>span{display:none}.header{padding:0 20px!important}.content{padding:24px}.workspace-grid{grid-template-columns:1fr}.reminder-list{max-height:300px}.stat-card{padding:16px}.stat-card strong{font-size:24px}.charts-grid{gap:12px}.panel-title{padding:18px 15px 10px}}@media(max-width:767px){.sidebar{position:fixed!important;z-index:20;height:100vh}.main-layout{margin-left:72px}.header{height:64px;padding:0 12px!important;gap:5px}.header-actions{gap:10px}.global-search{width:32px;padding:0!important}.global-search>span:not(.ant-btn-icon){display:none}.user-button>span:not(.ant-avatar){display:none}.content{padding:16px 12px}.page-heading h1{font-size:23px}.page-heading{align-items:flex-start}.today{display:none}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat-card{padding:12px}.stat-card strong{font-size:19px;letter-spacing:-.5px}.stat-icon{font-size:13px;padding:6px}.stat-foot{font-size:9px}.stat-top{font-size:10px}.charts-grid{grid-template-columns:1fr}.workspace-grid{gap:14px}.panel-title p{line-height:1.7}.panel-title a{font-size:10px}.table-toolbar{padding:14px;gap:12px}.table-toolbar .ant-input-search{width:100%!important}.table-toolbar>.ant-space{width:100%}.record-form{grid-template-columns:1fr}.detail-heading{flex-direction:column;align-items:flex-start}.detail-heading h1{font-size:23px}.detail-metrics{grid-template-columns:1fr}.detail-metrics>div{padding:14px;display:flex;justify-content:space-between;align-items:center}.detail-metrics span{margin:0}.detail-metrics strong{font-size:20px}.detail-overview{padding:20px}.relation-cards{grid-template-columns:1fr}.qr-panel{flex-direction:column}.app-footer{font-size:9px;line-height:1.8;display:block}.app-footer span{display:block}.password-alert .ant-alert-message{font-size:11px}.sidebar-brand{padding:22px 18px}.sidebar-footer{padding:20px}.detail-tabs .ant-tabs-nav{padding:0 12px}.ant-modal{max-width:calc(100vw - 24px)!important}.chart{height:230px}}@media print{.sidebar,.header,.password-alert,.detail-tabs,.detail-heading,.back-link,.app-footer{display:none!important}.main-layout{margin:0!important}.qr-panel{border:0;display:flex!important}.qr-panel button{display:none}}.login-company{font-weight:700;color:#18304f;font-size:26px;letter-spacing:3px;margin-bottom:30px}
