html,body,#root{width:100%;max-width:100%;min-height:100%;margin:0;padding:0}body{font-family:Alibaba Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}*{box-sizing:border-box}img,video,canvas,svg{max-width:100%}.ant-app,.ant-layout,.ant-pro-layout,.ant-pro-layout-container,.ant-pro-page-container,.ant-pro-page-container-children-container,.ant-table-wrapper,.ant-pro-table,.ant-card,.ant-form,.ant-descriptions{max-width:100%}.ant-table-wrapper{overflow-x:auto}.ant-table{min-width:0}.ant-typography,.ant-table-cell,.ant-descriptions-item-content{overflow-wrap:anywhere}@media(max-width:767px){.ant-pro-page-container-children-container{padding-inline:12px!important;padding-block:12px!important}.ant-pro-page-container .ant-page-header{padding-inline:12px}.ant-pro-table .ant-pro-card-body,.ant-card .ant-card-body{padding:12px}.ant-pro-table-search{margin-block-end:12px}.ant-pro-table-list-toolbar-container{padding-block:8px}.ant-pro-table-list-toolbar-left,.ant-pro-table-list-toolbar-right,.ant-space{max-width:100%}}.route-loading{min-height:240px;display:flex;align-items:center;justify-content:center}.app-layout{min-height:100vh}.app-page-container{max-width:100%}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.app-loading-dot{width:36px;height:36px;border:3px solid rgba(37,99,235,.2);border-top-color:#2563eb;border-radius:999px;animation:app-spin .8s linear infinite}@keyframes app-spin{to{transform:rotate(360deg)}}.login-panel{width:min(420px,calc(100vw - 32px));padding:32px;border-radius:16px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.login-panel[data-theme=light]{background:#ffffffb3;border:1px solid rgba(148,163,184,.35);box-shadow:0 14px 38px #0f172a1f}.login-panel[data-theme=dark]{background:#0f172a6b;border:1px solid rgba(148,163,184,.24);box-shadow:0 18px 50px #0206176b}.login-header{text-align:center;margin-bottom:24px}.login-logo{width:56px;height:56px;object-fit:contain}.login-header h1{margin:12px 0 4px;color:#0f172a;font-size:30px;line-height:1.2}.login-panel[data-theme=dark] .login-header h1{color:#e2e8f0;text-shadow:0 2px 14px rgba(148,163,184,.28)}.login-header p{margin:0;color:#64748b}.login-panel[data-theme=dark] .login-header p{color:#94a3b8}.login-error{margin-bottom:16px;padding:10px 12px;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#b91c1c;font-size:14px}.login-form{display:grid;gap:16px}.login-form label{display:grid;gap:6px;color:#334155;font-size:14px}.login-panel[data-theme=dark] .login-form label{color:#cbd5e1}.login-form input{width:100%;height:42px;padding:0 12px;border:1px solid #cbd5e1;border-radius:8px;background:#ffffffe6;color:#0f172a;font:inherit;outline:none}.login-form input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb29}.login-form button{height:42px;border:0;border-radius:8px;background:#2563eb;color:#fff;font:inherit;font-weight:600;cursor:pointer}.login-form button:disabled{cursor:wait;opacity:.72}@media(max-width:767px){.app-layout .ant-pro-layout-content{margin:0}.app-layout .ant-layout-header,.app-layout .ant-pro-global-header{padding-inline:8px}.app-layout .ant-pro-global-header-logo h1{font-size:16px}.login-panel{padding:24px}}
