._container_ppuqt_1{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}._form_ppuqt_19{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;gap:16px;width:100%;max-width:380px;padding:40px 32px;display:flex}._title_ppuqt_43{color:var(--text-primary);text-align:center;letter-spacing:-.02em;margin-bottom:8px;font-size:24px;font-weight:600}._input_ppuqt_61{background:var(--bg-tertiary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:8px;outline:none;padding:10px 14px;font-size:14px;transition:border-color .15s}._input_ppuqt_61:focus{border-color:var(--accent)}._input_ppuqt_61::placeholder{color:var(--text-muted)}._passwordWrapper_ppuqt_101{width:100%;position:relative}._passwordWrapper_ppuqt_101 ._input_ppuqt_61{padding-right:40px}._eyeToggle_ppuqt_119{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:color .15s;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}._eyeToggle_ppuqt_119:hover{color:var(--text-primary)}._error_ppuqt_159{color:var(--red);text-align:center;font-size:13px}._button_ppuqt_171{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 16px;font-size:14px;font-weight:500;transition:background .15s}._button_ppuqt_171:hover:not(:disabled){background:var(--accent-hover)}._button_ppuqt_171:disabled{opacity:.6;cursor:not-allowed}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a25;--bg-hover:#22222f;--border-color:#2a2a3a;--text-primary:#f0f0f5;--text-secondary:#9898b0;--text-muted:#7a7a90;--accent:#6366f1;--accent-hover:#818cf8;--green:#22c55e;--green-bg:#22c55e1a;--red:#ef4444;--red-bg:#ef44441a;--yellow:#eab308;--positive:var(--green);--positive-bg:var(--green-bg);--negative:var(--red);--negative-bg:var(--red-bg);--accent-color:var(--accent);--border:var(--border-color);--card-bg:var(--bg-secondary);--border-primary:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body{background:var(--bg-primary);color:var(--text-primary);font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}.app{min-height:100vh;display:flex}.main-content{flex:1;padding:24px 32px;overflow-x:auto}.sidebar-hamburger{top:max(16px,env(safe-area-inset-top,16px));left:max(16px,env(safe-area-inset-left,16px));z-index:50;border:1px solid var(--border-color);background:var(--bg-secondary);width:44px;height:44px;color:var(--text-primary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:background .15s;display:flex;position:fixed}.sidebar-hamburger:active{background:var(--bg-hover)}.sidebar-backdrop{z-index:250;background:#00000080;animation:.2s sidebarFadeIn;position:fixed;inset:0}@keyframes sidebarFadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:1024px){.main-content{-webkit-overflow-scrolling:touch;padding:72px 16px 16px}.back-btn{min-height:44px}}@media (max-width:768px){.main-content{padding:68px 12px 12px}.stock-detail{padding:16px}.stock-detail-header{gap:12px;margin-bottom:16px}.stock-detail-grid{grid-template-columns:1fr}.stock-detail-actions{flex-wrap:wrap;gap:8px}.stock-detail-actions button{min-height:44px}}.header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.header h1{letter-spacing:-.02em;font-size:28px;font-weight:600}.header-actions{align-items:center;gap:12px;display:flex}.view-toggle{background:var(--bg-secondary);border-radius:8px;padding:4px;display:flex}.view-toggle button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .15s}.view-toggle button:hover{color:var(--text-primary)}.view-toggle button.active{background:var(--accent);color:#fff}.refresh-btn,.add-btn{cursor:pointer;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .15s}.refresh-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.refresh-btn:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--text-muted)}.add-btn{background:var(--accent);color:#fff;border:none}.add-btn:hover{background:var(--accent-hover)}.stock-table-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;max-width:100%;overflow-x:auto}.stock-table{border-collapse:collapse;width:100%;min-width:1200px;font-size:14px}.stock-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:14px 16px;font-size:12px;font-weight:600}.stock-table th:hover{color:var(--text-secondary)}.stock-table th.sorted{color:var(--accent)}.sort-indicator{margin-left:4px}.stock-table td{border-bottom:1px solid var(--border-color);white-space:nowrap;padding:16px}.stock-table tr:last-child td{border-bottom:none}.stock-table tr:hover td{background:var(--bg-hover)}.stock-table tr.closed-position td{opacity:.5}.stock-table tr.closed-position:hover td{opacity:.8}.ticker-cell{flex-direction:column;display:flex}.ticker-cell.clickable{cursor:pointer}.ticker-cell.clickable:hover .ticker-symbol{color:var(--accent)}.ticker-symbol{color:var(--text-primary);font-weight:600;transition:color .15s}.ticker-name{color:var(--text-muted);text-overflow:ellipsis;max-width:150px;font-size:12px;overflow:hidden}.sector-badge{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:12px;padding:4px 10px;font-size:12px;display:inline-block}.delete-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px;transition:all .15s}.delete-btn:hover{background:var(--red-bg);color:var(--red)}.empty-state{text-align:center;color:var(--text-muted);padding:60px 20px}.empty-state h3{color:var(--text-secondary);margin-bottom:8px;font-size:18px}.empty-state p{font-size:14px}.modal-overlay{z-index:200;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;width:100%;max-width:420px;padding:24px}.modal.record-trade-modal{max-width:640px;max-height:90vh;overflow-y:auto}@media (max-width:768px){.modal{border-radius:12px;max-width:calc(100% - 32px);padding:20px 16px}.modal.record-trade-modal{max-width:calc(100% - 32px);max-height:85vh}.form-grid-2col{grid-template-columns:1fr}}.form-grid-2col{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}.modal h2{margin-bottom:20px;font-size:20px;font-weight:600}.current-position-info{background:var(--bg-tertiary);border-radius:8px;margin-bottom:16px;padding:12px 14px}.current-position-info p{color:var(--text-secondary);font-size:13px}.lots-summary{border-top:1px solid var(--border-color);margin-top:10px;padding-top:10px}.lot-item-small{color:var(--text-muted);margin-top:4px;font-size:12px}.lots-modal{flex-direction:column;width:90%;max-width:800px;max-height:80vh;display:flex;overflow:hidden}.lots-modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.lots-modal-header h2{margin-bottom:0}.modal-close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.modal-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.lots-summary-header{background:var(--bg-tertiary);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px;padding:16px;display:grid}.lots-summary-item{flex-direction:column;gap:4px;display:flex}.lots-summary-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:600}.lots-summary-value{color:var(--text-primary);font-size:16px;font-weight:600}.lots-empty{text-align:center;color:var(--text-muted);padding:40px 20px}.lots-table-container{flex:1;overflow-x:auto}.lots-table{border-collapse:collapse;width:100%;font-size:13px}.lots-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);white-space:nowrap;padding:10px 12px;font-size:11px;font-weight:600}.lots-table td{border-bottom:1px solid var(--border-color);white-space:nowrap;padding:12px}.lots-table tr:last-child td{border-bottom:none}.lots-table tr:hover td{background:var(--bg-hover)}.lot-editing td{background:var(--bg-tertiary)}.lot-editing input{background:var(--bg-secondary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:4px;padding:6px 8px;font-size:13px}.lot-editing input:focus{border-color:var(--accent);outline:none}.lot-actions{gap:4px;display:flex}.lot-action-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;display:flex}.lot-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.lot-action-btn.delete:hover{background:var(--red-bg);color:var(--red)}.lot-edit-actions{gap:8px;display:flex}.lot-save-btn,.lot-cancel-btn{cursor:pointer;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:500}.lot-save-btn{background:var(--accent);color:#fff;border:none}.lot-save-btn:hover{background:var(--accent-hover)}.lot-cancel-btn{border:1px solid var(--border-color);color:var(--text-secondary);background:0 0}.lot-cancel-btn:hover{background:var(--bg-hover)}.lot-type-select,.lot-method-select,.cost-basis-select{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:4px;outline:none;width:100%;padding:6px 8px;font-size:12px}.lot-type-select:focus,.lot-method-select:focus,.cost-basis-select:focus{border-color:var(--accent)}.lot-method-select{margin-top:6px}.cost-edit-group{align-items:center;gap:4px;display:flex}.cost-edit-group input{flex:1;min-width:0}.recalc-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;line-height:1;transition:all .15s}.recalc-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.lot-editing td{vertical-align:top;padding:8px 6px}.lot-editing input,.lot-editing select{background:var(--bg-primary);border:1px solid var(--border-color);max-width:100%;color:var(--text-primary);border-radius:4px;padding:5px 8px;font-size:13px}.lot-editing input:focus,.lot-editing select:focus{border-color:var(--accent);outline:none}.lot-editing input::placeholder{color:var(--text-muted)}.redemption-preview{background:var(--bg-tertiary);border-radius:8px;margin-top:16px;padding:12px 14px}.lots-used-preview{border-bottom:1px solid var(--border-color);margin-bottom:12px;padding-bottom:12px}.lots-used-preview .preview-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.lot-preview-item{color:var(--text-secondary);padding:4px 0;font-size:12px}.method-badge{background:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.03em;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.current-position-info .method-badge{margin-left:4px}.preview-row{color:var(--text-secondary);justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.preview-row.total{border-top:1px solid var(--border-color);color:var(--text-primary);margin-top:8px;padding-top:12px;font-weight:600}.sell-btn{background:var(--red)!important}.sell-btn:hover:not(:disabled){background:#dc2626!important}.redemption-row{background:#ef44440d}.realized-tag{background:var(--bg-tertiary);color:var(--text-muted);text-transform:uppercase;border-radius:4px;margin-left:8px;padding:2px 6px;font-size:10px;display:inline-block}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-group input{background:var(--bg-tertiary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:8px;padding:12px 14px;font-size:14px;transition:border-color .15s}.form-group input:focus{border-color:var(--accent);outline:none}.form-group input::placeholder{color:var(--text-muted)}.input-with-prefix{align-items:center;display:flex;position:relative}.input-with-prefix .input-prefix{color:var(--text-muted);pointer-events:none;z-index:1;font-size:14px;position:absolute;left:12px}.input-with-prefix input{padding-left:26px!important}.modal-actions{gap:12px;margin-top:24px;display:flex}.modal-actions button{cursor:pointer;border-radius:8px;flex:1;padding:12px;font-size:14px;font-weight:500;transition:all .15s}.cancel-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.cancel-btn:hover{background:var(--bg-hover)}.submit-btn{background:var(--accent);color:#fff;border:none}.submit-btn:hover:not(:disabled){background:var(--accent-hover)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.dashboard{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.dashboard-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.dashboard-card h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:12px;font-size:13px;font-weight:600}.dashboard-value{letter-spacing:-.02em;font-size:32px;font-weight:600}.dashboard-subvalue{color:var(--text-secondary);margin-top:4px;font-size:14px}.dashboard-card.full-width{grid-column:1/-1}.chart-container{height:300px;margin-top:16px}.sector-list{list-style:none}.sector-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.sector-item:last-child{border-bottom:none}.sector-name{font-weight:500}.sector-value{color:var(--text-secondary)}.top-holdings{list-style:none}.holding-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.holding-item:last-child{border-bottom:none}.holding-info{flex-direction:column;display:flex}.holding-ticker{font-weight:600}.holding-shares{color:var(--text-muted);font-size:12px}.holding-value{text-align:right}.holding-total{font-weight:500}.holding-gain{font-size:12px}.rename-input{background:var(--bg-tertiary);border:1px solid var(--accent);color:var(--text-primary);border-radius:4px;width:120px;padding:4px 8px;font-size:14px}.rename-input:focus{outline:none}.performance-chart-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:20px;padding:20px}.chart-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.chart-title-section h3{color:var(--text-primary);margin-bottom:4px;font-size:16px;font-weight:600}.chart-period-label{color:var(--text-muted);background:var(--bg-tertiary);border-radius:6px;padding:4px 10px;font-size:13px}.period-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .15s}.period-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.period-btn.active{background:var(--accent);color:#fff}.chart-controls{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.chart-controls-row{align-items:center;gap:12px;display:flex}.chart-mode-toggle{gap:2px;display:flex}.return-toggles{align-items:center;gap:8px;display:flex}.return-type-toggle{background:var(--bg-tertiary);border-radius:6px;gap:2px;padding:3px;display:flex}.return-type-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;transition:all .15s}.return-type-btn:hover{color:var(--text-secondary)}.return-type-btn.active{background:var(--accent);color:#fff}.total-return-toggle{background:var(--bg-tertiary);color:var(--text-muted);cursor:pointer;border:none;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;transition:all .15s}.total-return-toggle:hover{color:var(--text-secondary)}.total-return-toggle.active{background:var(--positive-bg);color:var(--positive)}.chart-as-of{color:var(--text-muted);margin-left:8px;font-size:12px}.chart-annualized{margin-left:8px;font-size:14px;font-weight:500}.chart-annualized.positive{color:var(--positive)}.chart-annualized.negative{color:var(--negative)}.chart-area{position:relative}.chart-drag-container{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;position:relative}.chart-drag-tooltip{pointer-events:none;z-index:10;white-space:nowrap;background:#1a1a25;border:1px solid #3a3a4a;border-radius:8px;padding:6px 10px;font-size:12px;position:absolute;transform:translate(-50%);box-shadow:0 4px 12px #0006}.chart-drag-tooltip-dates{color:var(--text-muted,#8888a0);margin-bottom:2px}.chart-drag-tooltip-return{font-weight:600}.chart-drag-tooltip-return.positive{color:#22c55e}.chart-drag-tooltip-return.negative{color:#ef4444}.chart-selection-stats{background:var(--bg-card,#1a1a25);border:1px solid var(--border-color,#2a2a3a);color:var(--text-primary,#f0f0f5);border-radius:8px;justify-content:center;align-items:center;gap:12px;margin-top:8px;padding:8px 16px;font-size:14px;display:flex}.chart-selection-range{color:var(--text-muted,#8888a0)}.chart-selection-return{font-weight:600}.chart-selection-return.positive{color:#22c55e}.chart-selection-return.negative{color:#ef4444}.chart-selection-clear{color:var(--text-muted,#8888a0);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:14px;line-height:1}.chart-selection-clear:hover{color:var(--text-primary,#f0f0f5);background:#ffffff14}.chart-value-labels{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.chart-current-value{color:var(--text-primary);font-size:28px;font-weight:600}.chart-range{color:var(--text-muted);gap:16px;font-size:13px;display:flex}.chart-loading,.chart-error,.chart-empty{height:300px;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.chart-error{color:var(--red)}.stock-table-wrapper{flex-direction:column;gap:12px;display:flex}.table-toolbar{justify-content:flex-end;gap:10px;display:flex}.column-settings-btn,.closed-positions-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:all .15s;display:flex}.column-settings-btn:hover,.closed-positions-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.closed-positions-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.closed-positions-btn.active:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.column-settings-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:16px}.column-settings-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.column-settings-header h4{color:var(--text-primary);font-size:14px;font-weight:600}.reset-columns-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:12px;transition:all .15s}.reset-columns-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.column-settings-hint{color:var(--text-muted);margin-bottom:12px;font-size:12px}.column-list{flex-wrap:wrap;gap:8px;display:flex}.column-item{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:grab;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;transition:all .15s;display:flex}.column-item:hover{border-color:var(--text-muted)}.column-item.locked{cursor:default;opacity:.7}.column-item.dragging{opacity:.5;border-color:var(--accent)}.drag-handle{color:var(--text-muted);align-items:center;display:flex}.column-toggle{cursor:pointer;align-items:center;gap:8px;display:flex}.column-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.column-toggle input[type=checkbox]:disabled{cursor:default}.column-name{color:var(--text-primary);font-size:13px}.locked-badge{color:var(--text-muted);background:var(--bg-hover);border-radius:4px;padding:2px 6px;font-size:10px}.options-menu-container{position:relative}.options-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}.options-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.options-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);z-index:100;border-radius:8px;min-width:160px;padding:4px;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000004d}.options-dropdown-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;transition:all .15s;display:flex}.options-dropdown-item:hover{background:var(--bg-hover)}.options-dropdown-item.delete{color:var(--red)}.options-dropdown-item.delete:hover{background:var(--red-bg)}.summary-page{padding-bottom:40px}.summary-header .summary-title{margin-bottom:0}.summary-title{letter-spacing:-.02em;align-items:center;gap:12px;margin-bottom:24px;font-size:28px;font-weight:600;display:flex}.live-badge{color:var(--green);letter-spacing:.08em;vertical-align:middle;background:#22c55e1f;border:1px solid #22c55e4d;border-radius:20px;align-items:center;gap:6px;padding:3px 10px;font-size:.48em;font-weight:700;display:inline-flex}.live-dot{background:var(--green);border-radius:50%;width:7px;height:7px;animation:1.5s ease-in-out infinite livePulse}@keyframes livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.summary-empty{background:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;border-radius:12px;padding:60px 20px}.summary-empty h3{color:var(--text-secondary);margin-bottom:8px;font-size:18px}.summary-empty p{color:var(--text-muted);font-size:14px}.summary-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.summary-stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.summary-stat-card h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:8px;font-size:12px;font-weight:600}.summary-stat-value{letter-spacing:-.02em;color:var(--text-primary);font-size:28px;font-weight:600}.summary-stat-sub{color:var(--text-secondary);margin-top:4px;font-size:13px}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;display:grid}.summary-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.summary-card.full-width{grid-column:1/-1}.summary-card h3{color:var(--text-primary);margin-bottom:16px;font-size:14px;font-weight:600}.portfolio-breakdown-chart{margin-bottom:16px}.portfolio-breakdown-list{flex-direction:column;gap:12px;display:flex}.portfolio-breakdown-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.portfolio-breakdown-item:last-child{border-bottom:none}.portfolio-breakdown-info{align-items:center;gap:10px;display:flex}.portfolio-color{border-radius:3px;width:12px;height:12px}.portfolio-name{color:var(--text-primary);font-weight:500}.portfolio-count{color:var(--text-muted);font-size:12px}.portfolio-breakdown-values{flex-direction:column;align-items:flex-end;display:flex}.portfolio-value{color:var(--text-primary);font-weight:500}.portfolio-gain{font-size:12px}.sector-chart{margin-bottom:16px}.sector-list-summary{flex-direction:column;gap:8px;display:flex}.sector-item-summary{align-items:center;gap:10px;display:flex}.sector-color{border-radius:2px;width:10px;height:10px}.sector-name{color:var(--text-primary);flex:1;font-size:13px}.sector-percent{color:var(--text-secondary);font-size:13px}.top-holdings-list{flex-direction:column;display:flex}.top-holding-item{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:10px 0;display:flex}.top-holding-item:last-child{border-bottom:none}.top-holding-rank{background:var(--bg-tertiary);width:24px;height:24px;color:var(--text-muted);border-radius:6px;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.top-holding-info{flex-direction:column;flex:1;display:flex}.top-holding-ticker{color:var(--text-primary);font-weight:600}.top-holding-shares{color:var(--text-muted);font-size:12px}.top-holding-values{flex-direction:column;align-items:flex-end;display:flex}.top-holding-value{color:var(--text-primary);font-weight:500}.top-holding-gain{font-size:12px}.performance-chart-summary{margin-top:8px}.summary-performance-chart{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:24px;padding:20px}.summary-performance-chart .chart-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.summary-performance-chart .chart-title-section h3{color:var(--text-primary);margin-bottom:4px;font-size:16px;font-weight:600}.summary-performance-chart .chart-stats{align-items:center;gap:12px;display:flex}.summary-performance-chart .chart-change{font-size:20px;font-weight:600}.summary-performance-chart .chart-period-label{color:var(--text-muted);background:var(--bg-tertiary);border-radius:6px;padding:4px 10px;font-size:13px}.summary-performance-chart .chart-area{position:relative}.summary-performance-chart .chart-value-labels{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.summary-performance-chart .chart-current-value{color:var(--text-primary);font-size:28px;font-weight:600}.summary-performance-chart .chart-range{color:var(--text-muted);gap:16px;font-size:13px;display:flex}.summary-performance-chart .chart-loading,.summary-performance-chart .chart-empty{height:300px;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.import-export-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .15s}.import-export-btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.import-export-modal{width:560px;max-height:85vh;overflow-y:auto}.import-export-modal .tabs{border-bottom:1px solid var(--border-color);gap:8px;margin-bottom:24px;padding-bottom:12px;display:flex}.import-export-modal .tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:8px 20px;font-size:14px;font-weight:500;transition:all .15s}.import-export-modal .tab:hover{color:var(--text-primary);background:var(--bg-hover)}.import-export-modal .tab.active{color:var(--accent);border-color:var(--accent);background:#6366f11a}.import-export-modal .description{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.6}.import-export-modal .description strong{color:var(--text-primary)}.backup-content{flex-direction:column;gap:24px;display:flex}.backup-section{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:20px}.backup-section h4{color:var(--text-primary);margin:0 0 8px;font-size:16px;font-weight:600}.backup-section .description,.storage-info{margin-bottom:16px}.storage-bar{background:var(--bg-tertiary);border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.storage-used{background:var(--accent);border-radius:4px;height:100%;transition:width .3s}.storage-text{color:var(--text-muted);font-size:12px}.select-file-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:10px 16px;font-size:14px;transition:all .15s}.select-file-btn:hover{background:var(--bg-tertiary);border-color:var(--accent)}.restore-preview{background:var(--bg-secondary);border-radius:6px;margin-top:16px;padding:12px}.restore-preview h5{color:var(--text-secondary);margin:0 0 8px;font-size:13px;font-weight:600}.restore-preview ul{margin:0;padding:0;list-style:none}.restore-preview li{color:var(--text-primary);padding:4px 0;font-size:13px}.restore-preview li:before{content:"✓ ";color:var(--positive)}.submit-btn.danger{background:var(--negative)}.submit-btn.danger:hover{background:#dc2626}.export-preview,.import-preview{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:16px}.export-preview h4,.import-preview h4{color:var(--text-secondary);margin-bottom:12px;font-size:13px;font-weight:600}.preview-table-wrapper{max-height:200px;overflow-y:auto}.preview-table{border-collapse:collapse;width:100%;font-size:13px}.preview-table th,.preview-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:8px 12px}.preview-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-primary);font-size:11px;font-weight:500;position:sticky;top:0}.preview-table td{color:var(--text-primary)}.preview-note{color:var(--text-muted);text-align:center;margin-top:8px;font-size:12px}.csv-format-info{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:16px}.csv-format-info h4{color:var(--text-secondary);margin-bottom:8px;font-size:13px;font-weight:600}.csv-format-info code{background:var(--bg-tertiary);color:var(--accent);border-radius:6px;margin-bottom:12px;padding:10px 14px;font-family:SF Mono,Fira Code,monospace;font-size:13px;display:block}.csv-format-info .format-note{color:var(--text-muted);font-size:12px;line-height:1.8}.csv-format-info .format-note strong{color:var(--text-secondary)}.drop-zone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;border-radius:12px;margin-bottom:20px;padding:40px 20px;transition:all .2s}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--accent);background:#6366f10d}.drop-zone .drop-icon{color:var(--text-muted);margin-bottom:12px;display:block}.drop-zone:hover .drop-icon,.drop-zone.drag-over .drop-icon{color:var(--accent)}.drop-zone p{color:var(--text-secondary);font-size:14px}.import-errors{background:var(--red-bg);border:1px solid var(--red);border-radius:8px;margin-bottom:20px;padding:16px}.import-errors h4{color:var(--red);margin-bottom:8px;font-size:13px;font-weight:600}.import-errors ul{margin:0;padding:0;list-style:none}.import-errors li{color:var(--red);padding:4px 0;font-size:12px}.import-preview-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.import-preview-header h4{margin-bottom:0}.clear-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 12px;font-size:12px;transition:all .15s}.clear-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.inflow-type,.buy-type{color:var(--green)}.outflow-type,.sell-type{color:var(--red)}.transaction-types-info{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.transaction-types-info strong{color:var(--text-secondary);font-size:12px}.type-tag{border-radius:4px;padding:3px 8px;font-family:SF Mono,Fira Code,monospace;font-size:11px;font-weight:500}.type-tag.inflow{background:var(--green-bg);color:var(--green)}.type-tag.outflow{background:var(--red-bg);color:var(--red)}.format-columns{grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;display:grid}.format-column .format-note{margin-bottom:0}.lot-type-badge{border-radius:4px;padding:3px 8px;font-size:11px;font-weight:500;display:inline-block}.lot-type-badge.inflow{background:var(--green-bg);color:var(--green)}.lot-type-badge.outflow{background:var(--red-bg);color:var(--red)}.lot-method-badge{background:var(--bg-tertiary);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;border-radius:3px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.lots-table .outflow-row{background:#ef444408}.lot-exchange-ticker{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.realized-label{color:var(--text-secondary)}.realized-tag{background:var(--bg-tertiary);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;border-radius:3px;margin-left:6px;padding:2px 6px;font-size:10px;display:inline-block}.lots-notes-section{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px}.lots-meta-row{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:8px 16px;display:flex}.cost-basis-method-selector{align-items:center;gap:6px;display:flex}.cbm-label{color:var(--text-muted);margin-right:2px;font-size:12px}.cbm-btn{border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:3px 10px;font-size:11px;transition:all .15s}.cbm-btn:hover{border-color:var(--accent-color);color:var(--text-primary)}.cbm-btn.active{background:var(--accent-color);border-color:var(--accent-color);color:#fff;font-weight:600}.holding-period-summary{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hp-badge{border-radius:4px;padding:2px 8px;font-size:12px;font-weight:600}.hp-lt{color:#22c55e}.hp-st{color:#eab308}.hp-upcoming{color:var(--text-muted);font-size:11px;font-style:italic}.hp-term-badge{letter-spacing:.03em;text-align:center;border-radius:4px;min-width:32px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.hp-lt-badge{color:#22c55e;background:#22c55e26;border:1px solid #22c55e4d}.hp-st-badge{color:#eab308;background:#eab30826;border:1px solid #eab3084d}.hp-realized{color:var(--text-muted)}.hp-days-left{opacity:.8;font-size:10px;font-weight:400}.lots-notes-section h4{color:var(--text-secondary);margin-bottom:12px;font-size:13px;font-weight:600}.lot-note{border-bottom:1px solid var(--border-color);gap:12px;padding:8px 0;display:flex}.lot-note:last-child{border-bottom:none}.lot-note-date{color:var(--text-muted);min-width:90px;font-size:12px}.lot-note-text{color:var(--text-primary);font-size:13px}.lots-modal{max-width:900px}.watchlist{padding:24px}.watchlist-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.watchlist-header h2{color:var(--text-primary);font-size:24px;font-weight:600}.watchlist-actions{gap:12px;display:flex}.watchlist-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:80px 20px;display:flex}.watchlist-empty p{color:var(--text-secondary);margin-bottom:8px;font-size:16px}.watchlist-empty-sub{color:var(--text-muted);font-size:14px}.watchlist-table-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.watchlist-table{border-collapse:collapse;width:100%}.watchlist-table th,.watchlist-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:14px 16px}.watchlist-table th{background:var(--bg-tertiary);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.watchlist-table tbody tr:hover{background:var(--bg-hover)}.watchlist-table tbody tr:last-child td{border-bottom:none}.watchlist-ticker-cell{flex-direction:column;display:flex}.watchlist-ticker{color:var(--text-primary);font-weight:600}.watchlist-name{color:var(--text-muted);font-size:12px}.rsi-value{font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.rsi-overbought{color:#ef4444}.rsi-oversold{color:#22c55e}.rsi-neutral{color:var(--text-secondary)}.rsi-na{color:var(--text-muted)}.ticker-link{cursor:pointer;transition:color .15s}.ticker-link:hover{color:var(--accent)}.type-badge{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;display:inline-block}.remove-watchlist-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px;transition:all .15s}.remove-watchlist-btn:hover{background:var(--red-bg);color:var(--red)}.watchlist-search-section{margin-bottom:24px}.search-input-container{gap:8px;margin-bottom:12px;display:flex}.search-input{border:1px solid var(--border);background:var(--card-bg);color:var(--text-primary);border-radius:8px;flex:1;padding:10px 14px;font-size:14px}.search-input:focus{border-color:var(--accent);outline:none}.search-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-weight:500;transition:background .15s}.search-btn:hover:not(:disabled){background:var(--accent-hover)}.search-btn:disabled{opacity:.6;cursor:not-allowed}.clear-search-btn{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:10px 16px;transition:all .15s}.clear-search-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.search-error{color:var(--red);background:var(--red-bg);border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:13px}.search-suggestions{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;margin-bottom:12px;overflow:hidden}.suggestions-header{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;background:var(--bg-secondary);border-bottom:1px solid var(--border);padding:10px 14px;font-size:12px}.suggestion-item{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 14px;transition:background .15s;display:flex}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:var(--bg-secondary)}.suggestion-symbol{color:var(--accent);min-width:70px;font-weight:600}.suggestion-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;overflow:hidden}.suggestion-type{color:var(--text-secondary);background:var(--bg-tertiary);border-radius:4px;padding:3px 8px;font-size:11px}.search-result-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:16px}.search-result-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.search-result-ticker-info{align-items:center;gap:10px;display:flex}.search-result-ticker{color:var(--accent);font-size:18px;font-weight:600}.search-result-name{color:var(--text-secondary);font-size:14px}.add-to-watchlist-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:background .15s}.add-to-watchlist-btn:hover{background:var(--accent-hover)}.in-watchlist-badge{background:var(--green-bg);color:var(--green);border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500}.search-result-details{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.search-result-stat{flex-direction:column;gap:4px;display:flex}.search-result-stat .stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.search-result-stat .stat-value{color:var(--text-primary);font-size:15px;font-weight:500}.search-result-stat .stat-value.positive{color:var(--green)}.search-result-stat .stat-value.negative{color:var(--red)}.form-error{color:var(--red);background:var(--red-bg);border-radius:6px;margin-bottom:12px;padding:8px 12px;font-size:13px}.analytics{padding:24px}.analytics-title-row{align-items:center;gap:12px;margin-bottom:24px;display:flex}.analytics-title-row h2{color:var(--text-primary);margin:0;font-size:24px;font-weight:600}.analytics h2{color:var(--text-primary);margin-bottom:24px;font-size:24px;font-weight:600}.analytics-settings-btn{border:1px solid var(--border-color);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.analytics-settings-btn:hover{color:var(--accent);border-color:var(--accent);background:#6366f114}.analytics-order-list{flex-direction:column;gap:6px;display:flex}.analytics-order-item{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.analytics-order-label{color:var(--text-primary);font-size:13px;font-weight:500}.analytics-order-arrows{gap:4px;display:flex}.analytics-order-arrow{border:1px solid var(--border-color);width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.analytics-order-arrow:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:#6366f114}.analytics-order-arrow:disabled{opacity:.25;cursor:default}.analytics-empty{text-align:center;color:var(--text-secondary);justify-content:center;align-items:center;padding:80px 20px;display:flex}.analytics-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.analytics-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.analytics-card.full-width,.analytics-grid>.macro-section{grid-column:1/-1}.analytics-card h3{color:var(--text-primary);margin-bottom:16px;font-size:16px;font-weight:600}.performers-list{flex-direction:column;gap:12px;display:flex}.performer-item{background:var(--bg-tertiary);border-radius:8px;align-items:center;gap:12px;padding:10px;display:flex}.performer-rank{border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:600;display:flex}.performer-rank.best{background:var(--green-bg);color:var(--green)}.performer-rank.worst{background:var(--red-bg);color:var(--red)}.performer-info{flex-direction:column;flex:1;display:flex}.performer-ticker{color:var(--text-primary);font-size:14px;font-weight:600}.performer-name{color:var(--text-muted);font-size:12px}.performer-stats{text-align:right}.performer-value{color:var(--text-primary);font-size:14px;font-weight:500;display:block}.performer-gain{font-size:12px;font-weight:500}.performer-gain.positive{color:var(--green)}.performer-gain.negative{color:var(--red)}.correlation-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.correlation-header h3{margin-bottom:0}.period-selector.small{gap:4px;display:flex}.period-selector.small .period-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:4px 10px;font-size:12px;transition:all .15s}.period-selector.small .period-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.period-selector.small .period-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.correlation-description{color:var(--text-muted);margin-bottom:20px;font-size:13px;line-height:1.5}.correlation-loading,.correlation-empty{color:var(--text-muted);justify-content:center;align-items:center;padding:40px;display:flex}.correlation-chart{margin-bottom:20px}.correlation-tooltip{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:12px;box-shadow:0 4px 12px #0000004d}.correlation-tooltip .tooltip-ticker{color:var(--text-primary);font-size:14px;font-weight:600}.correlation-tooltip .tooltip-name{color:var(--text-muted);margin-bottom:8px;font-size:12px}.correlation-tooltip .tooltip-corr{color:var(--text-secondary);font-size:13px}.correlation-tooltip .tooltip-label{margin-top:4px;font-size:12px}.correlation-legend{background:var(--bg-tertiary);border-radius:8px;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:12px;display:flex}.legend-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:flex}.legend-color{border-radius:3px;width:12px;height:12px}.correlation-table{overflow-x:auto}.correlation-table table{border-collapse:collapse;width:100%}.correlation-table th,.correlation-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:10px 12px}.correlation-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:600}.correlation-table td{color:var(--text-primary);font-size:13px}.correlation-table tbody tr:hover{background:var(--bg-hover)}@media (max-width:900px){.analytics-grid{grid-template-columns:1fr}}.trailing-returns-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-top:32px;padding:20px}.trailing-returns-section h3{color:var(--text-primary);margin-bottom:16px;font-size:16px;font-weight:600}.trailing-returns-loading{text-align:center;color:var(--text-muted);padding:40px}.trailing-returns-table-container{overflow-x:auto}.trailing-returns-table{border-collapse:collapse;width:100%;font-size:13px}.trailing-returns-table th,.trailing-returns-table td{text-align:right;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:10px 12px}.trailing-returns-table th:first-child,.trailing-returns-table td:first-child{text-align:left;background:var(--bg-secondary);z-index:1;position:sticky;left:0}.trailing-returns-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:600;transition:color .15s}.trailing-returns-table th:hover{color:var(--text-primary)}.trailing-returns-table th.sorted{color:var(--accent)}.trailing-returns-table tbody tr:hover,.trailing-returns-table tbody tr:hover td:first-child{background:var(--bg-hover)}.trailing-returns-table tbody tr:last-child td{border-bottom:none}.trailing-returns-table .ticker-cell{min-width:120px}.trailing-returns-table .ticker-symbol{color:var(--text-primary);font-weight:600;display:block}.trailing-returns-table .stock-name{color:var(--text-muted);text-overflow:ellipsis;max-width:150px;font-size:11px;display:block;overflow:hidden}.trailing-returns-table td.positive{color:var(--green);font-weight:500}.trailing-returns-table td.negative{color:var(--red);font-weight:500}.trailing-returns-footnote{color:var(--text-muted);margin-top:12px;font-size:11px;font-style:italic}.stock-detail{max-width:1400px;margin:0 auto;padding:24px}.stock-detail-sticky-bar{z-index:40;opacity:0;pointer-events:none;background:var(--bg-primary);border-bottom:1px solid #0000;align-items:center;gap:16px;max-height:0;padding:0 4px;transition:max-height .22s,opacity .18s,padding .22s,transform .22s,border-color .22s,box-shadow .22s;display:flex;position:sticky;top:0;overflow:hidden;transform:translateY(-6px)}.stock-detail-sticky-bar.visible{opacity:1;pointer-events:auto;border-bottom-color:var(--border-color);max-height:72px;padding:10px 4px;transform:translateY(0);box-shadow:0 6px 16px #00000038}.stock-detail-sticky-bar .back-btn{flex-shrink:0}.sticky-bar-id{align-items:baseline;gap:8px;min-width:0;display:flex}.sticky-bar-ticker{color:var(--text-primary);font-size:16px;font-weight:700}.sticky-bar-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:320px;font-size:13px;overflow:hidden}.sticky-bar-price{flex-shrink:0;align-items:baseline;gap:8px;margin-left:auto;display:flex}.sticky-bar-px{font-size:16px;font-weight:700}.sticky-bar-chg{font-size:13px;font-weight:500}.sticky-bar-actions{flex-shrink:0;gap:8px;display:flex}@media (max-width:768px){.stock-detail-sticky-bar.visible{gap:10px;padding-left:56px}.sticky-bar-name,.sticky-bar-actions{display:none}}.stock-detail-header{flex-wrap:wrap;align-items:center;gap:24px;margin-bottom:24px;display:flex}.back-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;transition:all .15s;display:flex}.back-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.stock-detail-title{flex:1}.stock-detail-ticker{align-items:center;gap:12px;display:flex}.stock-detail-ticker h1{margin:0;font-size:28px;font-weight:700}.stock-detail-type{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500}.stock-detail-name{color:var(--text-muted);margin:4px 0 0;font-size:14px}.stock-detail-price-section{text-align:right}.stock-detail-price{font-size:28px;font-weight:700}.stock-detail-change{font-size:14px;font-weight:500}.stock-detail-actions{gap:8px;display:flex}.stock-detail-actions .action-btn{cursor:pointer;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s}.stock-detail-actions .action-btn.buy{background:var(--green-bg);border:1px solid var(--green);color:var(--green)}.stock-detail-actions .action-btn.buy:hover{background:var(--green);color:#fff}.stock-detail-actions .action-btn.sell{background:var(--red-bg);border:1px solid var(--red);color:var(--red)}.stock-detail-actions .action-btn.sell:hover{background:var(--red);color:#fff}.stock-detail-actions .action-btn.view-lots{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary)}.stock-detail-actions .action-btn.view-lots:hover{background:var(--bg-tertiary);color:var(--text-primary)}.stock-detail-actions .action-btn.watchlist{background:var(--bg-secondary);border:1px solid var(--accent);color:var(--accent)}.stock-detail-actions .action-btn.watchlist:hover{background:var(--accent);color:#fff}.watchlist-badge{color:var(--text-muted);background:var(--bg-tertiary);border-radius:6px;padding:8px 12px;font-size:12px}.stock-detail-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;display:grid}.stock-detail-card{background:var(--bg-secondary);border-radius:12px;padding:20px}.stock-detail-card h3{color:var(--text-primary);margin:0 0 16px;font-size:16px;font-weight:600}.stock-detail-card.chart-card,.stock-detail-card.analyst-card{grid-column:1/-1}.card-data-asof{border-top:1px solid var(--border-color);color:var(--text-muted);text-align:right;margin-top:14px;padding-top:10px;font-size:11px}.stock-detail-card.lots-card{grid-column:1/-1}.analyst-content{grid-template-columns:1fr 1fr;gap:24px;display:grid}.analyst-ratings{flex-direction:column;gap:12px;display:flex}.ratings-bar{background:var(--bg-tertiary);border-radius:6px;height:24px;display:flex;overflow:hidden}.rating-segment{transition:flex .3s}.rating-segment.strong-buy{background:#22c55e}.rating-segment.buy{background:#86efac}.rating-segment.hold{background:#fbbf24}.rating-segment.sell{background:#f87171}.rating-segment.strong-sell{background:#ef4444}.ratings-legend{color:var(--text-secondary);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.legend-item{align-items:center;gap:6px;display:flex}.legend-item .dot{border-radius:50%;width:10px;height:10px}.legend-item .dot.strong-buy{background:#22c55e}.legend-item .dot.buy{background:#86efac}.legend-item .dot.hold{background:#fbbf24}.legend-item .dot.sell{background:#f87171}.legend-item .dot.strong-sell{background:#ef4444}.price-target{flex-direction:column;gap:12px;display:flex}.target-main{flex-direction:column;gap:4px;display:flex}.target-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.target-value{color:var(--text-primary);font-size:28px;font-weight:700}.target-upside{font-size:14px;font-weight:600}.target-upside.positive{color:var(--positive)}.target-upside.negative{color:var(--negative)}.target-range{align-items:center;gap:12px;display:flex}.range-low,.range-high{color:var(--text-muted);white-space:nowrap;font-size:12px}.range-bar{background:var(--bg-tertiary);border-radius:3px;flex:1;height:6px;position:relative}.range-current{background:var(--accent);border:2px solid var(--bg-secondary);border-radius:50%;width:14px;height:14px;position:absolute;top:-4px;transform:translate(-50%)}@media (max-width:768px){.analyst-content{grid-template-columns:1fr}}.chart-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.chart-title-section{align-items:center;gap:16px;display:flex}.chart-stats{align-items:center;gap:8px;display:flex}.chart-change{font-size:14px;font-weight:600}.chart-period-label{color:var(--text-muted);font-size:12px}.period-selector{background:var(--bg-tertiary);border-radius:8px;gap:4px;padding:4px;display:flex}.period-selector button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s}.period-selector button:hover{background:var(--bg-hover);color:var(--text-primary)}.period-selector button.active{background:var(--accent);color:#fff}.holdings-list{flex-direction:column;gap:12px;display:flex}.holding-row{background:var(--bg-tertiary);border-radius:8px;justify-content:space-between;align-items:center;padding:12px;display:flex}.holding-portfolio{color:var(--text-primary);font-weight:500}.holding-details{text-align:right}.holding-shares{color:var(--text-primary);font-weight:600}.holding-value{color:var(--text-secondary);font-size:13px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-item{background:var(--bg-tertiary);border-radius:8px;padding:12px}.stat-label{color:var(--text-muted);align-items:center;gap:4px;margin-bottom:4px;font-size:12px;display:flex}.stat-value{color:var(--text-primary);flex-wrap:wrap;align-items:baseline;font-size:16px;font-weight:600;display:flex}.lots-table-container{overflow-x:auto}.lots-mini-table{border-collapse:collapse;width:100%;font-size:13px}.lots-mini-table th{text-align:left;border-bottom:1px solid var(--border-color);color:var(--text-muted);padding:8px;font-weight:500}.lots-mini-table td{border-bottom:1px solid var(--border-color);padding:8px}.lots-mini-table .portfolio-tag{color:var(--text-muted);background:var(--bg-tertiary);border-radius:4px;margin-left:8px;padding:2px 6px;font-size:11px}.tax-lot-import-modal{background:var(--bg-secondary);border:1px solid var(--border-color);z-index:1100;border-radius:16px;flex-direction:column;width:600px;max-width:95vw;max-height:85vh;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 25px 50px -12px #00000080}.tax-lot-import-content{flex-direction:column;height:100%;display:flex;overflow:auto}.tax-lot-import-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.tax-lot-import-header h3{margin:0;font-size:18px;font-weight:600}.import-instructions{color:var(--text-secondary);background:var(--bg-tertiary);margin:0;padding:16px 24px;font-size:13px;line-height:1.5}.import-file-upload{padding:16px 24px 0}.file-upload-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;transition:all .15s;display:inline-flex}.file-upload-btn:hover{background:var(--bg-hover);border-color:var(--accent)}.import-textarea{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);resize:vertical;border-radius:8px;min-height:120px;margin:16px 24px;padding:12px;font-family:SF Mono,Monaco,monospace;font-size:12px}.import-textarea:focus{border-color:var(--accent);outline:none}.import-error{background:var(--red-bg);border:1px solid var(--red);color:var(--red);border-radius:8px;margin:0 24px 16px;padding:12px;font-size:13px}.import-preview{flex:1;padding:0 24px 16px;overflow-y:auto}.import-preview h4{color:var(--text-primary);margin-bottom:12px;font-size:14px;font-weight:600}.import-preview-table{border-collapse:collapse;width:100%;font-size:12px}.import-preview-table th{text-align:left;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-muted);text-transform:uppercase;padding:8px 10px;font-size:10px;font-weight:600}.import-preview-table td{border-bottom:1px solid var(--border-color);padding:8px 10px}.import-preview-table tfoot td{background:var(--bg-tertiary);font-weight:600}.import-preview-table .more-rows{text-align:center;color:var(--text-muted);font-style:italic}.import-actions{border-top:1px solid var(--border-color);background:var(--bg-tertiary);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.lot-details-toggle{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:4px;align-items:center;gap:4px;margin-left:8px;padding:4px 8px;font-size:11px;transition:all .15s;display:inline-flex}.lot-details-toggle:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent)}.lot-details-row{background:var(--bg-primary)!important}.lot-details-row td{padding:0!important}.lot-details-container{background:var(--bg-primary);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:16px 24px}.lot-details-table{border-collapse:collapse;background:var(--bg-secondary);border-radius:8px;width:100%;font-size:12px;overflow:hidden}.lot-details-table th{text-align:left;background:var(--bg-tertiary);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:10px 12px;font-size:10px;font-weight:600}.lot-details-table tbody tr:last-child td{border-bottom:none}.lot-details-table tbody tr.loss-row{background:var(--red-bg)}.lot-details-table tfoot td{background:var(--bg-tertiary);border-top:1px solid var(--border-color);font-weight:600}.tax-badge{text-transform:uppercase;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.tax-badge.short-term{background:var(--yellow);color:#000}.tax-badge.long-term{background:var(--green);color:#fff}.lot-action-btn.import{background:var(--accent);color:#fff;border-radius:4px}.lot-action-btn.import:hover{background:var(--accent-hover)}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .15s}.btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.tax-badge.mixed{background:linear-gradient(135deg,var(--yellow)50%,var(--green)50%);color:#000}.tax-table tr.has-details{cursor:pointer}.tax-table tr.has-details:hover{background:var(--bg-hover)}.play-portfolio-badge{color:#fff;letter-spacing:.5px;vertical-align:middle;text-transform:uppercase;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;margin-left:12px;padding:4px 10px;font-size:.7rem;font-weight:600}.cash-balance-line{color:var(--text-secondary);margin-top:2px;font-size:.85rem;font-weight:500}.cash-balance-amount{color:var(--green);font-weight:600}.play-portfolio-analysis{border:2px solid #f59e0b;border-radius:12px;margin-top:24px;overflow:hidden}.play-portfolio-analysis .ai-analysis-panel{border:none;border-radius:0}.play-portfolio-analysis .ai-panel-header{background:linear-gradient(135deg,#f59e0b26,#d977061a);border-bottom:1px solid #f59e0b4d}.play-portfolio-analysis .ai-panel-header h3{color:#f59e0b}.play-thesis-input{background:linear-gradient(135deg,#f59e0b1a,#d977060d);border-bottom:1px solid #f59e0b33;flex-direction:column;gap:8px;padding:16px 20px;display:flex}.play-thesis-input label{color:#f59e0b;letter-spacing:.3px;font-size:.85rem;font-weight:600}.play-thesis-input input{background:var(--bg-secondary);color:var(--text-primary);border:1px solid #f59e0b4d;border-radius:8px;padding:10px 14px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.play-thesis-input input:focus{border-color:#f59e0b;outline:none;box-shadow:0 0 0 3px #f59e0b26}.play-thesis-input input::placeholder{color:var(--text-muted);font-style:italic}.analytics-thesis-input{background:linear-gradient(135deg,#3b82f61a,#6366f10d);border-bottom:1px solid #3b82f633;border-radius:8px;flex-direction:column;gap:8px;margin-bottom:10px;padding:16px 20px;display:flex}.analytics-thesis-input label{color:#3b82f6;letter-spacing:.3px;font-size:.85rem;font-weight:600}.analytics-thesis-input input{background:var(--bg-secondary);color:var(--text-primary);border:1px solid #3b82f64d;border-radius:8px;padding:10px 14px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.analytics-thesis-input input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f626}.analytics-thesis-input input::placeholder{color:var(--text-muted);font-style:italic}.watchlist-matti-section{margin-top:24px}.watchlist-thesis-input{background:linear-gradient(135deg,#10b9811a,#0596690d);border:1px solid #10b98133;border-bottom:none;border-radius:12px 12px 0 0;flex-direction:column;gap:8px;padding:16px 20px;display:flex}.watchlist-thesis-input label{color:#10b981;letter-spacing:.3px;font-size:.85rem;font-weight:600}.watchlist-thesis-input input{background:var(--bg-secondary);color:var(--text-primary);border:1px solid #10b9814d;border-radius:8px;padding:10px 14px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.watchlist-thesis-input input:focus{border-color:#10b981;outline:none;box-shadow:0 0 0 3px #10b98126}.watchlist-thesis-input input::placeholder{color:var(--text-muted);font-style:italic}.watchlist-matti-section .ai-analysis-panel{border-top-left-radius:0;border-top-right-radius:0}.all-transactions-modal{width:95%;max-width:1100px}.all-transactions-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.all-transactions-table th.sortable:hover{background:var(--bg-hover)}.ticker-link{color:var(--accent);cursor:pointer;font-weight:600}.ticker-link:hover{text-decoration:underline}.transactions-btn{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:14px;transition:all .15s}.transactions-btn:hover{background:var(--bg-hover);border-color:var(--accent)}.transactions-view{padding:0}.transactions-actions{align-items:center;gap:12px;margin-bottom:12px;display:flex}.transactions-quick-add-btn{background:var(--bg-tertiary);color:var(--accent);border:1px solid var(--accent);cursor:pointer;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:500;transition:all .15s}.transactions-quick-add-btn:hover,.transactions-quick-add-btn.active{background:var(--accent);color:#fff}.transactions-toggle{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:13px;display:flex}.transactions-toggle input[type=checkbox]{accent-color:var(--accent)}.transactions-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.transactions-filter-input{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:6px;padding:6px 10px;font-size:13px;transition:border-color .15s}.transactions-filter-input:focus{border-color:var(--accent);outline:none}.transactions-filter-input::placeholder{color:var(--text-muted)}.transactions-filter-select{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:6px;padding:6px 10px;font-size:13px;transition:border-color .15s}.transactions-filter-select:focus{border-color:var(--accent);outline:none}.transactions-clear-btn{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:12px;transition:all .15s}.transactions-clear-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.quick-add-section{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:12px;padding:12px}.quick-add-table .lot-edit-input{background:var(--bg-primary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:4px;padding:6px 8px;font-size:13px}.quick-add-table .lot-edit-input:focus{border-color:var(--accent);outline:none}.quick-add-table .lot-edit-input::placeholder{color:var(--text-muted)}.quick-add-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:8px;display:flex}.quick-add-row-btn{border:1px dashed var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:5px 12px;font-size:12px;transition:all .15s}.quick-add-row-btn:hover{border-color:var(--accent);color:var(--accent)}.quick-add-submit-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 16px;font-size:13px;font-weight:500;transition:all .15s}.quick-add-submit-btn:hover:not(:disabled){background:var(--accent-hover)}.quick-add-submit-btn:disabled{opacity:.5;cursor:not-allowed}.tax-report-btn{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:14px;transition:all .15s}.tax-report-btn:hover{background:var(--bg-hover);border-color:var(--green)}.tax-report-modal{flex-direction:column;width:95%;max-width:1100px;max-height:90vh;display:flex;overflow:hidden}.tax-report-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;padding:24px 24px 16px;display:flex}.tax-report-title h2{margin:0 0 4px;font-size:24px;font-weight:600}.tax-report-subtitle{color:var(--text-secondary);margin:0;font-size:14px}.tax-report-controls{align-items:center;gap:16px;display:flex}.tax-year-selector{flex-direction:column;gap:4px;display:flex}.tax-year-selector label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-size:11px}.tax-year-selector select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:14px;font-weight:500}.tax-tabs{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);gap:4px;padding:12px 24px;display:flex}.tax-tabs button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.tax-tabs button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tax-tabs button.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 1px 3px #0000001a}.tab-badge{background:var(--red);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:600;display:inline-flex}.tax-content{flex:1;padding:24px;overflow-y:auto}.tax-summary-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}.tax-summary-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px}.tax-summary-card.highlight{background:var(--bg-tertiary);border-color:var(--accent-color)}.card-label{color:var(--text-secondary);margin-bottom:8px;font-size:13px}.card-value{margin-bottom:8px;font-size:28px;font-weight:600}.card-value.positive{color:var(--green)}.card-value.negative{color:var(--red)}.card-meta{color:var(--text-secondary);font-size:12px}.card-meta-breakdown{justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.card-meta-breakdown .meta-sep{color:var(--text-muted)}.wash-sale-details{flex-direction:column;gap:2px;font-size:12px;display:flex}.wash-detail{color:var(--text-secondary)}.wash-sale-details .repurchase-dates{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.info-banner{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;align-items:flex-start;gap:12px;margin-bottom:20px;padding:16px;display:flex}.info-banner.warning{background:#f59e0b1a;border-color:#f59e0b4d}.banner-icon{flex-shrink:0;font-size:20px}.info-banner strong{color:var(--text-primary);margin-bottom:4px;display:block}.info-banner p{color:var(--text-secondary);margin:0;font-size:13px}.harvest-summary{background:#ef44441a;border:1px solid #ef444433;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px 20px;display:flex}.harvest-summary .label{color:var(--text-primary);font-weight:500}.harvest-summary .value{font-size:24px;font-weight:600}.harvest-settings{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:16px;overflow:hidden}.harvest-settings-toggle{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;padding:12px 16px;font-size:14px;font-weight:500;transition:background .15s}.harvest-settings-toggle:hover{background:var(--bg-hover)}.harvest-settings-body{gap:16px;padding:0 16px 16px;display:flex}.harvest-settings-field{flex-direction:column;flex:1;gap:4px;display:flex}.harvest-settings-field label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-size:11px}.harvest-settings-field select,.harvest-settings-field input{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:8px;padding:8px 12px;font-size:14px}.harvest-context{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;margin-bottom:16px;padding:16px 20px}.gain-summary-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.gain-summary-row>div{flex-direction:column;gap:4px;display:flex}.context-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;font-size:12px}.context-value{font-size:20px;font-weight:600}.context-rate{color:var(--text-secondary);font-size:12px}.harvest-summary-card{background:#22c55e14;border:2px solid #22c55e40;border-radius:10px;margin-bottom:16px;padding:16px 20px}.harvest-summary-main{justify-content:space-between;align-items:center;display:flex}.harvest-summary-main .label{color:var(--text-primary);font-weight:500}.harvest-summary-main .value{font-size:24px;font-weight:600}.harvest-summary-detail{color:var(--text-secondary);margin-top:8px;font-size:13px}.risk-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.risk-badge.safe{color:#22c55e;background:#22c55e1a}.risk-badge.warning{color:#eab308;cursor:help;background:#eab3081a}.offset-detail{flex-direction:column;gap:2px;font-size:13px;display:flex}.offset-detail .text-secondary{color:var(--text-secondary)}.print-section-header{display:none}.tax-table-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.table-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.table-header h3{margin:0;font-size:16px;font-weight:600}.table-count{color:var(--text-secondary);font-size:13px}.tax-table{border-collapse:collapse;width:100%}.tax-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);padding:12px 16px;font-size:11px;font-weight:600}.tax-table th.right{text-align:right}.tax-table th.center{text-align:center}.tax-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:14px 16px;font-size:14px}.tax-table td.right{text-align:right;font-variant-numeric:tabular-nums}.tax-table td.center{text-align:center}.tax-table tr:last-child td{border-bottom:none}.tax-table tr.expandable{cursor:pointer}.tax-table tr.expandable:hover,.tax-table tr.expanded{background:var(--bg-tertiary)}.date-cell{white-space:nowrap;color:var(--text-secondary)}.security-cell{flex-direction:column;gap:2px;display:flex}.security-cell .ticker{color:var(--text-primary);font-weight:600}.security-cell .portfolio,.security-cell .name{color:var(--text-secondary);font-size:12px}.term-badge{text-transform:uppercase;border-radius:6px;justify-content:center;align-items:center;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.term-badge.st{color:#d97706;background:#f59e0b26}.term-badge.lt{color:#16a34a;background:#22c55e26}.term-badge.mixed{color:#7c3aed;background:#8b5cf626}.term-badge.unknown{background:var(--bg-tertiary);color:var(--text-secondary)}.expand-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:500;transition:all .15s}.expand-btn:hover{background:var(--bg-hover);border-color:var(--accent-color)}.exclude-btn,.include-btn{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:600;line-height:1;transition:all .15s;display:inline-flex}.exclude-btn{color:var(--text-secondary);background:0 0}.exclude-btn:hover{color:#ef4444;background:#ef44441f;border-color:#ef444440}.include-btn{color:var(--text-secondary);background:0 0}.include-btn:hover{color:#22c55e;background:#22c55e1f;border-color:#22c55e40}.excluded-section{opacity:.7;margin-top:20px}.excluded-section .table-header h3{color:var(--text-secondary);font-size:14px}.excluded-row td{color:var(--text-secondary)}.details-row td{background:var(--bg-tertiary);padding:0!important}.lot-details{padding:16px 20px 20px 40px}.lot-details-table{border-collapse:collapse;width:100%;font-size:13px}.lot-details-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:8px 12px;font-size:10px;font-weight:600}.lot-details-table td{border-bottom:1px solid var(--border-color);padding:10px 12px}.lot-details-table tr:last-child td{border-bottom:none}.repurchase-dates{flex-wrap:wrap;gap:6px;display:flex}.repurchase-date{color:#d97706;background:#f59e0b26;border-radius:4px;padding:4px 8px;font-size:12px;display:inline-block}.empty-state{text-align:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:60px 20px}.empty-state.success{background:#22c55e0d;border-color:#22c55e33}.empty-icon{margin-bottom:16px;font-size:48px}.empty-state h4{margin:0 0 8px;font-size:18px;font-weight:600}.empty-state p{color:var(--text-secondary);margin:0}.tax-report-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);text-align:center;padding:16px 24px}.tax-report-footer p{color:var(--text-secondary);margin:0;font-size:12px}.positive{color:var(--green)}.negative{color:var(--red)}.tax-report-header-btn{background:var(--card-bg,#1a1a25);border:1px solid var(--border,#2a2a3a);color:var(--text-secondary,#8a8aa0);cursor:pointer;border-radius:8px;align-items:center;gap:6px;margin-left:auto;padding:6px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.tax-report-header-btn:hover{background:var(--accent-bg,#6366f11a);border-color:var(--accent,#6366f1);color:var(--accent,#6366f1)}.risk-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:20px;display:grid}.risk-metric-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:20px}.risk-metric-header{align-items:center;gap:8px;margin-bottom:16px;display:flex}.risk-metric-label{color:var(--text-primary);font-size:14px;font-weight:600}.risk-metric-info{color:var(--text-secondary);cursor:help;font-size:12px}.risk-metric-values{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.risk-metric-main{flex-direction:column;display:flex}.risk-metric-value{color:var(--text-primary);font-size:32px;font-weight:700;line-height:1}.risk-metric-sublabel{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:11px}.risk-metric-comparison{flex-direction:column;align-items:flex-end;display:flex}.risk-metric-vs{color:var(--text-tertiary);margin-bottom:2px;font-size:11px}.risk-metric-benchmark{color:var(--text-secondary);font-size:20px;font-weight:600}.risk-metric-bar{background:var(--bg-tertiary);border-radius:4px;height:8px;margin-bottom:12px;position:relative}.risk-metric-bar-fill{border-radius:4px;height:100%;transition:width .3s}.risk-metric-bar-fill.volatility{background:linear-gradient(90deg,#22c55e 0%,#eab308 50%,#ef4444 100%)}.risk-metric-bar-marker{background:var(--text-primary);border-radius:2px;width:3px;height:16px;position:absolute;top:-4px;transform:translate(-50%)}.risk-metric-interpretation{font-size:13px;font-weight:500}.name-cell{white-space:nowrap;text-overflow:ellipsis;max-width:200px;overflow:hidden}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color .15s}.sortable-header:hover{color:var(--accent)}.correlation-table th.sortable-header{padding-right:20px;position:relative}.header-info{vertical-align:middle;margin-left:4px;font-size:.75rem}.ai-analysis-section{margin-top:20px}.matti-progress-container{text-align:left;padding:24px 20px}.matti-progress-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.matti-progress-spinner{border:2.5px solid #334155;border-top-color:#6366f1;border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.8s linear infinite spin}.matti-progress-status{color:#e2e8f0;font-size:.95rem;font-weight:500;animation:.4s ease-in-out matti-status-fade}@keyframes matti-status-fade{0%{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.matti-progress-bar-track{background:#1e293b;border-radius:3px;width:100%;height:6px;overflow:hidden}.matti-progress-bar-fill{background:linear-gradient(90deg,#6366f1,#8b5cf6,#a78bfa);border-radius:3px;height:100%;transition:width 1.2s cubic-bezier(.4,0,.2,1);position:relative}.matti-progress-bar-fill:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff26 50%,#0000 100%);animation:1.5s ease-in-out infinite matti-shimmer;position:absolute;inset:0}@keyframes matti-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.matti-progress-detail{color:#64748b;margin-top:10px;font-size:.8rem}.matti-progress-inline{color:#94a3b8;align-items:center;gap:8px;font-size:.9rem;display:flex}.matti-history-actions{justify-content:center;gap:8px;margin-top:12px;display:flex}.matti-history-badge{color:#93c5fd;text-align:center;background:linear-gradient(135deg,#1e3a5f 0%,#1e293b 100%);border:1px solid #334155;border-radius:6px;margin-bottom:12px;padding:8px 14px;font-size:.8rem}.matti-history-panel{background:#111827;border:1px solid #1f2937;border-radius:8px;margin-top:12px;padding:14px}.matti-history-panel-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.matti-history-panel-header h4{color:#e2e8f0;margin:0;font-size:.9rem}.matti-history-list{flex-direction:column;gap:6px;max-height:300px;display:flex;overflow-y:auto}.matti-history-item{cursor:pointer;background:#1f2937;border:1px solid #374151;border-radius:6px;align-items:center;gap:8px;padding:10px 12px;transition:all .15s;display:flex}.matti-history-item:hover,.matti-history-item.active{background:#1e3a5f;border-color:#3b82f6}.matti-history-item-info{flex:1;min-width:0}.matti-history-item-date{color:#e2e8f0;font-size:.8rem;font-weight:600}.matti-history-item-label{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.75rem;overflow:hidden}.matti-history-item-meta{color:#64748b;margin-top:2px;font-size:.7rem}.matti-history-delete{cursor:pointer;opacity:.4;background:0 0;border:none;padding:4px;font-size:.85rem;transition:opacity .15s}.matti-history-delete:hover{opacity:1}.ai-analysis-empty{text-align:center;color:#94a3b8;padding:30px}.api-key-input-section{padding:20px}.ai-chat-history{flex-direction:column;gap:15px;padding:10px;display:flex;overflow-y:auto}.ai-chat-message{background:#1f2937;border-radius:8px;padding:12px 15px}.ai-chat-message.user{background:#1e3a5f;margin-left:20px}.ai-chat-message.assistant,.ai-chat-message.model{background:#1f2937;margin-right:20px}.ai-chat-role{color:#94a3b8;margin-bottom:6px;font-size:.8rem;font-weight:600}.ai-chat-content{white-space:pre-wrap;font-size:.95rem;line-height:1.5}.ai-question-input{border-top:1px solid #374151;gap:10px;margin-top:15px;padding:10px;display:flex}.ai-question-input input{color:#fff;background-color:#1f2937;border:1px solid #374151;border-radius:6px;flex:1;padding:10px 15px;font-size:.95rem}.ai-question-input input:focus{border-color:#3b82f6;outline:none}.ai-question-input input::placeholder{color:#6b7280}.ai-question-input button{padding:10px 20px}.ai-chat-content h2{color:#f1f5f9;border-bottom:1px solid #374151;margin:1.2rem 0 .6rem;padding-bottom:.4rem;font-size:1.3rem;font-weight:700}.ai-chat-content h3{color:#e2e8f0;margin:1rem 0 .5rem;font-size:1.1rem;font-weight:600}.ai-chat-content h4{color:#cbd5e1;margin:.8rem 0 .4rem;font-size:1rem;font-weight:600}.ai-chat-content p{margin:.5rem 0;line-height:1.6}.ai-chat-content ul{margin:.5rem 0;padding-left:1.5rem}.ai-chat-content li{margin:.4rem 0;line-height:1.5}.ai-chat-content strong{color:#60a5fa;font-weight:600}.ai-chat-content em{color:#a5b4fc;font-style:italic}.ai-chat-content code{color:#fbbf24;background:#1e293b;border-radius:4px;padding:.15rem .4rem;font-family:Monaco,Menlo,monospace;font-size:.85rem}.ai-chat-content pre{background:#1e293b;border-radius:8px;margin:.8rem 0;padding:1rem;overflow-x:auto}.ai-chat-content pre code{color:#e2e8f0;background:0 0;padding:0}.ai-chat-message.model .ai-chat-content{font-size:.95rem}.ai-chat-content h2:first-child,.ai-chat-content h3:first-child,.ai-chat-content h4:first-child{margin-top:0}.consensus-badge{white-space:nowrap;letter-spacing:.02em;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-block}.consensus-strong-buy{color:#15803d;background:#22c55e26}.consensus-buy{color:#22c55e;background:#22c55e1a}.consensus-hold{color:#ca8a04;background:#eab3081f}.consensus-sell{color:#ef4444;background:#ef44441a}.consensus-strong-sell{color:#dc2626;background:#ef444426}.etf-badge{color:#fff;vertical-align:middle;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:4px;margin-left:.5rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600}.ai-analysis-panel{background:linear-gradient(135deg,#1e293b 0%,#0f172a 100%);border:1px solid #334155;border-radius:12px;margin-top:1rem;padding:1.25rem}.ai-analysis-panel.compact{padding:1rem}.ai-panel-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.ai-panel-header h3{color:#f1f5f9;align-items:center;gap:.5rem;margin:0;font-size:1rem;display:flex}.ai-icon{font-size:1.2rem}.search-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:10px;margin-left:.5rem;padding:.2rem .5rem;font-size:.65rem;font-weight:600}.rating-strong-buy{color:#00e676;text-shadow:0 0 10px #00e67680;font-weight:700}.rating-buy{color:#69f0ae;font-weight:700}.rating-hold{color:#ffd54f;font-weight:700}.rating-sell{color:#ff8a65;font-weight:700}.rating-strong-sell{color:#ff5252;text-shadow:0 0 10px #ff525280;font-weight:700}.matti-logo{letter-spacing:.5px;font-weight:700}.matti-accent{color:#ff6d00;font-style:italic;font-weight:400}.ai-settings-btn{color:#64748b;cursor:pointer;background:0 0;border:1px solid #334155;border-radius:6px;padding:.4rem;transition:all .2s}.ai-settings-btn:hover{color:#3b82f6;border-color:#3b82f6}.ai-api-key-section{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.ai-api-key-section input{color:#f1f5f9;background:#0f172a;border:1px solid #334155;border-radius:6px;flex:1;padding:.5rem .75rem;font-size:.9rem}.ai-api-key-section button{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:6px;padding:.5rem 1rem;font-weight:500}.api-key-status{color:#22c55e;font-size:.85rem}.ai-analyze-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex}.ai-analyze-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.ai-analyze-btn:disabled{opacity:.6;cursor:not-allowed}.ai-btn-icon{font-size:1.1rem}.ai-loading{color:#94a3b8;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.ai-loading-spinner{border:3px solid #334155;border-top-color:#3b82f6;border-radius:50%;width:24px;height:24px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.ai-error{color:#fca5a5;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.ai-error button{color:#94a3b8;cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:.85rem}.ai-result{animation:.3s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-result-content{color:#e2e8f0;background:#0f172a;border-radius:8px;max-height:500px;padding:1.25rem;font-size:.95rem;line-height:1.7;overflow-y:auto}.ai-result-content h3{color:#f1f5f9;border-bottom:1px solid #334155;margin:1.25rem 0 .75rem;padding-bottom:.25rem;font-size:1.1rem}.ai-result-content h3:first-child{margin-top:0}.ai-result-content h4{color:#cbd5e1;margin:1rem 0 .5rem;font-size:1rem}.ai-result-content strong{color:#fbbf24}.ai-result-content ul{margin:.5rem 0;padding-left:1.25rem}.ai-result-content li{margin-bottom:.4rem}.ai-result-content code{color:#60a5fa;background:#334155;border-radius:4px;padding:.2rem .4rem;font-size:.85em}.ai-followup{gap:.5rem;margin-top:1rem;display:flex}.ai-followup input{color:#f1f5f9;background:#0f172a;border:1px solid #334155;border-radius:8px;flex:1;padding:.625rem .875rem;font-size:.9rem}.ai-followup input:focus{border-color:#3b82f6;outline:none}.ai-followup button{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:8px;padding:.625rem 1.25rem;font-weight:500;transition:background .2s}.ai-followup button:hover:not(:disabled){background:#2563eb}.ai-followup button:disabled{opacity:.5;cursor:not-allowed}.ai-result-actions{gap:.5rem;margin-top:1rem;display:flex}.ai-refresh-btn,.ai-clear-btn{cursor:pointer;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;transition:all .2s}.ai-refresh-btn{color:#94a3b8;background:#1e293b;border:1px solid #334155}.ai-refresh-btn:hover:not(:disabled){color:#3b82f6;border-color:#3b82f6}.ai-clear-btn{color:#64748b;background:0 0;border:1px solid #334155}.ai-clear-btn:hover{color:#ef4444;border-color:#ef4444}.beta-stat .stat-value{font-size:1.5rem;font-weight:700}.beta-stat .stat-value .high-beta{color:#f59e0b}.beta-stat .stat-value .low-beta{color:#3b82f6}.beta-stat .loading-text{color:#64748b;font-size:.9rem;font-weight:400}.beta-interpretation{border-top:1px solid #334155;margin-top:.75rem;padding-top:.75rem}.beta-note{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.beta-note:before{content:"";border-radius:50%;width:8px;height:8px}.beta-note.high{color:#f59e0b}.beta-note.high:before{background:#f59e0b}.beta-note.low{color:#3b82f6}.beta-note.low:before{background:#3b82f6}.beta-note.neutral{color:#94a3b8}.beta-note.neutral:before{background:#94a3b8}.info-icon-wrapper{cursor:help;align-items:center;margin-left:.35rem;display:inline-flex;position:relative}.info-icon{color:#64748b;transition:color .2s}.info-icon-wrapper:hover .info-icon{color:#94a3b8}.info-tooltip{color:#94a3b8;white-space:nowrap;opacity:0;visibility:hidden;z-index:100;background:#1e293b;border:1px solid #334155;border-radius:6px;padding:.5rem .75rem;font-size:.75rem;font-weight:400;transition:opacity .2s,visibility .2s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}.info-tooltip:after{content:"";border:6px solid #0000;border-top-color:#334155;position:absolute;top:100%;left:50%;transform:translate(-50%)}.info-icon-wrapper:hover .info-tooltip{opacity:1;visibility:visible}.deep-analysis-card{margin-top:1.5rem}.deep-analysis-loading{text-align:center;color:#64748b;padding:2rem}.deep-analysis-grid{flex-direction:column;gap:1.5rem;display:flex}.deep-analysis-module{background:#1e293b;border:1px solid #334155;border-radius:8px;padding:1rem}.module-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.module-header h4{color:#e2e8f0;margin:0;font-size:.95rem}.module-content{flex-direction:column;gap:.75rem;display:flex}.module-insight{color:#94a3b8;background:#334155;border-radius:6px;padding:.5rem .75rem;font-size:.85rem}.module-insight.positive{color:#22c55e;background:#22c55e1a}.module-insight.warning{color:#f59e0b;background:#f59e0b1a}.dupont-formula{background:#0f172a;border-radius:6px;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem;display:flex}.dupont-roe{color:#3b82f6;font-size:1.25rem;font-weight:700}.dupont-equals,.dupont-multiply{color:#64748b;font-size:1rem}.dupont-component{flex-direction:column;align-items:center;padding:.25rem .5rem;display:flex}.component-value{color:#e2e8f0;font-weight:600}.component-label{color:#64748b;text-transform:uppercase;font-size:.7rem}.sloan-display{align-items:center;gap:1rem;display:flex}.sloan-value{font-size:1.5rem;font-weight:700}.sloan-value.red{color:#ef4444}.sloan-value.green{color:#22c55e}.sloan-value.neutral{color:#94a3b8}.sloan-flag{border-radius:4px;padding:.25rem .5rem;font-size:.85rem}.sloan-flag.red{color:#ef4444;background:#ef44441a}.sloan-flag.green{color:#22c55e;background:#22c55e1a}.sloan-flag.neutral{color:#94a3b8;background:#94a3b81a}.fscore-display{align-items:baseline;gap:.75rem;margin-bottom:.75rem;display:flex}.fscore-value{font-size:2rem;font-weight:700}.fscore-value.high{color:#22c55e}.fscore-value.medium{color:#f59e0b}.fscore-value.low{color:#ef4444}.fscore-label{color:#94a3b8;font-size:.9rem}.fscore-checks{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;display:grid}.fscore-check{background:#0f172a;border-radius:4px;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.8rem;display:flex}.fscore-check.passed .check-icon{color:#22c55e}.fscore-check.failed .check-icon{color:#ef4444}.fscore-check.passed .check-name{color:#94a3b8}.fscore-check.failed .check-name{color:#64748b}.graham-display{background:#0f172a;border-radius:6px;padding:.75rem}.graham-values{gap:2rem;margin-bottom:.75rem;display:flex}.graham-item{flex-direction:column;display:flex}.graham-label{color:#64748b;text-transform:uppercase;font-size:.75rem}.graham-value{color:#e2e8f0;font-size:1.25rem;font-weight:600}.graham-premium{align-items:baseline;gap:.5rem;font-size:1.1rem;font-weight:600;display:flex}.graham-premium.overvalued{color:#ef4444}.graham-premium.undervalued{color:#22c55e}.premium-label{color:#94a3b8;font-size:.8rem;font-weight:400}.graham-inputs{color:#64748b;gap:1.5rem;margin-top:.5rem;font-size:.8rem;display:flex}.smart-money-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.smart-money-item{background:#0f172a;border-radius:6px;flex-direction:column;padding:.5rem;display:flex}.smart-money-item .sm-label{color:#64748b;font-size:.75rem}.sm-value{color:#e2e8f0;font-size:1.1rem;font-weight:600}.sm-value.warning{color:#f59e0b}.sm-value.bullish{color:#22c55e}.sm-value.bearish{color:#ef4444}.sm-value.neutral{color:#94a3b8}.deep-analysis-empty{text-align:center;color:#64748b;padding:2rem;font-style:italic}@media (max-width:640px){.dupont-formula{justify-content:center}.graham-values{flex-direction:column;gap:.5rem}.smart-money-grid,.fscore-checks{grid-template-columns:1fr}}.data-availability{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.75rem;display:flex}.data-availability span{background:#0f172a;border-radius:4px;padding:.25rem .5rem;font-size:.8rem}.data-availability .available{color:#22c55e}.data-availability .missing{color:#ef4444}.refresh-controls{align-items:center;gap:6px;display:flex}.auto-refresh-toggle{cursor:pointer;border:1px solid var(--border-color);border-radius:6px;padding:6px 12px;font-size:.85rem;font-weight:500;transition:all .2s}.auto-refresh-toggle.enabled{color:var(--green);border-color:var(--green);background:#22c55e26}.auto-refresh-toggle.enabled:hover{background:#22c55e40}.auto-refresh-toggle.disabled{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-color)}.auto-refresh-toggle.disabled:hover{background:var(--bg-hover);color:var(--text-primary)}.last-updated-bar{border-top:1px solid var(--border-color);justify-content:flex-end;align-items:center;width:100%;margin-top:8px;padding:8px 0;display:flex}.last-updated{color:var(--text-secondary);align-items:center;gap:4px;font-size:.8rem;display:flex}.last-updated.not-refreshed{color:var(--text-muted);font-style:italic}.next-refresh{color:var(--green);font-weight:500}.market-closed{color:var(--yellow);font-weight:500}.auto-refresh-toggle.enabled:before{content:"";background:var(--green);border-radius:50%;width:6px;height:6px;margin-right:6px;animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.refresh-btn:disabled{opacity:.7;cursor:not-allowed}.refresh-btn:disabled:before{content:"";border:2px solid var(--text-secondary);border-top-color:#0000;border-radius:50%;width:12px;height:12px;margin-right:6px;animation:1s linear infinite spin;display:inline-block}.summary-header .refresh-controls{align-items:center;gap:8px;display:flex}.summary-last-updated .market-closed{color:var(--yellow);font-weight:500}.summary-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.last-updated-timestamp{color:var(--text-secondary);margin-top:8px;padding-bottom:8px;font-size:.8rem}.last-updated-timestamp .market-closed{color:var(--yellow);font-weight:500}.last-updated-timestamp .not-refreshed{color:var(--text-muted);font-style:italic}.watchlist .last-updated-timestamp{border-bottom:1px solid var(--border-color);margin-bottom:16px;padding:8px 0 16px}.stock-detail-updated{margin-top:4px;font-size:.75rem}.summary-last-updated{color:var(--text-secondary);border-bottom:1px solid var(--border-color);margin-bottom:16px;padding:8px 0;font-size:.8rem}.portfolio-last-updated{color:var(--text-secondary);border-bottom:1px solid var(--border-color);margin-bottom:8px;padding:12px 0;font-size:.8rem}.portfolio-last-updated .next-refresh{color:var(--green);font-weight:500}.portfolio-last-updated .market-closed{color:var(--yellow);font-weight:500}.todays-performance-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:24px;padding:20px}.todays-performance-section .section-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.todays-performance-section .section-header h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.todays-performance-section .section-subtitle{color:var(--text-secondary);font-size:.8rem}.todays-performance-section .market-indicator{color:var(--yellow);font-weight:500}.todays-performance-chart .no-data{text-align:center;color:var(--text-muted);padding:40px;font-style:italic}.performance-bars{flex-direction:column;gap:2px;display:flex}.performance-bar-row{cursor:pointer;border-radius:6px;grid-template-columns:100px 1fr 140px;align-items:center;gap:12px;padding:4px 12px;transition:background-color .15s;display:grid}.performance-bar-row:hover{background:var(--bg-hover)}.bar-label{flex-direction:column;gap:2px;display:flex}.bar-ticker{color:var(--text-primary);font-size:.9rem;font-weight:600}.bar-rsi{color:var(--text-muted);letter-spacing:.02em;font-size:.68rem;font-weight:600}.bar-rsi.overbought{color:var(--red)}.bar-rsi.oversold{color:var(--green)}.bar-type{color:var(--text-muted);text-transform:uppercase;font-size:.7rem}.bar-container{background:var(--bg-tertiary);border-radius:4px;height:24px;position:relative;overflow:hidden}.bar-center-line{background:var(--border-color);z-index:1;width:1px;position:absolute;top:0;bottom:0;left:50%}.bar-fill{border-radius:3px;transition:width .3s;position:absolute;top:2px;bottom:2px}.bar-fill.positive{border-right:2px solid var(--green);background:linear-gradient(90deg,#22c55e4d,#22c55eb3)}.bar-fill.negative{border-left:2px solid var(--red);background:linear-gradient(270deg,#ef44444d,#ef4444b3)}.bar-value{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.bar-percent{font-size:.9rem;font-weight:600}.bar-dollar{color:var(--text-secondary);font-size:.75rem}.bar-value.positive .bar-percent{color:var(--green)}.bar-value.negative .bar-percent{color:var(--red)}.bar-value.positive .bar-dollar{color:#22c55ecc}.bar-value.negative .bar-dollar{color:#ef4444cc}.summary-last-updated .next-refresh{color:var(--green);font-weight:500}.traffic-light-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:20px;padding:20px}.traffic-light-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:16px;display:flex}.traffic-light-header h3{color:var(--text-primary);margin:0;font-size:1.1rem}.traffic-verdict{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;align-items:center;gap:8px;padding:5px 14px;font-size:.82rem;font-weight:500;display:flex}.verdict-score{font-size:.9rem;font-weight:700}.verdict-separator{color:var(--text-muted);opacity:.5}.traffic-verdict-strong_buy{color:var(--green);background:#22c55e1f;border-color:#22c55e4d}.traffic-verdict-lean_buy{color:var(--green);background:#22c55e14;border-color:#22c55e33}.traffic-verdict-momentum{color:var(--yellow);background:#eab3081f;border-color:#eab3084d}.traffic-verdict-value_trap{color:var(--red);background:#ef444414;border-color:#ef444433}.traffic-verdict-avoid{color:var(--red);background:#ef44441f;border-color:#ef44444d}.traffic-verdict-neutral{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-secondary)}.traffic-signals-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:900px){.traffic-signals-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.traffic-signals-grid{grid-template-columns:1fr}}.traffic-signal{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:14px;transition:border-color .2s,box-shadow .2s}.traffic-signal:hover{border-color:var(--text-muted);box-shadow:0 2px 12px #00000026}.traffic-signal-green{border-left:3px solid var(--green)}.traffic-signal-yellow{border-left:3px solid var(--yellow)}.traffic-signal-red{border-left:3px solid var(--red)}.traffic-signal-gray{border-left:3px solid var(--text-muted)}.signal-light-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.signal-dot{border-radius:50%;flex-shrink:0;width:14px;height:14px;box-shadow:0 0 6px #0000004d}.signal-dot-green{background:var(--green);box-shadow:0 0 8px #22c55e80}.signal-dot-yellow{background:var(--yellow);box-shadow:0 0 8px #eab30880}.signal-dot-red{background:var(--red);box-shadow:0 0 8px #ef444480}.signal-dot-gray{background:var(--text-muted);box-shadow:0 0 6px #6464644d}.signal-info{flex-direction:column;flex:1;min-width:0;display:flex}.signal-label{color:var(--text-primary);font-size:.85rem;font-weight:600;line-height:1.2}.signal-desc{color:var(--text-muted);font-size:.72rem;line-height:1.2}.signal-value{white-space:nowrap;font-size:.9rem;font-weight:700}.signal-value-green{color:var(--green)}.signal-value-yellow{color:var(--yellow)}.signal-value-red{color:var(--red)}.signal-value-gray{color:var(--text-muted)}.signal-message{color:var(--text-secondary);font-size:.78rem;line-height:1.4}.signal-detail{color:var(--text-muted);margin-top:3px;font-family:SF Mono,Consolas,monospace;font-size:.72rem}.traffic-loading{color:var(--text-muted);justify-content:center;align-items:center;gap:12px;padding:24px;font-size:.85rem;display:flex}.traffic-loading-dots{gap:4px;display:flex}.traffic-loading-dots span{background:var(--text-muted);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite trafficPulse}.traffic-loading-dots span:first-child{background:var(--green);animation-delay:0s}.traffic-loading-dots span:nth-child(2){background:var(--yellow);animation-delay:.2s}.traffic-loading-dots span:nth-child(3){background:var(--red);animation-delay:.4s}@keyframes trafficPulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.screener-picks-section{background:var(--bg-secondary);border:1.5px solid #22c55e40;border-radius:12px;margin-bottom:20px;padding:16px}.screener-picks-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.screener-picks-title-row{align-items:center;gap:10px;display:flex}.screener-picks-title-row h3{color:var(--green);margin:0;font-size:1rem}.screener-picks-count{color:var(--text-muted);background:var(--bg-primary);border-radius:12px;padding:2px 10px;font-size:.78rem;font-weight:600}.clear-picks-btn{color:#ef4444;cursor:pointer;background:#ef44440f;border:1px solid #ef44444d;border-radius:6px;padding:5px 14px;font-size:.75rem;font-weight:600}.clear-picks-btn:hover{background:#ef44441f}.screener-pick-group{margin-bottom:12px}.screener-pick-group:last-child{margin-bottom:0}.screener-pick-group-header{border-bottom:1px solid var(--border-color);align-items:center;gap:10px;margin-bottom:10px;padding-bottom:6px;display:flex}.pick-group-label{color:var(--text-primary);font-size:.85rem;font-weight:700}.pick-group-date{color:var(--text-muted);font-size:.72rem}.clear-group-btn{border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;margin-left:auto;padding:2px 8px;font-size:.72rem}.clear-group-btn:hover{color:#ef4444;background:#ef444414;border-color:#ef44444d}.screener-pick-cards{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;display:grid}.screener-pick-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:12px;transition:all .15s}.screener-pick-card:hover{border-color:var(--green);box-shadow:0 2px 12px #00000014}.pick-card-top{justify-content:space-between;align-items:center;display:flex}.pick-ticker{color:var(--text-primary);cursor:pointer;font-size:.95rem;font-weight:800}.pick-ticker:hover{color:var(--green)}.pick-remove-btn{color:var(--text-muted);cursor:pointer;opacity:.4;background:0 0;border:none;padding:2px 4px;font-size:.7rem;line-height:1;transition:opacity .15s}.screener-pick-card:hover .pick-remove-btn{opacity:1}.pick-remove-btn:hover{color:#ef4444}.pick-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:3px 0 8px;font-size:.7rem;overflow:hidden}.pick-price-row{align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.pick-price{color:var(--text-primary);font-size:.85rem;font-weight:700}.pick-change{font-size:.75rem;font-weight:600}.pick-change.positive{color:var(--green)}.pick-change.negative{color:#ef4444}.pick-signals{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:6px;padding-top:8px;display:flex}.pick-signal-dots{gap:3px;display:flex}.pick-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.pick-dot.green{background:var(--green)}.pick-dot.yellow{background:#f59e0b}.pick-dot.red{background:#ef4444}.pick-dot.gray{background:#6b7280}.pick-signal-score{color:var(--text-muted);white-space:nowrap;font-size:.65rem}.regular-watchlist-label{color:var(--text-primary);margin:0 0 8px;font-size:.95rem}.trump-mentions-section{background:var(--bg-secondary);border:1.5px solid #dc262638;border-radius:12px;margin-top:20px;margin-bottom:20px;padding:16px}.trump-mentions-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.trump-mentions-title-row{align-items:center;gap:10px;display:flex}.trump-mentions-title-row h3{color:var(--text-primary);margin:0;font-size:1rem}.trump-mentions-count{color:var(--text-muted);background:var(--bg-primary);border-radius:12px;padding:2px 10px;font-size:.78rem;font-weight:600}.trump-mentions-meta{color:var(--text-muted);margin-bottom:10px;font-size:.72rem}.trump-mentions-source-breakdown{flex-wrap:wrap;gap:10px;margin-top:6px;font-size:.7rem;display:flex}.trump-mentions-source-stat{color:var(--text-muted);background:var(--bg-primary);border-radius:8px;padding:2px 8px}.trump-mentions-filter-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.trump-mentions-filter-chip{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-muted);cursor:pointer;border-radius:12px;padding:4px 10px;font-size:.72rem;font-weight:600;transition:all .15s}.trump-mentions-filter-chip:hover{border-color:var(--accent);color:var(--text-primary)}.trump-mentions-filter-chip.active{border-color:var(--accent);color:var(--accent);background:#6366f11f}.trump-mention-source{background:var(--bg-primary);color:var(--text-muted);white-space:nowrap;border-radius:10px;padding:3px 8px;font-size:.7rem;font-weight:600;display:inline-block}.trump-mention-source.source-truth-social{color:#ef4444;background:#dc26261f}.trump-mention-source.source-whitehouse{color:#3b82f6;background:#3b82f61f}.trump-mention-source.source-transcripts{color:#a855f7;background:#a855f71f}.trump-mention-source.source-news-quotes{color:#f59e0b;background:#f59e0b1f}.trump-mention-source.source-reddit-wsb{color:#ff4500;background:#ff45001f}.trump-mentions-error{color:#ef4444;background:#ef444414;border:1px solid #ef444440;border-radius:6px;margin-bottom:10px;padding:8px 12px;font-size:.78rem}.trump-mentions-empty{color:var(--text-muted);margin:8px 0;font-size:.85rem;font-style:italic}.trump-mentions-table{border-collapse:collapse;width:100%;font-size:.82rem}.trump-mentions-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);padding:8px 10px;font-size:.7rem;font-weight:600}.trump-mentions-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:10px}.trump-mentions-table tr:last-child td{border-bottom:none}.trump-mention-ticker{font-weight:700}.trump-mention-company{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:180px;overflow:hidden}.trump-mention-sentiment{background:var(--bg-primary);color:var(--text-muted);white-space:nowrap;border-radius:10px;padding:3px 8px;font-size:.72rem;font-weight:600}.trump-mention-sentiment.positive{color:var(--green);background:#22c55e1f}.trump-mention-sentiment.negative{color:#ef4444;background:#ef44441f}.trump-mention-snippet{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:340px;font-style:italic;overflow:hidden}.trump-mention-posted{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.75rem}.trump-mention-link{color:var(--text-muted);white-space:nowrap;font-size:.75rem;text-decoration:none}.trump-mention-link:hover{color:var(--accent)}@media (max-width:768px){.trump-mention-company{max-width:100px}.trump-mention-snippet{max-width:160px}}.app-version{color:var(--text-muted);background:var(--bg-tertiary);letter-spacing:.5px;vertical-align:middle;border-radius:4px;margin-left:6px;padding:2px 6px;font-size:.65rem;font-weight:500}.alerts-icon-btn{border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:all .15s;display:flex;position:relative}.alerts-icon-btn:hover{color:var(--accent);border-color:var(--accent);background:#6366f114}.notification-badge{background:var(--red);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}.notification-center{flex-shrink:0;margin-left:auto;position:relative}.notification-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);z-index:10000;border-radius:10px;flex-direction:column;width:min(340px,100vw - 24px);max-height:420px;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 32px #0006}.calendar-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);z-index:10000;border-radius:10px;width:min(520px,100vw - 24px);max-height:min(560px,100vh - 80px);padding:16px;position:fixed;overflow-y:auto;box-shadow:0 8px 32px #0006}.notification-dropdown-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:12px 16px;font-size:.9em;font-weight:600;display:flex}.notification-header-actions{gap:4px;display:flex}.notification-mark-all{color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:.8em}.notification-mark-all:hover{background:#6366f11a}.notification-list{flex:1;max-height:360px;overflow-y:auto}.notification-empty{text-align:center;color:var(--text-muted);padding:32px 16px;font-size:.85em}.notification-item{cursor:pointer;border-bottom:1px solid var(--border-color);align-items:flex-start;gap:8px;padding:10px 16px;transition:background .15s;display:flex}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:var(--bg-hover)}.notification-item.unread{background:#6366f10d}.notification-item.unread:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:6px}.notification-item.read{opacity:.7}.notification-type-icon{background:var(--bg-tertiary);border-radius:6px;justify-content:center;align-items:center;width:28px;min-width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.notification-item-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-ticker{color:var(--accent);font-size:.85em;font-weight:700}.notification-message{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.82em;overflow:hidden}.notification-time{color:var(--text-muted);font-size:.75em}.notification-delete{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:1.1em;line-height:1}.notification-delete:hover{color:var(--red);background:var(--red-bg)}.price-alert-wrapper{position:relative}.stock-detail-actions .action-btn.alert-btn{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);align-items:center;gap:4px;display:flex}.stock-detail-actions .action-btn.alert-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}.stock-detail-actions .action-btn.alert-btn.has-alerts{color:var(--accent);border-color:var(--accent);background:#6366f114}.alert-count-badge{background:var(--accent);color:#fff;border-radius:7px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:10px;font-weight:700;line-height:1;display:flex}.price-alert-popover{background:var(--bg-secondary);border:1px solid var(--border-color);z-index:1000;border-radius:10px;width:280px;padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 32px #0006}.price-alert-popover-header{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.85em;font-weight:600;display:flex}.price-alert-current{color:var(--text-muted);font-size:.9em;font-weight:400}.price-alert-form{flex-direction:column;gap:8px;display:flex}.price-alert-condition-toggle{border:1px solid var(--border-color);border-radius:6px;display:flex;overflow:hidden}.price-alert-condition-toggle button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex:1;padding:6px 0;font-size:.82em;font-weight:600;transition:all .15s}.price-alert-condition-toggle button.active{background:var(--accent);color:#fff}.price-alert-input-row{align-items:center;gap:6px;display:flex}.price-alert-dollar{color:var(--text-muted);font-size:.9em;font-weight:500}.price-alert-input-row input{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);appearance:textfield;border-radius:6px;flex:1;width:0;padding:6px 8px;font-size:.85em}.price-alert-input-row input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.price-alert-input-row input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.price-alert-input-row input:focus{border-color:var(--accent);outline:none}.price-alert-input-row button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 14px;font-size:.82em;font-weight:600;transition:background .15s}.price-alert-input-row button:hover:not(:disabled){background:var(--accent-hover)}.price-alert-input-row button:disabled{opacity:.5;cursor:not-allowed}.price-alert-existing{border-top:1px solid var(--border-color);margin-top:12px;padding-top:10px}.price-alert-existing-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:.78em;font-weight:600}.price-alert-existing-item{align-items:center;gap:8px;padding:4px 0;font-size:.85em;display:flex}.price-alert-condition{font-size:.8em}.price-alert-condition.above{color:var(--green)}.price-alert-condition.below{color:var(--red)}.price-alert-delete{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:2px 4px;font-size:1.1em;line-height:1}.price-alert-delete:hover{color:var(--red);background:var(--red-bg)}.ticker-description{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;margin-bottom:16px;padding:12px 16px}.ticker-description p{color:var(--text-secondary);margin:0;font-size:.82rem;line-height:1.55}.macro-controls{gap:6px;display:flex}.macro-mini-strip{flex-wrap:wrap;gap:6px;padding:10px 0 0;display:flex}.mini-gauge{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:default;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;display:flex}.mini-gauge-label{color:var(--text-muted);font-size:11px;font-weight:600}.mini-gauge-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:700}.mini-gauge-change{font-variant-numeric:tabular-nums;font-size:10px}.mini-gauge-signal{font-size:10px;font-weight:700}.mini-gauge-signal.signal-ok{color:#22c55e}.mini-gauge-signal.signal-danger{color:#ef4444}.macro-loading{color:var(--text-muted);flex-direction:column;align-items:center;gap:12px;padding:40px;display:flex}.macro-spinner{border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite macroSpin}@keyframes macroSpin{to{transform:rotate(360deg)}}.macro-error{color:#ef4444;background:#ef444414;border-radius:6px;padding:8px 12px;font-size:13px}.macro-empty{color:var(--text-muted);text-align:center;padding:16px;font-size:13px}.macro-content{flex-direction:column;gap:28px;display:flex}.macro-section{flex-direction:column;gap:10px;display:flex}.macro-section-header{border-bottom:1px solid var(--border-color);align-items:center;gap:8px;padding-bottom:6px;display:flex}.macro-section-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.macro-cards-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;display:grid}@media (max-width:900px){.macro-cards-row{grid-template-columns:1fr}}.macro-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.macro-card-header{flex-direction:column;gap:2px;display:flex}.macro-card-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.macro-card-asof{color:var(--text-muted);font-size:11px}.macro-card-headline{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.macro-card-headline-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:36px;font-weight:800;line-height:1}.macro-card-headline-context{color:var(--text-muted);font-size:11px}.macro-card-sparkline{width:100%;height:60px}.macro-card-stats{border-top:1px solid var(--border-color);grid-template-columns:1fr 1fr;gap:4px 16px;padding-top:8px;display:grid}.macro-card-stat{justify-content:space-between;align-items:baseline;gap:8px;font-size:12px;display:flex}.macro-card-stat-label{color:var(--text-muted)}.macro-card-stat-value{font-variant-numeric:tabular-nums;font-weight:600}.macro-card-source{color:var(--text-muted);margin-top:4px;font-size:11px}.macro-card-source a{color:var(--accent-color);text-decoration:none}.macro-card-source a:hover{text-decoration:underline}.macro-indicators-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.macro-indicators-grid.wide{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.macro-indicator-card{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:default;border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.macro-indicator-card.wide{gap:8px}.macro-indicator-card-header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.macro-indicator-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.macro-indicator-value{color:var(--text-primary);font-size:22px;font-weight:700;line-height:1.15}.macro-indicator-date{color:var(--text-muted);white-space:nowrap;font-size:11px}.macro-indicator-sparkline{width:100%;height:56px}.macro-indicator-sparkline-empty{height:56px;color:var(--text-muted);justify-content:center;align-items:center;font-size:11px;display:flex}.macro-indicator-changes{border-top:1px solid var(--border-color);grid-template-columns:1fr 1fr;gap:4px 12px;margin-top:4px;padding-top:6px;display:grid}.macro-indicator-card:not(.wide) .macro-indicator-changes{flex-direction:column;display:flex}.macro-indicator-change-row{align-items:baseline;gap:8px;font-size:12px;display:flex}.macro-indicator-change-period{color:var(--text-muted);flex-shrink:0;width:24px}.macro-indicator-change-value{font-weight:600}.macro-gauge-row{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.macro-derived-row{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:4px;display:grid}.macro-gauge{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:5px;padding:12px 14px;transition:border-color .15s;display:flex;position:relative}.macro-gauge.gauge-highlighted{border-color:var(--accent-color)}.macro-gauge.derived{border-left:3px solid var(--accent-color);background:#6366f108}.macro-gauge.empty .gauge-value{color:var(--text-muted)}.has-hover-tip{cursor:default;position:relative}.has-hover-tip:after{content:attr(data-tooltip);z-index:100;background:var(--bg-primary);width:max(260px,100%);max-width:360px;color:var(--text-secondary);border:1px solid var(--border-color);white-space:pre-line;pointer-events:none;opacity:0;border-radius:8px;padding:10px 12px;font-size:11.5px;line-height:1.55;transition:opacity .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000040}.has-hover-tip:hover:after{opacity:1}.macro-gauge-row>.has-hover-tip:nth-child(-n+3):after,.macro-derived-row>.has-hover-tip:after{top:calc(100% + 8px);bottom:auto}.macro-info-icon{color:var(--text-muted);cursor:default;opacity:.4;-webkit-user-select:none;user-select:none;font-size:13px;transition:opacity .15s;position:relative}.macro-info-icon:hover{opacity:1}.macro-info-icon:after{content:attr(data-tooltip);z-index:100;background:var(--bg-primary);width:320px;max-width:90vw;color:var(--text-secondary);border:1px solid var(--border-color);text-transform:none;letter-spacing:0;white-space:normal;pointer-events:none;opacity:0;border-radius:8px;padding:10px 12px;font-size:11.5px;font-weight:400;line-height:1.55;transition:opacity .15s;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 4px 20px #00000040}.macro-info-icon:hover:after{opacity:1}.gauge-bias-badge{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:3px;flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:700}.bias-bullish{color:#22c55e;background:#22c55e1a}.bias-bearish{color:#ef4444;background:#ef44441a}.bias-mixed{color:#eab308;background:#eab3081a}.bias-neutral{color:var(--text-muted);background:var(--bg-tertiary)}.gauge-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600;line-height:1.2}.gauge-value{font-variant-numeric:tabular-nums;color:var(--text-primary);font-size:22px;font-weight:800;line-height:1}.gauge-value.gauge-na{font-size:16px}.gauge-changes{font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:11px;display:flex}.gauge-sep{color:var(--text-muted);font-size:10px}.leading-indicators .macro-section-header{gap:10px}.leading-refresh{border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:2px 8px;font-size:13px;line-height:1}.leading-refresh:hover:not(:disabled){color:var(--text-primary);border-color:var(--text-muted)}.leading-refresh:disabled{opacity:.4;cursor:not-allowed}.leading-tally{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.leading-tally-chip{font-variant-numeric:tabular-nums;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.leading-tally-meta{color:var(--text-muted);font-size:11px}.leading-tab-bar{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;flex-wrap:wrap;gap:2px;padding:3px;display:flex}.leading-tab-bar button{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;flex:1;padding:7px 14px;font-size:12px;font-weight:600;transition:background .15s,color .15s}.leading-tab-bar button:hover{color:var(--text-primary);background:var(--bg-secondary)}.leading-tab-bar button.active{background:var(--accent-color,#6366f1);color:#fff}.leading-tab-description{color:var(--text-muted);padding:2px 4px;font-size:12px;line-height:1.5}.leading-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.leading-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;gap:8px;min-width:0;padding:12px 14px;display:flex}.leading-card-header{flex-direction:column;gap:4px;display:flex}.leading-card-title-row{align-items:center;gap:6px;display:flex}.leading-card-title{color:var(--text-secondary);text-transform:none;letter-spacing:0;font-size:12px;font-weight:700;line-height:1.3}.leading-card-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.leading-card-source{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px}.leading-signal-pill{text-transform:uppercase;letter-spacing:.04em;border-radius:10px;padding:2px 7px;font-size:10px;font-weight:700}.leading-card-value-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.leading-card-value{font-variant-numeric:tabular-nums;font-size:24px;font-weight:800;line-height:1}.leading-card-change{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:11px}.leading-card-change-label{color:var(--text-muted)}.leading-card-footer{border-top:1px solid var(--border-color);flex-direction:column;gap:2px;padding-top:6px;display:flex}.leading-card-interp{color:var(--text-primary);font-size:11px;line-height:1.4}.leading-card-asof{color:var(--text-muted);font-size:10px}@media (max-width:900px){.leading-grid{grid-template-columns:1fr}.leading-tab-bar button{padding:6px 8px;font-size:11px}}.gauge-signal{text-transform:uppercase;letter-spacing:.03em;margin-top:2px;font-size:11px;font-weight:700}.signal-ok{color:#22c55e}.signal-warn{color:#eab308}.signal-danger{color:#ef4444}.gauge-range{margin-top:4px}.gauge-range-bar{background:var(--border-color);border-radius:2px;height:3px;position:relative;overflow:visible}.gauge-range-fill{opacity:.5;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:2px;height:100%}.gauge-range-marker{background:var(--text-primary);border-radius:1px;width:5px;height:9px;position:absolute;top:-3px;transform:translate(-50%)}.gauge-range-labels{color:var(--text-muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:2px;font-size:9px;display:flex}.gauge-zscore{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:1px;font-size:10px}.zscore-hot{color:#ef4444;font-weight:600}.zscore-cold{color:#3b82f6;font-weight:600}.zscore-legend{color:var(--text-muted);gap:14px;margin-bottom:2px;font-size:11px;display:flex}.zscore-legend-item{align-items:center;gap:4px;display:flex}.zscore-swatch{border-radius:50%;width:8px;height:8px;display:inline-block}.zscore-swatch.cold{background:#3b82f6}.zscore-swatch.neutral{background:var(--text-muted);opacity:.5}.zscore-swatch.hot{background:#ef4444}.zscore-chart{flex-direction:column;gap:4px;display:flex}.zscore-row{cursor:default;grid-template-columns:70px 1fr 58px;align-items:center;gap:8px;display:grid}.zscore-label{color:var(--text-secondary);text-align:right;font-size:11px;font-weight:600}.zscore-bar-container{height:16px;position:relative}.zscore-bar-bg{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;position:absolute;inset:0;overflow:hidden}.zscore-zone{position:absolute;top:0;bottom:0}.zscore-zone-cold{background:#3b82f60f;width:25%;left:0}.zscore-zone-hot{background:#ef44440f;width:25%;right:0}.zscore-midline{background:var(--text-muted);opacity:.2;width:1px;position:absolute;top:0;bottom:0;left:50%}.zscore-dot{background:var(--text-muted);border-radius:50%;width:10px;height:10px;transition:left .3s;position:absolute;top:50%;transform:translate(-50%,-50%)}.zscore-dot.hot{background:#ef4444}.zscore-dot.cold{background:#3b82f6}.zscore-dot.extreme.hot{box-shadow:0 0 5px 1px #ef444466}.zscore-dot.extreme.cold{box-shadow:0 0 5px 1px #3b82f666}.zscore-value{font-variant-numeric:tabular-nums;color:var(--text-muted);text-align:right;font-size:11px;font-weight:600}.corr-tab-selector{gap:4px;margin-bottom:6px;display:flex}.corr-tab-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:12px;font-weight:600;transition:all .15s}.corr-tab-btn.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.corr-tab-btn:hover:not(.active){background:var(--bg-hover)}.corr-legend{color:var(--text-muted);gap:14px;margin-bottom:6px;font-size:11px;display:flex}.corr-swatch{vertical-align:middle;border-radius:2px;width:12px;height:12px;margin-right:3px;display:inline-block}.macro-corr-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px;display:grid}.corr-pair{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:default;border-radius:4px;justify-content:space-between;align-items:center;gap:6px;padding:4px 10px;display:flex}.corr-pair-labels{color:var(--text-secondary);flex:1;align-items:center;gap:3px;min-width:0;font-size:11px;display:flex}.corr-ticker{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.corr-vs{color:var(--text-muted);opacity:.6;flex-shrink:0;font-size:9px}.corr-pair-value{font-variant-numeric:tabular-nums;border-radius:3px;flex-shrink:0;padding:1px 8px;font-size:12px;font-weight:700}.gauge-date{color:var(--text-muted);margin-top:2px;font-size:10px}.sector-heatmap-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px;display:grid}.sector-heatmap-cell{border:1px solid var(--border-color);border-radius:6px;flex-direction:column;gap:3px;padding:10px 12px;transition:border-color .15s;display:flex}.sector-heatmap-cell.sector-positive{background:rgba(34,197,94,calc(.05 + var(--sector-intensity)*.15));border-color:rgba(34,197,94,calc(.1 + var(--sector-intensity)*.3))}.sector-heatmap-cell.sector-negative{background:rgba(239,68,68,calc(.05 + var(--sector-intensity)*.15));border-color:rgba(239,68,68,calc(.1 + var(--sector-intensity)*.3))}.sector-name{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.sector-change{font-variant-numeric:tabular-nums;font-size:16px;font-weight:800}.sector-sort-controls{gap:4px;margin-bottom:8px;display:flex}.sector-period-tabs{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:8px;display:flex}.sector-period-tabs .sector-sort-controls{margin-bottom:0;margin-left:auto}.sector-period-btn{flex-direction:column;align-items:center;gap:1px;padding:4px 10px;line-height:1.15;display:inline-flex}.sector-period-btn .period-label{font-size:12px;font-weight:700}.sector-period-btn .period-hint{opacity:.75;font-variant-numeric:tabular-nums;font-size:9px;font-weight:500}.sector-period-btn.active .period-hint{opacity:.9}.sector-range-subtitle{color:var(--text-secondary);font-variant-numeric:tabular-nums;margin-left:4px;font-size:13px;font-weight:600}.sector-expand-icon-spacer{flex-shrink:0;width:12px;height:12px}.sector-drilldown-row.no-drilldown{cursor:default}.sector-drilldown-row.no-drilldown:hover{background:0 0}.macro-section-subtitle{color:var(--text-muted);margin-left:2px;font-size:11px;font-weight:500}.sector-drilldown-list{flex-direction:column;gap:2px;display:flex}.sector-drilldown-item{border-radius:6px;overflow:hidden}.sector-drilldown-row{cursor:pointer;border:1px solid var(--border-color);border-radius:6px;align-items:center;gap:10px;padding:8px 12px;transition:background .15s,border-color .15s;display:flex}.sector-drilldown-row:hover{background:var(--bg-hover)}.sector-drilldown-row.sector-positive{background:rgba(34,197,94,calc(.03 + var(--sector-intensity)*.1));border-color:rgba(34,197,94,calc(.1 + var(--sector-intensity)*.2))}.sector-drilldown-row.sector-negative{background:rgba(239,68,68,calc(.03 + var(--sector-intensity)*.1));border-color:rgba(239,68,68,calc(.1 + var(--sector-intensity)*.2))}.sector-drilldown-row .sector-name{flex:1;min-width:0;font-size:13px}.sector-drilldown-row .sector-change{flex-shrink:0;font-size:13px;font-weight:700}.sector-pe{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;min-width:60px;font-size:11px}.sector-expand-icon{opacity:.5;flex-shrink:0;transition:transform .2s}.sector-expand-icon.expanded{transform:rotate(180deg)}.industry-list{flex-direction:column;gap:1px;padding:0 0 4px 26px;display:flex}.industry-row{color:var(--text-secondary);border-left:2px solid var(--border-color);align-items:center;gap:10px;padding:4px 12px;font-size:12px;display:flex}.industry-row:hover{background:var(--bg-hover)}.industry-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.industry-row .sector-change{font-size:12px;font-weight:600}.industry-row .sector-pe{font-size:10px}.ec-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.ec-header h3{margin:0}.ec-controls{align-items:center;gap:12px;display:flex}.ec-view-toggle{background:var(--bg-tertiary);border-radius:6px;padding:2px;display:flex}.ec-view-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 12px;font-size:12px;font-weight:600;transition:all .15s}.ec-view-btn.active{background:var(--accent);color:#fff}.ec-view-btn:hover:not(.active){color:var(--text-primary)}.ec-filter-toggle{color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:flex}.ec-filter-toggle input{accent-color:var(--accent)}.ec-nav{align-items:center;gap:8px;margin-bottom:12px;display:flex}.ec-nav-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:13px;font-weight:600;transition:all .15s}.ec-nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.ec-today-btn{font-size:11px}.ec-nav-label{color:var(--text-primary);text-align:center;flex:1;font-size:14px;font-weight:600}.ec-loading{text-align:center;color:var(--text-muted);padding:20px;font-size:13px}.ec-week-grid{grid-template-columns:repeat(7,1fr);gap:4px;min-height:120px;display:grid}.ec-day-col{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;flex-direction:column;min-height:90px;padding:6px;display:flex}.ec-day-col.ec-day-today{border-color:var(--accent);background:#6366f10d}.ec-day-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:4px;display:flex}.ec-day-name{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.ec-day-num{color:var(--text-primary);font-size:14px;font-weight:700}.ec-day-today .ec-day-num{color:var(--accent)}.ec-day-events{flex-direction:column;flex:1;gap:3px;display:flex}.ec-badge{white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:10px;display:flex;overflow:hidden}.ec-badge-earnings{color:#f97316;background:#f9731626;border:1px solid #f9731640}.ec-badge-dividend{color:#22c55e;background:#22c55e26;border:1px solid #22c55e40}.ec-badge-split{color:#3b82f6;background:#3b82f626;border:1px solid #3b82f640}.ec-badge-macro{color:#a855f7;background:#a855f726;border:1px solid #a855f740}.ec-badge-ticker{font-weight:700}.ec-badge-detail{opacity:.8;text-overflow:ellipsis;font-weight:400;overflow:hidden}.ec-more{color:var(--text-muted);padding:2px 6px;font-size:10px}.ec-month-grid{flex-direction:column;gap:2px;display:flex}.ec-month-header-row{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.ec-month-day-header{color:var(--text-muted);text-transform:uppercase;text-align:center;padding:4px;font-size:10px;font-weight:700}.ec-month-week-row{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.ec-month-cell{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;flex-direction:column;gap:1px;min-height:32px;padding:3px 5px;display:flex}.ec-month-cell.ec-cell-empty{background:0 0;border-color:#0000}.ec-month-cell.ec-day-today{border-color:var(--accent);background:#6366f10d}.ec-cell-day{color:var(--text-secondary);font-size:11px;font-weight:600}.ec-day-today .ec-cell-day{color:var(--accent)}.ec-cell-events{flex-wrap:wrap;gap:3px;display:flex}.ec-cell-dot{border-radius:50%;width:8px;height:8px}.ec-dot-earnings{background:#f97316}.ec-dot-dividend{background:#22c55e}.ec-dot-split{background:#3b82f6}.ec-dot-macro{background:#a855f7}.ec-cell-more{color:var(--text-muted);font-size:9px}.ec-legend{border-top:1px solid var(--border-color);color:var(--text-muted);gap:16px;margin-top:10px;padding-top:8px;font-size:11px;display:flex}.ec-legend-item{align-items:center;gap:5px;display:flex}.ec-legend-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.ec-day-col-btn,.ec-month-cell-btn{font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background .12s,border-color .12s}.ec-day-col-btn{background:var(--bg-tertiary)}.ec-day-col-btn:hover,.ec-month-cell-btn:hover{background:var(--bg-hover)}.ec-day-col-btn.ec-day-selected,.ec-month-cell-btn.ec-day-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)inset}.ec-day-popover{background:var(--bg-secondary);border:1px solid var(--border-color);z-index:10001;border-radius:10px;flex-direction:column;width:320px;max-height:400px;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 32px #00000080}.ec-day-popover-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.ec-day-popover-date{color:var(--text-primary);font-size:12px;font-weight:700}.ec-day-popover-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:18px;line-height:1}.ec-day-popover-close:hover{color:var(--text-primary)}.ec-day-popover-body{flex-direction:column;gap:8px;padding:8px;display:flex;overflow-y:auto}.ec-day-popover-empty{text-align:center;color:var(--text-muted);padding:16px;font-size:12px}.ec-pop-event{border:1px solid var(--border-color);background:var(--bg-tertiary);border-radius:6px;padding:8px}.ec-pop-event-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ec-pop-event-name{color:var(--text-primary);font-size:11px;font-weight:600}.ec-pop-event-stats{color:var(--text-secondary);flex-wrap:wrap;gap:8px 12px;margin-top:6px;font-size:11px;display:flex}.ec-pop-event-stats strong{color:var(--text-muted);font-weight:600}.ec-pop-event-explain{color:var(--text-muted);margin-top:6px;font-size:11px;line-height:1.4}.collapsible-section{overflow:hidden}.collapsible-header{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding-bottom:4px;display:flex}.collapsible-header h3{margin:0;font-size:15px}.collapse-icon{color:var(--text-muted);border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;font-size:18px;font-weight:700;transition:background .15s;display:flex}.collapsible-header:hover .collapse-icon{background:var(--bg-hover)}.peers-chips{flex-wrap:wrap;gap:6px;padding-top:8px;display:flex}.peer-chip{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--accent);letter-spacing:.02em;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.peer-comparison-table-container{background:var(--bg-secondary);border-radius:12px;grid-column:1/-1;padding:20px}.peer-comparison-loading{background:var(--bg-secondary);color:var(--text-secondary);border-radius:12px;flex-direction:column;grid-column:1/-1;align-items:center;gap:8px;padding:20px;font-size:13px;display:flex}.peer-comparison-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.peer-comparison-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}.peer-comparison-table th,.peer-comparison-table td{text-align:right;border-bottom:1px solid var(--border-color);padding:7px 12px}.peer-comparison-table th:first-child,.peer-comparison-table td:first-child{text-align:left;z-index:2;background:var(--bg-secondary);position:sticky;left:0}.peer-metric-header{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);min-width:120px;font-size:11px;font-weight:600}.peer-ticker-header{vertical-align:top;min-width:100px;max-width:140px;font-weight:600}.peer-ticker-header .peer-ticker-name{color:var(--text-primary);font-size:13px;display:block}.peer-ticker-header .peer-company-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:130px;font-size:10px;font-weight:400;display:block;overflow:hidden}.peer-ticker-header.peer-main-stock{background:#6366f114}.peer-ticker-header.peer-main-stock .peer-ticker-name{color:var(--accent)}.peer-group-row td{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border-color);background:var(--bg-secondary);padding:10px 12px 4px;font-size:11px;font-weight:700}.peer-metric-label{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500}.peer-metric-label:hover{color:var(--text-primary)}.peer-sort-indicator{color:var(--accent);margin-left:2px;font-size:10px}td.peer-main-stock{background:#6366f10f;font-weight:600}td.peer-best{color:var(--green)}td.peer-worst{color:var(--red)}td.peer-main-stock.peer-best{color:var(--green)}td.peer-main-stock.peer-worst{color:var(--red)}.institutional-summary{color:var(--text-secondary);align-items:center;gap:6px;padding:6px 0;font-size:12px;display:flex}.etf-holdings-list{flex-direction:column;gap:4px;padding-top:8px;display:flex}.etf-holding-row{border-bottom:1px solid #2a2a3a80;justify-content:space-between;align-items:center;gap:12px;padding:5px 0;display:flex}.etf-holding-row:last-child{border-bottom:none}.etf-holding-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.etf-holding-ticker{color:var(--accent);min-width:50px;font-size:12px;font-weight:700}.etf-holding-name{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.etf-holding-weight{flex-shrink:0;align-items:center;gap:8px;width:160px;display:flex}.etf-weight-bar-bg{background:var(--bg-tertiary);border-radius:3px;flex:1;height:6px;overflow:hidden}.etf-weight-bar-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .3s}.etf-weight-value{font-variant-numeric:tabular-nums;color:var(--text-primary);text-align:right;min-width:48px;font-size:12px;font-weight:700}.sec-filings-list{flex-direction:column;gap:0;padding-top:8px;display:flex}.sec-filing-row{border-bottom:1px solid #2a2a3a80;align-items:center;gap:12px;padding:6px 0;font-size:12px;display:flex}.sec-filing-row:last-child{border-bottom:none}.sec-filing-type{color:var(--text-primary);min-width:60px;font-weight:700}.sec-filing-date{color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:90px}.sec-filing-link{color:var(--accent);margin-left:auto;font-weight:500;text-decoration:none}.sec-filing-link:hover{text-decoration:underline}.sec-filing-link.disabled{color:var(--text-muted);cursor:default}.analytics-collapse-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:16px;font-weight:600;display:flex}.analytics-collapse-btn:hover{color:var(--accent-color)}.collapse-chevron{color:var(--text-muted);text-align:center;width:16px;font-size:12px;transition:transform .2s;display:inline-block}.collapse-chevron.open{transform:rotate(90deg)}.gold-verdict{border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:4px;padding:10px 14px;display:flex}.gold-verdict-bullish{background:#22c55e12;border:1px solid #22c55e33}.gold-verdict-bearish{background:#ef444412;border:1px solid #ef444433}.gold-verdict-mixed{background:#eab30812;border:1px solid #eab30833}.gold-verdict-label{color:#fff;font-size:14px;font-weight:500}.gold-verdict-counts{color:#ffffffd9;font-size:12px}.gold-signal-table{font-size:13px}.gold-sig-header-row{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--border-color);grid-template-columns:140px 90px 90px 1fr;gap:8px;padding:6px 10px;font-size:11px;font-weight:600;display:grid}.gold-sig-row{border-bottom:1px solid #ffffff08;grid-template-columns:140px 90px 90px 1fr;align-items:center;gap:8px;padding:7px 10px;transition:background .1s;display:grid;position:relative}.gold-sig-row:hover{background:var(--bg-hover)}.gold-sig-row:after{max-width:400px;top:calc(100% + 4px);bottom:auto;left:10px;transform:none}.gold-sig-col-name{font-weight:500}.gold-sig-col-val code{background:var(--bg-tertiary);border-radius:3px;padding:1px 5px;font-family:SF Mono,monospace;font-size:12px}.gold-sig-col-bias{text-transform:capitalize;font-size:12px;font-weight:600}.gold-sig-badge-bullish{color:#22c55e}.gold-sig-badge-bearish{color:#ef4444}.gold-sig-badge-neutral{color:#6b7280}.gold-sig-col-reason{color:var(--text-secondary);font-size:12px}.gold-miner-table{border-collapse:collapse;width:100%;font-size:13px}.gold-miner-table th{text-align:center;color:var(--text-secondary);border-bottom:1px solid var(--border-color);cursor:default;padding:6px 12px;font-size:12px;font-weight:600;position:relative}.gold-miner-table th:after{top:calc(100% + 4px);bottom:auto}.gold-miner-table td{text-align:center;border-bottom:1px solid #ffffff08;padding:5px 12px}.gold-miner-label{color:var(--text-secondary);cursor:default;font-weight:500;position:relative;text-align:left!important}.gold-miner-label:after{top:calc(100% + 4px);bottom:auto;left:0;transform:none}.gauge-accel{border-radius:3px;margin-top:2px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.accel-up{color:#22c55e;background:#22c55e14}.accel-dn{color:#ef4444;background:#ef444414}.accel-flat{color:var(--text-muted);background:#8080800f}.export-btn{background:var(--accent,#6366f1);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s}.export-btn:hover{background:var(--accent-hover,#4f46e5);transform:translateY(-1px)}@media print{body>:not(.modal-overlay){display:none!important}.modal-overlay{background:0 0!important;position:static!important}.tax-report-modal:not(.printing){display:none!important}.tax-report-modal.printing{width:100%!important;max-width:none!important;max-height:none!important;box-shadow:none!important;border:none!important;border-radius:0!important;margin:0!important;position:static!important;overflow:visible!important}.tax-report-modal.printing,.tax-report-modal.printing *{--text-primary:#1a1a1a;--text-secondary:#555;--bg-secondary:#fff;--bg-tertiary:#f5f5f5;--border-color:#ddd;color:#1a1a1a!important}.tax-report-modal.printing{background:#fff!important}.tax-report-modal.printing .tax-summary-card,.tax-report-modal.printing .harvest-settings,.tax-report-modal.printing .harvest-context,.tax-report-modal.printing .harvest-summary-card,.tax-report-modal.printing .tax-table-container,.tax-report-modal.printing .info-banner{background:#f8f8f8!important;border-color:#ddd!important}.tax-report-modal.printing .tax-summary-card.highlight{border-color:#888!important}.tax-report-modal.printing .positive{color:#16a34a!important}.tax-report-modal.printing .negative{color:#dc2626!important}.tax-report-modal.printing .term-badge.st{color:#92400e!important;background:#eab30826!important}.tax-report-modal.printing .term-badge.lt{color:#166534!important;background:#22c55e26!important}.tax-report-modal.printing .close-btn,.tax-report-modal.printing .export-btn,.tax-report-modal.printing .exclude-btn,.tax-report-modal.printing .include-btn,.tax-report-modal.printing .harvest-settings-toggle,.tax-report-modal.printing .harvest-settings-body,.tax-report-modal.printing .tax-tabs,.tax-report-modal.printing .expand-btn{display:none!important}.tax-report-modal.printing .realized-tab,.tax-report-modal.printing .unrealized-tab,.tax-report-modal.printing .harvesting-tab,.tax-report-modal.printing .washsales-tab{display:block!important}.tax-report-modal.printing .print-section-header{page-break-before:always;border-bottom:2px solid #333;margin:24px 0 12px;padding-bottom:8px;font-size:18px;font-weight:600;display:block!important}.tax-report-modal.printing .realized-tab .print-section-header{page-break-before:auto}.tax-report-modal.printing .tax-table,.tax-report-modal.printing .lot-details-table{border:1px solid #ccc!important}.tax-report-modal.printing .tax-table th{color:#333!important;background:#eee!important;border-bottom:2px solid #999!important}.tax-report-modal.printing .tax-table td{border-bottom:1px solid #ddd!important}.tax-report-modal.printing .tax-report-footer{border-top:1px solid #ccc;margin-top:24px;padding-top:12px;display:block!important}.tax-report-modal.printing .tax-report-footer p{color:#666!important;font-size:11px!important}@page{size:letter portrait;margin:.75in}.tax-report-modal.printing .tax-content{overflow:visible!important}.tax-report-modal.printing .tax-report-header{border-bottom:2px solid #333!important}body:has(.tax-calc-printing)>*{display:block!important}:is(body:has(.tax-calc-printing) .sidebar,body:has(.tax-calc-printing) .portfolio-sidebar){display:none!important}body:has(.tax-calc-printing) .modal-overlay{display:none!important}body:has(.tax-calc-printing) .main-content{max-height:none!important;margin:0!important;padding:0!important;overflow:visible!important}.tax-calc-printing{width:100%!important;position:static!important;overflow:visible!important}.tax-calc-printing [class*=subTabs],.tax-calc-printing [class*=headerActions]{display:none!important}.tax-calc-printing,.tax-calc-printing *{--text-primary:#1a1a1a;--text-secondary:#555;--text-muted:#777;--bg-primary:#fff;--bg-secondary:#fff;--bg-tertiary:#f5f5f5;--border-color:#ddd;--green:#16a34a;--red:#dc2626;color:#1a1a1a!important}.tax-calc-printing{background:#fff!important}.tax-calc-printing [class*=statCard],.tax-calc-printing [class*=section],.tax-calc-printing [class*=chartCard]{box-shadow:none!important;background:#f8f8f8!important;border-color:#ddd!important}.tax-calc-printing .positive{color:#16a34a!important}.tax-calc-printing .negative{color:#dc2626!important}.tax-calc-printing .recharts-responsive-container,.tax-calc-printing [class*=chartsRow],.tax-calc-printing [class*=withholdingBar],.tax-calc-printing [class*=safeHarborRing]{display:none!important}}.wgc-charts{flex-direction:column;gap:16px;margin-top:14px;display:flex}.wgc-chart-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.wgc-chart-card{background:var(--bg-secondary,#161625);border:1px solid var(--border-color,#2a2a3e);border-radius:10px;padding:14px 16px}.wgc-chart-card.wgc-chart-wide{grid-column:1/-1}.wgc-chart-title{color:var(--text-primary,#e0e0e0);align-items:center;margin-bottom:2px;font-size:13px;font-weight:600;display:flex}.wgc-chart-subtitle{color:var(--text-muted,#888);margin-bottom:10px;font-size:11px;line-height:1.4}.wgc-charts .recharts-text{fill:var(--text-muted,#888)}.wgc-charts .recharts-legend-item-text{color:var(--text-muted,#aaa)!important;font-size:10px!important}.wgc-charts .recharts-label{fill:var(--text-muted,#aaa);font-size:10px}.wgc-charts .recharts-pie-label-text{fill:var(--text-muted,#ccc);font-size:10px}.wgc-metrics-strip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:4px;display:grid}.wgc-metric-card{background:var(--bg-secondary,#161625);border:1px solid var(--border-color,#2a2a3e);border-radius:8px;padding:10px 14px;position:relative}.wgc-metric-label{color:var(--text-muted,#888);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:10px;font-weight:500}.wgc-metric-value{color:var(--text-primary,#e0e0e0);font-size:18px;font-weight:700;line-height:1.2}.wgc-metric-value.wgc-metric-accent{color:var(--accent-color,#d4a843)}.wgc-metric-sub{color:var(--text-muted,#888);margin-top:2px;font-size:11px}.wgc-tip{color:var(--text-muted);cursor:default;opacity:.4;-webkit-user-select:none;user-select:none;margin-left:6px;font-size:13px;font-weight:400;transition:opacity .15s;position:relative}.wgc-tip:hover{opacity:1}.wgc-tip:after{content:attr(data-tooltip);z-index:100;background:var(--bg-primary);width:320px;max-width:90vw;color:var(--text-secondary);border:1px solid var(--border-color);white-space:pre-line;pointer-events:none;opacity:0;border-radius:8px;padding:10px 12px;font-size:11.5px;font-weight:400;line-height:1.55;transition:opacity .15s;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 4px 20px #00000040}.wgc-tip:hover:after{opacity:1}.wgc-metrics-strip .has-hover-tip:after{top:calc(100% + 8px);bottom:auto}@media (max-width:800px){.wgc-chart-row{grid-template-columns:1fr}.wgc-metrics-strip{grid-template-columns:repeat(2,1fr)}}.financial-statements{padding-top:8px}.financial-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.financial-period-toggle,.financial-tab-bar{background:var(--bg-tertiary);border-radius:6px;padding:2px;display:flex}.financial-period-toggle button,.financial-tab-bar button{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:5px 12px;font-size:12px;font-weight:500;transition:all .15s}.financial-period-toggle button:hover,.financial-tab-bar button:hover{color:var(--text-primary)}.financial-period-toggle button.active,.financial-tab-bar button.active{background:var(--accent);color:#fff}.financial-table-scroll{margin:0 -4px;padding:0 4px;overflow-x:auto}.financial-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.financial-table thead th{background:var(--bg-secondary);text-align:right;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap;padding:6px 10px;font-weight:600;position:sticky;top:0}.financial-table thead th.financial-label-col{text-align:left;min-width:160px}.financial-table tbody td{text-align:right;white-space:nowrap;border-bottom:1px solid #2a2a3a66;padding:5px 10px}.financial-table tbody td.financial-label-col{text-align:left;color:var(--text-secondary);font-weight:500}.financial-row-bold td{color:var(--text-primary);font-weight:600}.financial-row-bold td.financial-label-col{color:var(--text-primary)}.financial-value{display:block}.financial-growth{margin-top:1px;font-size:10px;font-weight:500;display:block}.financial-growth.positive{color:var(--green)}.financial-growth.negative{color:var(--red)}.valuation-chart-container{padding-top:8px}.valuation-summary-row{margin-bottom:10px}.valuation-badge{border-radius:4px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.valuation-undervalued{background:var(--green-bg);color:var(--green)}.valuation-below-avg{color:#6ee7a0;background:#22c55e0f}.valuation-fair{color:var(--yellow);background:#eab3081a}.valuation-above-avg{color:#f87171;background:#ef44440f}.valuation-overvalued{background:var(--red-bg);color:var(--red)}.valuation-toggles{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.valuation-toggle{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;transition:all .15s;display:flex}.valuation-toggle.active{border-color:var(--accent);color:var(--text-primary)}.valuation-toggle input{display:none}.valuation-toggle-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.valuation-summary-table-scroll{margin-top:12px;overflow-x:auto}.valuation-summary-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.valuation-summary-table th{text-align:right;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap;padding:6px 10px;font-weight:600}.valuation-summary-table th:first-child{text-align:left}.valuation-summary-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #2a2a3a66;padding:5px 10px}.valuation-summary-table td:first-child{text-align:left}.valuation-metric-name{color:var(--text-primary);font-weight:600}.tech-indicators-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;padding-top:12px;display:grid}.tech-indicator-card{background:var(--bg-tertiary);border-radius:8px;padding:12px}.tech-indicator-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.tech-indicator-name{color:var(--text-primary);font-size:13px;font-weight:600}.tech-indicator-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.tech-indicator-badge.bullish{background:var(--green-bg);color:var(--green)}.tech-indicator-badge.bearish{background:var(--red-bg);color:var(--red)}.tech-indicator-badge.neutral{color:var(--accent);background:#6366f11a}.tech-indicator-values{flex-direction:column;gap:4px;display:flex}.tech-indicator-row{justify-content:space-between;align-items:center;font-size:12px;display:flex}.tech-indicator-label{color:var(--text-secondary)}.tech-indicator-value{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:500}.tech-indicator-gauge{margin-top:8px}.tech-gauge-track{background:var(--bg-hover);border-radius:2px;height:4px;overflow:hidden}.tech-gauge-fill{border-radius:2px;height:100%;transition:width .3s}.rating-sub-scores{flex-wrap:wrap;gap:8px;padding-top:10px;display:flex}.rating-sub-badge{background:var(--bg-tertiary);border-radius:6px;flex-direction:column;align-items:center;min-width:60px;padding:6px 12px;display:flex}.rating-sub-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.rating-sub-score{margin-top:2px;font-size:14px;font-weight:700}.rating-sub-rec{color:var(--text-secondary);margin-top:1px;font-size:10px}.insider-trading-panel{padding-top:8px}.insider-summary-bar{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0 10px;font-size:12px;display:flex}.insider-summary-bar .gauge-sep{color:var(--text-muted)}.insider-sentiment-bullish{color:var(--green);font-weight:600}.insider-sentiment-bearish{color:var(--red);font-weight:600}.insider-sentiment-neutral{color:var(--text-secondary)}.insider-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.insider-title-cell{text-overflow:ellipsis;white-space:nowrap;max-width:100px;color:var(--text-muted);font-size:11px;overflow:hidden}.insider-type-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.insider-type-badge.buy{background:var(--green-bg);color:var(--green);border:1px solid #22c55e40}.insider-type-badge.sell{background:var(--red-bg);color:var(--red);border:1px solid #ef444440}.cluster-buy-badge{letter-spacing:.03em;background:var(--green-bg);color:var(--green);vertical-align:middle;border:1px solid #22c55e40;border-radius:4px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.insider-trading-panel .lots-table{font-size:12px}.insider-trading-panel .lots-table th{font-size:11px}.health-scorecard{flex-direction:column;gap:16px;padding-top:8px;display:flex}.health-composite{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex}.composite-grade{font-size:48px;font-weight:900;line-height:1}.composite-label{color:var(--text-muted);margin-top:4px;font-size:12px;font-weight:500}.health-dimensions{flex-direction:column;gap:6px;display:flex}.health-dimension{background:var(--bg-tertiary);border-radius:6px;align-items:center;gap:12px;padding:8px 10px;display:flex}.dimension-grade{text-align:center;min-width:32px;font-size:20px;font-weight:800;line-height:1}.dimension-info{flex-direction:column;gap:1px;display:flex}.dimension-label{color:var(--text-primary);font-size:13px;font-weight:600}.dimension-explanation{color:var(--text-muted);font-size:11px}.grade-A .composite-grade,.grade-A.dimension-grade{color:#22c55e}.grade-B .composite-grade,.grade-B.dimension-grade{color:#86efac}.grade-C .composite-grade,.grade-C.dimension-grade{color:#eab308}.grade-D .composite-grade,.grade-D.dimension-grade{color:#f97316}.grade-F .composite-grade,.grade-F.dimension-grade{color:#ef4444}.health-composite.grade-A{border-color:#22c55e4d}.health-composite.grade-B{border-color:#86efac4d}.health-composite.grade-C{border-color:#eab3084d}.health-composite.grade-D{border-color:#f973164d}.health-composite.grade-F{border-color:#ef44444d}.health-activity-row{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:20px;display:grid}.analyst-activity-card{flex-direction:column;display:flex}.analyst-activity-feed{flex-direction:column;gap:0;padding-top:8px;display:flex}@media (max-width:750px){.health-activity-row{grid-template-columns:1fr}.analyst-activity-card{max-height:none;overflow:visible}}.analyst-grade-row{border-bottom:1px solid #2a2a3a80;align-items:center;gap:10px;padding:7px 0;font-size:12px;display:flex}.analyst-grade-row:last-child{border-bottom:none}.analyst-grade-date{min-width:80px;color:var(--text-muted);font-variant-numeric:tabular-nums}.analyst-grade-firm{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;min-width:120px;max-width:180px;font-weight:600;overflow:hidden}.analyst-grade-change{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.analyst-grade-prev,.analyst-grade-arrow{color:var(--text-muted);font-size:11px}.analyst-grade-new{color:var(--text-primary);font-size:11px;font-weight:600}.analyst-change-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.analyst-change-badge.upgrade{background:var(--green-bg);color:var(--green);border:1px solid #22c55e40}.analyst-change-badge.downgrade{background:var(--red-bg);color:var(--red);border:1px solid #ef444440}.analyst-change-badge.initiation{color:var(--accent);background:#6366f11a;border:1px solid #6366f140}.analyst-change-badge.reiteration{background:var(--bg-tertiary);color:var(--text-muted);border:1px solid var(--border-color)}.ownership-table-container{padding-top:8px}.ownership-table-container .lots-table{font-size:12px}.ownership-table-container .lots-table th{font-size:11px}.ownership-form-badge{letter-spacing:.03em;color:var(--accent);background:#6366f11a;border:1px solid #6366f133;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.rating-badge{letter-spacing:.02em;font-size:14px;font-weight:700}.trend-arrow{font-size:14px;font-weight:700}.trend-arrow.trend-up{color:var(--green)}.trend-arrow.trend-down{color:var(--red)}.analyst-summary{color:var(--text-secondary);white-space:nowrap;font-size:12px;font-weight:500}.fund-holdings-subtitle{color:var(--text-secondary);margin-bottom:12px;font-size:12px}.fund-holdings-list{flex-direction:column;display:flex}.fund-holding-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.fund-holding-row:last-child{border-bottom:none}.fund-holding-info{flex-direction:column;flex:1;min-width:0;display:flex}.fund-holding-ticker{color:var(--accent);font-size:13px;font-weight:600}.fund-holding-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.fund-holding-stats{flex-shrink:0;align-items:center;gap:16px;display:flex}.fund-holding-value{color:var(--text-secondary);text-align:right;min-width:80px;font-size:12px}.fund-holding-weight{align-items:center;gap:8px;min-width:120px;display:flex}.fund-weight-bar-bg{background:var(--bg-tertiary);border-radius:3px;flex:1;height:6px;overflow:hidden}.fund-weight-bar-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .3s}.fund-weight-value{color:var(--text-primary);text-align:right;min-width:48px;font-size:12px;font-weight:500}.transcript-container{padding-top:8px}.transcript-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.transcript-selector{align-items:center;gap:10px;display:flex}.transcript-quarter-select{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:6px;outline:none;padding:5px 10px;font-size:13px;font-weight:500}.transcript-quarter-select:focus{border-color:var(--accent)}.transcript-date-label{color:var(--text-muted);font-size:12px}.transcript-search{align-items:center;gap:8px;display:flex}.transcript-search-input{background:var(--bg-tertiary);width:180px;color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;outline:none;padding:5px 10px;font-size:13px}.transcript-search-input:focus{border-color:var(--accent)}.transcript-search-input::placeholder{color:var(--text-muted)}.transcript-match-count{color:var(--text-muted);white-space:nowrap;font-size:11px}.transcript-content{max-height:400px;color:var(--text-primary);padding:8px 0;font-size:13px;line-height:1.65;overflow-y:auto}.transcript-section{margin-bottom:12px}.transcript-section p{white-space:pre-wrap;margin:0}.transcript-operator{border-left:3px solid var(--border-color);padding-left:10px}.transcript-operator .transcript-speaker-label{color:var(--text-muted);font-size:12px;font-style:italic;font-weight:600}.transcript-operator p{color:var(--text-muted);font-style:italic}.transcript-speaker{border-left:3px solid var(--accent);padding-left:10px}.transcript-speaker-label{color:var(--text-primary);text-transform:capitalize;margin-bottom:2px;font-size:12px;font-weight:700;display:block}.transcript-qa-separator{text-align:center;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);letter-spacing:.03em;color:var(--text-primary);margin:16px 0;padding:8px 0;font-size:13px;font-weight:700}.transcript-highlight{background:#ffc80059;border-radius:2px;padding:1px 2px}.inst-deep-dive{padding-top:8px}.inst-summary-bar{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0 12px;font-size:12px;display:flex}.inst-summary-bar .gauge-sep{color:var(--text-muted)}.inst-section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #2a2a3a80;margin:12px 0 6px;padding-bottom:4px;font-size:12px;font-weight:700}.inst-deep-dive .lots-table{font-size:12px}.inst-deep-dive .lots-table th{font-size:11px}.inst-holder-name{text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-weight:500;overflow:hidden}.inst-changes-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;display:grid}@media (max-width:600px){.inst-changes-grid{grid-template-columns:1fr}}.inst-changes-col{flex-direction:column;gap:2px;display:flex}.inst-change-row{background:var(--bg-tertiary);border-radius:4px;justify-content:space-between;align-items:center;padding:5px 8px;font-size:12px;display:flex}.inst-change-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;color:var(--text-primary);font-weight:500;overflow:hidden}.inst-change-detail{font-variant-numeric:tabular-nums;font-weight:600}.inst-change-pct{opacity:.8;font-size:11px;font-weight:400}.inst-arrow-up{color:var(--green);margin-right:4px;font-size:10px}.inst-arrow-down{color:var(--red);margin-right:4px;font-size:10px}.smart-money-card{grid-column:1/-1;overflow:hidden}.smart-money-card h3{margin-bottom:4px}.sm-content{grid-template-columns:auto 1fr;align-items:start;gap:12px;padding-top:4px;display:grid}.sm-gauge-section{flex-direction:column;flex-shrink:0;align-items:center;gap:0;display:flex}.sm-label{letter-spacing:.02em;text-align:center;border-radius:6px;padding:4px 12px;font-size:14px;font-weight:700}.sm-label-strong-buy{color:#22c55e;background:#22c55e1f;border:1px solid #22c55e4d}.sm-label-bullish{color:#86efac;background:#86efac1a;border:1px solid #86efac40}.sm-label-neutral{color:#eab308;background:#eab3081a;border:1px solid #eab30840}.sm-label-bearish{color:#f97316;background:#f973161a;border:1px solid #f9731640}.sm-label-strong-sell{color:#ef4444;background:#ef44441a;border:1px solid #ef444440}.sm-signals-section{flex-direction:column;gap:4px;width:100%;display:flex}.sm-signal-row{background:var(--bg-tertiary);border-radius:5px;align-items:center;gap:10px;padding:6px 8px;font-size:12px;display:flex}.sm-signal-icon{background:var(--bg-secondary);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:flex}.sm-signal-name{color:var(--text-primary);min-width:110px;font-weight:600}.sm-signal-status{text-transform:uppercase;letter-spacing:.04em;border:1px solid;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700;display:inline-block}.sm-signal-metric{text-align:right;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;overflow:hidden}.sm-summary{color:var(--text-secondary);text-align:center;border-top:1px solid var(--border-color);grid-column:1/-1;width:100%;padding:8px 12px;font-size:12px;line-height:1.4}.skeleton{background:linear-gradient(90deg,#2a2a2e 25%,#3a3a3e 50%,#2a2a2e 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s ease-in-out infinite skeleton-pulse}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.expand-collapse-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:4px 12px;font-size:12px;font-weight:500;transition:background .15s,color .15s}.expand-collapse-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sma-cross-badge{border-radius:4px;align-items:center;gap:6px;padding:2px 8px;font-size:.82em;font-weight:600;display:inline-flex}.sma-cross-badge.golden{color:var(--green);background:#10b9811a}.sma-cross-badge.death{color:var(--red);background:#ef44441a}.sma-cross-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.sma-cross-badge.golden .sma-cross-dot{background:var(--green)}.sma-cross-badge.death .sma-cross-dot{background:var(--red)}.personal-finance{padding:0}.pf-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.pf-header h2{margin:0}.pf-tabs{gap:4px;display:flex}.pf-tab{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:8px 18px;font-size:14px;font-weight:500;transition:all .15s}.pf-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.pf-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.key-stats-inline{border-bottom:1px solid #ffffff14;flex-wrap:wrap;align-items:center;gap:10px 24px;margin-bottom:10px;padding:12px 0 14px;font-size:.92rem;display:flex}.ksi-item{white-space:nowrap;color:#dfe3ea;align-items:center;gap:6px;font-size:.92rem;font-weight:600;display:inline-flex}.ksi-item.ksi-good{color:#4ade80}.ksi-item.ksi-warn{color:#f87171}.ksi-label{color:#7a8394;text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:500}.ksi-up{color:#4ade80;margin-left:2px;font-size:.8em}.ksi-down{color:#f87171;margin-left:2px;font-size:.8em}.ksi-tag{color:#a0a8b4;background:#ffffff14;border-radius:4px;margin-left:3px;padding:2px 6px;font-size:.72rem;font-weight:700}.ksi-tag.warn{color:#f87171;background:#f871711f}.ksi-tag.good{color:#4ade80;background:#4ade801f}.ksi-tag.dim{color:#7a8394}.ksi-range{gap:8px}.ksi-range-track{vertical-align:middle;background:#2a2f3a;border-radius:3px;width:60px;height:5px;display:inline-block;overflow:hidden}.ksi-range-fill{background:linear-gradient(90deg,var(--green),var(--yellow),var(--red));border-radius:3px;height:100%;display:block}.ksi-group{flex-wrap:wrap;align-items:center;gap:8px 16px;display:inline-flex}.ksi-divider{background:#ffffff26;width:1px;height:20px;margin:0 4px}.ksi-period-toggle{background:#ffffff0f;border-radius:6px;gap:2px;padding:2px;display:inline-flex}.ksi-period-btn{color:#7a8394;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:600;transition:all .15s}.ksi-period-btn:hover{color:#dfe3ea;background:#ffffff14}.ksi-period-btn.active{color:#dfe3ea;background:#ffffff24}.health-card-compact{padding:12px!important}.health-card-compact h3{margin-bottom:6px;font-size:.9rem}.health-card-compact .health-scorecard{gap:8px}.health-card-compact .health-composite{padding:6px 10px}.health-card-compact .composite-grade{font-size:1.4rem}.health-card-compact .composite-label{font-size:.7rem}.health-card-compact .health-dimension{padding:3px 0}.health-card-compact .dimension-grade{width:22px;height:22px;font-size:.7rem}.health-card-compact .dimension-label{font-size:.78rem}.health-card-compact .dimension-explanation{font-size:.7rem}.fv-container{flex-direction:column;gap:20px;padding-top:12px;display:flex}.fv-header{grid-template-columns:1fr auto;align-items:start;gap:20px;display:grid}.fv-headline{flex-direction:column;gap:4px;display:flex}.fv-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.fv-value{letter-spacing:-.02em;font-size:32px;font-weight:700}.fv-upside{font-size:16px;font-weight:600}.fv-current-price{color:var(--text-secondary);margin-top:2px;font-size:13px}.fv-rating{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;align-items:center;gap:2px;min-width:100px;padding:12px 16px;display:flex}.fv-rating-grade{color:var(--text-primary);font-size:28px;font-weight:800}.fv-rating-rec{color:var(--accent-color);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:600}.fv-rating-score{color:var(--text-secondary);font-size:11px}.fv-section{flex-direction:column;gap:8px;display:flex}.fv-section h4{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin:0;font-size:13px}.fv-table{border-collapse:collapse;width:100%;font-size:13px}.fv-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);padding:8px 12px;font-size:11px}.fv-table td{border-bottom:1px solid var(--border-color);padding:8px 12px}.fv-table td:nth-child(2),.fv-table td:nth-child(3){text-align:right;font-variant-numeric:tabular-nums}.fv-table th:nth-child(2),.fv-table th:nth-child(3){text-align:right}.fv-description{color:var(--text-secondary);font-size:12px}.fv-range-bar{margin:8px 0 28px;position:relative}.fv-range-track{background:var(--bg-tertiary);border-radius:4px;height:8px;position:relative;overflow:visible}.fv-range-fill{background:linear-gradient(90deg,var(--negative-color),var(--text-secondary),var(--positive-color));opacity:.3;border-radius:4px;height:100%;position:absolute;top:0}.fv-range-marker{border:2px solid var(--bg-primary);border-radius:50%;width:12px;height:12px;position:absolute;top:50%;transform:translate(-50%,-50%)}.fv-marker-low{background:var(--negative-color)}.fv-marker-median{background:var(--accent-color)}.fv-marker-high{background:var(--positive-color)}.fv-marker-current{background:var(--text-primary);z-index:1;width:14px;height:14px}.fv-range-labels{height:20px;color:var(--text-secondary);margin-top:6px;font-size:11px;position:relative}.fv-range-labels span{white-space:nowrap;position:absolute;transform:translate(-50%)}.fv-label-current{color:var(--text-primary);font-weight:600}.fv-rating-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.fv-pill{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:flex}.fv-pill.positive{border-color:color-mix(in srgb,var(--positive-color)30%,transparent)}.fv-pill.negative{border-color:color-mix(in srgb,var(--negative-color)30%,transparent)}.fv-pill-label{color:var(--text-primary);min-width:28px;font-weight:600}.fv-pill-score{font-variant-numeric:tabular-nums;color:var(--text-secondary)}.fv-pill-rec{color:var(--text-secondary);font-size:11px}@media (max-width:640px){.chart-header{flex-direction:column;align-items:stretch}.chart-controls-row{flex-direction:column;align-items:stretch;gap:8px}.period-selector{flex-wrap:wrap;justify-content:center;width:100%}.chart-mode-toggle{justify-content:center}.header{flex-direction:column;align-items:stretch;gap:12px}.header-actions{flex-wrap:wrap;gap:8px}.header-actions button{flex:auto;min-width:100px}.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)!important}.fv-header{grid-template-columns:1fr;gap:12px}.fv-rating{width:100%;min-width:auto}.fv-value{font-size:24px}.sm-content{grid-template-columns:1fr;gap:8px}.sm-signal-name{min-width:80px;font-size:12px}.analyst-grade-row{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 0}.analyst-grade-date{min-width:auto;font-size:11px}.analyst-grade-firm{min-width:auto;max-width:100%;font-size:12px}.gold-sig-header-row,.gold-sig-row{grid-template-columns:1fr 1fr;gap:4px}.gold-miner-table{font-size:11px}.gold-miner-table th,.gold-miner-table td{padding:4px 6px}.macro-gauge-row,.macro-derived-row{grid-template-columns:1fr}.macro-gauge{min-width:0}.analytics-grid{grid-template-columns:1fr}.key-stats-inline{gap:8px 12px}.ksi-range-track{width:50px}.lots-table{font-size:12px}.lots-table th{padding:8px 6px;font-size:11px}.lots-table td{padding:8px 6px}.correlation-table table{min-width:500px}.search-result-details{grid-template-columns:repeat(2,1fr)}.screener-pick-cards{grid-template-columns:1fr}}@media (max-width:480px){.period-btn{min-height:40px;padding:10px;font-size:12px}.stock-detail-header{flex-direction:column;align-items:flex-start;gap:8px}.stock-detail-price{font-size:24px}.stock-detail-actions{flex-wrap:wrap;gap:6px;width:100%}.stock-detail-actions .action-btn{flex:auto;min-width:80px;min-height:40px;padding:8px 10px;font-size:12px}.modal{max-width:calc(100% - 16px);padding:16px 12px}.modal.record-trade-modal{max-width:calc(100% - 16px)}.lots-modal{width:calc(100% - 16px);max-width:100%}.dropzone{padding:24px 12px}.stat-value{font-size:22px}.health-activity-row{grid-template-columns:1fr}.bar-label{flex:0 0 80px;font-size:11px}.bar-value{flex:0 0 40px;font-size:11px}}@media (max-width:375px){.main-content{padding:64px 8px 8px}.stats-grid{grid-template-columns:1fr!important}}@media (max-width:480px){.analytics{padding:12px}.analytics-grid{gap:12px}.analytics-title-row{flex-wrap:wrap;gap:8px}.analytics-title-row h2{font-size:18px}.risk-metrics-grid{gap:12px}.risk-metric-card{padding:14px}.risk-metric-value{font-size:24px}.mini-gauge{flex:0 0 calc(50% - 3px);padding:6px 8px;font-size:11px}.performer-item{gap:8px;padding:8px}.performer-rank{width:24px;height:24px;font-size:12px}.performer-value{font-size:12px}.performer-gain{font-size:11px}.correlation-table table{min-width:320px}.correlation-table th,.correlation-table td{padding:8px 6px;font-size:12px}.correlation-header{flex-direction:column;align-items:flex-start;gap:8px}.period-selector.small{flex-wrap:wrap}.period-selector.small .period-btn{padding:6px 8px;font-size:11px}.ec-week-grid{grid-template-columns:repeat(4,1fr);gap:2px}.ec-day-col{min-height:70px;padding:4px}.ec-day-name{font-size:8px}.ec-day-num{font-size:12px}.ec-badge{padding:1px 4px;font-size:8px}.ec-badge-ticker{font-size:9px}}.compliance-container{max-width:1100px;margin:0 auto;padding:24px}.compliance-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.compliance-header h2{color:var(--text-primary);margin-bottom:6px;font-size:22px;font-weight:600}.compliance-subtitle{color:var(--text-muted);max-width:600px;font-size:13px;line-height:1.4}.compliance-summary{border-radius:8px;flex-shrink:0;padding:8px 16px;font-size:14px;font-weight:600}.compliance-summary-hold{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:8px;padding:8px 16px}.compliance-summary-clear{color:#22c55e;background:#22c55e1a;border:1px solid #22c55e33;border-radius:8px;padding:8px 16px}.compliance-loading,.compliance-empty{min-height:200px;color:var(--text-muted);justify-content:center;align-items:center;font-size:14px;display:flex}.compliance-table-wrapper{overflow-x:auto}.compliance-table{border-collapse:collapse;width:100%;font-size:14px}.compliance-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color,#2a2a3a);white-space:nowrap;padding:10px 12px;font-size:12px;font-weight:500}.compliance-table td{color:var(--text-primary);border-bottom:1px solid var(--border-color,#2a2a3a);white-space:nowrap;padding:10px 12px}.compliance-table tbody tr:hover{background:#ffffff05}.compliance-row-hold{background:#f59e0b0a}.compliance-ticker{font-weight:600}.compliance-class{color:var(--text-muted)}.compliance-portfolios{color:var(--text-muted);font-size:13px}.compliance-status{border-radius:12px;align-items:center;gap:6px;padding:3px 10px;font-size:13px;font-weight:500;display:inline-flex}.compliance-clear{color:#22c55e;background:#22c55e1a}.compliance-hold{color:#f59e0b;background:#f59e0b1a}.compliance-days{opacity:.8;font-size:11px}.compliance-class-edit{align-items:center;gap:4px;display:inline-flex}.compliance-class-select{color:var(--text-muted);cursor:pointer;appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238888a0'/%3E%3C/svg%3E") right 4px center no-repeat;border:1px solid #0000;border-radius:4px;padding:2px 16px 2px 4px;font-size:13px}.compliance-class-select:hover,.compliance-class-select:focus{border-color:var(--border-color,#3a3a4a);outline:none}.compliance-class-select option{color:var(--text-primary);background:#1a1a25}.compliance-overridden{color:#60a5fa;font-weight:500}.compliance-reset-btn{color:var(--text-muted);cursor:pointer;opacity:.6;background:0 0;border:none;padding:0 2px;font-size:14px;line-height:1}.compliance-reset-btn:hover{opacity:1;color:var(--text-primary)}.harvest-tracker-section{border-top:1px solid var(--border-color);margin-top:32px;padding-top:24px}.harvest-tracker-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.harvest-tracker-title{color:var(--text-primary);margin:0 0 4px;font-size:16px;font-weight:600}.harvest-tracker-subtitle{color:var(--text-secondary);margin:0;font-size:13px}.harvest-tracker-controls{align-items:center;gap:12px;display:flex}.harvest-tracker-window{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.harvest-tracker-window select{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:6px;padding:6px 10px;font-size:13px}.harvest-tracker-summary{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;flex-wrap:wrap;gap:24px;margin-bottom:12px;padding:12px 16px;display:flex}.harvest-tracker-stat{flex-direction:column;gap:2px;display:flex}.harvest-tracker-stat .label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-size:11px}.harvest-tracker-stat .value{color:var(--text-primary);font-size:18px;font-weight:600}.harvest-tracker-stat .value.positive{color:#22c55e}.harvest-tracker-stat .value.negative{color:#ef4444}.harvest-tracker-salecount{color:#818cf8;text-transform:uppercase;letter-spacing:.3px;background:#6366f11f;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-block}.harvest-tracker-pct{opacity:.75;font-size:11px}.harvest-tracker-status{text-transform:uppercase;letter-spacing:.3px;cursor:help;border-radius:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.harvest-tracker-status.wait{color:#eab308;background:#eab3081f}.harvest-tracker-status.eligible{color:#22c55e;background:#22c55e1f}.harvest-tracker-status.past{color:var(--text-secondary);background:#94a3b81f}.stock-detail-card.prediction-markets-card{grid-column:1/-1}.prediction-markets-card h3{align-items:center;gap:10px;display:flex}.pm-source-badge{color:var(--text-muted);background:var(--bg-tertiary);text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500}.pm-loading{opacity:.6;padding:8px 0;font-size:.85em}.pm-list{flex-direction:column;gap:4px;display:flex}.pm-row{background:var(--bg-tertiary);border-radius:8px;transition:background .12s}.pm-row:hover{background:#94a3b814}.pm-row-expanded{background:#94a3b80f}.pm-row-header{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;display:flex}.pm-row-main{flex:1;min-width:0}.pm-row-title{color:var(--text-primary);font-size:13.5px;font-weight:500;line-height:1.35}.pm-row-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:11.5px;display:flex}.pm-meta-sep{opacity:.5}.pm-row-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.pm-prob{font-variant-numeric:tabular-nums;color:var(--text-primary);text-align:right;min-width:48px;font-size:16px;font-weight:600}.pm-prob.pm-prob-high{color:#22c55e}.pm-prob.pm-prob-low{color:#ef4444}.pm-prob-multi{font-variant-numeric:tabular-nums;color:var(--text-secondary);background:var(--bg-secondary);border-radius:4px;padding:2px 8px;font-size:13px;font-weight:500}.pm-hide-btn{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;font-size:18px;line-height:1;transition:opacity .12s,background .12s,color .12s;display:flex}.pm-row:hover .pm-hide-btn,.pm-row-expanded .pm-hide-btn{opacity:1}.pm-hide-btn:hover{color:#ef4444;background:#ef444426}.pm-row-expanded-content{flex-direction:column;gap:12px;padding:4px 14px 14px;font-size:12.5px;display:flex}.pm-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:4px;font-size:11px;font-weight:600}.pm-resolution-text{color:var(--text-secondary);white-space:pre-wrap;line-height:1.5}.pm-options-table{border-collapse:collapse;width:100%}.pm-options-table td{border-bottom:1px solid #94a3b814;padding:4px 0}.pm-options-table tr:last-child td{border-bottom:none}.pm-option-label{color:var(--text-secondary)}.pm-option-price{text-align:right;font-variant-numeric:tabular-nums;color:var(--text-primary);width:60px;font-weight:600}.pm-options-more{text-align:center;color:var(--text-muted);font-size:11px;padding-top:6px!important}.pm-link{color:var(--accent,#60a5fa);font-size:12px;font-weight:500;text-decoration:none}.pm-link:hover{text-decoration:underline}.pm-footer{align-items:center;gap:16px;margin-top:12px;font-size:12px;display:flex}.pm-link-btn{color:var(--accent,#60a5fa);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:500}.pm-link-btn:hover{text-decoration:underline}.pm-link-btn.pm-restore{color:var(--text-muted)}.trump-mention-count{color:var(--text-secondary,#888);font-size:.85em;font-weight:600}.trump-mention-hide{color:var(--text-secondary,#888);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:.9em;line-height:1}.trump-mention-hide:hover{color:var(--negative,#d64545);background:#d645451a}.trump-mentions-restore{border:1px solid var(--border,#444);color:var(--text-secondary,#888);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:.8em}.trump-mentions-restore:hover{color:var(--text-primary,#ddd);border-color:var(--text-secondary,#888)}a.stock-link{color:inherit;text-decoration:none}a.stock-link.ticker-link{color:var(--accent)}._wrapper_18nuy_1{margin:8px 12px;position:relative}._inputBox_18nuy_6{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;align-items:center;gap:6px;padding:6px 8px;transition:border-color .15s,background .15s;display:flex}._inputBox_18nuy_6:focus-within{border-color:var(--accent,#4f46e5);background:var(--bg-primary)}._icon_18nuy_22{color:var(--text-secondary);flex-shrink:0}._input_18nuy_6{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.85rem}._input_18nuy_6::placeholder{color:var(--text-secondary)}._clearBtn_18nuy_41{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:1rem;line-height:1}._clearBtn_18nuy_41:hover{color:var(--text-primary)}._dropdown_18nuy_56{z-index:50;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;max-height:320px;padding:4px 0;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000002e}._loadingRow_18nuy_71{color:var(--text-secondary);padding:8px 12px;font-size:.8rem;font-style:italic}._row_18nuy_78{text-align:left;cursor:pointer;width:100%;color:var(--text-primary);background:0 0;border:none;align-items:center;gap:8px;padding:6px 12px;font-size:.82rem;display:flex}._row_18nuy_78._highlighted_18nuy_92,._row_18nuy_78:hover{background:var(--bg-secondary)}._symbol_18nuy_97{color:var(--text-primary);font-variant-numeric:tabular-nums;min-width:56px;font-weight:600}._name_18nuy_104{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._type_18nuy_112{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-secondary);border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.66rem}._sidebar_3epda_2{background:var(--bg-secondary);border-right:1px solid var(--border-color);flex-direction:column;width:260px;padding:24px 16px;display:flex;position:relative;overflow-y:auto}._sidebar-header_3epda_13{align-items:center;gap:12px;margin-bottom:32px;padding:0 8px;display:flex}._top-actions_3epda_21{justify-content:space-between;align-items:center;display:flex;position:absolute;top:6px;left:6px;right:6px}._settings-cog_3epda_31{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;transition:color .15s;display:flex}._settings-cog_3epda_31:hover{color:var(--text-primary)}._logout-btn_3epda_47{border:1px solid var(--text-muted);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:12px;padding:2px 10px;font-size:11px;font-weight:500;line-height:1.4;transition:all .15s}._logout-btn_3epda_47:hover{border-color:var(--negative);color:var(--negative)}._sidebar-header_3epda_13 svg{color:var(--accent)}._sidebar-header_3epda_13 h2{letter-spacing:-.02em;font-size:18px;font-weight:600}._sidebar-section_3epda_75{margin-bottom:24px}._sidebar-section-title_3epda_79{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:8px;padding:0 8px;font-size:11px;font-weight:600}._sidebar-nav_3epda_90{flex-direction:column;gap:4px;margin-bottom:24px;display:flex}._sidebar-nav-btn_3epda_97{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}._sidebar-nav-btn_3epda_97:hover{background:var(--bg-hover);color:var(--text-primary)}._sidebar-nav-btn_3epda_97._active_3epda_119{border-color:var(--accent);color:var(--accent);background:#6366f11a}._sidebar-nav-btn_3epda_97 svg{opacity:.7;flex-shrink:0}._sidebar-nav-btn_3epda_97._active_3epda_119 svg{opacity:1}._sidebar-nav-portfolios_3epda_134{padding:2px 0 2px 28px}._sidebar-nav-portfolios_3epda_134 ._portfolio-list_3epda_138{margin:0;padding:0}._sidebar-nav-portfolios_3epda_134 ._portfolio-item_3epda_143{border-radius:6px;margin-bottom:0;padding:3px 8px;font-size:12px}._sidebar-nav-portfolios_3epda_134 ._add-portfolio-btn_3epda_150{margin-top:2px;padding:4px 8px;font-size:12px}._summary-nav-btn_3epda_156{background:var(--bg-tertiary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);cursor:pointer;border-radius:8px;align-items:center;gap:10px;margin-bottom:8px;padding:12px;font-size:14px;font-weight:500;transition:all .15s;display:flex}._summary-nav-btn_3epda_156:hover{background:var(--bg-hover);border-color:var(--text-muted)}._summary-nav-btn_3epda_156._active_3epda_119{background:var(--accent);border-color:var(--accent);color:#fff}._summary-nav-btn_3epda_156 svg{opacity:.8}._portfolio-list_3epda_138,._recently-viewed-list_3epda_192{list-style:none}._recently-viewed-item_3epda_196{cursor:pointer;border-radius:8px;flex-direction:column;margin-bottom:2px;padding:8px 12px;transition:all .15s;display:flex}._recently-viewed-item_3epda_196:hover{background:var(--bg-hover)}._recent-ticker_3epda_210{color:var(--text-primary);font-size:13px;font-weight:600}._recent-name_3epda_216{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}._sidebar-section-collapsible_3epda_225{cursor:pointer;width:100%;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 8px;display:flex}._sidebar-indices-list_3epda_238{flex-direction:column;gap:2px;display:flex}._sidebar-index-row_3epda_244{border-radius:6px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;display:flex}._sidebar-index-row_3epda_244:hover{background:var(--bg-tertiary)}._sidebar-index-label_3epda_257{color:var(--text-secondary);white-space:nowrap;flex:1;font-weight:500}._sidebar-index-price_3epda_264{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:11px}._sidebar-index-change_3epda_270{font-variant-numeric:tabular-nums;text-align:right;min-width:52px;font-size:11px;font-weight:600}._sidebar-index-traffic_3epda_278{vertical-align:middle;border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-left:5px;display:inline-block}._sidebar-index-traffic-green_3epda_288{background:var(--green);box-shadow:0 0 4px var(--green)}._sidebar-index-traffic-yellow_3epda_293{background:var(--yellow);box-shadow:0 0 4px var(--yellow)}._sidebar-index-traffic-red_3epda_298{background:var(--red);box-shadow:0 0 4px var(--red)}._sidebar-indices-loading_3epda_303{color:var(--text-muted);padding:8px 12px;font-size:11px}._portfolio-item_3epda_143{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:2px;padding:10px 12px;transition:all .15s;display:flex}._portfolio-item_3epda_143:hover{background:var(--bg-hover)}._portfolio-item_3epda_143._active_3epda_119{background:var(--accent);color:#fff}._portfolio-item-name_3epda_329{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}._sidebar-nav-portfolios_3epda_134 ._portfolio-item-name_3epda_329{font-size:12px}._portfolio-item-count_3epda_341{color:var(--text-secondary);background:var(--bg-tertiary);border-radius:10px;padding:2px 8px;font-size:12px}._sidebar-nav-portfolios_3epda_134 ._portfolio-item-count_3epda_341{padding:1px 6px;font-size:10px}._portfolio-item_3epda_143._active_3epda_119 ._portfolio-item-count_3epda_341{color:#fff;background:#fff3}._portfolio-actions_3epda_359{opacity:0;gap:4px;transition:opacity .15s;display:flex}._portfolio-item_3epda_143:hover ._portfolio-actions_3epda_359,._portfolio-item_3epda_143._active_3epda_119 ._portfolio-actions_3epda_359{opacity:1}._portfolio-action-btn_3epda_374{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}._portfolio-action-btn_3epda_374:hover{background:#ffffff1a}._add-portfolio-btn_3epda_150{border:1px dashed var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:14px;transition:all .15s;display:flex}._add-portfolio-btn_3epda_150:hover{border-color:var(--accent);color:var(--accent)}._portfolio-edit-form_3epda_411{flex-direction:column;gap:8px;width:100%;padding:8px 0;display:flex}._portfolio-edit-form_3epda_411 ._rename-input_3epda_419{width:100%}._account-type-select_3epda_423{background:var(--bg-primary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);cursor:pointer;border-radius:6px;padding:8px 10px;font-size:13px}._account-type-select_3epda_423:focus{border-color:var(--accent);outline:none}._account-type-select_3epda_423 option{background:var(--bg-secondary);color:var(--text-primary)}._edit-form-actions_3epda_444{gap:8px;margin-top:4px;display:flex}._edit-form-btn_3epda_450{cursor:pointer;border:none;border-radius:6px;flex:1;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s}._edit-form-btn_3epda_450._save_3epda_461{background:var(--accent);color:#fff}._edit-form-btn_3epda_450._save_3epda_461:hover{background:var(--accent-hover)}._edit-form-btn_3epda_450._cancel_3epda_470{background:var(--bg-tertiary);color:var(--text-secondary)}._edit-form-btn_3epda_450._cancel_3epda_470:hover{background:var(--bg-hover);color:var(--text-primary)}._portfolio-item-info_3epda_480{flex:1;align-items:baseline;gap:6px;min-width:0;display:flex}._portfolio-account-type_3epda_488{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;font-size:9px}._portfolio-account-type_3epda_488._play-account_3epda_496{color:#f59e0b;background:#f59e0b26;border-radius:3px;padding:1px 4px;font-weight:600}._portfolio-item_3epda_143._play-portfolio_3epda_504{background:#f59e0b0d;border-left:3px solid #f59e0b}._drawer_3epda_510{z-index:300;box-shadow:none;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}._drawerOpen_3epda_521{transform:translate(0);box-shadow:4px 0 24px #0006}._wrapper_falr8_2{flex-direction:column;gap:12px;display:flex}._toolbar_falr8_8{align-items:center;gap:10px;display:flex}._cashBar_falr8_15{align-items:center;gap:8px;margin-right:auto;font-size:.85rem;display:flex}._cashLabel_falr8_23{color:var(--text-secondary);font-weight:500}._cashAmount_falr8_28{color:var(--green);font-weight:600}._container_falr8_34{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;max-width:100%;overflow-x:auto}._table_falr8_42{border-collapse:collapse;width:100%;min-width:1200px;font-size:14px}._table_falr8_42 th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:14px 16px;font-size:12px;font-weight:600}._table_falr8_42 th:hover{color:var(--text-secondary)}._sorted_falr8_68{color:var(--accent)}._sort-indicator_falr8_72{margin-left:4px}._table_falr8_42 td{border-bottom:1px solid var(--border-color);white-space:nowrap;padding:16px}._table_falr8_42 tr:last-child td{border-bottom:none}._table_falr8_42 tr:hover td{background:var(--bg-hover)}._closed-position_falr8_90 td{opacity:.5}._closed-position_falr8_90:hover td{opacity:.8}._ticker-cell_falr8_99{flex-direction:column;display:flex}._clickable_falr8_104{cursor:pointer}._clickable_falr8_104:hover ._ticker-symbol_falr8_108{color:var(--accent)}._ticker-symbol_falr8_108{color:var(--text-primary);font-weight:600;transition:color .15s}._ticker-name_falr8_118{color:var(--text-muted);text-overflow:ellipsis;max-width:150px;font-size:12px;overflow:hidden}._column-settings-btn_falr8_127,._closed-positions-btn_falr8_128{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:all .15s;display:flex}._column-settings-btn_falr8_127:hover,._closed-positions-btn_falr8_128:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-muted)}._closed-positions-btn-active_falr8_149{background:var(--accent);color:#fff;border-color:var(--accent)}._closed-positions-btn-active_falr8_149:hover{background:var(--accent-hover);border-color:var(--accent-hover)}._column-settings-panel_falr8_160{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:16px}._column-settings-header_falr8_167{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}._column-settings-header_falr8_167 h4{color:var(--text-primary);font-size:14px;font-weight:600}._reset-columns-btn_falr8_180{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:12px;transition:all .15s}._reset-columns-btn_falr8_180:hover{background:var(--bg-tertiary);color:var(--text-primary)}._column-settings-hint_falr8_196{color:var(--text-muted);margin-bottom:12px;font-size:12px}._column-list_falr8_202{flex-wrap:wrap;gap:8px;display:flex}._column-item_falr8_208{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:grab;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;transition:all .15s;display:flex}._column-item_falr8_208:hover{border-color:var(--text-muted)}._locked_falr8_224{cursor:default;opacity:.7}._dragging_falr8_229{opacity:.5;border-color:var(--accent)}._drag-handle_falr8_234{color:var(--text-muted);align-items:center;display:flex}._column-toggle_falr8_240{cursor:pointer;align-items:center;gap:8px;display:flex}._column-toggle_falr8_240 input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}._column-toggle_falr8_240 input[type=checkbox]:disabled{cursor:default}._column-name_falr8_258{color:var(--text-primary);font-size:13px}._locked-badge_falr8_263{color:var(--text-muted);background:var(--bg-hover);border-radius:4px;padding:2px 6px;font-size:10px}._options-menu-container_falr8_272{position:relative}._options-btn_falr8_276{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}._options-btn_falr8_276:hover{background:var(--bg-hover);color:var(--text-primary)}._options-dropdown_falr8_294{background:var(--bg-secondary);border:1px solid var(--border-color);z-index:100;border-radius:8px;min-width:160px;padding:4px;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000004d}._options-dropdown-item_falr8_307{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;transition:all .15s;display:flex}._options-dropdown-item_falr8_307:hover{background:var(--bg-hover)}._delete-item_falr8_327{color:var(--red)}._delete-item_falr8_327:hover{background:var(--red-bg)}._trailing-returns-section_falr8_336{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-top:32px;padding:20px}._trailing-returns-section_falr8_336 h3{color:var(--text-primary);margin-bottom:16px;font-size:16px;font-weight:600}._trailing-returns-loading_falr8_351{text-align:center;color:var(--text-muted);padding:40px}._trailing-returns-table-container_falr8_357{overflow-x:auto}._trailing-returns-table_falr8_357{border-collapse:collapse;width:100%;font-size:13px}._trailing-returns-table_falr8_357 th,._trailing-returns-table_falr8_357 td{text-align:right;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:10px 12px}._trailing-returns-table_falr8_357 th:first-child,._trailing-returns-table_falr8_357 td:first-child{text-align:left;background:var(--bg-secondary);z-index:1;position:sticky;left:0}._trailing-returns-table_falr8_357 th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:600;transition:color .15s}._trailing-returns-table_falr8_357 th:hover{color:var(--text-primary)}._trailing-returns-table_falr8_357 th._sorted_falr8_68{color:var(--accent)}._trailing-returns-table_falr8_357 tbody tr:hover,._trailing-returns-table_falr8_357 tbody tr:hover td:first-child{background:var(--bg-hover)}._trailing-returns-table_falr8_357 tbody tr:last-child td{border-bottom:none}._trailing-returns-table_falr8_357 ._ticker-cell_falr8_99{min-width:120px}._trailing-returns-table_falr8_357 ._ticker-symbol_falr8_108{color:var(--text-primary);font-weight:600;display:block}._stock-name_falr8_425{color:var(--text-muted);text-overflow:ellipsis;max-width:150px;font-size:11px;display:block;overflow:hidden}._trailing-returns-footnote_falr8_434{color:var(--text-muted);margin-top:12px;font-size:11px;font-style:italic}@media (max-width:768px){._table_falr8_42{font-size:12px}._table_falr8_42 th,._table_falr8_42 td{padding:8px 6px}._trailing-returns-table_falr8_357 th,._trailing-returns-table_falr8_357 td{padding:6px 4px;font-size:11px}}._container_1pgk1_1{z-index:10000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}._toast_1pgk1_12{background:var(--bg-tertiary);border:1px solid var(--border-color);border-left:4px solid var(--accent);min-width:300px;max-width:480px;color:var(--text-primary);pointer-events:auto;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;font-size:.875rem;animation:.25s ease-out _slideIn_1pgk1_1;display:flex;box-shadow:0 8px 24px #0006}._toast_1pgk1_12._success_1pgk1_30{border-left-color:var(--green)}._toast_1pgk1_12._error_1pgk1_34{border-left-color:var(--red)}._toast_1pgk1_12._warning_1pgk1_38{border-left-color:var(--yellow)}._toast_1pgk1_12._info_1pgk1_42{border-left-color:var(--accent)}._toast_1pgk1_12._undo_1pgk1_46{border-left-color:var(--yellow)}._message_1pgk1_50{flex:1;line-height:1.4}._actionBtn_1pgk1_55{border:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;padding:4px 12px;font-size:.8rem;font-weight:600;transition:background .15s}._actionBtn_1pgk1_55:hover{background:#6366f126}._closeBtn_1pgk1_72{width:24px;height:24px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;transition:background .15s,color .15s;display:flex}._closeBtn_1pgk1_72:hover{background:var(--bg-hover);color:var(--text-primary)}@keyframes _slideIn_1pgk1_1{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}
