*{box-sizing:border-box;margin:0;padding:0}body{color:#334155;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;font-family:Noto Sans SC,system-ui,sans-serif;font-size:14px}#root{width:100%;min-height:100vh}.header-card{background-color:#fff;border-radius:8px;justify-content:space-between;align-items:center;height:56px;margin-bottom:12px;padding:0 20px;display:flex;box-shadow:0 1px 3px #0000000a}.header-card .page-title{color:#0f172a;font-size:20px;font-weight:600}.header-card .header-actions{align-items:center;display:flex}.filter-card{background-color:#fff;border-radius:8px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px;padding:16px;display:flex;box-shadow:0 1px 3px #0000000a}.filter-card .filter-group{margin-right:16px}.filter-card .filter-group .filter-label{color:#64748b;margin-bottom:4px;font-size:12px;font-weight:500;display:block}.filter-card .filter-group .filter-select{width:160px;min-width:160px}.filter-card .filter-group .filter-select-small{width:120px;min-width:120px}.filter-card .filter-group .filter-input{width:100%}.filter-card .flex-fill{flex:1;max-width:320px}.filter-card .filter-submit{white-space:nowrap;margin-right:0}.filter-card .filter-right{margin-left:auto;margin-right:0}.content-card{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000000a}.card{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000a}.data-table thead tr th{color:#64748b;background-color:#f1f5f9;border-bottom:1px solid #e2e8f0;height:40px;padding:10px 16px;font-size:12px;font-weight:500}.data-table tbody tr:not(.ant-table-measure-row) td{color:#334155;border-bottom:1px solid #f1f5f9;padding:12px 16px;font-size:14px}.data-table tbody tr:not(.ant-table-measure-row):hover td{background-color:#f8fafc}.operation{flex-wrap:wrap;justify-content:flex-start;align-items:center;display:flex}.operation span{color:#e60012;cursor:pointer;margin-right:10px;font-size:14px;line-height:1.5;transition:color .2s}.operation span:hover{color:#cc0010}.operation span:last-child{margin-right:0}.operation .operation-disabled{color:#94a3b8;cursor:not-allowed;pointer-events:none}.operation .operation-disabled:hover{color:#94a3b8}.status-tag{border-radius:4px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-block}.status-tag.tag-active{color:#e60012;background-color:#fff1f0;border:1px solid #ffa39e}.status-tag.tag-done{color:#64748b;background-color:#f1f5f9;border:1px solid #e2e8f0}.status-tag.tag-warning{color:#f59e0b;background-color:#fff7ed;border:1px solid #ffedd5}.status-tag.tag-info{color:#e60012;background-color:#fff1f0;border:1px solid #ffa39e}.action-link{color:#64748b;padding:4px 8px;font-size:13px;transition:color .2s}.action-link:hover{color:#e60012;background-color:#fff1f0;border-radius:4px}.progress-bar{align-items:center;display:flex}.progress-bar .progress-track{background-color:#e2e8f0;border-radius:9999px;flex:1;height:8px;margin-right:8px;overflow:hidden}.progress-bar .progress-fill{background-color:#e60012;border-radius:9999px;height:100%}.progress-bar .progress-text{color:#64748b;font-size:12px;font-weight:500}.page-container{min-height:calc(100vh - 48px)}.placeholder-container{background-color:#fff;border-radius:8px;justify-content:center;align-items:center;min-height:100vh;display:flex;box-shadow:0 1px 3px #0000000a}.placeholder-view{text-align:center;color:#94a3b8;flex-direction:column;align-items:center;display:flex}.placeholder-view .placeholder-icon{color:#e2e8f0;margin-bottom:24px;font-size:64px}.placeholder-view h3{color:#64748b;margin-bottom:8px;font-size:18px;font-weight:600}.placeholder-view p{font-size:14px}.ant-btn{justify-content:center;align-items:center;height:36px;display:inline-flex}.ant-btn+.ant-btn{margin-left:10px}.ant-btn-primary{box-shadow:none}.ant-table,.ant-select{font-size:14px}._adminLayout_1gl85_1{background-color:#f8fafc;flex-direction:column;height:100vh;display:flex}._adminLayout_1gl85_1 .layout-loading{justify-content:center;align-items:center;height:100vh;display:flex}._adminLayout_1gl85_1 .header-bar{z-index:20;background-color:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;height:48px;padding:0 20px;display:flex;position:relative;box-shadow:0 6px 24px #0f172a08}._adminLayout_1gl85_1 .header-left,._adminLayout_1gl85_1 .brand-panel{align-items:center;display:flex}._adminLayout_1gl85_1 .brand-mark{background:linear-gradient(135deg,#e60012 0%,#cc0010 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;box-shadow:0 10px 20px #e600122e}._adminLayout_1gl85_1 .brand-mark-text{color:#fff;letter-spacing:.08em;margin-left:1px;font-size:16px;font-weight:700;line-height:1}._adminLayout_1gl85_1 .brand-copy{align-items:center;margin-left:12px;display:flex}._adminLayout_1gl85_1 .brand-text{color:#0f172a;letter-spacing:.04em;font-size:16px;font-weight:700}._adminLayout_1gl85_1 .brand-divider{background-color:#e2e8f0;width:1px;height:14px;margin-left:12px;margin-right:12px}._adminLayout_1gl85_1 .brand-sub{color:#64748b;letter-spacing:.08em;font-size:12px}._adminLayout_1gl85_1 .header-right{align-items:center;display:flex}._adminLayout_1gl85_1 .user-btn{cursor:pointer;background:linear-gradient(#fff 0%,#f8fafc 100%);border:1px solid #e2e8f0;border-radius:12px;align-items:center;padding:3px 12px 3px 4px;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000000a}._adminLayout_1gl85_1 .user-btn:hover{background-color:#fff1f0;border-color:#ffa39e;transform:translateY(-1px)}._adminLayout_1gl85_1 .user-btn:focus-visible{border-color:#ffa39e;outline:none;box-shadow:0 0 0 3px #e600121f}._adminLayout_1gl85_1 .user-avatar{border:2px solid #fff;border-radius:50%;width:32px;height:32px;box-shadow:0 4px 12px #e6001229}._adminLayout_1gl85_1 .user-meta{flex-direction:column;align-items:flex-start;margin-left:8px;display:flex}._adminLayout_1gl85_1 .user-name{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;max-width:88px;font-size:14px;font-weight:600;line-height:18px;overflow:hidden}._adminLayout_1gl85_1 .user-role{color:#64748b;font-size:11px;line-height:14px}._adminLayout_1gl85_1 .dropdown-arrow{color:#94a3b8;margin-left:8px;font-size:10px}._adminLayout_1gl85_1 .body-container{flex:1;display:flex;overflow:hidden}._adminLayout_1gl85_1 .sidebar-nav{background-color:#fff;border-right:1px solid #e2e8f0;flex-direction:column;width:220px;transition:width .2s;display:flex;overflow:hidden}._adminLayout_1gl85_1 .sidebar-nav.collapsed{width:64px}._adminLayout_1gl85_1 .sidebar-nav.collapsed .sidebar-footer{justify-content:center}._adminLayout_1gl85_1 .sidebar-footer{border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:flex-end;align-items:center;height:48px;padding:0 16px;display:flex}._adminLayout_1gl85_1 .collapse-btn-sidebar{cursor:pointer;color:#334155;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;transition:all .2s;display:flex}._adminLayout_1gl85_1 .collapse-btn-sidebar:hover{color:#e60012;background-color:#f8fafc}._adminLayout_1gl85_1 .nav-content{flex:1;padding:8px 0;overflow:hidden auto}._adminLayout_1gl85_1 .nav-content::-webkit-scrollbar{width:4px}._adminLayout_1gl85_1 .nav-content::-webkit-scrollbar-thumb{background-color:#00000026;border-radius:4px}._adminLayout_1gl85_1 .nav-content::-webkit-scrollbar-track{background-color:#0000}._adminLayout_1gl85_1 .custom-menu{background:0 0;border-right:none}._adminLayout_1gl85_1 .custom-menu .ant-menu-item-group-title{color:#64748b;letter-spacing:.05em;margin-top:16px;margin-bottom:4px;padding-left:16px;padding-right:16px;font-size:11px;font-weight:500}._adminLayout_1gl85_1 .custom-menu .ant-menu-item-group:first-child .ant-menu-item-group-title{margin-top:8px}._adminLayout_1gl85_1 .custom-menu .ant-menu-submenu-title{color:#334155;border-radius:8px;height:40px;margin:2px 8px;font-size:14px;font-weight:400;line-height:40px}._adminLayout_1gl85_1 .custom-menu .ant-menu-submenu-title:hover{color:#e60012;background-color:#f8fafc}._adminLayout_1gl85_1 .custom-menu .ant-menu-submenu-title .ant-menu-submenu-arrow{color:#64748b}._adminLayout_1gl85_1 .custom-menu .ant-menu-submenu-selected>.ant-menu-submenu-title{color:#e60012}._adminLayout_1gl85_1 .custom-menu .ant-menu-item{color:#64748b;border-radius:8px;height:40px;margin:2px 8px;padding-left:20px;font-size:14px;line-height:40px}._adminLayout_1gl85_1 .custom-menu .ant-menu-item:hover{color:#e60012;background-color:#f8fafc}._adminLayout_1gl85_1 .custom-menu .ant-menu-item.ant-menu-item-selected{color:#e60012;background-color:#fff1f0;font-weight:500}._adminLayout_1gl85_1 .custom-menu .ant-menu-item.ant-menu-item-selected:after{display:none}._adminLayout_1gl85_1 .custom-menu .ant-menu-item.ant-menu-item-selected:before{content:"";background-color:#e60012;border-radius:0 2px 2px 0;width:3px;height:20px;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}._adminLayout_1gl85_1 .custom-menu.ant-menu-inline-collapsed{width:64px}._adminLayout_1gl85_1 .custom-menu.ant-menu-inline-collapsed .ant-menu-item,._adminLayout_1gl85_1 .custom-menu.ant-menu-inline-collapsed .ant-menu-submenu-title{justify-content:center;align-items:center;display:flex;padding:0!important}._adminLayout_1gl85_1 .custom-menu.ant-menu-inline-collapsed .ant-menu-item-icon,._adminLayout_1gl85_1 .custom-menu.ant-menu-inline-collapsed .ant-icon{justify-content:center;align-items:center;font-size:18px;display:flex;margin:0!important}._adminLayout_1gl85_1 .custom-menu.ant-menu-inline-collapsed .ant-menu-item-group-title{display:none}._adminLayout_1gl85_1 .main-content{flex-direction:column;flex:1;display:flex;overflow:hidden}._adminLayout_1gl85_1 .content-area{background-color:#f8fafc;flex-direction:column;flex:1;min-height:0;padding:20px;display:flex;overflow:auto}._adminLayout_1gl85_1 .content-area::-webkit-scrollbar{width:6px;height:6px}._adminLayout_1gl85_1 .content-area::-webkit-scrollbar-thumb{background-color:#00000026;border-radius:6px}._adminLayout_1gl85_1 .watermark-wrap{flex-direction:column;flex:1;min-height:0;display:flex}._adminLayout_1gl85_1 .content-area-workbench{overflow:hidden}
