#app{min-height:100vh}.header-accent[data-v-c7c328d9]{height:3px;background:linear-gradient(90deg,#3b82f6,#2563eb,#1d4ed8);width:0%;transition:width .1s linear}.header-top[data-v-c7c328d9]{display:flex;justify-content:space-between;align-items:center;padding:16px 32px}.header-logo[data-v-c7c328d9]{display:flex;align-items:center;gap:14px}.logo-img[data-v-c7c328d9]{height:44px;width:auto;object-fit:contain}.logo-text[data-v-c7c328d9]{display:flex;flex-direction:column;gap:1px}.logo-text h1[data-v-c7c328d9]{font-size:18px;font-weight:800;letter-spacing:-.5px;color:var(--color-text-primary);margin:0;line-height:1.3}.logo-subtitle[data-v-c7c328d9]{font-size:11px;font-weight:500;color:var(--color-text-muted);letter-spacing:1.5px;text-transform:uppercase}.user-section[data-v-c7c328d9]{display:flex;align-items:center;gap:16px;margin-left:auto;padding-left:20px}.auth-status[data-v-c7c328d9]{display:flex;align-items:center}.auth-badge[data-v-c7c328d9]{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600;letter-spacing:-.2px}.vip-badge[data-v-c7c328d9]{background:linear-gradient(135deg,#fffbeb,#fef3c7);color:#92400e;border:1px solid #fbbf24;box-shadow:0 1px 6px #f59e0b33,inset 0 1px #fff9;font-weight:700;letter-spacing:.5px}.vip-crown[data-v-c7c328d9]{color:#d97706;filter:drop-shadow(0 0 2px rgba(217,119,6,.3))}.auth-dot.expired[data-v-c7c328d9]{width:8px;height:8px;border-radius:50%;background:var(--color-danger);box-shadow:0 0 6px #dc262666}.auth-expired[data-v-c7c328d9]{background:var(--color-danger-light);color:var(--color-danger);border:1px solid #fecaca}.user-name[data-v-c7c328d9]{color:var(--color-text-primary);font-size:14px;font-weight:600}.header-btn[data-v-c7c328d9]{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.logout-btn[data-v-c7c328d9]{width:34px;height:34px;padding:0;background:transparent;color:var(--color-text-muted);border-radius:8px}.logout-btn[data-v-c7c328d9]:hover{background:var(--color-danger-light);color:var(--color-danger)}.login-btn[data-v-c7c328d9]{padding:9px 22px;background:var(--color-primary);color:#fff;box-shadow:0 2px 8px var(--color-primary-focus)}.login-btn[data-v-c7c328d9]:hover{background:var(--color-primary-hover);box-shadow:0 4px 16px #2563eb40;transform:translateY(-1px)}@media (max-width: 768px){.header-top[data-v-c7c328d9]{flex-direction:column;gap:12px;padding:12px 16px}.logo-subtitle[data-v-c7c328d9]{display:none}.user-section[data-v-c7c328d9]{padding-left:0;flex-wrap:wrap;justify-content:center}}.search-section[data-v-7a103146]{padding:16px 32px;background:var(--color-bg, #fff);border-bottom:1px solid var(--color-border, #e2e8f0)}.search-box[data-v-7a103146]{display:flex;gap:12px;max-width:100%;align-items:center;flex-wrap:wrap}.search-input-wrapper[data-v-7a103146]{flex:1;min-width:300px;position:relative}.search-icon[data-v-7a103146]{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted, #94a3b8);pointer-events:none;z-index:1}.search-input-wrapper input[data-v-7a103146]{width:100%;padding:9px 14px 9px 38px;font-size:14px;border:1.5px solid var(--color-border, #e2e8f0);border-radius:8px;outline:none;transition:border-color .2s,box-shadow .2s;color:var(--color-text-primary, #1e293b);background:var(--color-bg, #fff)}.search-input-wrapper input[data-v-7a103146]::placeholder{color:var(--color-text-muted, #94a3b8)}.search-input-wrapper input[data-v-7a103146]:focus{border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.search-input-wrapper input:focus+.search-icon[data-v-7a103146],.search-input-wrapper input:focus~.search-icon[data-v-7a103146]{color:var(--color-primary, #2563eb)}.period-toggle[data-v-7a103146]{display:flex;background:var(--color-bg-tertiary, #f1f5f9);border-radius:8px;padding:3px;gap:2px}.period-btn[data-v-7a103146]{padding:7px 18px;font-size:13px;font-weight:600;border:none;border-radius:6px;background:transparent;color:var(--color-text-secondary, #64748b);cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease;white-space:nowrap;min-width:52px;text-align:center}.period-btn[data-v-7a103146]:hover{background:#0000000a;color:var(--color-text-primary, #1e293b)}.period-btn.active[data-v-7a103146]{background:var(--color-bg, #fff);color:var(--color-primary, #2563eb);box-shadow:0 1px 3px #00000014}.year-selector[data-v-7a103146]{display:flex;align-items:center;gap:8px}.year-label[data-v-7a103146]{font-size:13px;color:var(--color-text-secondary, #64748b);white-space:nowrap;font-weight:500}.year-select[data-v-7a103146]{padding:8px 32px 8px 12px;font-size:13px;border:1.5px solid var(--color-border, #e2e8f0);border-radius:8px;outline:none;background:var(--color-bg, #fff);cursor:pointer;min-width:110px;transition:border-color .2s,box-shadow .2s;color:var(--color-text-primary, #1e293b);-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%2394a3b8%22%3E%3Cpath d=%22M7 10l5 5 5-5z%22/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:18px}.year-select[data-v-7a103146]:focus{border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.year-select[data-v-7a103146]:hover{border-color:var(--color-text-muted, #94a3b8)}.search-suggestions[data-v-7a103146]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-bg, #fff);border:1.5px solid var(--color-border, #e2e8f0);border-radius:8px;box-shadow:0 8px 24px #0000001f;max-height:320px;overflow-y:auto;z-index:1000;display:none}.search-suggestions.show[data-v-7a103146]{display:block}.suggestion-item[data-v-7a103146]{padding:10px 14px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background .15s;border-bottom:1px solid var(--color-border-light, #f1f5f9)}.suggestion-item[data-v-7a103146]:last-child{border-bottom:none}.suggestion-item[data-v-7a103146]:hover{background:var(--color-bg-secondary, #f8fafc)}.suggestion-item.highlighted[data-v-7a103146]{background:var(--color-bg-tertiary, #f1f5f9)}.suggestion-market[data-v-7a103146]{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;background:var(--color-bg-tertiary, #f1f5f9);color:var(--color-text-secondary, #64748b)}.suggestion-code[data-v-7a103146]{font-weight:600;color:var(--color-text-primary, #1e293b);min-width:70px}.suggestion-name[data-v-7a103146]{color:var(--color-text-muted, #94a3b8);font-size:13px}.suggestion-chinese[data-v-7a103146]{color:var(--color-text-secondary, #64748b);font-size:13px}.trend-chart[data-v-badac046]{display:flex;align-items:flex-end;justify-content:space-between;height:20px;gap:0px}.trend-bar[data-v-badac046]{transition:height .2s ease}table[data-v-cd4e7ec3]{width:100%;border-collapse:collapse;font-size:14px}th[data-v-cd4e7ec3],td[data-v-cd4e7ec3]{padding:10px 14px;text-align:right;border-bottom:1px solid var(--color-border-light, #f1f5f9)}th[data-v-cd4e7ec3]{background:var(--color-bg-secondary, #f8fafc);font-weight:600;color:var(--color-text-primary, #1e293b);font-size:14px;border-bottom:2px solid var(--color-border, #e2e8f0)}th[data-v-cd4e7ec3]:first-child,td[data-v-cd4e7ec3]:first-child{text-align:left}tr[data-v-cd4e7ec3]:hover{background:var(--color-primary-light, #eff6ff)}.negative[data-v-cd4e7ec3]{color:var(--color-danger, #dc2626)}.growth-rate-positive[data-v-cd4e7ec3]{color:var(--color-success, #16a34a);font-weight:500}.growth-rate-negative[data-v-cd4e7ec3]{color:var(--color-danger, #dc2626);font-weight:500}.growth-rate-na[data-v-cd4e7ec3]{color:var(--color-text-muted, #94a3b8)}small[data-v-cd4e7ec3]{font-size:12px}.statement-header[data-v-37d1644e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.statement-header h3[data-v-37d1644e]{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1e293b)}.export-csv-btn[data-v-37d1644e]{padding:7px 16px;background:var(--color-bg, #fff);color:var(--color-primary, #2563eb);border:1.5px solid var(--color-primary-border, #bfdbfe);border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.export-csv-btn[data-v-37d1644e]:hover{background:var(--color-primary-light, #eff6ff);border-color:var(--color-primary, #2563eb)}.table-container[data-v-37d1644e]{position:relative}.table-container.is-loading[data-v-37d1644e]{opacity:.5;pointer-events:none;transition:opacity .15s}.loading-overlay[data-v-37d1644e]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-text-secondary, #64748b);font-size:14px;z-index:5}.loading-text[data-v-37d1644e],.empty-text[data-v-37d1644e]{text-align:center;padding:48px;color:var(--color-text-muted, #94a3b8);font-size:14px}.statement-header[data-v-64f06541]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.statement-header h3[data-v-64f06541]{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1e293b)}.header-controls[data-v-64f06541]{display:flex;align-items:center;gap:16px}.growth-rate-options[data-v-64f06541]{display:flex;gap:12px}.growth-rate-options label[data-v-64f06541]{cursor:pointer;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary, #64748b);font-weight:500}.growth-rate-options label input[type=checkbox][data-v-64f06541]{accent-color:var(--color-primary, #2563eb)}.export-csv-btn[data-v-64f06541]{padding:7px 16px;background:var(--color-bg, #fff);color:var(--color-primary, #2563eb);border:1.5px solid var(--color-primary-border, #bfdbfe);border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.export-csv-btn[data-v-64f06541]:hover{background:var(--color-primary-light, #eff6ff);border-color:var(--color-primary, #2563eb)}.table-container[data-v-64f06541]{position:relative}.table-container.is-loading[data-v-64f06541]{opacity:.5;pointer-events:none;transition:opacity .15s}.loading-overlay[data-v-64f06541]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-text-secondary, #64748b);font-size:14px;z-index:5}.loading-text[data-v-64f06541],.empty-text[data-v-64f06541]{text-align:center;padding:48px;color:var(--color-text-muted, #94a3b8);font-size:14px}.statement-header[data-v-344a0ca5]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.statement-header h3[data-v-344a0ca5]{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1e293b)}.export-csv-btn[data-v-344a0ca5]{padding:7px 16px;background:var(--color-bg, #fff);color:var(--color-primary, #2563eb);border:1.5px solid var(--color-primary-border, #bfdbfe);border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.export-csv-btn[data-v-344a0ca5]:hover{background:var(--color-primary-light, #eff6ff);border-color:var(--color-primary, #2563eb)}.table-container[data-v-344a0ca5]{position:relative}.table-container.is-loading[data-v-344a0ca5]{opacity:.5;pointer-events:none;transition:opacity .15s}.loading-overlay[data-v-344a0ca5]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-text-secondary, #64748b);font-size:14px;z-index:5}.loading-text[data-v-344a0ca5],.empty-text[data-v-344a0ca5]{text-align:center;padding:48px;color:var(--color-text-muted, #94a3b8);font-size:14px}.section-title[data-v-69a193b7]{margin-top:24px;margin-bottom:12px;color:var(--color-primary, #2563eb);font-size:15px;font-weight:600;padding-left:10px;border-left:3px solid var(--color-primary, #2563eb)}table[data-v-69a193b7]{width:100%;border-collapse:collapse;font-size:14px;margin-bottom:8px}th[data-v-69a193b7],td[data-v-69a193b7]{padding:10px 14px;text-align:right;border-bottom:1px solid var(--color-border-light, #f1f5f9)}th[data-v-69a193b7]{background:var(--color-bg-secondary, #f8fafc);font-weight:600;color:var(--color-text-primary, #1e293b);font-size:14px;border-bottom:2px solid var(--color-border, #e2e8f0)}th[data-v-69a193b7]:first-child,td[data-v-69a193b7]:first-child{text-align:left}.item-col[data-v-69a193b7]{width:180px;min-width:120px;max-width:200px}.trend-col[data-v-69a193b7]{width:40px;min-width:40px;max-width:50px;text-align:center!important;padding:4px!important}.period-col[data-v-69a193b7]{width:100px;min-width:80px;max-width:120px}@media (max-width: 1200px){.item-col[data-v-69a193b7]{width:140px;min-width:100px}.period-col[data-v-69a193b7]{width:85px;min-width:70px}}@media (max-width: 768px){.item-col[data-v-69a193b7]{width:120px;min-width:90px}.period-col[data-v-69a193b7]{width:70px;min-width:60px}table[data-v-69a193b7]{font-size:12px}}tr[data-v-69a193b7]:hover{background:var(--color-primary-light, #eff6ff)}.negative[data-v-69a193b7]{color:var(--color-danger, #dc2626)}.statement-header[data-v-f5949ced]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.statement-header h3[data-v-f5949ced]{margin:0;font-size:16px;font-weight:600;color:var(--color-text-primary, #1e293b)}.export-csv-btn[data-v-f5949ced]{padding:7px 16px;background:var(--color-bg, #fff);color:var(--color-primary, #2563eb);border:1.5px solid var(--color-primary-border, #bfdbfe);border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.export-csv-btn[data-v-f5949ced]:hover{background:var(--color-primary-light, #eff6ff);border-color:var(--color-primary, #2563eb)}.table-container[data-v-f5949ced]{position:relative}.table-container.is-loading[data-v-f5949ced]{opacity:.5;pointer-events:none;transition:opacity .15s}.loading-overlay[data-v-f5949ced]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--color-text-secondary, #64748b);font-size:14px;z-index:5}.loading-text[data-v-f5949ced],.empty-text[data-v-f5949ced]{text-align:center;padding:48px;color:var(--color-text-muted, #94a3b8);font-size:14px}.dcf-model[data-v-ce51bca2]{padding:20px 0}.valuation-params-table[data-v-ce51bca2]{margin-bottom:20px}.valuation-params-table table[data-v-ce51bca2]{width:100%;border-collapse:collapse}.valuation-params-table th[data-v-ce51bca2],.valuation-params-table td[data-v-ce51bca2]{padding:10px 14px;border:1px solid var(--color-border, #e2e8f0)}.valuation-params-table th[data-v-ce51bca2]{background:var(--color-primary, #2563eb);color:#fff;font-weight:600;font-size:13px}.company-name[data-v-ce51bca2]{text-align:center}.param-label[data-v-ce51bca2]{font-weight:500;font-size:13px}.param-value[data-v-ce51bca2]{text-align:center;white-space:nowrap}.param-value input[data-v-ce51bca2]{width:80px;padding:6px 8px;border:1.5px solid var(--color-border, #e2e8f0);border-radius:6px;text-align:right;font-size:13px;transition:border-color .2s}.param-value input[data-v-ce51bca2]:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.param-note[data-v-ce51bca2]{font-size:12px;color:var(--color-text-secondary, #64748b)}.valuation-result-table[data-v-ce51bca2]{margin-bottom:20px}.valuation-result-table table[data-v-ce51bca2]{width:100%;border-collapse:collapse}.valuation-result-table th[data-v-ce51bca2],.valuation-result-table td[data-v-ce51bca2]{padding:10px 14px;border:1px solid var(--color-border, #e2e8f0);text-align:center;font-size:13px}.valuation-result-table th[data-v-ce51bca2]{background:var(--color-bg-secondary, #f8fafc);font-weight:600}.row-label[data-v-ce51bca2]{text-align:left!important;font-weight:500}.valuation-final-result table[data-v-ce51bca2]{width:100%;border-collapse:collapse}.valuation-final-result td[data-v-ce51bca2]{padding:12px 14px;border:1px solid var(--color-border, #e2e8f0)}.result-label[data-v-ce51bca2]{font-weight:500}.result-value[data-v-ce51bca2]{color:var(--color-primary, #2563eb);font-weight:700}.stock-value-row[data-v-ce51bca2]{background:var(--color-accent-light, #fff7ed)}.stock-value-highlight[data-v-ce51bca2]{font-weight:700;font-size:18px;color:var(--color-accent, #e85d04)}.pe-model[data-v-b9aca875]{padding:20px 0}.pe-river-chart-section[data-v-b9aca875]{background:var(--color-bg, #fff);border:1.5px solid var(--color-border, #e2e8f0);border-radius:10px;padding:20px;position:relative}.section-header[data-v-b9aca875]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h4[data-v-b9aca875]{margin:0;color:var(--color-text-primary, #1e293b);font-size:15px}.controls[data-v-b9aca875]{display:flex;align-items:center;gap:10px}.controls label[data-v-b9aca875]{font-size:13px;color:var(--color-text-secondary, #64748b)}.controls select[data-v-b9aca875]{padding:6px 10px;border:1.5px solid var(--color-border, #e2e8f0);border-radius:6px;font-size:13px;outline:none;transition:border-color .2s}.controls select[data-v-b9aca875]:focus{border-color:var(--color-primary, #2563eb)}.pe-river-info[data-v-b9aca875]{margin-bottom:16px;padding:20px;background:var(--color-bg-secondary, #f8fafc);border-radius:8px;border:1px solid var(--color-border-light, #f1f5f9)}.info-grid[data-v-b9aca875]{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;font-size:14px}.info-item[data-v-b9aca875]{display:flex;flex-direction:column}.info-label[data-v-b9aca875]{color:var(--color-text-secondary, #64748b);font-size:13px;font-weight:600}.info-value[data-v-b9aca875]{font-weight:800;font-size:22px;color:var(--color-text-primary, #1e293b)}.current-price[data-v-b9aca875]{color:var(--color-primary, #2563eb)}.chart-container[data-v-b9aca875]{height:420px;position:relative;margin:0 -10px}.loading-overlay[data-v-b9aca875]{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:10;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.fade-enter-active[data-v-b9aca875],.fade-leave-active[data-v-b9aca875]{transition:opacity .2s ease}.fade-enter-from[data-v-b9aca875],.fade-leave-to[data-v-b9aca875]{opacity:0}.loading-spinner[data-v-b9aca875]{width:36px;height:36px;border:3px solid var(--color-border, #e2e8f0);border-top:3px solid var(--color-primary, #2563eb);border-radius:50%;animation:spin-b9aca875 1s linear infinite}@keyframes spin-b9aca875{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pe-calculator-section[data-v-b9aca875]{margin-top:20px;background:var(--color-bg-secondary, #f8fafc);border:1.5px solid var(--color-border, #e2e8f0);border-radius:10px;padding:20px 24px}.calculator-title[data-v-b9aca875]{font-size:14px;font-weight:600;color:var(--color-text-primary, #1e293b);margin-bottom:16px}.calculator-row[data-v-b9aca875]{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}.calc-input-group[data-v-b9aca875]{display:flex;flex-direction:column;gap:6px}.calc-input-group label[data-v-b9aca875]{color:var(--color-text-secondary, #64748b);font-size:13px;font-weight:600}.calc-input-group input[data-v-b9aca875]{width:140px;padding:9px 14px;background:var(--color-bg, #fff);border:1.5px solid var(--color-border, #e2e8f0);border-radius:6px;color:var(--color-text-primary, #1e293b);font-size:14px;font-weight:500;outline:none;transition:all .2s}.calc-input-group input[data-v-b9aca875]:focus{border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.calc-input-group input[data-v-b9aca875]::placeholder{color:var(--color-text-muted, #94a3b8);font-weight:400}.calc-operator[data-v-b9aca875]{color:var(--color-text-secondary, #64748b);font-size:20px;font-weight:500;padding-bottom:10px}.calc-input-group.result .calc-result[data-v-b9aca875]{width:140px;padding:9px 14px;background:var(--color-primary-light, #eff6ff);border:2px solid var(--color-primary, #2563eb);border-radius:6px;color:var(--color-primary, #2563eb);font-size:14px;font-weight:700;text-align:center;min-height:21px}.calculator-actions[data-v-b9aca875]{display:flex;align-items:center;gap:10px;margin-top:16px}.auto-calc-btn[data-v-b9aca875]{padding:8px 20px;background:var(--color-primary, #2563eb);border:none;border-radius:6px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.auto-calc-btn[data-v-b9aca875]:hover:not(.disabled){background:var(--color-primary-hover, #1d4ed8)}.auto-calc-btn.disabled[data-v-b9aca875]{background:var(--color-border, #e2e8f0);color:var(--color-text-muted, #94a3b8);cursor:not-allowed}.auto-calc-hint[data-v-b9aca875]{color:var(--color-text-muted, #94a3b8);font-size:12px}.industry-label[data-v-b9aca875]{font-size:13px;color:var(--color-text-muted, #94a3b8);font-weight:500}.premium-neutral[data-v-b9aca875]{color:var(--color-warning, #d97706)}.premium-low[data-v-b9aca875]{color:var(--color-success, #16a34a)}.premium-high[data-v-b9aca875]{color:var(--color-danger, #dc2626)}.pb-model[data-v-c906b680]{padding:20px 0}.pb-model h4[data-v-c906b680]{margin:20px 0 12px;color:var(--color-text-primary, #1e293b);font-size:15px}.valuation-params-table[data-v-c906b680]{margin-bottom:20px}.valuation-params-table table[data-v-c906b680]{width:100%;border-collapse:collapse}.valuation-params-table th[data-v-c906b680],.valuation-params-table td[data-v-c906b680]{padding:10px 14px;border:1px solid var(--color-border, #e2e8f0)}.valuation-params-table th[data-v-c906b680]{background:var(--color-primary, #2563eb);color:#fff;font-weight:600;font-size:13px}.company-name[data-v-c906b680]{text-align:center}.param-label[data-v-c906b680]{font-weight:500;font-size:13px}.param-value[data-v-c906b680]{text-align:center;white-space:nowrap}.param-value input[data-v-c906b680]{width:80px;padding:6px 8px;border:1.5px solid var(--color-border, #e2e8f0);border-radius:6px;text-align:right;font-size:13px;transition:border-color .2s}.param-value input[data-v-c906b680]:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.param-note[data-v-c906b680]{font-size:12px;color:var(--color-text-secondary, #64748b)}.valuation-result-table[data-v-c906b680]{margin-bottom:80px}.valuation-result-table table[data-v-c906b680]{width:100%;border-collapse:collapse}.valuation-result-table td[data-v-c906b680]{padding:12px 14px;border:1px solid var(--color-border, #e2e8f0)}.result-label[data-v-c906b680]{font-weight:500}.result-value[data-v-c906b680]{color:var(--color-primary, #2563eb);font-weight:700;text-align:right}.stock-value-row[data-v-c906b680]{background:var(--color-accent-light, #fff7ed)}.stock-value-highlight[data-v-c906b680]{font-weight:700;font-size:18px;color:var(--color-accent, #e85d04)}.dividend-model[data-v-236a0031]{padding:20px 0}.dividend-model h4[data-v-236a0031]{margin:20px 0 12px;color:var(--color-text-primary, #1e293b);font-size:15px}.valuation-params-table[data-v-236a0031]{margin-bottom:20px}.valuation-params-table table[data-v-236a0031]{width:100%;border-collapse:collapse}.valuation-params-table th[data-v-236a0031],.valuation-params-table td[data-v-236a0031]{padding:10px 14px;border:1px solid var(--color-border, #e2e8f0)}.valuation-params-table th[data-v-236a0031]{background:var(--color-primary, #2563eb);color:#fff;font-weight:600;font-size:13px}.company-name[data-v-236a0031]{text-align:center}.param-label[data-v-236a0031]{font-weight:500;font-size:13px}.param-value[data-v-236a0031]{text-align:center;white-space:nowrap}.param-value input[data-v-236a0031]{width:80px;padding:6px 8px;border:1.5px solid var(--color-border, #e2e8f0);border-radius:6px;text-align:right;font-size:13px;transition:border-color .2s}.param-value input[data-v-236a0031]:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.param-note[data-v-236a0031]{font-size:12px;color:var(--color-text-secondary, #64748b)}.valuation-result-table[data-v-236a0031]{margin-bottom:80px}.valuation-result-table table[data-v-236a0031]{width:100%;border-collapse:collapse}.valuation-result-table td[data-v-236a0031]{padding:12px 14px;border:1px solid var(--color-border, #e2e8f0)}.result-label[data-v-236a0031]{font-weight:500}.result-value[data-v-236a0031]{color:var(--color-primary, #2563eb);font-weight:700;text-align:right}.stock-value-row[data-v-236a0031]{background:var(--color-accent-light, #fff7ed)}.stock-value-highlight[data-v-236a0031]{font-weight:700;font-size:18px;color:var(--color-accent, #e85d04)}.stock-value-error[data-v-236a0031]{font-weight:700;font-size:18px;color:var(--color-danger, #dc2626)}.valuation-container h3[data-v-577eea8b]{margin-bottom:16px;font-size:16px;font-weight:600;color:var(--color-text-primary, #1e293b)}.valuation-model-selector[data-v-577eea8b]{margin-top:8px;margin-bottom:24px;padding:0}.valuation-model-selector select[data-v-577eea8b]{padding:9px 40px 9px 14px;border:1.5px solid var(--color-border, #e2e8f0);border-radius:8px;font-size:14px;font-weight:500;min-width:280px;background:var(--color-bg, #fff);color:var(--color-text-primary, #1e293b);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%2394a3b8%22%3E%3Cpath d=%22M7 10l5 5 5-5z%22/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:18px;outline:none;transition:border-color .2s,box-shadow .2s}.valuation-model-selector select[data-v-577eea8b]:focus{border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.valuation-model-selector select[data-v-577eea8b]:hover{border-color:var(--color-text-muted, #94a3b8)}.data-content-wrapper[data-v-be40e6b4]{position:relative;min-height:400px;padding-top:24px}.auth-prompt-section[data-v-be40e6b4]{position:relative;margin:32px;overflow:hidden;border-radius:16px}.auth-prompt-bg[data-v-be40e6b4]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#eef2ff,#f0f7ff 40%,#f8faff);z-index:0}.auth-prompt-bg.warn-bg[data-v-be40e6b4]{background:linear-gradient(135deg,#fefce8,#fffbeb 40%,#fff9f0)}.bg-dot-grid[data-v-be40e6b4]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,#c7d2fe .8px,transparent .8px);background-size:24px 24px;opacity:.35}.warn-bg .bg-dot-grid[data-v-be40e6b4]{background-image:radial-gradient(circle,#fcd34d .8px,transparent .8px);opacity:.25}.auth-prompt-card[data-v-be40e6b4]{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:520px;margin:0 auto;padding:56px 40px 48px;animation:cardFadeIn-be40e6b4 .5s ease-out}@keyframes cardFadeIn-be40e6b4{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.auth-icon-ring[data-v-be40e6b4]{width:88px;height:88px;border-radius:50%;background:linear-gradient(135deg,#dbeafe,#bfdbfe);display:flex;align-items:center;justify-content:center;margin-bottom:24px;box-shadow:0 0 0 8px #2563eb0f,0 8px 24px #2563eb1a;animation:iconPulse-be40e6b4 3s ease-in-out infinite}.auth-icon-ring.warn-ring[data-v-be40e6b4]{background:linear-gradient(135deg,#fef3c7,#fde68a);box-shadow:0 0 0 8px #d977060f,0 8px 24px #d977061a}@keyframes iconPulse-be40e6b4{0%,to{box-shadow:0 0 0 8px #2563eb0f,0 8px 24px #2563eb1a}50%{box-shadow:0 0 0 14px #2563eb08,0 8px 32px #2563eb24}}.auth-icon-inner[data-v-be40e6b4]{width:60px;height:60px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000000f}.auth-icon-inner svg[data-v-be40e6b4]{color:var(--color-primary, #2563eb)}.warn-inner svg[data-v-be40e6b4]{color:var(--color-warning, #d97706)}.auth-title[data-v-be40e6b4]{font-size:22px;font-weight:800;color:var(--color-text-primary, #1e293b);margin:0 0 8px;letter-spacing:-.3px}.auth-desc[data-v-be40e6b4]{font-size:14px;color:var(--color-text-secondary, #64748b);line-height:1.7;margin:0 0 28px;max-width:380px}.feature-grid[data-v-be40e6b4]{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:380px;margin-bottom:32px}.feature-item[data-v-be40e6b4]{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(37,99,235,.1);border-radius:10px;font-size:13px;font-weight:600;color:var(--color-text-primary, #1e293b);transition:transform .2s,box-shadow .2s}.feature-item[data-v-be40e6b4]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2563eb1a}.feature-icon[data-v-be40e6b4]{width:34px;height:34px;min-width:34px;border-radius:8px;background:var(--color-primary-light, #eff6ff);display:flex;align-items:center;justify-content:center}.feature-icon svg[data-v-be40e6b4]{color:var(--color-primary, #2563eb)}.benefit-list[data-v-be40e6b4]{display:flex;flex-direction:column;gap:12px;width:100%;max-width:380px;margin-bottom:32px;text-align:left}.benefit-item[data-v-be40e6b4]{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#fffc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(217,119,6,.12);border-radius:10px;font-size:14px;font-weight:500;color:var(--color-text-primary, #1e293b);transition:transform .2s}.benefit-item[data-v-be40e6b4]:hover{transform:translate(4px)}.benefit-item svg[data-v-be40e6b4]{color:var(--color-success, #16a34a);min-width:16px}.auth-cta-btn[data-v-be40e6b4]{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 36px;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;transition:all .25s ease;text-decoration:none;letter-spacing:.3px}.auth-cta-btn svg[data-v-be40e6b4]{width:18px;height:18px}.login-cta[data-v-be40e6b4]{background:var(--color-primary, #2563eb);color:#fff;box-shadow:0 4px 14px #2563eb4d}.login-cta[data-v-be40e6b4]:hover{background:var(--color-primary-hover, #1d4ed8);box-shadow:0 6px 20px #2563eb59;transform:translateY(-2px)}.purchase-cta[data-v-be40e6b4]{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;box-shadow:0 4px 14px #d977064d}.purchase-cta[data-v-be40e6b4]:hover{box-shadow:0 6px 20px #d9770666;transform:translateY(-2px)}.empty-placeholder[data-v-be40e6b4]{text-align:center;padding:80px 24px;color:var(--color-text-muted, #94a3b8)}.placeholder-text[data-v-be40e6b4]{font-size:15px;margin:0}@media (max-width: 640px){.auth-prompt-section[data-v-be40e6b4]{margin:16px}.auth-prompt-card[data-v-be40e6b4]{padding:40px 20px 36px}.feature-grid[data-v-be40e6b4]{grid-template-columns:1fr}.auth-title[data-v-be40e6b4]{font-size:19px}}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #eff6ff;--color-primary-border: #bfdbfe;--color-primary-focus: rgba(37, 99, 235, .12);--color-bg: #ffffff;--color-bg-secondary: #f7f8fb;--color-bg-tertiary: #eef1f6;--color-text-primary: #1e293b;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-success: #16a34a;--color-success-light: #f0fdf4;--color-danger: #dc2626;--color-danger-light: #fef2f2;--color-warning: #d97706;--color-warning-light: #fffbeb;--color-accent: #e85d04;--color-accent-light: #fff7ed;--color-trend-positive: #7cb8f5;--color-trend-negative: #c4cdd8;--color-trend-null: #e2e8f0;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Microsoft JhengHei,微軟正黑體,PingFang TC,Apple LiGothic Medium,Segoe UI,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;background:var(--color-bg-secondary);min-height:100vh;padding:0;font-size:16px;line-height:1.6;color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}strong{font-weight:700}table td strong{font-weight:700;font-size:14px;color:var(--color-text-primary)}.main-container{max-width:1440px;margin:0 auto;background:var(--color-bg);min-height:100vh;box-shadow:0 0 40px #0000000a}.header{background:#fff;padding:0;margin-bottom:0;border-bottom:1px solid var(--color-border);box-shadow:0 1px 8px #0000000a;position:sticky;top:0;z-index:100}.search-section{background:var(--color-bg);padding:20px 32px;border-bottom:1px solid var(--color-border)}.search-box{display:flex;gap:16px;align-items:center;flex-wrap:wrap;position:relative}.search-input-wrapper{flex:1;position:relative;min-width:300px}.search-box input{width:100%;padding:10px 16px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:14px;transition:border-color .2s,box-shadow .2s;color:var(--color-text-primary);background:var(--color-bg)}.search-box input::placeholder{color:var(--color-text-muted);opacity:1}.search-box input:focus::placeholder{color:transparent}.search-box input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.search-box button{padding:10px 24px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.search-box button:hover{background:var(--color-primary-hover)}.search-suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);max-height:320px;overflow-y:auto;display:none;z-index:1000;box-shadow:var(--shadow-lg)}.search-suggestions.show{display:block}.suggestion-item{padding:10px 16px;cursor:pointer;border-bottom:1px solid var(--color-border-light);transition:background .15s}.suggestion-item:hover{background:var(--color-bg-secondary)}.suggestion-item.highlighted{background:var(--color-primary-light)}.suggestion-item:last-child{border-bottom:none}.suggestion-code{font-weight:600;color:var(--color-primary);margin-right:8px}.suggestion-name{color:var(--color-text-secondary);margin-right:8px}.suggestion-chinese{color:var(--color-text-primary)}.tabs-container{background:var(--color-bg);padding:0 32px 32px}.tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);padding-top:8px}.tab{padding:12px 20px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text-secondary);border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s;white-space:nowrap}.tab:hover{color:var(--color-primary);background:var(--color-primary-light);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.tab-content{display:none}.tab-content.active{display:block}.table-container{overflow-x:auto;border-radius:var(--radius-md)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:10px 14px;text-align:right;border-bottom:1px solid var(--color-border-light)}th{background:var(--color-bg-secondary);font-weight:600;color:var(--color-text-primary);white-space:nowrap;font-size:14px;border-bottom:2px solid var(--color-border)}th:first-child,td:first-child{text-align:left;white-space:nowrap}tr:hover{background:var(--color-primary-light)}.negative{color:var(--color-danger)}.growth-rate-positive{color:var(--color-success);font-weight:500}.growth-rate-negative{color:var(--color-danger);font-weight:500}.growth-rate-na{color:var(--color-text-muted)}.valuation-params-table table{width:100%;border-collapse:collapse}.valuation-params-table th{background:var(--color-primary);color:#fff;padding:12px 14px;font-size:13px}.valuation-params-table td{padding:12px 14px;border:1px solid var(--color-border)}.param-label{font-weight:500}.param-value{text-align:center}.param-value input{width:80px;padding:6px 8px;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);text-align:right;font-size:13px;transition:border-color .2s}.param-value input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.param-note{color:var(--color-text-secondary);font-size:12px}.result-label{font-weight:500}.result-value{color:var(--color-primary);font-weight:700}.chart-container{position:relative;height:400px;margin:20px 0}@media (max-width: 768px){.header-top{flex-direction:column;gap:12px;padding:12px 16px}.search-section{padding:16px}.search-box{flex-direction:column}.search-input-wrapper{width:100%;min-width:100%}.search-box button{width:100%}.tabs-container{padding:0 16px 24px}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{padding:10px 16px;font-size:13px;white-space:nowrap}}
