.login-page{background:var(--bg-page);height:100vh;display:flex;overflow:hidden}.login-brand{background:linear-gradient(135deg,#1677ff 0%,#4096ff 50%,#69b1ff 100%);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-brand .brand-content{z-index:2;color:#fff;text-align:left;max-width:520px;padding:0 60px;position:relative}.login-brand .brand-logo{letter-spacing:4px;text-shadow:0 2px 12px #00000026;margin-bottom:16px;font-size:44px;font-weight:700}.login-brand .brand-slogan{opacity:.9;letter-spacing:1px;margin-bottom:48px;font-size:18px}.login-brand .brand-features{flex-direction:column;gap:16px;display:flex}.login-brand .feature-item{opacity:.95;align-items:center;gap:12px;font-size:15px;display:flex}.login-brand .feature-dot{background:#fff;border-radius:50%;width:8px;height:8px;box-shadow:0 0 12px #fffc}.login-brand .brand-decoration{pointer-events:none;position:absolute;inset:0}.login-brand .circle{background:#ffffff14;border-radius:50%;position:absolute}.login-brand .circle-1{width:400px;height:400px;animation:8s ease-in-out infinite float;top:-100px;right:-100px}.login-brand .circle-2{width:300px;height:300px;animation:10s ease-in-out infinite reverse float;bottom:-80px;left:-80px}.login-brand .circle-3{background:#ffffff0d;width:200px;height:200px;animation:12s ease-in-out infinite float;top:50%;right:10%}@keyframes float{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-30px)scale(1.05)}}.login-form-wrap{background:#fff;justify-content:center;align-items:center;width:520px;display:flex;box-shadow:-8px 0 32px #1677ff14}.login-form-card{width:380px;padding:40px}.login-form-card .form-header{margin-bottom:32px}.login-form-card .form-header h2{color:var(--text-primary,#1d2129);margin:0 0 8px;font-size:28px;font-weight:600}.login-form-card .form-header p{color:var(--text-secondary,#4e5969);margin:0;font-size:14px}.login-form-card .captcha-row{align-items:center;gap:8px;width:100%;display:flex}.login-form-card .captcha-img{border:1px solid var(--border-color,#d6e4ff);cursor:pointer;background:#f7fafe;border-radius:6px;justify-content:center;align-items:center;width:120px;height:40px;transition:all .2s;display:flex;overflow:hidden}.login-form-card .captcha-img:hover{border-color:var(--primary-color,#4096ff)}.login-form-card .captcha-img img{object-fit:cover;width:100%;height:100%}.login-form-card .captcha-img span{color:var(--text-secondary,#4e5969);font-size:12px}.login-form-card .form-footer{text-align:center;color:var(--text-secondary,#86909c);margin-top:24px;font-size:12px}@media (width<=900px){.login-brand{display:none}.login-form-wrap{width:100%}.login-form-card{width:90%;max-width:380px}}*{-webkit-user-select:none;user-select:none;outline:none;margin:0;padding:0}:root{--primary-color:#4096ff;--bg-page:#f0f7ff;--bg-header:#f0f7ff;--bg-sider:#fff;--bg-logo:linear-gradient(135deg, #1677ff 0%, #4096ff 100%);--border-color:#d6e4ff;--light-border-color:#e6f4ff;--menu-selected-bg:#e6f4ff;--menu-selected-color:#1677ff;--menu-hover-bg:#f0f7ff;--box-shadow:0 2px 8px #1677ff0f;--scroll-thumb:#4096ff66;--scroll-thumb-hover:#4096ffb3;--scroll-track:#f0f7ff;--text-primary:#1d2129;--text-secondary:#4e5969;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif}#root{background-color:var(--bg-page);height:100vh}:root[data-theme=dark]{--text-primary:#ffffffd9;--text-secondary:#ffffffa6}::-webkit-scrollbar{background:0 0;width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scroll-track);border-radius:8px}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:8px;width:8px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.print-container{display:none}.print-container .print-page{page-break-after:always}@media print{.print-container{display:block}}.menu-tabs{background:var(--bg-sider);border-bottom:1px solid var(--light-border-color);padding:4px 8px 0}.menu-tabs .ant-tabs-nav{margin-bottom:0}.menu-tabs .ant-tabs-content{display:none}.menu-tabs .ant-tabs-tab{transition:all .2s;background:var(--menu-hover-bg)!important;border:1px solid #0000!important;border-bottom:none!important;border-radius:6px 6px 0 0!important;margin:0 2px!important}.menu-tabs .ant-tabs-tab:hover{background:var(--menu-selected-bg)!important}.menu-tabs .ant-tabs-tab-active{background:var(--bg-sider)!important;border-color:var(--border-color)!important}.menu-tabs .ant-tabs-tab .ant-tabs-tab-btn{color:var(--text-secondary)}.menu-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{font-weight:500;color:var(--menu-selected-color)!important}.ant-table-container{border-right:1px solid var(--border-color)}.ant-layout-content{min-height:280px;display:"flex";flex-direction:"column";margin:0;padding:16px}.ant-table-body{scrollbar-width:auto;scrollbar-color:auto;border-bottom:1px solid var(--border-color)}.ant-layout-sider{border-right:1px solid var(--light-border-color);overflow-y:auto}.ant-layout-sider-children{flex-direction:column;display:flex;overflow:hidden}.ant-layout-sider-children .logo{background:var(--bg-logo);border-bottom:1px solid var(--primary-color);color:#fff;letter-spacing:2px;height:56px;font-size:16px;font-weight:600;box-shadow:0 2px 4px #0000001a}.ant-layout-sider-children>.ant-menu{border-right:none;flex:1;overflow-y:auto}.ant-picker,.ant-input-number{width:100%}.ant-input-disabled{background-color:var(--menu-hover-bg)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important}.ant-btn-link{height:auto}.ant-btn-variant-link{border-radius:0;height:auto;padding:0}.ant-table-tbody *,.ant-descriptions-item-content span{-webkit-user-select:text;user-select:text}
