:root{--gold:#f8a430;--gold-light:#ffa651;--gold-lighter:#ffd89e;--gold-bg:#fff8ef;--gold-bg-2:#fef3e2;--ink:#2b2b2b;--ink-2:#555;--ink-3:#888;--line:#ececec;--line-2:#f2f2f2;--red:#e23b3b;--green:#16a34a;--white:#fff;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 6px 24px #f8a4301f;--shadow-lg:0 12px 40px #00000014;--radius:14px;--radius-sm:8px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#fafafa;font-family:PingFang SC,Microsoft YaHei,Segoe UI,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;line-height:1.6}#root{min-height:100%}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#e2e2e2;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--gold-lighter)}.top-bar{border-bottom:3px solid var(--gold);z-index:100;box-shadow:var(--shadow-sm);background:#fff;position:sticky;top:0}.top-bar-inner{align-items:center;gap:20px;max-width:1240px;margin:0 auto;padding:14px 24px;display:flex}.top-logo{cursor:pointer;height:40px}.top-divider{background:var(--line);width:1px;height:30px}.top-title{color:var(--ink);letter-spacing:.5px;cursor:pointer;font-size:19px;font-weight:700}.top-title span{color:var(--gold)}.top-sub{color:var(--ink-3);letter-spacing:2px;margin-top:1px;font-size:12px}.top-spacer{flex:1}.top-nav{gap:6px;margin-left:28px;display:flex}.top-nav-btn{color:var(--ink-2);border-radius:20px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .18s}.top-nav-btn:hover{color:var(--gold);background:var(--gold-bg)}.top-nav-btn.active{color:#fff;background:var(--gold);box-shadow:0 4px 12px #f8a4304d}.top-tag{color:var(--gold);background:var(--gold-bg);border:1px solid var(--gold-lighter);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:600}.hero{border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fff8ef 0%,#fff 55%,#fff3e2 100%)}.hero-inner{max-width:1240px;margin:0 auto;padding:40px 24px 30px}.hero h1{color:var(--ink);margin-bottom:10px;font-size:30px;font-weight:800}.hero h1 em{color:var(--gold);font-style:normal}.hero p{color:var(--ink-2);max-width:780px;font-size:15px}.hero-stats{flex-wrap:wrap;gap:40px;margin-top:26px;display:flex}.hero-stat .num{color:var(--gold);font-size:28px;font-weight:800}.hero-stat .lbl{color:var(--ink-3);font-size:13px}.container{max-width:1240px;margin:0 auto;padding:28px 24px 60px}.toolbar{border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--line-2);background:#fff;margin-bottom:26px;padding:20px 22px}.search-wrap{margin-bottom:16px;position:relative}.search-wrap svg{color:var(--gold);position:absolute;top:50%;left:16px;transform:translateY(-50%)}.search-input{border:2px solid var(--line);background:#fdfdfd;border-radius:30px;outline:none;width:100%;padding:14px 16px 14px 46px;font-size:15px;transition:all .2s}.search-input:focus{border-color:var(--gold);box-shadow:0 0 0 4px var(--gold-bg-2);background:#fff}.filter-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.filter-row:last-child{margin-bottom:0}.filter-label{color:var(--ink-3);min-width:62px;margin-right:4px;font-size:13px;font-weight:600}.chip{border:1px solid var(--line);color:var(--ink-2);background:#fff;border-radius:20px;padding:6px 15px;font-size:13px;transition:all .18s}.chip:hover{border-color:var(--gold-lighter);color:var(--gold)}.chip.active{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:600;box-shadow:0 4px 12px #f8a4304d}.result-count{color:var(--ink-3);margin-bottom:16px;font-size:13px}.result-count b{color:var(--gold);font-size:15px}.grid{grid-template-columns:repeat(auto-fill,minmax(370px,1fr));gap:20px;display:grid}.card{border-radius:var(--radius);border:1px solid var(--line-2);box-shadow:var(--shadow-sm);cursor:pointer;background:#fff;flex-direction:column;padding:22px;transition:all .22s;display:flex;position:relative;overflow:hidden}.card:before{content:"";background:var(--gold);transform-origin:top;width:4px;height:100%;transition:transform .22s;position:absolute;top:0;left:0;transform:scaleY(0)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--gold-lighter);transform:translateY(-4px)}.card:hover:before{transform:scaleY(1)}.card-head{align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.card-badge{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:20px;font-weight:800;display:flex;box-shadow:0 4px 10px #f8a43047}.card-title{color:var(--ink);margin-bottom:3px;font-size:18px;font-weight:700}.card-type{color:var(--gold);background:var(--gold-bg);border-radius:4px;padding:2px 8px;font-size:12px;display:inline-block}.card-overview{color:var(--ink-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin-bottom:14px;font-size:13px;line-height:1.7;display:-webkit-box;overflow:hidden}.card-metrics{border-top:1px dashed var(--line);grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;padding:14px 0;display:grid}.card-metric .v{color:var(--gold);font-size:17px;font-weight:800}.card-metric .l{color:var(--ink-3);font-size:11px}.card-tags{flex-wrap:wrap;gap:6px;display:flex}.tag{color:var(--ink-2);background:#f6f6f6;border-radius:10px;padding:3px 9px;font-size:11px}.card-foot{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.card-strat-count{color:var(--ink-3);font-size:12px}.card-cta{color:var(--gold);align-items:center;gap:4px;font-size:13px;font-weight:600;display:flex}.detail-top{border-bottom:1px solid var(--line);background:linear-gradient(120deg,#fff8ef 0%,#fff 60%,#fef3e2 100%)}.detail-top-inner{max-width:1240px;margin:0 auto;padding:20px 24px 30px}.back-btn{color:var(--ink-2);align-items:center;gap:6px;margin-bottom:12px;padding:8px 0;font-size:14px;transition:color .18s;display:inline-flex}.back-btn:hover{color:var(--gold)}.detail-head{align-items:flex-start;gap:20px;display:flex}.detail-badge{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-light) 100%);color:#fff;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;font-size:26px;font-weight:800;display:flex;box-shadow:0 6px 16px #f8a4304d}.detail-name{color:var(--ink);font-size:26px;font-weight:800}.detail-fullname{color:var(--ink-3);margin:4px 0 10px;font-size:13px}.detail-meta{color:var(--ink-2);flex-wrap:wrap;gap:20px;font-size:13px;display:flex}.detail-meta b{color:var(--ink)}.detail-tags{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.detail-tags .tag{border:1px solid var(--gold-lighter);color:var(--gold);background:#fff}.tab-nav{border-bottom:1px solid var(--line);z-index:50;background:#fff;gap:4px;max-width:1240px;margin:0 auto;padding:0 24px;display:flex;position:sticky;top:71px}.tab-btn{color:var(--ink-2);white-space:nowrap;border-bottom:3px solid #0000;padding:15px 22px;font-size:15px;font-weight:600;transition:all .18s}.tab-btn:hover{color:var(--gold)}.tab-btn.active{color:var(--gold);border-bottom-color:var(--gold)}.metric-strip{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.metric-box{border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;padding:20px;position:relative;overflow:hidden}.metric-box:after{content:"";background:var(--gold-bg-2);border-radius:50%;width:70px;height:70px;position:absolute;top:-20px;right:-20px}.metric-box .v{color:var(--gold);font-size:26px;font-weight:800;position:relative}.metric-box .l{color:var(--ink-2);margin-top:4px;font-size:13px;position:relative}.metric-box .u{color:var(--ink-3);font-size:12px;position:relative}.section{margin-bottom:30px}.section-title{color:var(--ink);align-items:center;gap:10px;margin-bottom:16px;font-size:19px;font-weight:800;display:flex}.section-title:before{content:"";background:var(--gold);border-radius:3px;width:5px;height:20px}.panel{border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;padding:24px}.overview-text{color:var(--ink-2);font-size:14.5px;line-height:1.9}.feature-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:18px;display:grid}.feature-item{background:var(--gold-bg);border-radius:var(--radius-sm);border-left:3px solid var(--gold);padding:18px}.feature-item h4{color:var(--ink);margin-bottom:6px;font-size:15px}.feature-item p{color:var(--ink-2);font-size:13px;line-height:1.7}.two-col{grid-template-columns:1.1fr .9fr;gap:20px;display:grid}.chart-panel{border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;padding:20px 20px 8px}.chart-panel h4{color:var(--ink);margin-bottom:16px;font-size:15px;font-weight:700}.strategy-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:18px;display:grid}.strat-card{border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;padding:22px;transition:all .2s}.strat-card:hover{box-shadow:var(--shadow-md);border-color:var(--gold-lighter)}.strat-card-hit{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-bg-2), var(--shadow-md);animation:1.4s ease-out 2 strat-hit-pulse}@keyframes strat-hit-pulse{0%{box-shadow:0 0 0 0 #f8a4308c, var(--shadow-md)}70%{box-shadow:0 0 0 12px #f8a43000, var(--shadow-md)}to{box-shadow:0 0 0 3px var(--gold-bg-2), var(--shadow-md)}}.strat-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.strat-name{color:var(--ink);font-size:16px;font-weight:700}.strat-cat{color:#fff;background:var(--gold);white-space:nowrap;border-radius:12px;flex-shrink:0;padding:3px 10px;font-size:11px}.strat-risk{color:var(--ink-3);margin-bottom:10px;font-size:12px}.strat-risk b{color:var(--gold)}.strat-desc{color:var(--ink-2);margin-bottom:14px;font-size:13px;line-height:1.75}.strat-metrics{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.strat-metric{background:var(--gold-bg);border-radius:var(--radius-sm);text-align:center;flex:1;min-width:90px;padding:8px 14px}.strat-metric .v{color:var(--gold);font-size:17px;font-weight:800}.strat-metric .l{color:var(--ink-3);font-size:11px}.strat-highlight{color:var(--ink-2);border:1px dashed var(--gold-lighter);border-radius:var(--radius-sm);background:#fffdf8;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12.5px;display:flex}.strat-highlight span{color:var(--gold);flex-shrink:0;font-weight:700}.table-wrap{border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;overflow:hidden}.perf-table{border-collapse:collapse;width:100%;font-size:13.5px}.perf-table thead th{background:var(--gold-bg);color:var(--ink);text-align:left;white-space:nowrap;padding:14px 18px;font-size:13px;font-weight:700}.perf-table tbody td{border-top:1px solid var(--line-2);color:var(--ink-2);padding:14px 18px}.perf-table tbody tr:hover{background:#fffdf8}.perf-table .prod{color:var(--ink);font-weight:700}.perf-table .pos{color:var(--red);font-weight:600}.perf-table .neg{color:var(--green);font-weight:600}.coop-summary{background:linear-gradient(120deg, var(--gold) 0%, var(--gold-light) 100%);color:#fff;border-radius:var(--radius);box-shadow:var(--shadow-md);margin-bottom:20px;padding:26px 28px}.coop-summary .lbl{opacity:.9;font-size:14px}.coop-summary .val{margin:4px 0 10px;font-size:38px;font-weight:800}.coop-summary .note{opacity:.95;max-width:900px;font-size:13.5px;line-height:1.75}.coop-item{border:1px solid var(--line-2);border-left:4px solid var(--gold);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);background:#fff;margin-bottom:14px;padding:20px 22px}.coop-item-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.coop-item-head h4{color:var(--ink);font-size:16px}.coop-scale{color:var(--gold);white-space:nowrap;font-size:15px;font-weight:800}.coop-item p{color:var(--ink-2);font-size:13.5px;line-height:1.75}.coop-perf{color:var(--ink-2);background:var(--gold-bg);border-radius:6px;margin-top:10px;padding:8px 12px;font-size:12.5px}.coop-perf b{color:var(--gold)}.award-list{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.award{color:var(--gold);background:var(--gold-bg);border:1px solid var(--gold-lighter);border-radius:20px;padding:7px 16px;font-size:13px;font-weight:600}.source-note{color:var(--ink-3);border-top:1px dashed var(--line);margin-top:24px;padding-top:16px;font-size:12px}.footer{color:#bbb;text-align:center;background:#2b2b2b;padding:28px 24px;font-size:13px;line-height:1.9}.footer .risk{color:var(--gold-lighter);margin-bottom:6px;font-weight:600}.empty{text-align:center;color:var(--ink-3);padding:80px 20px}.empty .big{margin-bottom:12px;font-size:48px}.chip-lg{padding:8px 18px;font-size:14px;font-weight:600}.section-count{color:var(--ink-3);background:var(--gold-bg);border-radius:12px;margin-left:4px;padding:2px 12px;font-size:13px;font-weight:600}.chip-count{min-width:16px;color:inherit;background:#0000000f;border-radius:9px;margin-left:2px;padding:0 5px;font-size:11px;display:inline-block}.chip.active .chip-count{background:#ffffff47}.compare-table{table-layout:fixed}.compare-table .col-mgr{width:11%}.compare-table .col-strat{width:16%}.compare-table .col-risk{width:9%}.compare-table .col-metric{width:9.5%}.compare-table .col-highlight{width:21%}.compare-table .col-go{width:4%}.compare-table th,.compare-table td{overflow-wrap:break-word;word-break:break-word}.compare-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s}.compare-table th.sortable:hover,.compare-table th.sorted{color:var(--gold)}.sort-ind{opacity:.7;margin-left:4px;font-size:10px}.compare-row{cursor:pointer}.cmp-mgr{color:var(--ink);font-weight:700}.cmp-mgr-type{color:var(--gold);background:var(--gold-bg);border-radius:4px;margin-top:3px;padding:1px 7px;font-size:11px;display:inline-block}.cmp-strat{color:var(--ink);font-weight:600}.cmp-risk{color:var(--ink-2);white-space:nowrap;background:#f4f4f4;border-radius:10px;padding:2px 9px;font-size:12px}.compare-table td.muted{color:var(--ink-3)}.cmp-highlight{color:var(--ink-2);max-width:300px;font-size:12.5px;line-height:1.6}.cmp-go{color:var(--gold);text-align:right}.compare-row:hover .cmp-go{transform:translate(2px)}@media (width<=900px){.top-nav{gap:2px;margin-left:12px}.top-nav-btn{padding:6px 10px;font-size:13px}.metric-strip{grid-template-columns:repeat(2,1fr)}.feature-grid,.two-col,.grid,.strategy-grid{grid-template-columns:1fr}.hero h1{font-size:24px}}
