html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}.veil[data-v-b8155160]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 18% 18%,rgba(63,111,245,.14),transparent 44%),radial-gradient(circle at 82% 84%,rgba(105,177,255,.16),transparent 46%),linear-gradient(135deg,#f8faff,#eaf1ff)}.veil__inner[data-v-b8155160]{text-align:center}.veil__title[data-v-b8155160]{margin:0;font-size:28px;font-weight:600;line-height:1.5;color:#1f2937;animation:veil-rise-b8155160 .6s cubic-bezier(.22,1,.36,1) both}.veil__subtitle[data-v-b8155160]{margin:12px 0 0;font-size:14px;letter-spacing:.06em;color:#667085;animation:veil-rise-b8155160 .6s cubic-bezier(.22,1,.36,1) .1s both}.veil__bar[data-v-b8155160]{display:block;width:148px;height:3px;margin:26px auto 0;border-radius:2px;background:#3f6ff524;overflow:hidden;animation:veil-fade-b8155160 .5s ease .15s both}.veil__bar i[data-v-b8155160]{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,#8fb0ff,#3f6ff5);animation:veil-bar-b8155160 linear both}.veil-enter-active[data-v-b8155160]{transition:opacity .28s ease}.veil-leave-active[data-v-b8155160]{transition:opacity .4s ease,transform .4s ease}.veil-enter-from[data-v-b8155160],.veil-leave-to[data-v-b8155160]{opacity:0}.veil-leave-to[data-v-b8155160]{transform:scale(1.02)}@keyframes veil-rise-b8155160{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes veil-fade-b8155160{0%{opacity:0}to{opacity:1}}@keyframes veil-bar-b8155160{0%{width:0}to{width:100%}}:root{--app-bg: #f5f7fb;--app-border: #e9eef7;--app-radius: 10px;--app-text-weak: #98a2b3}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--app-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased}.muted{color:var(--app-text-weak);font-size:12px}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.app-sider.ant-layout-sider{background:linear-gradient(180deg,#fff,#fbfcff)!important;border-right:1px solid var(--app-border)}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%}.app-brand{height:56px;display:flex;align-items:center;gap:10px;padding:0 16px;font-size:15px;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;flex:0 0 56px}.app-brand--collapsed{justify-content:center;padding:0}.app-brand__logo{width:26px;height:26px;flex:0 0 26px;object-fit:contain}.app-menu{flex:1;overflow-y:auto;padding:4px 8px 16px;border-inline-end:none}.app-menu .ant-menu-item{border-radius:8px}.app-menu .ant-menu-item-selected{background:#eef4ff!important;color:#2f6fed!important;font-weight:600}.app-menu .ant-menu-item-selected:after{display:none}.app-menu .ant-menu-item-group-title{font-size:12px;color:var(--app-text-weak);padding:12px 12px 6px}.app-header.ant-layout-header{height:56px;background:#fff!important;border-bottom:1px solid var(--app-border);padding:0 16px;display:flex;align-items:center;justify-content:space-between}.app-header__left{display:flex;align-items:center;gap:8px}.app-header__user{display:flex;align-items:center;gap:8px;padding:4px 10px;border-radius:8px;cursor:pointer;font-size:13px;color:#374151}.app-header__user:hover{background:#f5f7fa}.app-body{height:calc(100vh - 100px);overflow-y:scroll;padding:16px 20px 20px}.app-footer{position:fixed;left:208px;right:0;bottom:0;z-index:9;display:flex;align-items:center;justify-content:center;height:44px;padding:0 24px;background:#ffffffd1;border-top:1px solid rgba(15,23,42,.06);box-shadow:0 -8px 24px #0f172a0a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:left .2s}.app-footer--collapsed{left:80px}.footer-inner{display:flex;align-items:center;gap:16px}.footer-rule{display:block;width:clamp(36px,10vw,120px);height:1px;background:linear-gradient(90deg,transparent,#d7deea)}.footer-rule--right{background:linear-gradient(90deg,#d7deea,transparent)}.footer-brand{display:inline-flex;align-items:center;gap:8px;font-family:Songti SC,STSong,"Noto Serif SC",serif;font-size:12.5px;letter-spacing:.12em;color:#475467;white-space:nowrap}.footer-mark{color:#c8a45c;font-size:8px;line-height:1}.footer-name{font-weight:600;color:#344054}.footer-sep{color:#c8a45c}.footer-years{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:11.5px;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:#98a2b3}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.toolbar-actions{display:flex;align-items:center;gap:8px}.ant-card{border-radius:var(--app-radius)}.ant-table-thead>tr>th{background:#fafbfc;font-weight:600}.login{height:100vh;display:flex;background:#f5f7fb}.login__aside{position:relative;flex:0 0 56%;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:44px 48px;color:#1f2937;border-right:1px solid #e9eef7;background:radial-gradient(circle at 80% 14%,rgba(105,177,255,.22),transparent 46%),radial-gradient(circle at 10% 92%,rgba(63,111,245,.14),transparent 52%),linear-gradient(150deg,#f8faff,#eef4ff 56%,#e4edff)}.login__aside:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(63,111,245,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(63,111,245,.07) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(circle at 44% 44%,#000 10%,transparent 78%);mask-image:radial-gradient(circle at 44% 44%,#000 10%,transparent 78%);pointer-events:none}.login__brand{position:relative;display:flex;align-items:center;gap:10px}.login__brand:before{content:"";width:3px;height:18px;border-radius:2px;background:linear-gradient(180deg,#69b1ff,#3f6ff5)}.login__name{font-size:17px;font-weight:600;letter-spacing:.18em;color:#1f2937}.login__visual{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px}.login__art{position:relative;width:320px;height:320px;display:flex;align-items:center;justify-content:center}.login__ring{position:absolute;border-radius:50%;border:1px solid rgba(63,111,245,.18)}.login__ring--lg{width:300px;height:300px;border-style:dashed;animation:login-spin 40s linear infinite}.login__ring--md{width:208px;height:208px;animation:login-spin 22s linear infinite reverse}.login__ring--md:after{content:"";position:absolute;top:-4px;left:50%;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:#3f6ff5;box-shadow:0 0 14px 3px #3f6ff559}.login__ring--sm{width:132px;height:132px;border-color:#3f6ff552}.login__glow{width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#3f6ff533,#3f6ff500 70%);animation:login-pulse 5s ease-in-out infinite}.login__intro{text-align:center}.login__intro-title{margin:0 0 10px;font-size:20px;font-weight:600;letter-spacing:1px}.login__main{flex:1;display:flex;align-items:center;justify-content:center;padding:32px;background:#fff}.login__form{width:340px}.login__form-title{margin:0 0 28px;font-size:22px;font-weight:600;color:#111827;letter-spacing:.5px}.login__form-title:after{content:"";display:block;width:34px;height:3px;margin-top:12px;border-radius:2px;background:linear-gradient(90deg,#3f6ff5,#69b1ff)}.login__form .ant-form-item{margin-bottom:18px}.login__form .ant-form-item-label{display:none}@keyframes login-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes login-pulse{0%,to{transform:scale(.92);opacity:.6}50%{transform:scale(1.08);opacity:1}}@media(max-width:900px){.login{flex-direction:column}.login__aside{flex:0 0 auto;padding:22px 24px}.login__visual{display:none}.login__main{flex:1;align-items:flex-start;padding-top:52px;overflow-y:auto}}@media(max-width:600px){.login__aside{padding:18px 20px}.login__main{padding:40px 18px 24px}.login__form{width:100%;max-width:360px;margin:0 auto}}.app-mobile-brand{font-size:15px;font-weight:600;color:#1f2937}@media(max-width:768px){.app-header.ant-layout-header{padding:0 8px}.app-header__left{gap:4px}.app-body{height:calc(100vh - 94px);height:calc(100dvh - 94px);padding:12px 12px 20px}.app-footer{left:0!important;height:38px;padding:0 12px}.footer-inner{gap:8px;width:100%;justify-content:center}.footer-rule{width:20px}.footer-brand{gap:4px;font-size:11px;letter-spacing:.06em}.footer-years{font-size:10.5px}.ant-card-body{padding:14px 12px}.ant-card-head{padding:0 12px}.ant-card-head-title{min-width:0;white-space:normal}.ant-card-head-wrapper{flex-wrap:wrap;gap:6px;padding:8px 0}.ant-card-extra{margin-left:0}.page-toolbar{flex-wrap:wrap;align-items:flex-start}.ant-modal{max-width:calc(100vw - 20px);margin:10px auto;top:0;padding-bottom:10px}.ant-modal .ant-modal-content{padding:16px 14px}.ant-modal .ant-modal-body{max-height:68vh;overflow-y:auto}.ant-modal .ant-space-horizontal{flex-wrap:wrap}.ant-modal .ant-space-item{max-width:100%}.ant-drawer-content-wrapper{max-width:100vw!important}.ant-drawer-body{padding:14px 12px}.ant-drawer-body .app-menu{height:calc(100vh - 56px);height:calc(100dvh - 56px);overflow-y:auto;padding-bottom:24px}.ant-table-container,.ant-table-content{overflow-x:auto}.ant-table-content table{min-width:560px}.compact-table .ant-table-content table{min-width:0}.ant-picker-dropdown,.ant-select-dropdown{max-width:calc(100vw - 12px)}.ant-popover{max-width:calc(100vw - 24px)}.ant-popover-inner{max-height:55vh;overflow-y:auto}.ant-tabs-tab{padding:8px 0}.ant-form-item{margin-bottom:14px}.ant-space-horizontal{max-width:100%}}
