*{box-sizing:border-box;margin:0;padding:0}body{color:#e2e8f0;background:#0f172a;min-height:100vh;padding:20px;font-family:system-ui,-apple-system,sans-serif}.app-header{margin-bottom:20px}h1{color:#38bdf8;margin-bottom:10px;font-size:28px}h2{color:#f1f5f9;margin:0}h3{color:#94a3b8;margin:0 0 12px;font-size:14px}.controls{background:#1e293b;border:1px solid #334155;border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.control-group{flex-direction:column;gap:4px;display:flex}.control-group label{color:#64748b;text-transform:uppercase;font-size:11px;font-weight:500}.checkbox-label{cursor:pointer;align-items:center;padding-top:20px;flex-direction:row!important;gap:8px!important}select,input[type=number],button{color:#e2e8f0;background:#0f172a;border:1px solid #334155;border-radius:6px;min-width:120px;padding:8px 12px;font-size:14px}input[type=number]{width:100px}input[type=checkbox]{cursor:pointer;width:18px;height:18px}button{cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6;padding:10px 20px;font-weight:600;transition:all .2s}button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}.stats-bar{background:#1e293b;border:1px solid #334155;border-radius:8px;margin-bottom:20px;padding:12px 20px;font-size:14px}.stats-bar span{color:#38bdf8;font-weight:600}#sourceStats{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.client-summary-banner{background:linear-gradient(135deg,#1e3a5f 0%,#1e293b 100%);border:1px solid #334155;border-radius:16px;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:24px;padding:16px 20px;display:grid}.summary-stat{text-align:center;min-width:0}.summary-stat-value{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;font-size:22px;font-weight:700;overflow:hidden}.summary-stat-sub{color:#94a3b8;font-size:14px;font-weight:400}.summary-stat-label{color:#64748b;text-transform:uppercase;white-space:nowrap;margin-top:4px;font-size:11px}.stat-loading{border:2px solid #334155;border-top-color:#38bdf8;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:inline-block}.client-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.client-card{cursor:pointer;background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px;transition:all .2s}.client-card:hover{border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.client-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.client-name{color:#f1f5f9;font-size:18px;font-weight:600}.client-badges{flex-wrap:wrap;gap:6px;display:flex}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:700}.badge-high-value{color:#86efac;background:#166534}.badge-new{color:#93c5fd;background:#1e40af}.badge-at-risk{color:#fca5a5;background:#991b1b}.client-card-body{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.client-aum{flex-direction:column;display:flex}.aum-value{color:#22d3ee;font-size:24px;font-weight:700}.aum-label{color:#64748b;text-transform:uppercase;font-size:11px}.client-trend{align-items:center;gap:8px;display:flex}.sparkline{opacity:.8}.perf-indicator{border-radius:4px;padding:2px 6px;font-size:13px;font-weight:600}.perf-indicator.positive{color:#4ade80;background:#22c55e33}.perf-indicator.negative{color:#f87171;background:#ef444433}.perf-period{opacity:.7;vertical-align:super;margin-left:2px;font-size:9px;font-weight:500}.client-meta{color:#94a3b8;gap:12px;margin-bottom:12px;font-size:13px;display:flex}.client-state{background:#334155;border-radius:4px;padding:2px 8px}.client-id{color:#64748b}.client-matches{border-bottom:1px solid #334155;flex-wrap:wrap;gap:8px;margin-bottom:16px;padding-bottom:16px;display:flex}.no-matches{color:#64748b;font-size:12px;font-style:italic}.client-actions{justify-content:flex-end;gap:8px;display:flex}.action-btn{color:#94a3b8;cursor:pointer;background:#0f172a;border:1px solid #334155;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;text-decoration:none;transition:all .2s;display:flex}.action-btn:hover{color:#f1f5f9;background:#334155}.action-btn-primary{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6}.action-btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.source-badge{text-transform:uppercase;text-align:center;border-radius:4px;min-width:35px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-block}.source-nic{color:#93c5fd;background:#1e40af}.source-ibexis{color:#c4b5fd;background:#7c3aed}.source-proformex{color:#99f6e4;background:#0d9488}.source-allianz{color:#7dd3fc;background:#0369a1}.loading{text-align:center;color:#64748b;padding:60px;font-size:16px}.error{color:#fca5a5;background:#7f1d1d;border-radius:8px;margin-bottom:20px;padding:12px 16px}table{border-collapse:collapse;background:#1e293b;border-radius:8px;width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid #334155;padding:10px 12px;font-size:14px}th{color:#94a3b8;text-transform:uppercase;background:#334155;font-size:11px;font-weight:600}tr:hover{background:#33415580}.confidence{border-radius:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.conf-high{color:#86efac;background:#166534}.conf-med{color:#fde047;background:#854d0e}.conf-low{color:#fca5a5;background:#991b1b}.reasoning{color:#94a3b8;max-width:300px;font-size:12px}.detail-header{border-bottom:1px solid #334155;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:15px;display:flex}.detail-header button{background:#475569;border-color:#475569}.detail-header h2{flex-grow:1}.client-id-badge{color:#94a3b8;background:#334155;border-radius:4px;padding:4px 10px;font-size:12px}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;margin-bottom:20px;display:grid}.detail-card{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:16px}.detail-card.full-width{grid-column:1/-1}.detail-card h3{border-bottom:1px solid #334155;margin-bottom:12px;padding-bottom:10px}.info-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.info-item{flex-direction:column;gap:2px;display:flex}.info-item label{color:#64748b;text-transform:uppercase;font-size:11px}.info-item span{color:#e2e8f0;font-size:14px}.status-badge{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.status-badge.active{color:#86efac;background:#166534}.status-badge.inactive{color:#fca5a5;background:#7f1d1d}.sub-table{margin-top:10px}.sub-table th{font-size:10px}.sub-table td{font-size:13px}.sub-table.compact td,.sub-table.compact th{padding:6px 10px;font-size:12px}.no-data{text-align:center;color:#64748b;padding:20px;font-style:italic}.source-record-row,.source-record-row:hover{background:#0f172a}.source-detail{border-radius:6px;margin:4px 0;padding:12px 16px;font-size:13px}.source-detail .detail-row{padding:3px 0}.source-detail .detail-row strong{color:#94a3b8;min-width:100px;display:inline-block}.source-nic-detail{background:#1e40af33;border-left:3px solid #3b82f6}.source-ibexis-detail{background:#7c3aed33;border-left:3px solid #8b5cf6}.source-proformex-detail{background:#0d948833;border-left:3px solid #14b8a6}.source-allianz-detail{background:#0369a133;border-left:3px solid #0ea5e9}.match-cards{grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:16px;margin-top:4px;display:grid}.match-card{background:#0a1628;border:1px solid #334155;border-radius:10px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.match-card:hover{box-shadow:0 6px 20px #0006}.match-card-nic{border-color:#3b82f659}.match-card-nic:hover{border-color:#3b82f699}.match-card-ibexis{border-color:#8b5cf659}.match-card-ibexis:hover{border-color:#8b5cf699}.match-card-proformex{border-color:#14b8a659}.match-card-proformex:hover{border-color:#14b8a699}.match-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:11px 16px;display:flex}.match-card-nic .match-card-header{background:#1e40af38;border-bottom:1px solid #3b82f640}.match-card-ibexis .match-card-header{background:#7c3aed38;border-bottom:1px solid #8b5cf640}.match-card-proformex .match-card-header{background:#0d948838;border-bottom:1px solid #14b8a640}.match-card-source-info{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.match-card-identity{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.match-card-body{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.match-field-grid{grid-template-columns:repeat(2,1fr);gap:8px 20px;display:grid}.match-field{flex-direction:column;gap:2px;min-width:0;display:flex}.match-field-label{color:#475569;text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:700}.match-field-value{color:#cbd5e1;text-overflow:ellipsis;font-size:13px;line-height:1.4;overflow:hidden}.match-financials-row{background:#22c55e0f;border:1px solid #4ade8026;border-radius:8px;flex-wrap:wrap;gap:20px;padding:10px 14px;display:flex}.match-financial-item{flex-direction:column;gap:2px;display:flex}.financial-value{letter-spacing:-.3px;color:#4ade80!important;font-size:15px!important;font-weight:700!important}.match-advisors{flex-direction:column;gap:5px;display:flex}.match-advisor-list{flex-direction:column;gap:4px;margin-top:2px;display:flex}.match-advisor-item{color:#cbd5e1;background:#ffffff05;border-left:2px solid #334155;border-radius:0 4px 4px 0;padding:4px 10px;font-size:13px}.match-subtable-section{flex-direction:column;gap:5px;display:flex}.match-subtable-label{color:#475569;text-transform:uppercase;letter-spacing:.5px;font-size:10px;font-weight:700}.match-reasoning{color:#64748b;background:#ffffff06;border:1px solid #1e293b;border-radius:6px;padding:8px 10px;font-size:12px;line-height:1.5}.match-reasoning-label{color:#475569;margin-right:4px;font-weight:600}.match-loading{color:#64748b;padding:8px 0;font-size:13px;font-style:italic}@media (width<=768px){.match-cards,.match-field-grid{grid-template-columns:1fr}.match-financials-row{flex-direction:column;gap:10px}}.address-with-map{align-items:flex-start;gap:16px;display:flex}.address-with-map .info-grid{flex:1}.map-container{border:1px solid #334155;border-radius:8px;flex-shrink:0;width:200px;height:150px;overflow:hidden}.map-container iframe{border:none;width:100%;height:100%}.tax-badge{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.tax-badge.tax-deferred{color:#93c5fd;background:#1e3a5f}.tax-badge.taxable{color:#a1a1aa;background:#3f3f46}.asset-class,.account-type{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:11px;overflow:hidden}.positive{color:#4ade80}.negative{color:#f87171}.perf-summary{flex-direction:column;gap:16px;display:flex}.perf-item{flex-direction:column;gap:4px;display:flex}.perf-item label{color:#64748b;text-transform:uppercase;font-size:11px}.perf-value{font-size:28px;font-weight:600}.perf-value.positive{color:#4ade80}.perf-value.negative{color:#f87171}.risk-score{text-align:center;color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;width:32px;height:32px;font-size:12px;font-weight:600;line-height:32px;display:inline-block}.risk-indicator{border-radius:16px;padding:4px 12px;font-size:1.2rem;font-weight:600;display:inline-block}.risk-indicator.risk-low{color:#22c55e;background:#22c55e33}.risk-indicator.risk-medium{color:#eab308;background:#eab30833}.risk-indicator.risk-high{color:#ef4444;background:#ef444433}.risk-badge{border-radius:10px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.risk-badge.risk-low{color:#22c55e;background:#22c55e26}.risk-badge.risk-medium{color:#eab308;background:#eab30826}.risk-badge.risk-high{color:#ef4444;background:#ef444426}.allocation-chart{flex-direction:column;gap:8px;display:flex}.alloc-row{align-items:center;gap:10px;display:flex}.alloc-label{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;width:140px;font-size:12px;overflow:hidden}.alloc-bar-container{background:#1e293b;border-radius:4px;flex:1;height:16px;overflow:hidden}.alloc-bar{background:linear-gradient(90deg,#3b82f6,#06b6d4);border-radius:4px;min-width:2px;height:100%}.alloc-value{text-align:right;color:#e2e8f0;width:50px;font-size:12px;font-weight:600}.advisor-info{flex-direction:column;gap:8px;display:flex}.advisor-name{color:#f1f5f9;font-size:18px;font-weight:600}.advisor-contact{font-size:14px}.advisor-contact a{color:#38bdf8;text-decoration:none}.advisor-contact a:hover{text-decoration:underline}.advisor-company{color:#94a3b8;font-size:14px}.advisor-crd{color:#64748b;font-family:monospace;font-size:12px}.advisor-stats{gap:16px;padding:8px 0;display:flex}.advisor-stats .stat{color:#94a3b8;font-size:13px}.advisor-stats .stat strong{color:#22d3ee}.advisor-address{color:#64748b;font-size:13px}.advisor-status{color:#9ca3af;background:#374151;border-radius:4px;padding:4px 8px;font-size:12px;display:inline-block}.advisor-status.active{color:#34d399;background:#064e3b}.summary-banner{background:linear-gradient(135deg,#1e3a5f 0%,#1e293b 100%);border:1px solid #334155;border-radius:12px;gap:20px;margin-bottom:20px;padding:16px 24px;display:flex}.summary-banner-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.summary-item{text-align:center;flex:1}.summary-value{color:#f1f5f9;font-size:24px;font-weight:700}.summary-value.positive{color:#4ade80}.summary-value.negative{color:#f87171}.summary-label{color:#64748b;text-transform:uppercase;margin-top:4px;font-size:11px}.skeleton{background:linear-gradient(90deg,#334155 25%,#475569 50%,#334155 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s infinite skeleton-loading;color:#0000!important}.skeleton-sparkline{background:linear-gradient(90deg,#334155 25%,#475569 50%,#334155 75%) 0 0/200% 100%;border-radius:4px;width:60px;height:24px;animation:1.5s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.client-card.loading-orion{opacity:.85}.scroll-sentinel{width:100%;height:1px}.loading-more{text-align:center;color:#64748b;padding:20px}.loading-spinner{vertical-align:middle;border:3px solid #334155;border-top-color:#3b82f6;border-radius:50%;width:24px;height:24px;margin-right:10px;animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.search-group{flex:1;min-width:280px;max-width:350px}.search-group label{color:#38bdf8;font-weight:600}.search-wrapper{position:relative}.search-wrapper input[type=text]{color:#e2e8f0;background:#0f172a;border:2px solid #334155;border-radius:8px;width:100%;padding:10px 14px;font-size:15px;transition:all .2s}.search-wrapper input[type=text]::placeholder{color:#64748b}.search-wrapper input[type=text]:focus{border-color:#38bdf8;outline:none;box-shadow:0 0 0 3px #38bdf826}.search-dropdown{z-index:1000;background:#1e293b;border:1px solid #475569;border-radius:10px;min-width:320px;max-height:350px;margin-top:6px;display:none;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 15px 40px #00000080}.search-dropdown.visible{animation:.15s ease-out dropdownFade;display:block}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.search-item{cursor:pointer;border-bottom:1px solid #334155;align-items:center;gap:12px;padding:12px 14px;transition:all .15s;display:flex}.search-item:last-child{border-bottom:none}.search-item:hover{background:linear-gradient(90deg,#334155,#1e293b);padding-left:18px}.search-item.search-empty,.search-item.search-loading,.search-item.search-error{color:#64748b;cursor:default;justify-content:center;padding:16px}.search-item.search-loading{color:#38bdf8}.search-item.search-error{color:#f87171}.search-id{color:#38bdf8;text-align:center;background:#38bdf81a;border:1px solid #38bdf833;border-radius:6px;min-width:65px;padding:4px 10px;font-family:SF Mono,Monaco,monospace;font-size:13px;font-weight:600}.search-name{color:#f1f5f9;flex:1;font-size:14px;font-weight:500}.search-rep{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;background:#334155;border-radius:4px;max-width:120px;padding:3px 8px;font-size:11px;overflow:hidden}@media (width<=768px){.controls{flex-direction:column;align-items:stretch}.control-group,select,input[type=number]{width:100%}.client-summary-banner{grid-template-columns:repeat(3,1fr);gap:12px}.client-summary-banner .summary-stat-value{font-size:18px}.client-summary-banner .summary-stat-label{font-size:10px}.client-grid{grid-template-columns:1fr}}@media (width<=600px){.client-summary-banner{grid-template-columns:repeat(2,1fr)}}.dash-tabs{gap:4px;margin-left:auto;display:flex}.dash-tab{color:#94a3b8;cursor:pointer;background:#1e293b;border:1px solid #334155;border-radius:4px;padding:4px 14px;font-size:12px;font-weight:600;transition:all .15s}.dash-tab.active{color:#fff;background:#3b82f6;border-color:#3b82f6}.dash-tab:hover:not(.active){color:#e2e8f0;background:#334155}.variant-badge{color:#94a3b8;vertical-align:middle;background:#1e293b;border:1px solid #334155;border-radius:8px;margin-left:6px;padding:1px 6px;font-size:10px;display:inline-block}.yoy-badge{border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.yoy-badge.positive{color:#4ade80;background:#052e16}.yoy-badge.negative{color:#f87171;background:#450a0a}.yoy-badge.neutral{color:#94a3b8;background:#1e293b}.firm-header-row:hover{background:#1e293b!important}.firm-rep-row{background:#0f172a}.firm-rep-row td{color:#94a3b8;font-size:12px}.firm-toggle{color:#64748b;width:16px;font-size:10px;transition:transform .15s;display:inline-block}.advisor-row:hover{background:#1e293b!important}#advisor-detail-panel{margin-top:8px}.sortable-table thead{z-index:2;position:sticky;top:0}.sortable-th{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background .15s}.sortable-th:hover{background:#475569}.sortable-th.right{text-align:right}.sort-indicator{color:#475569;vertical-align:middle;width:14px;margin-left:4px;font-size:9px;display:inline-block}.sort-indicator.active{color:#38bdf8}.right{text-align:right}.th-narrow{width:36px}.table-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.table-toolbar h3{flex-shrink:0;margin:0}.table-toolbar-actions{align-items:center;gap:8px;display:flex}.advisor-search{color:#e2e8f0;background:#0f172a;border:1px solid #334155;border-radius:6px;min-width:180px;padding:6px 12px;font-size:13px;transition:border-color .2s}.advisor-search:focus{border-color:#38bdf8;outline:none;box-shadow:0 0 0 2px #38bdf826}.advisor-search::placeholder{color:#64748b}.export-btn{color:#94a3b8;cursor:pointer;white-space:nowrap;background:#1e293b;border:1px solid #334155;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.export-btn:hover{color:#f1f5f9;background:#334155;transform:none}.clickable-row{cursor:pointer;transition:background .1s}.clickable-row:hover{background:#1e3a5f!important}.clickable-row:hover td:first-child{box-shadow:inset 3px 0 #3b82f6}.table-scroll-wrapper{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.sparkline-chart{display:block}.spark-hover-dot:hover{fill:#3b82f6;r:4}@media (width<=1200px){.summary-banner-grid{grid-template-columns:repeat(4,1fr)}}@media (width<=900px){.summary-banner-grid{grid-template-columns:repeat(3,1fr);gap:12px;padding:12px 16px}.summary-value{font-size:20px}.table-toolbar{flex-direction:column;align-items:stretch}.table-toolbar-actions{width:100%}.advisor-search{flex:1;min-width:0}.detail-header{flex-direction:column;align-items:flex-start;gap:12px}.dash-tabs{margin-left:0}}@media (width<=600px){.summary-banner-grid{grid-template-columns:repeat(2,1fr)}.summary-value{font-size:18px}}#auth-overlay{z-index:10000;background:#0f172af2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-modal{text-align:center;background:#1e293b;border:1px solid #334155;border-radius:12px;width:90%;max-width:400px;padding:32px 40px}.auth-modal h2{color:#38bdf8;margin-bottom:12px;font-size:24px}.auth-modal p{color:#94a3b8;margin-bottom:24px}#auth-form{flex-direction:column;gap:16px;display:flex}#api-key-input{color:#e2e8f0;background:#0f172a;border:1px solid #475569;border-radius:8px;outline:none;padding:12px 16px;font-size:16px;transition:border-color .2s}#api-key-input:focus{border-color:#38bdf8}#auth-form button{color:#0f172a;cursor:pointer;background:#38bdf8;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:600;transition:background .2s}#auth-form button:hover{background:#7dd3fc}.auth-error{color:#f87171;margin-top:16px;font-size:14px}
