*{box-sizing:border-box;margin:0;padding:0}body{color:#333;background:#f0f2f5;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif}#root{min-height:100vh}.app-container{flex-direction:column;min-height:100vh;display:flex}.header{color:#fff;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);align-items:center;gap:14px;padding:20px 32px;display:flex;box-shadow:0 2px 8px #00000026}.header-icon{background:linear-gradient(135deg,#00d2ff,#3a7bd5);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.header-title{letter-spacing:1px;font-size:20px;font-weight:600}.header-subtitle{opacity:.7;margin-top:2px;font-size:12px}.main-content{flex-direction:column;flex:1;gap:24px;width:100%;max-width:1200px;margin:0 auto;padding:24px 24px 32px;display:flex}.input-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 4px #00000014}.input-section h2{color:#1a1a2e;align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-weight:600;display:flex}.input-section h2:before{content:"";background:linear-gradient(#00d2ff,#3a7bd5);border-radius:2px;width:4px;height:18px;display:inline-block}.input-row{gap:12px;display:flex}.input-box{resize:none;border:1.5px solid #e0e0e0;border-radius:8px;outline:none;flex:1;min-height:48px;padding:12px 16px;font-family:inherit;font-size:14px;line-height:1.5;transition:border-color .2s,box-shadow .2s}.input-box:focus{border-color:#3a7bd5;box-shadow:0 0 0 3px #3a7bd51a}.input-box::placeholder{color:#bbb}.send-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#3a7bd5,#00d2ff);border:none;border-radius:8px;align-items:center;gap:6px;padding:0 28px;font-size:15px;font-weight:500;transition:opacity .2s,transform .1s;display:flex}.send-btn:hover{opacity:.9}.send-btn:active{transform:scale(.97)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.quick-examples{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.example-tag{color:#555;cursor:pointer;background:#f5f7fa;border:1px solid #e8eaed;border-radius:20px;padding:6px 14px;font-size:13px;transition:all .2s}.example-tag:hover{color:#3a7bd5;background:#e8f0fe;border-color:#3a7bd5}.results-section{flex-direction:column;gap:20px;display:flex}.train-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 4px #00000014}.train-section>h2{color:#1a1a2e;align-items:center;gap:8px;margin-bottom:4px;font-size:16px;font-weight:600;display:flex}.train-section>h2:before{content:"";background:linear-gradient(#f7971e,#ffd200);border-radius:2px;width:4px;height:18px;display:inline-block}.train-subtitle{color:#999;margin-bottom:18px;font-size:13px}.method-cards{grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:4px;display:grid}.method-card{cursor:pointer;border:1.5px solid #e8eaed;border-radius:10px;align-items:flex-start;gap:14px;padding:18px;transition:all .2s;display:flex}.method-card:hover{background:#f8faff;border-color:#3a7bd5}.method-card.active{background:#eef4ff;border-color:#3a7bd5;box-shadow:0 0 0 3px #3a7bd51a}.method-card-icon{flex-shrink:0;margin-top:2px;font-size:28px}.method-card-body{flex:1}.method-card-label{color:#1a1a2e;margin-bottom:4px;font-size:15px;font-weight:600}.method-card-desc{color:#666;margin-bottom:6px;font-size:13px;line-height:1.5}.method-card-note{color:#999;font-size:12px}.train-panel{background:#fafbfc;border:1px solid #e8eaed;border-radius:10px;margin-top:18px;padding:20px;animation:.25s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.train-panel h3{color:#1a1a2e;margin-bottom:8px;font-size:15px;font-weight:600}.panel-hint{color:#888;margin-bottom:14px;font-size:13px;line-height:1.5}.omega-prompt-input{resize:vertical;border:1.5px solid #e0e0e0;border-radius:8px;outline:none;width:100%;min-height:100px;padding:12px 14px;font-family:inherit;font-size:14px;line-height:1.6;transition:border-color .2s,box-shadow .2s}.omega-prompt-input:focus{border-color:#3a7bd5;box-shadow:0 0 0 3px #3a7bd51a}.omega-prompt-input::placeholder{color:#bbb}.train-field{margin-bottom:18px}.train-field label{color:#1a1a2e;margin-bottom:10px;font-size:14px;font-weight:600;display:block}.option-chips{flex-wrap:wrap;gap:8px;display:flex}.option-chip{color:#555;cursor:pointer;background:#fff;border:1.5px solid #e0e0e0;border-radius:20px;padding:7px 18px;font-size:13px;transition:all .2s}.option-chip:hover{color:#3a7bd5;border-color:#3a7bd5}.option-chip.selected{color:#fff;background:#3a7bd5;border-color:#3a7bd5}.model-options{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.model-option{cursor:pointer;background:#fff;border:1.5px solid #e0e0e0;border-radius:8px;padding:12px 14px;transition:all .2s}.model-option:hover{background:#f8faff;border-color:#3a7bd5}.model-option.selected{background:#eef4ff;border-color:#3a7bd5;box-shadow:0 0 0 3px #3a7bd51a}.model-option-label{color:#1a1a2e;margin-bottom:3px;font-size:14px;font-weight:600}.model-option-desc{color:#999;font-size:12px}.panel-footer{justify-content:flex-end;margin-top:16px;display:flex}.train-submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f7971e,#ffd200);border:none;border-radius:8px;padding:10px 28px;font-size:14px;font-weight:600;transition:opacity .2s,transform .1s}.train-submit-btn:hover{opacity:.9}.train-submit-btn:active{transform:scale(.97)}.train-submit-btn:disabled{opacity:.4;cursor:not-allowed}.train-result{border-radius:8px;align-items:flex-start;gap:8px;margin-top:14px;padding:14px 18px;font-size:14px;line-height:1.6;animation:.3s fadeIn;display:flex}.train-result.success{color:#2e7d32;background:#e8f5e9;border:1px solid #c8e6c9}.train-result-icon{flex-shrink:0}.crowd-intro-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 4px #00000014}.crowd-intro-card h2{color:#1a1a2e;align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-weight:600;display:flex}.crowd-intro-card h2:before{content:"";background:linear-gradient(#56ab2f,#a8e063);border-radius:2px;width:4px;height:18px;display:inline-block}.crowd-intro-header{margin-bottom:12px}.crowd-name-badge{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:6px 18px;font-size:15px;font-weight:600;display:inline-block}.crowd-description{color:#555;background:#f8f9fb;border-left:3px solid #667eea;border-radius:8px;padding:16px;font-size:14px;line-height:1.8}.crowd-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 4px #00000014}.crowd-card h2{color:#1a1a2e;align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-weight:600;display:flex}.crowd-card h2:before{content:"";background:linear-gradient(#f7971e,#ffd200);border-radius:2px;width:4px;height:18px;display:inline-block}.crowd-tags{flex-wrap:wrap;gap:10px;display:flex}.crowd-tag-group{align-items:center;gap:6px;display:flex}.crowd-tag-label{color:#999;font-size:12px}.crowd-tag{border-radius:6px;align-items:center;gap:6px;padding:6px 16px;font-size:13px;font-weight:500;display:inline-flex}.crowd-tag.blue{color:#1976d2;background:#e8f4fd;border:1px solid #bbdefb}.crowd-tag.green{color:#2e7d32;background:#e8f5e9;border:1px solid #c8e6c9}.crowd-tag.orange{color:#e65100;background:#fff3e0;border:1px solid #ffe0b2}.crowd-tag.purple{color:#7b1fa2;background:#f3e5f5;border:1px solid #e1bee7}.crowd-tag.red{color:#c62828;background:#fce4ec;border:1px solid #f8bbd0}.crowd-connector{color:#bbb;font-size:16px;font-weight:600}.metrics-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.metric-card{text-align:center;background:#fff;border-radius:12px;flex-direction:column;align-items:center;padding:24px;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 4px #00000014}.metric-card:before{content:"";height:3px;position:absolute;top:0;left:0;right:0}.metric-card.population:before{background:linear-gradient(90deg,#3a7bd5,#00d2ff)}.metric-card.service:before{background:linear-gradient(90deg,#f7971e,#ffd200)}.metric-card.satisfaction:before{background:linear-gradient(90deg,#56ab2f,#a8e063)}.metric-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:12px;font-size:24px;display:flex}.metric-card.population .metric-icon{background:linear-gradient(135deg,#3a7bd51a,#00d2ff1a)}.metric-card.service .metric-icon{background:linear-gradient(135deg,#f7971e1a,#ffd2001a)}.metric-card.satisfaction .metric-icon{background:linear-gradient(135deg,#56ab2f1a,#a8e0631a)}.metric-label{color:#999;margin-bottom:8px;font-size:13px}.metric-value{color:#1a1a2e;font-size:32px;font-weight:700;line-height:1}.metric-unit{color:#999;margin-left:4px;font-size:14px;font-weight:400}.metric-trend{align-items:center;gap:4px;margin-top:8px;font-size:12px;display:flex}.metric-trend.up{color:#56ab2f}.metric-trend.down{color:#e53935}.empty-state{text-align:center;color:#bbb;padding:80px 20px}.empty-icon{opacity:.5;margin-bottom:16px;font-size:64px}.empty-state p{font-size:15px;line-height:1.8}.loading-container{text-align:center;padding:60px 20px}.loading-spinner{border:3px solid #e0e0e0;border-top-color:#3a7bd5;border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{color:#999;font-size:14px}.thinking-steps{background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 1px 4px #00000014}.thinking-steps h2{color:#1a1a2e;align-items:center;gap:8px;margin-bottom:14px;font-size:16px;font-weight:600;display:flex}.thinking-steps h2:before{content:"";background:linear-gradient(#a18cd1,#fbc2eb);border-radius:2px;width:4px;height:18px;display:inline-block}.steps-list{flex-direction:column;gap:10px;display:flex}.step-item{color:#666;align-items:center;gap:10px;font-size:13px;display:flex}.step-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;display:flex}.step-icon.done{color:#2e7d32;background:#e8f5e9}.step-icon.active{color:#3a7bd5;background:#e8f0fe;animation:1.5s infinite pulse}.step-icon.pending{color:#ccc;background:#f5f5f5}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (width<=768px){.header{padding:16px 20px}.main-content{padding:16px}.metrics-grid{grid-template-columns:1fr}.input-row{flex-direction:column}.send-btn{justify-content:center;padding:12px 0}.method-cards{grid-template-columns:1fr}.model-options{grid-template-columns:1fr 1fr}}
