.login-page{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{background:#fff;border-radius:.5rem;width:100%;max-width:24rem;padding:2rem;box-shadow:0 1px 3px #0f172a14,0 4px 12px #0f172a0f}.login-card__title{color:#0f172a;text-align:center;font-size:1.375rem;font-weight:700}.login-card__sub{color:#64748b;text-align:center;margin-top:.25rem;margin-bottom:1.5rem;font-size:.875rem}.login-form{flex-direction:column;gap:.875rem;display:flex}.login-form__field{flex-direction:column;gap:.25rem;display:flex}.login-form__field label{color:#334155;font-size:.8125rem;font-weight:500}.login-form__field input{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;padding:.5rem .625rem;font-size:.9375rem}.login-form__field input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.login-form__error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;padding:.5rem .75rem;font-size:.8125rem}.login-form__submit{margin-top:.25rem}.companies-page{max-width:1800px;margin:0 auto;padding:1.5rem}.search-loading-host{position:relative}.search-loading-overlay{z-index:40;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#f1f5f9b8;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.search-loading-overlay__content{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;align-items:center;gap:.625rem;padding:.625rem .875rem;font-size:.875rem;font-weight:600;display:inline-flex}.search-loading-overlay__spinner{border:2px solid #bfdbfe;border-top-color:#2563eb;border-radius:999px;width:1rem;height:1rem;animation:.7s linear infinite search-overlay-spin}@keyframes search-overlay-spin{to{transform:rotate(360deg)}}.investor-detail-page{flex-direction:column;width:1800px;max-width:1800px;height:calc(100dvh - 6rem);padding-top:1rem;padding-bottom:1rem;display:flex;overflow:hidden}.investor-detail-page .tab-content{min-height:0;overflow:auto}.investor-detail-page .investor-analysis-wrap{scrollbar-gutter:stable;flex:auto;width:100%;min-height:0;overflow:auto scroll}.investor-detail-page .investor-analysis-wrap>*{width:100%}.investor-detail-page .analysis-charts-row,.investor-detail-page .analysis-movers-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;max-width:none}.investor-detail-page .analysis-charts-row>*,.investor-detail-page .analysis-movers-row>*{min-width:0}.page-header{margin-bottom:1.5rem}.page-header h1{color:#0f172a;font-size:1.375rem;font-weight:700}.page-header__sub{color:#64748b;margin-top:.25rem;font-size:.875rem}.companies-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.companies-toolbar__label{color:#334155;font-size:.875rem;font-weight:600}.companies-toolbar__input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;flex:1;min-width:19rem;max-width:30rem;padding:.5rem .75rem;font-size:.875rem}.companies-toolbar__input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.companies-toolbar__select{appearance:none;color:#0f172a;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right .625rem center;background-repeat:no-repeat;border:1px solid #cbd5e1;border-radius:.5rem;padding:.5rem 2rem .5rem .75rem;font-size:.875rem}.companies-toolbar__select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.investor-placeholder{color:#64748b;padding:2rem;font-size:.875rem}.data-table__total td{color:#0f172a;background:#f8fafc;border-top:2px solid #e2e8f0;font-weight:700}.companies-table-wrap{overflow-x:auto}.investor-detail-page .investor-current-table-wrap{scrollbar-gutter:stable;flex:auto;min-height:0;padding:0;overflow:auto scroll}.investor-detail-page .investor-current-table-wrap .investor-holdings-table thead th{z-index:20;background-color:#fff;background-clip:padding-box;position:sticky;top:0;box-shadow:inset 0 -1px #e2e8f0}.companies-table-wrap .data-table{table-layout:fixed;width:100%}.companies-table-wrap .data-table th:first-child,.companies-table-wrap .data-table td:first-child{width:23%}.companies-table-wrap .data-table th:nth-child(2),.companies-table-wrap .data-table td:nth-child(2){width:12%}.companies-table-wrap .data-table th:nth-child(3),.companies-table-wrap .data-table td:nth-child(3){width:15%}.companies-table-wrap .data-table th:nth-child(4),.companies-table-wrap .data-table td:nth-child(4){width:18%}.companies-table-wrap .data-table th:nth-child(5),.companies-table-wrap .data-table td:nth-child(5){width:12%}.companies-table-wrap .data-table th:nth-child(6),.companies-table-wrap .data-table td:nth-child(6){width:12rem}.companies-table-wrap .data-table .company-name{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.companies-table-wrap .data-table .company-link{color:#0f172a;text-decoration:none}.companies-table-wrap .data-table .company-link:hover{color:#1d4ed8;text-decoration:underline}.companies-table-wrap .data-table .ticker{color:#1e40af;letter-spacing:.05em;font-family:Courier New,Courier,monospace;font-size:.8125rem;font-weight:600}.companies-table-wrap .investor-holdings-table{border-collapse:separate;border-spacing:0;min-width:78rem}.companies-table-wrap .investor-holdings-table th:first-child,.companies-table-wrap .investor-holdings-table td:first-child{width:22%}.companies-table-wrap .investor-holdings-table th:nth-child(2),.companies-table-wrap .investor-holdings-table td:nth-child(2){width:11%}.companies-table-wrap .investor-holdings-table th:nth-child(3),.companies-table-wrap .investor-holdings-table td:nth-child(3){width:15%}.companies-table-wrap .investor-holdings-table th:nth-child(4),.companies-table-wrap .investor-holdings-table td:nth-child(4){width:9%}.companies-table-wrap .investor-holdings-table th:nth-child(5),.companies-table-wrap .investor-holdings-table td:nth-child(5){width:11%}.companies-table-wrap .investor-holdings-table th:nth-child(6),.companies-table-wrap .investor-holdings-table td:nth-child(6),.companies-table-wrap .investor-holdings-table th:nth-child(7),.companies-table-wrap .investor-holdings-table td:nth-child(7),.companies-table-wrap .investor-holdings-table th:nth-child(8),.companies-table-wrap .investor-holdings-table td:nth-child(8),.companies-table-wrap .investor-holdings-table th:nth-child(9),.companies-table-wrap .investor-holdings-table td:nth-child(9){width:8%}.companies-table-wrap .investor-holdings-table th:nth-child(5),.companies-table-wrap .investor-holdings-table td:nth-child(5),.companies-table-wrap .investor-holdings-table th:nth-child(6),.companies-table-wrap .investor-holdings-table td:nth-child(6),.companies-table-wrap .investor-holdings-table th:nth-child(7),.companies-table-wrap .investor-holdings-table td:nth-child(7),.companies-table-wrap .investor-holdings-table th:nth-child(8),.companies-table-wrap .investor-holdings-table td:nth-child(8),.companies-table-wrap .investor-holdings-table th:nth-child(9),.companies-table-wrap .investor-holdings-table td:nth-child(9){white-space:nowrap;font-variant-numeric:tabular-nums}.companies-table-wrap .investor-list-table th:first-child,.companies-table-wrap .investor-list-table td:first-child{width:38%}.companies-table-wrap .investor-list-table th:nth-child(2),.companies-table-wrap .investor-list-table td:nth-child(2){width:18%}.companies-table-wrap .investor-list-table th:nth-child(3),.companies-table-wrap .investor-list-table td:nth-child(3){width:20%}.companies-table-wrap .investor-list-table th:nth-child(4),.companies-table-wrap .investor-list-table td:nth-child(4){white-space:nowrap;font-variant-numeric:tabular-nums;width:24%}.historical-table-wrap .investor-historical-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:118rem}.investor-detail-page .historical-table-wrap{scrollbar-gutter:stable;flex:auto;min-height:0;padding:0;overflow:auto scroll}.investor-detail-page .historical-table-wrap .investor-historical-table thead th{z-index:20;background-color:#fff;background-clip:padding-box;position:sticky;top:0;box-shadow:inset 0 -1px #e2e8f0}.historical-table-wrap .investor-historical-table th:first-child,.historical-table-wrap .investor-historical-table td:first-child{width:4rem}.historical-table-wrap .investor-historical-table td:first-child{z-index:8;background-color:#fff;position:sticky;left:0;box-shadow:1px 0 #e2e8f0}.historical-table-wrap .investor-historical-table td:nth-child(2){z-index:7;background-color:#fff;position:sticky;left:4rem;box-shadow:1px 0 #e2e8f0}.historical-table-wrap .investor-historical-table thead th:first-child{z-index:24;background-color:#fff;left:0;box-shadow:1px 0 #e2e8f0}.historical-table-wrap .investor-historical-table thead th:nth-child(2){z-index:23;background-color:#fff;left:4rem;box-shadow:1px 0 #e2e8f0}.historical-table-wrap .investor-historical-table th:nth-child(2),.historical-table-wrap .investor-historical-table td:nth-child(2){width:18rem}.historical-table-wrap .investor-historical-table th:nth-child(3),.historical-table-wrap .investor-historical-table td:nth-child(3),.historical-table-wrap .investor-historical-table th:nth-child(4),.historical-table-wrap .investor-historical-table td:nth-child(4){width:9rem}.historical-table-wrap .investor-historical-table th:nth-child(5),.historical-table-wrap .investor-historical-table td:nth-child(5),.historical-table-wrap .investor-historical-table th:nth-child(6),.historical-table-wrap .investor-historical-table td:nth-child(6){width:14rem}.historical-table-wrap .investor-historical-table th:nth-child(7),.historical-table-wrap .investor-historical-table td:nth-child(7),.historical-table-wrap .investor-historical-table th:nth-child(8),.historical-table-wrap .investor-historical-table td:nth-child(8){width:7rem}.historical-table-wrap .investor-historical-table th:nth-child(n+9),.historical-table-wrap .investor-historical-table td:nth-child(n+9){width:11rem}.historical-table-wrap .investor-historical-table td:nth-child(2),.historical-table-wrap .investor-historical-table td:nth-child(5){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.historical-table-wrap .investor-historical-table th:first-child,.historical-table-wrap .investor-historical-table td:first-child,.historical-table-wrap .investor-historical-table th:nth-child(n+6),.historical-table-wrap .investor-historical-table td:nth-child(n+6){white-space:nowrap;font-variant-numeric:tabular-nums}.pagination{border-top:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:.25rem;padding:.875rem .75rem .25rem;display:flex}.pagination__info{color:#64748b;font-size:.8125rem}.pagination__controls{align-items:center;gap:.25rem;display:flex}.pagination__btn{justify-content:center;width:2rem;height:2rem;padding:0;font-size:.8125rem}.pagination__btn--active{color:#fff;background-color:#1e40af;border-color:#1e40af}.pagination__btn[disabled]{opacity:.4;pointer-events:none}.pagination__ellipsis{text-align:center;color:#94a3b8;-webkit-user-select:none;user-select:none;width:1.5rem;font-size:.8125rem;line-height:2rem}@media(max-width:900px){.companies-toolbar__input{min-width:14rem;max-width:none}.companies-table-wrap .data-table{min-width:56rem}.companies-table-wrap .investor-holdings-table{min-width:78rem}.investor-detail-page{height:calc(100dvh - 5.5rem);padding:.75rem}.historical-table-wrap .investor-historical-table{min-width:118rem}}.summary-page{min-width:1000px;max-width:1800px;margin:0 auto;padding:1.25rem 1.5rem}.company-header{margin-bottom:1rem;padding:1rem 1.25rem}.company-header__name-row{align-items:baseline;gap:1rem;margin-bottom:.5rem;display:flex}.company-header__name{color:#0f172a;margin:0;font-size:1.25rem;font-weight:700}.company-header__ticker{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.375rem;padding:.125rem .5rem;font-size:.875rem;font-weight:600}.company-header__meta{color:#475569;flex-wrap:wrap;gap:1.25rem 2.5rem;font-size:.875rem;display:flex}.company-header__meta strong{color:#0f172a}.tab-nav{border-bottom:2px solid #e2e8f0;gap:0;margin-bottom:1.25rem;display:flex}.tab-nav__btn{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;transition:color .15s,border-color .15s}.tab-nav__btn:hover{color:#1e40af}.tab-nav__btn--active{color:#1e3a8a;border-bottom-color:#1e3a8a}.tab-nav--secondary{margin-top:-.5rem;margin-bottom:1rem}.tab-nav--secondary .tab-nav__btn{color:#6b7280;font-weight:500}.tab-nav--secondary .tab-nav__btn--active{color:#1e3a8a}.tab-content{flex-direction:column;gap:1.25rem;display:flex}.tab-toolbar{align-items:center;gap:.75rem;display:flex}.tab-toolbar__label{color:#334155;white-space:nowrap;font-size:.875rem;font-weight:600}.tab-toolbar__input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;min-width:16rem;max-width:28rem;padding:.5rem .75rem;font-size:.875rem}.tab-toolbar__input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb26}.analysis-charts-row{grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.25rem;display:grid}@media(max-width:768px){.analysis-charts-row{grid-template-columns:1fr}}.analysis-movers-row{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.analysis-filter-toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.analysis-filter-toolbar__label{color:#334155;font-size:.8125rem;font-weight:600}.analysis-filter-chip{color:#475569;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;display:inline-flex}.analysis-filter-chip--active{color:#1e3a8a;background:#eff6ff;border-color:#93c5fd}.analysis-filter-clear{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:.22rem .65rem;font-size:.75rem}.analysis-filter-clear:hover{background:#f8fafc;border-color:#94a3b8}@media(max-width:900px){.analysis-movers-row{grid-template-columns:1fr}}.historical-table-wrap{overflow-x:auto}.historical-table{table-layout:auto;white-space:nowrap;width:100%}.historical-col--name{white-space:normal;min-width:14rem}.historical-col--shares{min-width:9rem}.historical-col--delta{min-width:6rem}.historical-col--date{font-variant-numeric:tabular-nums;min-width:6rem}.manager-bo-table__child-row td{background:#f8fafc}.manager-bo-table__child-name{color:#334155;padding-left:1.5rem}.empty-row{color:#94a3b8;padding:1rem;font-style:italic}.pie-chart-card{flex-direction:column;display:flex}.pie-chart-card__title{color:#475569;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem;font-size:.8125rem;font-weight:600}.pie-legend-label{color:#374151;font-size:.75rem}.breakdown-page{max-width:1400px;margin:0 auto;padding:1.25rem 1.5rem}.breakdown-top-row{grid-template-columns:340px 1fr;gap:1.25rem;margin-bottom:1.25rem;display:grid}@media(max-width:900px){.breakdown-top-row{grid-template-columns:1fr}}.breakdown-info-panel h2{color:#0f172a;text-transform:none;letter-spacing:0;margin-bottom:1rem;font-size:.9375rem;font-weight:700}.breakdown-info-panel__contact{color:#475569;border-bottom:1px solid #e2e8f0;margin-bottom:1rem;padding-bottom:1rem;font-size:.8125rem;line-height:1.6}.breakdown-info-panel__contact a{color:#1e40af}.breakdown-info-panel__contact a:hover{text-decoration:underline}.contact-phone{margin-top:.25rem}.breakdown-info-panel__stats{flex-direction:column;gap:.625rem;display:flex}.stat-row{align-items:baseline;gap:.5rem;font-size:.8125rem;display:flex}.stat-label{color:#64748b;flex:1}.stat-value{color:#0f172a;font-weight:700}.stat-pct{color:#64748b;font-size:.75rem}.breakdown-history-panel{flex-direction:column;display:flex}.breakdown-history-panel h2{margin-bottom:1rem}.manager-history-chart{width:100%;min-height:230px}.history-empty-state{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;justify-content:center;align-items:center;min-height:180px;font-size:.875rem;display:flex}.breakdown-table-meta{color:#64748b;justify-content:space-between;margin-bottom:.75rem;font-size:.8125rem;display:flex}.breakdown-investors-table td:first-child{max-width:420px}.breakdown-back-link{border-top:1px solid #f1f5f9;margin-top:1.25rem;padding-top:1rem}
