:root{--erp-bg: #f3f4f5;--erp-canvas-gradient: radial-gradient(ellipse 90% 700px at 50% 0%, #cbd9e9 0%, #e3eaf2 48%, #f2f4f6 100%);--erp-surface-gradient: linear-gradient(145deg, #fff 0%, #f8fafc 52%, #e9eef3 100%);--erp-panel-gradient: linear-gradient(130deg, #fff 0%, #eff3f7 65%, #e0e7ef 100%);--erp-surface: #fff;--erp-surface-soft: #f7f8f9;--erp-ink: #292d33;--erp-muted: #646b75;--erp-border: #e1e4e8;--erp-success: #526a5d;--erp-danger: #945652;--erp-shadow: 0 10px 26px rgb(43 57 75 / 11%), 0 2px 6px rgb(43 57 75 / 8%), inset 0 1px 0 rgb(255 255 255 / 96%), inset 0 -1px 0 rgb(189 199 212 / 34%);--erp-control-shadow: 0 3px 7px rgb(43 57 75 / 13%), 0 1px 2px rgb(43 57 75 / 7%), inset 0 1px 0 #fff, inset 0 -1px 0 rgb(176 189 204 / 22%);--erp-inset-shadow: inset 0 2px 5px rgb(43 57 75 / 9%), inset 0 -1px 0 rgb(255 255 255 / 95%);--erp-radius: 16px;--erp-font: "PingFang SC", -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--erp-canvas-gradient);color:var(--erp-ink);font-family:var(--erp-font);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}#root{min-height:100vh;width:100%}h1,h2,h3{text-wrap:balance}a{color:var(--erp-ink)}:focus-visible{outline:2px solid #697586;outline-offset:3px}.ant-app{min-height:100vh;font-family:var(--erp-font)}.ant-layout{background:transparent}.ant-typography,.ant-table,.ant-descriptions,.ant-statistic{font-variant-numeric:tabular-nums}.erp-sidebar{position:sticky!important;top:0;height:100dvh;background:linear-gradient(180deg,#d5d8dc,#e6e8eb 48%,#f0f1f3)!important;border-right:1px solid #dfe2e5}.erp-sidebar .ant-layout-sider-children,.erp-sidebar-drawer .ant-drawer-body{display:flex;flex-direction:column;min-height:0}.erp-sidebar-drawer .ant-drawer-body{background:linear-gradient(180deg,#d5d8dc,#e6e8eb 48%,#f0f1f3)}.erp-brand{height:84px;flex-shrink:0;display:flex;align-items:center;gap:10px;padding:22px 20px}.erp-brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;color:#fff;background:#3f454e;box-shadow:0 3px 8px #232a3426;font-size:18px}.erp-brand h2{margin:0;font-size:16px;font-weight:600;letter-spacing:.01em}.erp-brand small{display:block;margin-top:2px;color:#5d6570;font-size:11px}.erp-sidebar-menu{flex:1;min-height:0;overflow:auto;padding:4px 12px 20px}.erp-sidebar .ant-menu,.erp-sidebar-drawer .ant-menu{background:transparent;border:0;color:#525b66}.erp-sidebar .ant-menu-item,.erp-sidebar-drawer .ant-menu-item{margin:4px 0;width:100%;min-height:44px;border-radius:12px;padding-inline:14px!important}.erp-sidebar .ant-menu-item-selected,.erp-sidebar-drawer .ant-menu-item-selected{background:linear-gradient(145deg,#fff,#f8f9fa);color:var(--erp-ink);font-weight:600;box-shadow:var(--erp-control-shadow)}.erp-sidebar .ant-menu-item:not(.ant-menu-item-selected):hover,.erp-sidebar-drawer .ant-menu-item:not(.ant-menu-item-selected):hover{background:#ffffff75;color:var(--erp-ink)}.erp-rate-info{margin:0 18px 20px;padding:12px 6px;border-top:1px solid #d9dde2;color:#5d6570;font-size:11px;line-height:1.7;text-align:center}.erp-workspace{min-width:0;background:var(--erp-canvas-gradient)}.erp-content{margin:0;padding:28px;min-width:0;min-height:280px}.erp-topnav{display:flex;align-items:center;justify-content:space-between;gap:16px;height:72px;padding:0 28px;background:linear-gradient(110deg,#f9fbfde0,#e7edf4b8);line-height:normal;border-bottom:1px solid #dce2e9;box-shadow:inset 0 -1px #ffffffb3}.erp-topnav-context{display:flex;align-items:center;gap:10px;min-width:0}.erp-topnav-caption{color:var(--erp-muted);font-size:13px}.erp-user-trigger{display:inline-flex;align-items:center;gap:10px;padding:6px 10px 6px 6px;border:1px solid var(--erp-border);border-radius:16px;background:linear-gradient(145deg,#fff,#f6f7f8);box-shadow:var(--erp-control-shadow);color:var(--erp-ink);cursor:pointer}.erp-user-trigger .ant-avatar{background:#e4e7eb;color:#59616d}.erp-user-name{font-size:13px;font-weight:600}.erp-user-role{font-size:11px;color:var(--erp-muted)}.erp-page-heading{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:24px}.erp-page-heading h1{margin:0 0 6px;font-size:24px;line-height:1.4;font-weight:600}.erp-page-heading p{margin:0;color:var(--erp-muted);font-size:13px}.ant-btn{border-radius:10px;font-weight:500;transition:background .18s ease,box-shadow .18s ease,color .18s ease}:root .ant-btn:is(.ant-btn-default,.ant-btn-primary,.ant-btn-text,.ant-btn-link){background:linear-gradient(160deg,#fff,#f1f3f5);color:var(--erp-ink);border:1px solid var(--erp-border);box-shadow:var(--erp-control-shadow)}:root .ant-btn.ant-btn-primary{border-color:#c5cbd2;background:linear-gradient(160deg,#eceff2,#e1e5e9)}.ant-btn:not(:disabled):not(.ant-btn-disabled):hover{color:#20252b;border-color:#aab2be;background:#f0f2f4;box-shadow:0 5px 12px #2b394b29,inset 0 1px #fff}.ant-btn:not(:disabled):not(.ant-btn-disabled):active{box-shadow:var(--erp-inset-shadow)}:root .ant-btn:disabled,:root .ant-btn.ant-btn-disabled{box-shadow:none;color:#8a9099;background:#f4f5f6}:root .ant-btn.ant-btn-dangerous{color:var(--erp-danger)}.ant-btn-dangerous:not(:disabled):hover{color:#783e3a;border-color:#c4a9a7;background:#f7efee}.ant-btn-link,.ant-btn-text{height:auto;min-height:28px;padding:3px 10px;font-size:inherit}.ant-btn-link>span{white-space:normal}.ant-input,.ant-input-affix-wrapper,.ant-picker,.ant-select-selector,.ant-input-number{border-radius:10px}.ant-input-outlined,.ant-input-affix-wrapper-outlined,.ant-picker-outlined,.ant-input-number-outlined,.ant-select-outlined .ant-select-selector{background:linear-gradient(150deg,#f0f3f6,#fafcfd);box-shadow:var(--erp-inset-shadow)}.ant-input-affix-wrapper .ant-input{background:transparent;box-shadow:none}.ant-input::placeholder,.ant-input-affix-wrapper input::placeholder,.ant-picker-input input::placeholder,.ant-select-selection-placeholder{color:#646b75!important}.ant-select-dropdown,.ant-dropdown-menu,.ant-picker-dropdown .ant-picker-panel-container{border:1px solid var(--erp-border);border-radius:12px;box-shadow:0 8px 28px #232a3421}.ant-select-item-option-active,.ant-dropdown-menu-item:hover{background:#eff1f4!important}.ant-select-item-option-selected{background:#e3e7eb!important}.ant-segmented{padding:4px;background:linear-gradient(145deg,#e5eaf0,#f2f5f8);border:1px solid #e3e6e9;border-radius:12px;box-shadow:var(--erp-inset-shadow)}.ant-segmented-item{border-radius:9px;color:#616976}.ant-segmented-item-selected,.ant-segmented-thumb{background:#4a515c;color:#fff;box-shadow:0 2px 5px #232a342e}.ant-segmented-item-selected .ant-segmented-item-label{color:#fff}.ant-radio-button-wrapper{background:#f1f3f5;color:#606875}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){background:#4a515c;color:#fff;border-color:#4a515c}.ant-tabs-nav:before{border-bottom-color:var(--erp-border)!important}.ant-tabs-tab{border-radius:10px;padding:8px 14px!important}.ant-tabs-tab-active{background:#e5e8ec}.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--erp-ink)!important;font-weight:600}.ant-tabs-ink-bar{background:#666f7c}.ant-tag{max-width:100%;border:0!important;border-radius:8px;padding:3px 9px;color:#59616d;background:linear-gradient(145deg,#fff,#edf0f3);box-shadow:0 1px 3px #232a3417,inset 0 1px #fff;font-weight:500;white-space:normal}:root .ant-tag.erp-tag-sales{color:#465d75;background:linear-gradient(145deg,#f4f8fc,#dce6ef);box-shadow:var(--erp-control-shadow)}:root .ant-tag.erp-tag-purchase{color:#496558;background:linear-gradient(145deg,#f1f7f3,#dce8e0);box-shadow:var(--erp-control-shadow)}:root .ant-tag:not(.ant-tag-disabled):is(.ant-tag-blue,.ant-tag-processing,.ant-tag-cyan,.ant-tag-geekblue){color:#556679;background:#ecf0f4}:root .ant-tag:not(.ant-tag-disabled):is(.ant-tag-green,.ant-tag-success){color:#526a5d;background:#edf2ef}:root .ant-tag:not(.ant-tag-disabled):is(.ant-tag-gold,.ant-tag-orange,.ant-tag-warning){color:#796b55;background:#f2f0eb}:root .ant-tag:not(.ant-tag-disabled):is(.ant-tag-red,.ant-tag-error,.ant-tag-volcano){color:#8b5550;background:#f4eeed}:root .ant-tag:not(.ant-tag-disabled):is(.ant-tag-purple,.ant-tag-magenta){color:#6d6278;background:#f0edf3}.ant-badge-count,.ant-badge-dot{background:linear-gradient(145deg,#fafbfc,#dce1e7)!important;color:#4b5462!important;border:1px solid #fff;box-shadow:0 2px 4px #232a341f!important}.ant-badge-count{font-size:11px;font-weight:600;height:22px;min-width:22px;line-height:20px;border-radius:8px}.ant-badge-status-processing{background:#69778b}.ant-badge-status-success{background:#61796a}.ant-badge-status-error{background:#945652}.ant-badge-status-warning{background:#8b785e}.ant-badge-status-processing:after{border-color:#69778b}.erp-number-positive{color:var(--erp-success)}.erp-number-negative{color:var(--erp-danger)}.ant-progress .ant-progress-text{color:#535d6b;font-variant-numeric:tabular-nums}.ant-card{border-color:var(--erp-border);border-radius:var(--erp-radius);box-shadow:var(--erp-shadow);background:var(--erp-surface-gradient)}.ant-card-head{border-bottom-color:#edf0f2;min-height:56px}.ant-card-head-title{font-size:15px;font-weight:600}.ant-card .ant-card{box-shadow:var(--erp-inset-shadow)}.ant-table-wrapper{min-width:0;max-width:100%}.ant-table-wrapper .ant-table{border-radius:12px;font-size:13px;color:var(--erp-ink)}.ant-table-wrapper .ant-table-container{overflow:hidden;border-radius:12px;border-color:var(--erp-border)}.ant-table-wrapper .ant-table-thead>tr>th{color:#5c6572;background:#f2f4f6;font-weight:500;border-bottom-color:var(--erp-border)}.ant-table-wrapper .ant-table-tbody>tr>td{border-bottom-color:#edf0f2;line-height:1.65}.ant-table-wrapper .ant-table-tbody>tr:hover>td{background:#f7f8fa!important}.ant-table-wrapper .ant-table-row-expand-icon{width:24px;height:24px;border-radius:8px;border:1px solid var(--erp-border);color:#667180;background:linear-gradient(145deg,#fff,#edf0f3);box-shadow:var(--erp-control-shadow)}.ant-table-wrapper .ant-table-row-expand-icon:before{top:10px;left:6px;right:6px}.ant-table-wrapper .ant-table-row-expand-icon:after{top:6px;bottom:6px;left:10px}.ant-descriptions{color:var(--erp-ink)}.ant-descriptions .ant-descriptions-item-label{font-size:13px;color:var(--erp-muted);font-weight:400}.ant-descriptions .ant-descriptions-item-content{font-size:14px;line-height:1.7;overflow-wrap:anywhere}.ant-descriptions-bordered .ant-descriptions-view{border-radius:12px;border-color:var(--erp-border);overflow:hidden}.ant-descriptions-bordered .ant-descriptions-row>th{background:#f5f6f8!important}.ant-descriptions-bordered .ant-descriptions-row>th,.ant-descriptions-bordered .ant-descriptions-row>td{border-color:#e8ebee!important;padding:12px 16px!important}.ant-pagination-item,.ant-pagination-prev .ant-pagination-item-link,.ant-pagination-next .ant-pagination-item-link{border-radius:9px}.ant-pagination-item-active{background:#e7eaee;border-color:#d2d7df}.ant-pagination-item-active a{color:var(--erp-ink)}.ant-empty{color:var(--erp-muted);padding:20px}.ant-empty-description{color:var(--erp-muted)}.ant-alert{border:1px solid var(--erp-border);border-radius:12px;background:linear-gradient(145deg,#fff,#eef0f3);color:var(--erp-ink)}.ant-alert .ant-alert-icon{color:#687382}.ant-alert .ant-alert-description{color:#606976;line-height:1.8}.ant-alert-error{background:linear-gradient(145deg,#fff,#f4eceb);border-color:#e2d1cf}.ant-alert-error .ant-alert-icon{color:var(--erp-danger)}.ant-modal-container,.ant-modal-content,.ant-popover-inner,.ant-message-notice-content,.ant-notification-notice{border-radius:16px;border:1px solid var(--erp-border);background:linear-gradient(150deg,#fff,#f5f6f8);box-shadow:0 12px 36px #232a3424}.ant-modal-header{background:transparent}.ant-modal-confirm .ant-modal-confirm-body>.anticon,.ant-message-info .anticon,.ant-message-warning .anticon,.ant-message-success .anticon{color:#687382}.ant-message-error .anticon,.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:var(--erp-danger)}.ant-notification .ant-notification-notice-icon-info,.ant-notification .ant-notification-notice-icon-warning,.ant-notification .ant-notification-notice-icon-success{color:#687382}.ant-upload-list-item{border-radius:9px}.ant-upload-list-text .ant-upload-list-item{height:auto;min-height:34px;padding:5px 10px;border:1px solid var(--erp-border);background:linear-gradient(150deg,#fff,#f1f3f5);box-shadow:var(--erp-control-shadow)}.ant-upload-list-item-name{color:#4f5d70!important}.ant-upload-list-item:hover{background:#f0f2f5!important}.erp-file-link,.erp-content a:not(.ant-btn):not(.ant-pagination-item-link):not(.ant-upload-list-item-name),.ant-modal a:not(.ant-btn):not(.ant-upload-list-item-name){display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 10px;border:1px solid var(--erp-border);border-radius:9px;background:linear-gradient(150deg,#fff,#f1f3f5);box-shadow:var(--erp-control-shadow);color:#505c6c;line-height:1.6;overflow-wrap:anywhere;cursor:pointer;text-decoration:none}.erp-file-link:hover,.erp-content a:not(.ant-btn):hover{color:#262d37;background:#e9edf1;border-color:#bbc3ce}.erp-file-link .erp-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.erp-file-link .erp-file-icon{flex-shrink:0;color:#697586}@media(max-width:1100px)and (min-width:768px){.erp-sidebar{width:214px!important;min-width:214px!important;max-width:214px!important;flex:0 0 214px!important}.erp-brand{padding-inline:16px}.erp-content{padding:20px}}@media(max-width:767px){.erp-content{padding:16px 12px}.erp-topnav{padding:0 12px;height:64px;gap:8px}.erp-topnav-caption,.erp-user-role{display:none}.erp-user-trigger{gap:6px}.erp-user-name{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.erp-helper-download{font-size:12px;padding-inline:8px}.ant-card .ant-card-body{padding:16px}.ant-card .ant-card-head{padding-inline:16px}.ant-table-wrapper{overflow-x:auto}.ant-space-horizontal{flex-wrap:wrap}.ant-descriptions-bordered .ant-descriptions-row>th,.ant-descriptions-bordered .ant-descriptions-row>td{padding:10px!important}.ant-modal{max-width:calc(100vw - 24px);margin-inline:auto}.ant-modal-container,.ant-modal-content{max-height:calc(100dvh - 48px);overflow-y:auto}.erp-page-heading h1{font-size:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
