:root{--primary:#3d7b99;--primary-bg:#e4eff5;--page:#f2f4f6;--ink:#27323a;--ink-2:#46525a;--ink-3:#66727a;--line:#e0e5e9;--line-soft:#ebeff2}*{box-sizing:border-box}body{background:var(--page);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.center-screen{background:var(--page);place-items:center;min-height:100vh;display:grid}.login-card{align-self:center;width:100%;max-width:400px;margin:auto 0;padding:48px 0}.login-brand{background:radial-gradient(circle at 90% 0,#c3d8e580,#0000 45%),linear-gradient(155deg,#f0f5f8,#dee9f0 46%,#cddde8);border-radius:28px;flex-direction:column;min-height:760px;margin:16px 0 16px 16px;padding:48px 56px;display:flex;position:relative;overflow:hidden}.login-brand-logo{object-fit:contain;width:124px;height:124px;display:block}.login-brand-title{letter-spacing:.12em;color:var(--ink)!important;margin:30px 0 0!important;font-size:46px!important;line-height:1.1!important}.login-brand-subtitle{color:var(--primary);letter-spacing:.22em;margin-top:12px;font-size:13px;font-weight:600;display:block}.login-page{background:#f7f9fa;grid-template-columns:57% 43%;min-height:100vh;display:grid}.login-brand:after{content:"";pointer-events:none;border:1px solid #3d7b992e;border-radius:50%;width:680px;height:680px;position:absolute;bottom:-300px;right:-260px}.login-brand>*{z-index:1;position:relative}.login-brand-top,.login-brand-footer{color:var(--ink-3);justify-content:space-between;gap:16px;font-size:12px;display:flex}.login-brand-top{letter-spacing:.15em}.login-brand-hero{margin-top:auto;padding-top:48px}.login-logo-frame{background:#ffffff8c;border:1px solid #ffffffd9;border-radius:42px;place-items:center;width:148px;height:148px;display:grid;box-shadow:0 24px 60px #27323a1a}.login-tagline{margin:40px 0 14px;font-family:Songti SC,STSong,serif;font-size:30px;font-weight:600;line-height:1.4}.login-tagline em{color:var(--primary);font-style:normal}.login-lede{max-width:430px;color:var(--ink-2);font-size:15px;line-height:1.8}.login-capabilities{background:#ffffff6b;border:1px solid #ffffffb3;border-radius:20px;flex-wrap:wrap;gap:16px 0;width:fit-content;margin:32px 0;padding:18px 6px;display:flex}.login-capabilities>div:first-child{border-left:0}.login-capabilities b,.login-capabilities span{display:block}.login-capabilities b{font-size:14px}.login-capabilities span{color:var(--ink-3);margin-top:4px;font-size:12px}.login-brand-footer{margin-top:auto;padding-top:24px}.login-form-panel{flex-direction:column;min-width:0;padding:48px clamp(32px,5vw,72px) 32px;display:flex}.login-internal-label{border:1px solid var(--line);color:var(--ink-3);background:#fff;border-radius:999px;align-self:flex-end;padding:6px 14px;font-size:13px}.login-form-title.ant-typography{margin:0;font-size:38px}.login-form-hint.ant-typography{color:var(--ink-3);margin:12px 0 32px;font-size:15px}.login-card .ant-form-item-label>label{color:var(--ink-2);font-weight:600}.login-card .ant-input-affix-wrapper{border-radius:16px;min-height:54px;padding:0 18px}.login-card .ant-input-prefix{color:var(--ink-3);margin-right:12px}.login-card .ant-btn-primary{height:54px;margin-top:10px;font-size:16px;font-weight:600;box-shadow:0 10px 26px #3d7b9938}.login-help{text-align:center;color:var(--ink-3);margin-top:22px;font-size:13px}.login-form-footer{border-top:1px solid var(--line-soft);color:var(--ink-3);padding-top:18px;font-size:12px}.form-alert{margin-bottom:16px}.app-shell{min-height:100vh}.app-sider{border-right:1px solid var(--line)}.app-sider .ant-layout-sider-children{max-height:100vh;position:sticky;top:0;overflow-y:auto}.app-sider .ant-menu{padding:6px 6px 16px;border-inline-end:0!important}.app-main{min-width:0}.header-user-name{font-weight:600}.user-avatar{background:var(--primary-bg);width:32px;height:32px;color:var(--primary);border-radius:50%;place-items:center;font-weight:600;display:grid}.sider-brand{align-items:center;gap:10px;min-height:68px;padding:18px 18px 16px;display:flex}.sider-brand-logo{object-fit:contain;flex:none;width:40px;height:40px}.sider-brand-name{color:var(--ink);letter-spacing:0;font-size:17px;font-weight:700;line-height:1.2}.sider-brand-subtitle{color:var(--ink-3);letter-spacing:0;margin-top:3px;font-size:12px;line-height:1.2}.app-header{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#fffffff2;justify-content:flex-end;align-items:center;gap:18px;height:58px;padding:0 32px;line-height:normal;display:flex;position:sticky;top:0}.app-content{padding:36px 40px 72px;overflow:auto}.mobile-nav-trigger{display:none}.page-stack,.full-width{width:100%}.page-title-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.filter-bar{gap:10px 0}.filter-bar .ant-input-search{width:360px}.image-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px;display:grid}.image-tile{border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px}.image-object{object-fit:cover;border-radius:4px}.muted{color:var(--ink-3);font-size:12px}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-box{background:#f8fbfc}.log-row{color:#354a58;border-bottom:1px solid #edf1f3;padding:6px 0}.stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (width<=767px){.app-sider{display:none}.mobile-nav-trigger{display:inline-flex}.app-header{justify-content:space-between;padding:0 12px}.app-content{padding:12px}.page-title-row{flex-direction:column;align-items:flex-start}.filter-bar .ant-input-search{width:100%}.stat-row{grid-template-columns:1fr}}@media (width<=1150px){.login-brand{padding:36px 32px}.login-capabilities>div{padding:0 12px}.login-tagline{font-size:26px}}@media (width<=760px){.login-page{grid-template-columns:1fr}.login-brand{min-height:auto;margin:12px;padding:28px}.login-brand-hero{padding-top:28px}.login-brand-title.ant-typography{margin-top:24px!important;font-size:34px!important}.login-brand-copy,.login-brand-footer{display:none}.login-form-panel{padding:16px 28px 28px}.login-card{padding:28px 0}.login-form-title.ant-typography{font-size:30px}}.floating-assistant-button{z-index:100;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 18px #0002}.assistant-message{overflow-wrap:anywhere;background:#f5f5f5;border-radius:12px;margin:8px 0;padding:12px}.assistant-user{background:#e4eff5}@media (width<=767px){.compact-tool-page{padding-bottom:76px;gap:8px!important}.compact-tool-page .ant-card-body{padding:12px}.compact-tool-page .ant-card-head{min-height:40px;padding:0 12px}.compact-tool-page .ant-form-item{margin-bottom:10px}.compact-tool-page .ant-divider{margin:10px 0}.mobile-generate-action{z-index:101;width:calc(100% - 112px);position:fixed;bottom:12px;left:16px;box-shadow:0 2px 12px #0003}.floating-assistant-button{bottom:12px;right:12px}}:root{--primary:#3d7b99;--primary-bg:#e4eff5;--page:#f5f5f7;--ink:#1d1d1f;--ink-2:#6e6e73;--ink-3:#86868b;--g-bg:#f5f5f7;--g-card:#ffffff9e;--g-card-hover:#ffffffbd;--g-border:#ffffffbf;--g-hair:#1d1d1f12;--g-blur:saturate(170%) blur(22px);--g-radius:20px;--g-shadow:0 1px 2px #1d1d1f0a,0 8px 24px #1d1d1f0a;--g-shadow-hover:0 2px 6px #1d1d1f0d,0 22px 48px #1d1d1f1a;--g-ease:cubic-bezier(.25,.1,.25,1);--g-dur:.32s;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,Helvetica Neue,Microsoft YaHei,sans-serif}body{background:var(--g-bg);color:var(--ink);font-family:inherit;font-size:15px;line-height:1.7}.app-shell[data-palette=B]{--primary:#5a7186;--primary-bg:#e8edf2;--spot:#5a71863b}.app-shell[data-palette=C]{--primary:#b65a43;--primary-bg:#f7e7e1;--spot:#b65a4338}.app-shell,.login-page{--spot:#3d7b993d;isolation:isolate;background:var(--g-bg);position:relative}.app-shell:before,.login-page:before{content:"";z-index:-1;pointer-events:none;filter:blur(10px);background:radial-gradient(640px 540px at 88% 6%,var(--spot),transparent 70%),radial-gradient(560px 480px at 30% 92%,#efc29a38,transparent 70%),radial-gradient(520px 460px at 70% 62%,var(--spot),transparent 70%),radial-gradient(480px 420px at 6% 18%,#6f98ab29,transparent 70%);position:fixed;inset:0}.app-main.ant-layout{background:0 0}.app-sider.ant-layout-sider{-webkit-backdrop-filter:var(--g-blur);border-right:1px solid var(--g-hair);background:#ffffff80}.sider-brand{gap:12px;padding:22px 20px 18px}.sider-brand-name{font-weight:600}.app-sider .ant-menu{background:0 0;padding:8px 12px 20px;font-size:14px}.app-sider .ant-menu-item-selected{box-shadow:0 1px 3px #1d1d1f0f,inset 3px 0 0 var(--primary)}.app-sider .ant-menu-item-selected:after{display:none}.app-sider .ant-menu-item-selected a,.app-sider .ant-menu-submenu-selected>.ant-menu-submenu-title .anticon{color:var(--primary)}.app-header.ant-layout-header{height:64px;-webkit-backdrop-filter:var(--g-blur);border-color:var(--g-hair);background:#f5f5f799;padding:0 44px}.header-location{color:var(--ink-2);margin-right:auto;font-size:14px}.app-content.ant-layout-content{min-width:0;padding:56px 56px 96px;overflow:visible}.app-content>*{min-width:0;max-width:100%}.page-title-row{flex-wrap:wrap;margin-bottom:24px}.app-content .page-title-row h2,.app-content>.ant-space>.ant-space-item:first-child h2,.app-content>div>h2,.app-content .workbench-hero h2,.app-content .workshop h1{letter-spacing:-.03em;margin-top:0;margin-bottom:14px;font-size:46px;font-weight:600;line-height:1.15}.app-content h3.ant-typography{letter-spacing:-.02em;font-size:24px;font-weight:600}.app-content .ant-card,.app-content .workshop section,.quick-entry,.login-card,.login-capabilities>div{background:var(--g-card);border:1px solid var(--g-border);border-radius:var(--g-radius);-webkit-backdrop-filter:var(--g-blur);box-shadow:var(--g-shadow);transition:transform var(--g-dur) var(--g-ease),box-shadow var(--g-dur) var(--g-ease),background var(--g-dur) var(--g-ease)}@media (hover:hover){.app-content .ant-card:hover,.app-content .workshop section:hover{box-shadow:var(--g-shadow-hover);transform:scale(1.006)}.quick-entry:hover,.login-capabilities>div:hover{box-shadow:var(--g-shadow-hover);background:var(--g-card-hover);transform:scale(1.02)}.app-content .ant-card:has(.ant-statistic):not(:has(.ant-table)):hover{box-shadow:var(--g-shadow-hover);background:var(--g-card-hover);transform:scale(1.02)}}.app-content .ant-card .ant-card{box-shadow:none}.app-content .ant-card-head{border-color:var(--g-hair);font-weight:600}.app-content .ant-table,.app-content .ant-table-container{background:0 0}.app-content .ant-table-wrapper{background:var(--g-card);border:1px solid var(--g-border);max-width:100%;box-shadow:var(--g-shadow);-webkit-backdrop-filter:var(--g-blur);transition:transform var(--g-dur) var(--g-ease),box-shadow var(--g-dur) var(--g-ease);border-radius:20px;overflow-x:auto}.app-content .ant-card .ant-table-wrapper{box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0}@media (hover:hover){.app-content .ant-table-wrapper:hover{box-shadow:var(--g-shadow-hover);transform:scale(1.006)}.app-content .ant-card .ant-table-wrapper:hover{box-shadow:none;transform:none}}.app-content .ant-table-thead>tr>th{color:var(--ink-2);background:#fff6;font-size:13px}.app-content .ant-table-tbody>tr>td{border-color:var(--g-hair);font-size:14px}.app-content .ant-statistic-content{letter-spacing:-.035em;font-size:48px;font-weight:600}.app-content a{color:var(--primary)}.app-content a.ant-btn-primary:not(.ant-btn-dangerous){color:#fff}.app-content .ant-btn-primary:not(.ant-btn-dangerous) a{color:inherit}.app-content .ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--primary)}.app-content .ant-tabs-ink-bar,.app-content .ant-progress-status-normal .ant-progress-bg{background:var(--primary)}.app-content .ant-alert-info{border:1px solid var(--g-border);background:#ffffff73}.ant-btn{transition:background var(--g-dur) var(--g-ease),box-shadow var(--g-dur) var(--g-ease),transform var(--g-dur) var(--g-ease);border-radius:999px;font-weight:500}.ant-btn-default{background:#ffffffb3}.ant-btn-primary:not(:disabled):not(.ant-btn-dangerous){color:#fff;background:#1d1d1f;border-color:#1d1d1f;box-shadow:0 6px 18px #1d1d1f29}.ant-btn-primary:not(:disabled):not(.ant-btn-dangerous):hover{background:#3a3a3c;border-color:#3a3a3c;transform:scale(1.02)}.ant-input,.ant-input-affix-wrapper,.ant-select-selector,.ant-input-number{background:#ffffffb3}.ant-input-affix-wrapper .ant-input{background:0 0}.workbench-hero{background:0 0;border:0;border-radius:0;padding:0 0 24px}.quick-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;margin-bottom:32px;display:grid}.quick-entry{flex-direction:column;align-items:flex-start;min-height:176px;padding:24px 22px;display:flex;color:var(--ink)!important}.quick-icon{width:44px;height:44px;color:var(--primary);border:1px solid var(--g-hair);background:#ffffffbf;border-radius:14px;place-items:center;margin-bottom:22px;font-size:20px;display:grid}.quick-entry .ant-btn{pointer-events:none;height:auto;padding:0;font-size:16px;font-weight:600}.quick-caption{color:var(--ink-2);margin-top:6px;font-size:13px}.login-page{grid-template-columns:57% 43%}.login-brand{background:0 0;border-radius:0;min-height:100vh;margin:0;padding:40px 7vw;overflow:visible}.login-brand:after{display:none}.login-brand-hero{padding-top:70px}.login-logo-frame{background:var(--g-card);width:176px;height:176px;-webkit-backdrop-filter:var(--g-blur);border:1px solid var(--g-border);box-shadow:var(--g-shadow);border-radius:44px}.login-brand-title.ant-typography{letter-spacing:-.03em;font-weight:600;margin-top:36px!important;font-size:64px!important}.login-brand-subtitle{letter-spacing:0;color:var(--ink-2);font-size:18px;font-weight:400}.login-tagline{margin-top:24px;font-family:inherit;font-size:22px;font-weight:500}.login-lede{font-size:15px}.login-capabilities{background:0 0;border:0;gap:16px;margin:32px 0;padding:0}.login-capabilities>div{border-left:0;padding:18px 20px}.login-form-panel{padding:40px clamp(24px,4vw,60px) 32px}.login-card{border-radius:28px;max-width:460px;padding:48px}.login-form-title.ant-typography{font-size:36px;font-weight:600}.login-card .ant-btn-primary{box-shadow:0 6px 18px #1d1d1f29}.login-form-footer{border:0}.app-content .workshop{color:var(--ink);max-width:none}.app-content .workshop section{margin:24px 0;padding:28px}.app-content .workshop button{color:#fff;transition:background var(--g-dur),transform var(--g-dur);background:#1d1d1f;border:1px solid #0000;border-radius:999px}.app-content .workshop button:not(:disabled):hover{background:#3a3a3c}.app-content .workshop input:not([type=checkbox]),.app-content .workshop select,.app-content .workshop textarea{background:#ffffffb3;border-color:#1d1d1f1f;border-radius:12px}.app-content .workshop summary{background:#fff6;border-radius:12px}.quick-entry:focus-visible{outline:3px solid var(--primary);outline-offset:4px}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.app-content .ant-card,.app-content .ant-table-wrapper,.app-content .workshop section,.quick-entry,.login-card,.login-capabilities>div,.app-sider.ant-layout-sider,.app-header.ant-layout-header{background:#fffffff2}}@media (width<=1100px){.app-content.ant-layout-content{padding:36px 28px 80px}.login-brand{padding:36px}.login-card{padding:32px}}@media (width<=767px){.app-content.ant-layout-content{padding:28px 16px 96px;overflow-x:hidden}.app-header.ant-layout-header{gap:8px;padding:0 12px}.header-location{display:none}.app-content .page-title-row h2,.app-content>.ant-space>.ant-space-item:first-child h2,.app-content>div>h2,.app-content .workbench-hero h2,.app-content .workshop h1{font-size:32px}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-entry{min-height:156px;padding:18px}.app-content .ant-card-body,.app-content .workshop section{padding:18px}.app-content .ant-space{max-width:100%}.app-content .ant-space-item{min-width:0;max-width:100%}.app-content .ant-form-item-control-input-content>.ant-input,.app-content .ant-form-item-control-input-content>.ant-select{max-width:100%}.login-page{grid-template-columns:1fr;align-content:start}.login-brand{min-height:auto;padding:28px}.login-brand-top{font-size:10px}.login-brand-hero{padding-top:28px}.login-logo-frame{border-radius:28px;width:112px;height:112px}.login-brand-logo{width:88px;height:88px}.login-brand-title.ant-typography{margin-top:24px!important;font-size:40px!important}.login-form-panel{padding:0 20px 28px}.login-internal-label{margin-bottom:16px}.login-card{max-width:none;padding:28px}.login-form-title.ant-typography{font-size:30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.app-content .ant-card:hover,.app-content .ant-table-wrapper:hover,.app-content .workshop section:hover,.quick-entry:hover,.login-capabilities>div:hover,.ant-btn:hover{transform:none!important}}
