.hero-icon{font-size:56px;margin-bottom:12px;animation:homeFloat 3s ease-in-out infinite}@keyframes homeFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-title span{display:inline-block;opacity:0;transform:translateY(16px);animation:homeCharIn .5s ease-out forwards}@keyframes homeCharIn{to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.hero-title{font-size:36px}.values{gap:12px;font-size:12px}}@media(max-width:480px){.hero-title{font-size:28px}.subtitle{font-size:15px}}.report-content .report-container,.report-content .report-section{display:block!important}.score-badge-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:4px 0;padding:2px 0}.score-badge-label{font-size:13px;font-weight:500;color:var(--yn-ink, #1F2937);white-space:nowrap;flex-shrink:0;min-width:72px}.score-badge-progress{flex:1;min-width:0}.overall-status-wrapper{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 0}.overall-status-score{font-size:28px;font-weight:800;line-height:1}.overall-status-tags{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:12px}.overall-status-tag{font-size:14px!important;font-weight:700!important;padding:2px 16px!important;border-radius:20px!important;line-height:1.6!important}.overall-status-potential{font-size:13px!important;padding:2px 12px!important;border-radius:20px!important;background:#2d7d4614!important;border:1px solid rgba(45,125,70,.2)!important;color:var(--yn-mountain, #0FB5A6)!important}.tier-card{border-radius:14px!important;transition:box-shadow .3s ease!important}.tier-card:hover{box-shadow:0 6px 24px #0000001a!important}.tier-1{border-left:5px solid var(--yn-mountain, #0FB5A6)!important}.tier-2{border-left:5px solid var(--yn-tea-gold, #7C5CFC)!important}.tier-3{border-left:5px solid var(--yn-erhai, #4F6BED)!important}.tier-4{border-left:5px solid var(--yn-cinnabar-dark, #D84315)!important}.tier-5{border-left:5px solid #7B1FA2!important}.tier-6{border-left:5px solid #F57F17!important}.admet-report-container{position:relative}.admet-report-container .ant-card-small>.ant-card-head{min-height:36px;padding:0 12px}.admet-report-container .ant-card-small>.ant-card-head .ant-card-head-title{font-size:13px;font-weight:600;padding:8px 0}.admet-score-card{background:#fff;border:1px solid var(--yn-border);border-radius:14px;padding:16px;text-align:center;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.admet-score-label{font-size:13px;font-weight:600;color:var(--yn-ink-muted);margin-top:6px}.admet-quick-summary{background:#fff;border:1px solid var(--yn-border);border-radius:14px;padding:14px 16px;height:100%}.admet-cat-mini{margin-bottom:2px}.admet-cat-mini-title{font-size:12px;font-weight:600;color:var(--yn-ink);margin-bottom:3px;display:flex;align-items:center;gap:4px}.admet-mini-item{display:flex;justify-content:space-between;font-size:11px;padding:1px 4px}.admet-mini-label{color:var(--yn-ink-hint)}.admet-mini-val{font-weight:600}.admet-percentile-card{background:#fff;border:1px solid var(--yn-border);border-radius:14px;padding:14px 16px;height:100%}.admet-percentile-row{display:flex;align-items:center;gap:6px;margin:2px 0}.admet-percentile-label{font-size:11px;color:var(--yn-ink-hint);white-space:nowrap;min-width:102px}.admet-cat-card{border-radius:12px!important;border:1px solid var(--yn-border)!important;transition:box-shadow .3s ease,transform .3s ease}.admet-cat-card:hover{box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.admet-item-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;margin:0;font-size:12px;border-bottom:1px solid rgba(0,0,0,.04)}.admet-item-row:last-child{border-bottom:none}.admet-item-label{color:var(--yn-ink-muted);cursor:help;font-size:12px}.admet-item-value{font-weight:600;font-size:12px;padding:2px 0}.admet-val-good{color:var(--yn-mountain)}.admet-val-bad{color:var(--yn-cinnabar-dark)}.admet-val-neutral{color:var(--yn-ink)}.hob-confidence{font-size:12px;color:var(--yn-ink-hint, #6B7280);margin-top:4px;text-align:center}.umap-coords{font-size:11px;color:var(--yn-ink-hint, #6B7280);margin-top:6px;font-family:SF Mono,Fira Code,Consolas,monospace;letter-spacing:.3px}.pe-data-source{font-size:12px;color:var(--yn-ink-hint, #6B7280);text-align:center;margin-top:12px;padding-top:10px;border-top:1px solid var(--yn-border, #E8EDE9);font-style:italic}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center}.loading-state-title{margin-top:20px!important;margin-bottom:8px!important;color:var(--yn-tech-navy, #0F1B33)!important}.loading-state-progress{max-width:400px;width:100%;margin-top:16px}.tier-card .ant-card-body{padding:18px 22px!important}.dashboard-container .tier-card+.tier-card{margin-top:4px}.report-reanalyze-btn{margin-top:20px;text-align:center}@media(max-width:768px){.score-badge-row{flex-direction:column;align-items:flex-start}.score-badge-label{min-width:auto;margin-bottom:2px}.overall-status-tags{flex-direction:row;flex-wrap:wrap;justify-content:center}}@media print{.tier-card{break-inside:avoid;border-left-width:3px!important}.tier-card .ant-card-body{padding:12px 16px!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeInUp{animation:fadeInUp .5s ease-out forwards}.animate-fadeIn{animation:fadeIn .4s ease-out forwards}.animate-scaleIn{animation:scaleIn .4s ease-out forwards}.tier-card{opacity:1}.tier-card.animate-entry{opacity:0;animation:fadeInUp .5s ease-out forwards}.tier-card.animate-entry:nth-child(1){animation-delay:.05s}.tier-card.animate-entry:nth-child(2){animation-delay:.12s}.tier-card.animate-entry:nth-child(3){animation-delay:.19s}.tier-card.animate-entry:nth-child(4){animation-delay:.26s}.tier-card.animate-entry:nth-child(5){animation-delay:.33s}.tier-card.animate-entry:nth-child(6){animation-delay:.4s}.tier-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0d21371a;transition:all .25s cubic-bezier(.4,0,.2,1)}.glass-card:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0d213714;transition:all .3s ease}.overall-status-ring{animation:scaleIn .6s ease-out .1s both}.hob-confidence:hover,.umap-coords:hover,.pe-data-source:hover{transform:scale(1.02);transition:transform .2s ease}.data-row:hover{background:#2d7d460a;transition:background .2s ease}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-shimmer{background:linear-gradient(90deg,transparent 25%,rgba(255,255,255,.5) 50%,transparent 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.report-header{background:linear-gradient(135deg,#f0faf0,#f5f8ff);border:1px solid rgba(15,181,166,.12);border-radius:16px;padding:20px 24px;margin-bottom:20px;box-shadow:0 2px 8px #0000000a}.report-header-time{font-size:12px;color:var(--yn-ink-hint)}.molecule-overview{background:#fff;border-radius:16px;border:1px solid var(--yn-border);overflow:hidden;margin-bottom:20px;box-shadow:0 2px 8px #0000000a;transition:box-shadow .3s ease}.molecule-overview:hover{box-shadow:0 8px 24px #00000014}.molecule-overview-left{padding:20px;background:linear-gradient(135deg,#f8fcf8,#f5f8ff);display:flex;align-items:center;justify-content:center;min-height:200px}.molecule-overview-right{padding:20px}.molecule-overview-right .prop-row{display:flex;align-items:baseline;padding:4px 0;border-bottom:1px solid rgba(0,0,0,.03)}.molecule-overview-right .prop-row:last-child{border-bottom:none}.molecule-overview-right .prop-label{font-size:12px;color:var(--yn-ink-muted);min-width:70px;flex-shrink:0}.molecule-overview-right .prop-value{font-size:14px;font-weight:600;color:var(--yn-ink)}.report-tier-card{border-radius:14px;margin-bottom:16px;overflow:hidden;transition:box-shadow .3s ease,transform .3s ease;animation:yn-fadeInUp .5s ease both}.report-tier-card:hover{box-shadow:0 8px 24px #00000014}.report-tier-card .tier-header{display:flex;align-items:center;gap:10px;padding:14px 20px;border-bottom:1px solid rgba(0,0,0,.05)}.report-tier-card .tier-header-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;flex-shrink:0}.report-tier-card .tier-header-title{font-size:15px;font-weight:700;color:var(--yn-ink);margin:0;flex:1}.report-tier-card .tier-header-badge{font-size:11px;padding:2px 10px;border-radius:100px;font-weight:600}.report-tier-card.tier-1{background:#f7faf7;border:1px solid rgba(15,181,166,.15);border-left:4px solid var(--yn-mountain)}.report-tier-card.tier-1 .tier-header-icon{background:var(--yn-mountain)}.report-tier-card.tier-1 .tier-header-badge{background:#0fb5a61a;color:var(--yn-mountain-dark)}.report-tier-card.tier-2{background:#fcf9f0;border:1px solid rgba(124,92,252,.15);border-left:4px solid var(--yn-tea-gold)}.report-tier-card.tier-2 .tier-header-icon{background:var(--yn-tea-gold)}.report-tier-card.tier-2 .tier-header-badge{background:#7c5cfc1a;color:#8b6914}.report-tier-card.tier-3{background:#f5f9ff;border:1px solid rgba(79,107,237,.15);border-left:4px solid var(--yn-erhai)}.report-tier-card.tier-3 .tier-header-icon{background:var(--yn-erhai)}.report-tier-card.tier-3 .tier-header-badge{background:#4f6bed1a;color:#1a5cc8}.report-tier-card.tier-4{background:#fdf5f0;border:1px solid rgba(216,67,21,.15);border-left:4px solid var(--yn-cinnabar-dark)}.report-tier-card.tier-4 .tier-header-icon{background:var(--yn-cinnabar-dark)}.report-tier-card.tier-4 .tier-header-badge{background:#d843151a;color:#b8330e}.report-tier-card.tier-5{background:#f8f4fc;border:1px solid rgba(123,31,162,.15);border-left:4px solid #7B1FA2}.report-tier-card.tier-5 .tier-header-icon{background:#7b1fa2}.report-tier-card.tier-5 .tier-header-badge{background:#7b1fa21a;color:#6a1b8f}.report-tier-card.tier-6{background:#fcf9f0;border:1px solid rgba(245,127,23,.15);border-left:4px solid #F57F17}.report-tier-card.tier-6 .tier-header-icon{background:#f57f17}.report-tier-card.tier-6 .tier-header-badge{background:#f57f171a;color:#d96b0e}.report-modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;padding:16px 20px 20px}.report-module-card{background:#fff;border-radius:12px;padding:16px;border:1px solid var(--yn-border);transition:all .25s ease}.report-module-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000000f;border-color:#0fb5a626}.report-module-card .module-title{font-size:13px;font-weight:600;color:var(--yn-ink);margin-bottom:10px;display:flex;align-items:center;gap:6px}.report-module-card .module-title .module-icon{width:26px;height:26px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;color:#fff;flex-shrink:0}.rp-value-high{color:var(--yn-mountain);font-weight:700}.rp-value-mid{color:var(--yn-tea-gold);font-weight:600}.rp-value-low{color:var(--yn-ink-hint);font-weight:500}.rp-value-bad{color:var(--yn-cinnabar-dark)}.score-bar-wrap{display:flex;align-items:center;gap:8px;margin:3px 0}.score-bar-label{font-size:11px;color:var(--yn-ink-muted);min-width:75px;flex-shrink:0}.score-bar-track{flex:1;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.score-bar-fill{height:100%;border-radius:4px;transition:width .8s ease}.score-bar-val{font-size:12px;font-weight:600;min-width:40px;text-align:right}.tag-cloud{display:flex;flex-wrap:wrap;gap:4px}.tag-cloud .ant-tag{margin:0;font-size:11px;padding:1px 8px;border-radius:12px;transition:all .2s ease}.tag-cloud .ant-tag:hover{transform:scale(1.05)}.module-empty{text-align:center;padding:20px;color:var(--yn-ink-hint);font-size:12px}.module-empty .anticon{font-size:24px;margin-bottom:8px;opacity:.3}.report-tier-card:nth-child(1){animation-delay:.05s}.report-tier-card:nth-child(2){animation-delay:.1s}.report-tier-card:nth-child(3){animation-delay:.15s}.report-tier-card:nth-child(4){animation-delay:.2s}.report-tier-card:nth-child(5){animation-delay:.25s}.report-tier-card:nth-child(6){animation-delay:.3s}.mol-structure-img{max-width:100%;height:auto;border-radius:10px;border:1px solid var(--yn-border);box-shadow:0 2px 8px #0000000f;transition:transform .3s ease}.mol-structure-img:hover{transform:scale(1.03)}.report-actions{display:flex;justify-content:center;gap:12px;margin-top:24px;padding:20px 0;border-top:1px solid var(--yn-border)}:root{--yn-mountain-glow: rgba(15, 181, 166, .08);--yn-erhai-glow: rgba(79, 107, 237, .08);--yn-ink-hint: #94A3B8;--yn-bg-light: #FAFBFC;--yn-border-light: #EDF1F6;--yn-shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--yn-shadow-md: 0 4px 6px rgba(15, 23, 42, .07), 0 2px 4px rgba(15, 23, 42, .05);--yn-shadow-lg: 0 10px 15px rgba(15, 23, 42, .08), 0 4px 6px rgba(15, 23, 42, .05);--yn-radius: 12px;--yn-card-bg: rgba(255, 255, 255, .95)}.mfr-container{max-width:1200px;margin:20px auto;background:#fff;border-radius:var(--yn-radius);box-shadow:var(--yn-shadow-md);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.mfr-nav-buttons{display:flex;justify-content:center;gap:10px;padding:16px 20px;background:linear-gradient(135deg,var(--yn-tech-navy) 0%,#1a2a3f 100%);flex-wrap:wrap;position:sticky;top:0;z-index:100}.mfr-nav-buttons .mfr-btn{transition:transform .15s ease,box-shadow .15s ease}.mfr-nav-buttons .mfr-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ffffff26}.mfr-btn{display:inline-block;padding:10px 24px;background:var(--yn-erhai);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;text-decoration:none;transition:background .2s}.mfr-btn:hover{background:#1557b0;color:#fff}.mfr-btn-secondary{background:#ffffff26;color:#e0e0e0}.mfr-btn-secondary:hover{background:#ffffff40;color:#fff}.mfr-header{text-align:center;padding:32px 20px 28px;background:linear-gradient(135deg,var(--yn-bg-light) 0%,#ffffff 40%,var(--yn-bg-light) 100%);border-bottom:1px solid var(--yn-border-light)}.mfr-brand-tag{font-size:26px;font-weight:700;color:var(--yn-tech-navy);letter-spacing:1px}.mfr-brand-tag:first-letter{color:var(--yn-mountain)}.mfr-header h1{margin:8px 0 4px;font-size:28px;color:var(--yn-tech-navy)}.mfr-header p{margin:0;font-size:13px;color:var(--yn-ink-hint)}.mfr-content{padding:28px 36px 40px}.mfr-section{margin-bottom:28px;break-inside:avoid}.mfr-section>h2{font-size:20px;color:var(--yn-tech-navy);margin:0 0 14px;padding:10px 16px;background:linear-gradient(135deg,var(--yn-mountain-glow),transparent);border-left:4px solid var(--yn-mountain);border-radius:0 8px 8px 0;font-weight:600;display:flex;align-items:center;gap:8px}.mfr-section.mfr-tier-1>h2{background:linear-gradient(135deg,rgba(15,181,166,.1),transparent);border-left-color:var(--tier1-color)}.mfr-section.mfr-tier-2>h2{background:linear-gradient(135deg,rgba(124,92,252,.1),transparent);border-left-color:var(--tier2-color)}.mfr-section.mfr-tier-3>h2{background:linear-gradient(135deg,rgba(79,107,237,.1),transparent);border-left-color:var(--tier3-color)}.mfr-section.mfr-tier-4>h2{background:linear-gradient(135deg,rgba(139,101,0,.1),transparent);border-left-color:var(--tier4-color)}.mfr-section.mfr-tier-5>h2{background:linear-gradient(135deg,rgba(10,122,112,.1),transparent);border-left-color:var(--tier5-color)}.mfr-section.mfr-tier-6>h2{background:linear-gradient(135deg,rgba(19,86,184,.1),transparent);border-left-color:var(--tier6-color)}.mfr-section>h3{font-size:16px;color:#333;margin:12px 0 8px;font-weight:600;padding-bottom:4px;border-bottom:1px solid #eee}.mfr-section>h4{font-size:14px;color:#555;margin:8px 0 4px;font-weight:600}.mfr-interpretation{background:#f8f9fc;border:1px solid #e8ecf2;border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:13px;line-height:1.6;color:#444}.mfr-sub-section{background:var(--yn-card-bg);border-radius:var(--yn-radius);padding:16px 18px;margin-bottom:16px;box-shadow:var(--yn-shadow-sm);border:1px solid var(--yn-border-light)}.mfr-grid{display:grid;gap:12px}.mfr-grid-2{grid-template-columns:repeat(2,1fr)}.mfr-grid-3{grid-template-columns:repeat(3,1fr)}.mfr-grid-4{grid-template-columns:repeat(4,1fr)}.mfr-card{background:#f9fafb;border-radius:8px;padding:12px 14px;border-left:4px solid var(--yn-erhai);box-shadow:0 1px 3px #0000000a}.mfr-card h3{margin:0 0 2px;font-size:12px;color:#666;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.mfr-card .mfr-value{font-size:20px;font-weight:700;color:var(--yn-tech-navy)}.mfr-card .mfr-desc{font-size:11px;color:var(--yn-ink-hint);margin-top:2px}.mfr-table{width:100%;border-collapse:collapse;margin:10px 0;font-size:13px}.mfr-table thead th{background:var(--yn-tech-navy);color:#fff;padding:9px 10px;text-align:left;font-weight:500;font-size:12px;white-space:nowrap}.mfr-table thead th:first-child{border-radius:6px 0 0}.mfr-table thead th:last-child{border-radius:0 6px 0 0}.mfr-table tbody td{padding:8px 10px;border-bottom:1px solid #f0f0f0;vertical-align:top}.mfr-table tbody tr:nth-child(2n){background:#f9fafc}.mfr-table tbody tr:hover{background:#eef4ff}.mfr-table-compact{font-size:12px}.mfr-table-compact tbody td{padding:5px 8px}.mfr-prop-label{width:100px;font-weight:500;color:#555;font-size:12px;white-space:nowrap}.mfr-prop-value{font-weight:600;color:#222;font-family:SF Mono,Consolas,monospace}.mfr-structure-img{max-width:180px;max-height:180px;border:1px solid #e8e8e8;border-radius:8px;background:#fff;padding:8px;box-shadow:var(--yn-shadow-sm)}.mfr-bar{height:8px;background:#e8e8e8;border-radius:4px;overflow:hidden;margin:4px 0 2px}.mfr-bar-fill{height:100%;border-radius:4px;transition:width .3s}.mfr-bar-fill-green{background:linear-gradient(90deg,#52c41a,#73d13d)}.mfr-bar-fill-amber{background:linear-gradient(90deg,#faad14,#ffd666)}.mfr-bar-fill-red{background:linear-gradient(90deg,#ff4d4f,#ff7875)}.mfr-bar-fill-blue{background:linear-gradient(90deg,#4f6bed,#40a9ff)}.mfr-score-badge{display:inline-block;min-width:36px;text-align:center;padding:2px 8px;border-radius:10px;font-weight:700;font-size:13px;color:#fff}.mfr-score-badge.excellent{background:#52c41a}.mfr-score-badge.good{background:#4f6bed}.mfr-score-badge.fair{background:#faad14}.mfr-score-badge.poor{background:#ff4d4f}.mfr-explain-box{background:#f0f5ff;border:1px solid #d6e4ff;border-radius:8px;padding:10px 14px;margin:6px 0;font-size:13px;line-height:1.6;color:#333}.mfr-explain-box.warning{background:#fffbe6;border-color:#ffe58f}.mfr-explain-box.info{background:#f6ffed;border-color:#b7eb8f}.mfr-tag{display:inline-block;padding:1px 6px;border-radius:4px;font-size:11px;font-weight:600}.mfr-tag-green{background:#f6ffed;color:#389e0d;border:1px solid #b7eb8f}.mfr-tag-blue{background:#e6f7ff;color:#096dd9;border:1px solid #91d5ff}.mfr-tag-amber{background:#fffbe6;color:#d48806;border:1px solid #ffe58f}.mfr-tag-red{background:#fff1f0;color:#cf1322;border:1px solid #ffa39e}.mfr-network-container{border:1px solid #e8e8e8;border-radius:8px;overflow:hidden;background:#fafbfc}.mfr-network-container svg{display:block;width:100%;height:auto}.mfr-network-legend{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-bottom:10px;padding:6px 10px;background:#f8f9fa;border-radius:6px;font-size:12px}.mfr-legend-item{display:flex;align-items:center;gap:5px;color:#555}.mfr-legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;border:1.5px solid white;box-shadow:0 1px 2px #00000026}.mfr-unit{font-size:11px;color:#999;font-weight:400;margin-left:2px}.mfr-loading,.mfr-error{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:40px}.mfr-loading-box,.mfr-error-box{text-align:center;background:#fff;border-radius:var(--yn-radius);padding:40px 50px;box-shadow:var(--yn-shadow-lg);max-width:450px}.mfr-loading-box h3,.mfr-error-box h3{margin:0 0 12px;font-size:20px}.mfr-loading-box p,.mfr-error-box p{color:#666;font-size:14px}@media print{body{background:#fff!important}.mfr-container{margin:0;max-width:100%;box-shadow:none;border-radius:0}.mfr-nav-buttons{display:none!important}.mfr-section{page-break-inside:avoid}.mfr-table thead th{background:#333!important}.mfr-content{padding:20px}.mfr-structure-img{max-width:140px;max-height:140px}@page{margin:15mm}}.mfr-radar-svg{width:100%;max-width:350px;height:auto}@media(max-width:768px){.mfr-container{margin:10px;border-radius:8px}.mfr-content{padding:16px 14px}.mfr-grid-4,.mfr-grid-3{grid-template-columns:repeat(2,1fr)}.mfr-header{padding:20px 14px 18px}.mfr-brand-tag{font-size:20px}.mfr-section>h2{font-size:17px}}.card{background:var(--yn-frost);border-radius:var(--pg-radius);box-shadow:var(--yn-shadow-md);overflow:hidden}.card-header{padding:20px 24px 0;border-bottom:1px solid var(--yn-border);margin-bottom:0}.card-header h3{font-size:16px;font-weight:700;color:var(--yn-tech-navy);padding-bottom:16px}.card-body{padding:20px 24px}.card.clickable{transition:all .2s;border:1px solid transparent}.card.clickable:hover{border-color:var(--yn-mountain);transform:translateY(-2px);box-shadow:0 12px 40px #0d21371f}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:12px}.table-wrapper{overflow-x:auto;padding:0 24px 20px}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{text-align:left;padding:10px 8px;font-weight:600;font-size:12px;color:var(--yn-ink-hint);border-bottom:2px solid var(--yn-border);white-space:nowrap}.data-table td{padding:10px 8px;border-bottom:1px solid var(--yn-border);color:var(--yn-ink)}.data-table tbody tr:hover{background:#2d7d460a}.progress-bar{height:8px;background:#e8e8ee;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--yn-mountain),var(--yn-erhai));border-radius:4px;transition:width .5s ease}.alert{padding:12px 20px;border-radius:var(--pg-radius-sm);font-size:14px;margin-bottom:16px}.alert-error{background:#e74c3c14;color:var(--yn-cinnabar);border:1px solid rgba(231,76,60,.2)}details summary{cursor:pointer;font-size:13px;color:var(--yn-ink-hint);-webkit-user-select:none;user-select:none}details summary:hover{color:var(--yn-erhai)}select{padding:10px 12px;border:1px solid var(--yn-border);border-radius:var(--pg-radius-sm);font-size:14px;background:var(--yn-paper);color:var(--yn-ink);cursor:pointer}select:focus{outline:none;border-color:var(--yn-mountain)}.tier-card{margin-bottom:20px;border-radius:12px;overflow:hidden;background:#fff}.tier-card-header{padding:14px 20px;border-bottom:1px solid var(--yn-border)}.tier-card-body{padding:20px}.tier-card-title{margin:0;font-size:16px}.stat-box{text-align:center;min-width:80px}.stat-box-value{font-size:18px;font-weight:700}.stat-box-label{font-size:11px;color:var(--yn-ink-hint)}.stat-box-lg-value{font-size:24px;font-weight:700}.flex-row{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-wrap-gap{display:flex;flex-wrap:wrap;gap:16px}.flex-wrap-gap-sm{display:flex;flex-wrap:wrap;gap:8px}.flex-gap-20{display:flex;gap:20px}.flex-center-text{text-align:center}.analyzing-card-body{text-align:center;padding:40px 20px}.analyzing-icon{font-size:40px;margin-bottom:16px}.analyzing-title{margin-bottom:8px}.analyzing-subtitle{color:var(--yn-ink-muted);margin-bottom:16px}.analyzing-status{margin-top:12px;font-size:13px;color:var(--yn-ink-hint)}.error-card{border:1px solid var(--yn-cinnabar)}.error-card-body{text-align:center;padding:40px 20px}.error-icon{font-size:40px;margin-bottom:16px}.error-title{color:var(--yn-cinnabar);margin-bottom:8px}.error-desc{color:var(--yn-ink-muted);margin-bottom:20px}.report-stat-group{display:flex;gap:20px}.report-stat-item{text-align:center}.report-stat-value{font-size:24px;font-weight:700}.report-stat-label{font-size:11px;color:var(--yn-ink-hint)}.progress-track{height:6px;background:var(--yn-progress-track);border-radius:3px;overflow:hidden}.progress-track-sm{height:4px;background:var(--yn-progress-track);border-radius:2px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--yn-erhai),var(--yn-mountain));border-radius:3px;transition:width .8s ease}.progress-bar-fill-solid{height:100%;background:var(--yn-mountain);border-radius:2px;transition:width .5s ease}.tag-chip{padding:4px 12px;border-radius:14px;font-size:12px;background:#0fb5a614;color:var(--yn-mountain);border:1px solid rgba(15,181,166,.2)}.tag-chip-sm{padding:2px 10px;border-radius:12px;font-size:11px}.tag-chip-high{padding:6px 14px;border-radius:20px;font-size:13px;background:#0fb5a61f;color:var(--yn-mountain);border:1px solid rgba(15,181,166,.25)}.tag-chip-medium{padding:6px 14px;border-radius:20px;font-size:13px;background:#4f6bed1a;color:var(--yn-erhai);border:1px solid rgba(79,107,237,.2)}.tag-chip-low{padding:6px 14px;border-radius:20px;font-size:13px;background:#8888aa14;color:var(--yn-ink-hint);border:1px solid rgba(136,136,170,.15)}.tag-chip-family{padding:8px 16px;border-radius:16px;font-size:13px;background:#0fb5a614;color:var(--yn-mountain);border:1px solid rgba(15,181,166,.2)}.summary-box{margin-top:12px;font-size:13px;color:var(--yn-ink-muted);line-height:1.6;padding:10px 14px;border-radius:8px}.summary-box-blue{background:#4f6bed0a}.summary-box-gold{background:#7c5cfc0f;border:1px solid rgba(124,92,252,.15)}.tcm-box{border-radius:8px;padding:14px;border:1px solid rgba(124,92,252,.15);background:#7c5cfc0f}.tcm-title{font-size:13px;font-weight:600;color:var(--yn-tea-gold);margin-bottom:8px}.tcm-grid{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:13px;color:var(--yn-ink-muted)}.stat-summary-bar{padding:16px 20px;display:flex;gap:20px;flex-wrap:wrap;border-bottom:1px solid var(--yn-border)}.stat-summary-bar-compact{padding:12px 20px;display:flex;gap:20px;border-bottom:1px solid var(--yn-border)}.chemspace-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chemspace-img{width:100%;border-radius:8px;border:1px solid var(--yn-border)}.pe-stat-item{text-align:center}.pe-stat-value{font-size:24px;font-weight:700}.pe-stat-label{font-size:11px;color:var(--yn-ink-hint)}.search-margin{margin-bottom:24px}.report-top-margin{text-align:center;margin:24px 0 40px}.target-list-item{margin-bottom:8px}.target-row{display:flex;justify-content:space-between;font-size:13px;margin-bottom:3px}.target-name{font-weight:700}.target-gene,.target-score{color:var(--yn-ink-hint)}.plant-list-item{margin-bottom:6px}.plant-row{display:flex;justify-content:space-between;font-size:13px;margin-bottom:2px}.plant-taxonomy{color:var(--yn-ink-hint);margin-left:6px;font-size:12px}.plant-count{color:var(--yn-mountain);font-weight:700}.family-enrichment{margin-top:16px;padding-top:16px;border-top:1px solid var(--yn-border)}.family-enrichment-title{font-size:13px;font-weight:600;margin-bottom:8px;color:var(--yn-ink-muted)}:root{--yn-progress-track: #E8E8EE;--yn-brown-wood: #8B4513}@media(max-width:768px){.card-grid{grid-template-columns:1fr}}.admin-layout{min-height:100vh}.admin-sider{background:#001529}.admin-logo{height:64px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;font-size:18px;font-weight:600}.admin-content{background:#f5f5f5;min-height:100vh}.admin-section{padding:24px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.stats-card{transition:all .3s ease}.stats-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.distribution-list{max-height:400px;overflow-y:auto}.distribution-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0}.distribution-item:last-child{border-bottom:none}:root{--pg-primary: #4F6BED;--pg-primary-hover: #3D5BD8;--pg-primary-active: #334ECC;--pg-primary-light: #8B9CF5;--pg-primary-lighter: #E8ECFD;--pg-primary-darker: #2A3FA0;--pg-secondary: #0FB5A6;--pg-secondary-hover: #0DA396;--pg-secondary-light: #5FD9CE;--pg-secondary-lighter: #E0F7F4;--pg-secondary-darker: #0A7A70;--pg-accent: #7C5CFC;--pg-accent-light: #B4A0FF;--pg-accent-lighter: #F0EBFF;--pg-accent-darker: #5A3FD4;--pg-galaxy-dark: #0B1426;--pg-galaxy: #0F1B33;--pg-galaxy-light: #162340;--pg-galaxy-lighter: #1E2D4F;--pg-galaxy-border: #243355;--pg-bg: #FAFBFC;--pg-bg-secondary: #F4F6F8;--pg-card: #FFFFFF;--pg-card-hover: #F8FAFB;--pg-border: #E2E8F0;--pg-border-light: #EDF1F6;--pg-border-dark: #CBD5E1;--pg-text-primary: #0F172A;--pg-text-secondary: #475569;--pg-text-tertiary: #94A3B8;--pg-text-inverse: #F8FAFC;--pg-text-link: #4F6BED;--pg-success: #10B981;--pg-success-light: #D1FAE5;--pg-success-dark: #059669;--pg-warning: #F59E0B;--pg-warning-light: #FEF3C7;--pg-warning-dark: #D97706;--pg-danger: #EF4444;--pg-danger-light: #FEE2E2;--pg-danger-dark: #DC2626;--pg-info: #3B82F6;--pg-info-light: #DBEAFE;--pg-gradient-primary: linear-gradient(135deg, #4F6BED 0%, #7C5CFC 100%);--pg-gradient-bio: linear-gradient(135deg, #0FB5A6 0%, #4F6BED 100%);--pg-gradient-galaxy: linear-gradient(180deg, #0B1426 0%, #0F1B33 50%, #162340 100%);--pg-gradient-glow: radial-gradient(circle at 50% 0%, rgba(79, 107, 237, .08) 0%, transparent 60%);--pg-shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--pg-shadow-md: 0 4px 6px rgba(15, 23, 42, .07), 0 2px 4px rgba(15, 23, 42, .05);--pg-shadow-lg: 0 10px 15px rgba(15, 23, 42, .08), 0 4px 6px rgba(15, 23, 42, .05);--pg-shadow-xl: 0 20px 25px rgba(15, 23, 42, .1), 0 8px 10px rgba(15, 23, 42, .06);--pg-shadow-glow: 0 0 20px rgba(79, 107, 237, .15);--pg-radius-sm: 6px;--pg-radius-md: 10px;--pg-radius-lg: 16px;--pg-radius-xl: 24px;--pg-radius-full: 9999px;--yn-mountain: var(--pg-secondary);--yn-mountain-dark: var(--pg-secondary-darker);--yn-mountain-light: var(--pg-secondary-light);--yn-erhai: var(--pg-primary);--yn-erhai-dark: var(--pg-primary-darker);--yn-erhai-light: var(--pg-primary-light);--yn-tea-gold: var(--pg-accent);--yn-tea-gold-dark: var(--pg-accent-darker);--yn-tea-gold-light: var(--pg-accent-light);--yn-cinnabar: var(--pg-danger);--yn-cinnabar-dark: var(--pg-danger-dark);--yn-paper: var(--pg-bg);--yn-paper-deep: var(--pg-bg-secondary);--yn-paper-dark: var(--pg-bg-secondary);--yn-ink: var(--pg-text-primary);--yn-ink-muted: var(--pg-text-secondary);--yn-ink-hint: var(--pg-text-tertiary);--yn-ink-white: var(--pg-text-inverse);--yn-tech-navy: var(--pg-galaxy);--yn-tech-navy-light: var(--pg-galaxy-light);--yn-border: rgba(148, 163, 184, .2);--yn-border-light: rgba(148, 163, 184, .12);--yn-border-hover: rgba(15, 181, 166, .3);--yn-shadow-sm: var(--pg-shadow-sm);--yn-shadow-md: var(--pg-shadow-md);--yn-shadow-lg: var(--pg-shadow-lg);--yn-glass-bg: var(--pg-card);--yn-glass-border: var(--pg-border);--yn-glass-shadow: var(--pg-shadow-sm);--yn-glass-blur: none;--yn-frost: var(--pg-card);--yn-gradient-hero: var(--pg-bg);--yn-gradient-green: var(--pg-gradient-bio);--yn-gradient-blue: var(--pg-gradient-primary);--yn-gradient-gold: linear-gradient(135deg, #7C5CFC 0%, #B4A0FF 100%);--tier1-bg: rgba(15,181,166,.06);--tier1-color: #0FB5A6;--tier2-bg: rgba(124,92,252,.06);--tier2-color: #7C5CFC;--tier3-bg: rgba(79,107,237,.06);--tier3-color: #4F6BED;--tier4-bg: rgba(124,92,252,.08);--tier4-color: #5A3FD4;--tier5-bg: rgba(15,181,166,.08);--tier5-color: #0A7A70;--tier6-bg: rgba(79,107,237,.08);--tier6-color: #2A3FA0;--pg-header-h: 56px;--pg-max-width: 1200px;--pg-radius: 16px;--pg-radius-sm: 8px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:var(--yn-paper);color:var(--yn-ink);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--yn-erhai);text-decoration:none}a:hover{text-decoration:underline}.brand-bar{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--pg-header-h);background:var(--yn-tech-navy);box-shadow:0 2px 8px #0000000f;display:flex;align-items:center;padding:0 24px;border-bottom:1px solid var(--yn-glass-border)}.brand-nav a{position:relative;color:#ffffffe0;font-size:15px;font-weight:500;padding:8px 16px;border-radius:6px;transition:color .3s;text-decoration:none!important;white-space:nowrap;letter-spacing:.5px}.brand-nav a:after{content:"";position:absolute;bottom:2px;left:50%;width:0;height:2px;background:var(--yn-erhai);border-radius:1px;transform:translate(-50%);transition:width .3s ease}.brand-nav a:hover{color:#fff}.brand-nav a:hover:after{width:60%}.brand-nav a.active{color:#fff;font-weight:600}.brand-nav a.active:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:60%;height:2px;background:var(--yn-erhai);border-radius:1px;transition:width .3s ease}.login-btn{padding:5px 16px;border-radius:20px;background:var(--yn-mountain);color:#fff!important;font-size:13px;font-weight:600;transition:all .2s;text-decoration:none!important}.login-btn:hover{background:#236835;transform:translateY(-1px)}.user-btn{display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;background:#ffffff1a;color:#fff!important;font-size:13px;text-decoration:none!important;transition:all .2s}.user-btn:hover{background:#fff3}.logout-btn-sm{background:none;border:none;cursor:pointer;font-size:16px;padding:4px;border-radius:50%;transition:background .2s}.logout-btn-sm:hover{background:#ffffff1a}.main-content{padding-top:var(--pg-header-h);min-height:100vh}@keyframes yn-starFloat{0%{opacity:.6;transform:translateY(0)}to{opacity:1;transform:translateY(-8px)}}@keyframes letter-in{to{opacity:1;transform:translateY(0)}}@keyframes shimmer-slide{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes funnel-in{to{opacity:1;transform:translateY(0)}}@keyframes tag-pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes yn-fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes yn-heroPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.8;transform:scale(1.01)}}@keyframes yn-pulseGlow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.8;transform:scale(1.01)}}@keyframes yn-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes yn-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.brand-bar{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--pg-header-h);background:var(--pg-galaxy);border-bottom:1px solid var(--pg-galaxy-border);box-shadow:0 1px 3px #0000004d;display:flex;align-items:center;padding:0 24px}.brand-bar-inner{display:flex;align-items:center;gap:6px;color:#fff;text-decoration:none!important;flex-shrink:0}.brand-logo{height:40px;width:auto;border-radius:4px;flex-shrink:0;object-fit:contain}.brand-bar .brand-name{color:#fff;font-size:18px;font-weight:700;letter-spacing:2px}.brand-version{color:#ffffff80;font-size:12px;margin-left:10px;padding-left:10px;border-left:1px solid rgba(255,255,255,.15)}.brand-nav{display:flex;align-items:center;gap:8px;margin-left:28px}.brand-nav a{position:relative;color:#ffffffe0;font-size:15px;font-weight:500;padding:8px 16px;border-radius:6px;transition:color .3s,background .3s;text-decoration:none!important;white-space:nowrap;letter-spacing:.5px}.brand-nav a:hover{color:#fff;background:#ffffff0f}.brand-nav a.active{color:#fff;font-weight:600;background:#4f6bed26}.brand-nav a.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--pg-primary-light);border-radius:0 2px 2px 0}.brand-user{display:flex;align-items:center;gap:8px;margin-left:auto}.login-btn{padding:5px 16px;border-radius:20px;background:var(--pg-gradient-primary);color:#fff!important;font-size:13px;font-weight:600;transition:all .2s;text-decoration:none!important}.login-btn:hover{opacity:.9;transform:translateY(-1px)}.user-menu{display:flex;align-items:center;gap:8px}.user-btn{display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;background:#ffffff14;color:#fff!important;font-size:13px;text-decoration:none!important;transition:all .2s;border:1px solid rgba(255,255,255,.06)}.user-btn:hover{background:#ffffff24;border-color:#ffffff1f}.user-avatar-sm{font-size:16px}.user-name{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn-sm{background:none;border:none;cursor:pointer;font-size:16px;padding:4px;border-radius:50%;transition:background .2s;color:#fff9}.logout-btn-sm:hover{background:#ffffff1a;color:#fff}.footer{position:relative;background:linear-gradient(180deg,var(--yn-paper) 0%,var(--yn-paper-deep) 100%);padding:40px 24px 32px;text-align:center;color:var(--yn-ink-muted);font-size:12px;line-height:1.8}.footer:before{content:"";position:absolute;top:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(15,181,166,.3) 20%,rgba(79,107,237,.3) 50%,rgba(124,92,252,.3) 80%,transparent 100%)}.footer .footer-brand{font-size:14px;font-weight:700;color:var(--yn-ink);letter-spacing:1px;margin-bottom:6px}.footer .footer-slogan{font-size:12px;color:var(--yn-ink-hint);margin-bottom:12px}.footer .footer-version{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;background:#4f6bed14;color:var(--yn-erhai);font-size:11px;font-weight:600;margin-top:12px;border:1px solid rgba(79,107,237,.15)}.subsystem-module-tag[data-tier="1"]{background:#0fb5a614;border-color:#0fb5a640}.subsystem-module-tag[data-tier="1"] .mod-icon{background:#0fb5a6;color:#fff}.subsystem-module-tag[data-tier="1"] .mod-name,.subsystem-module-tag[data-tier="1"] .mod-short{color:#0fb5a6}.subsystem-module-tag[data-tier="2"]{background:#4f6bed14;border-color:#4f6bed40}.subsystem-module-tag[data-tier="2"] .mod-icon{background:#4f6bed;color:#fff}.subsystem-module-tag[data-tier="2"] .mod-name,.subsystem-module-tag[data-tier="2"] .mod-short{color:#4f6bed}.subsystem-module-tag[data-tier="3"]{background:#7c5cfc14;border-color:#7c5cfc40}.subsystem-module-tag[data-tier="3"] .mod-icon{background:#7c5cfc;color:#fff}.subsystem-module-tag[data-tier="3"] .mod-name,.subsystem-module-tag[data-tier="3"] .mod-short{color:#7c5cfc}.subsystem-module-tag[data-tier="4"]{background:#0a7a700f;border-color:#0a7a7033}.subsystem-module-tag[data-tier="4"] .mod-icon{background:#0a7a70;color:#fff}.subsystem-module-tag[data-tier="4"] .mod-name,.subsystem-module-tag[data-tier="4"] .mod-short{color:#0a7a70}.features-section,.features-grid{animation:yn-fadeInUp .6s ease-out}.tier-section{animation:yn-fadeInUp .5s ease-out;animation-fill-mode:both}.feature-card{transition:all .3s cubic-bezier(.34,1.56,.64,1)!important}.feature-card:hover{transform:translateY(-4px) scale(1.01)!important;box-shadow:0 16px 40px #0fb5a61f!important}.search-card{transition:transform .3s ease,box-shadow .4s ease!important}.search-card:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0000001a!important}.glass-card{background:#fff;border:1px solid var(--yn-border);border-radius:16px;box-shadow:0 2px 8px #0000000f;transition:all .3s ease}.glass-card:hover{box-shadow:0 6px 20px #00000014}.tier-glass-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px #0000000f;transition:all .3s ease;animation:yn-fadeInUp .5s ease-out}.tier-glass-card:hover{box-shadow:0 6px 20px #00000014;transform:translateY(-2px)}.skeleton-shimmer{background:linear-gradient(90deg,#fff0,#fff9,#fff0);background-size:200% 100%;animation:yn-shimmer 2s infinite;pointer-events:none}.analyzing-card-body{animation:yn-fadeInUp .4s ease-out}.progress-fill{transition:width .5s cubic-bezier(.4,0,.2,1)!important}.report-container>.tier-card{animation:yn-fadeInUp .5s ease-out;animation-fill-mode:both}.report-container>.tier-card:nth-child(1){animation-delay:.05s}.report-container>.tier-card:nth-child(2){animation-delay:.1s}.report-container>.tier-card:nth-child(3){animation-delay:.15s}.report-container>.tier-card:nth-child(4){animation-delay:.2s}.report-container>.tier-card:nth-child(5){animation-delay:.25s}.report-container>.tier-card:nth-child(6){animation-delay:.3s}.hero-section:before{animation:none!important}.search-hint-icon{animation:yn-float 3s ease-in-out infinite}.page-container{max-width:var(--pg-max-width);margin:0 auto;padding:32px 24px}.page-header{margin-bottom:24px}.page-header h2{font-size:24px;font-weight:700;color:var(--yn-tech-navy)}.page-header .sub{font-size:14px;color:var(--yn-ink-muted);margin-top:4px}.input-panel{background:var(--yn-frost);border-radius:var(--pg-radius);padding:24px;box-shadow:var(--yn-shadow-md);margin-bottom:24px}.input-panel label{display:block;font-size:14px;font-weight:600;margin-bottom:8px;color:var(--yn-ink)}.input-panel textarea,.input-panel input[type=text]{width:100%;padding:12px 16px;border:1px solid var(--yn-border);border-radius:var(--pg-radius-sm);font-size:14px;font-family:SF Mono,Fira Code,monospace;transition:border-color .2s;background:var(--yn-paper);color:var(--yn-ink)}.input-panel textarea:focus,.input-panel input[type=text]:focus{outline:none;border-color:var(--yn-mountain);box-shadow:0 0 0 3px #0fb5a61a}.input-panel textarea{min-height:80px;resize:vertical}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 24px;border:none;border-radius:var(--pg-radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:var(--yn-mountain);color:#fff}.btn-primary:hover{background:#236835;transform:translateY(-1px)}.btn-primary:disabled{background:#a0c0a8;cursor:not-allowed;transform:none}.placeholder-page{text-align:center;padding:80px 24px;color:var(--yn-ink-muted)}.placeholder-page .icon{font-size:64px;margin-bottom:16px}.placeholder-page h3{font-size:20px;margin-bottom:8px}.placeholder-page p{font-size:14px;color:var(--yn-ink-hint)}.auth-page{min-height:calc(100vh - var(--pg-header-h));display:flex;align-items:center;justify-content:center;background:var(--pg-bg-page);padding:40px 20px;position:relative;overflow:hidden}.auth-card{position:relative;z-index:1;width:100%;max-width:420px;background:var(--pg-card);border-radius:var(--pg-radius-lg, 16px);padding:50px 40px;box-shadow:var(--pg-shadow-md);transition:transform .3s ease,box-shadow .3s ease}.auth-card:hover{box-shadow:var(--pg-shadow-lg)}.auth-header{text-align:center;margin-bottom:30px}.auth-header .auth-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;font-size:28px;margin-bottom:12px;background:var(--pg-accent);color:var(--pg-text-inverse);box-shadow:0 2px 8px #4f6bed26}.auth-header h1{font-size:22px;font-weight:700;color:var(--pg-text-primary);margin-bottom:8px}.auth-header p{font-size:14px;color:var(--pg-text-secondary)}.auth-form-item,.auth-field{margin-bottom:20px}.auth-form-item label,.auth-field label{display:block;font-size:14px;font-weight:500;color:var(--pg-text-primary);margin-bottom:8px}.auth-field input{width:100%;padding:12px 16px;border:2px solid var(--pg-border-light);border-radius:var(--pg-radius-sm);font-size:15px;transition:border-color .3s,box-shadow .3s;background:var(--pg-bg-page)}.auth-field input:focus{outline:none;border-color:var(--pg-accent);box-shadow:0 0 0 3px #4f6bed1a;background:var(--pg-card)}.auth-field input::placeholder{color:var(--pg-text-hint)}.auth-btn{width:100%;padding:14px;background:var(--pg-accent);color:var(--pg-text-inverse);border:none;border-radius:var(--pg-radius-sm);font-size:16px;font-weight:600;cursor:pointer;transition:transform .3s,box-shadow .3s;letter-spacing:4px;display:flex;align-items:center;justify-content:center;gap:8px}.auth-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #4f6bed4d}.auth-btn:disabled{background:var(--pg-border);color:var(--pg-text-hint);cursor:not-allowed;transform:none;box-shadow:none}.auth-btn-sm{padding:6px 16px;border:none;border-radius:var(--pg-radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;background:var(--pg-accent);color:var(--pg-text-inverse);white-space:nowrap}.auth-btn-sm:hover{background:var(--pg-accent-hover, #3B55D4);transform:translateY(-1px)}.auth-links{text-align:center;margin-top:24px;color:var(--pg-text-secondary);font-size:14px}.auth-links a{color:var(--pg-accent);text-decoration:none;font-weight:600}.auth-links a:hover{text-decoration:underline}.auth-error{padding:12px 16px;background:#fff1f0;border:1px solid #ffccc7;border-radius:var(--pg-radius-sm);color:#f5222d;font-size:14px;margin-bottom:20px;text-align:center}.auth-success{padding:10px 16px;background:#f6ffed;border:1px solid #b7eb8f;border-radius:var(--pg-radius-sm);color:#389e0d;font-size:13px;margin-bottom:16px;text-align:center}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--pg-gradient-galaxy);color:var(--pg-text-inverse);text-align:center;padding:80px 24px 40px;overflow:hidden}.hero-content{position:relative;z-index:2;max-width:900px;width:100%}.hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--pg-secondary),var(--pg-primary),var(--pg-accent));z-index:3}.hero-icon{font-size:56px;line-height:1;margin-bottom:12px}.hero-title{font-size:clamp(36px,6vw,72px);font-weight:800;letter-spacing:10px;margin:0 0 16px;color:var(--pg-text-inverse);position:relative}.hero-title-shimmer{display:block;position:absolute;bottom:-6px;left:10%;width:80%;height:2px;background:var(--pg-accent);opacity:.3;border-radius:1px}.subtitle{font-size:18px;color:var(--pg-text-inverse);opacity:.75;margin:0 0 8px;font-weight:500;letter-spacing:1px}.tagline{font-size:15px;color:var(--pg-accent-light);margin:0 0 24px;letter-spacing:2px}.values{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin-bottom:40px;font-size:14px;color:var(--pg-text-inverse);opacity:.85}.values span{display:inline-flex;align-items:center;gap:4px}.tier-funnel{margin-top:32px;padding:24px;background:var(--pg-card);border:1px solid var(--pg-border-light);border-radius:var(--pg-radius-lg);box-shadow:var(--pg-shadow-sm)}.funnel-header{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:20px;font-size:14px;color:var(--pg-text-secondary);flex-wrap:wrap}.funnel-line-l,.funnel-line-r{flex:1;height:1px;max-width:80px;background:var(--pg-border-light)}.funnel-dot{width:6px;height:6px;border-radius:50%;background:var(--pg-accent);animation:funnelPulse 2s ease-in-out infinite}@keyframes funnelPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.funnel-sub{font-size:12px;color:var(--pg-text-tertiary)}.pipeline-track{display:flex;align-items:center;justify-content:center;gap:0;max-width:940px;margin:0 auto;flex-wrap:wrap}.pipeline-node-col{display:flex;align-items:center;flex:1 1 0;min-width:100px}.pipeline-node{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;opacity:0;transform:translateY(10px);animation:nodeFadeUp .5s ease forwards;animation-delay:var(--node-delay, 0s);flex:1}@keyframes nodeFadeUp{to{opacity:1;transform:translateY(0)}}.node-ring{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--node-c),color-mix(in srgb,var(--node-c) 60%,#111));text-shadow:0 1px 3px rgba(0,0,0,.3);transition:transform .3s ease}.pipeline-node:hover .node-ring{transform:scale(1.1)}.node-name{font-size:13px;font-weight:600;color:var(--pg-text-primary);text-align:center;white-space:nowrap;letter-spacing:.3px}.node-en{font-size:9px;color:var(--pg-text-tertiary);font-family:SF Mono,Consolas,monospace;letter-spacing:.5px;text-align:center;white-space:nowrap}.node-connector{display:flex;align-items:center;justify-content:center;flex:0 0 22px;position:relative}.node-connector-line{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:1.5px;background:var(--pg-border-light)}.node-connector-arrow{position:relative;z-index:1;font-size:9px;color:var(--pg-text-tertiary);background:var(--pg-card);padding:0 3px}.subsystems{max-width:var(--pg-max-width);margin:0 auto;padding:40px 24px 60px;display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.subsystem-card{display:block;background:var(--pg-card);border:1px solid var(--pg-border-light);border-radius:var(--pg-radius-lg);padding:28px 24px;text-decoration:none;color:inherit;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:var(--pg-shadow-sm)}.subsystem-card>*{position:relative;z-index:1}.subsystem-card:hover{transform:translateY(-4px);box-shadow:var(--pg-shadow-lg);border-color:var(--pg-border-dark)}.subsystem-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--card-accent, var(--pg-primary));opacity:.7;transition:opacity .3s;z-index:2}.subsystem-card:hover:before{opacity:1}.subsystem-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 40% at 50% 0%,rgba(79,107,237,.1),transparent 60%);opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:0}.subsystem-card:hover:after{opacity:1}.card-header{display:flex;align-items:center;gap:14px;margin-bottom:10px}.card-header .icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;font-size:22px;border-radius:12px;flex-shrink:0;color:#fff;box-shadow:0 4px 12px #00000014;transition:transform .35s ease,box-shadow .35s ease}.subsystem-card:hover .card-header .icon{transform:scale(1.08);box-shadow:0 8px 20px #00000026}.subsystem-card[data-sub="1"] .card-header .icon{background:linear-gradient(135deg,#4f6bed,#8b9cf5)}.subsystem-card[data-sub="2"] .card-header .icon{background:linear-gradient(135deg,#0fb5a6,#5fd9ce)}.subsystem-card[data-sub="3"] .card-header .icon{background:linear-gradient(135deg,#7c5cfc,#b4a0ff)}.subsystem-card[data-sub="4"] .card-header .icon{background:linear-gradient(135deg,#0a7a70,#3d8f55)}.card-header .title{font-size:18px;font-weight:700;line-height:1.2;color:var(--pg-text-primary);margin:0}.en-title{display:block;font-size:11px;color:var(--pg-text-tertiary);font-weight:400;letter-spacing:.5px;margin-top:2px}.direction{font-size:13px;color:var(--card-accent, var(--pg-secondary));margin-bottom:10px;padding:3px 12px 3px 10px;background:#0fb5a60f;border-radius:20px;display:inline-flex;align-items:center;gap:5px;font-weight:600}.direction:after{content:"→";font-size:12px;opacity:.5;transition:transform .3s ease,opacity .3s ease}.subsystem-card:hover .direction:after{transform:translate(3px);opacity:.8}.desc{font-size:13px;color:var(--pg-text-secondary);line-height:1.6;margin:0 0 14px}.subsystem-modules{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.subsystem-module-tag{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:20px;font-size:11px;background:var(--pg-bg);border:1px solid var(--pg-border-light);white-space:nowrap;transition:all .2s ease;font-weight:500;color:var(--pg-text-secondary)}.subsystem-module-tag:hover{background:var(--pg-card);transform:translateY(-2px);box-shadow:var(--pg-shadow-md);border-color:var(--pg-border-dark)}.subsystem-module-tag .mod-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:10px;line-height:1;flex-shrink:0}.subsystem-module-tag .mod-name{font-weight:600;color:var(--pg-text-primary)}.subsystem-module-tag .mod-short{font-size:10px;opacity:.6;display:none;margin-left:1px}@media(min-width:900px){.subsystem-module-tag .mod-short{display:inline}}.tag{position:absolute;top:16px;right:16px;display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.5px;transition:all .3s ease;z-index:3}.tag-ready{background:#0fb5a61f;color:var(--pg-secondary);border:1px solid rgba(15,181,166,.25);font-weight:700}.tag-dev{background:#9696a01f;color:var(--pg-text-tertiary);border:1px solid rgba(150,150,160,.25);font-weight:700}@media(max-width:768px){.hero{padding:60px 16px 32px}.subsystems{grid-template-columns:1fr;padding:24px 16px 40px}}@media(max-width:480px){.tier-funnel{padding:16px}.subsystem-card{padding:18px}}.profile-page{max-width:720px;margin:0 auto;padding:32px 24px}.profile-header{display:flex;align-items:center;gap:20px;margin-bottom:32px;padding:24px;background:var(--yn-mountain);border-radius:16px;color:#fff}.profile-avatar{width:64px;height:64px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:32px;flex-shrink:0}.profile-header h2{margin:0;font-size:24px;font-weight:700}.profile-type{margin:4px 0 0;font-size:14px;opacity:.85}.profile-section{background:var(--yn-frost);border-radius:12px;padding:24px;margin-bottom:16px;box-shadow:var(--yn-shadow-sm)}.profile-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--yn-tech-navy)}.profile-field{margin-bottom:14px}.profile-field label{display:block;font-size:13px;font-weight:500;color:var(--yn-ink-muted);margin-bottom:6px}.profile-field-row{display:flex;gap:8px;align-items:center}.profile-field input{flex:1;padding:8px 12px;border:1px solid var(--yn-border);border-radius:8px;font-size:14px;outline:none;transition:border-color .2s;background:#fff}.profile-field input:focus{border-color:var(--yn-mountain)}.profile-empty{color:var(--yn-ink-hint);font-size:14px;text-align:center;padding:20px}.auth-btn-sm{padding:8px 20px;background:var(--yn-mountain);color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s;white-space:nowrap}.auth-btn-sm:hover{opacity:.85;transform:translateY(-1px)}.auth-success{background:#f6ffed;border:1px solid #b7eb8f;color:#52c41a;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.quota-bar-wrapper{display:flex;align-items:center;gap:12px}.quota-bar{flex:1;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.quota-fill{height:100%;background:linear-gradient(90deg,var(--yn-mountain),var(--yn-erhai));border-radius:4px;transition:width .5s ease}.quota-text{font-size:13px;color:var(--yn-ink-muted);white-space:nowrap}.quota-message{font-size:13px;color:var(--yn-ink-hint);margin:8px 0 0}.quota-total{font-size:13px;color:var(--yn-ink-hint);margin:4px 0 0}.quota-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.quota-item{background:var(--yn-bg-card, #fafafa);border:1px solid var(--yn-border, #e8e8e8);border-radius:10px;padding:12px 14px;transition:all .2s ease}.quota-item:hover{border-color:var(--yn-mountain, #0FB5A6);box-shadow:0 2px 8px #2d7d4614}.quota-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.quota-item-name{font-size:13px;font-weight:600;color:var(--yn-ink, #333)}.quota-item-count{font-size:12px;font-weight:700;color:var(--yn-mountain, #0FB5A6)}.quota-item .quota-bar{height:6px;flex:unset}.quota-fill.quota-low{background:linear-gradient(90deg,#faad14,#ff7a00)}.quota-fill.quota-exhausted{background:linear-gradient(90deg,#ff4d4f,#ff7875)}.history-list{list-style:none;padding:0;margin:0}.history-list li{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--yn-border)}.history-list li:last-child{border-bottom:none}.history-smiles{font-family:Courier New,monospace;font-size:13px;color:var(--yn-ink)}.history-time{font-size:12px;color:var(--yn-ink-hint)}.logout-btn{width:100%;margin-top:8px;background:#ff4d4f!important}.logout-btn:hover{box-shadow:0 4px 12px #ff4d4f33!important}.dashboard-container{min-height:100vh;background:var(--yn-paper);position:relative;overflow-x:hidden}.dashboard-container:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 15% 20%,rgba(15,181,166,.03) 0%,transparent 35%),radial-gradient(circle at 85% 30%,rgba(79,107,237,.02) 0%,transparent 35%),radial-gradient(circle at 50% 70%,rgba(124,92,252,.02) 0%,transparent 45%);pointer-events:none;z-index:0}.hero-section{position:relative;z-index:1;text-align:center;padding:50px 24px 40px;background:#fafbfc;color:#0f172a;overflow:hidden}.hero-section:before{content:none}.yn-brand-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 18px;background:#0fb5a614;border:1px solid rgba(15,181,166,.15);border-radius:100px;font-size:.85rem;color:#0fb5a6;letter-spacing:2px;margin-bottom:20px}.yn-brand-badge:before{content:"🏔️";font-size:16px}.hero-content{position:relative;z-index:2;max-width:900px;margin:0 auto}.hero-section h1{font-size:2.8rem;font-weight:800;margin-bottom:16px;color:#0f172a}.hero-subtitle{font-size:1.15rem;color:#475569;margin-bottom:6px;font-weight:300}.hero-desc{font-size:.92rem;color:var(--pg-text-secondary);margin-bottom:28px;max-width:650px;margin-left:auto;margin-right:auto}.search-card{max-width:820px;margin:0 auto;padding:32px;background:#fff;border:1px solid #eee;border-radius:20px;box-shadow:0 4px 16px #0000000f;position:relative;z-index:2;transition:box-shadow .3s ease}.search-card:hover{box-shadow:0 12px 40px #0000001a}.search-card:before{content:"";position:absolute;top:0;left:24px;right:24px;height:3px;background:linear-gradient(90deg,var(--yn-mountain),var(--yn-erhai),var(--yn-tea-gold));border-radius:0 0 3px 3px}.search-input-wrapper .ant-input-affix-wrapper{border-radius:12px;border:2px solid var(--yn-border);background:#fafaf5;transition:all .3s ease;padding:12px 16px;font-size:1rem}.search-input-wrapper .ant-input-affix-wrapper:focus,.search-input-wrapper .ant-input-affix-wrapper-focused{border-color:var(--yn-mountain);box-shadow:0 0 0 4px #0fb5a61a;background:#fff}.search-btn{height:48px;padding:0 32px;font-size:1.05rem;font-weight:600;border-radius:12px;background:var(--yn-mountain);border:none;box-shadow:0 2px 8px #0fb5a633;transition:all .3s cubic-bezier(.4,0,.2,1)}.search-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0fb5a64d;background:#3d9d56}.search-hint{margin-top:12px;font-size:.85rem;color:var(--yn-ink-hint);display:flex;align-items:center;gap:6px}.search-hint-icon{color:var(--yn-tea-gold)}.examples{margin-top:18px;padding-top:14px;border-top:1px dashed var(--yn-border);display:flex;align-items:center;flex-wrap:wrap;gap:6px}.examples-label{font-size:.82rem;color:var(--yn-ink-hint);margin-right:4px}.example-tag{cursor:pointer;border-radius:100px;padding:4px 14px;font-size:.84rem;border:1px solid var(--yn-border);background:#fff;color:var(--yn-ink);transition:all .25s ease}.example-tag:hover{border-color:var(--yn-mountain);color:var(--yn-mountain);background:#0fb5a60d;transform:translateY(-1px);box-shadow:0 4px 12px #0fb5a61f}.stats-bar{display:flex;justify-content:center;gap:56px;margin-top:30px;flex-wrap:wrap}.stat-item{text-align:center}.stat-value{font-size:2rem;font-weight:700;color:#0f172a}.stat-label{font-size:.85rem;color:var(--pg-text-secondary);margin-top:4px}.features-section{position:relative;z-index:1;padding:40px 24px 60px;max-width:1280px;margin:0 auto}.tier-section{margin-bottom:36px;border-radius:16px;padding:28px 28px 24px;position:relative;transition:all .3s ease;animation:yn-fadeInUp .6s ease both}.tier-section:nth-child(1){animation-delay:.05s}.tier-section:nth-child(2){animation-delay:.1s}.tier-section:nth-child(3){animation-delay:.15s}.tier-section:nth-child(4){animation-delay:.2s}.tier-section:nth-child(5){animation-delay:.25s}.tier-section:nth-child(6){animation-delay:.3s}.tier-section.tier-identity{background:var(--tier1-bg);border-left:4px solid var(--tier1-color)}.tier-section.tier-physchem{background:var(--tier2-bg);border-left:4px solid var(--tier2-color)}.tier-section.tier-admet{background:var(--tier3-bg);border-left:4px solid var(--tier3-color)}.tier-section.tier-activity{background:var(--tier4-bg);border-left:4px solid var(--tier4-color)}.tier-section.tier-space{background:var(--tier5-bg);border-left:4px solid var(--tier5-color)}.tier-section.tier-decision{background:var(--tier6-bg);border-left:4px solid var(--tier6-color)}.tier-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid rgba(0,0,0,.06)}.tier-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;font-size:.85rem;font-weight:700;color:#fff;flex-shrink:0}.tier-identity .tier-badge{background:var(--tier1-color)}.tier-physchem .tier-badge{background:var(--tier2-color)}.tier-admet .tier-badge{background:var(--tier3-color)}.tier-activity .tier-badge{background:var(--tier4-color)}.tier-space .tier-badge{background:var(--tier5-color)}.tier-decision .tier-badge{background:var(--tier6-color)}.tier-title{font-size:1.1rem;font-weight:600;color:var(--yn-ink);margin:0}.tier-subtitle{font-size:.82rem;color:var(--yn-ink-muted);margin-left:auto;opacity:.7}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.feature-card{background:#fff;border-radius:16px;padding:24px;border:1px solid var(--yn-border);position:relative;overflow:hidden;transition:all .35s cubic-bezier(.4,0,.2,1);cursor:default;box-shadow:0 2px 8px #0000000a}.feature-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--card-color, var(--yn-mountain));border-radius:0 2px 2px 0;transition:width .3s ease}.feature-card:after{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,var(--card-glow, rgba(15,181,166,.05)) 0%,transparent 70%);opacity:0;transition:opacity .35s ease;pointer-events:none}.feature-card:hover{transform:translateY(-5px);box-shadow:0 12px 32px #0000001a;border-color:#0fb5a626}.feature-card:hover:before{width:5px}.feature-card:hover:after{opacity:1}.feature-card-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}.feature-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;background:var(--card-color, var(--yn-mountain));color:#fff;box-shadow:0 2px 8px #0000001a;transition:transform .3s ease}.feature-card:hover .feature-icon{transform:rotate(-5deg) scale(1.05)}.feature-title{font-size:1.05rem;font-weight:700;color:var(--yn-ink);margin:0;line-height:1.3}.feature-title .arrow-link{margin-left:6px;font-size:12px;opacity:.4;transition:opacity .2s}.feature-card:hover .feature-title .arrow-link{opacity:.8}.feature-desc{color:var(--yn-ink-muted);font-size:.88rem;line-height:1.65;margin-bottom:14px}.feature-tags{display:flex;flex-wrap:wrap;gap:6px}.feature-tag{font-size:.78rem;padding:3px 10px;border-radius:100px;background:#0fb5a60f;color:var(--yn-mountain-dark);border:1px solid rgba(15,181,166,.12);transition:all .2s ease}.feature-tag:hover{background:#0fb5a61f}.dashboard-footer{text-align:center;padding:32px 24px;color:var(--yn-ink-muted);font-size:.82rem;border-top:1px solid var(--yn-border)}.dashboard-footer .yn-footer-brand{font-size:1rem;font-weight:600;color:var(--yn-mountain-dark);margin-bottom:8px}.mb-hero{background:var(--pg-gradient-glow);padding:40px 24px 24px;position:relative;overflow:hidden}.mb-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--pg-secondary),var(--pg-primary),var(--pg-accent))}.mb-hero-inner{max-width:var(--pg-max-width);margin:0 auto}.mb-hero-title{margin-bottom:16px!important;font-size:28px!important;color:var(--pg-text-primary)!important}.mb-hero-sub{margin-top:6px!important;color:var(--pg-text-secondary)!important;font-size:15px!important}.mb-stats-row{margin-top:28px!important}.mb-stat-card{position:relative;background:var(--pg-card);border:1px solid var(--pg-border-light);border-radius:var(--pg-radius-md);padding:20px 16px 16px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.mb-stat-card:hover{transform:translateY(-2px);box-shadow:var(--pg-shadow-lg);border-color:var(--pg-border-dark)}.mb-stat-icon{font-size:22px;margin-bottom:8px}.mb-stat-value{font-size:30px;font-weight:700;letter-spacing:-.5px;line-height:1.2}.mb-stat-label{font-size:13px;color:var(--pg-text-tertiary);margin-top:4px}.mb-stat-glow{position:absolute;top:-20px;right:-20px;width:80px;height:80px;border-radius:50%;opacity:.25;pointer-events:none}.mb-features-row{margin-top:32px!important}.mb-feature-card{background:var(--pg-card);border:1px solid var(--pg-border-light);border-radius:var(--pg-radius-md);padding:24px 20px;transition:all .25s ease;height:100%}.mb-feature-card:hover{border-color:var(--pg-primary-light);box-shadow:var(--pg-shadow-md)}.mb-feature-icon{width:44px;height:44px;border-radius:var(--pg-radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;margin-bottom:14px}.mb-feature-title{margin:0 0 6px;font-size:16px;font-weight:600;color:var(--pg-text-primary)}.mb-feature-desc{margin:0;font-size:13px;color:var(--pg-text-secondary);line-height:1.6}.mb-progress-panel{margin-top:32px;background:var(--pg-card);border:1px solid var(--pg-border-light);border-radius:var(--pg-radius-md);padding:20px 24px}.mb-progress-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:14px;font-weight:600;color:var(--pg-text-primary)}.mb-progress-icon{color:var(--pg-primary);font-size:16px}.mb-progress-count{margin-left:auto;font-weight:400;font-size:13px;color:var(--pg-text-tertiary)}.mb-progress-stats{display:flex;gap:20px;flex-wrap:wrap}.mb-progress-stat{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--pg-text-secondary)}.mb-progress-stat strong{color:var(--pg-text-primary)}.search-panel{background:#fff;border-radius:var(--pg-radius-md);border:1px solid var(--pg-border-light);padding:20px;box-shadow:var(--pg-shadow-sm);transition:all .3s ease}.search-panel:hover{border-color:var(--pg-border-dark);box-shadow:var(--pg-shadow-md)}.bank-table .ant-table-row{cursor:pointer;transition:background .2s}.bank-table .ant-table-row:hover{background:var(--pg-bg-secondary)!important}.bank-table .ant-table-thead>tr>th{background:var(--pg-galaxy)!important;color:var(--pg-text-inverse)!important;font-weight:500;font-size:13px}.bank-table .ant-table-tbody>tr>td{padding:8px 12px}.molecule-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.molecule-card{border-radius:var(--pg-radius-sm);border:1px solid var(--yn-border-light);transition:all .3s ease;height:100%}.molecule-card:hover{transform:translateY(-3px);box-shadow:var(--yn-shadow-md);border-color:var(--yn-border-hover)}.molecule-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.molecule-card-info{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--yn-ink-muted)}.molecule-card-info>div{display:flex;align-items:center;gap:6px}.ant-tag{cursor:pointer;transition:all .2s}.ant-tag:hover{transform:scale(1.05)}.ant-drawer-body .ant-descriptions-bordered .ant-descriptions-item-label{background:#0d21370d;font-weight:500}.compare-drawer-content{display:flex;flex-direction:column;gap:4px}.compare-row{display:flex;align-items:stretch;border-bottom:1px solid var(--yn-border-light);min-height:40px}.compare-row:last-child{border-bottom:none}.compare-label-cell{width:100px;min-width:100px;flex-shrink:0;font-size:13px;font-weight:600;color:var(--yn-ink-muted);padding:10px 12px;background:#0d213708;display:flex;align-items:center;border-right:1px solid var(--yn-border-light)}.compare-value-cell{flex:1;min-width:0;padding:10px 12px;font-size:13px;color:var(--yn-ink);display:flex;align-items:center;word-break:break-word;border-right:1px solid var(--yn-border-light)}.compare-value-cell:last-child{border-right:none}.compare-structure-cell{justify-content:center;flex-direction:column;padding:12px}.molecule-card-checked{border-color:var(--yn-erhai)!important;box-shadow:0 0 0 2px #1a73e833,var(--yn-shadow-md)!important}.molecule-card-structure{text-align:center;padding:4px 0;margin-bottom:4px;background:#ffffff80;border-radius:8px}.profiled-progress-bar{background:var(--yn-tech-navy-light);border-radius:12px;padding:16px 20px;margin-top:20px;border:1px solid var(--yn-border)}.profiled-progress-bar .profiled-progress-title{color:var(--yn-ink-white);font-size:14px;font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:8px}.profiled-progress-bar .profiled-progress-stats{display:flex;gap:24px;flex-wrap:wrap;margin-top:8px}.profiled-progress-bar .profiled-progress-stat{display:flex;align-items:center;gap:6px;color:#fffc;font-size:12px}.profiled-progress-bar .profiled-progress-stat .stat-value{color:#fff;font-weight:600}.profiled-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.profiled-card{background:#fff;border:1px solid var(--yn-border);border-radius:12px;padding:16px;transition:all .25s ease;cursor:pointer;position:relative;overflow:hidden}.profiled-card:hover{border-color:var(--yn-erhai);box-shadow:var(--yn-shadow-md);transform:translateY(-2px)}.profiled-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.pcard-structure-wrap{text-align:center;margin-bottom:8px}.pcard-structure-img{width:210px;height:150px;object-fit:contain;background:#f5f0e84d;border-radius:8px;border:1px solid var(--yn-border-light);padding:4px}.pcard-structure-placeholder{width:210px;height:150px;display:inline-flex;align-items:center;justify-content:center;background:#f5f0e84d;border-radius:8px;border:1px dashed var(--yn-border)}.pcard-names{text-align:center;margin-bottom:4px}.pcard-name-main{font-size:14px;font-weight:600;color:var(--yn-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pcard-name-chinese{font-size:12px;color:var(--yn-ink-hint);margin-top:2px}.pcard-badges{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}.pcard-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap;line-height:1.5}.pcard-badge.hob-high{background:#e8f5e9;color:#1b5e3a;border:1px solid #a5d6a7}.pcard-badge.hob-medium{background:#fff8e1;color:#7c5cfc;border:1px solid #ffe082}.pcard-badge.hob-low{background:#fbe9e7;color:#bf360c;border:1px solid #ffab91}.pcard-badge.np-score{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.pcard-biotags{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:6px}.pcard-biotag{display:inline-block;font-size:10px;background:#f3e5f5;color:#6a1b9a;border:1px solid #ce93d8;border-radius:4px;padding:1px 6px;line-height:1.5}.pcard-metrics{display:flex;gap:12px;margin-bottom:4px}.pcard-metric{font-size:11px;color:var(--yn-ink-muted);display:inline-flex;align-items:center;gap:4px}.pcard-metric-col{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.pcard-metric-label{font-size:11px;color:var(--yn-ink-muted);display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.pcard-metric-items{display:flex;flex-wrap:wrap;gap:3px}.pcard-metric-item{font-size:10px;color:var(--yn-ink);background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;padding:1px 5px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.pcard-chembl-tags{display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:4px;margin-bottom:2px}.pcard-chembl-tag{font-size:10px;padding:1px 6px;border-radius:4px;background:#e3f2fd;color:#1565c0;border:1px solid #90caf9;white-space:nowrap}.pcard-chembl-total{font-size:10px;color:var(--yn-ink-hint);margin-left:2px;white-space:nowrap}.pcard-footer{display:flex;justify-content:space-between;align-items:center}.pcard-supplier-info{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0}.pcard-price{font-size:11px;color:var(--yn-tea-gold);font-weight:600}.pcard-profile-btn{font-size:11px!important;height:24px!important;padding:0 8px!important;flex-shrink:0}.profiled-card-structure{width:100px;height:100px;flex-shrink:0;background:#f5f0e866;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid var(--yn-border-light);overflow:hidden}.profiled-card-structure img{max-width:100%;max-height:100%;object-fit:contain}.profiled-card-names{flex:1;min-width:0}.profiled-card-names .name-main{font-size:15px;font-weight:600;color:var(--yn-ink);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profiled-card-names .name-chinese{font-size:13px;color:var(--yn-ink-hint);display:block;margin-top:2px}.profiled-card-metrics{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.profiled-metric-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:500;white-space:nowrap;line-height:1.4}.profiled-metric-tag.hob-high{background:#e8f5e9;color:#1b5e3a;border:1px solid #a5d6a7}.profiled-metric-tag.hob-medium{background:#fff8e1;color:#7c5cfc;border:1px solid #ffe082}.profiled-metric-tag.hob-low{background:#fbe9e7;color:#bf360c;border:1px solid #ffab91}.profiled-metric-tag.np-score{background:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.profiled-metric-tag.bio-task{background:#f3e5f5;color:#6a1b9a;border:1px solid #ce93d8}.profiled-metric-tag.target-count{background:#e0f2f1;color:#00695c;border:1px solid #80cbc4}.profiled-metric-tag.disease-count{background:#fce4ec;color:#c62828;border:1px solid #f48fb1}.profiled-card-np-bar{margin-bottom:10px}.profiled-card-np-bar .np-bar-label{display:flex;justify-content:space-between;font-size:11px;color:var(--yn-ink-muted);margin-bottom:2px}.profiled-card-np-bar .np-bar-label .np-bar-value{font-weight:600;color:var(--yn-erhai)}.profiled-card-bio-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.profiled-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:10px;border-top:1px solid var(--yn-border-light);font-size:11px;color:var(--yn-ink-hint)}.profiled-detail-section{margin-bottom:20px}.profiled-detail-section .section-title{font-size:14px;font-weight:600;color:var(--yn-ink);margin-bottom:12px;display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--yn-border-light)}.profiled-detail-section .module-card{background:var(--yn-paper);border-radius:8px;padding:12px 16px;margin-bottom:8px;border:1px solid var(--yn-border-light)}.profiled-detail-section .module-card .module-title{font-size:13px;font-weight:600;color:var(--yn-ink);margin-bottom:6px}.profiled-detail-section .module-card .module-value{font-size:13px;color:var(--yn-ink-muted)}.profiled-detail-section .module-card .module-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.profiled-tab-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:8px}.profiled-tab-toolbar .profiled-tab-total{font-size:14px;color:var(--yn-ink-muted)}.profiled-tab-toolbar .profiled-tab-total strong{color:var(--yn-mountain)}.flex-between-center{display:flex;justify-content:space-between;align-items:center}.flex-center{display:flex;align-items:center;justify-content:center}.font-mono{font-family:monospace}.text-gold{color:var(--yn-tea-gold)}.text-muted{color:var(--yn-ink-hint)}.text-mountain{color:var(--yn-mountain)}.text-erhai{color:var(--yn-erhai)}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.p-8{padding:8px}.p-12{padding:12px}.p-40{padding:40px}.gap-8{gap:8px}.gap-12{gap:12px}.text-center{text-align:center}.molecule-card-header{display:flex;align-items:center;gap:6px}.molecule-card-info>div{margin-bottom:2px;font-size:13px}.molecule-card-info>div:last-child{margin-bottom:0}.structure-img-container{text-align:center;margin-bottom:16px;padding:8px;background:#fafafa;border-radius:8px}.compare-selection-bar{margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.compare-selection-bar-card{margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}.supplier-tag{cursor:pointer;padding:2px 10px;font-size:12px}.yn-brand-badge{display:inline-flex;align-items:center;gap:6px;background:#0fb5a614;padding:6px 16px;border-radius:20px;font-size:13px;color:var(--yn-mountain);margin-bottom:16px;border:1px solid rgba(15,181,166,.15)}.yn-footer-brand{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--yn-ink-muted)}.team-showcase{background:var(--pg-card);border-radius:var(--pg-radius-md);padding:24px;border:1px solid var(--pg-border-light)}.team-showcase-header{font-size:15px;font-weight:600;color:var(--pg-text-primary);margin-bottom:16px;display:flex;align-items:center;gap:8px}.team-showcase-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.team-card{display:flex;align-items:center;gap:14px;background:var(--pg-card);border:1px solid var(--pg-border-light);border-radius:var(--pg-radius-sm);padding:16px 18px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.team-card:after{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--pg-border-light);transition:all .25s ease}.team-card:hover{border-color:var(--pg-primary-light);box-shadow:var(--pg-shadow-md)}.team-card:hover:after{background:var(--pg-primary)}.team-card-primary{border-color:var(--pg-secondary);border-width:1.5px;background:linear-gradient(135deg,var(--pg-secondary-lighter),rgba(15,181,166,.03))}.team-card-primary:after{background:var(--pg-secondary)}.team-card-primary:hover{border-color:var(--pg-secondary);box-shadow:0 4px 20px #0fb5a61f}.team-card-badge{width:40px;height:40px;border-radius:var(--pg-radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;flex-shrink:0}.team-card-info{flex:1;min-width:0}.team-card-name{font-size:14px;font-weight:600;color:var(--pg-text-primary);margin-bottom:4px}.team-card-stats{font-size:12px;color:var(--pg-text-tertiary);display:flex;align-items:center;flex-wrap:wrap;gap:4px}.team-stat strong{color:var(--pg-text-primary);font-weight:600}.team-stat-divider{color:var(--pg-border)}.team-card-action{flex-shrink:0}.team-showcase-footer{text-align:center;margin-top:12px;font-size:12px;color:var(--pg-text-tertiary);opacity:.6}@media(max-width:1024px){.search-card{padding:24px}.report-container .tier-body{padding:16px!important}.tier-card .tier-header h3{font-size:14px!important}}@media(max-width:768px){.subsystems{grid-template-columns:1fr}.hero h1{font-size:28px}.hero-section h1{font-size:1.8rem}.brand-nav{gap:0}.brand-nav a{padding:6px 8px;font-size:12px}.brand-version{display:none}.stats-bar{gap:24px}.stat-value{font-size:1.5rem}.features-grid{grid-template-columns:1fr}.auth-card{padding:28px 20px!important}.auth-header h1{font-size:20px}.report-container .tier-body [style*=flex]{flex-direction:column!important}.search-card{padding:16px}.examples{flex-wrap:wrap}.table-wrapper{overflow-x:auto}.data-table{font-size:11px}.data-table th,.data-table td{padding:6px 8px!important}.profiled-cards{grid-template-columns:1fr!important}.molecule-flex-container{flex-direction:column!important}}@media(max-width:480px){.hero h1{font-size:22px}.hero .subtitle{font-size:14px}.hero-section h1{font-size:1.4rem}.search-card{padding:12px;border-radius:12px}.auth-card{border-radius:16px;padding:20px 16px!important}.features-grid{gap:12px}.feature-card{padding:16px!important}.brand-bar{padding:0 12px}.brand-nav a{padding:4px 6px;font-size:11px}.brand-name{font-size:15px!important}.page-container{padding:16px 12px}.stats-row{flex-direction:column;gap:8px}.quota-grid{grid-template-columns:1fr!important}.profiled-tab-toolbar{flex-direction:column;align-items:flex-start!important}}@media(max-width:768px){.team-showcase{padding:16px}.team-showcase-cards{grid-template-columns:1fr}}
