@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=DM+Mono:wght@400;500&display=swap";.sidebar{position:fixed;left:0;top:0;width:280px;height:100vh;background:var(--bg2);border-right:1px solid var(--bg4);display:flex;flex-direction:column;z-index:100;box-shadow:4px 0 20px #0000004d}.sidebar-header{padding:30px 25px;border-bottom:1px solid var(--bg4);cursor:pointer;transition:all .3s ease}.sidebar-header:hover{background:var(--bg3)}.sidebar-logo{display:flex;align-items:center;gap:12px;margin-bottom:8px}.logo-image{width:48px;height:48px;border-radius:8px;filter:drop-shadow(0 2px 4px rgba(240,180,41,.3))}.logo-text{font-size:1.8em;font-weight:700;background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-tagline{font-size:.85em;color:var(--text2);margin-left:60px;font-weight:500}.sidebar-nav{flex:1;padding:20px 15px;display:flex;flex-direction:column;gap:8px}.nav-section-label{font-size:.7em;font-weight:700;color:var(--text3);letter-spacing:.12em;padding:12px 20px 4px;text-transform:uppercase}.nav-item{display:flex;align-items:center;gap:15px;padding:16px 20px;background:transparent;border:none;border-radius:12px;color:var(--text2);font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;text-align:left;position:relative;overflow:hidden}.nav-item:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:var(--gold);transform:scaleY(0);transition:transform .3s ease}.nav-item:hover{background:var(--bg3);color:var(--text);transform:translate(4px)}.nav-item.active{background:linear-gradient(135deg,var(--gold-dim),rgba(255,209,102,.05));color:var(--gold);border:1px solid var(--gold)}.nav-item.active:before{transform:scaleY(1)}.nav-icon{font-size:1.4em;flex-shrink:0}.nav-text{flex:1}.sidebar-footer{padding:20px 25px;border-top:1px solid var(--bg4);text-align:center}.footer-text{font-size:.8em;color:var(--text3);font-weight:500}.mobile-menu-btn{display:none;position:fixed;top:10px;left:10px;z-index:9999!important;background:var(--gold)!important;border:3px solid #000!important;border-radius:12px;padding:16px 20px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #d4af37cc}.mobile-menu-btn:hover{background:gold!important;transform:scale(1.1)}.hamburger-icon{font-size:32px;color:#000!important;display:block!important;line-height:1;font-weight:700}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:99}@media (max-width: 768px){.mobile-menu-btn{display:block}.sidebar-overlay{display:block!important}.sidebar{width:240px;transform:translate(-100%);transition:transform .3s ease;z-index:101}.sidebar.open{transform:translate(0)}.logo-text{font-size:1.5em}.nav-item{padding:14px 16px}}@media (max-width: 480px){.sidebar{width:100%;max-width:280px}}.stock-detail-container{max-width:1200px;margin:0 auto;padding:20px;background:var(--bg);min-height:100vh}.stock-header{display:flex;align-items:center;gap:20px;margin-bottom:30px;padding:25px;background:var(--bg2);border-radius:16px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4)}.back-btn,.refresh-btn{padding:10px 20px;background:var(--bg3);color:var(--text);border:1px solid var(--bg4);border-radius:8px;cursor:pointer;font-size:.9em;font-weight:600;transition:all .2s ease}.back-btn:hover,.refresh-btn:hover:not(:disabled){background:var(--bg4);border-color:var(--gold);transform:translateY(-2px)}.refresh-btn{margin-left:auto}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.stock-title h1{margin:0;font-size:26px;color:var(--text);font-weight:700;letter-spacing:-.02em;line-height:1.2}.stock-symbol{margin:8px 0 0;font-size:11px;color:var(--text3);font-weight:500;font-family:DM Mono,monospace;letter-spacing:.05em;text-transform:uppercase}.price-section{background:var(--bg2);border-radius:16px;padding:35px;margin-bottom:30px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4);position:relative;overflow:hidden}.price-section:before{content:"";position:absolute;top:0;right:0;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.current-price{display:flex;flex-direction:column;margin-bottom:20px;position:relative;z-index:1}.price-label{font-size:11px;color:var(--text3);font-weight:500;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.price-value{font-size:2.8em;font-weight:700;color:var(--text);font-family:DM Mono,monospace;letter-spacing:-.02em}.price-change{font-size:1.3em;font-weight:700;margin-top:12px;display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;width:fit-content}.price-change.positive{background:#3ddc8433;color:var(--green);border:2px solid var(--green)}.price-change.negative{background:#ff6b6b33;color:var(--red);border:2px solid var(--red)}.price-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-top:25px;padding-top:25px;border-top:1px solid var(--bg4)}.stat-item{display:flex;flex-direction:column;padding:12px;background:var(--bg3);border-radius:8px;border:1px solid var(--bg4)}.stat-label{font-size:11px;color:var(--text3);margin-bottom:6px;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.1em;font-weight:600;color:var(--text);font-family:DM Mono,monospace}.performance-section,.chart-section,.metrics-grid,.fundamentals-section,.shareholding-section,.quality-section{background:var(--bg2);border-radius:20px;padding:35px;margin-bottom:30px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4)}.performance-section h2,.metrics-grid h2,.fundamentals-section h2,.shareholding-section h2,.quality-section h2{margin:0 0 25px;font-size:1.6em;background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;position:relative;padding-bottom:12px}.performance-section h2:after,.metrics-grid h2:after,.fundamentals-section h2:after,.shareholding-section h2:after,.quality-section h2:after{content:"";position:absolute;bottom:0;left:0;width:80px;height:4px;background:linear-gradient(90deg,var(--gold),var(--gold2));border-radius:2px}.chart-section h2{margin:0;font-size:1.6em;background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.chart-period-selector{display:flex;gap:8px;background:var(--bg3);padding:6px;border-radius:12px;border:1px solid var(--bg4)}.chart-period-selector button{padding:8px 16px;background:transparent;border:none;border-radius:8px;cursor:pointer;font-size:.9em;font-weight:600;color:var(--text2);transition:all .2s ease}.chart-period-selector button:hover{color:var(--gold)}.chart-period-selector button.active{background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--bg);box-shadow:0 4px 12px #f0b42966}.performance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px}.performance-card{padding:20px;background:var(--bg3);border:2px solid var(--bg4);border-radius:12px;display:flex;flex-direction:column;gap:8px;transition:all .3s ease}.performance-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #f0b42933;border-color:var(--gold)}.performance-label{font-size:.9em;color:var(--text2);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.performance-value{font-size:1.6em;font-weight:800;font-family:DM Mono,monospace}.performance-value.positive{color:var(--green)}.performance-value.negative{color:var(--red)}.metrics-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.metric-card{padding:24px;background:var(--bg3);border-radius:12px;display:flex;flex-direction:column;gap:10px;border:1px solid var(--bg4);transition:all .3s ease}.metric-card:hover{border-color:var(--gold);box-shadow:0 8px 20px #f0b42933;transform:translateY(-2px)}.metric-label{font-size:.9em;color:var(--text2);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:1.4em;font-weight:700;background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:DM Mono,monospace}.fundamentals-category{margin-bottom:30px}.fundamentals-category:last-child{margin-bottom:0}.fundamentals-category h3{font-size:1.2em;color:var(--text);margin:0 0 15px;font-weight:700;padding-bottom:10px;border-bottom:3px solid transparent;border-image:linear-gradient(90deg,var(--gold),var(--gold2)) 1;display:inline-block;min-width:200px}.fundamentals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.fundamental-item{padding:18px;background:var(--bg3);border-radius:10px;display:flex;flex-direction:column;gap:8px;border-left:4px solid var(--gold);transition:all .3s ease;border:1px solid var(--bg4)}.fundamental-item:hover{transform:translate(4px);box-shadow:0 6px 16px #f0b42933}.fundamental-label{font-size:.85em;color:var(--text2);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.fundamental-value{font-size:1.3em;font-weight:700;background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:DM Mono,monospace}.shareholding-content{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.shareholding-details{display:flex;flex-direction:column;gap:14px}.shareholding-item{display:flex;align-items:center;gap:12px;padding:14px;background:var(--bg3);border-radius:10px;border-left:4px solid;transition:all .3s ease;border:1px solid var(--bg4)}.shareholding-item:hover{transform:translate(6px);box-shadow:0 6px 16px #0000004d}.shareholding-color{width:20px;height:20px;border-radius:6px;flex-shrink:0;box-shadow:0 2px 8px #0006}.shareholding-name{flex:1;font-size:1em;color:var(--text);font-weight:600}.shareholding-value{font-size:1.2em;font-weight:800;background:linear-gradient(135deg,var(--gold),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:DM Mono,monospace}.shareholding-warning{padding:14px;background:#ff6b6b26;border:2px solid var(--red);border-radius:10px;color:var(--red);font-weight:700;font-size:.95em;margin-top:10px;box-shadow:0 4px 12px #ff6b6b4d}.section-header{display:flex;align-items:center;gap:14px;margin-bottom:28px}.section-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--gold),#ff9f43);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:0 8px 24px #f0b42940;flex-shrink:0}.section-title{flex:1}.section-title h2{font-size:24px;font-weight:700;color:var(--text);margin:0 0 4px;background:none;-webkit-text-fill-color:currentColor;padding-bottom:0}.section-title h2:after{display:none}.section-title p{font-size:13px;color:var(--text3);margin:0}.section-title .coverage-warning{font-size:12px;color:#ff9f43;margin-top:6px;font-weight:500}.forensic-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:24px;margin:20px 0}.forensic-error p{margin:0;color:var(--text);font-size:16px;font-weight:600}.forensic-error .error-detail{font-size:13px;color:var(--text2);margin-top:8px;font-weight:400}.forensic-no-data{background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:12px;padding:24px;margin:20px 0;text-align:center}.forensic-no-data p{margin:0;color:var(--text);font-size:16px;font-weight:600}.forensic-no-data .no-data-detail{font-size:13px;color:var(--text2);margin-top:8px;font-weight:400}.section-badge{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:6px;flex-shrink:0}.section-badge.badge-good{background:#3ddc8426;color:var(--green);border:1px solid rgba(61,220,132,.25)}.section-badge.badge-medium{background:#4d9de026;color:#4d9de0;border:1px solid rgba(77,157,224,.25)}.section-badge.badge-poor{background:#ff6b6b26;color:var(--red);border:1px solid rgba(255,107,107,.25)}.scores-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-bottom:20px}.primary-score{border:1px solid rgba(61,220,132,.2);border-radius:16px;padding:32px;position:relative;overflow:hidden}.primary-score.score-bg-good{background:linear-gradient(135deg,#3ddc8414,#3ddc8405)}.primary-score.score-bg-medium{background:linear-gradient(135deg,#4d9de014,#4d9de005);border-color:#4d9de033}.primary-score.score-bg-poor{background:linear-gradient(135deg,#ff6b6b14,#ff6b6b05);border-color:#ff6b6b33}.primary-score:before{content:"";position:absolute;top:-50%;right:-10%;width:300px;height:300px;background:radial-gradient(circle,rgba(61,220,132,.15),transparent);border-radius:50%;pointer-events:none}.primary-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--text3);font-weight:600;margin-bottom:16px}.primary-value-wrap{display:flex;align-items:flex-end;gap:16px;margin-bottom:20px}.primary-score-num{font-size:72px;font-weight:800;line-height:.9;font-family:DM Mono,monospace;letter-spacing:-.02em}.primary-score-num.score-good{color:var(--green)}.primary-score-num.score-medium{color:#4d9de0}.primary-score-num.score-poor{color:var(--red)}.primary-score-max{font-size:32px;font-weight:700;color:var(--text3);font-family:DM Mono,monospace;margin-bottom:8px}.primary-rating{font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px}.primary-rating.rating-good{color:var(--green)}.primary-rating.rating-medium{color:#4d9de0}.primary-rating.rating-poor{color:var(--red)}.gauge-bar{width:100%;height:8px;background:#ffffff14;border-radius:4px;overflow:hidden;margin-bottom:12px}.gauge-fill{height:100%;border-radius:4px;transition:width .8s ease}.gauge-fill.fill-good{background:linear-gradient(90deg,var(--green),#5ae4a0);box-shadow:0 0 12px #3ddc8480}.gauge-fill.fill-medium{background:linear-gradient(90deg,#4d9de0,#6ab3f0);box-shadow:0 0 12px #4d9de080}.gauge-fill.fill-poor{background:linear-gradient(90deg,var(--red),#ff8787);box-shadow:0 0 12px #ff6b6b80}.gauge-markers{display:flex;justify-content:space-between;font-size:10px;color:var(--text3);font-family:DM Mono,monospace}.secondary-grid{display:grid;grid-template-columns:1fr;gap:12px}.metric-card{background:var(--bg2);border:1px solid var(--bg4);border-radius:12px;padding:18px 20px;display:flex;align-items:center;gap:14px;transition:all .2s;cursor:pointer}.metric-card:hover{border-color:#ffffff26;transform:translate(3px)}.metric-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.metric-icon.icon-good{background:#3ddc8426}.metric-icon.icon-medium{background:#4d9de026}.metric-icon.icon-poor{background:#f0b42926}.metric-info{flex:1}.metric-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);font-weight:600;margin-bottom:4px}.metric-value{font-size:20px;font-weight:700;font-family:DM Mono,monospace}.metric-value.score-good{color:var(--green)}.metric-value.score-medium{color:#4d9de0}.metric-value.score-poor{color:var(--red)}.metric-badge{font-size:9px;text-transform:uppercase;letter-spacing:.06em;padding:4px 8px;border-radius:4px;font-weight:600;flex-shrink:0}.metric-badge.badge-good{background:#3ddc8426;color:var(--green)}.metric-badge.badge-medium{background:#4d9de026;color:#4d9de0}.metric-badge.badge-poor{background:#ff6b6b26;color:var(--red)}.detailed-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.detail-card{background:var(--bg2);border:1px solid var(--bg4);border-radius:12px;padding:20px;transition:all .2s}.detail-card:hover{border-color:#ffffff26;transform:translateY(-2px)}.detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.detail-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text3);font-weight:600}.detail-trend{font-size:18px}.detail-score-wrap{display:flex;align-items:baseline;gap:6px;margin-bottom:14px}.detail-score{font-size:36px;font-weight:800;font-family:DM Mono,monospace;line-height:1}.detail-score.score-good{color:var(--green)}.detail-score.score-medium{color:#4d9de0}.detail-score.score-poor{color:var(--red)}.detail-max{font-size:18px;color:var(--text3);font-family:DM Mono,monospace}.detail-desc{font-size:12px;color:var(--text2);line-height:1.5;margin-bottom:12px}.mini-gauge{width:100%;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden}.mini-gauge-fill{height:100%;border-radius:2px;transition:width .6s ease}.mini-gauge-fill.fill-good{background:var(--green);box-shadow:0 0 8px #3ddc8466}.mini-gauge-fill.fill-medium{background:#4d9de0;box-shadow:0 0 8px #4d9de066}.mini-gauge-fill.fill-poor{background:var(--gold);box-shadow:0 0 8px #f0b42966}.cagr-section-header{display:flex;align-items:center;gap:10px;margin-top:24px;margin-bottom:14px;padding:0 4px}.cagr-icon{font-size:20px}.cagr-title{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--text2);font-weight:700}.cagr-cards-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cagr-card{background:var(--bg2);border:1px solid var(--bg4);border-radius:12px;padding:20px;text-align:center;transition:all .2s}.cagr-card:hover{border-color:#ffffff26;transform:translateY(-2px)}.cagr-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text3);font-weight:600;margin-bottom:10px}.cagr-value{font-size:32px;font-weight:800;font-family:DM Mono,monospace;line-height:1;margin-bottom:6px;color:var(--text2)}.cagr-value.good{color:var(--green)}.cagr-value.poor{color:var(--red)}.cagr-sublabel{font-size:11px;color:var(--text3)}@media (max-width: 768px){.cagr-cards-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.cagr-cards-row{grid-template-columns:1fr}}.fund-manager-row{display:flex;align-items:center;gap:10px;padding:12px 18px;margin-bottom:16px;background:var(--bg2);border-radius:10px;border:1px solid var(--bg4)}.fund-manager-label{color:var(--text3);font-size:.85em;font-weight:500;white-space:nowrap}.fund-manager-names{color:var(--text);font-size:.95em;font-weight:600}.fund-inception-badge{margin-left:auto;font-size:.8em;color:var(--gold);background:var(--gold-dim);border:1px solid var(--gold);border-radius:12px;padding:3px 12px;font-weight:600;white-space:nowrap}.loading,.error-box{background:var(--bg2);border-radius:20px;padding:50px;text-align:center;box-shadow:0 15px 40px #0006;border:1px solid var(--bg4)}.spinner{border:5px solid rgba(240,180,41,.2);border-top:5px solid var(--gold);border-radius:50%;width:50px;height:50px;animation:spin .8s linear infinite;margin:0 auto 25px}@media (max-width: 768px){.stock-header{flex-wrap:wrap}.refresh-btn{margin-left:0;width:100%}.price-value{font-size:2.5em}.price-stats{grid-template-columns:repeat(2,1fr)}.chart-period-selector{flex-wrap:wrap}.chart-period-selector button{padding:6px 12px;font-size:.85em}.performance-grid,.metrics-container,.fundamentals-grid,.quality-grid,.shareholding-content{grid-template-columns:1fr}.shareholding-chart{order:1}.shareholding-details{order:2}.scores-grid,.detailed-row{grid-template-columns:1fr}.section-header{flex-wrap:wrap}.section-badge{width:100%;order:3;text-align:center}}@media (max-width: 480px){.stock-detail-container{padding:12px}.price-section,.performance-section,.chart-section,.metrics-grid,.fundamentals-section,.shareholding-section,.quality-section{padding:24px}.chart-header{flex-direction:column;align-items:flex-start;gap:15px}.chart-period-selector{width:100%}.chart-period-selector button{flex:1}.stock-title h1{font-size:1.6em}}.stock-scores-container{background:var(--bg2);border-radius:12px;padding:24px;margin:24px 0;box-shadow:0 2px 8px #0000001a}.stock-scores-header{margin-bottom:20px}.stock-scores-header h3{color:var(--text);font-size:1.5rem;font-weight:600;margin:0 0 8px}.stock-scores-header .subtitle{color:var(--text-secondary);font-size:.9rem;margin:0}.stock-scores-header .coverage-warning{color:#ff9f43;font-size:.85rem;margin:8px 0 0;font-weight:500}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:24px;margin:20px 0}.error-message p{margin:0;color:var(--text);font-size:16px;font-weight:600}.error-message .error-detail{font-size:13px;color:var(--text2);margin-top:8px;font-weight:400}.no-data{background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:12px;padding:24px;margin:20px 0;text-align:center}.no-data p{margin:0;color:var(--text);font-size:16px;font-weight:600}.no-data .no-data-detail{font-size:13px;color:var(--text2);margin-top:8px;font-weight:400}.scores-table-wrapper{overflow-x:auto;margin:20px 0}.scores-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem}.scores-table thead{background:var(--bg3);position:sticky;top:0;z-index:10}.scores-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text);border-bottom:2px solid var(--bg4);white-space:nowrap}.scores-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.scores-table th.sortable:hover{background:var(--bg4)}.scores-table th.text-center,.scores-table td.text-center{text-align:center}.scores-table th.text-right,.scores-table td.text-right{text-align:right}.scores-table tbody tr{border-bottom:1px solid var(--bg4);transition:background-color .2s}.scores-table tbody tr:hover{background:var(--bg3)}.scores-table td{padding:14px 16px;color:var(--text);vertical-align:middle}.stock-name .name-cell{display:flex;flex-direction:column;gap:4px}.stock-name .company-name{font-weight:500;color:var(--text);font-size:.95rem}.stock-name .stock-symbol{font-size:.8rem;color:var(--text-secondary);font-family:Courier New,monospace}.clickable-stock{transition:all .2s ease;border-radius:6px;padding:4px 8px;margin:-4px -8px}.clickable-stock:hover{background:var(--bg4);transform:translate(4px)}.clickable-stock:hover .company-name{color:var(--accent);text-decoration:underline}.clickable-stock:hover .stock-symbol{color:var(--accent)}.sector-cell .sector-badge{display:inline-block;padding:4px 10px;background:var(--bg4);border-radius:12px;font-size:.8rem;color:var(--text-secondary);white-space:nowrap}.weight-cell strong{color:var(--accent);font-size:.95rem}.score-badge{display:inline-block;padding:6px 12px;border-radius:6px;font-weight:600;color:#fff;font-size:.9rem;min-width:50px}.score-badge.piotroski,.score-badge.quality{min-width:45px}.score-badge.altman{min-width:50px}.score-mini{display:inline-block;padding:4px 8px;background:var(--bg4);border-radius:4px;font-size:.85rem;color:var(--text-secondary);min-width:35px}.scores-legend{margin-top:24px;padding:16px;background:var(--bg3);border-radius:8px;border-left:4px solid var(--accent)}.scores-legend h4{color:var(--text);font-size:1rem;font-weight:600;margin:0 0 12px}.legend-items{display:flex;flex-direction:column;gap:8px}.legend-item{color:var(--text-secondary);font-size:.85rem;line-height:1.5}.legend-item strong{color:var(--text);margin-right:4px}.loading,.no-data{text-align:center;padding:40px 20px;color:var(--text-secondary);font-size:.95rem}.loading{color:var(--accent)}@media (max-width: 1200px){.scores-table{font-size:.85rem}.scores-table th,.scores-table td{padding:10px 12px}.score-badge{padding:5px 10px;font-size:.85rem}}@media (max-width: 768px){.stock-scores-container{padding:16px}.scores-table-wrapper{margin:16px -16px}.scores-table{font-size:.8rem}.scores-table th,.scores-table td{padding:8px 10px}.score-badge{padding:4px 8px;font-size:.8rem;min-width:40px}.scores-legend{padding:12px}.legend-items{font-size:.8rem}}.fund-ratings-container{padding:32px 24px;max-width:1400px;margin:0 auto}.ratings-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:16px}.ratings-title-block h2{font-size:1.8em;font-weight:700;color:var(--text);margin:0 0 6px}.ratings-subtitle{color:var(--text2);font-size:.95em;margin:0}.ratings-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.refresh-btn{padding:8px 16px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.85em;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.refresh-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.refresh-btn:disabled,.refresh-btn.refreshing{opacity:.6;cursor:not-allowed}.last-updated{font-size:.75em;color:var(--text3);white-space:nowrap}.ratings-empty-db{text-align:center;padding:60px 20px;color:var(--text2)}.ratings-empty-db p{margin:0 0 12px}.ratings-empty-db .refresh-btn{margin-top:8px;padding:12px 24px;font-size:1em;border-color:var(--gold);color:var(--gold)}.ratings-badge{background:var(--gold-dim);color:var(--gold);border:1px solid var(--gold);border-radius:20px;padding:6px 16px;font-size:.85em;font-weight:700;white-space:nowrap}.ratings-filters{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.ratings-search{flex:1;min-width:200px;padding:10px 16px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.9em;outline:none}.ratings-search:focus{border-color:var(--gold)}.ratings-filter-select{padding:10px 14px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.9em;cursor:pointer;outline:none}.ratings-filter-select:focus{border-color:var(--gold)}.ratings-legend{font-size:.82em;color:var(--text2);display:flex;align-items:center;gap:4px;margin-bottom:16px;flex-wrap:wrap}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%}.ratings-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--bg4)}.ratings-table{width:100%;border-collapse:collapse;font-size:.9em}.ratings-table thead tr{background:var(--bg3);border-bottom:2px solid var(--bg4)}.ratings-table th{padding:12px 14px;text-align:left;font-weight:700;font-size:.82em;color:var(--text2);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.ratings-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.ratings-table th.sortable:hover{color:var(--gold)}.col-rank{width:60px;text-align:center!important}.col-fund{min-width:200px}.col-house{min-width:140px}.col-num{text-align:center!important;min-width:90px}.coverage-col{color:var(--text2);font-size:.85em}.ratings-row{border-bottom:1px solid var(--bg4);cursor:pointer;transition:background .15s}.ratings-row:hover{background:var(--bg3)}.ratings-table td{padding:12px 14px;vertical-align:middle}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-weight:700;font-size:.9em;background:var(--bg4);color:var(--text2)}.rank-top-1{background:linear-gradient(135deg,gold,orange);color:#000}.rank-top-2{background:linear-gradient(135deg,silver,#a0a0a0);color:#000}.rank-top-3{background:linear-gradient(135deg,#cd7f32,#a05020);color:#fff}.fund-name-cell{display:flex;flex-direction:column;gap:2px}.fund-scheme-name{font-weight:600;color:var(--text);font-size:.92em;line-height:1.3}.fund-ticker-small{font-size:.75em;color:var(--text3);font-family:monospace}.fund-house-tag{font-size:.8em;background:var(--bg4);color:var(--text2);padding:2px 8px;border-radius:4px;white-space:nowrap}.score-pill{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 10px;border-radius:8px;color:#fff;min-width:60px;line-height:1.2}.score-num{font-size:1em;font-weight:700}.score-label{font-size:.65em;opacity:.9}.mini-score-pill{display:inline-block;padding:4px 10px;border-radius:6px;color:#fff;font-size:.82em;font-weight:700;white-space:nowrap}.plain-score{font-weight:700;font-size:.95em}.ratings-loading{text-align:center;padding:60px 20px;color:var(--text2)}.ratings-loading p{margin:12px 0 0;font-size:1em}.loading-hint{font-size:.85em!important;color:var(--text3)!important;margin-top:6px!important}.loading-spinner-large{width:48px;height:48px;border:4px solid var(--bg4);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.ratings-error{background:#ef44441a;border:1px solid #ef4444;border-radius:8px;padding:20px;color:#ef4444;text-align:center}.no-results{padding:40px;text-align:center;color:var(--text3)}.screener-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.9em;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.screener-toggle-btn:hover{border-color:var(--gold);color:var(--gold)}.screener-toggle-btn.active{border-color:var(--gold);background:var(--gold-dim);color:var(--gold)}.screener-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:10px;background:var(--gold);color:#000;font-size:.75em;font-weight:700;padding:0 5px}.screener-chevron{font-size:.7em;color:var(--text3)}.screener-panel{background:var(--bg2);border:1px solid var(--bg4);border-radius:10px;padding:20px;margin-bottom:16px}.screener-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.screener-group{display:flex;flex-direction:column;gap:8px}.screener-label{font-size:.75em;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text2)}.screener-tier-btns{display:flex;gap:4px;flex-wrap:wrap}.screener-tier-btn{padding:6px 12px;background:var(--bg3);border:1px solid var(--bg4);border-radius:6px;color:var(--text2);font-size:.82em;font-weight:600;cursor:pointer;transition:all .2s}.screener-tier-btn:hover{border-color:var(--gold);color:var(--text)}.screener-tier-btn.active{background:var(--gold-dim);border-color:var(--gold);color:var(--gold)}.screener-input-wrap{display:flex;align-items:center;gap:6px}.screener-input{flex:1;padding:8px 10px;background:var(--bg3);border:1px solid var(--bg4);border-radius:6px;color:var(--text);font-size:.88em;outline:none;max-width:120px;font-family:DM Mono,monospace}.screener-input::placeholder{color:var(--text3);font-family:Outfit,sans-serif}.screener-input-suffix{font-size:.82em;color:var(--text3);font-weight:600}.screener-clear-btn{display:block;margin:16px auto 0;padding:8px 20px;background:transparent;border:1px solid var(--bg4);border-radius:8px;color:var(--text3);font-size:.82em;font-weight:600;cursor:pointer;transition:all .2s}.screener-clear-btn:hover{border-color:var(--red);color:var(--red)}@media (max-width: 768px){.screener-grid{grid-template-columns:1fr;gap:14px}.screener-panel{padding:14px}.screener-tier-btns{gap:3px}.screener-tier-btn{padding:5px 8px;font-size:.78em}}.ratings-footer{margin-top:20px;font-size:.78em;color:var(--text3);padding:12px 16px;background:var(--bg3);border-radius:8px;line-height:1.6}.fund-comparison{padding:32px 24px;max-width:1400px;margin:0 auto}.comparison-selector{background:var(--bg2);border:1px solid var(--bg4);border-radius:14px;padding:24px;margin-bottom:28px}.selector-slots{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start;margin-bottom:20px}.selector-slot{flex:1;min-width:220px;max-width:340px;background:var(--bg3);border:1px solid var(--bg4);border-radius:10px;padding:14px}.slot-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.slot-label{font-size:.82em;font-weight:700;color:var(--text2);text-transform:uppercase;letter-spacing:.05em}.slot-remove{background:none;border:none;color:var(--text3);font-size:1em;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .2s}.slot-remove:hover{color:var(--red);background:#ff6b6b1a}.slot-fund-house{width:100%;padding:8px 10px;background:var(--bg2);border:1px solid var(--bg4);border-radius:6px;color:var(--text);font-size:.85em;cursor:pointer;outline:none;margin-bottom:8px;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.slot-fund-house:focus{border-color:var(--gold)}.slot-fund-house option{background:var(--bg2);color:var(--text)}.slot-search-wrap{position:relative}.slot-search-input{width:100%;padding:8px 10px;background:var(--bg2);border:1px solid var(--bg4);border-radius:6px;color:var(--text);font-size:.85em;outline:none}.slot-search-input:focus{border-color:var(--gold)}.slot-search-input::placeholder{color:var(--text3)}.slot-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg2);border:1px solid var(--bg4);border-radius:8px;max-height:220px;overflow-y:auto;z-index:100;margin-top:4px;box-shadow:0 8px 24px #0006}.slot-dropdown-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--bg4);transition:background .15s}.slot-dropdown-item:last-child{border-bottom:none}.slot-dropdown-item:hover{background:var(--bg3)}.dropdown-fund-name{font-size:.85em;font-weight:600;color:var(--text);line-height:1.3}.dropdown-fund-house{font-size:.75em;color:var(--text3);margin-top:2px}.slot-selected{margin-top:8px;padding:6px 10px;background:var(--gold-dim);border:1px solid var(--gold);border-radius:6px;color:var(--gold);font-size:.8em;font-weight:600;line-height:1.3}.add-slot-btn{min-width:120px;height:100px;display:flex;align-items:center;justify-content:center;background:var(--bg3);border:2px dashed var(--bg4);border-radius:10px;color:var(--text3);font-size:.9em;font-weight:600;cursor:pointer;transition:all .2s;align-self:stretch}.add-slot-btn:hover{border-color:var(--gold);color:var(--gold);background:var(--gold-dim)}.compare-btn{width:100%;padding:12px 24px;background:var(--bg4);border:1px solid var(--bg4);border-radius:10px;color:var(--text3);font-size:1em;font-weight:700;cursor:not-allowed;transition:all .25s}.compare-btn.active{background:var(--gold);border-color:var(--gold);color:#000;cursor:pointer}.compare-btn.active:hover{filter:brightness(1.1);box-shadow:0 4px 16px #f0b4294d}.compare-btn:disabled{opacity:.6;cursor:not-allowed}.comparison-error{background:#ef44441a;border:1px solid #ef4444;border-radius:8px;padding:14px 20px;color:#ef4444;text-align:center;margin-bottom:20px;font-size:.9em}.comparison-results{display:flex;flex-direction:column;gap:4px}.comparison-section-title{font-size:.82em;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gold);padding:20px 0 8px 4px;border-top:1px solid var(--bg4);margin-top:8px}.comparison-section-title:first-child{border-top:none;margin-top:0}.comparison-row{display:grid;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--bg4)}.comparison-row.fund-headers{border-bottom:2px solid var(--bg4);padding:0 0 16px}.row-label{font-size:.88em;font-weight:600;color:var(--text2);padding-left:4px}.fund-header-cell{background:var(--bg2);border:1px solid var(--bg4);border-radius:10px;padding:14px;text-align:center}.fund-header-name{font-size:.92em;font-weight:700;color:var(--text);line-height:1.3;margin-bottom:4px}.fund-header-house{font-size:.78em;color:var(--text3);margin-bottom:4px}.fund-header-manager{font-size:.75em;color:var(--text2);background:var(--bg3);border-radius:4px;padding:3px 8px;display:inline-block;margin-top:4px}.score-cell{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px}.score-cell.mini{padding:4px 8px}.score-big{font-family:DM Mono,monospace;font-size:2em;font-weight:700;line-height:1}.score-max{font-size:.75em;color:var(--text3);margin-top:-4px}.score-value{font-family:DM Mono,monospace;font-size:1.1em;font-weight:700}.score-suffix{font-size:.7em;color:var(--text3);font-weight:400}.score-bar{width:100%;max-width:120px;height:6px;background:var(--bg4);border-radius:3px;overflow:hidden}.score-bar-fill{height:100%;border-radius:3px;transition:width .6s ease}.cagr-val{font-family:DM Mono,monospace;font-size:1.05em;font-weight:700}.comparison-row.sectors-row{align-items:flex-start;padding:12px 0}.sector-cell{display:flex;flex-direction:column;gap:8px}.sector-item{display:flex;flex-direction:column;gap:2px}.sector-bar-wrap{display:flex;align-items:center;gap:8px}.sector-bar-bg{flex:1;height:8px;background:var(--bg4);border-radius:4px;overflow:hidden}.sector-bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.sector-pct{font-family:DM Mono,monospace;font-size:.78em;color:var(--text2);min-width:42px;text-align:right}.sector-name{font-size:.75em;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comparison-row.holdings-row{align-items:flex-start;padding:12px 0}.holdings-cell{display:flex;flex-direction:column;gap:4px}.holding-item{display:flex;justify-content:space-between;align-items:center;padding:5px 8px;border-radius:5px;transition:background .15s}.holding-item:hover{background:var(--bg3)}.holding-name{font-size:.82em;color:var(--text);font-weight:500;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-right:8px}.holding-pct{font-family:DM Mono,monospace;font-size:.8em;color:var(--text2);font-weight:600;white-space:nowrap}.overlap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;padding:8px 0 16px}.overlap-item{background:var(--bg2);border:1px solid var(--bg4);border-radius:8px;padding:10px 12px}.overlap-name{font-size:.85em;font-weight:600;color:var(--text);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overlap-weights{display:flex;gap:10px}.overlap-weight{font-family:DM Mono,monospace;font-size:.8em;font-weight:700}@media (max-width: 900px){.fund-comparison{padding:20px 12px}.comparison-selector{padding:16px}.selector-slots{flex-direction:column}.selector-slot{max-width:100%}.add-slot-btn{width:100%;height:50px}.comparison-row{grid-template-columns:1fr!important;gap:8px}.comparison-row.fund-headers{grid-template-columns:1fr!important}.row-label{font-weight:700;color:var(--gold);font-size:.8em;text-transform:uppercase}.fund-header-cell{padding:12px}.score-cell{flex-direction:row;justify-content:center;gap:10px}.score-bar{max-width:80px}.overlap-grid{grid-template-columns:1fr}}@media (max-width: 600px){.fund-comparison{padding:16px 8px}.comparison-selector{padding:12px;border-radius:10px}.selector-slot{padding:10px}.score-big{font-size:1.6em}}.fm-container{padding:32px 24px;max-width:1400px;margin:0 auto}.fm-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:16px}.fm-subtitle{color:var(--text2);font-size:.95em;margin:0}.fm-badge{background:var(--gold-dim);color:var(--gold);border:1px solid var(--gold);border-radius:20px;padding:6px 16px;font-size:.85em;font-weight:700;white-space:nowrap}.fm-filters{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.fm-search{flex:1;min-width:200px;padding:10px 16px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.9em;outline:none}.fm-search:focus{border-color:var(--gold)}.fm-search::placeholder{color:var(--text3)}.fm-filter-select{padding:10px 14px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.9em;cursor:pointer;outline:none}.fm-filter-select:focus{border-color:var(--gold)}.fm-loading{text-align:center;padding:60px 20px;color:var(--text2)}.fm-spinner{width:48px;height:48px;border:4px solid var(--bg4);border-top-color:var(--gold);border-radius:50%;animation:fm-spin .8s linear infinite;margin:0 auto 12px}@keyframes fm-spin{to{transform:rotate(360deg)}}.fm-error{background:#ef44441a;border:1px solid #ef4444;border-radius:8px;padding:20px;color:#ef4444;text-align:center}.fm-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--bg4)}.fm-table{width:100%;border-collapse:collapse;font-size:.9em}.fm-table thead tr{background:var(--bg3);border-bottom:2px solid var(--bg4)}.fm-table th{padding:12px 14px;text-align:left;font-weight:700;font-size:.82em;color:var(--text2);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.fm-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.fm-sortable:hover{color:var(--gold)}.fm-col-rank{width:60px;text-align:center!important}.fm-col-name{min-width:180px}.fm-col-house{min-width:140px}.fm-col-num{text-align:center!important;min-width:90px}.fm-sort-inactive{opacity:.3;font-size:.8em}.fm-sort-active{color:var(--gold);font-size:.85em}.fm-row{border-bottom:1px solid var(--bg4);cursor:pointer;transition:background .15s}.fm-row:hover,.fm-row.expanded{background:var(--bg3)}.fm-table td{padding:12px 14px;vertical-align:middle}.fm-rank-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-weight:700;font-size:.9em;background:var(--bg4);color:var(--text2)}.fm-rank-top-1{background:linear-gradient(135deg,gold,orange);color:#000}.fm-rank-top-2{background:linear-gradient(135deg,silver,#a0a0a0);color:#000}.fm-rank-top-3{background:linear-gradient(135deg,#cd7f32,#a05020);color:#fff}.fm-manager-name{font-weight:600;color:var(--text);font-size:.95em}.fm-expand-hint{font-size:.7em;color:var(--text3);margin-top:2px}.fm-houses-tags{display:flex;flex-wrap:wrap;gap:4px}.fm-house-tag{font-size:.78em;background:var(--bg4);color:var(--text2);padding:2px 8px;border-radius:4px;white-space:nowrap}.fm-fund-count{font-family:DM Mono,monospace;font-weight:700;font-size:1em;color:var(--text)}.fm-score-pill{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 10px;border-radius:8px;color:#fff;min-width:60px;line-height:1.2}.fm-score-num{font-size:1em;font-weight:700}.fm-score-label{font-size:.65em;opacity:.9}.fm-mini-pill{display:inline-block;padding:4px 10px;border-radius:6px;color:#fff;font-size:.82em;font-weight:700;white-space:nowrap}.fm-aum{font-family:DM Mono,monospace;font-weight:700;font-size:.88em;color:var(--gold);white-space:nowrap}.fm-cagr{font-weight:700;font-size:.95em;font-family:DM Mono,monospace}.fm-na{color:var(--text3);font-size:.8em}.fm-expand-row{background:var(--bg2)}.fm-expand-row td{padding:0}.fm-expand-content{padding:16px 20px 20px}.fm-expand-title{font-size:.82em;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gold);margin-bottom:14px}.fm-pillar-summary{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:18px;padding:12px 16px;background:var(--bg3);border-radius:10px;border:1px solid var(--bg4)}.fm-pillar-item{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:70px}.fm-pillar-val{font-family:DM Mono,monospace;font-size:1.2em;font-weight:700}.fm-pillar-label{font-size:.68em;color:var(--text3);text-transform:uppercase;letter-spacing:.03em;text-align:center}.fm-fund-list{display:flex;flex-direction:column;gap:2px}.fm-fund-item{display:grid;grid-template-columns:1fr 150px 60px 90px 60px 70px 70px 70px;gap:10px;align-items:center;padding:8px 12px;border-radius:6px;cursor:pointer;transition:background .15s}.fm-fund-item:hover{background:var(--bg3)}.fm-fi-name{font-size:.85em;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-fi-house{font-size:.75em;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fm-fi-score{font-family:DM Mono,monospace;font-weight:700;font-size:.9em;text-align:center}.fm-fi-aum{font-family:DM Mono,monospace;font-weight:600;font-size:.8em;color:var(--gold);text-align:right;white-space:nowrap}.fm-fi-age{font-size:.78em;color:var(--text2);text-align:center;white-space:nowrap}.fm-fi-cagr{font-family:DM Mono,monospace;font-weight:700;font-size:.82em;text-align:right}.fm-no-results{padding:40px;text-align:center;color:var(--text3)}@media (max-width: 768px){.fm-container{padding:20px 12px}.fm-header{flex-direction:column;gap:8px}.fm-filters{flex-direction:column}.fm-pillar-summary{gap:10px;padding:10px 12px}.fm-pillar-item{min-width:55px}.fm-pillar-val{font-size:1em}.fm-fund-item{grid-template-columns:1fr 60px 70px 55px;gap:6px}.fm-fi-house,.fm-fi-age{display:none}.fm-fi-cagr:last-child{display:none}.fm-fi-cagr:nth-last-child(2){display:none}}.screener-container{padding:32px 24px;max-width:1500px;margin:0 auto}.screener-header{display:flex;align-items:center;justify-content:flex-end;margin-bottom:16px;gap:12px}.screener-header-right{display:flex;align-items:center;gap:10px}.screener-refresh-btn{padding:8px 16px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.85em;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.screener-refresh-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.screener-refresh-btn:disabled,.screener-refresh-btn.refreshing{opacity:.6;cursor:not-allowed}.screener-top-bar{display:flex;gap:12px;margin-bottom:12px}.screener-text-search{flex:1;min-width:200px;padding:10px 16px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.9em;outline:none}.screener-text-search:focus{border-color:var(--gold)}.screener-text-search::placeholder{color:var(--text3)}.screener-house-select{padding:10px 14px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.9em;cursor:pointer;outline:none;min-width:180px}.screener-house-select:focus{border-color:var(--gold)}.screener-presets{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.screener-preset-btn{padding:7px 16px;background:var(--bg3);border:1px solid var(--bg4);border-radius:20px;color:var(--text2);font-size:.82em;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.screener-preset-btn:hover{border-color:var(--gold);color:var(--gold);background:var(--gold-dim)}.screener-filters{background:var(--bg2);border:1px solid var(--bg4);border-radius:12px;padding:20px;margin-bottom:20px}.screener-filter-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:14px}.screener-filter-row:last-child{margin-bottom:0}.screener-group{display:flex;flex-direction:column;gap:6px}.screener-label{font-size:.72em;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text2)}.screener-select{padding:9px 12px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.88em;cursor:pointer;outline:none;width:100%}.screener-select:focus{border-color:var(--gold)}.screener-input{padding:9px 12px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text);font-size:.88em;outline:none;width:100%;box-sizing:border-box}.screener-input:focus{border-color:var(--gold)}.screener-input::placeholder{color:var(--text3)}.screener-input-num{font-family:DM Mono,monospace}.screener-input-sm{max-width:80px;font-family:DM Mono,monospace}.screener-input::-webkit-outer-spin-button,.screener-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.screener-input[type=number]{-moz-appearance:textfield}.screener-cagr-group .screener-cagr-inputs{display:flex;gap:6px}.screener-stock-wrap{position:relative}.screener-stock-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text3);cursor:pointer;font-size:.85em;padding:2px 4px}.screener-stock-clear:hover{color:var(--text)}.screener-stock-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg2);border:1px solid var(--bg4);border-radius:8px;max-height:260px;overflow-y:auto;z-index:100;margin-top:4px;box-shadow:0 8px 24px #0006}.screener-stock-item{padding:8px 12px;cursor:pointer;display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--bg4);transition:background .15s}.screener-stock-item:last-child{border-bottom:none}.screener-stock-item:hover{background:var(--bg3)}.stock-symbol{font-weight:700;font-size:.85em;color:var(--gold);min-width:80px;font-family:DM Mono,monospace}.stock-name{font-size:.82em;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.screener-actions{display:flex;gap:12px;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--bg4)}.screener-search-btn{padding:10px 28px;background:var(--gold);border:none;border-radius:8px;color:#000;font-size:.9em;font-weight:700;cursor:pointer;transition:all .2s}.screener-search-btn:hover:not(:disabled){background:#e6b800}.screener-search-btn:disabled{opacity:.6;cursor:not-allowed}.screener-clear-btn{padding:10px 20px;background:transparent;border:1px solid var(--bg4);border-radius:8px;color:var(--text3);font-size:.82em;font-weight:600;cursor:pointer;transition:all .2s}.screener-clear-btn:hover{border-color:#ef4444;color:#ef4444}.screener-summary{display:flex;align-items:center;gap:12px;margin-bottom:14px;font-size:.9em;color:var(--text2);flex-wrap:wrap}.screener-tag{display:inline-block;padding:3px 10px;background:var(--gold-dim);border:1px solid var(--gold);border-radius:14px;color:var(--gold);font-size:.82em;font-weight:600}.screener-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--bg4)}.screener-table{width:100%;border-collapse:collapse;font-size:.88em}.screener-table thead tr{background:var(--bg3);border-bottom:2px solid var(--bg4)}.screener-table th{padding:12px 14px;text-align:left;font-weight:700;font-size:.78em;color:var(--text2);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.screener-table th:hover{color:var(--gold)}.screener-table th.th-rank{width:50px;text-align:center;cursor:default}.screener-table th.th-name{min-width:220px}.screener-table td{padding:10px 14px;vertical-align:middle}.screener-data-row{border-bottom:1px solid var(--bg4);transition:background .15s}.screener-data-row:hover{background:var(--bg3)}.td-rank{text-align:center;color:var(--text3);font-weight:600;font-size:.85em}.td-name{max-width:280px}.fund-link{font-weight:600;color:var(--text);cursor:pointer;line-height:1.3;transition:color .2s}.fund-link:hover{color:var(--gold)}.fund-manager-sub{font-size:.75em;color:var(--text3);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.td-house{font-size:.82em;color:var(--text2);white-space:nowrap}.td-aum{font-family:DM Mono,monospace;font-size:.85em;color:var(--text);text-align:right}.quality-pill{font-weight:700;font-size:.95em}.exposure-val{font-weight:700;color:var(--gold);font-family:DM Mono,monospace}.sort-inactive{opacity:.3;font-size:.8em}.sort-active{color:var(--gold);font-size:.85em}.screener-loading{text-align:center;padding:60px 20px;color:var(--text2)}.screener-loading p{margin:12px 0 0}.screener-error{background:#ef44441a;border:1px solid #ef4444;border-radius:8px;padding:16px;color:#ef4444;text-align:center;margin-bottom:16px}.screener-empty{text-align:center;padding:40px 20px;color:var(--text3);font-size:.95em}@media (max-width: 900px){.screener-filter-row{grid-template-columns:1fr 1fr;gap:12px}.screener-cagr-group{grid-column:1 / -1}}@media (max-width: 600px){.screener-container{padding:16px 12px}.screener-filter-row{grid-template-columns:1fr;gap:10px}.screener-filters{padding:14px}.screener-presets{gap:6px}.screener-preset-btn{padding:5px 12px;font-size:.78em}.screener-table th,.screener-table td{padding:8px 10px}.td-name{max-width:180px}}:root{--bg: #0d1117;--bg2: #161c26;--bg3: #1e2736;--bg4: #252d3d;--gold: #f0b429;--gold2: #ffd166;--gold-dim: rgba(240, 180, 41, .1);--green: #3ddc84;--red: #ff6b6b;--blue: #4d9de0;--text: #e8edf5;--text2: #8b95a8;--text3: #545f72;--primary: var(--gold);--accent: var(--gold);--secondary: var(--bg2);--dark: var(--text);--charcoal: var(--text2);--light-grey: var(--bg3);--light-bg: var(--bg2);--border: var(--bg4);--text-light: var(--text2);--success: var(--green);--danger: var(--red)}*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg);min-height:100vh;color:var(--text);position:relative}html:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.03;z-index:1000;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}.mono{font-family:DM Mono,monospace;font-weight:500}#root{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:20px}.header{text-align:center;color:#fff;margin-bottom:40px;padding:40px 20px}.header h1{font-size:2.5em;margin-bottom:5px;font-weight:700}.header p{font-size:1.1em;opacity:.95}.logo-container{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:20px}.logo{width:80px;height:80px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.logo[role=button],.header-text h1[role=button]{cursor:pointer}.header-text{text-align:left}.header-text h1{margin:0;font-size:3em}.tagline{margin:5px 0 0;font-size:1em;opacity:.9;font-weight:500}.subtitle{font-size:1.1em;opacity:.95}.search-section{margin-bottom:40px}.fund-house-selector{background:var(--bg2);padding:15px 20px;border-radius:12px 12px 0 0;box-shadow:0 10px 30px #0006;display:flex;align-items:center;gap:15px;margin-bottom:-8px;border:1px solid var(--bg4);border-bottom:none}.fund-house-selector label{font-weight:600;color:var(--text);font-size:.95em;white-space:nowrap}.fund-house-search-wrap{position:relative;flex:1;max-width:400px}.fund-house-search-input{width:100%;padding:10px 36px 10px 14px;border:2px solid var(--bg4);border-radius:8px;font-size:1em;background:var(--bg3);color:var(--text);transition:all .3s ease;box-sizing:border-box;outline:none}.fund-house-search-input::placeholder{color:var(--text3)}.fund-house-search-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-dim)}.fund-house-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text3);font-size:.85em;cursor:pointer;padding:2px 4px;line-height:1}.fund-house-clear:hover{color:var(--text)}.fund-house-dropdown-list{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg2);border:1px solid var(--bg4);border-radius:10px;box-shadow:0 8px 24px #0006;z-index:200;max-height:260px;overflow-y:auto}.fund-house-option{padding:10px 16px;font-size:.92em;color:var(--text2);cursor:pointer;transition:background .15s}.fund-house-option:first-child{border-radius:10px 10px 0 0}.fund-house-option:last-child{border-radius:0 0 10px 10px}.fund-house-option:hover{background:var(--bg3);color:var(--text)}.fund-house-option.selected{background:var(--gold-dim);color:var(--gold);font-weight:600}.search-box{display:flex;gap:10px;background:var(--bg2);padding:20px;border-radius:0 0 12px 12px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4);border-top:none}.search-input-wrapper{flex:1;position:relative}.search-input{width:100%;padding:12px 40px 12px 16px;border:2px solid var(--bg4);border-radius:8px;font-size:1em;transition:all .3s ease;background:var(--bg3);color:var(--text)}.search-input::placeholder{color:var(--text3)}.search-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-dim)}.clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.2em;color:var(--text-light);cursor:pointer;padding:6px 8px;transition:all .2s ease}.clear-btn:hover{color:var(--primary);transform:translateY(-50%) scale(1.1)}.dropdown-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--bg3);border:2px solid var(--gold);border-top:none;border-radius:0 0 8px 8px;max-height:250px;overflow-y:auto;z-index:1000;box-shadow:0 6px 15px #0006}.suggestions-header{padding:10px 16px;font-size:.8em;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;background:var(--light-bg);border-bottom:1px solid var(--border)}.no-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--bg3);border:2px solid var(--bg4);border-top:none;border-radius:0 0 8px 8px;padding:12px 16px;text-align:center;color:var(--text2);z-index:1000}.export-btn{position:fixed;right:20px;bottom:20px;z-index:3000;padding:12px 16px;background:linear-gradient(135deg,#4d96ff,#2e86ab);color:#fff;border:none;border-radius:10px;font-weight:700;cursor:pointer;box-shadow:0 10px 30px #00000026}.export-btn:hover{transform:translateY(-3px)}@media (max-width: 600px){.export-btn{right:12px;bottom:12px;padding:10px 12px;font-size:.9em}}.suggestion-item{padding:12px 16px;cursor:pointer;transition:background .2s ease;color:var(--text);display:flex;justify-content:space-between;align-items:center}.suggestion-item:hover{background:var(--bg4);color:var(--gold)}.suggestion-fund-name{font-weight:500;flex:1}.suggestion-badge{display:inline-block;background:var(--primary);color:#fff;font-size:.7em;font-weight:600;padding:3px 8px;border-radius:12px;margin-left:10px;white-space:nowrap}.suggestion-item:first-child{border-top:none}.suggestion-item+.suggestion-item{border-top:1px solid var(--border)}.search-btn{padding:12px 32px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--bg);border:none;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #f0b42966}.search-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f0b42999}.search-btn:active{transform:translateY(0)}.error-box{background:#fed7d7;color:#c53030;padding:16px;border-radius:8px;margin-bottom:20px;border-left:4px solid var(--danger);animation:slideIn .3s ease}.loading{text-align:center;padding:60px 20px;color:#fff}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;margin:0 auto 20px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.results-section{animation:slideIn .3s ease}.stock-info{background:var(--bg2);padding:30px;border-radius:12px;margin-bottom:30px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4)}.fund-meta{display:flex;align-items:center;gap:8px;margin-bottom:6px}.fund-code{font-size:11px;color:var(--text3);font-family:DM Mono,monospace;letter-spacing:.05em;text-transform:uppercase}.stock-info h2{font-size:26px;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.2;margin:0 0 20px}.fund-house-badge{display:inline-block;background:#4d9de026;color:var(--blue);border:1px solid rgba(77,157,224,.25);font-size:10px;font-weight:700;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.08em}.stock-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.stat{display:flex;flex-direction:column;padding:18px 20px;background:var(--bg2);border-radius:12px;border:1px solid var(--bg4);position:relative;overflow:hidden;transition:all .2s ease}.stat:hover{border-color:#ffffff1f;transform:translateY(-2px)}.stat .label{font-size:11px;color:var(--text3);text-transform:uppercase;letter-spacing:.08em;font-weight:500;margin-bottom:10px}.stat .value{font-size:22px;font-weight:700;color:var(--text);letter-spacing:-.02em;line-height:1}.funds-container{background:var(--bg2);padding:30px;border-radius:12px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4)}.funds-container h3{color:var(--text);margin-bottom:25px;font-size:1.5em}.no-funds{color:var(--text-light);text-align:center;padding:40px 20px}.funds-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.fund-card{border:2px solid var(--bg4);border-radius:10px;padding:20px;transition:all .3s ease;background:var(--bg3)}.fund-card:hover{border-color:var(--gold);box-shadow:0 5px 20px #f0b42933;transform:translateY(-4px)}.fund-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.fund-header h4{color:var(--text);font-size:1.1em;flex:1;margin-right:10px}.fund-code{background:var(--primary);color:#fff;padding:4px 10px;border-radius:4px;font-size:.8em;font-weight:600;white-space:nowrap}.fund-details{display:flex;flex-direction:column;gap:15px}.detail-item{display:flex;flex-direction:column;gap:8px}.detail-label{font-size:.85em;color:var(--text-light);font-weight:500}.detail-value{font-size:1.1em;font-weight:600;color:var(--primary)}.detail-value.highlight{color:var(--secondary);font-size:1.2em}.progress-bar{width:100%;height:8px;background:var(--border);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));transition:width .5s ease}.empty-state{text-align:center;padding:80px 20px;color:#fff;font-size:1.2em}.view-mode-toggle{display:flex;justify-content:center;gap:15px;margin-bottom:30px}.view-mode-btn{padding:12px 30px;font-size:1.1em;font-weight:600;border:2px solid white;background:transparent;color:#fff;border-radius:10px;cursor:pointer;transition:all .3s ease}.view-mode-btn:hover{background:#ffffff1a;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.view-mode-btn.active{background:#fff;color:var(--primary);box-shadow:0 6px 20px #0000004d}.stocks-grid-container{background:var(--bg2);border-radius:16px;padding:30px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4)}.stocks-header{margin-bottom:25px;padding-bottom:15px;border-bottom:3px solid var(--primary)}.stocks-header h2{color:var(--text);font-size:1.8em;font-weight:700}.stocks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.stock-card{background:var(--bg3);border:2px solid var(--bg4);border-radius:12px;padding:20px;cursor:pointer;transition:all .3s ease}.stock-card:hover{border-color:var(--gold);box-shadow:0 8px 24px #f0b42933;transform:translateY(-4px)}.stock-card-header{margin-bottom:15px;padding-bottom:12px;border-bottom:2px solid var(--border)}.stock-card-header h3{color:var(--text);font-size:1.2em;font-weight:700;margin-bottom:5px}.stock-symbol{display:inline-block;background:var(--primary);color:#fff;padding:4px 12px;border-radius:6px;font-size:.85em;font-weight:600}.stock-card-info{display:flex;flex-direction:column;gap:10px}.stock-info-item{display:flex;justify-content:space-between;align-items:center}.info-label{font-size:.9em;color:var(--text-light);font-weight:500}.info-value{font-size:1em;color:var(--text);font-weight:600}.info-value.price{color:var(--primary);font-size:1.1em;font-weight:700}.portfolio-view{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin-top:30px}.chart-card{background:var(--bg2);padding:30px;border-radius:16px;box-shadow:0 10px 30px #0006;border:1px solid var(--bg4)}.chart-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:25px}.chart-card-header h3{font-size:13px;color:var(--text);font-weight:600;letter-spacing:.01em;margin:0 0 2px}.chart-subtitle{font-size:11px;color:var(--text3);margin:2px 0 0}.chart-badge{background:var(--bg3);color:var(--text3);padding:3px 8px;border-radius:4px;font-size:10px;font-weight:600;border:1px solid var(--bg4);flex-shrink:0}.chart-with-legend{display:flex;gap:30px;align-items:center}.chart-wrapper{flex:1;position:relative}.chart-center-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center}.center-value{font-size:18px;font-weight:700;color:var(--text)}.center-text{font-size:9px;color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}.chart-legend-custom{flex:1;max-width:250px;display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto;padding-right:10px}.chart-legend-custom::-webkit-scrollbar{width:6px}.chart-legend-custom::-webkit-scrollbar-track{background:var(--bg3);border-radius:3px}.chart-legend-custom::-webkit-scrollbar-thumb{background:var(--bg4);border-radius:3px}.chart-legend-custom::-webkit-scrollbar-thumb:hover{background:var(--gold)}.legend-item-custom{display:flex;align-items:center;gap:8px;padding:0;background:transparent;border-radius:0;transition:all .2s ease}.legend-item-custom:hover{opacity:.8}.legend-color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-label-text{flex:1;font-size:11.5px;color:var(--text2);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legend-percent-text{font-size:11px;color:var(--text3);font-weight:400;font-family:DM Mono,monospace;min-width:50px;text-align:right;margin-left:auto}.chart-container{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}.chart-container h3{font-size:1.3em;color:var(--dark);margin-bottom:20px;font-weight:600;width:100%}.chart-container .recharts-pie-label-text{font-size:11px!important;font-weight:500}.holdings-chart{display:flex;flex-direction:column;gap:12px;width:100%}.chart-bar-item{display:flex;flex-direction:column;gap:6px}.bar-label{display:flex;justify-content:space-between;align-items:center;font-size:.9em}.bar-name{color:var(--dark);font-weight:500;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-percent{color:var(--primary);font-weight:600;margin-left:10px;min-width:50px;text-align:right}.bar-container{width:100%;height:28px;background:var(--light-bg);border-radius:6px;overflow:hidden;border:1px solid var(--border)}.bar-fill{height:100%;transition:width .3s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;min-width:30px}.chart-legend,.legend-item,.legend-color,.legend-label,.legend-percent,.heatmap-grid,.heatmap-tile,.heatmap-content,.heatmap-name,.heatmap-value{display:none}.details-container{display:flex;flex-direction:column;grid-column:1 / -1;margin-top:40px;padding-top:30px;border-top:2px solid var(--border)}.details-container h3{font-size:1.3em;color:var(--dark);margin-bottom:20px;font-weight:600}.holdings-list{display:flex;flex-direction:column;gap:12px;max-height:500px;overflow-y:auto;padding-right:8px}.holding-item{display:flex;gap:12px;padding:12px;background:var(--light-bg);border-radius:6px;border-left:4px solid var(--primary);transition:all .3s ease}.holding-item:hover{box-shadow:0 2px 8px #0000001a;transform:translate(5px)}.holding-color{width:32px;height:32px;border-radius:4px;flex-shrink:0}.holding-info{flex:1}.holding-info h4{font-size:.9em;color:var(--dark);margin:0 0 6px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.holding-info h4.clickable-stock{color:var(--primary);cursor:pointer;transition:all .2s ease;text-decoration:underline;text-decoration-color:transparent}.holding-info h4.clickable-stock:hover{color:var(--secondary);text-decoration-color:var(--secondary);transform:translate(2px)}.holding-details-row{display:flex;justify-content:space-between;font-size:.8em;margin:3px 0;color:var(--text-light)}.holding-details-row .detail-label{font-weight:500;color:var(--charcoal)}.holding-details-row .detail-value{color:var(--primary);font-weight:600}.more-holdings{color:var(--text-light);font-size:.9em;font-style:italic;padding:10px;text-align:center}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .6s ease-out forwards}.fade-up-delay-1{animation-delay:.05s}.fade-up-delay-2{animation-delay:.1s}.fade-up-delay-3{animation-delay:.15s}.fade-up-delay-4{animation-delay:.2s}.fade-up-delay-5{animation-delay:.25s}@media (max-width: 1200px){.portfolio-view{grid-template-columns:1fr}.chart-with-legend{flex-direction:column}.chart-legend-custom{max-width:100%;flex-direction:row;flex-wrap:wrap;max-height:none}.legend-item-custom{flex:0 0 calc(50% - 6px)}}@media (max-width: 768px){.header h1{font-size:2em}.logo-container{flex-direction:column;gap:10px}.header-text{text-align:center}.search-box{flex-direction:column}.stock-stats,.funds-list{grid-template-columns:1fr}.funds-container{padding:20px}.chart-legend{grid-template-columns:1fr}.portfolio-view{padding:20px}.chart-card{padding:20px;overflow:visible}.chart-wrapper{min-height:300px;width:100%;overflow:visible}.chart-card-header{flex-direction:column;align-items:flex-start;gap:10px}.chart-legend-custom{grid-template-columns:1fr;gap:8px}.main-content{margin-left:0!important;padding-top:70px}}.holdings-section{background:var(--bg2);border:1px solid var(--bg4);border-radius:16px;overflow:hidden;margin-top:8px}.holdings-section-top{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--bg4);flex-wrap:wrap;gap:12px}.holdings-title{font-size:1.1em;font-weight:700;color:var(--text);margin:0 0 4px}.holdings-subtitle{font-size:.82em;color:var(--text3);margin:0}.holdings-section-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.holdings-type-tabs{display:flex;gap:4px;background:var(--bg3);border-radius:8px;padding:4px}.type-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;background:transparent;border:none;border-radius:6px;color:var(--text2);font-size:.82em;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.type-tab:hover{color:var(--text)}.type-tab.active{background:var(--gold);color:#000}.tab-count{font-size:.75em;opacity:.75}.holdings-export-btn{padding:7px 14px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text2);font-size:.82em;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.holdings-export-btn:hover{border-color:var(--gold);color:var(--gold)}.holdings-table-wrapper{overflow-x:auto}.holdings-table{width:100%;border-collapse:collapse;font-size:.88em}.holdings-table thead tr{background:var(--bg3);border-bottom:1px solid var(--bg4)}.holdings-table th{padding:10px 16px;text-align:left;font-size:.78em;font-weight:700;color:var(--text3);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.th-num{width:52px;text-align:center!important}.th-instrument{min-width:220px}.th-industry{min-width:160px}.th-allocation{min-width:180px}.th-value{min-width:140px;text-align:right!important}.th-quantity{min-width:110px;text-align:right!important}.holding-row{border-bottom:1px solid var(--bg4);transition:background .15s}.holding-row:last-child{border-bottom:none}.holding-row:hover{background:var(--bg3)}.holdings-table td{padding:14px 16px;vertical-align:middle;color:var(--text)}.td-num{text-align:center;color:var(--text3);font-size:.85em;font-weight:600;font-variant-numeric:tabular-nums}.instrument-cell{display:flex;align-items:center;gap:10px}.instrument-color-bar{width:4px;height:36px;border-radius:2px;flex-shrink:0}.instrument-name{font-weight:600;color:var(--text);line-height:1.4}.instrument-name.clickable{cursor:pointer;color:var(--gold);text-decoration:none}.instrument-name.clickable:hover{text-decoration:underline}.industry-tag{display:inline-block;padding:3px 10px;border-radius:20px;background:var(--bg4);color:var(--text2);font-size:.8em;white-space:nowrap}.industry-tag-empty{background:transparent;color:var(--text3)}.alloc-cell{display:flex;align-items:center;gap:10px}.alloc-bar-track{flex:1;height:6px;background:var(--bg4);border-radius:3px;min-width:80px;max-width:120px;overflow:hidden}.alloc-bar-fill{height:100%;background:var(--gold);border-radius:3px;transition:width .3s}.alloc-pct{font-size:.9em;font-weight:700;color:var(--text);min-width:48px;text-align:right;font-variant-numeric:tabular-nums}.td-value,.td-quantity{text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.holdings-pagination{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-top:1px solid var(--bg4);flex-wrap:wrap;gap:10px}.pagination-info{font-size:.82em;color:var(--text3)}.pagination-controls{display:flex;align-items:center;gap:4px}.pg-btn{min-width:36px;height:36px;padding:0 10px;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text2);font-size:.85em;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.pg-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold)}.pg-btn.active{background:var(--gold);border-color:var(--gold);color:#000}.pg-btn:disabled{opacity:.35;cursor:not-allowed}.pg-ellipsis{padding:0 4px;color:var(--text3);font-size:.9em}.holdings-view-all-btn{padding:7px 16px;background:var(--gold);border:none;border-radius:8px;color:#000;font-size:.82em;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}.holdings-view-all-btn:hover{opacity:.85}.holdings-preview{padding:12px 24px 16px}.holdings-preview-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--bg4);gap:12px}.holdings-preview-item:last-child{border-bottom:none}.holdings-preview-item .instrument-cell{flex:1;min-width:0}.holdings-preview-item .alloc-cell{min-width:140px}.holdings-preview-more{display:block;width:100%;padding:10px;margin-top:8px;background:var(--bg3);border:1px dashed var(--bg4);border-radius:8px;color:var(--gold);font-size:.85em;font-weight:600;cursor:pointer;text-align:center;transition:all .2s}.holdings-preview-more:hover{border-color:var(--gold);background:var(--gold-dim)}.holdings-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:modal-fade-in .2s ease}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.holdings-modal{background:var(--bg2);border:1px solid var(--bg4);border-radius:16px;width:100%;max-width:1100px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;animation:modal-slide-in .2s ease}@keyframes modal-slide-in{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.holdings-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--bg4);flex-wrap:wrap;gap:12px}.holdings-modal-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.holdings-modal-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg3);border:1px solid var(--bg4);border-radius:8px;color:var(--text2);font-size:1.1em;cursor:pointer;transition:all .2s;flex-shrink:0}.holdings-modal-close:hover{border-color:#ef4444;color:#ef4444}.holdings-modal .holdings-table-wrapper{flex:1;overflow-y:auto}.holdings-modal .holdings-pagination{flex-shrink:0}@media (max-width: 768px){.holdings-section-top{flex-direction:column;align-items:flex-start}.holdings-modal{max-height:90vh;border-radius:12px}.holdings-modal-overlay{padding:10px}.holdings-modal-header{flex-direction:column;align-items:flex-start}.holdings-modal-header-actions{width:100%;justify-content:space-between}.th-industry,.td-industry,.th-value,.td-value{display:none}.alloc-bar-track{min-width:50px}}.export-pdf-btn{background:transparent;color:var(--text2);border:1px solid var(--border);padding:6px 14px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .2s ease}.export-pdf-btn:hover{background:#ffffff0f;color:var(--text1);border-color:var(--text3)}.export-pdf-btn:active{background:#ffffff1a}@media (max-width: 768px){.export-pdf-btn{font-size:11px;padding:5px 10px}}.stock-header{background:var(--bg2);border-radius:12px;padding:32px;margin-bottom:24px;border:1px solid var(--bg3)}.back-button{background:transparent;color:var(--text2);border:none;padding:8px 0;font-size:14px;cursor:pointer;margin-bottom:20px;transition:color .2s}.back-button:hover{color:var(--accent)}.stock-title-section{margin-bottom:24px}.stock-company-name{font-size:32px;font-weight:700;color:var(--text);margin:0 0 8px}.stock-meta{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text2)}.sector{color:var(--accent);font-weight:500}.separator{color:var(--bg4)}.stock-price-section{display:flex;align-items:baseline;gap:16px;margin-bottom:32px}.current-price{font-size:48px;font-weight:700;color:var(--text)}.price-change{font-size:20px;font-weight:600;display:flex;align-items:center;gap:4px}.price-change.positive{color:#22c55e}.price-change.negative{color:#ef4444}.key-metrics-container{display:flex;flex-direction:column;gap:12px;padding-top:20px;border-top:1px solid var(--bg3)}.metrics-row{display:flex;align-items:center;gap:16px}.metric-item{display:flex;align-items:baseline;gap:6px}.metric-label{font-size:12px;color:var(--text2);font-weight:500}.metric-value{font-size:16px;font-weight:600;color:#fff}.metric-separator{color:var(--bg4);font-size:14px}@media (max-width: 1200px){.metrics-row{flex-wrap:wrap;gap:12px}}@media (max-width: 768px){.key-metrics-container{gap:8px}.metrics-row{flex-direction:column;align-items:flex-start;gap:6px}.metric-separator{display:none}.current-price{font-size:36px}.price-change{font-size:16px}}.stock-chart-container{background:var(--bg2);border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid var(--bg3)}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.chart-header h3{font-size:18px;font-weight:600;color:var(--text);margin:0}.timeframe-selector{display:flex;gap:4px;background:var(--bg);padding:4px;border-radius:8px}.timeframe-btn{padding:8px 16px;background:transparent;border:none;color:var(--text2);font-size:14px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s}.timeframe-btn:hover{background:var(--bg3);color:var(--text)}.timeframe-btn.active{background:var(--accent);color:var(--bg)}.chart-loading,.chart-no-data{height:400px;display:flex;align-items:center;justify-content:center;color:var(--text2);font-size:16px}.chart-tooltip{background:var(--bg2);border:1px solid var(--bg4);border-radius:8px;padding:12px;box-shadow:0 4px 12px #0000004d}.tooltip-date{font-size:12px;color:var(--text2);margin-bottom:4px}.tooltip-price{font-size:18px;font-weight:700;color:var(--accent)}@media (max-width: 768px){.chart-header{flex-direction:column;align-items:flex-start;gap:16px}.timeframe-selector{width:100%;overflow-x:auto}.timeframe-btn{flex-shrink:0}}.stock-tabs-container{background:var(--bg2);border-radius:12px;border:1px solid var(--bg3);overflow:hidden;margin-bottom:24px}.tabs-header{display:flex;border-bottom:1px solid var(--bg3);background:var(--bg)}.tab-button{flex:1;padding:16px 24px;background:transparent;border:none;color:var(--text2);font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;white-space:nowrap}.tab-button:hover{color:var(--text);background:var(--bg2)}.tab-button.active{color:var(--accent);background:var(--bg2)}.tab-button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--accent);animation:slideIn .3s ease}@keyframes slideIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.tab-content{padding:32px;min-height:400px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stock-tabs-error{padding:32px;text-align:center;color:var(--text2);background:var(--bg2);border-radius:12px;border:1px solid var(--bg3)}@media (max-width: 768px){.tabs-header{overflow-x:auto;scrollbar-width:thin}.tab-button{flex-shrink:0;padding:12px 16px;font-size:14px;min-width:100px}.tab-content{padding:20px;min-height:300px}}@media (max-width: 768px){.tabs-header::-webkit-scrollbar{height:4px}.tabs-header::-webkit-scrollbar-track{background:var(--bg)}.tabs-header::-webkit-scrollbar-thumb{background:var(--bg3);border-radius:2px}.tabs-header::-webkit-scrollbar-thumb:hover{background:var(--bg4)}}.events-timeline-container{background:var(--bg2);border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid var(--bg3)}.events-timeline-container h3{font-size:20px;font-weight:600;color:var(--text);margin:0 0 8px}.timeline-subtitle{font-size:14px;color:var(--text2);margin:0 0 24px}.no-events{padding:48px 24px;text-align:center;color:var(--text2)}.no-events p{margin:0;font-size:14px}.timeline{display:flex;flex-direction:column;gap:32px}.timeline-year{display:flex;gap:24px}.year-label{font-size:18px;font-weight:700;color:var(--accent);min-width:60px;padding-top:8px;flex-shrink:0}.year-events{flex:1;display:flex;flex-direction:column;gap:16px}.timeline-event{display:flex;gap:16px}.event-marker{display:flex;flex-direction:column;align-items:center;padding-top:8px;flex-shrink:0}.event-dot{width:16px;height:16px;border-radius:50%;border:3px solid var(--accent);background:var(--bg2);box-shadow:0 0 0 4px var(--bg2);position:relative;z-index:2;display:flex;align-items:center;justify-content:center}.event-dot-inner{width:6px;height:6px;border-radius:50%;background:var(--accent)}.event-line{width:2px;flex:1;background:var(--bg3);margin-top:4px;min-height:24px}.event-card{flex:1;background:var(--bg);border:1px solid var(--bg3);border-radius:8px;padding:16px;display:flex;gap:12px;transition:all .2s ease;cursor:default}.event-card:hover{border-color:var(--bg4);transform:translate(4px);box-shadow:0 2px 8px #0003}.event-icon{font-size:24px;line-height:1;flex-shrink:0}.event-details{flex:1;min-width:0}.event-type{font-size:16px;font-weight:600;color:var(--text);margin-bottom:4px}.event-info{font-size:14px;font-weight:600;margin-bottom:4px}.event-date{font-size:12px;color:var(--text2)}.timeline-footer{margin-top:24px;padding-top:16px;border-top:1px solid var(--bg3);text-align:center}.timeline-footer p{font-size:13px;color:var(--text2);margin:0}@media (max-width: 768px){.timeline-year{flex-direction:column;gap:12px}.year-label{min-width:auto;padding-top:0}.event-card{padding:12px}.event-type{font-size:14px}.event-info{font-size:13px}.event-icon{font-size:20px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.timeline-event{animation:fadeInUp .3s ease backwards}.timeline-event:nth-child(1){animation-delay:.05s}.timeline-event:nth-child(2){animation-delay:.1s}.timeline-event:nth-child(3){animation-delay:.15s}.timeline-event:nth-child(4){animation-delay:.2s}.timeline-event:nth-child(5){animation-delay:.25s}.peer-comparison-container{background:var(--bg2);border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid var(--bg3)}.peer-comparison-container h3{font-size:20px;font-weight:600;color:var(--text);margin:0 0 8px}.peer-subtitle{font-size:14px;color:var(--text2);margin:0 0 24px}.peer-loading,.peer-error,.peer-empty{padding:48px 24px;text-align:center;color:var(--text2);font-size:14px}.peer-error{color:#ef4444}.peer-table-wrapper{overflow-x:auto;margin-bottom:16px}.peer-table{width:100%;border-collapse:collapse;min-width:800px}.peer-table thead th{background:var(--bg);color:var(--text2);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:12px 16px;text-align:left;border-bottom:2px solid var(--bg3);white-space:nowrap;position:sticky;top:0;z-index:10}.peer-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.peer-table thead th.sortable:hover{color:var(--accent)}.peer-table tbody tr{border-bottom:1px solid var(--bg3);transition:background .2s,transform .2s}.peer-table tbody tr.clickable{cursor:pointer}.peer-table tbody tr.clickable:hover{background:var(--bg);transform:translate(2px)}.peer-table tbody tr.current-stock{background:#d4af3714;border-left:3px solid var(--accent);border-right:3px solid var(--accent)}.peer-table tbody tr.current-stock:hover{background:#d4af371f}.peer-table td{padding:16px;font-size:14px;color:var(--text)}.company-cell{font-weight:500;max-width:300px}.company-info{display:flex;flex-direction:column;gap:4px}.company-name{color:var(--text);display:flex;align-items:center;gap:8px}.company-symbol{font-size:12px;color:var(--text2);font-family:monospace}.you-badge{font-size:11px;color:var(--accent);font-weight:700;background:#d4af3726;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.metric-cell{font-weight:500;white-space:nowrap}.star{margin-left:4px;font-size:14px;display:inline-block;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.text-right{text-align:right}.peer-legend{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--bg3);font-size:12px;color:var(--text2)}.peer-legend .separator{color:var(--bg4)}@media (max-width: 1024px){.peer-table{min-width:700px}}@media (max-width: 768px){.peer-comparison-container{padding:16px}.peer-table{font-size:12px;min-width:650px}.peer-table td,.peer-table th{padding:10px 8px}.company-name{font-size:13px}.company-symbol{font-size:11px}.peer-legend{flex-direction:column;align-items:flex-start;gap:8px}.peer-legend .separator{display:none}}@keyframes fadeInRow{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.peer-table tbody tr{animation:fadeInRow .3s ease backwards}.peer-table tbody tr:nth-child(1){animation-delay:.05s}.peer-table tbody tr:nth-child(2){animation-delay:.1s}.peer-table tbody tr:nth-child(3){animation-delay:.15s}.peer-table tbody tr:nth-child(4){animation-delay:.2s}.peer-table tbody tr:nth-child(5){animation-delay:.25s}.peer-table tbody tr:nth-child(6){animation-delay:.3s}.peer-table tbody tr:nth-child(7){animation-delay:.35s}.peer-table tbody tr:nth-child(8){animation-delay:.4s}.peer-table tbody tr:nth-child(9){animation-delay:.45s}.peer-table tbody tr:nth-child(10){animation-delay:.5s}.app-layout{display:flex;min-height:100vh;background:var(--bg)}.main-content{flex:1;min-height:100vh;transition:margin-left .3s ease}.main-content.with-sidebar{margin-left:280px}@media (max-width: 768px){.main-content.with-sidebar{margin-left:0}}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),[role=button]:focus:not(:focus-visible),[role=tab]:focus:not(:focus-visible){outline:none}.tab-button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--bg2)}.timeframe-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.peer-row.clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--bg)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--accent);color:var(--bg);padding:8px 16px;text-decoration:none;font-weight:600;border-radius:0 0 4px;z-index:100}.skip-link:focus{top:0}@media (prefers-contrast: high){.stock-header,.stock-chart-container,.stock-tabs-container,.events-timeline-container,.peer-comparison-container{border-width:2px}.tab-button.active:after{height:4px}.event-dot{border-width:4px}}[role=button],[role=tab],.clickable{position:relative}[role=button]:focus-visible:after,[role=tab]:focus-visible:after,.clickable:focus-visible:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px dashed var(--accent);border-radius:6px;pointer-events:none;opacity:.5}.skeleton{background:linear-gradient(90deg,var(--bg3) 0%,var(--bg4) 50%,var(--bg3) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:4px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-heading{height:24px;width:60%;margin-bottom:16px}.skeleton-card{height:120px;margin-bottom:16px}.error-message{padding:16px;background:#ef44441a;border:1px solid #ef4444;border-radius:8px;color:#fca5a5;text-align:center}@media print{.refresh-btn,.timeframe-selector,.tabs-header,.back-button{display:none!important}.tab-content{display:block!important}*{color:#000!important;background:#fff!important}.stock-header,.stock-chart-container,.events-timeline-container,.peer-comparison-container{border:1px solid #000!important;margin-bottom:20px}}[title]:focus:after,[title]:hover:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:4px 8px;background:var(--bg);border:1px solid var(--bg3);border-radius:4px;font-size:12px;white-space:nowrap;z-index:1000;pointer-events:none}.positive:before{content:"▲ ";font-size:.8em}.negative:before{content:"▼ ";font-size:.8em}@media (max-width: 768px){button,a,[role=button],[role=tab],.clickable{min-height:44px;min-width:44px}.peer-row{min-height:44px}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#764ba2}
