*{margin:0;padding:0;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}button{border:none;background:none;cursor:pointer;outline:none}input,textarea,select{outline:none;border:none;background:none}img{max-width:100%;height:auto;vertical-align:middle}h1,h2,h3,h4,h5,h6{font-weight:400;font-size:inherit}fieldset{border:none;margin:0;padding:0}legend{border:0;padding:0}.clearfix:after{content:"";display:table;clear:both}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}::selection{background-color:#1890ff33;color:inherit}::-moz-selection{background-color:#1890ff33;color:inherit}.page-container{padding:24px;background-color:#fff;min-height:calc(100vh - 64px)}.page-header{margin-bottom:24px}.page-header .page-title{font-size:20px;font-weight:600;color:#000000d9;margin-bottom:12px}.page-header .page-description{color:#000000a6;margin-bottom:16px}.editor-content{border:1px solid #d9d9d9;transition:border .2s ease}.editor-content.focused{border:none!important;outline:none}.stats-card .ant-card-body{padding:24px}.stats-card .stats-number{font-size:24px;font-weight:600;color:#1890ff;margin-bottom:8px}.stats-card .stats-label{color:#000000a6;font-size:12px}.stats-card .stats-trend{margin-top:12px;font-size:12px}.stats-card .stats-trend.trend-up{color:#52c41a}.stats-card .stats-trend.trend-down{color:#f5222d}.data-table .ant-table{background-color:#fff;border-radius:6px;box-shadow:none}.data-table .table-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px;background-color:#fff;border-radius:6px;box-shadow:none}.data-table .table-toolbar .toolbar-left,.data-table .table-toolbar .toolbar-right{display:flex;align-items:center;gap:12px}.data-table .table-actions{display:flex;gap:8px}.data-table .table-actions .ant-btn{padding:4px 8px;height:auto;font-size:12px}.form-container{background-color:#fff;padding:24px;border-radius:6px;box-shadow:0 1px 2px -2px #00000029,0 3px 6px #0000001f,0 5px 12px 4px #00000017}.form-container .form-section{margin-bottom:32px}.form-container .form-section .section-title{font-size:16px;font-weight:600;color:#000000d9;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f0f0f0}.form-container .form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:16px;border-top:1px solid #f0f0f0}.search-form{background-color:#fff;padding:16px;margin-bottom:16px;border-radius:6px;box-shadow:0 1px 2px -2px #00000029,0 3px 6px #0000001f,0 5px 12px 4px #00000017}.search-form .ant-form-item{margin-bottom:12px}.search-form .search-actions{display:flex;gap:12px;justify-content:flex-end}.filter-container{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.filter-container .filter-item{min-width:200px}.status-tag.status-active{background-color:#f6ffed;border-color:#b7eb8f;color:#52c41a}.status-tag.status-inactive{background-color:#fff2e8;border-color:#ffbb96;color:#fa8c16}.status-tag.status-disabled{background-color:#f5f5f5;border-color:#d9d9d9;color:#8c8c8c}.chart-container{background-color:#fff;padding:24px;border-radius:6px;box-shadow:0 1px 2px -2px #00000029,0 3px 6px #0000001f,0 5px 12px 4px #00000017}.chart-container .chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.chart-container .chart-header .chart-title{font-size:16px;font-weight:600;color:#000000d9}.chart-container .chart-header .chart-extra{display:flex;gap:12px}.chart-container .chart-content{min-height:300px}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px}.loading-container .ant-spin .ant-spin-text{color:#000000a6}.empty-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:200px;color:#000000a6}.empty-container .empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-container .empty-text{font-size:14px}@media (max-width: 768px){.page-container{padding:16px}.table-toolbar{flex-direction:column;gap:12px}.table-toolbar .toolbar-left,.table-toolbar .toolbar-right{width:100%;justify-content:center}.form-actions{flex-direction:column}.form-actions .ant-btn{width:100%}.filter-container .filter-item{min-width:100%}}.main-layout{min-height:100vh}.main-layout .ant-layout-header{background-color:#fff;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-left:1px solid #f0f0f0;position:sticky;top:0;z-index:2}.main-layout .ant-layout-header .header-left{display:flex;align-items:center}.main-layout .ant-layout-header .header-left .logo{display:flex;align-items:center;margin-right:32px}.main-layout .ant-layout-header .header-left .logo img{height:32px;margin-right:12px}.main-layout .ant-layout-header .header-left .logo .logo-text{font-size:16px;font-weight:600;color:#000000d9}.main-layout .ant-layout-header .header-left .breadcrumb .ant-breadcrumb{font-size:14px}.main-layout .ant-layout-header .header-right{display:flex;align-items:center;gap:16px}.main-layout .ant-layout-header .header-right .header-action{display:flex;align-items:center;padding:8px;border-radius:6px;cursor:pointer;transition:background-color .2s}.main-layout .ant-layout-header .header-right .header-action:hover{background-color:#fafafa}.main-layout .ant-layout-header .header-right .user-info{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;cursor:pointer;transition:all .2s}.main-layout .ant-layout-header .header-right .user-info:hover{background-color:#fafafa}.main-layout .ant-layout-header .header-right .user-info .avatar .ant-avatar{background-color:#1890ff;border:2px solid rgba(24,144,255,.2);transition:all .2s}.main-layout .ant-layout-header .header-right .user-info .avatar .ant-avatar:hover{border-color:#1890ff;transform:scale(1.05)}.main-layout .ant-layout-header .header-right .user-info .user-details{display:flex;flex-direction:column;line-height:1.2}.main-layout .ant-layout-header .header-right .user-info .user-details .username{font-weight:500;color:#000000d9;font-size:14px;margin-bottom:2px}.main-layout .ant-layout-header .header-right .user-info .user-details .role{font-size:12px;color:#000000a6;opacity:.8}.main-layout .ant-layout-sider{background-color:#fff;box-shadow:0 3px 6px -4px #0000001f,0 6px 16px #00000014,0 9px 28px 8px #0000000d}.main-layout .ant-layout-sider .sider-header{height:64px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #f0f0f0}.main-layout .ant-layout-sider .sider-header .sider-logo{display:flex;align-items:center}.main-layout .ant-layout-sider .sider-header .sider-logo img{height:28px;margin-right:12px}.main-layout .ant-layout-sider .sider-header .sider-logo .sider-title{font-size:14px;font-weight:600;color:#000000d9;white-space:nowrap;overflow:hidden}.main-layout .ant-layout-sider .ant-menu{border-right:none}.main-layout .ant-layout-sider .ant-menu .ant-menu-item{margin:4px 8px;border-radius:6px}.main-layout .ant-layout-sider .ant-menu .ant-menu-item.ant-menu-item-selected{background-color:#1890ff1a}.main-layout .ant-layout-sider .ant-menu .ant-menu-item.ant-menu-item-selected:after{display:none}.main-layout .ant-layout-sider .ant-menu .ant-menu-submenu{margin:4px 8px}.main-layout .ant-layout-sider .ant-menu .ant-menu-submenu .ant-menu-submenu-title{border-radius:6px}.main-layout .ant-layout-content{background-color:#f0f2f5;min-height:calc(100vh - 64px);overflow-x:hidden}.auth-layout{min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);display:flex;align-items:center;justify-content:center}.auth-layout .auth-container{width:100%;max-width:400px;padding:32px;background-color:#fff;border-radius:8px;box-shadow:0 10px 40px #0000001a}.auth-layout .auth-container .auth-header{text-align:center;margin-bottom:32px}.auth-layout .auth-container .auth-header .auth-logo{margin-bottom:16px}.auth-layout .auth-container .auth-header .auth-logo img{height:48px}.auth-layout .auth-container .auth-header .auth-title{font-size:20px;font-weight:600;color:#000000d9;margin-bottom:12px}.auth-layout .auth-container .auth-header .auth-subtitle{color:#000000a6;font-size:14px}.auth-layout .auth-container .auth-form .ant-form-item{margin-bottom:24px}.auth-layout .auth-container .auth-form .form-actions{display:flex;flex-direction:column;gap:16px}.auth-layout .auth-container .auth-form .form-actions .ant-btn{height:40px;font-size:14px}.auth-layout .auth-container .auth-form .form-extra{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.auth-layout .auth-container .auth-form .form-extra .ant-checkbox-wrapper{color:#000000a6}.auth-layout .auth-container .auth-form .form-extra .forgot-password{color:#1890ff}.auth-layout .auth-container .auth-form .form-extra .forgot-password:hover{color:#4ba9ff}.page-content{padding:24px}.page-content .content-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-content .content-header .header-info .page-title{font-size:20px;font-weight:600;color:#000000d9;margin-bottom:8px}.page-content .content-header .header-info .page-description{color:#000000a6;font-size:14px}.page-content .content-header .header-actions{display:flex;gap:12px}.page-content .content-body .content-section{margin-bottom:32px}.page-content .content-body .content-section:last-child{margin-bottom:0}.ant-layout-sider-collapsed .sider-header .sider-title{display:none}@media (max-width: 992px){.main-layout .ant-layout-header{padding:0 16px}.main-layout .ant-layout-header .header-left .logo{margin-right:16px}.main-layout .ant-layout-header .header-left .logo .logo-text{display:none}.main-layout .ant-layout-header .header-right{gap:12px}.main-layout .ant-layout-header .header-right .user-details{display:none}.page-content{padding:16px}.page-content .content-header{flex-direction:column;gap:16px}.page-content .content-header .header-actions{width:100%;justify-content:flex-start}}@media (max-width: 768px){.auth-layout{padding:16px}.auth-layout .auth-container{padding:24px}.main-layout .ant-layout-sider{position:fixed!important;left:0;top:0;bottom:0;z-index:1050}.main-layout .ant-layout-content{margin-left:0!important}.page-content{padding:12px}}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol;font-size:14px;line-height:1.5;color:#000000d9;background-color:#f0f2f5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column;min-width:1636px}.app-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#f0f2f5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){html,body{min-width:100%}.ant-layout-sider{position:fixed!important;left:0;top:0;bottom:0;z-index:1000}}@media print{.no-print{display:none!important}}
