html,body,#root{min-height:100%}body{background:radial-gradient(circle at 0 0,#1677ff1a,#0000 24%),radial-gradient(circle at 100% 100%,#1890ff1a,#0000 22%),#f5f7fb;margin:0}*{box-sizing:border-box}.auth-shell{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card-grid{background:#fff;border:1px solid #0505050f;border-radius:28px;grid-template-columns:minmax(360px,1.1fr) minmax(340px,.9fr);width:min(100%,1080px);min-height:640px;display:grid;overflow:hidden;box-shadow:0 18px 48px #0000001a}.auth-brand{color:#fff;background:linear-gradient(160deg,#1677fff5,#0958d9f5);flex-direction:column;justify-content:space-between;padding:44px;display:flex}.auth-brand-logo{background:#ffffff24;border-radius:22px;justify-content:center;align-items:center;width:76px;height:76px;margin-bottom:24px;display:flex}.auth-brand-logo img{width:48px}.auth-brand h1{margin:0;font-size:42px;line-height:1.05}.auth-brand p{color:#ffffffe0;max-width:460px;margin:16px 0 0;font-size:15px;line-height:1.7}.auth-points{gap:14px;margin-top:28px;display:grid}.auth-point{background:#ffffff14;border:1px solid #ffffff24;border-radius:16px;padding:16px 18px}.auth-point strong{margin-bottom:6px;display:block}.auth-panel{justify-content:center;align-items:center;padding:44px;display:flex}.auth-form-wrap{width:min(100%,360px)}.app-layout{min-height:100vh;padding:24px}.app-topbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe0;border:1px solid #0505050f;border-radius:24px;margin-bottom:20px;padding:18px 22px;box-shadow:0 8px 24px #0000000f}.app-topbar-inner{justify-content:space-between;align-items:center;gap:16px;display:flex}.app-topbar-brand{align-items:center;gap:16px;min-width:0;display:flex}.app-topbar-logo{background:linear-gradient(160deg,#1677ff24,#1677ff0a);border-radius:18px;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.app-topbar-logo img{width:42px}.app-topbar-title h2{margin:0;font-size:30px;line-height:1.15}.app-topbar-title p{color:#595959;margin:6px 0 0}.app-topbar-user{background:#e6f4ff;border:1px solid #1677ff29;border-radius:16px;min-width:240px;padding:12px 16px}.app-mobile-menu-button{display:none}.app-content-grid.ant-layout{background:0 0;gap:20px}.app-content-grid>.ant-layout-sider,.app-content-grid>.ant-layout-content{min-height:calc(100vh - 160px)}.app-content-grid>.ant-layout-sider{background:#fff;border:1px solid #0505050f;border-radius:22px;position:sticky;top:24px;overflow:hidden;box-shadow:0 12px 30px #0000000f}.sider-wrap{padding:18px}.sider-heading{margin-bottom:16px}.sider-heading h3{margin:0}.sider-heading p{color:#595959;margin:6px 0 0;font-size:13px}.app-content-grid>.ant-layout-content{min-width:0}.panel-card{border:1px solid #0505050f;border-radius:18px;box-shadow:0 12px 30px #0000000d}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.metric-card{background:linear-gradient(#fafcff,#f5faff);border:1px solid #1677ff1f;border-radius:16px;padding:18px}.metric-card span{color:#595959;font-size:13px;line-height:1.5;display:block}.metric-list{margin-top:14px}.metric-list .ant-list{background:#ffffffd1;border:1px solid #0505050d;border-radius:12px;overflow:hidden}.metric-list-item{justify-content:space-between;align-items:center;gap:12px;display:flex}.metric-list-item strong{color:#1f1f1f;margin-bottom:0;font-size:15px}.bar-chart{gap:12px;display:grid}.bar-chart-row{grid-template-columns:minmax(0,1.8fr) minmax(120px,1fr) 32px;align-items:center;gap:10px;display:grid}.bar-chart-label{color:#434343;font-size:12px;line-height:1.35}.bar-chart-track{background:#e6f4ff;border-radius:999px;height:10px;overflow:hidden}.bar-chart-fill{background:linear-gradient(90deg,#1677ff,#69b1ff);border-radius:999px;height:100%}.bar-chart-value{color:#003a8c;text-align:right;font-weight:700}.pie-chart-wrap{grid-template-columns:140px minmax(0,1fr);align-items:center;gap:12px;display:grid}.pie-chart{width:140px;height:140px}.pie-chart-total-label{fill:#8c8c8c;font-size:10px}.pie-chart-total-value{fill:#003a8c;font-size:16px;font-weight:700}.pie-chart-legend{gap:10px;display:grid}.pie-chart-legend-item{grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.pie-chart-legend-dot{border-radius:999px;width:10px;height:10px}.pie-chart-legend-text{color:#434343;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.compare-actions-block{margin-top:4px}.compare-actions-block .ant-typography{display:block}.results-html{min-height:180px}.results-html table{border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #d9d9d9;border-radius:14px;width:100%;overflow:hidden}.panel-card .ant-table-wrapper{overflow-x:auto}.panel-card .ant-table-content{min-width:100%}.results-html{overflow-x:auto}.results-html table{min-width:720px}@media (width<=1200px){.metric-grid{grid-template-columns:1fr}.auth-card-grid{grid-template-columns:1fr;min-height:auto}.auth-brand,.auth-panel{padding:28px}.app-layout{padding:16px}.app-topbar{border-radius:18px;padding:16px}.app-topbar-inner{flex-direction:column;align-items:stretch}.app-topbar-brand{align-items:flex-start}.app-topbar-user{width:100%;min-width:0}.app-mobile-menu-button{justify-content:center;width:100%;display:inline-flex}.app-content-grid.ant-layout{flex-direction:column;display:flex}.app-content-grid>.ant-layout-sider,.app-content-grid>.ant-layout-content{min-height:auto;width:100%!important;max-width:100%!important}.app-content-grid>.ant-layout-sider{position:static}}@media (width<=768px){.auth-shell{padding:12px}.auth-card-grid{border-radius:20px}.auth-brand h1{font-size:34px}.app-layout{padding:12px}.app-topbar-title h2{font-size:24px}.app-topbar-title p{font-size:13px}.app-topbar-logo{width:52px;height:52px}.app-topbar-logo img{width:36px}.sider-wrap{padding:12px}.panel-card{border-radius:14px}.compare-actions-block .ant-space{flex-direction:column;width:100%;display:flex;gap:8px!important}.compare-actions-block .ant-space .ant-btn{width:100%}.chart-box{overflow-x:auto}.metric-card{padding:14px}.results-html table{min-width:640px}.markdown-box{white-space:pre-wrap;overflow-wrap:anywhere}}@media (width<=576px){.auth-brand,.auth-panel{padding:20px}.auth-brand h1{font-size:28px}.auth-brand p,.auth-point,.auth-point span{font-size:14px}.app-layout{padding:10px}.app-topbar{margin-bottom:14px;padding:14px}.app-topbar-brand{gap:12px}.app-topbar-title h2{font-size:22px}.metric-grid{gap:10px}.metric-card span,.sider-heading p{font-size:12px}.results-html table{min-width:560px}.panel-card .ant-card-head{padding:0 14px}.panel-card .ant-card-body{padding:14px}.panel-card .ant-card-extra{margin-inline-start:0}.panel-card .ant-card-extra .ant-space{flex-wrap:wrap;justify-content:flex-end}.ant-form-item{margin-bottom:14px}.ant-upload-wrapper,.ant-upload-wrapper .ant-btn,.ant-btn{max-width:100%}}.results-html thead th{color:#434343;white-space:nowrap;background:#fafafa;font-size:13px;font-weight:600}.results-html th,.results-html td{vertical-align:top;border-bottom:1px solid #f0f0f0;border-right:1px solid #f0f0f0;padding:12px 14px}.results-html th:last-child,.results-html td:last-child{border-right:none}.results-html tr:last-child td{border-bottom:none}.results-html table th:first-child,.results-html table td:first-child{text-align:center;white-space:nowrap;width:72px;min-width:72px}.results-html h1,.results-html h2,.results-html h3,.results-html h4{color:#141414;margin-top:22px;margin-bottom:10px;line-height:1.25}.results-html p,.results-html li{line-height:1.7}.markdown-box{white-space:pre-wrap;color:#e5e7eb;background:#0b1220;border-radius:14px;min-height:180px;padding:16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.status-box{border-radius:14px}@media (width<=1100px){.metric-grid{grid-template-columns:1fr}.app-content-grid.ant-layout{flex-direction:column}.app-content-grid>.ant-layout-sider{position:static;flex:none!important;width:100%!important;max-width:none!important}}@media (width<=900px){.auth-card-grid{grid-template-columns:1fr}.auth-brand,.auth-panel{padding:28px}.app-layout{padding:16px}.app-topbar-inner{flex-direction:column;align-items:stretch}}
