.portal-layout[data-v-bc2f0048]{display:flex;flex-direction:column;min-height:100vh}.portal-header[data-v-bc2f0048]{position:sticky;top:0;z-index:100;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e5e7eb}.header-inner[data-v-bc2f0048]{display:flex;align-items:center;justify-content:space-between;height:64px}.brand[data-v-bc2f0048]{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:#111827}.brand-icon[data-v-bc2f0048]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-radius:8px;font-size:18px}.main-nav[data-v-bc2f0048]{display:flex;gap:8px}.nav-link[data-v-bc2f0048]{padding:8px 16px;border-radius:8px;font-size:15px;font-weight:500;color:#4b5563;transition:all .2s}.nav-link[data-v-bc2f0048]:hover,.nav-link.active[data-v-bc2f0048]{color:#2563eb;background-color:#eff6ff}.header-actions[data-v-bc2f0048]{display:flex;align-items:center;gap:12px}.user-name[data-v-bc2f0048]{font-size:14px;font-weight:500;color:#374151}.portal-main[data-v-bc2f0048]{flex:1}.portal-footer[data-v-bc2f0048]{background-color:#fff;border-top:1px solid #e5e7eb;padding:32px 0}.footer-inner[data-v-bc2f0048]{text-align:center}.footer-inner p[data-v-bc2f0048]{margin:0;font-size:14px}.footer-inner p+p[data-v-bc2f0048]{margin-top:6px}.fade-enter-active[data-v-bc2f0048],.fade-leave-active[data-v-bc2f0048]{transition:opacity .2s ease}.fade-enter-from[data-v-bc2f0048],.fade-leave-to[data-v-bc2f0048]{opacity:0}.intelligence-card[data-v-eafe9ea2]{display:block;min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s}.intelligence-card[data-v-eafe9ea2]:hover{border-color:#bfdbfe;box-shadow:0 4px 12px #2563eb14}.card-header-row[data-v-eafe9ea2]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.card-time[data-v-eafe9ea2]{margin-left:auto;font-size:13px;color:#9ca3af;white-space:nowrap;flex-shrink:0}.card-title[data-v-eafe9ea2]{margin:0 0 10px;font-size:17px;font-weight:600;line-height:1.4;color:#111827;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-summary[data-v-eafe9ea2]{margin:0 0 16px;font-size:14px;line-height:1.6;color:#6b7280;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-footer-row[data-v-eafe9ea2]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.card-tags[data-v-eafe9ea2]{display:flex;gap:8px;flex-wrap:wrap;min-width:0}.card-source[data-v-eafe9ea2]{font-size:13px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}.hero-section[data-v-ff9a5f71]{background:linear-gradient(135deg,#eff6ff,#fff);padding:72px 0 64px}.hero-inner[data-v-ff9a5f71]{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center}.hero-title[data-v-ff9a5f71]{margin:0 0 20px;font-size:40px;font-weight:700;line-height:1.2;color:#111827}.hero-desc[data-v-ff9a5f71]{margin:0 0 28px;font-size:16px;line-height:1.7;color:#4b5563}.hero-actions[data-v-ff9a5f71]{display:flex;gap:16px}.hero-btn[data-v-ff9a5f71]{padding:12px 24px;font-size:15px}.hero-stats[data-v-ff9a5f71]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-card[data-v-ff9a5f71]{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px;text-align:center}.stat-value[data-v-ff9a5f71]{font-size:28px;font-weight:700;color:#2563eb}.stat-label[data-v-ff9a5f71]{margin-top:6px;font-size:14px;color:#6b7280}.category-section[data-v-ff9a5f71]{padding:48px 0 32px}.category-grid[data-v-ff9a5f71]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.category-card[data-v-ff9a5f71]{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s}.category-card[data-v-ff9a5f71]:hover{border-color:#bfdbfe;transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.category-name[data-v-ff9a5f71]{font-size:16px;font-weight:600;color:#1f2937}.category-arrow[data-v-ff9a5f71]{color:#9ca3af;font-size:18px}.hot-section[data-v-ff9a5f71]{padding-bottom:64px}.section-header[data-v-ff9a5f71]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.section-header .section-title[data-v-ff9a5f71]{margin-bottom:0}.more-link[data-v-ff9a5f71]{font-size:14px;color:#2563eb;font-weight:500}.more-link[data-v-ff9a5f71]:hover{text-decoration:underline}.loading-tip[data-v-ff9a5f71]{padding:40px 0;text-align:center;color:#6b7280}.login-tip[data-v-ff9a5f71]{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px 0;color:#6b7280}.login-tip p[data-v-ff9a5f71]{margin:0;font-size:15px}.intelligence-grid[data-v-ff9a5f71]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 1024px){.hero-inner[data-v-ff9a5f71]{grid-template-columns:1fr}.category-grid[data-v-ff9a5f71],.intelligence-grid[data-v-ff9a5f71]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.hero-title[data-v-ff9a5f71]{font-size:28px}.hero-actions[data-v-ff9a5f71]{flex-direction:column}.hero-stats[data-v-ff9a5f71],.category-grid[data-v-ff9a5f71],.intelligence-grid[data-v-ff9a5f71]{grid-template-columns:1fr}}.list-view[data-v-42fc0950]{padding:40px 0 64px}.page-header[data-v-42fc0950]{margin-bottom:24px}.page-title[data-v-42fc0950]{margin:0 0 8px;font-size:28px;font-weight:700;color:#111827}.page-desc[data-v-42fc0950]{margin:0;font-size:15px;color:#6b7280}.filter-bar[data-v-42fc0950]{margin-bottom:24px}.filter-row[data-v-42fc0950]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0}.filter-row+.filter-row[data-v-42fc0950]{border-top:1px solid #f3f4f6}.search-input[data-v-42fc0950]{flex:1;min-width:240px;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none}.search-input[data-v-42fc0950]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.filter-group[data-v-42fc0950]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-label[data-v-42fc0950]{font-size:14px;color:#6b7280}.filter-option[data-v-42fc0950]{padding:6px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:13px;color:#4b5563;transition:all .2s}.filter-option[data-v-42fc0950]:hover{border-color:#bfdbfe;color:#2563eb}.filter-option.active[data-v-42fc0950]{background:#eff6ff;border-color:#bfdbfe;color:#2563eb;font-weight:500}.results-meta[data-v-42fc0950]{margin-bottom:16px;font-size:14px;color:#6b7280}.loading-tip[data-v-42fc0950],.empty-tip[data-v-42fc0950]{padding:60px 0;text-align:center;color:#6b7280;background:#fff;border-radius:12px}.intelligence-grid[data-v-42fc0950]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pagination[data-v-42fc0950]{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:32px}.page-btn[data-v-42fc0950]{padding:8px 16px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:14px;color:#374151}.page-btn[data-v-42fc0950]:hover:not(:disabled){border-color:#2563eb;color:#2563eb}.page-btn[data-v-42fc0950]:disabled{opacity:.5;cursor:not-allowed}.page-info[data-v-42fc0950]{font-size:14px;color:#6b7280}@media (max-width: 1024px){.intelligence-grid[data-v-42fc0950]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.intelligence-grid[data-v-42fc0950]{grid-template-columns:1fr}}.detail-view[data-v-156917f9]{padding:24px 0 64px}.breadcrumb[data-v-156917f9]{display:flex;align-items:center;gap:8px;margin-bottom:20px;font-size:14px;color:#6b7280}.breadcrumb a[data-v-156917f9]{color:#2563eb}.breadcrumb a[data-v-156917f9]:hover{text-decoration:underline}.sep[data-v-156917f9]{color:#d1d5db}.current[data-v-156917f9]{color:#1f2937}.detail-layout[data-v-156917f9]{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}.detail-main[data-v-156917f9]{min-height:400px}.detail-header[data-v-156917f9]{padding-bottom:20px;border-bottom:1px solid #f3f4f6}.detail-tags[data-v-156917f9]{display:flex;gap:8px;margin-bottom:14px}.detail-title[data-v-156917f9]{margin:0 0 14px;font-size:26px;font-weight:700;line-height:1.4;color:#111827}.detail-meta[data-v-156917f9]{display:flex;flex-wrap:wrap;gap:16px;font-size:14px;color:#6b7280}.detail-body[data-v-156917f9]{padding:24px 0}.detail-block[data-v-156917f9]{margin-bottom:28px}.detail-block[data-v-156917f9]:last-child{margin-bottom:0}.block-title[data-v-156917f9]{margin:0 0 12px;font-size:17px;font-weight:600;color:#111827}.summary-text[data-v-156917f9]{margin:0;padding:16px;background:#f0f9ff;border-left:4px solid #2563eb;border-radius:8px;font-size:15px;line-height:1.7;color:#1e3a8a}.content-text[data-v-156917f9]{margin:0;font-size:15px;line-height:1.8;color:#374151;white-space:pre-line}.keyword-list[data-v-156917f9]{display:flex;flex-wrap:wrap;gap:10px}.attachment-list[data-v-156917f9]{display:flex;flex-direction:column;gap:10px}.attachment-item[data-v-156917f9]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid #e5e7eb;border-radius:10px;background:#f9fafb;transition:border-color .2s}.attachment-item[data-v-156917f9]:hover{border-color:#93c5fd;background:#f0f7ff}.attachment-info[data-v-156917f9]{display:flex;align-items:center;gap:12px;min-width:0}.attachment-icon[data-v-156917f9]{font-size:20px;flex-shrink:0}.attachment-meta[data-v-156917f9]{display:flex;flex-direction:column;gap:3px;min-width:0}.attachment-name[data-v-156917f9]{font-size:14px;font-weight:500;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-desc[data-v-156917f9]{font-size:12px;color:#9ca3af}.btn-sm[data-v-156917f9]{height:34px;padding:0 16px;font-size:13px;flex-shrink:0}.detail-actions[data-v-156917f9]{display:flex;gap:12px;padding-top:20px;border-top:1px solid #f3f4f6}.detail-sidebar[data-v-156917f9]{display:flex;flex-direction:column;gap:20px}.sidebar-title[data-v-156917f9]{margin:0 0 16px;font-size:16px;font-weight:600;color:#111827}.source-item[data-v-156917f9]{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f3f4f6;font-size:14px}.source-item[data-v-156917f9]:last-child{border-bottom:none}.source-label[data-v-156917f9]{color:#6b7280}.source-value[data-v-156917f9]{color:#1f2937;font-weight:500}.related-list[data-v-156917f9]{display:flex;flex-direction:column;gap:12px}.related-item[data-v-156917f9]{padding:12px;border-radius:8px;background:#f9fafb;transition:background .2s}.related-item[data-v-156917f9]:hover{background:#f3f4f6}.related-title[data-v-156917f9]{font-size:14px;font-weight:500;line-height:1.5;color:#1f2937;margin-bottom:6px}.related-meta[data-v-156917f9]{font-size:12px;color:#2563eb}.loading-tip[data-v-156917f9]{padding:80px 0;text-align:center;color:#6b7280}@media (max-width: 1024px){.detail-layout[data-v-156917f9]{grid-template-columns:1fr}}.knowledge-view[data-v-d414d636]{padding:24px 0 64px}.page-header[data-v-d414d636]{margin-bottom:24px}.page-title[data-v-d414d636]{margin:0 0 8px;font-size:28px;font-weight:700;color:#111827}.page-desc[data-v-d414d636]{margin:0;font-size:15px;color:#6b7280}.knowledge-layout[data-v-d414d636]{display:grid;grid-template-columns:1fr 320px;gap:24px;align-items:start}.qa-area[data-v-d414d636]{padding:28px;min-height:500px}.history-area[data-v-d414d636]{padding:20px;max-height:700px;overflow-y:auto}.ask-box[data-v-d414d636]{display:flex;gap:12px;margin-bottom:16px}.ask-input[data-v-d414d636]{flex:1;height:46px;padding:0 16px;border:1px solid #d1d5db;border-radius:10px;font-size:15px;color:#111827;background:#fff;outline:none;transition:all .2s}.ask-input[data-v-d414d636]::placeholder{color:#9ca3af}.ask-input[data-v-d414d636]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.ask-btn[data-v-d414d636]{min-width:90px;height:46px;font-size:15px}.suggestions[data-v-d414d636]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #f3f4f6}.suggestion-label[data-v-d414d636]{font-size:13px;color:#9ca3af}.suggestion-chip[data-v-d414d636]{padding:6px 14px;border:1px solid #e5e7eb;border-radius:20px;background:#f9fafb;font-size:13px;color:#4b5563;cursor:pointer;transition:all .2s}.suggestion-chip[data-v-d414d636]:hover{border-color:#93c5fd;background:#eff6ff;color:#2563eb}.loading-answer[data-v-d414d636]{display:flex;align-items:center;gap:12px;padding:32px 0}.typing-indicator[data-v-d414d636]{display:flex;gap:4px}.typing-indicator span[data-v-d414d636]{width:8px;height:8px;border-radius:50%;background:#2563eb;animation:typing-d414d636 1.4s infinite ease-in-out}.typing-indicator span[data-v-d414d636]:nth-child(2){animation-delay:.2s}.typing-indicator span[data-v-d414d636]:nth-child(3){animation-delay:.4s}@keyframes typing-d414d636{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-8px);opacity:1}}.typing-text[data-v-d414d636]{font-size:14px;color:#6b7280}.answer-panel[data-v-d414d636]{animation:fadeIn-d414d636 .3s ease}@keyframes fadeIn-d414d636{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.answer-section[data-v-d414d636]{margin-bottom:24px}.answer-section[data-v-d414d636]:last-child{margin-bottom:0}.section-title[data-v-d414d636]{margin:0 0 12px;font-size:15px;font-weight:600;color:#111827}.answer-question[data-v-d414d636]{margin:0;padding:14px 16px;background:#f3f4f6;border-radius:8px;font-size:14px;color:#374151;line-height:1.6}.answer-content[data-v-d414d636]{font-size:15px;line-height:1.8;color:#374151;white-space:pre-line}.source-list[data-v-d414d636]{display:flex;flex-direction:column;gap:10px}.source-item[data-v-d414d636]{display:flex;gap:10px;padding:12px 14px;background:#f9fafb;border-radius:8px;text-decoration:none;transition:all .2s}.source-item[data-v-d414d636]:hover{background:#eff6ff;border-color:#93c5fd}.source-index[data-v-d414d636]{font-size:13px;color:#2563eb;font-weight:600;flex-shrink:0}.source-info[data-v-d414d636]{display:flex;flex-direction:column;gap:6px;min-width:0}.source-title[data-v-d414d636]{font-size:14px;font-weight:500;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-meta[data-v-d414d636]{display:flex;gap:8px;align-items:center}.source-name[data-v-d414d636]{font-size:12px;color:#9ca3af}.empty-tip[data-v-d414d636]{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 0;color:#9ca3af}.empty-icon[data-v-d414d636]{font-size:40px}.empty-tip p[data-v-d414d636]{margin:0;font-size:14px}.empty-tip-small[data-v-d414d636]{padding:24px 0;text-align:center;color:#9ca3af;font-size:14px}.history-list[data-v-d414d636]{display:flex;flex-direction:column;gap:8px}.history-item[data-v-d414d636]{padding:12px;border-radius:8px;cursor:pointer;transition:background .2s}.history-item[data-v-d414d636]:hover,.history-item.active[data-v-d414d636]{background:#eff6ff}.history-question[data-v-d414d636]{font-size:14px;font-weight:500;color:#1f2937;margin-bottom:6px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.history-meta[data-v-d414d636]{display:flex;justify-content:space-between;align-items:center;font-size:12px}.history-date[data-v-d414d636]{color:#9ca3af}.btn-delete[data-v-d414d636]{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:13px;padding:2px 6px;border-radius:4px;line-height:1;transition:all .2s}.btn-delete[data-v-d414d636]:hover{background:#fef2f2;color:#dc2626}.loading-tip[data-v-d414d636]{padding:80px 0;text-align:center;color:#6b7280}@media (max-width: 900px){.knowledge-layout[data-v-d414d636]{grid-template-columns:1fr}.history-area[data-v-d414d636]{max-height:none}}.login-page[data-v-9d6cb8ee]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#eff6ff,#f0f9ff 40%,#e0f2fe);position:relative;overflow:hidden}.bg-decoration[data-v-9d6cb8ee]{position:absolute;border-radius:50%;filter:blur(60px);opacity:.45;pointer-events:none}.bg-decoration-1[data-v-9d6cb8ee]{width:420px;height:420px;background:#bfdbfe;top:-120px;right:-80px}.bg-decoration-2[data-v-9d6cb8ee]{width:360px;height:360px;background:#dbeafe;bottom:-100px;left:-60px}.login-wrapper[data-v-9d6cb8ee]{display:flex;width:100%;max-width:980px;min-height:560px;background:#fff;border-radius:24px;box-shadow:0 20px 60px #1e40af1f,0 8px 24px #0000000a;overflow:hidden;position:relative;z-index:1}.login-brand-side[data-v-9d6cb8ee]{flex:1;display:flex;flex-direction:column;justify-content:center;padding:56px 48px;background:linear-gradient(160deg,#2563eb,#1d4ed8 60%,#1e40af);color:#fff}.brand-logo[data-v-9d6cb8ee]{display:flex;align-items:center;gap:12px;margin-bottom:32px}.brand-logo .brand-icon[data-v-9d6cb8ee]{width:44px;height:44px;border-radius:12px;background:#ffffff2e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:inline-flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff}.brand-name[data-v-9d6cb8ee]{font-size:18px;font-weight:600;letter-spacing:.5px}.brand-headline[data-v-9d6cb8ee]{margin:0 0 16px;font-size:28px;font-weight:700;line-height:1.35}.brand-desc[data-v-9d6cb8ee]{margin:0 0 36px;font-size:15px;line-height:1.7;color:#ffffffd9}.brand-features[data-v-9d6cb8ee]{display:flex;flex-direction:column;gap:14px}.feature-item[data-v-9d6cb8ee]{display:flex;align-items:center;gap:10px;font-size:14px;color:#ffffffeb}.feature-dot[data-v-9d6cb8ee]{width:8px;height:8px;border-radius:50%;background:#93c5fd;box-shadow:0 0 0 4px #93c5fd40}.login-box[data-v-9d6cb8ee]{width:420px;padding:52px 44px;display:flex;flex-direction:column;justify-content:center}.login-header[data-v-9d6cb8ee]{text-align:center;margin-bottom:36px}.login-header .mobile-only[data-v-9d6cb8ee]{display:none}.login-title[data-v-9d6cb8ee]{margin:0 0 8px;font-size:26px;font-weight:700;color:#111827}.login-subtitle[data-v-9d6cb8ee]{margin:0;font-size:14px;color:#6b7280}.role-cards[data-v-9d6cb8ee]{display:flex;flex-direction:column;gap:16px}.role-card[data-v-9d6cb8ee]{display:flex;align-items:center;gap:16px;padding:20px 22px;border:2px solid #e5e7eb;border-radius:14px;background:#fff;cursor:pointer;transition:all .25s;text-align:left;width:100%}.role-card[data-v-9d6cb8ee]:hover{border-color:#2563eb;background:#f8faff;transform:translateY(-2px);box-shadow:0 8px 24px #2563eb1a}.role-icon-wrap[data-v-9d6cb8ee]{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:12px;flex-shrink:0}.role-icon-wrap svg[data-v-9d6cb8ee]{width:26px;height:26px}.admin-icon[data-v-9d6cb8ee]{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.analyst-icon[data-v-9d6cb8ee]{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.role-info[data-v-9d6cb8ee]{flex:1;display:flex;flex-direction:column;gap:4px}.role-name[data-v-9d6cb8ee]{font-size:16px;font-weight:600;color:#111827}.role-desc[data-v-9d6cb8ee]{font-size:13px;color:#9ca3af}.role-arrow[data-v-9d6cb8ee]{width:20px;height:20px;color:#9ca3af;flex-shrink:0;transition:all .2s}.role-card:hover .role-arrow[data-v-9d6cb8ee]{color:#2563eb;transform:translate(4px)}.back-btn[data-v-9d6cb8ee]{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:28px;padding:10px 16px;border:none;background:transparent;color:#6b7280;font-size:14px;cursor:pointer;transition:color .2s}.back-btn[data-v-9d6cb8ee]:hover{color:#2563eb}.back-btn svg[data-v-9d6cb8ee]{transition:transform .2s}.back-btn:hover svg[data-v-9d6cb8ee]{transform:translate(-3px)}.register-link[data-v-9d6cb8ee]{margin-top:16px;text-align:center;font-size:14px;color:#6b7280}.register-link a[data-v-9d6cb8ee]{color:#2563eb;cursor:pointer;font-weight:500}.register-link a[data-v-9d6cb8ee]:hover{text-decoration:underline}.portal-login[data-v-9d6cb8ee]{margin-top:24px}.divider[data-v-9d6cb8ee]{display:flex;align-items:center;gap:12px;margin-bottom:16px;color:#9ca3af;font-size:13px}.divider[data-v-9d6cb8ee]:before,.divider[data-v-9d6cb8ee]:after{content:"";flex:1;height:1px;background:#e5e7eb}.portal-form[data-v-9d6cb8ee]{display:flex;flex-direction:column;gap:10px}.portal-input[data-v-9d6cb8ee]{width:100%;height:42px;padding:0 14px;border:1px solid #d1d5db;border-radius:10px;font-size:14px;color:#111827;background:#fff;outline:none;transition:all .2s}.portal-input[data-v-9d6cb8ee]::placeholder{color:#9ca3af}.portal-input[data-v-9d6cb8ee]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.portal-error[data-v-9d6cb8ee]{font-size:13px;color:#dc2626;padding:6px 0}.portal-login-btn[data-v-9d6cb8ee]{height:44px;border:none;border-radius:10px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .25s;box-shadow:0 4px 14px #2563eb4d}.portal-login-btn[data-v-9d6cb8ee]:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px)}.portal-login-btn[data-v-9d6cb8ee]:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 800px){.login-page[data-v-9d6cb8ee]{padding:16px;align-items:flex-start}.login-wrapper[data-v-9d6cb8ee]{flex-direction:column;max-width:420px;min-height:auto;margin-top:8vh}.login-brand-side[data-v-9d6cb8ee]{display:none}.login-box[data-v-9d6cb8ee]{width:100%;padding:40px 28px}.login-header .mobile-only[data-v-9d6cb8ee]{display:inline-flex;width:52px;height:52px;margin-bottom:16px;background:linear-gradient(135deg,#2563eb,#1d4ed8)}.login-title[data-v-9d6cb8ee]{font-size:22px}}.register-page[data-v-8c30f85a]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#eff6ff,#f0f9ff 40%,#e0f2fe);position:relative;overflow:hidden}.bg-decoration[data-v-8c30f85a]{position:absolute;border-radius:50%;filter:blur(60px);opacity:.45;pointer-events:none}.bg-decoration-1[data-v-8c30f85a]{width:420px;height:420px;background:#bfdbfe;top:-120px;right:-80px}.bg-decoration-2[data-v-8c30f85a]{width:360px;height:360px;background:#dbeafe;bottom:-100px;left:-60px}.register-wrapper[data-v-8c30f85a]{display:flex;width:100%;max-width:980px;min-height:600px;background:#fff;border-radius:24px;box-shadow:0 20px 60px #1e40af1f,0 8px 24px #0000000a;overflow:hidden;position:relative;z-index:1}.brand-side[data-v-8c30f85a]{flex:1;display:flex;flex-direction:column;justify-content:center;padding:56px 48px;background:linear-gradient(160deg,#2563eb,#1d4ed8 60%,#1e40af);color:#fff}.brand-logo[data-v-8c30f85a]{display:flex;align-items:center;gap:12px;margin-bottom:32px}.brand-logo .brand-icon[data-v-8c30f85a]{width:44px;height:44px;border-radius:12px;background:#ffffff2e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:inline-flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff}.brand-name[data-v-8c30f85a]{font-size:18px;font-weight:600;letter-spacing:.5px}.brand-headline[data-v-8c30f85a]{margin:0 0 16px;font-size:28px;font-weight:700;line-height:1.35}.brand-desc[data-v-8c30f85a]{margin:0 0 36px;font-size:15px;line-height:1.7;color:#ffffffd9}.brand-features[data-v-8c30f85a]{display:flex;flex-direction:column;gap:14px}.feature-item[data-v-8c30f85a]{display:flex;align-items:center;gap:10px;font-size:14px;color:#ffffffeb}.feature-dot[data-v-8c30f85a]{width:8px;height:8px;border-radius:50%;background:#93c5fd;box-shadow:0 0 0 4px #93c5fd40}.register-box[data-v-8c30f85a]{width:420px;padding:48px 44px;display:flex;flex-direction:column;justify-content:center}.register-header[data-v-8c30f85a]{text-align:center;margin-bottom:28px}.register-header .mobile-only[data-v-8c30f85a]{display:none}.register-title[data-v-8c30f85a]{margin:0 0 8px;font-size:26px;font-weight:700;color:#111827}.register-subtitle[data-v-8c30f85a]{margin:0;font-size:14px;color:#6b7280}.register-form .form-group[data-v-8c30f85a]{margin-bottom:18px}.form-label[data-v-8c30f85a]{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#374151}.input-wrap[data-v-8c30f85a]{position:relative;display:flex;align-items:center}.input-icon[data-v-8c30f85a]{position:absolute;left:14px;width:18px;height:18px;color:#9ca3af;pointer-events:none;transition:color .2s}.form-input[data-v-8c30f85a]{width:100%;height:44px;padding:0 14px 0 42px;border:1px solid #d1d5db;border-radius:10px;font-size:14px;color:#111827;background:#fff;transition:all .2s;outline:none}.form-input[data-v-8c30f85a]::placeholder{color:#9ca3af}.form-input[data-v-8c30f85a]:hover{border-color:#9ca3af}.form-input[data-v-8c30f85a]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.input-wrap:focus-within .input-icon[data-v-8c30f85a]{color:#2563eb}.code-wrap[data-v-8c30f85a]{padding-right:0}.code-wrap .form-input[data-v-8c30f85a]{padding-right:118px}.code-btn[data-v-8c30f85a]{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:32px;padding:0 12px;border:none;border-radius:8px;background:#eff6ff;color:#2563eb;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;transition:all .2s}.code-btn[data-v-8c30f85a]:hover:not(:disabled){background:#dbeafe}.code-btn[data-v-8c30f85a]:disabled{opacity:.6;cursor:not-allowed}.error-msg[data-v-8c30f85a]{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:13px;color:#dc2626}.error-icon[data-v-8c30f85a]{width:16px;height:16px;flex-shrink:0}.success-msg[data-v-8c30f85a]{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding:10px 14px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;font-size:13px;color:#16a34a}.success-icon[data-v-8c30f85a]{width:16px;height:16px;flex-shrink:0}.register-btn[data-v-8c30f85a]{width:100%;height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:10px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:15px;font-weight:600;letter-spacing:1px;cursor:pointer;transition:all .25s;box-shadow:0 4px 14px #2563eb59}.register-btn[data-v-8c30f85a]:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 20px #2563eb73;transform:translateY(-1px)}.register-btn[data-v-8c30f85a]:active:not(:disabled){transform:translateY(0)}.register-btn[data-v-8c30f85a]:disabled{opacity:.75;cursor:not-allowed}.btn-spinner[data-v-8c30f85a]{width:18px;height:18px;animation:spin-8c30f85a 1s linear infinite}@keyframes spin-8c30f85a{to{transform:rotate(360deg)}}.register-link[data-v-8c30f85a]{margin-top:18px;text-align:center;font-size:14px;color:#6b7280}.register-link a[data-v-8c30f85a]{color:#2563eb;cursor:pointer;font-weight:500}.register-link a[data-v-8c30f85a]:hover{text-decoration:underline}@media (max-width: 800px){.register-page[data-v-8c30f85a]{padding:16px;align-items:flex-start}.register-wrapper[data-v-8c30f85a]{flex-direction:column;max-width:420px;min-height:auto;margin-top:4vh}.brand-side[data-v-8c30f85a]{display:none}.register-box[data-v-8c30f85a]{width:100%;padding:36px 28px}.register-header .mobile-only[data-v-8c30f85a]{display:inline-flex;width:52px;height:52px;margin-bottom:16px;background:linear-gradient(135deg,#2563eb,#1d4ed8)}.register-title[data-v-8c30f85a]{font-size:22px}}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans SC,sans-serif;color:#1f2937;background-color:#f8fafc}#app{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.container{max-width:1200px;margin:0 auto;padding:0 24px}.card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:20px}.tag{display:inline-block;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:500;line-height:1}.tag-primary{background-color:#eff6ff;color:#2563eb}.tag-success{background-color:#f0fdf4;color:#16a34a}.tag-warning{background-color:#fffbeb;color:#d97706}.tag-info{background-color:#f3f4f6;color:#4b5563}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border:1px solid transparent;border-radius:8px;font-size:14px;font-weight:500;transition:all .2s}.btn-primary{background-color:#2563eb;color:#fff}.btn-primary:hover{background-color:#1d4ed8}.btn-outline{background-color:#fff;border-color:#d1d5db;color:#374151}.btn-outline:hover{background-color:#f9fafb;border-color:#9ca3af}.section-title{font-size:20px;font-weight:600;margin:0 0 16px;color:#111827}.text-secondary{color:#6b7280}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .3s ease-out}
