.admin-section{gap:24px;min-width:0;padding-bottom:24px}.admin-section h2,.admin-section h3,.admin-section h4,.admin-section p{margin:0}.admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.admin-page-heading .admin-eyebrow{margin-bottom:8px;color:var(--app-primary);font-size:.62rem;font-weight:800;letter-spacing:.12em}.admin-page-heading h2{font-size:1.45rem;font-weight:600}.admin-page-heading h2+p{margin-top:7px;color:var(--app-muted);font-size:.77rem;line-height:1.6}.admin-account{display:flex;align-items:center;gap:10px;color:var(--app-primary);min-width:0}.admin-account div{display:grid;gap:4px;min-width:0}.admin-account span{color:var(--app-muted);font-size:.62rem}.admin-account strong{color:var(--app-text);font-size:.73rem;font-weight:600;overflow-wrap:anywhere}.admin-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface)}.admin-overview article{display:flex;gap:14px;align-items:flex-start;min-width:0;padding:20px 22px}.admin-overview article+article{border-left:1px solid var(--app-border)}.admin-metric-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border-radius:9px;color:var(--app-primary);background:var(--app-primary-soft)}.admin-overview article>div{display:grid;gap:7px;min-width:0}.admin-overview article>div>span{color:var(--app-muted);font-size:.68rem;font-weight:600}.admin-overview strong{font-family:var(--app-font-display);font-size:1.2rem;font-weight:600;line-height:1.35;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.admin-overview em{color:var(--app-muted);font-size:.85rem;font-style:normal;font-weight:400}.admin-overview small{color:var(--app-muted);font-size:.63rem;line-height:1.5}.admin-navigation{display:flex;gap:24px;border-bottom:1px solid var(--app-border)}.admin-navigation button{display:inline-flex;gap:8px;align-items:center;position:relative;padding:0 2px 14px;min-height:40px;border:0;background:transparent;color:var(--app-muted);font:inherit;font-size:.77rem;font-weight:700;cursor:pointer;white-space:nowrap}.admin-navigation button:hover{color:var(--app-text)}.admin-navigation button[aria-current=page]{color:var(--app-primary)}.admin-navigation button[aria-current=page]:after{content:"";position:absolute;inset:auto 0 -1px;height:2px;border-radius:2px;background:var(--app-primary)}.admin-navigation button>span{min-width:20px;padding:2px 5px;background:var(--app-surface-muted);border-radius:5px;color:var(--app-muted);font-size:.6rem;text-align:center}.admin-navigation button[aria-current=page]>span{background:var(--app-primary-soft);color:var(--app-primary)}.admin-workspace{display:grid;gap:18px;min-width:0}.admin-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-panel-heading h3{font-size:.95rem;font-weight:600}.admin-panel-heading p{margin-top:6px;font-size:.73rem;line-height:1.6;color:var(--app-muted)}.admin-subtle-label{color:var(--app-muted);font-size:.65rem;white-space:nowrap}.admin-jobs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-job{display:flex;flex-direction:column;gap:22px;padding:22px;min-width:0;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);box-shadow:var(--app-shadow)}.admin-job-primary{grid-column:1 / -1;border-top:3px solid var(--app-primary);padding-top:20px}.admin-job-intro{display:flex;align-items:flex-start;gap:14px}.admin-job-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border:1px solid var(--app-border);border-radius:10px;color:var(--app-muted);background:var(--app-surface-muted)}.admin-job-primary .admin-job-icon{color:var(--app-primary);background:var(--app-primary-soft);border-color:transparent}.admin-job-intro>div{min-width:0}.admin-job h4{margin-top:2px;font-size:.87rem;font-weight:600}.admin-job p{color:var(--app-muted);font-size:.73rem;line-height:1.8}.admin-job-intro p{margin-top:8px;max-width:760px}.admin-job-title{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.admin-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;width:fit-content;border-radius:5px;font-size:.6rem;font-weight:700;color:var(--app-primary);background:var(--app-primary-soft);white-space:nowrap}.admin-badge.is-active{color:var(--app-success);background:var(--app-success-soft)}.admin-badge.is-neutral{color:var(--app-muted);background:var(--app-surface-muted)}.admin-job-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto}.admin-job-footer>span{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px;color:var(--app-muted);font-size:.66rem;line-height:1.6}.admin-job-footer i{font-style:normal;margin:0 3px}.admin-section .primary-button,.admin-section .ghost-button{display:inline-flex;gap:7px;align-items:center;min-height:36px;font-size:.69rem;font-weight:700;padding:8px 12px;white-space:nowrap;flex-shrink:0}.admin-section .primary-button{color:#fff}.admin-section .primary-button:hover:enabled{filter:brightness(.94)}.admin-section button:disabled{opacity:.48;cursor:not-allowed}.admin-section :is(button,input,summary):focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.admin-section .button-spinner{border-color:currentColor;border-right-color:transparent;flex-shrink:0}.admin-test-form{display:flex;gap:12px;align-items:end;margin-top:auto}.admin-test-form label{display:grid;gap:7px;color:var(--app-muted);font-size:.66rem;flex:1}.admin-section .admin-inline-input,.admin-section .portfolio-form input{width:100%;min-width:0;min-height:36px;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface);color:var(--app-text);padding:8px 10px;font:inherit;font-size:.72rem}.admin-section .admin-inline-input:hover,.admin-section .portfolio-form input:hover{border-color:var(--app-border-strong)}.admin-test-form .admin-inline-input{max-width:none;text-transform:uppercase;font-weight:700}.admin-job .admin-inline-hint{font-size:.68rem}.admin-running{display:flex;gap:12px;align-items:center;padding:14px;background:var(--app-primary-soft);color:var(--app-primary);border-radius:7px}.admin-running strong{font-size:.73rem}.admin-running p{font-size:.65rem;margin-top:3px}.admin-running b{margin-left:auto;font-size:.75rem;white-space:nowrap;font-variant-numeric:tabular-nums}.admin-job-output{padding-top:16px;border-top:1px solid var(--app-border);min-width:0}.admin-job-output .admin-result-title{color:var(--app-text);font-size:.73rem;font-weight:700;margin-bottom:14px}.admin-result-metrics{display:flex;flex-wrap:wrap;gap:16px 30px;margin:0}.admin-result-metrics div{display:grid;gap:6px}.admin-result-metrics dt{font-size:.62rem;color:var(--app-muted)}.admin-result-metrics dd{font-size:.8rem;font-weight:700;margin:0}.admin-result-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--app-border);font-size:.69rem}.admin-result-row span+span,.admin-result-row code{color:var(--app-muted)}.admin-logs{margin-top:16px;font-size:.68rem}.admin-logs summary{display:flex;align-items:center;flex-wrap:wrap;gap:6px;width:fit-content;min-height:30px;color:var(--app-primary);cursor:pointer;list-style:none}.admin-logs summary::-webkit-details-marker{display:none}.admin-logs summary:after{content:"+";margin-left:4px}.admin-logs[open] summary:after{content:"−"}.admin-logs summary span{color:var(--app-muted);font-size:.6rem}.admin-logs pre{max-height:260px;overflow:auto;padding:14px;border-radius:6px;background:var(--app-surface-muted);color:var(--app-text);font-size:.65rem;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.admin-batch-progress{display:grid;gap:8px;font-size:.73rem}.admin-batch-progress progress{width:100%;height:8px;accent-color:var(--app-primary)}.admin-batch-progress small{color:var(--app-muted);font-size:.63rem}.admin-workspace-note{display:flex;align-items:flex-start;gap:7px;color:var(--app-muted);font-size:.64rem;line-height:1.7}.admin-workspace-note svg{flex-shrink:0;margin-top:1px}.admin-feedback{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:7px;font-size:.74rem;overflow-wrap:anywhere}.admin-feedback.is-success{color:var(--app-success);background:var(--app-success-soft)}.admin-feedback.is-error{color:var(--app-danger);background:var(--app-danger-soft)}.admin-feedback button{display:grid;place-items:center;margin-left:auto;flex-shrink:0;width:28px;height:28px;padding:0;border:0;border-radius:4px;color:inherit;background:transparent;cursor:pointer}.admin-section .admin-inline-error{margin-top:10px;color:var(--app-danger);font-size:.72rem;overflow-wrap:anywhere}.admin-load-error{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px;border:1px solid var(--app-danger-soft);border-radius:8px;background:var(--app-surface)}.admin-load-error strong{color:var(--app-danger);font-size:.76rem}.admin-load-error p{color:var(--app-muted);margin-top:6px;font-size:.71rem;overflow-wrap:anywhere}.admin-section .admin-create-form{grid-template-columns:minmax(160px,.8fr) minmax(220px,1.3fr) auto;padding:18px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface)}.admin-create-form label{font-size:.69rem;color:var(--app-text)}.admin-form-actions{display:flex;gap:8px}.admin-data-panel{min-width:0;overflow:hidden;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface)}.admin-section .admin-table{min-width:0;table-layout:fixed}.admin-section .admin-table th{padding:13px 16px;font-size:.6rem;letter-spacing:.03em;background:var(--app-surface-muted);white-space:nowrap}.admin-section .admin-table td{vertical-align:middle;padding:14px 16px;font-size:.73rem;overflow-wrap:anywhere}.admin-section .admin-table tbody tr{background:var(--app-surface)}.admin-section .admin-table tbody tr:last-child td{border-bottom:0}.admin-section .admin-table tbody tr:hover{background:color-mix(in oklch,var(--app-surface-muted) 45%,var(--app-surface))}.admin-section .admin-table .admin-row-active{background:color-mix(in oklch,var(--app-primary-soft) 50%,var(--app-surface))}.admin-section .admin-table .admin-row-active td:first-child{box-shadow:inset 3px 0 var(--app-primary)}.admin-section .admin-table .admin-row-edited{background:color-mix(in oklch,var(--app-primary-soft) 30%,var(--app-surface))}.admin-section .admin-table code{font-family:ui-monospace,monospace;font-size:.68rem;font-weight:500;color:var(--app-muted)}.admin-portfolios-table th:nth-child(1){width:25%}.admin-portfolios-table th:nth-child(2){width:39%}.admin-portfolios-table th:nth-child(3){width:18%}.admin-portfolios-table th:nth-child(4){width:18%}.admin-snapshots-table th:nth-child(1){width:23%}.admin-snapshots-table th:nth-child(2){width:22%}.admin-snapshots-table th:nth-child(3){width:15%}.admin-snapshots-table th:nth-child(4){width:12%}.admin-snapshots-table th:nth-child(5){width:28%}.admin-section .admin-url-input{font-size:.67rem;color:var(--app-muted)}.admin-row-actions{display:flex;gap:8px;align-items:center}.admin-delete-button{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border:1px solid transparent;border-radius:6px;padding:0;background:transparent;color:var(--app-muted);cursor:pointer}.admin-delete-button:enabled:hover{color:var(--app-danger);border-color:var(--app-danger-soft);background:var(--app-danger-soft)}.admin-unsaved{display:block;margin-top:6px;color:var(--app-primary);font-size:.59rem}.admin-toggle{display:inline-flex;position:relative;align-items:center;gap:8px;font-size:.68rem;cursor:pointer;white-space:nowrap}.admin-toggle input{position:absolute;opacity:0;width:30px;height:18px;margin:0}.admin-toggle-track{position:relative;display:inline-block;width:30px;height:18px;background:var(--app-border-strong);border-radius:20px;flex-shrink:0}.admin-toggle-track:after{position:absolute;content:"";width:12px;height:12px;left:3px;top:3px;border-radius:50%;background:#fff;transition:transform .12s ease}.admin-toggle input:checked+.admin-toggle-track{background:var(--app-primary)}.admin-toggle input:checked+.admin-toggle-track:after{transform:translate(12px)}.admin-toggle input:focus-visible+.admin-toggle-track{outline:2px solid var(--app-primary);outline-offset:3px}.admin-toggle input:disabled~span{opacity:.5;cursor:not-allowed}.admin-table-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-top:1px solid var(--app-border);color:var(--app-muted);font-size:.65rem}.admin-portfolio-name{font-weight:700}.admin-search{display:flex;gap:8px;align-items:center;width:270px;max-width:100%;padding:0 10px;border:1px solid var(--app-border);border-radius:7px;background:var(--app-surface);color:var(--app-muted);flex-shrink:0}.admin-search input{width:100%;min-width:0;min-height:36px;padding:7px 0;background:transparent;border:0;font:inherit;font-size:.69rem;color:var(--app-text)}.admin-search:focus-within{outline:2px solid var(--app-primary);outline-offset:2px}.admin-search input:focus-visible{outline:none}.admin-selection-note{display:flex;align-items:center;gap:10px;padding:13px 15px;background:var(--app-primary-soft);color:var(--app-primary);border-radius:8px;font-size:.72rem}.admin-selection-note>svg{flex-shrink:0}.admin-selection-note code{padding:2px 5px;border-radius:4px;background:var(--app-surface);font-size:.68rem}.admin-selection-note small{display:block;margin-top:4px;color:var(--app-muted);font-size:.64rem;line-height:1.6}.admin-pagination{display:flex;gap:12px;align-items:center}.admin-pagination .ghost-button{padding:5px;min-height:28px}.admin-empty{display:grid;justify-items:center;gap:12px;padding:48px 24px;border:1px dashed var(--app-border-strong);border-radius:10px;background:var(--app-surface);color:var(--app-muted);text-align:center;font-size:.76rem}.admin-empty h4{color:var(--app-text);font-size:.85rem;font-weight:600}.admin-empty p{font-size:.72rem;line-height:1.7}.admin-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:1150px){.admin-overview article{padding:18px 16px;gap:10px}.admin-overview strong{font-size:1rem}.admin-section .admin-create-form{grid-template-columns:1fr 1.5fr}.admin-form-actions{grid-column:1 / -1}.admin-section .admin-table :is(th,td){padding-left:12px;padding-right:12px}.admin-jobs{grid-template-columns:1fr}}@media(max-width:760px){.admin-section{gap:20px}.admin-page-heading{align-items:flex-start;flex-direction:column;gap:16px}.admin-account{font-size:.68rem}.admin-account div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-overview{grid-template-columns:1fr}.admin-overview article{padding:16px}.admin-overview article+article{border-left:0;border-top:1px solid var(--app-border)}.admin-overview article>div{width:100%;grid-template-columns:1fr auto;gap:5px 12px}.admin-overview strong{font-size:.9rem;text-align:right}.admin-overview small{grid-column:1 / -1}.admin-navigation{gap:16px;overflow-x:auto}.admin-navigation button{font-size:.7rem;gap:6px}.admin-navigation button>svg{display:none}.admin-job{padding:18px;gap:18px}.admin-job-primary{padding-top:16px}.admin-job-icon{width:34px;height:34px;border-radius:8px}.admin-job-intro{gap:10px}.admin-job-title{gap:8px}.admin-job-footer{flex-wrap:wrap}.admin-job-footer>button{margin-left:auto}.admin-panel-heading{align-items:flex-start;flex-wrap:wrap;gap:14px}.admin-subtle-label{display:none}.admin-search{width:100%}.admin-section .admin-create-form{grid-template-columns:1fr}.admin-section .admin-table,.admin-section .admin-table tbody,.admin-section .admin-table tr{display:block;width:100%}.admin-section .admin-table thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.admin-section .admin-table tr{padding:14px 16px;border-bottom:1px solid var(--app-border)}.admin-section .admin-table tr:last-child{border-bottom:0}.admin-section .admin-table td{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:8px;border:0;padding:7px 0;width:100%}.admin-section .admin-table td:before{content:attr(data-label);color:var(--app-muted);font-size:.64rem;font-weight:500}.admin-section .admin-table .admin-row-active td:first-child{box-shadow:none}.admin-section .admin-table .admin-row-active{box-shadow:inset 3px 0 var(--app-primary)}.admin-row-actions{flex-wrap:wrap}.admin-unsaved{grid-column:2;margin-top:0}.admin-table-footer{flex-wrap:wrap;gap:10px}.admin-load-error{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){.admin-toggle-track:after{transition:none}}.alloc-page{font-variant-numeric:tabular-nums}.alloc-heading,.alloc-panel-heading,.alloc-table-toolbar,.alloc-row-title,.alloc-panel-footer,.alloc-asset-split,.alloc-missing{display:flex;align-items:center;justify-content:space-between;gap:16px}.alloc-heading h2{margin:0;font-size:1.4rem}.alloc-heading p,.alloc-panel-heading p,.alloc-table-toolbar p{margin:6px 0 0;color:var(--app-muted);font-size:.8rem;line-height:1.6}.alloc-scope{display:flex;flex-shrink:0;gap:3px;padding:4px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted)}.alloc-scope button{min-height:34px;padding:7px 15px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--app-muted);font:inherit;font-size:.77rem;font-weight:600;cursor:pointer}.alloc-scope button[aria-pressed=true]{background:var(--app-surface);border-color:var(--app-border);color:var(--app-text);box-shadow:0 1px 3px #102b4210}.alloc-scope button:hover{color:var(--app-primary)}.alloc-page button:focus-visible,.alloc-page input:focus-visible,.alloc-page summary:focus-visible,.alloc-page a:focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.alloc-context{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;color:var(--app-muted);font-size:.75rem}.alloc-context b{color:var(--app-text);font-weight:600}.alloc-context>span:last-child{margin-left:auto}.alloc-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.alloc-metric,.alloc-panel{min-width:0;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);box-shadow:var(--app-shadow)}.alloc-metric{padding:18px 20px}.alloc-metric h3{margin:0;color:var(--app-muted);font-family:inherit;font-size:.72rem;font-weight:600}.alloc-metric>strong{display:block;margin:12px 0 10px;font-family:var(--app-font-display);font-size:1.9rem;letter-spacing:-.045em;line-height:1.15}.alloc-metric>div{min-height:23px;color:var(--app-muted);font-size:.71rem}.alloc-metric .stock-link{font-size:.71rem}.alloc-panels{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.alloc-panel{padding:20px}.alloc-panel-heading{align-items:flex-start;margin-bottom:12px}.alloc-panel-heading h3,.alloc-table-toolbar h3{margin:0;font-size:.95rem}.alloc-panel-heading>svg{margin-top:2px;color:var(--app-muted);flex-shrink:0}.alloc-panel-heading p{font-size:.72rem}.alloc-ranking{list-style:none;margin:0;padding:0}.alloc-ranking li{display:flex;align-items:center;gap:15px;padding:11px 0;border-bottom:1px solid var(--app-border)}.alloc-ranking li:last-child{border-bottom:0}.alloc-rank{color:var(--app-muted);font-size:.68rem;width:18px}.alloc-position{flex:1;min-width:0}.alloc-row-title{gap:8px;margin-bottom:8px}.alloc-row-title>span{color:var(--app-muted);font-size:.65rem}.alloc-row-title>strong{margin-left:auto;font-size:.8rem;font-weight:600;white-space:nowrap}.alloc-row-title .stock-link{font-size:.73rem}.alloc-track{height:5px;border-radius:3px;overflow:hidden;background:var(--app-surface-muted)}.alloc-track>span{display:block;height:100%;background:var(--app-primary);border-radius:inherit}.alloc-panel-footer{margin-top:10px;padding-top:14px;border-top:1px solid var(--app-border);color:var(--app-muted);font-size:.72rem}.alloc-panel-footer b{color:var(--app-text);font-weight:600}.alloc-coverage{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;margin-top:20px}.alloc-coverage>span{color:var(--app-muted);font-size:.75rem}.alloc-coverage strong{font-size:1.2rem}.alloc-coverage small{width:100%;color:var(--app-muted);font-size:.67rem}.alloc-sector-stack{display:flex;height:12px;overflow:hidden;margin:14px 0;background:var(--app-surface-muted);border-radius:4px}.alloc-sector-stack>span{flex-shrink:0}.alloc-color-0{background:#278699}.alloc-color-1{background:#6d86b1}.alloc-color-2{background:#68a99c}.alloc-color-3{background:#c3a35b}.alloc-color-4{background:#a78bb2}.alloc-color-5{background:#c18b74}.alloc-color-unknown{background:repeating-linear-gradient(135deg,#e7ecf1 0,#e7ecf1 4px,#cdd7e0 4px,#cdd7e0 6px)}.alloc-sector-list{list-style:none;margin:0;padding:0}.alloc-sector-list li{display:flex;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--app-border)}.alloc-sector-list li:last-child{border-bottom:0}.alloc-sector-list i,.alloc-missing i{width:8px;height:8px;border-radius:2px;flex-shrink:0}.alloc-sector-list li>span{flex:1;font-size:.76rem}.alloc-sector-list small{margin-top:3px;display:block;color:var(--app-muted);font-size:.65rem}.alloc-sector-list strong{font-size:.78rem;font-weight:600}.alloc-sector-empty{padding:22px 12px;text-align:center;background:var(--app-surface-muted);border-radius:8px;margin:16px 0}.alloc-sector-empty>svg{color:var(--app-muted)}.alloc-sector-empty h4{margin:8px 0;font-size:.82rem}.alloc-sector-empty p{max-width:390px;margin:0 auto;color:var(--app-muted);font-size:.73rem;line-height:1.7}.alloc-missing{padding:12px 0;font-size:.72rem;color:var(--app-muted)}.alloc-missing>span{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.alloc-missing small{font-size:.65rem}.alloc-missing b{white-space:nowrap;font-weight:600}.alloc-asset-split{padding-top:18px;margin-top:16px;border-top:1px solid var(--app-border);align-items:flex-start}.alloc-asset-split h4{margin:0 0 6px;font-size:.74rem}.alloc-asset-split span{color:var(--app-muted);font-size:.68rem}.alloc-asset-split strong{font-size:.78rem;white-space:nowrap}.alloc-split-track{height:6px;margin-top:12px;border-radius:4px;background:#9abdc6;overflow:hidden}.alloc-split-track>span{display:block;height:100%;background:var(--app-primary)}.alloc-note{display:flex;gap:9px;align-items:flex-start;color:var(--app-muted)}.alloc-note svg{flex-shrink:0;margin-top:2px}.alloc-note p{margin:0;font-size:.73rem;line-height:1.65}.alloc-table-section{display:grid;gap:14px;min-width:0}.alloc-table-toolbar{flex-wrap:wrap}.alloc-search{display:flex;align-items:center;gap:9px;border:1px solid var(--app-border);border-radius:7px;padding:0 11px;background:var(--app-surface);color:var(--app-muted);width:260px;max-width:100%}.alloc-search input{border:0;background:transparent;color:var(--app-text);font:inherit;font-size:.75rem;min-width:0;width:100%;height:38px}.alloc-table-section .table-heading h3{font-size:.82rem}.alloc-table-section .table-wrap{min-width:0}.alloc-methodology{border:1px solid var(--app-border);background:var(--app-surface);border-radius:8px}.alloc-methodology summary{padding:16px 20px;font-size:.77rem;font-weight:600;cursor:pointer}.alloc-methodology>div{padding:0 20px 12px;max-width:960px;font-size:.77rem;line-height:1.8;color:var(--app-muted)}.alloc-error{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px;margin:12px 0;background:var(--app-danger-soft);color:var(--app-danger);border-radius:6px;font-size:.75rem}.alloc-error button{color:inherit;background:var(--app-surface);border:1px solid currentColor;border-radius:4px;padding:6px 8px;cursor:pointer;font:inherit;flex-shrink:0}.alloc-data-note{padding:24px 0;font-size:.8rem;color:var(--app-muted);line-height:1.7}.alloc-empty{padding:40px 20px;text-align:center;color:var(--app-muted)}.alloc-empty h2,.alloc-empty h3{color:var(--app-text);font-size:1.1rem;margin:12px 0}.alloc-empty p{font-size:.82rem;line-height:1.7}.alloc-empty a{font-size:.8rem;color:var(--app-primary)}@media(max-width:1000px){.alloc-heading{align-items:flex-start;flex-direction:column}.alloc-metric{padding:16px}.alloc-metric>strong{font-size:1.6rem}}@media(max-width:680px){.alloc-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.alloc-panels{grid-template-columns:minmax(0,1fr)}.alloc-context{gap:8px 14px}.alloc-context>span:last-child{margin-left:0;flex-basis:100%}.alloc-panel{padding:16px}.alloc-search,.alloc-scope{width:100%}.alloc-scope button{flex:1;padding-inline:8px}.alloc-asset-split{flex-wrap:wrap;gap:10px}.alloc-error{flex-wrap:wrap}}.alloc-table-section td:nth-child(n+4),.alloc-table-section th:nth-child(n+4){text-align:right}.alloc-table-section th:nth-child(n+4) .sort-button{justify-content:flex-end}.insights-workspace{min-width:0;gap:20px}.insights-workspace.loading-overlay-host{min-height:0}.insights-workspace>.loading-overlay{position:relative;inset:auto;min-height:240px;padding:32px 20px}.insights-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.insights-eyebrow{display:block;color:var(--app-primary);font-size:.63rem;font-weight:800;letter-spacing:.12em;margin-bottom:8px}.insights-heading h2{margin:0;font-size:1.55rem;line-height:1.3}.insights-heading p{margin:7px 0 0;color:var(--app-muted);font-size:.79rem;line-height:1.65;max-width:70ch}.insights-context{display:flex;align-items:center;flex-wrap:wrap;gap:8px;flex-shrink:0}.insights-context>span{padding:6px 10px;border:1px solid var(--app-border);background:var(--app-surface);border-radius:6px;color:var(--app-muted);font-size:.7rem;white-space:nowrap}.insights-metrics{display:grid;grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(0,1fr));gap:12px}.insights-metrics-five{grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr))}.insights-metric{display:flex;flex-direction:column;gap:10px;padding:19px 20px;min-width:0;background:var(--app-surface);border:1px solid var(--app-border);border-radius:10px}.insights-metric-primary{background:var(--app-primary-soft);border-color:color-mix(in srgb,var(--app-primary) 22%,var(--app-border))}.insights-metric-label{color:var(--app-muted);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.insights-metric-value{display:flex;flex-wrap:wrap;align-items:center;gap:7px;color:var(--app-text);font-family:var(--app-font-display);font-size:clamp(1.25rem,1.65vw,1.85rem);line-height:1.3;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.insights-metric-primary .insights-metric-value{font-size:clamp(1.6rem,2.1vw,2.2rem)}.insights-metric-detail{color:var(--app-muted);font-size:.71rem;line-height:1.6}.insights-tone-negative .insights-metric-value,.insights-negative{color:var(--app-danger)}.insights-tone-positive .insights-metric-value,.insights-positive{color:var(--app-success)}.insights-tone-warning.insights-metric-primary{background:#fff9ed;border-color:#eaddbf}.insights-tone-warning .insights-metric-value{color:#96621a}.insights-workspace .portfolio-ticker-link{font-size:.75rem;font-weight:700;padding:3px 7px;border-radius:4px;background:var(--app-surface-muted);color:var(--app-text)}.insights-metric-primary .portfolio-ticker-link{font-size:1.4rem;background:transparent;padding:0;line-height:1.4}.insights-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.insights-panels-wide{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.insights-panel{min-width:0;background:var(--app-surface);border:1px solid var(--app-border);border-radius:10px;overflow:hidden}.insights-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:19px 20px 15px}.insights-panel-heading h3{margin:0;font-size:.9rem;font-weight:600}.insights-panel-heading p{margin:5px 0 0;font-size:.7rem;color:var(--app-muted);line-height:1.6}.insights-panel-heading>a{display:inline-flex;align-items:center;gap:5px;font-size:.7rem;color:var(--app-primary);white-space:nowrap;text-decoration:none}.insights-list{list-style:none;margin:0;padding:0 20px 8px}.insights-list>li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-top:1px solid var(--app-border)}.insights-list>li:first-child{border-top:0}.insights-list>li>div{min-width:0}.insights-list strong{font-size:.79rem;font-weight:600}.insights-list small{display:block;color:var(--app-muted);font-size:.7rem;line-height:1.6;margin-top:5px}.insights-list b{font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums}.insights-list .insights-number{flex-shrink:0;text-align:right}.insights-list .insights-number small{font-size:.68rem;font-weight:500}.insights-ranked-list{counter-reset:rank}.insights-ranked-list>li{justify-content:initial;gap:12px}.insights-ranked-list>li:before{counter-increment:rank;content:counter(rank,decimal-leading-zero);color:var(--app-muted-2);font-size:.66rem;font-variant-numeric:tabular-nums;width:18px;flex-shrink:0}.insights-ranked-list>li>div:first-of-type{flex:1}.insights-track{height:5px;background:var(--app-surface-muted);border-radius:3px;overflow:hidden}.insights-track span{display:block;height:100%;border-radius:inherit;background:var(--app-primary)}.insights-track-negative span{background:var(--app-danger)}.insights-track-positive span{background:var(--app-success)}.insights-track-warning span{background:#bc913e}.insights-ranked-list .insights-track{margin-top:9px;max-width:100%}.insights-list-label{display:flex;justify-content:space-between;align-items:center;gap:12px}.insights-list-label>small{margin:0}.insights-note{display:flex;gap:9px;align-items:flex-start;color:var(--app-muted);font-size:.71rem;line-height:1.75;margin:0}.insights-note>svg{flex:0 0 auto;margin-top:3px;color:var(--app-primary)}.insights-panel>.insights-note{border-top:1px solid var(--app-border);padding:14px 20px;background:color-mix(in srgb,var(--app-surface-muted) 40%,white)}.insights-note a{color:var(--app-primary);text-underline-offset:3px}.insights-impact{padding:6px 20px 0}.insights-impact-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:12px 0 18px}.insights-impact-icon{display:grid;place-items:center;height:34px;border-radius:8px;background:var(--app-success-soft);color:var(--app-success)}.insights-impact-icon.insights-tone-negative{color:var(--app-danger);background:var(--app-danger-soft)}.insights-impact-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:.79rem}.insights-impact-label strong{font-weight:600}.insights-impact-label b{font-variant-numeric:tabular-nums}.insights-impact-row p{margin:7px 0 0;font-size:.69rem;color:var(--app-muted);line-height:1.6}.insights-impact-total{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--app-border);padding:16px 0;font-size:.75rem}.insights-impact-total strong{font-size:1rem;font-variant-numeric:tabular-nums}.insights-activity{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface)}.insights-activity>div{display:flex;align-items:center;gap:10px;padding:12px 18px;flex:1;border-right:1px solid var(--app-border)}.insights-activity>div:last-child{border-right:0}.insights-activity span{font-size:.7rem;color:var(--app-muted);white-space:nowrap}.insights-activity strong{font-size:.9rem;font-variant-numeric:tabular-nums}.insights-activity svg{width:15px;color:var(--app-muted);flex-shrink:0}.insights-alert-list{padding:0 20px 8px;list-style:none;margin:0}.insights-alert-list li{padding:16px 0;border-top:1px solid var(--app-border)}.insights-alert-list li:first-child{border-top:0;padding-top:6px}.insights-alert-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.insights-alert-title strong{display:flex;align-items:center;gap:9px;font-size:.8rem;font-weight:600}.insights-alert-title svg{color:var(--app-muted);flex-shrink:0}.insights-alert-title[data-warning=true] svg{color:#96621a}.insights-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;background:var(--app-surface-muted);color:var(--app-muted);border-radius:4px;font-size:.61rem;font-weight:700;white-space:nowrap}.insights-alert-title[data-warning=true] .insights-badge{background:#fff4dc;color:#96621a}.insights-alert-body{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 0 0 26px}.insights-alert-body p{margin:0;color:var(--app-muted);font-size:.71rem;line-height:1.65}.insights-alert-body b{flex-shrink:0;font-size:.79rem}.insights-alert-list .insights-track{margin:12px 0 0 26px}.insights-section-link{display:inline-flex;align-items:center;gap:6px;color:var(--app-primary);font-size:.74rem;text-decoration:none;font-weight:700}.insights-panel-footer{display:flex;justify-content:space-between;gap:12px;padding:14px 20px;border-top:1px solid var(--app-border)}.insights-more{font:inherit;font-size:.73rem;color:var(--app-primary);border:0;background:transparent;padding:4px 0;cursor:pointer;font-weight:700}.insights-empty{padding:44px 24px;text-align:center;border:1px dashed var(--app-border-strong);border-radius:10px;background:var(--app-surface);color:var(--app-muted)}.insights-empty>svg{color:var(--app-primary)}.insights-empty h3{color:var(--app-text);font-size:1rem;margin:14px 0 8px}.insights-empty p{font-size:.8rem;line-height:1.8;max-width:65ch;margin:0 auto 16px}.insights-empty a{display:inline-flex;align-items:center;gap:7px;font-size:.77rem;color:var(--app-primary)}.insights-error{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid color-mix(in srgb,var(--app-danger) 30%,white);border-radius:8px;background:var(--app-danger-soft);color:var(--app-danger);padding:16px 20px;font-size:.8rem}.insights-error p{margin:6px 0 0;font-size:.73rem;line-height:1.6}.insights-error button{display:inline-flex;align-items:center;gap:6px;border:1px solid currentColor;background:#fff;color:inherit;padding:8px 10px;border-radius:6px;font:inherit;font-size:.72rem;cursor:pointer;flex-shrink:0}.insights-workspace .table-wrap{border-radius:10px;box-shadow:none}.insights-workspace .table-heading{padding:17px 20px}.insights-workspace .table-heading h3{font-size:.9rem}.insights-workspace table th{font-size:.62rem}.insights-workspace table td{padding-top:12px;padding-bottom:12px;font-size:.76rem}.insights-workspace :is(th,td):is([data-column*=impact],[data-column=Impact],[data-column*=value],[data-column*=shares],[data-column=Shares]){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.insights-workspace th:is([data-column*=impact],[data-column=Impact],[data-column*=value],[data-column*=shares],[data-column=Shares]) .sort-button{justify-content:flex-end;text-align:right}.insights-workspace button:focus-visible,.insights-workspace a:focus-visible,.insights-tab-strip a:focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.insights-workspace a:hover{text-decoration:underline}.insights-workspace .portfolio-ticker-link:hover{color:var(--app-primary);background:var(--app-primary-soft)}.insights-tab-strip{display:flex;gap:6px;align-items:center;padding:10px 28px;background:var(--app-surface);border-bottom:1px solid var(--app-border);overflow-x:auto}.insights-tab-strip a{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;font-size:.75rem;font-weight:600;color:var(--app-muted);border:1px solid transparent;border-radius:6px;text-decoration:none;white-space:nowrap}.insights-tab-strip a.active,.insights-tab-strip a[aria-current=page]{background:var(--app-primary-soft);border-color:color-mix(in srgb,var(--app-primary) 20%,transparent);color:var(--app-primary);box-shadow:none}.insights-tab-strip a:hover{background:var(--app-surface-muted)}.insights-tab-strip a:after{display:none}@media(min-width:1600px){.insights-metric{padding:22px 24px}}@media(max-width:1150px){.insights-heading{align-items:flex-start;flex-direction:column;gap:12px}.insights-metrics-five{grid-template-columns:repeat(4,minmax(0,1fr))}.insights-metrics-five .insights-metric-primary{grid-column:1 / -1}.insights-metrics-five .insights-metric-primary .insights-metric-detail{margin-top:0}.insights-metric{padding:16px}.insights-metric-value{font-size:1.3rem}.insights-activity>div{padding:12px;gap:7px}}@media(max-width:800px){.insights-metrics,.insights-metrics-five{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.insights-panels,.insights-panels-wide{grid-template-columns:minmax(0,1fr)}.insights-activity>div{flex-basis:50%;border-bottom:1px solid var(--app-border)}.insights-activity>div:nth-child(2){border-right:0}.insights-activity>div:nth-child(n+3){border-bottom:0}}@media(max-width:520px){.insights-workspace{gap:16px}.insights-heading h2{font-size:1.3rem}.insights-heading p{font-size:.75rem}.insights-context{flex-shrink:1}.insights-metrics .insights-metric-primary{grid-column:1 / -1}.insights-metric{padding:15px}.insights-metric-value{font-size:1.2rem}.insights-panel-heading{padding:17px 16px 12px;align-items:flex-start}.insights-list,.insights-alert-list{padding-left:16px;padding-right:16px}.insights-list>li{gap:10px}.insights-impact{padding-left:16px;padding-right:16px}.insights-alert-body{align-items:flex-start;flex-direction:column;gap:5px}.insights-tab-strip{padding:9px 12px;gap:3px}.insights-tab-strip a{padding:8px 9px;font-size:.7rem}.insights-tab-strip svg{display:none}.insights-error{flex-direction:column;align-items:flex-start}}.difference-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.difference-sources{display:flex;flex-wrap:wrap;gap:12px;font-size:.78rem}.difference-sources a{color:var(--app-primary);text-underline-offset:3px}.difference-freshness{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;color:var(--app-muted);font-size:.74rem}.difference-freshness button{margin-left:auto}.difference-filters{display:flex;flex-wrap:wrap;align-items:end;gap:16px;padding:8px 20px 20px}.difference-filters label{display:grid;gap:6px;font-size:.74rem;color:var(--app-muted)}.difference-filters input,.difference-filters select{min-height:38px;padding:8px 12px;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface);color:var(--app-text);font:inherit}.difference-filters>span{margin-left:auto;padding-bottom:10px;font-size:.74rem;color:var(--app-muted)}.difference-workspace .table-wrap{max-width:100%;overflow-x:auto}.difference-workspace .difference-missing{color:var(--app-danger);background:var(--app-danger-soft)}.difference-workspace tbody tr.row-tone-negative:hover{background:color-mix(in oklch,var(--app-danger) 16%,white)}@media(max-width:700px){.difference-metrics{grid-template-columns:1fr}.difference-workspace .insights-heading{align-items:flex-start;flex-direction:column}.difference-filters label{flex:1 1 180px}}.screener-page{gap:20px;min-width:0}.screener-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.screener-eyebrow{color:var(--app-primary);font-size:.66rem;font-weight:800;letter-spacing:.1em}.screener-heading h2{margin:6px 0 8px;font-size:clamp(1.3rem,2vw,1.65rem)}.screener-heading p{margin:0;color:var(--app-muted);max-width:760px;font-size:.86rem;line-height:1.65}.screener-heading .primary-button{display:inline-flex;align-items:center;gap:8px}.tab-strip.screener-tab-strip{gap:8px;padding-block:8px}.tab-strip.screener-tab-strip a{padding:9px 14px;border:1px solid transparent;border-radius:7px;text-decoration:none}.tab-strip.screener-tab-strip a.active{background:var(--app-primary-soft);border-color:color-mix(in srgb,var(--app-primary) 20%,transparent);color:var(--app-primary)}.screener-tab-strip a:focus-visible,.screener-page :is(button,a,input,select):focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.screener-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.screener-metrics-three{grid-template-columns:repeat(3,minmax(0,1fr))}.screener-metric{display:grid;align-content:start;gap:10px;padding:17px 18px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface);box-shadow:var(--app-shadow)}.screener-metric>span{color:var(--app-muted);font-size:.69rem;font-weight:700;text-transform:uppercase}.screener-metric>strong{font-size:clamp(1.35rem,2.2vw,1.85rem);line-height:1.2;font-variant-numeric:tabular-nums}.screener-metric>small{color:var(--app-muted);font-size:.72rem;line-height:1.5}.screener-table-section{min-width:0;display:grid;gap:14px}.screener-panel-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.screener-panel-title h3{margin:0;font-size:.95rem}.screener-panel-title>span,.screener-panel-title p{margin:5px 0 0;font-size:.75rem;color:var(--app-muted);line-height:1.5}.screener-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.screener-search,.screener-select{display:flex;align-items:center;gap:8px;padding:0 11px;min-height:40px;border:1px solid var(--app-border);border-radius:7px;background:var(--app-surface);color:var(--app-muted)}.screener-search{width:min(100%,310px)}.screener-search:focus-within,.screener-select:focus-within{border-color:var(--app-primary)}.screener-search input,.screener-select select{border:0;border-radius:0;min-width:0;padding:10px 0;color:var(--app-text);background:transparent;font:inherit;font-size:.8rem}.screener-search input{width:100%}.screener-search input::placeholder{color:var(--app-muted)}.screener-details-toggle{display:flex;align-items:center;gap:7px;color:var(--app-muted);font-size:.76rem;cursor:pointer;min-height:40px}.screener-details-toggle input{accent-color:var(--app-primary)}.screener-result-count{margin-left:auto;color:var(--app-muted);font-size:.75rem;white-space:nowrap}.screener-page .table-wrap{max-width:100%;box-shadow:var(--app-shadow)}.screener-page table{min-width:900px;width:100%;font-size:.82rem}.screener-page .table-heading{padding:14px 16px;border-bottom:1px solid var(--app-border)}.screener-page .table-heading h3{font-size:.8rem;color:var(--app-muted);font-family:var(--app-font-sans);font-weight:600}.screener-page :is(td,th){padding:11px 14px;vertical-align:middle;white-space:nowrap}.screener-page th{font-size:.65rem}.screener-page :is(td,th)[data-column]:not([data-column=Ticker],[data-column=Sector],[data-column=Industry],[data-column=Recommendation]){text-align:right;font-variant-numeric:tabular-nums}.screener-page th:not([data-column=Ticker],[data-column=Sector],[data-column=Industry],[data-column=Recommendation]) .sort-button{justify-content:flex-end;text-align:right}.screener-page :is(td,th)[data-column=Ticker]{position:sticky;left:0;z-index:1;background:var(--app-surface);border-right:1px solid var(--app-border);min-width:90px}.screener-page th[data-column=Ticker]{background:#f8fafc;z-index:2}.screener-page tbody tr{background:var(--app-surface)}.screener-page tbody tr:nth-child(2n),.screener-page tbody tr:nth-child(2n) td[data-column=Ticker]{background:#f8fafb}.screener-page tbody tr:hover,.screener-page tbody tr:hover td[data-column=Ticker]{background:var(--app-primary-soft)}.screener-page .sort-indicator{color:var(--app-muted);opacity:.45}.screener-page th[aria-sort] .sort-indicator{opacity:1;color:var(--app-primary)}.screener-ticker{display:inline-flex;align-items:center;gap:5px;color:var(--app-text);background:var(--app-surface-muted);border-radius:5px;padding:4px 7px;text-decoration:none;font-size:.74rem;font-weight:800}.screener-ticker:hover{color:var(--app-primary);background:var(--app-primary-soft)}.screener-ticker>span{color:var(--app-muted)}.screener-verdict{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:5px;font-size:.69rem;font-weight:700;line-height:1.4;white-space:nowrap;background:#edf1f4;color:#64748b}.screener-verdict i{width:5px;height:5px;border-radius:50%;background:currentColor}.screener-verdict-strong-buy{color:#176152;background:#deeee7}.screener-verdict-buy{color:#3b654a;background:#e8f0e3}.screener-verdict-hold{color:#786039;background:#f4eddf}.screener-verdict-reduce{color:#995f34;background:#f8e9db}.screener-verdict-sell{color:#a34444;background:#f7e4e2}.screener-footnote{display:flex;gap:8px;margin:0;color:var(--app-muted);font-size:.74rem;line-height:1.7}.screener-footnote svg{flex-shrink:0;margin-top:2px}.screener-empty{display:grid;justify-items:center;text-align:center;gap:10px;padding:34px 16px;border:1px dashed var(--app-border-strong);border-radius:10px;background:var(--app-surface);color:var(--app-muted)}.screener-empty h3,.screener-empty p{margin:0}.screener-empty h3{color:var(--app-text);font-size:.95rem}.screener-empty p{font-size:.82rem}.screener-freshness{display:flex;align-items:center;gap:8px;color:var(--app-muted);font-size:.75rem;line-height:1.6}.screener-map-panel{display:grid;min-width:0;gap:14px;padding:16px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);box-shadow:var(--app-shadow)}.screener-view-toggle{display:flex;gap:3px;border:1px solid var(--app-border);border-radius:7px;padding:3px;background:var(--app-surface-muted)}.screener-view-toggle button{display:flex;align-items:center;gap:6px;border:0;border-radius:4px;padding:7px 10px;background:transparent;color:var(--app-muted);font:inherit;font-size:.74rem;cursor:pointer}.screener-view-toggle button[aria-pressed=true]{background:var(--app-surface);color:var(--app-primary);box-shadow:0 1px 3px #16334a14}.screener-map-legend{display:flex;flex-wrap:wrap;gap:6px}.screener-map-canvas{position:relative;background:var(--app-surface-muted);border-radius:6px;overflow:hidden}.screener-map-sector{position:absolute}.screener-map-sector-name{height:24px;padding:4px 7px;font-size:.67rem;font-weight:700;color:var(--app-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screener-map-tile{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:2px solid var(--app-surface);border-radius:5px;color:#17352f;font-family:var(--app-font-sans);cursor:pointer;overflow:hidden}.screener-map-tile b{font-size:.84rem}.screener-map-tile strong{font-size:.75rem;font-variant-numeric:tabular-nums}.screener-map-tile small{font-size:.68rem;opacity:.85}.screener-map-tile:hover{filter:brightness(1.05)}.screener-map-tile[aria-pressed=true]{box-shadow:inset 0 0 0 2px #174b45}.screener-map-tile:focus-visible{outline-offset:-5px!important;z-index:3}.screener-map-detail{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:14px;border:1px solid var(--app-border);background:var(--app-surface-muted);border-radius:7px}.screener-map-detail>div{display:flex;align-items:center;gap:10px}.screener-map-detail dl{display:flex;flex-wrap:wrap;gap:16px 28px;margin:0}.screener-map-detail dt{font-size:.66rem;color:var(--app-muted);margin-bottom:5px}.screener-map-detail dd{margin:0;font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums}.screener-map-detail>a{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;color:var(--app-primary);text-decoration:none}.screener-map-hint{margin:0;font-size:.71rem;line-height:1.7;color:var(--app-muted)}.screener-map-list{max-height:420px;overflow-y:auto}.screener-map-list>button{display:grid;grid-template-columns:minmax(0,1fr) 100px 100px;align-items:center;width:100%;padding:12px 8px;gap:10px;border:0;border-bottom:1px solid var(--app-border);text-align:left;background:var(--app-surface);color:var(--app-text);font:inherit;font-size:.78rem;cursor:pointer}.screener-map-list>button:hover,.screener-map-list>button[aria-pressed=true]{background:var(--app-primary-soft)}.screener-map-list>button>span:first-child{display:grid;gap:4px}.screener-map-list small{color:var(--app-muted);font-size:.68rem;overflow:hidden;text-overflow:ellipsis}.screener-map-list strong{text-align:right;font-variant-numeric:tabular-nums}.screener-map-list .screener-verdict{justify-self:start}.screener-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:1100px){.screener-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.screener-metrics-three{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.screener-page{gap:18px}.tab-strip.screener-tab-strip{gap:2px;padding-inline:10px}.tab-strip.screener-tab-strip a{padding-inline:10px;font-size:.77rem}.screener-metrics-three{grid-template-columns:repeat(2,minmax(0,1fr))}.screener-metrics-three article:last-child{grid-column:1 / -1}.screener-metric{padding:13px 12px;gap:8px}.screener-metric>span{font-size:.62rem}.screener-metric>small{font-size:.67rem}.screener-search{width:100%}.screener-select{flex:1}.screener-select select{width:100%}.screener-result-count{margin-left:0}.screener-map-panel{padding:12px}.screener-view-toggle{display:none}.screener-map-detail{gap:14px;padding:12px}.screener-map-detail dl{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:14px}.screener-map-list>button{grid-template-columns:minmax(0,1fr) 92px 78px;gap:5px}}.chart-panel.position-changes{min-width:0;padding:20px;font-variant-numeric:tabular-nums}.position-changes .pc-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.position-changes .pc-heading h3{margin:0;color:var(--app-text);font-size:.9rem;font-weight:600}.position-changes .pc-heading p{margin:6px 0 0;color:var(--app-muted);font-size:.72rem;line-height:1.6}.position-changes .pc-total{display:grid;gap:5px;flex-shrink:0;text-align:right}.position-changes .pc-total>span{color:var(--app-muted);font-size:.65rem}.position-changes .pc-total>strong{font-family:var(--app-font-display);font-size:1.25rem;font-weight:600;letter-spacing:-.025em}.position-changes .pc-range{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--app-border);border-radius:7px;background:var(--app-surface-muted);color:var(--app-muted);font-size:.66rem}.position-changes .pc-range>span{display:grid;gap:4px}.position-changes .pc-range>span:last-child{text-align:right}.position-changes .pc-range strong{color:var(--app-text);font-size:.82rem;font-weight:600}.position-changes .pc-column-headings,.position-changes .pc-month{display:grid;grid-template-columns:78px minmax(0,1fr) 112px;align-items:center;gap:16px}.position-changes .pc-column-headings{margin-top:20px;padding:0 0 9px;color:var(--app-muted);font-size:.61rem}.position-changes .pc-column-headings>span:nth-child(2){display:flex;justify-content:space-between}.position-changes .pc-column-headings>span:last-child{text-align:right}.position-changes .pc-months{list-style:none;max-height:390px;overflow-y:auto;padding:0;margin:0}.position-changes .pc-month{min-height:53px;padding:9px 0;border-top:1px solid var(--app-border)}.position-changes .pc-month-label{display:grid;gap:3px}.position-changes .pc-month-label strong{color:var(--app-text);font-size:.74rem;font-weight:500;text-transform:capitalize}.position-changes .pc-month-label span{color:var(--app-muted);font-size:.62rem}.position-changes .pc-track{position:relative;height:24px;border-radius:4px;background:var(--app-surface-muted)}.position-changes .pc-track:after{position:absolute;top:-10px;bottom:-10px;left:50%;width:1px;background:var(--app-border-strong, #cbd5e1);content:""}.position-changes .pc-bar{position:absolute;top:5px;height:14px;min-width:0;border-radius:3px}.position-changes .pc-bar-positive{left:50%;background:#348570}.position-changes .pc-bar-negative{right:50%;background:#c46161}.position-changes .pc-zero-dot{position:absolute;left:calc(50% - 2px);top:10px;width:4px;height:4px;border-radius:50%;background:var(--app-muted);z-index:1}.position-changes .pc-month-value{display:grid;gap:4px;text-align:right}.position-changes .pc-month-value strong{font-size:.8rem;font-weight:600}.position-changes .pc-month-value>span{color:var(--app-muted);font-size:.64rem}.position-changes .pc-positive{color:var(--app-success, #348570)}.position-changes .pc-negative{color:var(--app-danger, #c46161)}.position-changes .pc-neutral{color:var(--app-muted)}.position-changes .pc-note,.position-changes .pc-empty{margin:14px 0 0;color:var(--app-muted);font-size:.66rem;line-height:1.7}.position-changes .pc-details{margin-top:16px;border-top:1px solid var(--app-border)}.position-changes .pc-details summary{display:flex;align-items:center;gap:8px;padding-top:14px;color:var(--app-primary);cursor:pointer;font-size:.72rem;font-weight:600}.position-changes .pc-details summary:before{content:"+";font-size:.95rem}.position-changes .pc-details[open] summary:before{content:"−"}.position-changes .pc-details summary>span{margin-left:auto;color:var(--app-muted);font-size:.64rem;font-weight:400}.position-changes .pc-details summary:focus-visible{outline:2px solid var(--app-primary);outline-offset:4px}.position-changes .pc-table-wrap{max-height:320px;overflow:auto;margin-top:12px}.position-changes table{width:100%;border-collapse:collapse;font-size:.69rem;white-space:nowrap}.position-changes :is(th,td){padding:10px 12px;text-align:right;border-bottom:1px solid var(--app-border)}.position-changes th:first-child{text-align:left}.position-changes thead th{position:sticky;top:0;background:var(--app-surface-muted);color:var(--app-muted);font-weight:500}.position-changes tbody th{color:var(--app-text);font-weight:400}.position-changes .pc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:600px){.chart-panel.position-changes{padding:16px}.position-changes .pc-heading{flex-wrap:wrap}.position-changes .pc-total{text-align:left}.position-changes .pc-column-headings,.position-changes .pc-month{grid-template-columns:60px minmax(0,1fr) 96px;gap:10px}.position-changes .pc-month-value strong{font-size:.72rem}.position-changes .pc-column-headings>span:nth-child(2){visibility:hidden}}.stock-metric-explorer{display:grid;gap:16px;min-width:0}.stock-metric-explorer .sme-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0 0}.stock-metric-explorer .sme-heading h3{margin:0;color:var(--app-text);font-size:1rem;font-weight:600}.stock-metric-explorer .sme-heading p{margin:5px 0 0;color:var(--app-muted);font-size:.7rem}.stock-metric-explorer .sme-search{display:flex;align-items:center;gap:8px;width:245px;padding:9px 11px;border:1px solid var(--app-border);border-radius:7px;background:var(--app-surface);color:var(--app-muted)}.stock-metric-explorer .sme-search input{width:100%;min-width:0;padding:0;border:0;background:transparent;color:var(--app-text);font:inherit;font-size:.73rem;outline:none}.stock-metric-explorer .sme-search:focus-within{outline:2px solid var(--app-primary);outline-offset:2px}.stock-metric-explorer .sme-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.stock-metric-explorer .sme-group{min-width:0;padding:16px 18px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface)}.stock-metric-explorer .sme-group h4{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--app-border);color:var(--app-text);font-size:.76rem;font-weight:600}.stock-metric-explorer .sme-group h4>span{color:var(--app-muted);font-size:.63rem;font-weight:400}.stock-metric-explorer .sme-group dl{display:grid;gap:0;margin:0}.stock-metric-explorer .sme-group dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--app-border)}.stock-metric-explorer .sme-group dl>div:last-child{border:0;padding-bottom:0}.stock-metric-explorer .sme-group dt{color:var(--app-muted);font-size:.71rem;line-height:1.5;overflow-wrap:anywhere}.stock-metric-explorer .sme-group dd{margin:0;color:var(--app-text);font-size:.78rem;font-weight:600;text-align:right;overflow-wrap:anywhere}.stock-metric-explorer .sme-group dd.sme-positive,.stock-metric-explorer .sme-positive{color:var(--app-success)}.stock-metric-explorer .sme-group dd.sme-negative,.stock-metric-explorer .sme-negative{color:var(--app-danger)}.stock-metric-explorer .sme-statements{display:grid;gap:10px}.stock-metric-explorer .sme-statement{min-width:0;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface)}.stock-metric-explorer .sme-statement summary{display:flex;align-items:center;gap:10px;padding:15px 18px;color:var(--app-text);cursor:pointer;font-size:.8rem;font-weight:600;list-style:none}.stock-metric-explorer .sme-statement summary::-webkit-details-marker{display:none}.stock-metric-explorer .sme-statement summary:before{content:"+";color:var(--app-primary);font-size:1rem}.stock-metric-explorer .sme-statement[open] summary:before{content:"−"}.stock-metric-explorer .sme-statement summary small{display:inline-block;margin-left:10px;color:var(--app-muted);font-size:.68rem;font-weight:400}.stock-metric-explorer .sme-statement summary>span:last-child{margin-left:auto;color:var(--app-muted);font-size:.65rem;font-weight:400}.stock-metric-explorer .sme-statement-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px 14px}.stock-metric-explorer .sme-statement-toolbar p{margin:0;color:var(--app-muted);font-size:.65rem}.stock-metric-explorer .sme-statement-toolbar>div{display:flex;flex-wrap:wrap;gap:3px}.stock-metric-explorer .sme-statement-toolbar button{min-height:30px;padding:5px 9px;border:1px solid transparent;border-radius:5px;background:var(--app-surface-muted);color:var(--app-muted);font:inherit;font-size:.65rem;cursor:pointer}.stock-metric-explorer .sme-statement-toolbar button[aria-pressed=true]{background:var(--app-primary-soft);color:var(--app-primary);border-color:var(--app-border)}.stock-metric-explorer .sme-table-wrap{max-height:420px;overflow:auto;border-top:1px solid var(--app-border);border-radius:0 0 10px 10px}.stock-metric-explorer table{width:100%;border-collapse:separate;border-spacing:0;font-size:.72rem}.stock-metric-explorer :is(th,td){min-width:110px;padding:11px 18px;border-bottom:1px solid var(--app-border);text-align:right;white-space:nowrap}.stock-metric-explorer th:first-child{position:sticky;left:0;text-align:left;background:var(--app-surface);border-right:1px solid var(--app-border);z-index:1;min-width:190px;font-weight:500}.stock-metric-explorer thead th{position:sticky;top:0;z-index:2;color:var(--app-muted);background:var(--app-surface-muted);font-size:.67rem;font-weight:600}.stock-metric-explorer thead th:first-child{z-index:3;background:var(--app-surface-muted)}.stock-metric-explorer tbody tr:hover :is(th,td){background:var(--app-surface-muted)}.stock-metric-explorer .sme-empty,.stock-metric-explorer .sme-search-result{margin:0;color:var(--app-muted);font-size:.74rem;line-height:1.6}.stock-metric-explorer .sme-search-result{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.stock-metric-explorer .sme-search-result button{padding:5px 8px;border:0;border-radius:4px;background:var(--app-primary-soft);color:var(--app-primary);font:inherit;cursor:pointer}.stock-metric-explorer :is(button,summary,[tabindex]):focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.sme-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:1000px){.stock-metric-explorer .sme-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.stock-metric-explorer .sme-heading{flex-direction:column;align-items:stretch}.stock-metric-explorer .sme-search{width:auto}.stock-metric-explorer .sme-groups{grid-template-columns:minmax(0,1fr)}.stock-metric-explorer .sme-statement summary small{display:block;margin:5px 0 0}.stock-metric-explorer .sme-statement-toolbar{align-items:flex-start;flex-direction:column}.stock-metric-explorer th:first-child{min-width:145px;max-width:170px;white-space:normal}.stock-metric-explorer :is(th,td){padding:10px 12px}}.stock-route-section{min-width:0;gap:16px;padding-top:4px;font-variant-numeric:tabular-nums}.stock-route-section .back-link{display:inline-flex;align-items:center;gap:7px;padding:7px 0;border:0;box-shadow:none;background:transparent;font-size:.78rem}.stock-route-section .stock-detail-panel{min-width:0;gap:16px;padding:0;border:0;background:transparent;box-shadow:none}.stock-route-section .stock-detail-heading{align-items:flex-start;gap:20px;padding:20px 24px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface)}.stock-identity{min-width:0;display:grid;gap:10px}.stock-route-section .stock-title-row{gap:10px;align-items:center}.stock-route-section .stock-title-row h2{font-family:var(--app-font-display);font-size:1.65rem;letter-spacing:-.04em;overflow-wrap:anywhere}.stock-asset-type{padding:4px 8px;border-radius:5px;background:var(--app-primary-soft);color:var(--app-primary);font-size:.65rem;font-weight:700}.stock-route-section .stock-company-name{margin:0;color:var(--app-muted);font-size:.85rem;line-height:1.5}.stock-current-quote{display:grid;flex-shrink:0;gap:5px;text-align:right}.stock-current-quote>span{color:var(--app-muted);font-size:.7rem}.stock-current-quote>strong{color:var(--app-text);font-family:var(--app-font-display);font-size:1.6rem;letter-spacing:-.04em}.stock-current-quote>small{color:var(--app-muted);font-size:.65rem}.stock-route-section .stock-quote-links{gap:6px}.stock-route-section .stock-quote-links span{padding:4px 7px;font-size:.65rem;overflow-wrap:anywhere}.stock-route-section .stock-quote-links-missing{margin:0;font-size:.7rem}.stock-route-section .stock-overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0}.stock-route-section .stock-overview-stats>div{display:grid;align-content:start;gap:10px;min-width:0;padding:16px 20px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface)}.stock-route-section .stock-overview-stats dt{color:var(--app-muted);font-size:.7rem;font-weight:500}.stock-route-section .stock-overview-stats dd{color:var(--app-text);font-family:var(--app-font-display);font-size:1.3rem;font-weight:600;letter-spacing:-.025em;overflow-wrap:anywhere}.stock-route-section .cell-positive,.measured-detail-chart .cell-positive{color:var(--app-success)}.stock-route-section .cell-negative,.measured-detail-chart .cell-negative{color:var(--app-danger)}.stock-route-section .stock-overview-stats dd.cell-positive{color:var(--app-success)}.stock-route-section .stock-overview-stats dd.cell-negative{color:var(--app-danger)}.stock-route-section .stock-detail-meta{flex-wrap:wrap;gap:10px 16px;padding:0 2px;font-size:.69rem}.stock-detail-meta>span,.stock-source-links,.stock-source-links a{display:inline-flex;align-items:center;gap:6px}.stock-source-links{gap:18px}.stock-position-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}.measured-detail-chart{min-width:0;padding:20px}.measured-detail-chart .chart-heading{align-items:flex-start;gap:12px;min-height:45px;margin-bottom:12px}.measured-detail-chart .chart-heading h3{margin:0;color:var(--app-text);font-size:.88rem;font-weight:600}.measured-detail-chart .chart-heading p{margin:6px 0 0;color:var(--app-muted);font-size:.67rem;line-height:1.6}.measured-detail-chart .chart-heading>span{flex-shrink:0;color:var(--app-text);font-size:.95rem;font-weight:600;text-align:right}.measured-detail-chart .chart-heading>span.cell-positive{color:var(--app-success)}.measured-detail-chart .chart-heading>span.cell-negative{color:var(--app-danger)}.measured-detail-chart .chart-heading small{display:block;margin-top:5px;font-size:.65rem;font-weight:500}.measured-detail-chart .chart-heading>.stock-chart-count{padding:4px 7px;border:1px solid var(--app-border);border-radius:5px;color:var(--app-muted);font-size:.64rem;white-space:nowrap}.measured-detail-chart .chart-axis-label{font-family:var(--app-font-sans);font-size:11px;font-weight:400}.measured-detail-chart .stock-history-value-axis{fill:#91713e}.measured-detail-chart .stock-history-legend{gap:14px;padding-top:12px;margin-top:4px;border-top:1px solid var(--app-border);font-size:.67rem;font-weight:500}.measured-detail-chart .stock-history-legend a{margin-left:auto}.measured-detail-chart .stock-history-legend-shares:before{background:#348570}.measured-detail-chart .stock-price-history-legend-adjusted:before{background:#547c91}.measured-detail-chart .stock-price-history-legend-buy:before{background:#348570}.measured-detail-chart .stock-price-history-legend-sell:before{background:#c46161}.measured-detail-chart .stock-price-history-line-adjusted{stroke:#547c91;stroke-width:2;stroke-linejoin:round}.measured-detail-chart .stock-history-shares-line{stroke:#348570;stroke-width:1.8}.measured-detail-chart .stock-history-value-line{stroke-width:1.8}.measured-detail-chart .stock-history-value-line-total{stroke:#a98a54}.measured-detail-chart .portfolio-delta-bar-positive{fill:#348570;opacity:.7}.measured-detail-chart .portfolio-delta-bar-negative{fill:#c46161;opacity:.7}.stock-route-section .stock-detail-state{padding:24px;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface);color:var(--app-muted);font-size:.78rem;line-height:1.6}.stock-detail-state>p{margin:0 0 12px}.stock-route-section :is(button,a,summary):focus-visible{outline:2px solid var(--app-primary);outline-offset:4px}.stock-route-section .fair-value-panel{gap:16px;min-width:0;padding:20px 24px;background:var(--app-surface)}.stock-route-section .fair-value-heading{flex-wrap:wrap;align-items:flex-start}.stock-route-section .fair-value-title-row h3{font-size:1rem;line-height:1.5}.stock-route-section .fair-value-heading .eyebrow{display:block;margin-bottom:6px;color:var(--app-muted);font-size:.63rem;letter-spacing:.04em}.stock-route-section .fair-value-recommendation{min-height:24px;padding:3px 7px;font-size:.64rem}.stock-route-section .fair-value-badge{min-height:24px;padding:4px 8px;font-size:.64rem;font-weight:500}.stock-route-section .fair-value-warning{min-height:24px;padding:4px 8px;font-size:.65rem;font-weight:500}.stock-route-section .fair-value-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:16px 0;border-block:1px solid var(--app-border)}.stock-route-section .fair-value-grid article{min-width:0;padding:0 18px;gap:9px;border:0;border-right:1px solid var(--app-border);border-radius:0;box-shadow:none;background:transparent}.stock-route-section .fair-value-grid article:first-child{padding-left:0}.stock-route-section .fair-value-grid article:last-child{border-right:0;padding-right:0}.stock-route-section .fair-value-grid span{color:var(--app-muted);font-size:.68rem;font-weight:400;text-transform:none}.stock-route-section .fair-value-grid strong{font-family:var(--app-font-display);font-size:1.25rem;font-weight:600;overflow-wrap:anywhere}.stock-route-section .stock-valuation-details{min-width:0}.stock-route-section .stock-valuation-details summary{display:flex;align-items:center;gap:8px;color:var(--app-primary);font-size:.72rem;font-weight:600;cursor:pointer;list-style:none}.stock-route-section .stock-valuation-details summary::-webkit-details-marker{display:none}.stock-route-section .stock-valuation-details summary:before{content:"+";font-size:1rem}.stock-route-section .stock-valuation-details[open] summary:before{content:"−"}.stock-route-section .fair-value-summary{margin:14px 0;font-size:.75rem;line-height:1.7}.stock-route-section .fair-value-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stock-route-section .fair-value-details div{min-width:0;padding:10px 12px;background:var(--app-surface-muted)}.stock-route-section .fair-value-details dt{color:var(--app-muted);font-size:.65rem;text-transform:none}.stock-route-section .fair-value-details dd{color:var(--app-text);font-size:.8rem;overflow-wrap:anywhere}.stock-route-section .fair-value-checks{margin-top:14px}.stock-route-section .fair-value-check{min-height:24px;font-size:.65rem;font-weight:500}.stock-route-section .fundamental-chart-grid{gap:12px;min-width:0;align-items:start}.stock-route-section .stock-business-history{display:grid;gap:14px;min-width:0}.stock-route-section .stock-business-history>header h3{margin:8px 0 5px;color:var(--app-text);font-size:1rem;font-weight:600}.stock-route-section .stock-business-history>header p{margin:0;color:var(--app-muted);font-size:.7rem;line-height:1.6}.stock-route-section .fundamental-bar-chart{padding:18px 16px}.stock-route-section .fundamental-bar{fill:#7295a4}.stock-route-section .fundamental-bar-negative{fill:#c46161}.stock-route-section .fundamental-chart-data{margin-top:8px;border-top:1px solid var(--app-border)}.stock-route-section .fundamental-chart-data summary{padding-top:12px;color:var(--app-muted);font-size:.65rem;cursor:pointer}.stock-route-section .fundamental-chart-data dl{display:grid;gap:7px;margin:12px 0 0}.stock-route-section .fundamental-chart-data dl>div{display:flex;justify-content:space-between;gap:12px;color:var(--app-muted);font-size:.7rem}.stock-route-section .fundamental-chart-data dd{margin:0;color:var(--app-text);font-weight:600}@media(max-width:1100px){.stock-position-charts{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.stock-route-section{gap:12px}.stock-route-section .stock-detail-heading{padding:16px;flex-direction:column;gap:16px}.stock-current-quote{text-align:left}.stock-current-quote>strong{font-size:1.4rem}.stock-route-section .stock-overview-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stock-route-section .stock-overview-stats>div{padding:14px}.stock-route-section .stock-overview-stats dd{font-size:1.15rem}.stock-route-section .stock-detail-meta{font-size:.65rem}.measured-detail-chart{padding:16px 12px}.measured-detail-chart .chart-heading{flex-wrap:wrap}.measured-detail-chart .chart-heading>span{text-align:left}.measured-detail-chart .chart-heading h3{font-size:.82rem}.stock-route-section .fair-value-panel{padding:16px}.stock-route-section .fair-value-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0}.stock-route-section .fair-value-grid article{padding:0 12px}.stock-route-section .fair-value-grid article:nth-child(odd){padding-left:0}.stock-route-section .fair-value-grid article:nth-child(2n){border-right:0;padding-right:0}.stock-route-section .fair-value-grid strong{font-size:1.1rem}.stock-route-section .fair-value-details{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-route-section .fundamental-chart-grid{grid-template-columns:minmax(0,1fr)}}.value-history{--vh-color: var(--app-primary);gap:16px;min-width:0;font-variant-numeric:tabular-nums}.vh-total{--vh-color: var(--app-primary)}.vh-stocks{--vh-color: #348570}.vh-etfs{--vh-color: #547cad}.vh-page-heading,.vh-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.vh-page-heading h2{margin:0;font-size:1.4rem}.vh-page-heading p,.vh-panel-heading p{margin:6px 0 0;color:var(--app-muted);font-size:.78rem;line-height:1.6}.vh-periods{display:flex;flex-shrink:0;gap:3px;padding:4px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface)}.vh-periods button{min-width:43px;min-height:34px;padding:6px 10px;border:0;border-radius:5px;background:transparent;color:var(--app-muted);font:inherit;font-size:.75rem;font-weight:700;cursor:pointer}.vh-periods button:hover{background:var(--app-surface-muted);color:var(--app-text)}.vh-periods button[aria-pressed=true]{background:var(--app-primary-soft);color:var(--app-primary)}.vh-summaries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vh-summary{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:0;border:1px solid var(--app-border);border-radius:10px;padding:18px 20px;text-align:left;background:var(--app-surface);box-shadow:var(--app-shadow);color:var(--app-text);font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s}.vh-summary:hover{border-color:var(--vh-color)}.vh-summary[aria-pressed=true]{border-color:var(--vh-color);box-shadow:inset 0 2px 0 var(--vh-color),var(--app-shadow)}.vh-summary-label{display:flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700}.vh-summary-label i{width:7px;height:7px;border-radius:50%;background:var(--vh-color);flex-shrink:0}.vh-summary-label>span{margin-left:auto;color:var(--app-muted);font-size:.64rem;font-weight:500}.vh-summary[aria-pressed=true] .vh-summary-label>span{color:var(--vh-color)}.vh-summary>strong{font-family:var(--app-font-display);font-size:clamp(1.25rem,2vw,1.8rem);letter-spacing:-.035em;overflow-wrap:anywhere}.vh-summary-change{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;min-height:19px;font-size:.71rem}.vh-summary-change>span:last-child:not(.vh-change){color:var(--app-muted);font-size:.65rem}.vh-panel{min-width:0;padding:20px 22px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);box-shadow:var(--app-shadow)}.vh-panel-heading{align-items:flex-start;margin-bottom:16px}.vh-panel-heading h3{margin:0;font-size:.95rem}.vh-count{flex-shrink:0;padding:5px 9px;border:1px solid var(--app-border);border-radius:5px;color:var(--app-muted);font-size:.68rem}.vh-readout{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:14px}.vh-readout>span:first-child{display:grid;gap:5px;color:var(--app-muted);font-size:.65rem}.vh-readout small{color:var(--app-text);font-size:.72rem}.vh-readout>strong{color:var(--vh-color);font-size:1.2rem;font-family:var(--app-font-display)}.vh-chart{min-width:0}.vh-chart>svg{display:block;width:100%;height:auto;overflow:visible}.vh-grid{stroke:var(--app-border);stroke-width:1;stroke-dasharray:3 4}.vh-zero{stroke:var(--app-border-strong);stroke-width:1}.vh-axis{fill:var(--app-muted);font:11px var(--app-font-sans)}.vh-area{fill:var(--vh-color);opacity:.06}.vh-line{fill:none;stroke:var(--vh-color);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.vh-point{fill:var(--vh-color);stroke:var(--app-surface);stroke-width:2}.vh-guide{stroke:var(--app-muted-2);stroke-dasharray:3 3}.vh-bar-positive{fill:var(--app-success);opacity:.65}.vh-bar-negative{fill:var(--app-danger);opacity:.6}.vh-chart-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:12px;margin-top:8px;border-top:1px solid var(--app-border);color:var(--app-muted);font-size:.68rem}.vh-chart-footer>span{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px}.vh-change{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;font-weight:600}.vh-change svg{flex-shrink:0}.vh-positive{color:var(--app-success)}.vh-negative{color:var(--app-danger)}.vh-neutral{color:var(--app-muted)}.vh-legend{display:flex;gap:14px;flex-shrink:0;color:var(--app-muted);font-size:.67rem}.vh-legend>span{display:inline-flex;align-items:center;gap:6px}.vh-legend i{width:7px;height:7px;border-radius:2px;background:var(--app-success)}.vh-legend>span:last-child i{background:var(--app-danger)}.vh-scrubber{display:block;width:100%;height:16px;margin:4px 0 0;accent-color:var(--vh-color);opacity:0;cursor:ew-resize}.vh-chart:hover .vh-scrubber,.vh-scrubber:focus-visible{opacity:1}.value-history :is(button,input,summary):focus-visible{outline:2px solid var(--app-primary);outline-offset:4px}.vh-data{padding:0}.vh-data summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;cursor:pointer;font-size:.78rem;font-weight:600}.vh-data summary:before{content:"+";color:var(--app-primary);font-size:1rem}.vh-data[open] summary:before{content:"−"}.vh-data summary span{margin-left:auto;color:var(--app-muted);font-size:.68rem;font-weight:500}.vh-table-wrap{max-height:350px;overflow:auto;border-top:1px solid var(--app-border)}.vh-data table{width:100%;border-collapse:collapse;font-size:.72rem}.vh-data :is(th,td){padding:12px 22px;border-bottom:1px solid var(--app-border);text-align:right;white-space:nowrap}.vh-data th:first-child{text-align:left}.vh-data thead th{position:sticky;top:0;background:var(--app-surface-muted);color:var(--app-muted);font-size:.66rem}.vh-data tbody th{font-weight:500}.vh-data tbody tr:hover{background:var(--app-surface-muted)}.vh-empty,.vh-hint{color:var(--app-muted);font-size:.78rem;line-height:1.7}.vh-empty{padding:35px 0;text-align:center}.vh-state{display:flex;min-height:320px;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);color:var(--app-muted);text-align:center}.vh-state h3{margin:0;color:var(--app-text);font-size:1rem}.vh-state p{margin:0;font-size:.82rem}.vh-state>svg{color:var(--app-primary)}.vh-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:800px){.vh-summary{padding:15px;gap:10px}.vh-summary-label>span{display:none}.vh-summary-change{font-size:.66rem}.vh-panel{padding:18px 16px}.vh-data{padding:0}}@media(max-width:560px){.vh-page-heading{align-items:flex-start;flex-direction:column;gap:12px}.vh-periods{width:100%}.vh-periods button{flex:1;min-height:36px}.vh-summaries{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.vh-summary:first-child{grid-column:1 / -1}.vh-summary{padding:13px 14px;gap:10px}.vh-summary-label{gap:5px;font-size:.75rem}.vh-summary-label i{width:5px;height:5px}.vh-summary>strong{font-size:1.2rem;letter-spacing:-.04em}.vh-summary-change{min-height:32px;align-content:flex-start;font-size:.68rem}.vh-summary-change>.vh-change>svg{display:none}.vh-summary-change>span:last-child:not(.vh-change){font-size:.65rem}.vh-panel-heading{gap:10px;flex-wrap:wrap}.vh-panel-heading h3{font-size:.85rem}.vh-panel-heading p{font-size:.7rem}.vh-readout>strong{font-size:1rem}.vh-scrubber{opacity:1}.vh-data :is(th,td){padding:11px 12px}.vh-data summary{padding:15px}}.portfolio-score-section{--score-amber: #95610c;--score-amber-soft: #faf3e5;font-variant-numeric:tabular-nums}.score-page-heading,.score-heading-meta,.score-section-heading,.score-panel-title,.score-dimension-top,.score-dimension-number,.score-coverage-head,.score-eyebrow{display:flex;align-items:center}.score-page-heading,.score-section-heading{justify-content:space-between;gap:16px}.score-page-heading h2{margin:0;font-size:1.45rem}.score-page-heading p{margin:7px 0 0;color:var(--app-muted);font-size:.88rem}.score-heading-meta{gap:8px;flex-wrap:wrap}.score-heading-meta>span{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--app-border);border-radius:6px;padding:7px 10px;background:var(--app-surface);color:var(--app-muted);font-size:.75rem;font-weight:600}.score-heading-meta i{width:6px;height:6px;background:var(--app-primary);border-radius:50%}.score-summary{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);align-items:center;gap:28px;border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);padding:26px;box-shadow:var(--app-shadow)}.score-summary-main{display:flex;align-items:center;gap:26px;min-width:0}.score-gauge{display:grid;flex:0 0 142px;width:142px;height:142px;padding:10px;border-radius:50%;background:conic-gradient(var(--app-primary) calc(var(--score) * 1%),var(--app-surface-muted) 0)}.score-gauge>div{display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:50%;background:var(--app-surface)}.score-gauge strong{color:var(--app-text);font-family:var(--app-font-display);font-size:2.8rem;line-height:1.15;letter-spacing:-.05em}.score-gauge span{color:var(--app-muted);font-size:.7rem}.score-eyebrow{gap:10px;flex-wrap:wrap;color:var(--app-muted);font-size:.72rem;font-weight:700}.score-grade{padding:4px 8px;color:var(--score-color);background:var(--score-soft);border-radius:5px;font-size:.7rem}.score-summary-copy h3{margin:12px 0 8px;font-size:1.2rem;line-height:1.4}.score-summary-copy p{margin:0;max-width:470px;color:var(--app-muted);font-size:.84rem;line-height:1.65}.score-text-link{display:inline-flex;align-items:center;gap:4px;margin-top:13px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--app-primary);text-decoration:none;font:inherit;font-size:.75rem;font-weight:700}.score-highlights{display:grid;gap:12px;border-left:1px solid var(--app-border);padding-left:28px}.score-highlight{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--app-border);border-radius:8px;color:var(--app-text);text-decoration:none;transition:border-color .15s,background .15s}.score-highlight:hover{border-color:var(--app-primary);background:var(--app-surface-muted)}.score-highlight-icon{display:grid;flex:0 0 34px;height:34px;border-radius:8px;place-items:center}.score-highlight-positive{color:var(--app-success);background:var(--app-success-soft)}.score-highlight-review{color:var(--score-amber);background:var(--score-amber-soft)}.score-highlight>div{display:grid;gap:4px;flex:1}.score-highlight>div>span{color:var(--app-muted);font-size:.7rem}.score-highlight strong{font-size:.83rem}.score-highlight b{font-size:1.25rem}.score-highlight small{display:block;color:var(--app-muted);font-size:.63rem;font-weight:500;text-align:right}.score-highlight>svg{color:var(--app-muted);flex-shrink:0}.score-section-heading{margin-top:4px}.score-section-heading h3{margin:0;font-size:.95rem}.score-section-heading>span{color:var(--app-muted);font-size:.73rem}.score-dimensions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.score-tone-good{--score-color: var(--app-success);--score-soft: var(--app-success-soft)}.score-tone-review{--score-color: var(--score-amber);--score-soft: var(--score-amber-soft)}.score-tone-weak{--score-color: var(--app-danger);--score-soft: var(--app-danger-soft)}.score-tone-neutral{--score-color: var(--app-muted);--score-soft: var(--app-surface-muted)}.score-dimension{display:flex;flex-direction:column;min-width:0;padding:18px 16px 0;border:1px solid var(--app-border);border-radius:10px;background:var(--app-surface);box-shadow:var(--app-shadow)}.score-dimension-top{justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:5px}.score-dimension h4{margin:0;font-size:.82rem}.score-dimension-top>span{font-size:.65rem;color:var(--app-muted)}.score-dimension-number{margin:18px 0 13px;gap:5px;align-items:baseline}.score-dimension-number>strong{color:var(--app-text);font-family:var(--app-font-display);font-size:2rem;line-height:1;letter-spacing:-.04em}.score-dimension-number>span{color:var(--app-muted);font-size:.7rem}.score-dimension-number>b{margin-left:auto;padding:4px 6px;border-radius:4px;background:var(--score-soft);color:var(--score-color);font-size:.64rem;font-weight:700}.score-dimension-bar{height:5px;overflow:hidden;border-radius:4px;background:var(--app-surface-muted)}.score-dimension-bar>span{display:block;height:100%;background:var(--score-color);border-radius:inherit}.score-dimension>p{margin:15px 0 12px;color:var(--app-muted);font-size:.76rem;line-height:1.65}.score-dimension-value{margin-top:auto;min-height:32px;color:var(--app-text);font-size:.73rem;font-weight:700}.score-dimension-value .portfolio-ticker-link{font-size:.7rem}.score-dimension-link{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--app-border);padding:11px 0;color:var(--app-muted);font-size:.7rem;text-decoration:none}.score-dimension-link:hover,.score-text-link:hover{color:var(--app-primary);text-decoration:underline}.score-detail-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}.score-panel{min-width:0;padding:20px;background:var(--app-surface);border:1px solid var(--app-border);border-radius:12px;box-shadow:var(--app-shadow)}.score-panel-title{gap:9px;margin-bottom:16px}.score-panel-title svg{color:var(--app-primary);flex-shrink:0}.score-panel-title h3{margin:0;font-size:.93rem}.score-driver-list,.score-coverage-list{list-style:none;margin:0;padding:0}.score-driver-list li,.score-coverage-list li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--app-border)}.score-driver-list li:last-child,.score-coverage-list li:last-child{border-bottom:0;padding-bottom:0}.score-driver-list li>div,.score-coverage-list li>div{display:grid;gap:4px;flex:1;min-width:0}.score-driver-list strong,.score-coverage-list strong{font-size:.8rem;font-weight:600}.score-driver-list span,.score-coverage-list span{font-size:.72rem;line-height:1.5;color:var(--app-muted)}.score-driver-list b,.score-coverage-list b{font-size:.8rem;text-align:right;flex-shrink:0}.score-driver-dot{flex:0 0 6px;height:6px;border-radius:50%;background:var(--app-border-strong)}.score-driver-positive{background:var(--app-success)}.score-driver-negative{background:var(--app-danger)}.score-coverage-head{justify-content:space-between;gap:12px;padding-top:4px}.score-coverage-head>span{color:var(--app-muted);font-size:.75rem}.score-coverage-head>strong{font-family:var(--app-font-display);font-size:1.5rem}.score-coverage-bar{display:flex;height:10px;margin:14px 0 12px;border-radius:5px;overflow:hidden;background:var(--app-border)}.score-coverage-modeled{background:var(--app-primary)}.score-coverage-etf{background:#9abdc6}.score-coverage-legend{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px}.score-coverage-legend>span{display:inline-flex;align-items:center;gap:6px;color:var(--app-muted);font-size:.67rem}.score-coverage-legend i{width:7px;height:7px;border-radius:2px}.score-coverage-legend i:not([class]){background:var(--app-border)}.score-data-note{display:flex;align-items:flex-start;gap:8px;margin:20px 0 0;padding:12px;border-radius:6px;background:var(--app-surface-muted);color:var(--app-muted);font-size:.72rem;line-height:1.6}.score-data-note svg{flex-shrink:0;margin-top:2px}.score-methodology{border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);scroll-margin-top:24px}.score-methodology summary{padding:16px 20px;cursor:pointer;font-size:.8rem;font-weight:700}.score-methodology summary>span{float:right;color:var(--app-muted);font-size:.73rem;font-weight:400}.score-methodology>div{padding:0 20px 16px;color:var(--app-muted);font-size:.8rem;line-height:1.7}.score-methodology ul{list-style:none;padding:0;max-width:560px}.score-methodology li{display:flex;justify-content:space-between;gap:12px;padding:6px 0}.score-methodology strong{color:var(--app-text)}.score-load-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border:1px solid var(--app-danger);border-radius:8px;color:var(--app-danger);background:var(--app-danger-soft);font-size:.85rem}.score-load-error p{margin:0}.score-load-error button{flex-shrink:0;cursor:pointer;padding:8px 12px;border:1px solid currentColor;border-radius:5px;color:inherit;background:var(--app-surface)}.score-empty{display:grid;justify-items:center;padding:48px 20px;text-align:center;background:var(--app-surface);border:1px solid var(--app-border);border-radius:12px}.score-empty svg,.score-empty a{color:var(--app-primary)}.score-empty p{color:var(--app-muted)}.portfolio-score-section :is(a,button,summary):focus-visible{outline:2px solid var(--app-primary);outline-offset:4px;border-radius:4px}@media(max-width:1250px){.score-summary{grid-template-columns:1fr;gap:22px}.score-highlights{grid-template-columns:1fr 1fr;border-left:0;border-top:1px solid var(--app-border);padding:20px 0 0}.score-dimensions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.score-page-heading{align-items:flex-start;flex-direction:column}.score-summary{padding:20px}.score-summary-main{gap:18px}.score-gauge{flex-basis:112px;width:112px;height:112px;padding:8px}.score-gauge strong{font-size:2.3rem}.score-summary-copy h3{font-size:1rem}.score-summary-copy p{font-size:.78rem}.score-dimensions{grid-template-columns:repeat(2,minmax(0,1fr))}.score-detail-grid{grid-template-columns:1fr}.score-section-heading{align-items:flex-start;flex-direction:column;gap:5px}}@media(max-width:480px){.score-summary-main{flex-direction:column;text-align:center}.score-eyebrow{justify-content:center}.score-highlights{grid-template-columns:1fr;gap:8px}.score-dimensions{grid-template-columns:1fr}.score-dimension{padding:16px 16px 0}.score-dimension-number{margin-top:12px}.score-panel{padding:16px}.score-driver-list li{flex-wrap:wrap;gap:8px}.score-driver-list li>div{flex-basis:calc(100% - 20px)}.score-driver-list b{margin-left:14px}.score-methodology summary>span{display:none}.score-methodology li{flex-direction:column;gap:0}.score-load-error{align-items:flex-start;flex-direction:column}}.watchlist-page{gap:24px;min-width:0}.watch-heading,.watch-table-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.watch-heading h2{margin:0 0 8px;font-size:1.35rem}.watch-heading p,.watch-table-heading p{margin:0;color:var(--app-muted);font-size:.8rem;line-height:1.6}.watch-context{display:flex;align-items:center;gap:8px;flex-shrink:0;color:var(--app-muted);font-size:.76rem}.watch-surface{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow)}.watch-overview{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(2,minmax(0,1fr));gap:14px}.watch-priority{padding:18px 20px;border-left:3px solid var(--app-primary)}.watch-eyebrow{display:flex;align-items:center;gap:8px;color:var(--app-muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.watch-priority-title{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:16px}.watch-priority-title .stock-link{font-size:1rem;font-weight:800;padding:4px 7px}.watch-priority-title>strong{margin-left:auto;font-size:1.25rem;font-variant-numeric:tabular-nums}.watch-priority-title small{color:var(--app-muted);font-size:.75rem;font-weight:500}.watch-priority p,.watch-stat p{margin:10px 0 0;color:var(--app-muted);font-size:.75rem;line-height:1.6}.watch-stat{padding:18px 20px}.watch-stat>span{display:block;color:var(--app-muted);font-size:.7rem;font-weight:700;text-transform:uppercase}.watch-stat>strong{display:block;margin-top:10px;font-size:1.6rem;font-weight:700;font-variant-numeric:tabular-nums}.watch-signals{display:grid;gap:14px;min-width:0}.watch-table-heading h3{display:flex;align-items:center;gap:10px;margin:0 0 5px;font-size:.95rem}.watch-search{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-muted);width:260px;max-width:100%}.watch-search input{width:100%;min-width:0;border:0;padding:0;outline:0;background:transparent;color:var(--app-text);font:inherit;font-size:.78rem}.watch-search:focus-within{outline:2px solid var(--app-primary);outline-offset:2px}.watch-filter-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.watch-filters{display:flex;flex-wrap:wrap;gap:6px}.watch-filters button{display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--app-border);border-radius:7px;background:var(--app-surface);color:var(--app-muted);font:inherit;font-size:.74rem;font-weight:600;cursor:pointer}.watch-filters button:hover{border-color:var(--app-primary);color:var(--app-primary)}.watch-filters button[aria-pressed=true]{border-color:var(--app-primary);color:var(--app-primary);background:var(--app-primary-soft)}.watch-filters button>span{min-width:22px;padding:1px 5px;border-radius:4px;background:var(--app-surface-muted);color:var(--app-text);text-align:center;font-size:.68rem;font-variant-numeric:tabular-nums}.watch-filters button[aria-pressed=true]>span{color:var(--app-primary);background:var(--app-surface)}.watch-result-count{color:var(--app-muted);font-size:.72rem;white-space:nowrap}.watch-badge{display:inline-block;padding:4px 7px;border-radius:5px;font-size:.68rem;font-weight:700;line-height:1.3;white-space:nowrap}.watch-badge-positive{background:var(--app-success-soft);color:var(--app-success)}.watch-badge-negative{background:var(--app-danger-soft);color:var(--app-danger)}.watch-badge-neutral{background:var(--app-surface-muted);color:var(--app-muted)}.watchlist-page .table-wrap{margin:0}.watchlist-page .table-heading{display:none}.watchlist-page table{min-width:1000px;font-size:.8rem}.watchlist-page th,.watchlist-page td{padding:13px 14px}.watchlist-page td:nth-child(4){min-width:250px;max-width:330px;white-space:normal;line-height:1.5}.watchlist-page td:nth-child(n+5){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.watchlist-page th:nth-child(n+5) .sort-button{justify-content:space-between}.watch-priority-value{display:inline-flex;align-items:center;gap:9px;min-width:75px;font-weight:700;font-variant-numeric:tabular-nums}.watch-priority-track{width:42px;height:4px;overflow:hidden;border-radius:4px;background:var(--app-surface-muted)}.watch-priority-track i{display:block;height:100%;border-radius:inherit;background:var(--app-primary)}.watch-sp500{padding:20px}.watch-count{padding:3px 7px;border-radius:5px;background:var(--app-primary-soft);color:var(--app-primary);font-family:var(--app-font-sans);font-size:.72rem}.watch-screener-link{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:.76rem}.watch-candidates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin:18px 0 0;padding:0}.watch-candidates li{min-width:0;padding:14px;border:1px solid var(--app-border);border-radius:8px}.watch-candidate-title{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.85rem}.watch-candidate-title>span{color:var(--app-text);font-size:.76rem;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.watch-candidate-title small{font-size:.65rem;color:var(--app-muted);font-weight:500}.watch-candidates p{margin:7px 0 14px;font-size:.7rem;color:var(--app-muted);overflow-wrap:anywhere}.watch-candidate-upside{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.7rem;color:var(--app-muted)}.watch-candidate-upside b{color:var(--app-success);font-size:.8rem;font-variant-numeric:tabular-nums}.watch-data-note{font-size:.8rem;line-height:1.6;color:var(--app-muted)}.watch-empty{display:grid;justify-items:center;gap:10px;padding:36px 20px;text-align:center;color:var(--app-muted)}.watch-empty h2,.watch-empty h4,.watch-empty p{margin:0}.watch-empty h4{color:var(--app-text);font-size:.9rem}.watch-empty p{font-size:.8rem;line-height:1.6}.watch-error{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 16px;background:var(--app-danger-soft);border-radius:8px;color:var(--app-danger);font-size:.8rem}.watch-methodology{border-top:1px solid var(--app-border);color:var(--app-muted);font-size:.76rem;line-height:1.7}.watch-methodology summary{padding-top:16px;cursor:pointer;color:var(--app-text);font-weight:600}.watch-methodology p{margin:10px 0;max-width:100ch}.watchlist-page button:focus-visible,.watchlist-page a:focus-visible,.watch-methodology summary:focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}@media(max-width:1100px){.watch-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.watch-priority{grid-column:1 / -1}.watch-filter-row{align-items:flex-start;flex-direction:column}}@media(max-width:640px){.watch-heading,.watch-table-heading{align-items:flex-start;flex-direction:column;gap:12px}.watch-heading h2{font-size:1.2rem}.watch-overview{gap:10px}.watch-priority,.watch-stat,.watch-sp500{padding:16px}.watch-stat>span{font-size:.62rem}.watch-stat p{font-size:.68rem}.watch-priority-title{gap:8px}.watch-search{width:100%}.watch-candidates{grid-template-columns:1fr}.watch-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.watch-filters button{justify-content:space-between;padding:9px;font-size:.68rem}}:root{--app-font-display: "Sora", ui-sans-serif, system-ui, sans-serif;--app-font-sans: "Manrope", ui-sans-serif, system-ui, sans-serif;--app-navy: oklch(.238 .061 254);--app-teal: oklch(.55 .091 213);--app-mint: oklch(.755 .082 187);--app-bg: oklch(.985 .004 235);--app-surface: oklch(1 0 0);--app-surface-muted: oklch(.962 .007 235);--app-border: oklch(.915 .008 240);--app-border-strong: oklch(.83 .012 240);--app-text: var(--app-navy);--app-muted: oklch(.556 .026 246);--app-muted-2: oklch(.7 .018 246);--app-primary: var(--app-teal);--app-primary-soft: oklch(.945 .021 205);--app-success: oklch(.5 .1 178);--app-success-soft: color-mix(in oklch, var(--app-success) 12%, white);--app-danger: oklch(.567 .164 22);--app-danger-soft: color-mix(in oklch, var(--app-danger) 12%, white);--app-warning: oklch(.556 .026 246);--app-warning-soft: var(--app-surface-muted);--app-info: oklch(.556 .026 246);--app-info-soft: var(--app-surface-muted);--app-radius-lg: .75rem;--app-shadow: 0 1px 2px oklch(.23 .06 250 / 4%), 0 8px 24px -16px oklch(.23 .06 250 / 18%);--app-sidebar-bg: var(--app-navy);--app-sidebar-fg: oklch(.93 .012 235);--app-sidebar-fg-70: oklch(.93 .012 235 / 70%);--app-sidebar-fg-60: oklch(.93 .012 235 / 60%);--app-sidebar-fg-45: oklch(.93 .012 235 / 55%);--app-sidebar-fg-40: oklch(.93 .012 235 / 40%);--app-sidebar-accent: oklch(.3 .058 252);--app-sidebar-accent-fg: oklch(.97 .007 235);--app-sidebar-border: oklch(1 0 0 / 10%);color:var(--app-text);background:var(--app-bg);font-family:var(--app-font-sans),ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--app-font-display);letter-spacing:-.015em}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--app-bg);background-attachment:fixed;background-position:center,center,center top;background-repeat:no-repeat;background-size:auto,auto,cover;overflow-x:hidden;color:var(--app-text)}body:before,body:after{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;content:"";display:none}body:before{background:linear-gradient(rgba(139,205,169,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(139,205,169,.08) 1px,transparent 1px);background-size:58px 58px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 82%);mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 82%)}body:after{z-index:-1;background:radial-gradient(circle at 18% 22%,rgba(58,142,103,.22),transparent 28%),radial-gradient(circle at 84% 18%,rgba(196,155,69,.16),transparent 26%),linear-gradient(90deg,#07110eb8,#07110e2e 42%,#07110ead)}a{color:inherit}.inline-link{color:#8be0ad;font-weight:800}.app-shell{--sidebar-w: 240px;display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);gap:0;width:100%;min-height:100vh;padding:0;background:var(--app-bg);transition:grid-template-columns .22s ease}@media(min-width:1181px){.app-shell[data-sidebar-collapsed=true]{--sidebar-w: 72px}}.app-sidebar{position:sticky;top:0;align-self:start;display:flex;gap:0;min-height:100vh;padding:0;border:0;border-radius:0;background:var(--app-sidebar-bg);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;flex-direction:column;width:var(--sidebar-w);max-height:100vh;margin:0;border-right:1px solid var(--app-sidebar-border);overflow:visible;transition:width .22s ease}.sidebar-brand{display:grid;gap:12px;border-bottom:0;grid-template-columns:36px minmax(0,1fr);align-items:center;min-height:74px;padding:20px 18px 12px}.sidebar-collapse-toggle{position:absolute;top:50%;right:-11px;z-index:5;display:inline-flex;width:24px;height:24px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--app-border);border-radius:999px;background:var(--app-surface);color:var(--app-muted);box-shadow:var(--app-shadow);cursor:pointer;transform:translateY(-50%);transition:background-color .14s ease,color .14s ease,border-color .14s ease}.sidebar-collapse-toggle:hover{border-color:var(--app-teal);color:var(--app-teal)}.sidebar-collapse-toggle svg{width:13px;height:13px}@media(max-width:1180px){.sidebar-collapse-toggle{display:none}}@media(min-width:1181px){.app-shell[data-sidebar-collapsed=true] .sidebar-brand{grid-template-columns:1fr;justify-items:center;padding-inline:10px}.app-shell[data-sidebar-collapsed=true] .sidebar-brand-copy,.app-shell[data-sidebar-collapsed=true] .sidebar-group-label{display:none}.app-shell[data-sidebar-collapsed=true] .tabs{padding-inline:8px}.app-shell[data-sidebar-collapsed=true] .sidebar-nav-link{justify-content:center;padding-inline:0}.app-shell[data-sidebar-collapsed=true] .sidebar-nav-link span:not(.nav-icon){display:none}}.sidebar-brand h1{font-size:.92rem;margin:0;color:var(--app-sidebar-fg);font-family:var(--app-font-display);font-weight:600;line-height:1.15}.sidebar-intro{margin-bottom:0;color:#5f7084;line-height:1.55}.sidebar-actions{display:grid;gap:10px}.sidebar-actions>*{width:100%}.app-content{min-width:0;padding:28px}.tab-strip{display:flex;gap:22px;overflow-x:auto;padding:0 28px;border-bottom:1px solid var(--app-border);background:var(--app-surface)}.tab-strip a{display:inline-flex;align-items:center;padding:12px 2px;border-bottom:2px solid transparent;color:var(--app-muted);font-size:.86rem;font-weight:600;white-space:nowrap}.tab-strip a:hover{color:var(--app-text)}.tab-strip a.active{border-bottom-color:var(--app-primary);color:var(--app-text)}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;min-height:150px;padding:18px 0 24px;border-bottom:1px solid rgba(154,178,160,.22)}.hero-main{display:grid;gap:10px;padding-top:10px}.hero-actions{position:relative;z-index:1;display:flex;align-items:flex-start;justify-items:end;gap:8px;justify-content:flex-end;min-width:min(100%,520px);padding-top:0}.user-menu{display:flex;max-width:min(100%,420px);min-height:42px;align-items:center;gap:8px;padding:4px 4px 4px 10px;border:1px solid rgba(173,202,184,.22);border-radius:8px;background:#0a1c16b8;box-shadow:0 18px 50px #0000003d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.currency-switcher{display:inline-flex;min-height:32px;align-items:center;overflow:hidden;gap:2px;border-radius:8px;padding:3px}.currency-rate{display:inline-flex;min-width:max-content;align-items:center;margin-right:6px;padding:0;color:var(--app-muted);font-size:.76rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.currency-switcher button{min-width:44px;min-height:26px;border:0;border-radius:6px;padding:0 10px;background:transparent;color:var(--app-muted);font:inherit;font-size:.76rem;font-weight:700;cursor:pointer;transition:background-color .14s ease,color .14s ease,box-shadow .14s ease}.currency-switcher button:last-child{border-right:0}.currency-switcher button[aria-pressed=true]{background:var(--app-surface);box-shadow:var(--app-shadow);color:var(--app-text)}.user-menu div{min-width:0;display:flex;align-items:center;gap:6px}.user-menu span{display:block;color:var(--app-muted-2);font-size:.66rem;font-weight:600;text-transform:none;flex:0 0 auto}.user-menu strong{display:block;max-width:150px;overflow:hidden;color:var(--app-text);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.sign-out-button{display:inline-flex;min-height:30px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid rgba(173,202,184,.28);border-radius:8px;padding:5px 9px;background:transparent;color:#c9e6d6;font:inherit;font-size:.82rem;font-weight:800;cursor:pointer}.sign-out-button:disabled{cursor:not-allowed;opacity:.6}.eyebrow{margin:0 0 8px;color:var(--app-muted);font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.brand-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}.brand-line .eyebrow{margin-bottom:0}.build-meta{margin:3px 0 0;color:var(--app-sidebar-fg-40);font-variant-numeric:tabular-nums;font-size:.67rem;font-weight:500}h1,h2,h3,p{margin-top:0;color:inherit}h1{max-width:780px;margin-bottom:0;font-size:clamp(2rem,4.4vw,3.65rem);line-height:1}h2{margin-bottom:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1}h3{margin-bottom:14px;font-size:1rem;color:var(--app-text);font-weight:700}.status{display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:6px 10px;border:1px solid rgba(173,202,184,.22);border-radius:8px;background:#0a1c16b8;color:#c9e6d6;font-size:.86rem;white-space:nowrap}.notice{max-width:720px;margin:28px 0;color:#d5e1d8;font-size:1.1rem}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:0}.metric-card{min-height:88px;padding:14px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:linear-gradient(180deg,#0c1f19e6,#081612db),linear-gradient(135deg,rgba(57,153,105,.18),transparent 42%);box-shadow:0 18px 50px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.metric-card span{display:block;margin-bottom:10px;color:#9ab2a0;font-size:.78rem}.metric-card strong{display:block;color:#e8f5ed;font-size:1.35rem;line-height:1.1;overflow-wrap:anywhere}.overview-section{gap:24px}.overview-hero-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:14px}.overview-primary-metric{min-height:88px;padding:14px;border:1px solid rgba(90,189,132,.3);border-radius:8px;background:linear-gradient(180deg,#103426e6,#081612db),linear-gradient(135deg,rgba(90,189,132,.18),transparent 42%);box-shadow:0 18px 50px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-color:#2563eb38}.overview-primary-metric span,.overview-mini-metrics span{display:block;margin-bottom:10px;color:#9ab2a0;font-size:.82rem;font-weight:800;text-transform:uppercase}.overview-primary-metric strong{display:block;color:#ecf4ee;font-size:clamp(1.6rem,2.5vw,2.15rem);line-height:1.08;overflow-wrap:anywhere}.overview-summary{display:grid;grid-template-columns:minmax(260px,1fr) minmax(280px,.78fr);gap:14px}.overview-copy,.overview-mini-metrics{padding:18px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#091814c2;box-shadow:0 18px 50px #00000038;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.overview-copy p{margin-bottom:0;color:#5f7084;line-height:1.6}.overview-copy p+p{margin-top:12px}.overview-mini-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.overview-mini-metrics strong{display:block;color:#e8f5ed;font-size:1.2rem;line-height:1.15;overflow-wrap:anywhere}.chart-panel{padding:20px;border:1px solid rgba(90,189,132,.26);border-radius:8px;background:#09181494;box-shadow:0 18px 50px #00000047;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chart-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:10px}.chart-heading h3{margin-bottom:0}.chart-heading span{color:#8be0ad;font-size:1rem;font-weight:900}.chart-panel svg:not(.lucide){display:block;width:100%;height:260px}.chart-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.diversification-explorer{display:grid;gap:12px;min-width:0}.diversification-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.diversification-toolbar p{margin:0;color:var(--app-muted);font-size:.8rem}.diversification-toolbar .asset-filter-controls{margin:0}.diversification-panel{min-width:0;padding:0;overflow:hidden}.diversification-switcher{display:flex;flex-wrap:wrap;gap:4px;padding:12px 20px;border-bottom:1px solid var(--app-border);background:var(--app-surface-muted)}.diversification-switcher button{min-height:36px;padding:8px 16px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--app-muted);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.diversification-switcher button:hover{color:var(--app-text);background:var(--app-surface)}.diversification-switcher button[aria-pressed=true]{color:var(--app-primary);border-color:var(--app-border);background:var(--app-surface);box-shadow:var(--app-shadow)}.diversification-explorer :is(button,input,[tabindex]):focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.diversification-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px}.diversification-heading h3{margin:0;font-size:1rem}.diversification-heading p{margin:6px 0 0;color:var(--app-muted);font-size:.73rem}.diversification-total{display:grid;gap:4px;text-align:right}.diversification-total span{color:var(--app-muted);font-size:.68rem}.diversification-total strong{color:var(--app-primary);font-family:var(--app-font-display);font-size:1.2rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.diversification-content{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,2fr);gap:28px;padding:0 24px 24px}.diversification-visual{display:flex;flex-direction:column;align-items:center;gap:18px;padding:8px 22px 0 0;border-right:1px solid var(--app-border);min-width:0}.diversification-donut-wrap{position:relative;width:min(100%,260px);flex-shrink:0}.chart-panel svg.diversification-donut{width:100%;height:auto;aspect-ratio:1}.diversification-donut-track{fill:none;stroke:var(--app-surface-muted);stroke-width:28px}.diversification-donut-center{position:absolute;top:25%;right:25%;bottom:25%;left:25%;display:flex;flex-direction:column;justify-content:center;gap:7px;text-align:center;pointer-events:none}.diversification-donut-center span{color:var(--app-muted);font-size:.7rem}.diversification-donut-center strong{color:var(--app-text);font-size:clamp(.85rem,1.2vw,1.15rem);font-family:var(--app-font-display);font-weight:600;overflow-wrap:anywhere}.diversification-legend{display:grid;gap:12px;width:100%;font-size:.72rem}.diversification-legend>div{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:9px;align-items:baseline}.diversification-legend i,.diversification-item-name>i{display:inline-block;width:8px;height:8px;border-radius:2px;flex-shrink:0}.diversification-legend span{overflow-wrap:anywhere}.diversification-legend strong{color:var(--app-muted);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.diversification-concentration{width:100%;margin:0;padding-top:16px;border-top:1px solid var(--app-border);color:var(--app-muted);font-size:.72rem}.diversification-concentration strong{color:var(--app-text)}.diversification-details{min-width:0}.diversification-list-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;min-height:40px;margin-bottom:8px}.diversification-list-heading h4{margin:0;font-size:.8rem;font-weight:600}.diversification-search{display:flex;align-items:center;gap:8px;width:210px;max-width:100%;padding:0 10px;color:var(--app-muted);border:1px solid var(--app-border);border-radius:7px}.diversification-search input{width:100%;min-width:0;min-height:34px;border:0;background:transparent;color:var(--app-text);font:inherit;font-size:.73rem}.diversification-table-scroll{overflow-x:auto;max-width:100%}.diversification-table{width:100%;min-width:0;border-collapse:collapse;font-size:.76rem}.diversification-table :is(th,td){padding:12px 10px;border-bottom:1px solid var(--app-border);text-align:right;font-variant-numeric:tabular-nums}.diversification-table thead th{background:var(--app-surface-muted);color:var(--app-muted);font-size:.65rem;font-weight:600;white-space:nowrap}.diversification-table th:first-child{padding-left:12px;text-align:left}.diversification-table tbody th{min-width:125px;max-width:270px;background:transparent;color:var(--app-text);font-size:inherit;font-weight:500;text-transform:none}.diversification-table tbody td{white-space:nowrap}.diversification-table tbody td:nth-child(3){font-weight:600}.diversification-table tbody tr:hover{background:var(--app-surface-muted)}.diversification-item-name{display:flex;align-items:baseline;gap:10px;overflow-wrap:anywhere}.diversification-share-track{height:3px;min-width:48px;margin-top:6px;overflow:hidden;border-radius:2px;background:var(--app-surface-muted)}.diversification-share-track i{display:block;height:100%;background:var(--app-primary);border-radius:inherit}.diversification-positive{color:var(--app-success)}.diversification-negative{color:var(--app-danger)}.diversification-list-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-top:12px;color:var(--app-muted);font-size:.68rem}.diversification-list-footer .dividend-expand-button{margin:0}.diversification-note{color:var(--app-muted);font-size:.68rem;line-height:1.7;margin:14px 0 0}@media(max-width:1100px){.diversification-content{grid-template-columns:minmax(200px,.65fr) minmax(0,1.7fr);gap:20px}.diversification-table :is(th,td){padding:12px 8px}}@media(max-width:800px){.diversification-content{grid-template-columns:minmax(0,1fr);gap:24px;padding:0 16px 20px}.diversification-visual{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(0,1fr);gap:16px;padding:0 0 18px;border-right:0;border-bottom:1px solid var(--app-border)}.diversification-concentration,.diversification-visual>.diversification-note{grid-column:1 / -1}.diversification-heading{padding:18px 16px}.diversification-heading p{max-width:200px;line-height:1.6}.diversification-switcher{padding:10px}.diversification-switcher button{padding:8px 12px}.diversification-donut-center strong{font-size:.85rem}}@media(max-width:420px){.diversification-heading{flex-direction:column;gap:12px}.diversification-total{text-align:left}.diversification-visual{grid-template-columns:minmax(0,1fr);justify-items:center}.diversification-donut-wrap{max-width:200px}.diversification-legend{max-width:280px}.diversification-toolbar p{font-size:.72rem}}.digrin-chart svg:not(.lucide){height:340px}.heatmap-chart svg{height:620px;min-height:520px}.heatmap-chart{width:100%;padding:14px;background:#1a2634}.chart-grid-line{stroke:#e5eaf0;stroke-width:1}.chart-axis-label{fill:#9ab2a0;font-size:12px;font-weight:700}.chart-axis-title{fill:#b9d9c6;font-size:12px;font-weight:800}.chart-area{fill:#7a94b81f}.chart-line{fill:none;stroke:var(--app-primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.chart-point{fill:var(--app-info);stroke:#fff;stroke-width:2}.digrin-bar{opacity:.88}.digrin-bar-0,.digrin-bar-fill-0{fill:var(--app-primary);background:var(--app-primary)}.digrin-bar-1,.digrin-bar-fill-1{fill:var(--app-info);background:var(--app-info)}.digrin-bar-2,.digrin-bar-fill-2{fill:var(--app-warning);background:var(--app-warning)}.digrin-bar-3,.digrin-bar-fill-3{fill:var(--app-danger);background:var(--app-danger)}.chart-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:10px}.chart-legend span{display:inline-flex;align-items:center;gap:6px;color:#5f7084;font-size:.82rem;font-weight:800}.digrin-legend-swatch{width:10px;height:10px;border-radius:2px}.heatmap-sector-frame{fill:#0b121c3d;stroke:#111926e6;stroke-width:2}.heatmap-sector-label{fill:#dde7f2;font-size:13px;font-weight:800}.heatmap-tile{stroke:#121c29eb;stroke-width:2}.heatmap-ticker{fill:#f8fbff;font-size:16px;font-weight:500;paint-order:stroke;stroke:#15202f80;stroke-width:3px}.heatmap-value,.heatmap-change{fill:#edf3f9;font-size:12px;font-weight:400;paint-order:stroke;stroke:#15202f75;stroke-width:3px}.heatmap-neutral{fill:#73869b}.heatmap-red-3{fill:#ac6f69}.heatmap-red-2{fill:#c78d86}.heatmap-red-1{fill:#dbaca6}.heatmap-green-1{fill:#a8c5bc}.heatmap-green-2{fill:#88a99d}.heatmap-green-3{fill:#6d8f84}.pie-list{display:grid;gap:8px}.pie-list-row{display:grid;grid-template-columns:minmax(54px,82px) minmax(120px,1fr) minmax(80px,auto);align-items:center;gap:10px}.pie-list-row span{color:var(--app-text);font-weight:900}.pie-list-row strong{color:#5f7084;font-size:.86rem;text-align:right}.pie-list-bar{height:12px;overflow:hidden;border:1px solid rgba(173,202,184,.16);border-radius:999px;background:#030c0a66}.pie-list-bar i{display:block;height:100%;min-width:2px}.digrin-pie-chart{min-height:380px}.digrin-pie-slice{stroke:#fff;stroke-width:1.5}.digrin-pie-slice-0{fill:#94adc7;background:#94adc7}.digrin-pie-slice-1{fill:#b9a686;background:#b9a686}.digrin-pie-slice-2{fill:#8aa7b3;background:#8aa7b3}.digrin-pie-slice-3{fill:#c6958c;background:#c6958c}.digrin-pie-slice-4{fill:#b2a2c4;background:#b2a2c4}.digrin-pie-slice-5{fill:#96beb7;background:#96beb7}.digrin-pie-slice-6{fill:#c5aa8c;background:#c5aa8c}.digrin-pie-slice-7{fill:#a8bf97;background:#a8bf97}.digrin-pie-hole{fill:#f8fafc;stroke:#e3e8ef;stroke-width:1}.digrin-pie-percent{fill:#243445;font-size:12px;font-weight:900;pointer-events:none}.digrin-pie-total-label{fill:var(--app-muted);font-size:12px;font-weight:800;text-transform:uppercase}.digrin-pie-total{fill:var(--app-text);font-size:14px;font-weight:900}.digrin-pie-legend{display:grid;gap:7px;padding:4px;color:var(--app-text);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.digrin-pie-legend-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:8px;font-size:13px}.digrin-pie-legend-row i{width:10px;height:10px;border-radius:2px}.digrin-pie-legend-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.digrin-pie-legend-row strong{color:var(--app-muted);font-size:12px}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.admin-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#091814db;box-shadow:0 18px 50px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-actions p{margin-bottom:0;color:#5f7084;line-height:1.5}.snapshot-admin-panel{display:grid;gap:16px;padding:18px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#091814db;box-shadow:0 18px 50px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.snapshot-admin-panel p{margin-bottom:0;color:#5f7084;line-height:1.5}.admin-table-wrap{overflow-x:auto}.admin-table{min-width:760px}.admin-table code{color:var(--app-text);font:inherit;font-weight:900}.admin-inline-input{width:min(100%,420px);min-height:38px;border:1px solid rgba(173,202,184,.24);border-radius:8px;padding:7px 9px;background:#030c0ab8;color:#ecf4ee;font:inherit}.admin-checkbox{display:inline-flex;align-items:center;gap:8px;color:#5f7084;font-weight:800;white-space:nowrap}.admin-checkbox input{width:18px;height:18px;accent-color:#5abd84}.admin-table-actions{display:flex;flex-wrap:wrap;gap:8px}.danger-button{border-color:#ff8f8480;color:#ffb0a7}.danger-button:hover{border-color:#ff8f84cc;color:#ffd7d2}.admin-subnav{display:flex;flex-wrap:wrap;gap:8px}.admin-subnav button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;border:1px solid rgba(173,202,184,.22);border-radius:8px;padding:8px 12px;background:#fff;color:var(--app-muted);font:inherit;font-size:.92rem;font-weight:800;cursor:pointer;border-color:var(--app-border)}.admin-subnav button[aria-current=page]{border-color:#7a94b866;background:var(--app-primary-soft);color:#627f9e}.admin-muted{margin-top:8px;color:#9ab2a0;font-size:.88rem;overflow-wrap:anywhere}.snapshot-picker{display:grid;min-width:min(100%,360px);gap:10px}.snapshot-picker label{display:grid;gap:8px;color:#5f7084;font-size:.92rem;font-weight:800}.snapshot-picker select{width:100%;min-height:42px;border:1px solid rgba(173,202,184,.26);border-radius:8px;padding:8px 10px;background:#030c0ab8;color:#ecf4ee;font:inherit}.portfolio-form{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.4fr) auto;align-items:end;gap:12px}.portfolio-form label{display:grid;gap:8px;color:#5f7084;font-size:.92rem;font-weight:800}.portfolio-form input{width:100%;min-height:42px;border:1px solid rgba(173,202,184,.26);border-radius:8px;padding:8px 10px;background:#030c0ab8;color:#ecf4ee;font:inherit}.admin-message{margin-bottom:0;color:var(--app-success);font-weight:800}.admin-run-result{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:12px;padding:18px;border:1px solid rgba(90,189,132,.26);border-radius:8px;background:#f8fafc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-color:#7a94b838}.admin-run-result span{display:block;margin-bottom:6px;color:var(--app-muted);font-size:.74rem;font-weight:800;text-transform:uppercase}.admin-run-result strong{display:block;overflow-wrap:anywhere;color:var(--app-text);font-size:.96rem}.crawler-log-list{display:grid;gap:8px;margin:0;padding:14px;border:1px solid rgba(116,167,216,.24);border-radius:8px;background:#f8fafc;border-color:#7a94b833}.crawler-log-list p{margin:0;color:#516173;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.84rem;overflow-wrap:anywhere}.crawler-progress{display:grid;gap:14px;padding:18px;border:1px solid rgba(214,184,107,.28);border-radius:8px;background:#fcf8f2;border-color:#b292633d}.crawler-progress-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.crawler-progress-heading p{margin-bottom:0;color:#7f705f}.crawler-progress-heading>strong{color:#9d8562;font-size:1.15rem;white-space:nowrap}.crawler-progress-steps{display:grid;gap:8px;margin:0;padding:0;list-style:none}.crawler-progress-steps li{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:10px;color:var(--app-muted)}.crawler-progress-steps li span{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border:1px solid rgba(173,202,184,.22);border-radius:999px;background:#eceff3;font-size:.82rem;font-weight:900;color:var(--app-muted)}.crawler-progress-steps li.is-active{color:#627f9e}.crawler-progress-steps li.is-active span{border-color:#ffe08aad;background:var(--app-primary-soft);color:#627f9e}.crawler-progress-steps li.is-complete{color:#6c8f80}.crawler-progress-steps li.is-complete span{border-color:#5abd849e;background:var(--app-success-soft);color:#6c8f80}.crawler-progress-portfolios{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#d7cda8}.crawler-progress-portfolios strong{color:var(--app-text)}.crawler-result-list{display:grid;gap:10px}.crawler-result-list article{display:grid;gap:8px;padding:14px;border:1px solid rgba(90,189,132,.22);border-radius:8px;background:#0f312485}.crawler-result-list article>div:first-child,.crawler-result-list dl{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between}.crawler-result-list span,.crawler-result-list dt{color:#9ab2a0;font-size:.82rem;font-weight:800;text-transform:uppercase}.crawler-result-list p,.crawler-result-list dl{margin:0}.crawler-result-list p,.crawler-result-list dd{color:#dcebe2;overflow-wrap:anywhere}.crawler-result-list dd{margin:2px 0 0;font-weight:900}.tabs{position:relative;z-index:2;display:flex;gap:0;width:100%;flex:1 1 auto;flex-direction:column;align-items:stretch;min-height:0;padding:8px 12px 20px;overflow-y:auto}.sidebar-group{display:flex;gap:8px;flex-direction:column}.sidebar-group-links{display:flex;gap:4px;padding-left:0;flex-direction:column}.sections{display:grid;gap:52px}.section{display:grid;gap:20px;padding-top:0}.section-heading{display:grid;gap:4px}.screener-snapshot-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:space-between}.screener-snapshot-row .admin-muted{margin-left:auto;margin-top:0;text-align:right}.section-badge{display:inline-flex;align-items:center;white-space:nowrap}.text-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.text-grid p{margin-bottom:0;color:#5f7084;line-height:1.6}.table-wrap{overflow-x:auto;padding:0;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#0918149e;box-shadow:0 18px 50px #00000047;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.table-wrap-featured{border-color:#5abd8447}.table-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px 0}.table-heading h3{margin:0;padding:0}.table-export-actions{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.table-export-actions span{margin-right:3px;color:var(--app-muted);font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.table-export-actions .ghost-button{min-height:32px;padding:5px 9px;font-size:.76rem}.asset-filter-controls{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-bottom:-8px}.asset-filter-controls label{display:inline-flex;min-height:38px;align-items:center;gap:8px;border:1px solid rgba(173,202,184,.22);border-radius:8px;padding:7px 11px;background:#fff;color:var(--app-muted);font-size:.88rem;font-weight:800;border-color:var(--app-border);box-shadow:var(--app-shadow)}.asset-filter-controls input{width:15px;height:15px;accent-color:#5abd84}.stock-link{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;padding:2px 6px;background:var(--app-surface-muted);color:var(--app-text);font:inherit;font-variant-numeric:tabular-nums;font-size:.78rem;font-weight:600;text-decoration:none;text-underline-offset:3px;cursor:pointer}.stock-link:hover{background:var(--app-border);color:var(--app-text)}.portfolio-dashboard-section{gap:18px}.dashboard-heading{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px;padding:0 0 2px}.dashboard-heading h2{font-size:clamp(2rem,3.2vw,2.8rem)}.dashboard-heading-meta{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.dashboard-heading-meta span{display:inline-flex;min-height:34px;align-items:center;border:1px solid rgba(173,202,184,.22);border-radius:8px;padding:7px 10px;background:#0a1c16b8;color:#c9e6d6;font-size:.84rem;font-weight:800}.dashboard-muted{margin:0;color:#9ab2a0}.loading-overlay-host{position:relative;min-height:360px}.loading-overlay{position:absolute;z-index:20;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:auto minmax(0,560px);align-items:center;align-content:start;justify-content:center;gap:16px;min-height:100%;border:1px solid rgba(90,189,132,.3);border-radius:8px;padding:clamp(36px,7vh,72px) 20px 20px;background:#fffffff0;box-shadow:var(--app-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:wait;pointer-events:all;-webkit-user-select:none;user-select:none;border-color:var(--app-border)}.loading-overlay strong{display:block;color:var(--app-text);font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.1}.loading-overlay p{max-width:620px;margin:8px 0 0;color:var(--app-muted);line-height:1.5}.loading-overlay ul{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:2px 0 0;padding:0;list-style:none}.loading-overlay li{border:1px solid rgba(173,202,184,.18);border-radius:8px;padding:7px 10px;background:var(--app-surface-muted);color:var(--app-muted);font-size:.78rem;font-weight:900;text-transform:uppercase;border-color:var(--app-border)}.loading-orbit{position:relative;width:72px;height:72px;border:1px solid rgba(173,202,184,.24);border-radius:50%;background:radial-gradient(circle at center,rgba(122,148,184,.16),rgba(124,159,168,.08) 45%,transparent 56%);border-color:var(--app-border)}.loading-orbit:before{position:absolute;top:8px;right:8px;bottom:8px;left:8px;border:1px dashed rgba(173,202,184,.28);border-radius:inherit;content:"";animation:loading-spin 8s linear infinite}.loading-orbit span{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--app-primary);box-shadow:0 0 18px #7a94b847;animation:loading-pulse 1.6s ease-in-out infinite}.loading-orbit span:nth-child(1){top:5px;left:31px}.loading-orbit span:nth-child(2){right:7px;bottom:16px;animation-delay:.22s}.loading-orbit span:nth-child(3){bottom:16px;left:7px;background:var(--app-info);box-shadow:0 0 18px #7c9fa842;animation-delay:.44s}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-pulse{0%,to{transform:scale(.78);opacity:.55}50%{transform:scale(1.18);opacity:1}}.cockpit-grid{display:grid;grid-template-columns:minmax(240px,1.3fr) repeat(auto-fit,minmax(140px,1fr));gap:10px;align-items:stretch}.cockpit-score-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;column-gap:14px;row-gap:4px;align-items:start;padding:14px 16px;border:1px solid rgba(90,189,132,.32);border-radius:8px;background:linear-gradient(180deg,#0f2b21eb,#081612e6),linear-gradient(135deg,rgba(214,184,107,.18),transparent 48%);box-shadow:0 18px 50px #0000004d}.cockpit-score-card>span{grid-column:1;grid-row:1}.cockpit-score-card>strong{grid-column:1;grid-row:2}.cockpit-score-card>p{grid-column:1;grid-row:3;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.dashboard-score-ring{grid-column:2;grid-row:1 / 4;align-self:center;width:52px;height:52px}.dashboard-score-ring-track{stroke:var(--app-border)}.dashboard-score-ring-value{stroke:var(--app-teal);transition:stroke-dasharray .24s ease}.cockpit-score-card>span,.dashboard-metric-tile span{color:#9ab2a0;font-size:.78rem;font-weight:800;text-transform:uppercase}.cockpit-score-card strong{color:#ecf4ee;font-size:2.4rem;font-weight:900;line-height:1}.cockpit-score-card p{margin:0;color:#5f7084;font-size:.82rem;line-height:1.4}.score-bar{height:8px;overflow:hidden;border-radius:999px;background:#adcab829}.score-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d6b86b,#5abd84)}.dashboard-metric-tile{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.dashboard-metric-tile strong{color:#ecf4ee;font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.1}.dashboard-metric-tile em{display:block;font-size:.76rem;font-style:normal;font-weight:700;line-height:1.2}.dashboard-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dashboard-panel{min-height:250px;padding:16px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#0918149e;box-shadow:0 18px 50px #0000003d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dashboard-panel h3{margin-bottom:14px;color:var(--app-text)}.dashboard-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.dashboard-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:54px;padding:10px 2px;border:0;border-top:1px solid var(--app-border);border-radius:0;background:transparent}.dashboard-list li:first-child{border-top:0}.dashboard-list.compact li{min-height:44px}.dashboard-list strong,.dashboard-list span{display:block}.dashboard-list strong{color:var(--app-text)}.dashboard-list span{margin-top:3px;color:var(--app-muted);font-size:.82rem}.dashboard-list b{color:#516173;font-size:.92rem;text-align:right;white-space:nowrap}.allocation-stack{display:flex;height:20px;overflow:hidden;border:1px solid rgba(173,202,184,.18);border-radius:999px;margin-bottom:14px;background:#030c0a57}.allocation-segment{min-width:2px}.allocation-segment-stocks{background:#8fb0a2}.allocation-segment-etfs{background:#d1ba93}.recommendation-bars{display:grid;gap:12px}.recommendation-row{display:grid;grid-template-columns:90px minmax(0,1fr) 58px;align-items:center;gap:10px}.recommendation-row span{color:#c9e6d6;font-size:.86rem;font-weight:800}.recommendation-row div{height:10px;overflow:hidden;border-radius:999px;background:#e6ebf0}.recommendation-row i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8fb0a2,#b9a686)}.recommendation-row b{color:#dcebe2;font-size:.86rem;text-align:right}.fair-value-heatmap-section{gap:18px}.fv-heatmap-summary{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.fv-heatmap-summary article{min-height:92px;padding:14px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#0918149e;box-shadow:0 18px 50px #0000003d}.fv-heatmap-summary span{display:block;margin-bottom:10px;color:#9ab2a0;font-size:.78rem;font-weight:800;text-transform:uppercase}.fv-heatmap-summary strong{color:var(--app-text);font-size:clamp(1.4rem,2.6vw,2rem);line-height:1}.fv-heatmap-legend{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.fv-heatmap-swatch{display:inline-flex;min-height:30px;align-items:center;border:1px solid rgba(173,202,184,.2);border-radius:8px;padding:5px 9px;color:#2b3b4c;font-size:.78rem;font-weight:900;border-color:#cdd6e1d9}.fv-heatmap-chart{overflow:hidden;border:1px solid var(--app-border);background:#f8fafc}.fv-heatmap-click-target{cursor:pointer;outline:none}.fv-heatmap-click-target:hover .fv-heatmap-tile,.fv-heatmap-click-target:focus-visible .fv-heatmap-tile{filter:brightness(1.04);stroke:#ffffffc7}.fv-sector-grid{display:grid;gap:14px}.fv-sector-panel{padding:14px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#0918149e;box-shadow:0 18px 50px #00000038}.fv-sector-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.fv-sector-heading h3{margin-bottom:0}.fv-sector-heading span{color:#9ab2a0;font-size:.9rem;font-weight:800}.fv-tile-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(96px,auto);gap:8px}.fv-tile{display:grid;min-width:0;min-height:96px;align-content:space-between;gap:6px;border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:10px;color:#06110d;font:inherit;text-align:left;cursor:pointer}.fv-tile:hover{filter:brightness(1.08)}.fv-tile span,.fv-tile strong,.fv-tile em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fv-tile span{font-size:.9rem;font-weight:900}.fv-tile strong{font-size:clamp(1.2rem,2.2vw,1.7rem);font-weight:900;line-height:1}.fv-tile em{font-size:.78rem;font-style:normal;font-weight:800;opacity:.82}.fv-heatmap-strong-buy,.fv-tile-strong-buy{background:#8fb0a2;fill:#8fb0a2}.fv-heatmap-buy,.fv-tile-buy{background:#b8ccb2;fill:#b8ccb2}.fv-heatmap-hold,.fv-tile-hold{background:#d7c29c;fill:#d7c29c}.fv-heatmap-reduce,.fv-tile-reduce{background:#d8ae92;fill:#d8ae92}.fv-heatmap-avoid,.fv-tile-avoid{background:#d4a09a;fill:#d4a09a}.portfolio-score-section{gap:18px}.portfolio-score-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:24px;min-height:240px;padding:22px;border:1px solid rgba(90,189,132,.32);border-radius:8px;background:linear-gradient(180deg,#0f2b21f0,#081612e6),linear-gradient(135deg,rgba(214,184,107,.2),transparent 50%);box-shadow:0 18px 50px #0000004d}.portfolio-score-hero span{display:block;margin-bottom:10px;color:#9ab2a0;font-size:.78rem;font-weight:900;text-transform:uppercase}.portfolio-score-hero strong{display:block;color:#ecf4ee;font-size:clamp(5rem,10vw,8rem);font-weight:900;line-height:.9}.portfolio-score-hero p{max-width:680px;margin:14px 0 0;color:#5f7084;font-size:1rem;line-height:1.55}.portfolio-score-ring{display:grid;width:170px;height:170px;place-items:center;border-radius:50%;background:radial-gradient(circle at center,#fff 59%,transparent 60%),conic-gradient(var(--app-primary) calc(var(--score) * 1%),#e5eaf0 0)}.portfolio-score-ring span{margin:0;color:var(--app-text);font-size:3.6rem;line-height:1}.score-pillar-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.score-pillar-card{display:grid;min-height:190px;align-content:space-between;gap:10px;padding:14px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#0918149e;box-shadow:0 18px 50px #00000038}.score-pillar-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.score-pillar-heading span{color:#9ab2a0;font-size:.78rem;font-weight:900;text-transform:uppercase}.score-pillar-heading strong{color:#6c87a8;font-size:2rem;line-height:1;font-weight:800}.score-pillar-bar{height:8px;overflow:hidden;border-radius:999px;background:#adcab829}.score-pillar-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d6b86b,#5abd84)}.score-pillar-card p{margin:0;color:#5f7084;font-size:.9rem;line-height:1.45}.score-pillar-card b{color:#d6b86b;font-size:.86rem}.snapshot-changes-section,.allocation-concentration-section,.watchlist-section,.insight-section{gap:18px}.insight-summary-grid{display:grid;grid-template-columns:minmax(270px,1.25fr) repeat(3,minmax(140px,1fr));gap:12px}.insight-primary-card{display:grid;min-height:146px;align-content:space-between;gap:10px;padding:18px;border:1px solid rgba(90,189,132,.3);border-radius:8px;background:linear-gradient(180deg,#0f2720f0,#081612e6),linear-gradient(135deg,rgba(101,169,215,.18),transparent 46%);box-shadow:0 18px 50px #0000004d}.insight-primary-card>span{color:var(--app-muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.insight-primary-card strong{color:#6c87a8;font-size:clamp(2.2rem,4.2vw,3.8rem);font-weight:900;line-height:.98}.insight-primary-card p{margin:0;color:var(--app-muted);line-height:1.45}.watchlist-summary-grid{display:grid;grid-template-columns:minmax(270px,1.25fr) repeat(4,minmax(140px,1fr));gap:12px}.watchlist-primary-card{display:grid;min-height:146px;align-content:space-between;gap:10px;padding:18px;border:1px solid rgba(101,169,215,.34);border-radius:8px;background:linear-gradient(180deg,#0d1f26f0,#081612e6),linear-gradient(135deg,rgba(214,184,107,.18),transparent 46%);box-shadow:0 18px 50px #0000004d}.watchlist-primary-card>span{color:#a8c9de;font-size:.78rem;font-weight:900;text-transform:uppercase}.watchlist-primary-card strong{color:#ecf4ee;font-size:clamp(2.4rem,4.8vw,4.2rem);font-weight:900;line-height:.95}.watchlist-primary-card p{margin:0;color:#5f7084;line-height:1.45}.watchlist-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.allocation-summary-grid{display:grid;grid-template-columns:minmax(270px,1.25fr) repeat(4,minmax(140px,1fr));gap:12px}.allocation-score-card{display:grid;min-height:146px;align-content:space-between;gap:10px;padding:18px;border:1px solid rgba(214,184,107,.34);border-radius:8px;background:linear-gradient(180deg,#212314f0,#081612e6),linear-gradient(135deg,rgba(90,189,132,.18),transparent 46%);box-shadow:0 18px 50px #0000004d}.allocation-score-card>span{color:#d6c996;font-size:.78rem;font-weight:900;text-transform:uppercase}.allocation-score-card strong{color:#ecf4ee;font-size:clamp(2.4rem,4.8vw,4.2rem);font-weight:900;line-height:.95}.allocation-score-card p{margin:0;color:#d7dcc3;line-height:1.45}.allocation-main-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:14px}.allocation-wide-panel{grid-row:span 2}.allocation-exposure-stack{display:flex;height:22px;overflow:hidden;border:1px solid var(--app-border);border-radius:999px;margin-bottom:14px;background:#eef2f6}.allocation-exposure-segment{min-width:2px}.allocation-exposure-0,.allocation-dot-0{background:#5abd84}.allocation-exposure-1,.allocation-dot-1{background:#d6b86b}.allocation-exposure-2,.allocation-dot-2{background:#65a9d7}.allocation-exposure-3,.allocation-dot-3{background:#c98572}.allocation-exposure-4,.allocation-dot-4{background:#9fcb76}.allocation-exposure-5,.allocation-dot-5{background:#b797d6}.allocation-group-list{display:grid;gap:0}.allocation-group-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:56px;padding:10px 2px;border:0;border-top:1px solid var(--app-border);border-radius:0;background:transparent}.allocation-group-list article:first-child{border-top:0}.allocation-dot{width:10px;height:34px;border-radius:999px}.allocation-group-list strong,.allocation-group-list span{display:block}.allocation-group-list strong{color:var(--app-text)}.allocation-group-list span{margin-top:3px;color:var(--app-muted);font-size:.82rem}.allocation-group-list b{color:#516173;font-size:.92rem;text-align:right}.changes-summary-grid{display:grid;grid-template-columns:minmax(260px,1.35fr) repeat(4,minmax(140px,1fr));gap:12px}.changes-primary-card{display:grid;min-height:146px;align-content:space-between;gap:10px;padding:18px;border:1px solid rgba(90,189,132,.32);border-radius:8px;background:linear-gradient(180deg,#0f2b21eb,#081612e6),linear-gradient(135deg,rgba(214,184,107,.18),transparent 48%);box-shadow:0 18px 50px #0000004d}.changes-primary-card>span{color:#9ab2a0;font-size:.78rem;font-weight:900;text-transform:uppercase}.changes-primary-card strong{color:#ecf4ee;font-size:clamp(2.4rem,4.8vw,4.2rem);font-weight:900;line-height:.95}.changes-primary-card p{margin:0;color:#5f7084;line-height:1.45}.changes-event-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.changes-event-grid article{min-height:88px;padding:14px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#0918149e;box-shadow:0 18px 50px #0003}.changes-event-grid span{display:block;margin-bottom:10px;color:var(--app-muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.changes-event-grid strong{color:#43576d;font-size:2rem;line-height:1}.screener-badge{display:inline-flex;min-width:76px;min-height:24px;align-items:center;justify-content:center;border:1px solid var(--app-border);border-radius:6px;padding:3px 7px;background:var(--app-surface-muted);color:var(--app-muted);font-size:.78rem;font-weight:900;line-height:1.1;text-align:center}.screener-badge-positive{border-color:#5f8f7a4d;background:var(--app-success-soft);color:var(--app-success)}.screener-badge-watchlist{border-color:#7c9fa84d;background:var(--app-info-soft);color:var(--app-info)}.screener-badge-negative{border-color:#c6857d4d;background:var(--app-danger-soft);color:var(--app-danger)}.screener-badge-neutral{color:var(--app-muted)}.screener-error{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.screener-error .auth-error{margin-bottom:0}.stock-route-section{padding-top:28px}.back-link{width:fit-content;border:1px solid var(--app-border);border-radius:8px;padding:9px 12px;background:#fff;color:var(--app-primary);cursor:pointer;font:inherit;font-weight:700;text-decoration:none;box-shadow:var(--app-shadow);transition:background-color .14s ease,border-color .14s ease,color .14s ease}.back-link:hover{border-color:#7a94b873;color:#627f9e;background:var(--app-primary-soft)}.stock-detail-panel{display:grid;gap:16px;padding:18px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:#091814b8;box-shadow:0 18px 50px #00000042;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stock-detail-heading,.stock-detail-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.stock-title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0}.stock-title-row h2{margin:0;font-size:1.7rem;line-height:1.1}.stock-company-name{color:#6f8195;font-size:1.08rem;font-weight:600;line-height:1.25}.stock-current-price{color:#d6b86b;font-size:1rem;font-weight:800;line-height:1.2}.stock-quote-links{display:flex;flex-basis:100%;flex-wrap:wrap;gap:6px}.stock-quote-links span{display:inline-flex;min-height:26px;align-items:center;gap:5px;border:1px solid rgba(173,202,184,.18);border-radius:999px;padding:4px 9px;background:#030c0a42;color:#dcebe2;font-size:.78rem;font-weight:700}.stock-quote-links strong{color:#9fb8aa;font-size:.68rem;text-transform:uppercase}.stock-quote-links-missing{flex-basis:100%;margin:0;color:var(--app-muted);font-size:.82rem;line-height:1.35}.stock-overview-stats{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:0;color:#b9d9c6;font-size:.86rem}.stock-overview-stats div{display:flex;align-items:baseline;gap:4px}.stock-overview-stats dt,.stock-overview-stats dd{margin:0}.stock-overview-stats dt{color:#6f8092;font-weight:700}.stock-overview-stats dd{color:#43576d;font-weight:800}.stock-overview-stats dd.cell-negative{color:#ff8f84}.stock-overview-stats dd.cell-positive{color:#8be0ad}.stock-detail-meta{color:#b9d9c6;font-size:.9rem}.fair-value-panel{display:grid;gap:14px;padding:14px;border:1px solid rgba(116,167,216,.34);border-radius:8px;background:linear-gradient(135deg,rgba(116,167,216,.14),transparent 48%),#030c0a61}.fair-value-panel-muted{border-color:#adcab82e;background:#030c0a47;color:var(--app-muted)}.fair-value-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.fair-value-heading h3{margin:0;color:#ecf4ee}.fair-value-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.fair-value-recommendation{display:inline-flex;min-height:26px;align-items:center;justify-content:center;border:1px solid rgba(173,202,184,.18);border-radius:999px;padding:4px 9px;font-size:.78rem;font-weight:800}.fair-value-recommendation-strong-buy,.fair-value-recommendation-buy{border-color:#8be0ad66;color:#8be0ad}.fair-value-recommendation-hold,.fair-value-recommendation-reduce{border-color:#d6b86b66;color:#d6b86b}.fair-value-recommendation-avoid{border-color:#ff8f845c;color:#ffb0a7}.fair-value-summary{margin:0;color:#5f7084;line-height:1.55}.fair-value-badge{display:inline-flex;min-height:28px;align-items:center;justify-content:center;border:1px solid rgba(173,202,184,.2);border-radius:999px;padding:5px 10px;font-size:.78rem;font-weight:800;white-space:nowrap}.fair-value-badge-high{border-color:#8be0ad70;color:#8be0ad}.fair-value-badge-medium{border-color:#d6b86b70;color:#d6b86b}.fair-value-badge-low{border-color:#ff8f8461;color:#ffb0a7}.fair-value-warnings{display:flex;flex-wrap:wrap;gap:8px}.fair-value-warning{display:inline-flex;min-height:26px;align-items:center;border:1px solid rgba(178,146,99,.3);border-radius:999px;padding:4px 9px;background:var(--app-warning-soft);color:var(--app-warning);font-size:.76rem;font-weight:800}.fair-value-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.fair-value-grid article,.fair-value-details div{display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(173,202,184,.14);border-radius:8px;background:#030c0a47}.fair-value-grid span,.fair-value-details dt{color:#9fb8aa;font-size:.72rem;text-transform:uppercase}.fair-value-grid strong,.fair-value-details dd{margin:0;color:#ecf4ee;font-size:1rem;font-weight:700}.fair-value-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0;color:var(--app-muted)}.fair-value-checks{display:flex;flex-wrap:wrap;gap:8px}.fair-value-check{display:inline-flex;min-height:28px;align-items:center;border:1px solid rgba(173,202,184,.16);border-radius:6px;padding:5px 8px;background:#fff;color:var(--app-muted);font-size:.82rem;font-weight:700;border-color:var(--app-border)}.fair-value-check-pass{border-color:#5f8f7a47;color:#8be0ad;background:var(--app-success-soft)}.fair-value-check-fail{border-color:#c6857d47;color:#ffb0a7;background:var(--app-danger-soft)}.fair-value-check-neutral{border-color:#b292633d;color:#8d7650;background:var(--app-warning-soft)}.fair-value-check-unknown{color:#9fb8aa;background:var(--app-surface-muted)}.stock-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.stock-metric-sections{display:grid;gap:12px}.stock-metric-section{border:1px solid var(--app-border);border-radius:8px;background:#fbfcfd}.stock-metric-section summary{display:flex;min-height:46px;cursor:pointer;list-style:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;color:var(--app-text);font-weight:700}.stock-metric-section summary::-webkit-details-marker{display:none}.stock-metric-section summary:before{width:18px;color:#7a94b8;content:">";font-size:.9rem;transition:transform .16s ease}.stock-metric-section[open] summary:before{transform:rotate(90deg)}.stock-metric-section summary span{flex:1}.stock-metric-section summary strong{display:inline-flex;min-width:32px;min-height:24px;align-items:center;justify-content:center;border:1px solid rgba(139,224,173,.24);border-radius:999px;background:#eef3f8;color:#566d89;font-size:.78rem;border-color:#7a94b83d}.stock-metric-section .stock-metrics-grid,.stock-metric-section .notice{margin:0;padding:0 12px 12px}.stock-metric{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted)}.stock-metric span{color:#6f8092;font-size:.72rem;text-transform:uppercase}.stock-metric strong{color:#43576d;font-size:1rem;font-weight:600}.stock-metric-negative strong{color:#b07a72}.stock-metric-positive strong{color:#6c8f80}.stock-history-chart svg,.stock-price-history-chart svg{height:300px}.fundamental-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fundamental-bar-chart svg{height:220px}.fundamental-bar{fill:#7c9fa8d1}.fundamental-x-label{font-size:11px}.portfolio-delta-chart svg{height:300px}.portfolio-delta-zero-line{stroke:#bec8d5cc;stroke-width:1.5}.portfolio-delta-bar-positive{fill:#8fb0a2d1}.portfolio-delta-bar-negative{fill:#d4a09ad1}.stock-history-shares-line,.stock-history-value-line{fill:none;stroke-width:2.5}.stock-history-shares-line{stroke:#8fb0a2}.stock-history-value-line{stroke:#b9a686}.stock-history-value-line-stocks{stroke:#8fb0a2}.stock-history-value-line-etfs{stroke:#8aa7b3}.stock-price-history-line-adjusted{fill:none;stroke-width:2.5;stroke:#8aa7b3}.stock-price-history-point{fill:#8aa7b3;stroke:#fff;stroke-width:2}.stock-price-transaction-marker circle{stroke:#fff;stroke-width:2}.stock-price-transaction-marker text{fill:#314356;font-size:9px;font-weight:900;pointer-events:none}.stock-price-transaction-marker-buy circle{fill:#a8c5bc}.stock-price-transaction-marker-sell circle{fill:#d6a49d}.stock-history-shares-point{fill:#a8c5bc;stroke:#fff;stroke-width:2}.stock-history-stock-bar{fill:#a8c5bce0}.stock-history-etf-bar{fill:#8aa7b3e0}.stock-history-value-point{fill:#b9a686;stroke:#fff;stroke-width:2}.stock-history-value-point-stocks{fill:#a8c5bc}.stock-history-value-point-etfs{fill:#8aa7b3}.stock-history-value-axis{fill:#a08762}.stock-history-value-axis-stocks{fill:#7d9e91}.stock-history-value-axis-etfs{fill:#6f8d99}.stock-history-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;color:var(--app-muted);font-size:.82rem;font-weight:800}.stock-history-legend span{display:inline-flex;align-items:center;gap:6px}.stock-history-legend span:before{width:18px;height:3px;border-radius:999px;content:"";opacity:.95}.stock-history-legend-shares:before{background:#8be0ad}.stock-history-legend-stocks:before{background:#8be0ad}.stock-history-legend-etfs:before{background:#74a7d8}.stock-history-legend-value:before{background:#b9a686}.stock-history-legend-value-stocks:before{background:#8be0ad}.stock-history-legend-value-etfs:before{background:#74a7d8}.stock-price-history-legend-adjusted:before{background:#74a7d8}.stock-price-history-legend-buy:before{height:10px;background:#a8c5bc}.stock-price-history-legend-sell:before{height:10px;background:#d6a49d}.auth-shell{display:grid;min-height:100vh;place-items:center;padding:24px;background:var(--app-bg)}.auth-panel{width:min(100%,520px);padding:28px;border:1px solid rgba(173,202,184,.2);border-radius:8px;background:var(--app-surface);box-shadow:var(--app-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:var(--app-border)}.auth-panel h1{margin-bottom:18px;font-size:clamp(2.4rem,8vw,4rem);color:var(--app-text)}.auth-panel p{color:#5f7084;line-height:1.55}.auth-form{display:grid;gap:14px;margin-top:18px}.auth-form label{display:grid;gap:8px;color:#5f7084;font-size:.92rem;font-weight:700}.auth-form input{width:100%;min-height:44px;border:1px solid rgba(173,202,184,.26);border-radius:8px;padding:8px 10px;background:#030c0a9e;color:#ecf4ee;font:inherit}.auth-provider-actions{display:grid;gap:10px;margin-top:20px}.auth-provider-actions .primary-button,.auth-provider-actions .ghost-button{width:100%}.primary-button,.ghost-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;border-radius:8px;padding:9px 14px;font:inherit;font-weight:800;cursor:pointer}.primary-button{border:1px solid #5abd84;background:var(--app-primary);color:#fff;border-color:var(--app-primary)}.ghost-button{border:1px solid rgba(173,202,184,.28);background:transparent;color:#c9e6d6}.primary-button:disabled{cursor:not-allowed;opacity:.6}.icon-button{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid rgba(173,202,184,.24);border-radius:8px;background:#030c0a57;color:#c9e6d6;font:inherit;font-weight:900;line-height:1;cursor:pointer}.icon-button:hover{border-color:#d6b86b85;color:#d6b86b}.crawler-button{gap:8px;min-width:154px}.button-spinner{width:15px;height:15px;border:2px solid rgba(6,17,13,.26);border-top-color:#06110d;border-radius:50%;animation:spin .8s linear infinite}.admin-loading{margin-top:-6px;color:var(--app-muted);font-size:.9rem}@keyframes spin{to{transform:rotate(360deg)}}.auth-error{color:#ff9a8d}.mfa-qr{width:min(240px,100%);height:auto;border:1px solid rgba(173,202,184,.24);border-radius:8px;background:#fff}table{width:100%;min-width:720px;border-collapse:collapse;background:transparent}th,td{padding:12px 14px;border-bottom:1px solid var(--app-border);text-align:left;vertical-align:top}th{color:var(--app-muted);font-size:.72rem;text-transform:uppercase;background:#f8fafc;font-weight:700}.sort-button{display:inline-flex;width:100%;min-height:30px;align-items:center;justify-content:space-between;gap:8px;border:0;padding:0;background:transparent;color:inherit;font:inherit;font-weight:800;text-align:left;text-transform:inherit;cursor:pointer}.sort-indicator{flex:0 0 auto;color:#8be0ad;font-size:.72rem}.table-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px;color:var(--app-muted);font-size:.9rem;font-weight:800}.table-pagination span{min-width:102px;text-align:center}td{color:var(--app-text)}.cell-negative{color:#ff8f84}.cell-positive{color:#8be0ad}tbody tr:nth-child(2n){background:var(--app-surface-muted)}.summary-row{background:var(--app-primary-soft)}.summary-row td{border-bottom-color:#bfdbfe;color:#627f9e;font-weight:900}.row-tone-positive{background:color-mix(in oklch,var(--app-success) 8%,white)}.row-tone-negative{background:color-mix(in oklch,var(--app-danger) 8%,white)}@media(max-width:720px){.app-shell{grid-template-columns:1fr;gap:16px;padding:16px}.app-sidebar{position:static;min-height:auto;padding:18px}.sidebar-brand h1{font-size:clamp(1.45rem,6vw,1.9rem)}.tabs{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.sidebar-group-links{padding-left:10px}.currency-switcher{width:100%}.currency-rate{flex:1 1 auto;min-width:0;justify-content:center;font-size:.72rem}.currency-switcher button{flex:1 1 0}.status{white-space:normal}.overview-summary,.overview-mini-metrics{grid-template-columns:1fr}.overview-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cockpit-grid,.allocation-main-grid,.allocation-summary-grid,.changes-event-grid,.changes-summary-grid,.dashboard-panel-grid,.fv-heatmap-summary,.insight-summary-grid,.score-pillar-grid,.watchlist-panel-grid,.watchlist-summary-grid,.portfolio-score-hero{grid-template-columns:1fr}.portfolio-score-ring{width:136px;height:136px}.portfolio-score-ring span{font-size:3rem}.cockpit-score-card{min-height:120px}.dashboard-heading-meta{justify-content:flex-start}.loading-overlay{grid-template-columns:1fr;justify-items:center;text-align:center}.loading-orbit{width:58px;height:58px}.loading-orbit span:nth-child(1){left:24px}.dashboard-list li,.recommendation-row{grid-template-columns:1fr}.dashboard-list b,.recommendation-row b{text-align:left}.fv-heatmap-legend{justify-content:flex-start}.fv-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fv-tile{grid-column:span 1!important}.heatmap-chart{padding:8px}.heatmap-chart svg{height:460px;min-height:460px}.admin-actions{align-items:stretch;flex-direction:column}.portfolio-form{grid-template-columns:1fr}.stock-detail-heading{align-items:flex-start;flex-direction:column}.fundamental-chart-grid{grid-template-columns:1fr}}@media(min-width:721px)and (max-width:1060px){.app-shell{grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:18px;padding:18px}.app-sidebar{top:18px;min-height:calc(100vh - 36px);padding:18px}.overview-hero-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cockpit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cockpit-score-card{grid-column:1 / -1}.changes-summary-grid,.allocation-summary-grid,.watchlist-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-summary-grid{grid-template-columns:minmax(0,1fr)}.insight-primary-card{grid-column:1 / -1}.watchlist-panel-grid{grid-template-columns:minmax(0,1fr)}.watchlist-primary-card{grid-column:1 / -1}.allocation-main-grid{grid-template-columns:minmax(0,1fr)}.allocation-score-card{grid-column:1 / -1}.allocation-wide-panel{grid-row:auto}.changes-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.changes-primary-card{grid-column:1 / -1}.fv-heatmap-summary,.score-pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fv-tile-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.fundamental-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.app-main{display:flex;min-width:0;flex-direction:column}.app-topbar{position:sticky;z-index:10;top:0;display:flex;width:100%;min-height:64px;align-items:center;flex-wrap:wrap;gap:16px;padding:12px 28px;border-bottom:1px solid var(--app-border);background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-location{display:flex;flex:1 1 auto;min-width:0;align-items:center;gap:10px;color:var(--app-text);font-size:.88rem;font-weight:650}.topbar-location-icon{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted);color:var(--app-muted)}.topbar-location a{color:var(--app-muted);text-decoration:none;font-weight:500}.topbar-location a:hover{color:var(--app-text);text-decoration:underline}.topbar-location-separator{flex:0 0 auto;color:var(--app-muted-2)}.topbar-location [aria-current=page]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{display:flex;flex:0 1 auto;margin-left:auto;min-width:0;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 20px}.topbar-data-status,.topbar-currency{display:flex;min-width:0;align-items:center;gap:10px}.topbar-data-status{color:var(--app-muted);font-size:.76rem;font-variant-numeric:tabular-nums}.topbar-portfolio-summary{display:flex;align-items:center;gap:18px;margin:0;font-variant-numeric:tabular-nums}.topbar-portfolio-summary>div{display:grid;gap:3px;line-height:1.35}.topbar-portfolio-summary dd{margin:0;color:var(--app-text);font-size:.86rem;font-weight:700;white-space:nowrap}.topbar-portfolio-summary .cell-positive{color:var(--app-success)}.topbar-portfolio-summary .cell-negative{color:var(--app-danger)}.topbar-data-status>svg{flex:0 0 auto}.topbar-data-status>div,.topbar-rate{display:grid;gap:3px;line-height:1.35}.topbar-meta-label{color:var(--app-muted);font-size:.66rem;font-weight:500}.topbar-currency .currency-rate{margin:0}.app-topbar .currency-switcher{width:auto;flex:0 0 auto}.app-topbar .currency-switcher button{min-height:30px}.app-topbar .user-menu{min-width:0;max-width:100%;min-height:36px;padding:0 0 0 16px;border:0;border-left:1px solid var(--app-border);border-radius:0;background:transparent}.app-topbar .user-menu strong{min-width:0}.app-topbar .sign-out-button{border-color:transparent;font-weight:500}.topbar-location a:focus-visible,.app-topbar button:focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.brand-mark{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:var(--app-teal);color:var(--app-sidebar-accent-fg);font-family:var(--app-font-display);font-size:.92rem;font-weight:700;font-variant-numeric:tabular-nums}.sidebar-brand-copy{display:grid;gap:1px}.sidebar-subtitle{margin:0;color:var(--app-sidebar-fg-60);font-size:.78rem;font-weight:500}.sidebar-nav-groups{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;gap:18px;overflow:visible;padding:4px 0 0}.sidebar-group-label{margin:0;padding:0 10px;color:var(--app-sidebar-fg-45);font-size:.69rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sidebar-nav-link{position:relative;display:flex;min-height:36px;align-items:center;gap:12px;padding:8px 12px;border-radius:10px;background:transparent;color:var(--app-sidebar-fg-70);font-size:.92rem;font-weight:500;letter-spacing:0;text-transform:none;text-decoration:none;transition:background-color .14s ease,color .14s ease}.sidebar-nav-link:hover{background:color-mix(in oklch,var(--app-sidebar-accent) 60%,transparent);color:var(--app-sidebar-accent-fg)}.sidebar-nav-link[aria-current=page]{background:var(--app-sidebar-accent);color:var(--app-sidebar-accent-fg);font-weight:600}.sidebar-nav-link[aria-current=page]:before{position:absolute;top:6px;bottom:6px;left:-8px;width:3px;border-radius:999px;background:var(--app-teal);content:""}.nav-icon{display:flex;flex:0 0 16px;align-items:center;justify-content:center;width:16px;height:16px;color:currentColor;opacity:.85}.nav-icon svg{width:16px;height:16px}.sidebar-nav-link[aria-current=page] .nav-icon{opacity:1}h2,.dashboard-heading h2{color:var(--app-text);font-size:clamp(1.65rem,2.4vw,2.35rem);font-weight:700;line-height:1.12}.overview-section,.portfolio-dashboard-section,.portfolio-score-section,.snapshot-changes-section,.allocation-concentration-section,.watchlist-section,.insight-section,.fair-value-heatmap-section,.stock-route-section{gap:20px}.dashboard-muted,.notice,.text-grid p,.overview-copy p,.cockpit-score-card p,.watchlist-primary-card p,.allocation-score-card p,.changes-primary-card p,.portfolio-score-hero p,.score-pillar-card p{color:var(--app-muted)}.status,.dashboard-heading-meta span,.section-badge,.fair-value-badge,.fair-value-recommendation,.stock-quote-links span,.admin-muted{border:1px solid var(--app-border);border-radius:7px;background:var(--app-surface-muted);color:var(--app-muted);box-shadow:none}.currency-switcher,.user-menu{min-height:38px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.currency-switcher{min-height:32px;border:0;background:var(--app-surface-muted)}.sign-out-button,.ghost-button,.primary-button{min-height:34px;border-radius:7px;padding:7px 11px;font-size:.84rem;font-weight:700}.sign-out-button,.ghost-button{border-color:var(--app-border);background:#fff;color:var(--app-muted)}.sign-out-button:hover,.ghost-button:hover{background:var(--app-surface-muted);color:var(--app-text)}.metric-card,.overview-primary-metric,.overview-copy,.overview-mini-metrics,.chart-panel,.table-wrap,.admin-actions,.snapshot-admin-panel,.admin-run-result,.crawler-progress,.dashboard-panel,.stock-detail-panel,.fair-value-panel,.fv-heatmap-summary article,.allocation-group-list article,.fair-value-grid article,.crawler-result-list article,.cockpit-score-card,.dashboard-metric-tile,.insight-primary-card,.watchlist-primary-card,.allocation-score-card,.changes-primary-card,.changes-event-grid article,.score-pillar-card,.portfolio-score-hero{border:1px solid var(--app-border);border-radius:12px;background:var(--app-surface);box-shadow:var(--app-shadow);-webkit-backdrop-filter:none;backdrop-filter:none}.metric-card{min-height:94px;padding:14px 16px}.overview-primary-metric{min-height:118px;padding:18px}.crawler-result-list article>div:first-child,.allocation-group-list article,.fair-value-grid article{color:var(--app-text)}.stock-detail-meta span{color:#5f7084;font-weight:600}.fair-value-title-row h3{color:var(--app-text)}.fair-value-title-row .fair-value-recommendation{border-color:#7a94b83d;background:#eef3f8;color:#566d89}.fair-value-details div{border:1px solid var(--app-border);background:#fbfcfd}.fair-value-grid article{border:1px solid var(--app-border);background:var(--app-surface-muted)}.fair-value-grid span{color:#6f8092;font-weight:700}.fair-value-grid strong{color:#43576d;font-weight:800}.fair-value-details dt{color:#6f8092;font-weight:700}.fair-value-details dd{color:#43576d;font-weight:800}.allocation-wide-panel h3{color:var(--app-text)}.fv-heatmap-chart .heatmap-sector-frame{fill:#eef3f7;stroke:#d9e2eb}.fv-heatmap-chart .heatmap-sector-label{fill:#5f7084}.metric-card span,.overview-primary-metric span,.overview-mini-metrics span,.cockpit-score-card>span,.dashboard-metric-tile span,.watchlist-primary-card>span,.allocation-score-card>span,.changes-primary-card>span,.portfolio-score-hero span,.score-pillar-heading span{color:var(--app-muted);font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.metric-card strong,.overview-primary-metric strong,.overview-mini-metrics strong,.cockpit-score-card strong,.dashboard-metric-tile strong,.watchlist-primary-card strong,.allocation-score-card strong,.changes-primary-card strong,.portfolio-score-hero strong{color:var(--app-text)}.chart-heading span,.stock-current-price,.inline-link,.sort-indicator{color:var(--app-primary)}.chart-axis-label,.chart-axis-title{fill:var(--app-muted)}.portfolio-map-section{gap:20px}.portfolio-map-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:2px 0 4px}.portfolio-map-intro h2{margin:0 0 8px;font-size:1.35rem}.portfolio-map-intro p{margin:0;color:var(--app-muted);font-size:.8rem;line-height:1.6}.portfolio-map-legend{display:grid;gap:6px;flex-shrink:0;font-size:.67rem;color:var(--app-muted)}.portfolio-map-legend>span{font-weight:600}.portfolio-map-scale{display:flex;overflow:hidden;border-radius:5px}.portfolio-map-scale>span{min-width:47px;padding:6px 5px;text-align:center;font-variant-numeric:tabular-nums}.portfolio-map-legend small{display:flex;align-items:center;gap:5px;font-size:.63rem}.portfolio-map-legend i{width:8px;height:8px;border-radius:2px}.map-tone-loss-strong{background:#a83b45;color:#fff}.map-tone-loss-medium{background:#d2797d;color:#34191c}.map-tone-loss{background:#f2d7d6;color:#602a30}.map-tone-flat{background:#e8edf1;color:#3e5163}.map-tone-gain{background:#d3e9df;color:#194f41}.map-tone-gain-medium{background:#85bbab;color:#123f33}.map-tone-gain-strong{background:#247460;color:#fff}.map-tone-unknown{background:#e0e6ed;color:#465b70}.portfolio-map-panel{min-width:0;padding:20px;overflow:hidden;container-type:inline-size}.portfolio-map-heading,.portfolio-map-name{display:flex;align-items:center;gap:12px}.portfolio-map-heading{justify-content:space-between;margin-bottom:18px}.portfolio-map-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--app-border);border-radius:9px;background:var(--app-surface-muted);color:var(--app-primary)}.portfolio-map-name h3{color:var(--app-text);margin:0 0 4px;font-size:.95rem}.portfolio-map-name p{margin:0;color:var(--app-muted);font-size:.69rem}.portfolio-map-view{display:flex;gap:3px;padding:3px;border:1px solid var(--app-border);border-radius:7px;background:var(--app-surface-muted)}.portfolio-map-view button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--app-muted);border-radius:4px;padding:6px 10px;font:inherit;font-size:.7rem;cursor:pointer}.portfolio-map-view button[aria-pressed=true]{background:var(--app-surface);color:var(--app-text);box-shadow:0 1px 3px #142d4420}.portfolio-map-summary{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:20px;margin:0 0 18px;padding:16px 0;border-top:1px solid var(--app-border);border-bottom:1px solid var(--app-border)}.portfolio-map-summary>div+div{border-left:1px solid var(--app-border);padding-left:24px}.portfolio-map-summary dt,.portfolio-map-detail dt{color:var(--app-muted);font-size:.68rem;margin-bottom:7px}.portfolio-map-summary dd{margin:0;color:var(--app-text);font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums}.portfolio-map-summary dd>span:not(.map-positive):not(.map-negative){margin-left:8px;color:var(--app-muted);font-size:.88rem;font-weight:500}.portfolio-map-summary dd.portfolio-map-breadth{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;font-size:.78rem}.portfolio-map-breadth span{display:flex;align-items:center;gap:5px}.portfolio-map-summary small{display:block;color:var(--app-muted);font-size:.65rem;margin-top:5px}.map-positive{color:#176852}.map-negative{color:#b13c47}.portfolio-map-canvas{position:relative;width:100%}.portfolio-map-sector{position:absolute;overflow:hidden;background:var(--app-surface-muted);border:2px solid var(--app-surface);border-radius:6px}.portfolio-map-sector-heading{height:25px;padding:0 8px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#516477;font-size:.65rem;font-weight:600}.portfolio-map-sector-heading span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portfolio-map-sector-heading b{flex-shrink:0;font-size:.62rem;font-weight:500}.portfolio-map-tile{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:4px;border:2px solid var(--app-surface);border-radius:5px;overflow:hidden;cursor:pointer;font:inherit;text-align:center;font-variant-numeric:tabular-nums;transition:filter .12s}.portfolio-map-tile:hover{filter:brightness(.96)}.portfolio-map-tile[aria-pressed=true]{box-shadow:inset 0 0 0 2px #142e4566}.portfolio-map-tile strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:.78rem;font-weight:750;white-space:nowrap}.portfolio-map-tile b{font-size:.76rem;font-weight:650;white-space:nowrap}.portfolio-map-tile>span{font-size:.68rem;white-space:nowrap}.portfolio-map-tile small{margin-top:3px;font-size:.61rem;white-space:nowrap}.portfolio-map-tile.is-roomy{gap:7px}.portfolio-map-tile.is-roomy strong{font-size:1rem}.portfolio-map-tile.is-roomy b{font-size:1.1rem}.portfolio-map-tile.is-roomy>span{font-size:.75rem}.portfolio-map-detail{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px;margin-top:16px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted)}.portfolio-map-detail-name{display:flex;align-items:center;gap:10px;min-width:140px}.portfolio-map-detail-name i{width:9px;height:30px;border-radius:3px}.portfolio-map-detail-name strong{display:block;font-size:.83rem}.portfolio-map-detail-name span{display:block;color:var(--app-muted);font-size:.65rem;margin-top:4px}.portfolio-map-detail dl{display:flex;gap:34px;margin:0;flex:1;justify-content:flex-end}.portfolio-map-detail dt{margin-bottom:4px}.portfolio-map-detail dd{margin:0;font-size:.8rem;font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums}.portfolio-map-detail dd small{display:block;margin-top:4px;font-size:.65rem;font-weight:500}.portfolio-map-detail a{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;padding:7px 9px;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface);color:var(--app-primary);font-size:.72rem;text-decoration:none}.portfolio-map-hint,.portfolio-map-source{color:var(--app-muted);font-size:.65rem;line-height:1.7}.portfolio-map-hint{margin:10px 2px 0}.portfolio-map-source{margin:-6px 0 0}.portfolio-map-list{max-height:460px;overflow:auto;scrollbar-width:thin}.portfolio-map-list-head,.portfolio-map-list-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,1fr) 95px;gap:16px;width:100%;align-items:center}.portfolio-map-list-head{position:sticky;top:0;z-index:1;padding:10px 12px;background:var(--app-surface-muted);color:var(--app-muted);font-size:.65rem}.portfolio-map-list-head>:not(:first-child),.portfolio-map-list-row>:not(:first-child){text-align:right}.portfolio-map-list-row{border:0;border-bottom:1px solid var(--app-border);padding:12px;background:var(--app-surface);color:var(--app-text);font:inherit;text-align:left;cursor:pointer;font-variant-numeric:tabular-nums}.portfolio-map-list-row:hover,.portfolio-map-list-row[aria-pressed=true]{background:var(--app-surface-muted)}.portfolio-map-list-row strong{display:block;font-size:.75rem}.portfolio-map-list-row small{display:block;color:var(--app-muted);font-size:.63rem;margin-top:5px}.portfolio-map-list-change{justify-self:end;padding:6px 8px;border-radius:5px;font-size:.69rem;font-weight:650;white-space:nowrap}.portfolio-map-panel :is(button,a):focus-visible{outline:3px solid var(--app-primary);outline-offset:-3px;z-index:2}@container (max-width: 800px){.portfolio-map-detail{flex-wrap:wrap}.portfolio-map-detail-name{flex:1;min-width:0}.portfolio-map-detail dl{order:3;justify-content:space-between;flex-basis:100%}}@media(max-width:1000px){.portfolio-map-intro{flex-direction:column;gap:16px}.portfolio-map-summary{grid-template-columns:1fr 1fr 1.2fr;gap:14px}.portfolio-map-summary>div+div{padding-left:14px}.portfolio-map-detail{gap:16px}.portfolio-map-detail dl{gap:18px}}@media(max-width:640px){.portfolio-map-panel{padding:14px}.portfolio-map-intro h2{font-size:1.2rem}.portfolio-map-intro p{font-size:.75rem}.portfolio-map-legend{width:100%}.portfolio-map-scale>span{min-width:0;flex:1;font-size:.6rem}.portfolio-map-summary{grid-template-columns:1fr 1fr;gap:14px}.portfolio-map-summary dd{font-size:.95rem}.portfolio-map-summary>div:last-child{grid-column:1 / -1;border-left:0;padding:0}.portfolio-map-detail{flex-wrap:wrap;padding:12px;gap:16px}.portfolio-map-detail-name{flex:1;min-width:0}.portfolio-map-detail dl{order:3;justify-content:space-between;flex-basis:100%}.portfolio-map-list-head,.portfolio-map-list-row{grid-template-columns:minmax(0,1fr) minmax(85px,.85fr) 76px;gap:8px;padding-left:4px;padding-right:4px}.portfolio-map-list-row small{overflow-wrap:anywhere}}.table-wrap h3{margin:0;padding:18px 18px 0}.table-heading h3{padding:0}tbody tr:hover{background:#f1f5f9}.cell-positive,.stock-metric-positive strong,.fair-value-recommendation-strong-buy,.fair-value-recommendation-buy,.fair-value-badge-high,.fair-value-check-pass{color:var(--app-success)}.cell-negative,.stock-metric-negative strong,.fair-value-recommendation-avoid,.fair-value-check-fail{color:var(--app-danger)}.asset-filter-controls input,.admin-checkbox input{accent-color:var(--app-primary)}.score-bar,.score-pillar-bar,.allocation-stack,.allocation-exposure-stack,.pie-list-bar{background:#e5eaf0}.score-bar span,.score-pillar-bar span{background:linear-gradient(90deg,var(--app-primary),var(--app-info))}.admin-inline-input,.snapshot-picker select,.portfolio-form input,.auth-form input{border-color:var(--app-border);background:#fff;color:var(--app-text)}.auth-panel p,.auth-form label{color:var(--app-muted)}.recommendation-row span,.recommendation-row b{color:var(--app-text)}.fv-heatmap-summary article,.fv-sector-panel{border-color:var(--app-border);background:var(--app-surface);box-shadow:var(--app-shadow)}.fv-heatmap-summary span,.fv-sector-heading span{color:var(--app-muted)}.stock-history-legend-shares:before,.stock-history-legend-stocks:before{background:#a8c5bc}.stock-history-legend-etfs:before,.stock-price-history-legend-adjusted:before,.stock-history-legend-value-etfs:before{background:#8aa7b3}@media(max-width:920px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:static;min-height:auto;max-height:none;width:auto;margin:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}.tabs{padding:10px}.sidebar-nav-groups{overflow:visible}.app-topbar{position:static;flex-wrap:wrap;padding:12px 16px}.topbar-actions{width:100%;flex-wrap:wrap;justify-content:flex-start}.app-content{padding:18px 16px}.overview-hero-grid,.overview-summary{grid-template-columns:1fr}}@media(max-width:600px){.topbar-actions{gap:12px 16px}.topbar-portfolio-summary{flex:1 1 160px}.topbar-data-status{flex:1 1 140px}.topbar-currency{flex:1 1 auto;justify-content:space-between}.app-topbar .currency-rate{justify-content:flex-start}.app-topbar .user-menu{width:100%;justify-content:space-between;padding:10px 0 0;border-left:0;border-top:1px solid var(--app-border)}.app-topbar .user-menu strong{max-width:none}}@media(min-width:921px)and (max-width:1180px){.app-shell{grid-template-columns:240px minmax(0,1fr)}.overview-hero-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.visually-hidden,.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.overview-section{gap:16px;min-width:0}.overview-heading,.overview-holdings-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.overview-heading h2{margin:0;font-size:1.3rem}.overview-heading p,.overview-holdings-toolbar p,.overview-value-chart .chart-heading p{margin:5px 0 0;color:var(--app-muted);font-size:.8rem;line-height:1.5}.overview-asset-filters{border:0;padding:0;margin:0;min-width:0;gap:6px}.overview-asset-filters label{cursor:pointer;box-shadow:none}.overview-asset-filters label:has(input:checked){background:var(--app-primary-soft);border-color:var(--app-primary);color:var(--app-text)}.overview-section .overview-hero-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.overview-section .overview-metric{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-height:116px;padding:16px;box-shadow:none}.overview-metric>span{margin:0;line-height:1.4}.overview-section .overview-primary-metric{border-top:3px solid var(--app-primary);padding-top:14px}.overview-metric>strong{font-size:clamp(1.35rem,1.7vw,1.85rem);font-variant-numeric:tabular-nums}.overview-metric>small{margin-top:auto;color:var(--app-muted);font-size:.73rem;line-height:1.45}.overview-section .overview-metric-positive{color:var(--app-success)}.overview-section .overview-metric-negative{color:var(--app-danger)}.overview-value-chart{min-width:0;padding:16px;box-shadow:none}.overview-value-chart .chart-heading{align-items:flex-start;margin-bottom:8px}.overview-value-chart .chart-heading h3{font-size:.95rem}.overview-chart-readout{display:grid;gap:4px;text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.overview-chart-readout strong{color:var(--app-primary);font-size:1rem}.overview-chart-readout small{color:var(--app-muted);font-size:.72rem}.overview-value-chart svg{width:100%;height:200px}.overview-value-chart .chart-axis-label{font-size:11px;font-weight:500}.overview-value-chart .chart-point{cursor:crosshair}.overview-value-chart .chart-point:hover,.overview-value-chart .chart-point:focus{fill:var(--app-primary);stroke:var(--app-text);stroke-width:2px}.overview-holdings-toolbar{margin-top:4px}.overview-holdings-toolbar h3{margin:0;font-size:1rem}.overview-position-search{display:flex;align-items:center;gap:8px;width:240px;max-width:100%;padding:0 10px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-muted)}.overview-position-search input{min-width:0;width:100%;min-height:38px;border:0;background:transparent;color:var(--app-text);font:inherit;font-size:.85rem}.overview-position-search:focus-within{outline:2px solid var(--app-primary);outline-offset:2px}.overview-position-search input:focus-visible{outline:none}.overview-section :is(button,summary,input[type=checkbox],.chart-point):focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.overview-empty-state{padding:20px;border:1px dashed var(--app-border);border-radius:10px;background:var(--app-surface)}.overview-empty-state p{margin:6px 0 12px;color:var(--app-muted);font-size:.85rem}.overview-section .table-wrap-featured{max-height:640px;overflow:auto;box-shadow:none}.overview-section .table-wrap-featured thead{position:sticky;top:0;z-index:2}.overview-section .table-wrap-featured :is(th,td):not(:first-child){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.overview-section .table-wrap-featured th:not(:first-child) .sort-button{justify-content:flex-end;text-align:right}.overview-section .table-wrap-featured :is(th,td):first-child{position:sticky;left:0;z-index:1;background:var(--app-surface);min-width:120px;border-right:1px solid var(--app-border)}.overview-section .table-wrap-featured th:first-child{background:#f8fafc}.overview-section .table-wrap-featured .summary-row td{color:var(--app-text);background:var(--app-primary-soft)}.overview-section .table-wrap-featured tbody tr{--overview-row-background: var(--app-surface);--overview-row-hover: var(--app-primary-soft)}.overview-section .table-wrap-featured tbody tr:nth-child(2n){--overview-row-background: var(--app-surface-muted)}.overview-section .table-wrap-featured tbody tr.row-tone-positive{--overview-row-background: color-mix(in oklch, var(--app-success) 8%, white);--overview-row-hover: color-mix(in oklch, var(--app-success) 16%, white)}.overview-section .table-wrap-featured tbody tr.row-tone-negative{--overview-row-background: color-mix(in oklch, var(--app-danger) 8%, white);--overview-row-hover: color-mix(in oklch, var(--app-danger) 16%, white)}.overview-section .table-wrap-featured tbody tr.row-tone-positive:nth-child(2n){--overview-row-background: color-mix(in oklch, var(--app-success) 12%, white)}.overview-section .table-wrap-featured tbody tr.row-tone-negative:nth-child(2n){--overview-row-background: color-mix(in oklch, var(--app-danger) 12%, white)}.overview-section .table-wrap-featured tbody tr:not(.summary-row)>td,.overview-section .table-wrap-featured tbody tr.summary-row:is(.row-tone-positive,.row-tone-negative)>td{background:var(--overview-row-background)}.overview-section .table-wrap-featured tbody tr:hover>td{background:var(--overview-row-hover)}.overview-section .table-wrap-featured .sort-indicator{opacity:.45}.overview-section .table-wrap-featured th[aria-sort] .sort-indicator{opacity:1}.overview-section .table-heading{padding:10px 14px}@media(max-width:1200px){.overview-section .overview-hero-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.overview-section .overview-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.overview-section .overview-primary-metric{grid-column:1 / -1}.overview-section .overview-metric{min-height:108px;padding:12px}.overview-section .overview-primary-metric{min-height:100px}.overview-heading{align-items:flex-start}.overview-holdings-toolbar{align-items:stretch}.overview-position-search{width:100%}.overview-value-chart{padding:12px}.overview-value-chart .chart-heading{flex-wrap:wrap}}.portfolio-dashboard-v2 .dashboard-heading{align-items:center}.portfolio-dashboard-v2 .dashboard-heading h2{margin:0;font-size:clamp(1.5rem,2.2vw,2rem)}.dashboard-subtitle{margin:6px 0 0;color:var(--app-muted);font-size:.82rem}.portfolio-dashboard-v2 .asset-filter-controls{margin:0}.dashboard-summary-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:14px}.portfolio-dashboard-v2 .dashboard-metric-tile{min-width:0;min-height:132px;padding:20px;gap:10px}.portfolio-dashboard-v2 .dashboard-metric-tile:first-child{border-top:3px solid var(--app-primary);padding-top:18px}.portfolio-dashboard-v2 .dashboard-metric-tile>span{text-transform:none;font-size:.82rem;font-weight:500}.portfolio-dashboard-v2 .dashboard-metric-tile>strong{font-size:clamp(1.4rem,2.4vw,2rem);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.portfolio-dashboard-v2 .dashboard-metric-tile>.cell-positive{color:var(--app-success)}.portfolio-dashboard-v2 .dashboard-metric-tile>.cell-negative{color:var(--app-danger)}.portfolio-dashboard-v2 .dashboard-metric-tile p{margin:0;color:var(--app-muted);font-size:.78rem;line-height:1.5}.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);align-items:start;gap:18px}.portfolio-dashboard-v2 .dashboard-panel,.overview-section .dashboard-history{min-width:0;min-height:0;padding:20px}.dashboard-panel-heading{display:flex;align-items:baseline;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:18px}.dashboard-panel-heading h3,.dashboard-panel-heading h4{margin:0;font-size:1rem;color:var(--app-text)}.dashboard-panel-heading>a,.dashboard-panel-heading>span{font-size:.78rem}.dashboard-panel-heading>span{color:var(--app-muted)}.dashboard-periods{display:flex;flex-wrap:wrap;gap:4px}.dashboard-periods button{min-height:32px;padding:5px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--app-muted);font-size:.78rem;cursor:pointer}.dashboard-periods button:hover{background:var(--app-surface-muted);color:var(--app-text)}.dashboard-periods button[aria-pressed=true]{background:var(--app-primary-soft);color:var(--app-primary);border-color:var(--app-border)}.dashboard-chart-readout{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:4px 0 10px;font-size:.82rem;font-variant-numeric:tabular-nums}.dashboard-chart-readout>span{color:var(--app-muted)}.dashboard-chart-readout-values>strong{font-size:1.25rem;color:var(--app-text)}.dashboard-chart-readout-values{display:flex;align-items:baseline;justify-content:flex-end;flex-wrap:wrap;gap:6px 12px}.dashboard-chart-readout-values>span{color:var(--app-muted);font-size:.78rem}.dashboard-chart-legend,.dashboard-chart-legend>span{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.dashboard-chart-legend{gap:8px 18px;color:var(--app-muted);font-size:.76rem}.dashboard-history-title{flex:1 1 320px;min-width:0}.dashboard-history-context{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin-top:6px}.dashboard-history-context .dashboard-subtitle{margin:0}.dashboard-history-context .dashboard-chart-legend>span{white-space:nowrap}.dashboard-chart-legend i{display:inline-block;width:22px;border-top:2px solid var(--app-primary)}.dashboard-chart-legend .dashboard-average-swatch{border-top:2px dashed var(--app-info)}.dashboard-chart-legend .dashboard-buy-swatch{border-color:var(--app-success)}.dashboard-chart-legend .dashboard-sell-swatch{border-color:var(--app-danger);border-top-style:dashed}.dashboard-transaction-marker{color:var(--app-success)}.dashboard-transaction-marker-sell{color:var(--app-danger)}.dashboard-transaction-stem{stroke:currentColor;stroke-width:1.2;stroke-opacity:.45}.dashboard-transaction-marker-sell .dashboard-transaction-stem{stroke-dasharray:4 3}.dashboard-transaction-marker circle{fill:currentColor;opacity:.8}.dashboard-transaction-hit{stroke:transparent;stroke-width:12;pointer-events:stroke}.dashboard-transaction-list{display:grid;gap:8px;margin:12px 0 0;padding-left:18px;line-height:1.5}.dashboard-value-chart{min-width:0}.dashboard-value-chart svg{display:block;width:100%;height:260px}.dashboard-value-chart .chart-axis-label{font-size:12px}.dashboard-value-area{fill:var(--app-primary);fill-opacity:.08}.dashboard-value-line{fill:none;stroke:var(--app-primary);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.dashboard-value-average{fill:none;stroke:var(--app-info);stroke-width:2px;stroke-dasharray:6 4;stroke-linecap:round;stroke-linejoin:round}.dashboard-average-point{fill:var(--app-info);stroke:var(--app-surface);stroke-width:2px}.dashboard-value-point{fill:var(--app-primary);stroke:var(--app-surface);stroke-width:2px}.dashboard-value-guide{stroke:var(--app-muted);stroke-width:1px;opacity:.5}.dashboard-history-message{margin:0;padding:10px 0;color:var(--app-muted);font-size:.88rem}.dashboard-history-message p{margin:0 0 12px}.dashboard-allocation-footnote{margin:14px 0 0;color:var(--app-muted);font-size:.78rem;line-height:1.5}.dashboard-history-values{margin-top:12px;color:var(--app-muted);font-size:.78rem}.dashboard-history-values summary,.dashboard-data-details summary{cursor:pointer}.dashboard-history-values table{width:100%;margin-top:10px;border-collapse:collapse;table-layout:fixed;color:var(--app-text)}.dashboard-history-values th,.dashboard-history-values td{padding:8px 0;border-bottom:1px solid var(--app-border);text-align:left;overflow-wrap:anywhere}.dashboard-history-values th:not(:first-child),.dashboard-history-values td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.dashboard-allocation-stack{display:flex;height:12px;overflow:hidden;border-radius:6px;background:var(--app-surface-muted)}.dashboard-allocation-stocks,.dashboard-dot-stocks{background:var(--app-primary)}.dashboard-allocation-etfs,.dashboard-dot-etfs{background:#c7b18b}.dashboard-allocation-legend{margin:12px 0 20px;display:grid;gap:8px;font-size:.82rem}.dashboard-allocation-legend>div{display:flex;justify-content:space-between;gap:12px}.dashboard-allocation-legend dt{display:flex;align-items:center;gap:8px;color:var(--app-muted)}.dashboard-allocation-legend i{display:inline-block;width:8px;height:8px;border-radius:2px}.dashboard-allocation-legend dd{margin:0;font-variant-numeric:tabular-nums}.dashboard-positions-heading{padding-top:18px;border-top:1px solid var(--app-border);margin-bottom:12px}.dashboard-positions-heading h4{font-size:.86rem}.dashboard-holdings{display:grid;gap:14px;padding:0;margin:0;list-style:none}.dashboard-holdings li>div:first-child{display:flex;align-items:center;gap:8px;font-size:.82rem}.dashboard-holdings li>div>span{color:var(--app-muted);font-size:.74rem}.dashboard-holdings b{margin-left:auto;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.dashboard-holding-track{height:4px;margin-top:6px;border-radius:2px;overflow:hidden;background:var(--app-surface-muted)}.dashboard-holding-track>span{display:block;height:100%;background:var(--app-primary);border-radius:inherit}.dashboard-review-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.dashboard-review-row>div>strong{display:inline;margin-left:10px;color:var(--app-text);font-size:.86rem;font-weight:500}.dashboard-review-row p{margin:6px 0 0;color:var(--app-muted);font-size:.78rem}.dashboard-review-row>b{font-size:1.1rem;font-variant-numeric:tabular-nums}.dashboard-data-details{padding:14px 18px;border-radius:10px;background:var(--app-surface-muted);color:var(--app-muted);font-size:.82rem}.dashboard-data-details p{margin:12px 0 0;line-height:1.6}@media(max-width:1100px){.dashboard-main-grid{grid-template-columns:1fr}}@media(max-width:700px){.dashboard-summary-grid{grid-template-columns:1fr}.portfolio-dashboard-v2 .dashboard-metric-tile{min-height:0}.portfolio-dashboard-v2 .dashboard-panel,.overview-section .dashboard-history{padding:16px}}@media(pointer:coarse){.dashboard-periods button{min-width:44px;min-height:44px}}.transactions-section{min-width:0;gap:20px}.transactions-toolbar,.transactions-filters,.transactions-chart-heading,.transactions-ledger-heading,.transactions-search-actions{display:flex;align-items:center;justify-content:space-between;gap:16px}.transactions-toolbar{flex-wrap:wrap}.transactions-intro h2{margin:0 0 5px;font-size:1.45rem;font-weight:600}.transactions-intro p,.transactions-chart-heading p,.transactions-ledger-heading p{margin:0;color:var(--app-muted);font-size:.75rem;line-height:1.6}.transactions-filters{flex-wrap:wrap;gap:10px}.transactions-segmented{display:inline-flex;padding:3px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted)}.transactions-segmented button{min-height:32px;padding:6px 15px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--app-muted);font:inherit;font-size:.75rem;font-weight:600;cursor:pointer}.transactions-segmented button:hover{color:var(--app-text)}.transactions-segmented button[aria-pressed=true]{border-color:var(--app-border);background:var(--app-surface);color:var(--app-primary);box-shadow:var(--app-shadow)}.transactions-year,.transactions-search{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-muted)}.transactions-year select,.transactions-search input{min-width:0;min-height:38px;border:0;background:transparent;color:var(--app-text);font:inherit;font-size:.75rem}.transactions-year select{cursor:pointer}.transactions-search{width:245px}.transactions-search>svg{flex:0 0 16px}.transactions-search input{flex:1;width:100%}.transactions-search input::placeholder{color:var(--app-muted)}.transactions-search:focus-within{border-color:var(--app-primary);outline:2px solid var(--app-primary-soft)}.transactions-search input:focus-visible{outline:0}.transactions-section :is(button,select,[tabindex]):focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}.transactions-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.transactions-metric{display:grid;align-content:start;gap:10px;padding:18px 20px;border:1px solid var(--app-border);border-radius:var(--app-radius-lg);background:var(--app-surface)}.transactions-metric>span{display:flex;align-items:center;gap:8px;color:var(--app-muted);font-size:.74rem;font-weight:600}.transactions-metric svg{color:var(--app-primary);flex-shrink:0}.transactions-metric strong{font-family:var(--app-font-display);font-size:clamp(1.35rem,2vw,1.8rem);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.25;overflow-wrap:anywhere}.transactions-metric small{color:var(--app-muted);font-size:.68rem;line-height:1.6}.transactions-metric-primary{border-color:color-mix(in oklch,var(--app-primary) 26%,var(--app-border));background:var(--app-primary-soft)}.transactions-metric-primary strong{color:var(--app-primary)}.transactions-capital-summary{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px 28px;padding:0 2px;color:var(--app-muted);font-size:.73rem}.transactions-capital-summary>div{display:flex;align-items:baseline;gap:10px}.transactions-capital-summary strong{color:var(--app-text);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.transactions-capital-summary details{margin-left:auto;max-width:620px;line-height:1.7}.transactions-capital-summary summary{cursor:pointer}.transactions-capital-summary details p{margin:8px 0 0}.transactions-section .transactions-chart-panel{min-width:0;padding:20px 24px 14px}.transactions-chart-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.transactions-chart-heading h3,.transactions-ledger-heading h3{margin:0 0 4px;font-size:.95rem;font-weight:600}.transactions-legend{display:flex;gap:18px;color:var(--app-muted);font-size:.72rem}.transactions-legend span{display:inline-flex;align-items:center;gap:7px}.transactions-legend i{width:8px;height:8px;border-radius:2px}.transactions-buy-dot{background:var(--app-primary)}.transactions-sell-dot{background:#8a9bad}.transactions-chart-context{display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;min-height:46px;padding:10px 0;color:var(--app-muted);font-size:.72rem}.transactions-chart-context strong{color:var(--app-text);font-weight:600}.transactions-chart-context b{margin-left:5px;color:var(--app-text);font-weight:600;font-variant-numeric:tabular-nums}.transactions-chart-scroll{overflow-x:auto;max-width:100%;scrollbar-width:thin}.transactions-chart-panel svg:not(.lucide){height:240px}.transactions-chart-panel .chart-axis-label{fill:var(--app-muted);font-family:var(--app-font-sans);font-size:11px;font-weight:500}.transactions-zero-line{stroke:var(--app-border-strong);stroke-width:1}.transactions-buy-bar{fill:var(--app-primary)}.transactions-sell-bar{fill:#8a9bad}.transactions-month{cursor:pointer}.transactions-month-hit{fill:transparent}.transactions-month.is-active .transactions-month-hit,.transactions-month:focus-visible .transactions-month-hit{fill:var(--app-primary-soft)}.transactions-month.is-active .digrin-bar{opacity:1}.transactions-chart-note,.transactions-data-note{margin:8px 0 0;color:var(--app-muted);font-size:.68rem;line-height:1.7}.transactions-chart-note{padding-top:10px;border-top:1px solid var(--app-border)}.transactions-ledger-heading{margin-top:4px;flex-wrap:wrap}.transactions-search-actions{flex-wrap:wrap;gap:10px}.transactions-search-actions .ghost-button{min-height:40px;font-size:.73rem}.transactions-section .table-wrap{margin-top:-8px}.transactions-section .table-heading{flex-wrap:wrap;gap:10px}.transactions-section .table-heading h3{color:var(--app-muted);font-size:.75rem;font-weight:500}.transactions-section :is(th,td){padding:11px 16px;white-space:nowrap}.transactions-section th{font-size:.64rem}.transactions-section td{vertical-align:middle;font-size:.8rem;font-variant-numeric:tabular-nums}.transactions-section tbody tr:nth-child(2n){background:color-mix(in oklch,var(--app-surface-muted) 35%,var(--app-surface))}.transactions-section tbody tr:hover{background:var(--app-primary-soft)}.transactions-section .stock-link{font-weight:700}.transactions-number{display:block;text-align:right}.transactions-value{font-weight:600}.transactions-section th:has([aria-label$=Amount],[aria-label$=Shares],[aria-label$=Price],[aria-label$=Value],[aria-label$=Total],[aria-label$=Quantity]) .sort-button{justify-content:flex-end}.transactions-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:76px;padding:5px 8px;border-radius:5px;font-size:.7rem;font-weight:600;line-height:1.2}.transactions-action-buy{color:var(--app-success);background:var(--app-success-soft)}.transactions-action-sell{color:var(--app-muted);background:var(--app-surface-muted)}.transactions-action-sell svg{color:var(--app-muted)}.transactions-muted{color:var(--app-muted-2)}.transactions-empty{display:flex;min-height:190px;align-items:center;justify-content:center;flex-direction:column;gap:10px;padding:24px;color:var(--app-muted);text-align:center}.transactions-empty :is(p,h3){margin:0;font-size:.8rem;line-height:1.6}.transactions-empty h3{color:var(--app-text);font-size:.95rem}.transactions-empty-ledger{border:1px solid var(--app-border);border-radius:var(--app-radius-lg);background:var(--app-surface)}@media(max-width:1050px){.transactions-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.transactions-toolbar,.transactions-ledger-heading{align-items:stretch;flex-direction:column}.transactions-filters{justify-content:space-between;gap:8px}.transactions-segmented button{padding-inline:12px;min-height:36px}.transactions-metrics{gap:10px}.transactions-metric{padding:14px 12px;gap:8px}.transactions-metric>span{font-size:.67rem;gap:5px}.transactions-metric strong{font-size:1.2rem}.transactions-section .transactions-chart-panel{padding:16px 14px 12px}.transactions-search-actions{width:100%}.transactions-search{flex:1 1 180px;width:auto}}@media(pointer:coarse){.transactions-segmented button,.transactions-year select,.transactions-search input{min-height:44px}}.dividend-history-section{gap:20px;min-width:0}.dividend-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.dividend-panel-heading p{margin:0;color:var(--app-muted);font-size:.8rem;line-height:1.6}.dividend-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dividend-metric{display:grid;gap:10px;padding:18px 20px;border:1px solid var(--app-border);border-radius:var(--app-radius-lg);background:var(--app-surface)}.dividend-metric>span{display:flex;align-items:center;gap:8px;color:var(--app-muted);font-size:.74rem;font-weight:600}.dividend-metric svg{flex-shrink:0;color:var(--app-primary)}.dividend-metric strong{color:var(--app-text);font-family:var(--app-font-display);font-size:clamp(1.35rem,2vw,1.8rem);font-weight:600;line-height:1.2;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.dividend-metric small{color:var(--app-muted);font-size:.68rem}.dividend-metric-primary{border-color:color-mix(in oklch,var(--app-primary) 26%,var(--app-border));background:var(--app-primary-soft)}.dividend-metric-primary strong{color:var(--app-primary)}.dividend-history-section .chart-panel{min-width:0;padding:22px 24px}.dividend-panel-heading{margin-bottom:20px}.dividend-panel-heading h3{margin:0 0 4px;font-size:.95rem;line-height:1.5}.dividend-panel-heading p{font-size:.73rem}.dividend-chart-controls{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px}.dividend-segmented{display:inline-flex;padding:3px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface-muted)}.dividend-segmented button{min-height:30px;padding:5px 12px;border:0;border-radius:5px;background:transparent;color:var(--app-muted);font:inherit;font-size:.73rem;font-weight:600;cursor:pointer}.dividend-segmented button[aria-pressed=true]{background:var(--app-surface);color:var(--app-primary);box-shadow:0 1px 3px #142d4214}.dividend-segmented button:disabled{opacity:.4;cursor:default}.dividend-year-select select{min-height:38px;max-width:100%;padding:6px 28px 6px 10px;border:1px solid var(--app-border);border-radius:8px;background:var(--app-surface);color:var(--app-text);font:inherit;font-size:.73rem;cursor:pointer}.dividend-year-select>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.dividend-chart-context{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;min-height:31px;margin-bottom:5px}.dividend-chart-context>span{display:flex;align-items:baseline;gap:12px;color:var(--app-muted);font-size:.75rem}.dividend-chart-context strong{color:var(--app-text);font-size:1.1rem;font-variant-numeric:tabular-nums}.dividend-chart-context small{color:var(--app-muted);font-size:.68rem}.dividend-chart-scroll{width:100%;min-width:0;overflow-x:auto;scrollbar-width:thin}.dividend-history-section .dividend-income-chart{display:block;max-width:none}.dividend-income-chart .chart-axis-label{font-size:11px;font-weight:500}.dividend-income-chart .chart-grid-line{stroke:var(--app-border);stroke-dasharray:3 5}.dividend-income-bar{fill:#69aeb4;transition:fill .12s;cursor:crosshair}.dividend-income-bar-peak{fill:var(--app-primary)}.dividend-income-bar:hover,.dividend-income-bar:focus{fill:var(--app-navy)}.dividend-chart-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;margin-top:4px;border-top:1px solid var(--app-border);color:var(--app-muted);font-size:.68rem}.dividend-chart-footer>span:first-child{display:inline-flex;align-items:center;gap:7px}.dividend-dot{display:inline-block;width:8px;height:8px;border-radius:2px;background:#69aeb4}.dividend-detail-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:start;gap:20px}.dividend-panel-total{color:var(--app-primary);font-size:1rem;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.dividend-ranking-columns{display:grid;grid-template-columns:105px 1fr 88px;gap:16px;padding:0 0 12px;border-bottom:1px solid var(--app-border);color:var(--app-muted);font-size:.65rem}.dividend-ranking-columns>:last-child{text-align:right}.dividend-ranking-list,.dividend-expected-list{padding:0;margin:0;list-style:none}.dividend-ranking-list li{display:grid;grid-template-columns:105px 1fr 88px;align-items:center;gap:16px;min-height:49px;border-bottom:1px solid color-mix(in oklch,var(--app-border) 65%,transparent)}.dividend-ranking-ticker{display:flex;align-items:center;gap:14px;min-width:0}.dividend-ranking-ticker>span{color:var(--app-muted);font-size:.65rem;font-variant-numeric:tabular-nums}.dividend-history-section .stock-link{font-size:.76rem;font-weight:700;overflow-wrap:anywhere;text-align:left}.dividend-ranking-track{height:6px;overflow:hidden;border-radius:4px;background:var(--app-surface-muted)}.dividend-ranking-track i{display:block;height:100%;min-width:1px;border-radius:inherit;background:#8abec2}.dividend-ranking-list li:first-child .dividend-ranking-track i{background:var(--app-primary)}.dividend-ranking-value{display:grid;gap:3px;text-align:right;font-variant-numeric:tabular-nums}.dividend-ranking-value strong{font-size:.78rem;font-weight:700}.dividend-ranking-value small{color:var(--app-muted);font-size:.64rem}.dividend-expand-button{display:flex;align-items:center;justify-content:center;gap:6px;width:fit-content;max-width:100%;min-height:32px;margin:14px auto 0;padding:6px 12px;border:1px solid var(--app-border);border-radius:6px;background:var(--app-surface);color:var(--app-primary);font:inherit;font-size:.7rem;font-weight:600;cursor:pointer}.dividend-expand-button>svg{width:14px;height:14px;flex:0 0 14px;transition:transform .16s ease}.dividend-expand-button:hover{background:var(--app-primary-soft)}.dividend-expand-button .is-expanded{transform:rotate(180deg)}.dividend-estimate-badge{padding:4px 8px;border-radius:5px;background:var(--app-surface-muted);color:var(--app-muted);font-size:.66rem;font-weight:600}.dividend-expected-overview{display:flex;align-items:center;justify-content:center;gap:clamp(20px,3vw,48px);padding:0 0 20px}.dividend-donut{display:grid;place-items:center;width:168px;height:168px;flex-shrink:0;border-radius:50%}.dividend-donut>div{display:grid;align-content:center;gap:6px;width:126px;height:126px;border-radius:50%;background:var(--app-surface);text-align:center}.dividend-donut span{color:var(--app-muted);font-size:.65rem}.dividend-donut strong{font-family:var(--app-font-display);font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums}.dividend-donut-legend{display:grid;gap:12px;min-width:140px;font-size:.7rem}.dividend-donut-legend>div{display:grid;grid-template-columns:8px 1fr auto;align-items:center;gap:9px}.dividend-donut-legend i{width:7px;height:7px;border-radius:2px}.dividend-donut-legend strong{color:var(--app-muted);font-size:.68rem;font-weight:500;font-variant-numeric:tabular-nums}.dividend-expected-columns,.dividend-expected-list li{display:grid;grid-template-columns:1fr 75px 90px;align-items:center;gap:14px}.dividend-expected-columns{padding:10px 0;border-top:1px solid var(--app-border);border-bottom:1px solid var(--app-border);color:var(--app-muted);font-size:.65rem}.dividend-expected-columns>:not(:first-child),.dividend-expected-list li>:not(:first-child){text-align:right}.dividend-expected-list li{min-height:34px;font-size:.74rem;font-variant-numeric:tabular-nums}.dividend-expected-list li>span{color:var(--app-muted);font-size:.69rem}.dividend-expected-list strong{font-weight:600}.dividend-estimate-note{margin:14px 0 0;color:var(--app-muted);font-size:.64rem;line-height:1.6}.dividend-empty{display:grid;place-content:center;justify-items:center;gap:12px;min-height:200px;color:var(--app-muted);text-align:center}.dividend-empty p{max-width:300px;margin:0;font-size:.8rem;line-height:1.6}.dividend-history-section :is(button,select,[tabindex]):focus-visible{outline:2px solid var(--app-primary);outline-offset:3px}@media(max-width:1100px){.dividend-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dividend-detail-grid{grid-template-columns:1fr}}@media(max-width:600px){.dividend-metrics{gap:10px}.dividend-metric{gap:9px;padding:14px}.dividend-metric>span{align-items:flex-start;gap:6px;font-size:.65rem;line-height:1.5}.dividend-metric>span svg{width:14px;height:14px;margin-top:1px}.dividend-metric small{font-size:.62rem;line-height:1.5}.dividend-history-section .chart-panel{padding:18px 14px}.dividend-history-panel .dividend-panel-heading{flex-direction:column;gap:14px}.dividend-chart-controls{justify-content:flex-start;gap:8px}.dividend-segmented button{min-height:36px;padding-inline:10px}.dividend-chart-footer{align-items:flex-start;flex-direction:column;gap:8px}.dividend-ranking-columns,.dividend-ranking-list li{grid-template-columns:88px 1fr 72px;gap:10px}.dividend-ranking-ticker{gap:9px}.dividend-donut{width:140px;height:140px}.dividend-donut>div{width:106px;height:106px}.dividend-donut strong{font-size:1.05rem}.dividend-donut-legend{min-width:115px;gap:10px}.dividend-expected-overview{gap:18px}}@media(max-width:400px){.dividend-expected-overview{flex-direction:column}.dividend-donut-legend{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}}
