.text-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text-ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.clearfix:after{content:"";display:table;clear:both}@media (max-width: 480px){.hidden-xs{display:none!important}}@media (max-width: 576px){.hidden-sm{display:none!important}}@media (max-width: 768px){.hidden-md{display:none!important}}.text-success{color:#52c41a}.text-warning{color:#faad14}.text-error{color:#ff4d4f}.text-info{color:#13c2c2}.text-primary{color:#1890ff}.text-secondary{color:#595959}.text-muted{color:#8c8c8c}.bg-success{background-color:#f6ffed}.bg-warning{background-color:#fffbe6}.bg-error{background-color:#fff2f0}.bg-info{background-color:#e6fffb}.bg-primary{background-color:#e6f7ff}.m-0{margin:0}.mt-0{margin-top:0}.mr-0{margin-right:0}.mb-0{margin-bottom:0}.ml-0{margin-left:0}.m-1{margin:4px}.mt-1{margin-top:4px}.mr-1{margin-right:4px}.mb-1{margin-bottom:4px}.ml-1{margin-left:4px}.m-2{margin:8px}.mt-2{margin-top:8px}.mr-2{margin-right:8px}.mb-2{margin-bottom:8px}.ml-2{margin-left:8px}.m-3{margin:16px}.mt-3{margin-top:16px}.mr-3{margin-right:16px}.mb-3{margin-bottom:16px}.ml-3{margin-left:16px}.m-4{margin:24px}.mt-4{margin-top:24px}.mr-4{margin-right:24px}.mb-4{margin-bottom:24px}.ml-4{margin-left:24px}.p-0{padding:0}.pt-0{padding-top:0}.pr-0{padding-right:0}.pb-0{padding-bottom:0}.pl-0{padding-left:0}.p-1{padding:4px}.pt-1{padding-top:4px}.pr-1{padding-right:4px}.pb-1{padding-bottom:4px}.pl-1{padding-left:4px}.p-2{padding:8px}.pt-2{padding-top:8px}.pr-2{padding-right:8px}.pb-2{padding-bottom:8px}.pl-2{padding-left:8px}.p-3{padding:16px}.pt-3{padding-top:16px}.pr-3{padding-right:16px}.pb-3{padding-bottom:16px}.pl-3{padding-left:16px}.p-4{padding:24px}.pt-4{padding-top:24px}.pr-4{padding-right:24px}.pb-4{padding-bottom:24px}.pl-4{padding-left:24px}*{box-sizing:border-box}html{height:100%;font-size:14px;line-height:1.5714}body{height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-size:14px;color:#262626;background-color:#fafafa;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{height:100%}.app-layout{height:100vh;display:flex;flex-direction:column}.app-layout .app-header{flex-shrink:0;background:#fff;border-bottom:1px solid #f0f0f0;box-shadow:0 1px 4px #0000001f;z-index:1020}.app-layout .app-content{flex:1;display:flex;overflow:hidden}.app-layout .app-content .app-sidebar{flex-shrink:0;width:240px;background:#fff;border-right:1px solid #f0f0f0;transition:all .2s cubic-bezier(.645,.045,.355,1)}.app-layout .app-content .app-sidebar.collapsed{width:80px}.app-layout .app-content .app-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.app-layout .app-content .app-main .app-breadcrumb{flex-shrink:0;padding:16px 24px;background:#fff;border-bottom:1px solid #f0f0f0}.app-layout .app-content .app-main .app-body{flex:1;padding:24px;overflow:auto;background:#fafafa}.page-container{max-width:100%;margin:0 auto}.page-container .page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding:24px;background:#fff;border-radius:8px;box-shadow:0 1px 2px #00000014}.page-container .page-header .page-title{margin:0;font-size:18px;font-weight:500;color:#262626}.page-container .page-header .page-actions{display:flex;gap:8px}.page-container .page-content{background:#fff;border-radius:8px;box-shadow:0 1px 2px #00000014;overflow:hidden}.card-container{background:#fff;border-radius:8px;box-shadow:0 1px 2px #00000014;border:1px solid #f0f0f0;overflow:hidden}.card-container .card-header{padding:24px;border-bottom:1px solid #f0f0f0;background:#fafafa}.card-container .card-header .card-title{margin:0;font-size:16px;font-weight:500;color:#262626}.card-container .card-header .card-extra{float:right;margin-top:-2px}.card-container .card-body{padding:24px}.card-container .card-footer{padding:16px 24px;border-top:1px solid #f0f0f0;background:#fafafa;text-align:right}.card-container.card-bordered{border:1px solid #d9d9d9}.card-container.card-hoverable{cursor:pointer;transition:all .2s cubic-bezier(.645,.045,.355,1)}.card-container.card-hoverable:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-2px)}.table-container .ant-table{border-radius:6px;overflow:hidden}.table-container .ant-table .ant-table-thead>tr>th{background:#fafafa;color:#262626;font-weight:500;border-bottom:1px solid #f0f0f0;padding:12px 16px}.table-container .ant-table .ant-table-thead>tr>th.ant-table-column-sort{background:#f5f5f5}.table-container .ant-table .ant-table-tbody>tr:hover>td{background:#fafafa}.table-container .ant-table .ant-table-tbody>tr.ant-table-row-selected>td{background:#e6f7ff}.table-container .ant-table .ant-table-tbody>tr>td{padding:12px 16px;border-bottom:1px solid #f0f0f0}.table-container .table-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px;background:#fff;border-radius:6px;border:1px solid #f0f0f0}.table-container .table-toolbar .table-toolbar-left,.table-container .table-toolbar .table-toolbar-right{display:flex;gap:8px;align-items:center}.status-indicator{display:inline-flex;align-items:center;gap:4px;font-size:12px}.status-indicator .status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-indicator .status-dot.status-success{background-color:#52c41a}.status-indicator .status-dot.status-warning{background-color:#faad14}.status-indicator .status-dot.status-error{background-color:#ff4d4f}.status-indicator .status-dot.status-info{background-color:#13c2c2}.status-indicator .status-dot.status-processing{background-color:#1890ff}.status-indicator .status-dot.status-default,.status-indicator .status-dot.status-draft{background-color:#8c8c8c}.status-indicator .status-dot.status-pending{background-color:#faad14}.status-indicator .status-dot.status-completed{background-color:#52c41a}.status-indicator .status-dot.status-cancelled{background-color:#ff4d4f}.status-indicator .status-text{font-weight:500}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px}.loading-container .loading-content{text-align:center;color:#8c8c8c}.loading-container .loading-content .loading-icon{font-size:24px;margin-bottom:8px}.loading-container .loading-content .loading-text{font-size:12px}.empty-container{display:flex;justify-content:center;align-items:center;min-height:300px}.empty-container .empty-content{text-align:center;color:#8c8c8c}.empty-container .empty-content .empty-icon{font-size:48px;margin-bottom:16px;color:#bfbfbf}.empty-container .empty-content .empty-title{font-size:16px;font-weight:500;margin-bottom:8px;color:#595959}.empty-container .empty-content .empty-description{font-size:12px;margin-bottom:24px}.form-container .ant-form .ant-form-item{margin-bottom:24px}.form-container .ant-form .ant-form-item .ant-form-item-label{padding-bottom:4px}.form-container .ant-form .ant-form-item .ant-form-item-label>label{color:#262626;font-size:14px;font-weight:500}.form-container .ant-form .ant-form-item .ant-form-item-label>label.ant-form-item-required:before{color:#ff4d4f}.form-container .ant-form .ant-form-item .ant-form-item-explain,.form-container .ant-form .ant-form-item .ant-form-item-extra{color:#8c8c8c;font-size:12px}.form-container .ant-form .form-actions{text-align:right;border-top:1px solid #f0f0f0;padding-top:24px;margin-top:32px}.form-container .ant-form .form-actions .ant-btn{margin-left:8px}.form-container .ant-form .form-actions .ant-btn:first-child{margin-left:0}.form-container .form-section{margin-bottom:32px}.form-container .form-section .form-section-title{font-size:16px;font-weight:500;color:#262626;margin-bottom:24px;padding-bottom:8px;border-bottom:2px solid #1890ff}.statistic-card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 2px #00000014;border:1px solid #f0f0f0;text-align:center;transition:all .2s cubic-bezier(.645,.045,.355,1)}.statistic-card:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-2px)}.statistic-card .statistic-icon{font-size:32px;margin-bottom:16px;color:#1890ff}.statistic-card .statistic-title{font-size:12px;color:#595959;margin-bottom:4px;font-weight:500}.statistic-card .statistic-value{font-size:20px;font-weight:700;color:#262626;margin-bottom:4px}.statistic-card .statistic-suffix{font-size:12px;color:#8c8c8c}.statistic-card .statistic-trend{font-size:12px;font-weight:500}.statistic-card .statistic-trend.trend-up{color:#52c41a}.statistic-card .statistic-trend.trend-down{color:#ff4d4f}.statistic-card .statistic-trend.trend-neutral{color:#8c8c8c}.message-container .ant-message .ant-message-notice{border-radius:6px;box-shadow:0 2px 8px #00000026}.message-container .ant-notification .ant-notification-notice{border-radius:8px;box-shadow:0 2px 8px #00000026}@media (max-width: 768px){.app-layout .app-content .app-sidebar{position:fixed;top:64px;left:0;height:calc(100vh - 64px);z-index:1050;transform:translate(-100%);transition:transform .2s cubic-bezier(.645,.045,.355,1)}.app-layout .app-content .app-sidebar.mobile-open{transform:translate(0)}.app-layout .app-content .app-main{margin-left:0}.page-container .page-header{flex-direction:column;gap:16px}.page-container .page-header .page-actions{width:100%;justify-content:center}.table-container .table-toolbar{flex-direction:column;gap:16px}.table-container .table-toolbar .table-toolbar-left,.table-container .table-toolbar .table-toolbar-right{width:100%;justify-content:center}}@media (max-width: 576px){.app-layout .app-body,.page-container .page-header{padding:16px}.page-container .page-header .page-title{font-size:16px}.page-container .page-content{border-radius:6px}.card-container .card-header,.card-container .card-body,.card-container .card-footer,.statistic-card{padding:16px}.statistic-card .statistic-icon{font-size:24px}.statistic-card .statistic-value{font-size:18px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#fafafa;border-radius:4px}::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#999}@media print{.no-print{display:none!important}.page-container{box-shadow:none;border:none}.card-container{box-shadow:none;border:1px solid #d9d9d9}}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.w-100{width:100%}.w-75{width:75%}.w-50{width:50%}.w-25{width:25%}.h-100{height:100%}.h-75{height:75%}.h-50{height:50%}.h-25{height:25%}.rounded{border-radius:6px}.rounded-sm{border-radius:4px}.rounded-lg{border-radius:8px}.rounded-xl{border-radius:12px}.shadow{box-shadow:0 2px 8px #00000026}.shadow-sm{box-shadow:0 1px 4px #0000001f}.shadow-lg{box-shadow:0 4px 16px #0003}.border{border:1px solid #d9d9d9}.border-top{border-top:1px solid #d9d9d9}.border-bottom{border-bottom:1px solid #d9d9d9}.border-left{border-left:1px solid #d9d9d9}.border-right{border-right:1px solid #d9d9d9}
