@import url(https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=IBM+Plex+Sans:wght@400;500;600;700&family=Noto+Serif+SC:wght@500;600;700&display=swap);:root{--auth-bg:#1e293b;--auth-bg-deep:#18222f;--auth-surface:#1e293ba8;--auth-surface-solid:#243042;--auth-border:#94a3b833;--auth-border-strong:#94a3b866;--auth-accent:#5eead4;--auth-accent-strong:#2dd4bf;--auth-accent-dim:#5eead48c;--auth-text:#f1f5f9;--auth-text-muted:#b6c2d2;--auth-text-faint:#8a99ac;--auth-input-line:#94a3b847;--auth-input-line-focus:var(--auth-accent-strong);--auth-error:#f87171;--auth-error-bg:#f871711a;--auth-error-border:#f8717152;--auth-success:#34d399;--auth-success-bg:#34d3991a;--auth-success-border:#34d39952;--auth-font-display:"Fraunces","Noto Serif SC",Georgia,"Songti SC",serif;--auth-font-mono:"IBM Plex Mono","SFMono-Regular","Consolas",monospace;--auth-font-sans:"IBM Plex Sans",-apple-system,"PingFang SC","Microsoft YaHei",sans-serif}.login-container{align-items:stretch;background:radial-gradient(120% 90% at 78% 8%,#2dd4bf1f 0,#0000 48%),radial-gradient(90% 70% at 12% 100%,#38bdf814 0,#0000 52%),#1e293b;background:radial-gradient(120% 90% at 78% 8%,#2dd4bf1f 0,#0000 48%),radial-gradient(90% 70% at 12% 100%,#38bdf814 0,#0000 52%),var(--auth-bg);color:#f1f5f9;color:var(--auth-text);display:flex;font-family:IBM Plex Sans,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-family:var(--auth-font-sans);height:100dvh;height:100vh;justify-content:center;overflow:hidden;padding:0;position:relative;width:100%}.login-container:before{background-image:linear-gradient(rgba(94,234,212,.035) 1px,#0000 0),linear-gradient(90deg,rgba(94,234,212,.035) 1px,#0000 0);background-position:-1px -1px;background-size:44px 44px;content:"";inset:0;mask-image:radial-gradient(ellipse 100% 100% at 50% 40%,#000 30%,#0000 85%);-webkit-mask-image:radial-gradient(ellipse 100% 100% at 50% 40%,#000 30%,#0000 85%);pointer-events:none;position:absolute;z-index:0}.auth-split{align-items:stretch;display:grid;grid-template-columns:1.05fr 1fr;height:100%;margin:0 auto;max-width:1080px;position:relative;width:100%;z-index:1}.auth-brand{animation:panelFadeIn .6s cubic-bezier(.16,1,.3,1) both;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:56px 56px 56px 64px;position:relative}.auth-brand-mark{align-items:baseline;color:#f1f5f9;color:var(--auth-text);display:inline-flex;font-family:Fraunces,"Noto Serif SC",Georgia,Songti SC,serif;font-family:var(--auth-font-display);font-size:clamp(1.9rem,2.6vw,2.35rem);font-weight:600;gap:.1em;letter-spacing:.04em;line-height:1.1;margin:0}.auth-brand-mark .dot{color:#2dd4bf;color:var(--auth-accent-strong);opacity:.9}.auth-brand-rule{background:#5eead48c;background:var(--auth-accent-dim);height:1px;margin:22px 0 24px;width:52px}.auth-brand-tagline{color:#f1f5f9;color:var(--auth-text);font-family:IBM Plex Sans,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-family:var(--auth-font-sans);font-size:1.02rem;font-weight:500;letter-spacing:.01em;margin:0 0 6px}.auth-brand-sub{color:#b6c2d2;color:var(--auth-text-muted);font-size:.84rem;letter-spacing:.04em;margin:0}.auth-brand-formulas{color:#5eead41a;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-family:var(--auth-font-mono);font-size:.78rem;inset:0;line-height:2.4;overflow:hidden;pointer-events:none;position:absolute;white-space:pre;z-index:-1}.auth-brand-formulas span{position:absolute;white-space:nowrap}.auth-brand-formulas .f1{color:#5eead41f;font-size:1.7rem;right:12%;top:14%}.auth-brand-formulas .f2{font-size:1.15rem;right:26%;top:30%}.auth-brand-formulas .f3{color:#5eead41a;font-size:1.3rem;right:8%;top:46%}.auth-brand-formulas .f4{bottom:26%;font-size:1rem;right:22%}.auth-brand-formulas .f5{bottom:14%;color:#5eead41c;font-size:1.4rem;right:12%}.auth-brand-formulas .f6{bottom:10%;font-size:.9rem;right:40%}.auth-brand-formulas .hex{font-size:0;height:99px;right:44%;top:18%;width:86px}.auth-brand-formulas .hex:before{background:#0000;border:1px solid #5eead429;-webkit-clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);content:"";inset:0;position:absolute}.auth-brand-foot{color:#8a99ac;color:var(--auth-text-faint);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-family:var(--auth-font-mono);font-size:.7rem;letter-spacing:.18em;margin-top:56px;text-transform:uppercase}.auth-brand-foot:before{background:#2dd4bf;background:var(--auth-accent-strong);border-radius:50%;box-shadow:0 0 8px #5eead48c;box-shadow:0 0 8px var(--auth-accent-dim);content:"";display:inline-block;height:6px;margin-right:10px;vertical-align:middle;width:6px}.auth-form-panel{animation:panelFadeIn .6s cubic-bezier(.16,1,.3,1) .08s both;display:flex;flex-direction:column;justify-content:center;padding:56px 64px}.login-card{backdrop-filter:none;-webkit-backdrop-filter:none;background:#0000;border:none;border-radius:0;box-shadow:none;margin:0;max-width:380px;padding:0;position:relative;width:100%;z-index:1}.login-card:hover{border-color:#0000;box-shadow:none}.auth-section-title{color:#f1f5f9;color:var(--auth-text);font-family:Fraunces,"Noto Serif SC",Georgia,Songti SC,serif;font-family:var(--auth-font-display);font-size:1.7rem;font-weight:600;letter-spacing:.01em;margin:0 0 6px}.auth-section-sub{color:#b6c2d2;color:var(--auth-text-muted);font-size:.82rem;letter-spacing:.04em;margin:0 0 36px}.login-header{margin-bottom:32px;position:relative}.login-header h1{-webkit-text-fill-color:currentColor;background:none;color:#f1f5f9;color:var(--auth-text);font-family:Fraunces,"Noto Serif SC",Georgia,Songti SC,serif;font-family:var(--auth-font-display);font-size:1.5rem;font-weight:600;letter-spacing:.04em;margin:0 0 8px}.login-header p{color:#b6c2d2;color:var(--auth-text-muted);font-size:.85rem;font-weight:400;letter-spacing:.03em;margin:0}.login-header:after{display:none}.login-form{margin-bottom:20px}.form-group{margin-bottom:26px}.form-group label{color:#b6c2d2;color:var(--auth-text-muted);display:block;font-size:.82rem;font-weight:500;letter-spacing:.02em;margin-bottom:10px}.form-group input,.form-group label{font-family:IBM Plex Sans,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-family:var(--auth-font-sans)}.form-group input{background:#0000;border:none;border-bottom:1px solid #94a3b847;border-bottom:1px solid var(--auth-input-line);border-radius:0;box-sizing:border-box;color:#f1f5f9;color:var(--auth-text);font-size:1rem;font-weight:400;letter-spacing:.01em;outline:none;padding:8px 0 12px;transition:border-color .25s ease,box-shadow .25s ease;width:100%}.form-group input::placeholder{color:#8a99ac;color:var(--auth-text-faint)}.form-group input:hover{background:#0000;border-bottom-color:#94a3b880}.form-group input:focus{background:#0000;border-bottom-color:#2dd4bf;border-bottom-color:var(--auth-input-line-focus);box-shadow:0 1px 0 0 #2dd4bf;box-shadow:0 1px 0 0 var(--auth-accent-strong)}.form-group input:disabled{cursor:not-allowed;opacity:.45}.form-group input:-webkit-autofill,.form-group input:-webkit-autofill:focus,.form-group input:-webkit-autofill:hover{-webkit-text-fill-color:#f1f5f9;-webkit-text-fill-color:var(--auth-text);-webkit-box-shadow:inset 0 0 0 1000px #18222f;-webkit-box-shadow:0 0 0 1000px var(--auth-bg-deep) inset;caret-color:#f1f5f9;caret-color:var(--auth-text);-webkit-transition:background-color 9999s ease-in-out 0s;transition:background-color 9999s ease-in-out 0s}.captcha-row{align-items:flex-end;display:flex;gap:14px}.captcha-row input{flex:1 1}.captcha-image{background:#243042;background:var(--auth-surface-solid);border:1px solid #94a3b833;border:1px solid var(--auth-border);border-radius:4px;cursor:pointer;flex-shrink:0;height:40px;margin-bottom:6px;object-fit:cover;transition:border-color .25s ease;width:110px}.captcha-image:hover{border-color:#2dd4bf;border-color:var(--auth-accent-strong)}.error-message{animation:msgAppear .3s ease;background:#f871711a;background:var(--auth-error-bg);border:1px solid #f8717152;border-left:3px solid #f87171;border:1px solid var(--auth-error-border);border-left:3px solid var(--auth-error);border-radius:6px;display:flex;font-size:.86rem;font-weight:500;gap:10px;margin-bottom:20px;padding:12px 14px}.error-message,.error-message:before{align-items:center;color:#f87171;color:var(--auth-error)}.error-message:before{background:#f8717129;border-radius:50%;content:"!";display:inline-flex;flex-shrink:0;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-family:var(--auth-font-mono);font-size:.74rem;font-weight:700;height:18px;justify-content:center;width:18px}.success-message{animation:msgAppear .3s ease;background:#34d3991a;background:var(--auth-success-bg);border:1px solid #34d39952;border-left:3px solid #34d399;border:1px solid var(--auth-success-border);border-left:3px solid var(--auth-success);border-radius:6px;font-size:.88rem;font-weight:500;line-height:1.55;margin-bottom:24px;padding:14px 16px}.success-message,.success-message strong{color:#34d399;color:var(--auth-success)}.verify-loading{color:#b6c2d2;color:var(--auth-text-muted);font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-family:var(--auth-font-mono);letter-spacing:.1em;padding:36px 0;text-align:center}@keyframes msgAppear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.login-button{background:#2dd4bf;background:var(--auth-accent-strong);background-image:none;border:none;border-radius:6px;box-shadow:0 0 0 0 #0000;color:#04121d;cursor:pointer;font-family:IBM Plex Sans,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-family:var(--auth-font-sans);font-size:.96rem;font-weight:600;letter-spacing:.08em;overflow:hidden;padding:14px;position:relative;transition:background .25s ease,transform .12s ease,box-shadow .25s ease;width:100%}.login-button:before{display:none}.login-button:hover:not(:disabled){background:#5eead4;background:var(--auth-accent);box-shadow:0 6px 22px -8px #2dd4bf8c;transform:translateY(-1px)}.login-button:active:not(:disabled){box-shadow:0 0 0 0 #0000;transform:translateY(0)}.login-button:disabled{background:#2dd4bf59;box-shadow:none;color:#04121d8c;cursor:not-allowed;transform:none}.auth-footer-links{align-items:center;border-top:1px solid #94a3b824;display:flex;justify-content:space-between;margin-top:22px;padding-top:22px}.auth-link{font-family:IBM Plex Sans,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-family:var(--auth-font-sans);font-size:.85rem;font-weight:500;text-decoration:none;transition:color .25s ease}.auth-link--muted{color:#b6c2d2;color:var(--auth-text-muted)}.auth-link--muted:hover{color:#5eead4;color:var(--auth-accent)}.auth-link--primary{color:#2dd4bf;color:var(--auth-accent-strong);font-size:.86rem;font-weight:600}.auth-link--primary:hover{color:#5eead4;color:var(--auth-accent);text-shadow:none}.auth-link--center{display:block;margin-top:16px;text-align:center}.auth-grid-overlay,.auth-particle,.auth-particles,.scanline{display:none}@keyframes panelFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.auth-brand,.auth-form-panel{animation:none}*{animation-duration:.001ms!important;transition-duration:.001ms!important}}@media (max-width:860px){.auth-split{grid-template-columns:1fr;height:100%}.auth-brand{min-height:auto;padding:40px 32px 8px}.auth-brand-rule{margin:16px 0 14px}.auth-brand-tagline{font-size:.95rem}.auth-brand-foot,.auth-brand-formulas{display:none}.auth-form-panel{min-height:auto;padding:24px 32px 40px}}@media (max-width:480px){.login-container{padding:0}.auth-brand{padding:32px 24px 4px}.auth-form-panel{padding:20px 24px 32px}.auth-section-title{font-size:1.3rem}.auth-section-sub{margin-bottom:28px}.form-group{margin-bottom:22px}.login-button{letter-spacing:.06em;padding:13px}.auth-footer-links{align-items:center;flex-direction:column;gap:12px}}.login-icp{color:#8a99ac;color:var(--auth-text-faint);display:block;font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;font-family:var(--auth-font-mono);font-size:.72rem;letter-spacing:.06em;margin-top:26px;position:relative;text-align:center;text-decoration:none;transition:color .25s ease;z-index:1}.login-icp:hover{color:#5eead4;color:var(--auth-accent)}.app-layout{background:var(--cd-bg-page);min-height:100vh}.app-header{align-items:center;background:linear-gradient(135deg,var(--cd-primary) 0,#0a4753 50%,#0e6a7d 100%);box-shadow:var(--cd-shadow-md);display:flex;justify-content:space-between;overflow:hidden;padding:0 24px;position:relative;z-index:var(--cd-z-header)}.app-header:before{background:linear-gradient(90deg,#0000,#ffffff14,#0000);content:"";height:200%;pointer-events:none;position:absolute;right:-10%;top:-50%;transform:rotate(25deg);width:400px}.app-header-logo{align-items:center;background:linear-gradient(135deg,#2dd4bfe6,#0ea5e9e6);border-radius:var(--cd-radius);box-shadow:0 2px 8px #2dd4bf59;color:#fff;display:flex;font-size:20px;height:38px;justify-content:center;transition:transform var(--cd-transition);width:38px}.app-header-logo:hover{transform:scale(1.05)}.app-header-title{color:#fff!important;font-family:var(--cd-font-heading);font-size:var(--cd-fs-lg);font-weight:600!important;letter-spacing:.02em;margin:0!important;text-shadow:0 1px 4px #00000040}.app-header-user-btn{background:#ffffff1f!important;border:1px solid #fff3!important;border-radius:20px!important;color:#fff!important;height:auto!important;padding:6px 12px!important;transition:background var(--cd-transition),border-color var(--cd-transition)!important}.app-header-user-btn:hover{background:#fff3!important;border-color:#ffffff59!important}.app-header-avatar{background:linear-gradient(135deg,var(--cd-teal) 0,var(--cd-cyan) 100%)!important;border:2px solid #ffffff4d}.app-header-username{color:#fff;font-weight:500;text-shadow:0 1px 2px #0003}.app-header-lang-btn{background:#ffffff14!important;border-color:#ffffff40!important;border-radius:16px!important;color:#ffffffd9!important;font-size:var(--cd-fs-xs)!important;height:28px!important;padding:0 10px!important}.app-header-lang-btn:hover{background:#ffffff2e!important;border-color:#fff6!important;color:#fff!important}.app-footer{background:linear-gradient(135deg,var(--cd-primary) 0,#0a4753 50%,#0e6a7d 100%);border-top:1px solid #2dd4bf40;margin-left:-8px;margin-right:-8px;margin-top:12px;padding:14px 24px;text-align:center}.app-footer:before{background:linear-gradient(90deg,#0000,var(--cd-teal),var(--cd-cyan),#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}.app-footer-content{color:#ffffffe6;font-size:var(--cd-fs-sm);line-height:var(--cd-lh-base)}.app-footer-content p{margin:4px 0}.app-footer-content strong{color:#fff;font-weight:600}.app-footer-copyright{color:#ffffffbf;font-size:var(--cd-fs-xs)}.app-footer-divider{color:#2dd4bfb3;margin:0 12px}.app-footer-link{color:var(--cd-teal);text-decoration:none;transition:color var(--cd-transition)}.app-footer-link:hover{color:#5eead4;text-decoration:underline}.app-footer-copyright a{color:#ffffffbf;text-decoration:none;transition:color var(--cd-transition)}.app-footer-copyright a:hover{color:#fffffff2}.app-sider{align-self:stretch;background:linear-gradient(180deg,var(--cd-primary) 0,#0a4753 50%,#0e6a7d 100%);box-shadow:2px 0 16px #0e1e2d1a;position:relative}.app-sider .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;overflow:hidden}.app-sider .app-logo{flex-shrink:0}.app-sider .ant-menu{flex:1 1 auto;overflow-x:hidden;overflow-y:auto}.app-sider-collapse-btn{background:#073844b3;border-top:1px solid #ffffff14;color:#ffffffa6;cursor:pointer;flex-shrink:0;padding:12px 0;text-align:center;transition:background var(--cd-transition),color var(--cd-transition)}.app-sider-collapse-btn:hover{background:#0d5b6bd9;color:#fff}.app-logo{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:var(--cd-radius-lg);color:#fff;display:flex;font-family:var(--cd-font-heading);font-size:var(--cd-fs-md);font-weight:700;height:46px;justify-content:center;letter-spacing:.04em;margin:14px;text-shadow:0 1px 4px #00000040;transition:background var(--cd-transition),border-color var(--cd-transition)}.app-logo:hover{background:#fff3;border-color:#ffffff4d}.app-sider .ant-menu{background:#0000;border-right:none;padding:4px 0}.app-sider .ant-menu-dark{background:#0000}.app-sider .ant-menu-dark .ant-menu-item,.app-sider .ant-menu-dark .ant-menu-submenu-title{border-radius:var(--cd-radius);color:#ffffffbf!important;font-weight:400;margin:2px 10px;transition:background var(--cd-transition),color var(--cd-transition)}.app-sider .ant-menu-dark .ant-menu-item:hover,.app-sider .ant-menu-dark .ant-menu-submenu-title:hover{background:#ffffff14!important;color:#fff!important}.app-sider .ant-menu-dark .ant-menu-item-selected{background:#2dd4bf38!important;color:#fff!important;font-weight:500}.app-sider .ant-menu-dark .ant-menu-item-selected:before{background:var(--cd-teal);border-radius:0 2px 2px 0;content:"";height:60%;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.app-sider .ant-menu-dark .ant-menu-sub{background:#00000038!important;border-radius:var(--cd-radius);margin:2px 8px 4px;padding:4px 0}.app-sider .ant-menu-dark .ant-menu-sub .ant-menu-item{font-size:13px;margin:1px 8px}.app-sider .ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title{color:#fffffff2!important;font-weight:500}.app-sider .ant-menu-item .anticon,.app-sider .ant-menu-submenu-title .anticon{color:#ffffff8c;font-size:15px}.app-sider .ant-menu-item:hover .anticon,.app-sider .ant-menu-submenu-title:hover .anticon{color:#ffffffe6}.app-sider .ant-menu-item-selected .anticon,.app-sider .ant-menu-submenu-selected .anticon{color:var(--cd-teal)}.app-sider .ant-layout-sider-trigger .anticon{color:#fffc}.app-sider .ant-layout-sider-trigger:hover .anticon{color:#fff}.app-content{background:var(--cd-bg-surface);border:1px solid var(--cd-border-light);border-radius:var(--cd-radius);margin:16px;min-height:calc(100vh - 112px);padding:24px}.page-header{border-bottom:1px solid var(--cd-border-light);margin-bottom:var(--cd-space-2);padding-bottom:var(--cd-space-2)}.page-title{color:var(--cd-text);font-family:var(--cd-font-heading);font-size:var(--cd-fs-lg);font-weight:600;line-height:1.2;margin:0}.page-description{color:var(--cd-text-secondary);font-size:var(--cd-fs-sm);line-height:1.3;margin-bottom:0;margin-top:0}.action-buttons{display:flex;gap:var(--cd-space-2);margin-bottom:var(--cd-space-4)}.stats-card{overflow:hidden;text-align:center;transition:transform var(--cd-transition),box-shadow var(--cd-transition)}.stats-card .ant-card-body{padding:var(--cd-space-4) var(--cd-space-3)}.stats-card .ant-statistic-title{color:var(--cd-text-secondary);font-family:var(--cd-font-heading);font-size:var(--cd-fs-sm);margin-bottom:var(--cd-space-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-card .ant-statistic-content{color:var(--cd-primary);font-size:var(--cd-fs-2xl)}.stats-card:hover{box-shadow:var(--cd-shadow-md)!important;transform:translateY(-2px)}.stats-card .stats-number{color:var(--cd-primary);display:block;font-family:var(--cd-font-mono);font-size:var(--cd-fs-3xl);font-weight:700}.stats-card .stats-label{color:var(--cd-text-muted);font-size:var(--cd-fs-base);margin-top:var(--cd-space-2)}.card-shadow{border:1px solid var(--cd-border-light);box-shadow:var(--cd-shadow-sm);transition:box-shadow var(--cd-transition)}.card-shadow:hover{box-shadow:var(--cd-shadow-md)}.ant-table-pagination{margin:8px 0 0!important}.ant-table-tbody>tr>td{height:48px;padding-block:10px!important}.dashboard-card{display:flex;flex-direction:column;height:420px}.dashboard-card .ant-card-head{flex-shrink:0}.dashboard-card .ant-card-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden;padding:var(--cd-space-4)}.dashboard-card-content{flex:1 1;overflow-x:hidden;overflow-y:auto;scrollbar-color:var(--cd-border-strong) #0000;scrollbar-width:thin}.dashboard-card-content::-webkit-scrollbar{width:6px}.dashboard-card-content::-webkit-scrollbar-track{background:#0000}.dashboard-card-content::-webkit-scrollbar-thumb{background-color:var(--cd-border-strong);border-radius:3px}.dashboard-card-content::-webkit-scrollbar-thumb:hover{background-color:var(--cd-text-muted)}.card-shadow div[style*=overflowY]{scrollbar-color:var(--cd-border-strong) #0000;scrollbar-width:thin}.card-shadow div[style*=overflowY]::-webkit-scrollbar{width:6px}.card-shadow div[style*=overflowY]::-webkit-scrollbar-track{background:#0000}.card-shadow div[style*=overflowY]::-webkit-scrollbar-thumb{background-color:var(--cd-border-strong);border-radius:3px}.card-shadow div[style*=overflowY]::-webkit-scrollbar-thumb:hover{background-color:var(--cd-text-muted)}.mb-24{margin-bottom:var(--cd-space-6)}.mt-16{margin-top:var(--cd-space-4)}.upload-area{background:var(--cd-bg-elevated);border:2px dashed var(--cd-border-strong);border-radius:var(--cd-radius);padding:40px;text-align:center;transition:border-color var(--cd-transition)}.upload-area.dragover,.upload-area:hover{border-color:var(--cd-primary)}.upload-area.dragover{background:var(--cd-primary-bg)}.progress-container{margin:var(--cd-space-4) 0}.progress-text{display:flex;font-size:var(--cd-fs-base);justify-content:space-between;margin-bottom:var(--cd-space-2)}@media (max-width:768px){.app-content{margin:var(--cd-space-2);padding:var(--cd-space-4)}.action-buttons{flex-direction:column}.action-buttons .ant-btn{width:100%}.dashboard-card{height:auto;max-height:500px}}:root{--cd-primary:#0d5b6b;--cd-primary-hover:#0a4753;--cd-primary-active:#073844;--cd-primary-light:#e6f2f5;--cd-primary-bg:#f0f7f9;--cd-primary-border:#b8d8df;--cd-teal:#2dd4bf;--cd-cyan:#0ea5e9;--cd-sem-basic:#1a6d8a;--cd-sem-ghs:#c45a2c;--cd-sem-eco:#2d7d46;--cd-sem-health:#b85450;--cd-sem-env:#5b7a3a;--cd-sem-physchem:#5b3e8c;--cd-sem-literature:#3a6b8c;--cd-sem-exposure:#0d5b6b;--cd-sem-risk:#8b3a3a;--cd-sem-basic-bg:#e8f0f8;--cd-sem-ghs-bg:#fef0e6;--cd-sem-eco-bg:#e8f3ec;--cd-sem-health-bg:#faeaea;--cd-sem-physchem-bg:#efe9f5;--cd-sem-literature-bg:#e9f0f5;--cd-success:#2d7d46;--cd-success-bg:#e8f3ec;--cd-warning:#d48a17;--cd-warning-bg:#fdf3e0;--cd-error:#b85450;--cd-error-bg:#faeaea;--cd-info:#1a6d8a;--cd-info-bg:#e8f0f8;--cd-bg-page:#f7f9fa;--cd-bg-surface:#fff;--cd-bg-subtle:#f0f4f7;--cd-bg-elevated:#fafbfc;--cd-text:#1e293b;--cd-text-secondary:#526477;--cd-text-muted:#8494a5;--cd-text-inverse:#fff;--cd-border:#dde4ea;--cd-border-light:#edf1f5;--cd-border-strong:#c5d0d8;--cd-radius-sm:6px;--cd-radius:8px;--cd-radius-lg:10px;--cd-radius-xl:12px;--cd-shadow-sm:0 1px 3px #0e1e2d0f;--cd-shadow-md:0 4px 16px #0e1e2d14;--cd-shadow-lg:0 8px 24px #0e1e2d1f;--cd-shadow-primary:0 4px 16px #0d5b6b2e;--cd-font-sans:"Inter","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;--cd-font-heading:"Inter","PingFang SC","Microsoft YaHei",system-ui,sans-serif;--cd-font-mono:"JetBrains Mono","IBM Plex Mono","Cascadia Code","SF Mono","Consolas","Courier New",monospace;--cd-fs-xs:12px;--cd-fs-sm:13px;--cd-fs-base:14px;--cd-fs-md:15px;--cd-fs-lg:16px;--cd-fs-xl:18px;--cd-fs-2xl:22px;--cd-fs-3xl:28px;--cd-lh-tight:1.25;--cd-lh-base:1.55;--cd-lh-relaxed:1.7;--cd-space-1:4px;--cd-space-2:8px;--cd-space-3:12px;--cd-space-4:16px;--cd-space-5:20px;--cd-space-6:24px;--cd-space-8:32px;--cd-transition:0.2s ease;--cd-transition-slow:0.3s ease;--cd-z-header:100;--cd-z-sider:90;--cd-z-modal:1000;--cd-z-popover:1030;--chem-primary:var(--cd-primary);--chem-primary-light:var(--cd-primary-light);--chem-primary-bg:var(--cd-primary-bg);--chem-basic:var(--cd-sem-basic);--chem-ghs:var(--cd-sem-ghs);--chem-eco:var(--cd-sem-eco);--chem-health:var(--cd-sem-health);--chem-env:var(--cd-sem-env);--chem-physchem:var(--cd-sem-physchem);--chem-literature:var(--cd-sem-literature);--chem-text:var(--cd-text);--chem-text-secondary:var(--cd-text-secondary);--chem-text-muted:var(--cd-text-muted);--chem-border:var(--cd-border);--chem-bg-page:var(--cd-bg-page);--chem-bg-surface:var(--cd-bg-surface);--chem-shadow-sm:var(--cd-shadow-sm);--chem-shadow-md:var(--cd-shadow-md);--chem-font-mono:var(--cd-font-mono);--chem-line-height:var(--cd-lh-relaxed)}body{-webkit-font-smoothing:subpixel-antialiased;background:var(--cd-bg-page);color:var(--cd-text);font-family:var(--cd-font-sans);font-size:var(--cd-fs-base);line-height:var(--cd-lh-base);margin:0;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{color:var(--cd-text);font-family:var(--cd-font-heading);font-weight:600;line-height:var(--cd-lh-tight)}.ant-card-head-title,.ant-drawer-title,.ant-modal-title,.ant-typography h1,.ant-typography h2,.ant-typography h3,.ant-typography h4{color:var(--cd-text)!important;font-family:var(--cd-font-heading)!important}.compact-upload-dragger .ant-upload-drag{align-items:center!important;display:flex!important;height:57px!important;justify-content:center!important;padding:0!important}.compact-upload-dragger .ant-upload-drag-icon{margin-bottom:0!important}.compact-upload-dragger .ant-upload-text{font-size:var(--cd-fs-xs)!important;margin-bottom:0!important;margin-top:2px!important}.compact-upload-dragger+.ant-collapse{margin-bottom:0!important;margin-top:0!important}.ai-analysis-task-detail{font-family:var(--cd-font-sans)}.ai-analysis-task-detail .ant-table,.ai-analysis-task-detail .ant-table-cell,.ai-analysis-task-detail .ant-table-cell .ant-tag,.ai-analysis-task-detail .ant-tag{font-family:var(--cd-font-sans)!important;font-size:11px!important}.ai-analysis-task-detail .ant-table-cell *{font-size:inherit}.ai-analysis-task-detail .ant-descriptions-item-content,.ai-analysis-task-detail .ant-descriptions-item-label{font-size:11px!important}.ai-analysis-task-detail .ant-table-thead .ant-table-cell,.profile-management-card .ant-table-thead .ant-table-cell{text-align:center!important}.ai-analysis-task-detail .ant-card-extra *,.ai-analysis-task-detail .ant-card-head-title,.ai-analysis-task-detail .ant-card-head-title *,.ai-analysis-task-detail .ant-collapse-header,.ai-analysis-task-detail .ant-collapse-header *,.ai-analysis-task-detail .ant-input-number,.ai-analysis-task-detail .ant-radio-button-wrapper,.ai-analysis-task-detail .ant-radio-group,.ai-analysis-task-detail .ant-select,.ai-analysis-task-detail .ant-select-dropdown,.ai-analysis-task-detail .ant-select-item,.ai-analysis-task-detail .ant-select-item *,.ai-analysis-task-detail .ant-switch,.ai-analysis-task-detail label{font-size:11px!important}.ai-analysis-task-detail .ant-select-item-option-content{font-family:var(--cd-font-sans)!important;font-size:11px!important}.ai-analysis-task-detail>.ant-tabs>.ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active{background:var(--cd-primary)!important}.ai-analysis-task-detail>.ant-tabs>.ant-tabs-nav .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#fff!important;font-weight:600!important}.ai-analysis-task-detail .ant-table-cell.title-cell{white-space:normal!important;word-break:break-word}.cd-mono,.chem-mono{background:var(--cd-bg-subtle);border-radius:var(--cd-radius-sm);color:var(--cd-primary);font-family:var(--cd-font-mono);font-size:.92em;letter-spacing:.02em;padding:1px 6px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background-color:var(--cd-border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:var(--cd-text-muted)}::selection{background:var(--cd-primary-light);color:var(--cd-primary-active)}
/*# sourceMappingURL=main.c13e5a1c.css.map*/