:root{font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#203349;background:#f4f6f9;font-synthesis:none;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}h1,h2,h3,p{margin-top:0}a{color:#176c71}.muted{color:#778698}.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.15em;line-height:1.8;text-transform:uppercase}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700}.brand .anticon{font-size:30px}.brand span{font-size:12px;letter-spacing:.13em;font-weight:400}.loading-screen{min-height:100vh;display:grid;place-items:center}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-context{background:#132b45;color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:52px 10%;min-height:100vh}.login-context .eyebrow{color:#a6beca}.login-context h1{font-size:clamp(32px,3.8vw,54px);line-height:1.5;font-weight:500;margin:30px 0 22px;letter-spacing:.025em}.login-context p{font-size:17px;line-height:2;color:#b7cad4}.research-path{display:flex;gap:18px;align-items:center;margin-top:48px;padding-top:24px;border-top:1px solid #ffffff26;color:#c6dadc;font-size:14px}.research-path .anticon{font-size:12px;color:#7fa1ad}.login-context footer{color:#9bb0c1;font-size:13px;margin-top:70px}.login-form{display:grid;place-items:center;background:#fff;padding:48px}.form-inner{width:min(390px,100%)}.login-form .eyebrow{color:#176c71}.login-form h2{font-size:28px;line-height:1.5;margin:14px 0}.login-form p{font-size:15px;margin-bottom:36px}.login-form .ant-btn{margin-top:14px;height:46px}.login-note{margin-top:28px;color:#7b8997;font-size:13px;text-align:center}.space-bottom{margin-bottom:20px}.initial-workspace{padding:40px}.initial-workspace .brand{margin-bottom:50px}@media(max-width:800px){.login-page{grid-template-columns:1fr}.login-context{min-height:auto;padding:28px}.login-context h1{font-size:28px;margin:24px 0 12px}.login-context p,.research-path,.login-context footer{display:none}.login-form{padding:40px 28px}.brand span{font-size:10px}}.app-layout{min-height:100vh}.app-sidebar{background:#152d46!important;position:sticky!important;top:0;height:100vh}.sidebar-brand{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:29px 26px 20px;color:#fff}.sidebar-brand>.anticon{font-size:30px}.sidebar-brand strong{font-size:26px;letter-spacing:3px}.sidebar-brand>span:last-child{flex-basis:100%;font-size:11px;letter-spacing:3px;color:#a3bac9;padding-left:42px}.sidebar-label{font-size:11px;letter-spacing:2px;color:#7f9bae;padding:32px 27px 14px}.app-sidebar .ant-menu{background:transparent}.app-sidebar .ant-menu-item{height:46px;line-height:46px;margin:5px 12px;width:calc(100% - 24px)}.app-sidebar .ant-menu-item-selected{background:#28475d!important}.sidebar-footer{position:absolute;bottom:30px;left:28px;color:#c6d7de;font-size:12px;line-height:1.9}.sidebar-footer span{color:#8fa8ba}.sidebar-footer hr{border:0;border-top:1px solid #ffffff1c;margin:16px 0}.app-header{height:72px;padding:0 36px;background:#fff;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e9edf1;line-height:normal}.header-title{font-size:13px;color:#66798a}.account-menu{border:0;background:transparent;display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13px;color:#43586b}.app-main{min-width:0;background:#f4f6f9}.app-content{padding:32px 36px;max-width:1660px;width:100%;margin:auto;min-height:calc(100vh - 130px)}.app-footer{display:flex;justify-content:space-between;border-top:1px solid #e0e7ed;color:#8a97a4;font-size:11px;padding:20px 36px;letter-spacing:1px}.workspace-hero{background:#e9f0f0;border:1px solid #dce8e8;border-radius:12px;padding:32px 36px;display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.workspace-hero .eyebrow{font-size:10px;color:#5a8387;letter-spacing:2px}.workspace-hero h1{font-size:29px;margin:12px 0 14px;font-weight:600;letter-spacing:.04em}.workspace-hero p{font-size:14px;color:#6f8389;line-height:1.9;margin-bottom:24px}.hero-diagram{position:relative;display:flex;align-items:center;gap:10px;padding:15px 10px 35px;color:#789397}.hero-diagram>div{width:70px;height:70px;border-radius:50%;border:1px solid #93b0b4;display:grid;place-items:center;font-size:14px}.hero-diagram .filled{background:#247477;color:#fff;border-color:#247477}.hero-diagram small{position:absolute;bottom:0;left:25px;font-size:9px;letter-spacing:2px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.metric-grid .ant-card-body{padding:20px 24px}.metric-grid .ant-statistic-content{font-size:28px;font-weight:500}.metric-grid .ant-statistic-title{font-size:12px;color:#7d8999}.page-title{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0 0 22px}.page-title h1{font-size:21px;font-weight:600;letter-spacing:1px;margin:0 0 7px}.page-title p{font-size:13px;color:#7a8998;line-height:1.8;margin:0}.capability-card{width:100%;height:225px;background:#fff;border:1px solid #e3e9ef;border-radius:10px;padding:22px 24px;text-align:left;cursor:pointer;color:#213a4d;transition:border-color .15s,box-shadow .15s}.capability-card:hover{border-color:#63a0a0;box-shadow:0 5px 18px #244d5b0a}.capability-top{display:flex;justify-content:space-between;align-items:center}.capability-icon{display:grid;place-items:center;width:40px;height:40px;background:#eaf2f2;border-radius:9px;color:#277477;font-size:21px}.capability-index{font-size:12px;color:#bbc7ce;letter-spacing:2px}.capability-card h3{font-size:17px;font-weight:600;margin:17px 0 9px}.capability-card p{font-size:13px;color:#85929e;margin-bottom:21px}.capability-card>div:last-child{display:flex;justify-content:space-between;font-size:11px;color:#719096;border-top:1px solid #edf1f4;padding-top:13px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:30px 0 18px}.section-heading h2{font-size:18px;margin:0}.section-heading a{font-size:12px}.section-loading{padding:45px;text-align:center}.project-card{height:240px}.project-card .ant-card-head-title{white-space:normal;line-height:1.6}.project-description{height:54px;line-height:1.8;overflow:hidden;font-size:13px;color:#77899a}.project-footer{display:flex;justify-content:space-between;border-top:1px solid #edf1f4;padding-top:16px;margin-top:16px;font-size:12px;color:#94a0ac}.search-box{width:340px;margin-bottom:24px;max-width:100%}.project-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:22px 0}.project-heading h1{font-size:25px;font-weight:600;line-height:1.5;margin-bottom:12px}.project-heading .ant-select{width:220px;flex-shrink:0}.project-nav{display:flex;flex-wrap:wrap;border-bottom:1px solid #dbe3e9;margin-bottom:26px;gap:3px}.project-nav a{font-size:13px;padding:14px 11px;color:#7b8997;border-bottom:2px solid transparent}.project-nav a.active{color:#176c71;border-color:#176c71;font-weight:600}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:20px}.filter-bar>.ant-input-search{max-width:270px}.filter-bar>.ant-select{width:180px}.filter-bar>a{margin-left:auto;font-size:13px}.table-name{padding:0;text-align:left;white-space:normal;height:auto;max-width:320px}.full-width{width:100%}.space-top{margin-top:20px}.break-all{word-break:break-all}.preserve-text,.source-block p{white-space:pre-wrap;line-height:1.9;overflow-wrap:anywhere}.source-block{background:#f4f7f9;border:1px solid #e3e9ee;padding:18px;border-radius:6px;margin:15px 0}.source-block p{font-size:14px}.dataset-select{width:620px;max-width:100%}.clean-controls{display:flex;align-items:center;gap:14px;margin:20px 0;flex-wrap:wrap}.clean-controls>.ant-select:last-child{min-width:260px;flex:1}.json-block{padding:16px;background:#f3f6f8;border:1px solid #e1e7ed;border-radius:6px;font-size:12px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;max-height:600px;overflow:auto}.analysis-form{max-width:1150px}.form-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:15px 0}.form-row>.ant-input{max-width:280px}.indicator-labels{display:flex;flex-wrap:wrap;gap:12px;margin:15px 0 20px}.indicator-labels>.ant-input{width:150px}.direction-list{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0}.submit-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:30px;padding-top:24px;border-top:1px solid #e9edf1}.chart-box{border:1px solid #e4eaef;border-radius:8px;background:#fff;padding:18px;margin:20px 0}.chart-heading{display:flex;justify-content:space-between}.image-comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}.image-comparison figure{margin:0}.image-comparison img{height:270px;object-fit:contain;width:100%;background:#eef2f5}.image-comparison figcaption{font-size:12px;text-align:center;color:#82929e;margin-top:10px}.legend-dot{display:inline-block;width:12px;height:12px;border-radius:3px}.research-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;min-height:650px}.conversation-list{background:#fff;border:1px solid #e1e8ed;border-radius:9px;padding:16px;max-height:770px;overflow:auto}.conversation{display:block;width:100%;border:0;background:transparent;text-align:left;padding:15px 10px;border-radius:6px;cursor:pointer;color:#334b5e;line-height:1.8;margin-top:8px;font-size:13px}.conversation small{display:block;font-size:10px;color:#84939d}.conversation.active{background:#eaf3f2;color:#176c71}.chat-panel{background:#fff;border:1px solid #e1e8ed;border-radius:9px;display:flex;flex-direction:column;min-width:0}.chat-toolbar{display:flex;gap:10px;padding:16px;border-bottom:1px solid #ebeff2;flex-wrap:wrap}.chat-toolbar .ant-select:first-child{width:180px}.chat-toolbar .ant-select:not(:first-child){min-width:170px;flex:1}.chat-messages{height:480px;overflow:auto;padding:24px;flex:1}.chat-empty{text-align:center;padding:70px 16px;color:#7c8d9b}.chat-empty h2{color:#335268;font-size:22px}.chat-empty>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:25px}.chat-message{padding:18px;margin:0 0 20px;line-height:1.9;border-radius:8px;overflow-wrap:anywhere;font-size:14px}.chat-message.user{background:#edf5f4;margin-left:35px}.chat-message.assistant{background:#f7f9fb;margin-right:20px}.message-label{font-size:12px;color:#438086;font-weight:600;margin-bottom:10px}.message-label small{margin-left:12px;color:#99a5af;font-weight:400}.message-citations{border-top:1px solid #e4ebee;padding-top:10px;margin-top:14px}.chat-compose{padding:18px;border-top:1px solid #e5ebef}.chat-compose>div{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.chat-compose small{font-size:11px;color:#99a4af}.strategy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.report-form-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.error-text{color:#bd5b43;white-space:normal;line-height:1.8}.ant-table-cell{font-size:13px}.ant-drawer-body h3{margin:24px 0 12px}.ant-layout-sider-collapsed .sidebar-brand{padding:28px 16px}.ant-layout-sider-collapsed .sidebar-brand strong,.ant-layout-sider-collapsed .sidebar-brand>span:last-child,.ant-layout-sider-collapsed .sidebar-label,.ant-layout-sider-collapsed .sidebar-footer{display:none}.ant-layout-sider-collapsed .ant-menu-item{margin:7px;width:50px}@media(max-width:1200px){.hero-diagram{display:none}.app-content{padding:25px}.app-header{padding:0 25px}.strategy-grid{grid-template-columns:1fr}.research-layout{grid-template-columns:180px minmax(0,1fr)}}@media(max-width:760px){.app-content{padding:20px 14px}.app-header{padding:0 15px;height:64px}.header-title,.app-footer span{display:none}.workspace-hero{padding:24px}.workspace-hero h1{font-size:24px}.metric-grid{grid-template-columns:repeat(2,1fr);gap:12px}.page-title,.project-heading{align-items:flex-start;flex-direction:column}.project-heading h1{font-size:21px}.project-nav a{padding:10px 9px;font-size:12px}.research-layout{grid-template-columns:1fr}.conversation-list{max-height:180px}.chat-messages{padding:12px;min-height:300px}.chat-toolbar{padding:12px}.image-comparison,.report-form-grid{grid-template-columns:1fr}.filter-bar>.ant-select{width:calc(50% - 8px)}.filter-bar>a{margin-left:0}.account-menu>span:not(.ant-avatar){display:none}.clean-controls{align-items:flex-start;flex-direction:column}.clean-controls .ant-select{width:100%}}
