.market-sentiment{margin-top:.5rem}.section-title{font-size:1.1rem;font-weight:700;margin-bottom:.75rem;color:var(--blue)}.sentiment-meter{background:var(--bg-card);border:2px solid var(--border);padding:1rem;margin-bottom:.75rem}.meter-track{height:14px;background:#ddd;margin-bottom:.5rem}.meter-fill{height:100%}.meter-fill.bearish{background:linear-gradient(90deg,var(--red),var(--amber))}.meter-fill.neutral{background:var(--amber)}.meter-fill.bullish{background:linear-gradient(90deg,var(--amber),var(--green))}.meter-labels{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-muted);margin-bottom:.75rem}.sentiment-badge .badge{font-weight:700;padding:.25rem .5rem}.sentiment-badge .badge.bullish{background:var(--green);color:#fff}.sentiment-badge .badge.neutral{background:var(--amber);color:#000}.sentiment-badge .badge.bearish{background:var(--red);color:#fff}.sentiment-badge .score{font-family:var(--font-mono);margin-left:.5rem}.sentiment-note{font-size:.8rem;color:var(--text-muted)}.sector-heatmap{margin-top:.5rem}.sector-loading{padding:1rem;color:var(--text-muted);font-size:.9rem}.section-desc{font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.heatmap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:.5rem;margin-bottom:.75rem}.heatmap-cell{background:var(--bg-card);border:2px solid var(--border);padding:.75rem;min-height:82px;display:flex;flex-direction:column;gap:.2rem;overflow:hidden}.heatmap-cell.hot{background:#e8f5e9;border-color:var(--green)}.heatmap-cell.warm{background:#fff8e1}.heatmap-cell.cool{background:#ffebee}.heatmap-cell.cold{background:#ffcdd2;border-color:var(--red)}.sector-name{font-weight:700;font-size:.85rem;line-height:1.2;word-break:break-word;flex-shrink:0}.sector-ticker{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);flex-shrink:0}.sector-change{font-weight:700;margin-top:.35rem;flex-shrink:0}.sector-change.up{color:var(--green)}.sector-change.down{color:var(--red)}.heatmap-legend{font-size:.8rem;color:var(--text-muted)}.macro-dashboard{margin-top:.5rem}.macro-loading{padding:1rem;color:var(--text-muted);font-size:.9rem}.macro-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;margin-bottom:.75rem}.macro-card{background:var(--bg-card);border:2px solid var(--border);padding:.75rem;display:flex;flex-direction:column;gap:.25rem}.macro-label{font-size:.8rem;color:var(--text-muted);word-break:break-word;display:block}.macro-values{display:flex;align-items:baseline;gap:.5rem}.macro-value{font-size:1.1rem;font-weight:700;font-family:var(--font-mono)}.macro-change.up{color:var(--green)}.macro-change.down{color:var(--red)}.macro-note{font-size:.8rem;color:var(--text-muted)}.earnings-calendar{margin-top:.5rem}.earnings-loading{padding:1rem;color:var(--text-muted);font-size:.9rem}.earnings-tier{margin-bottom:1.5rem}.earnings-tier .tier-header{font-size:1rem;font-weight:700;margin-bottom:.5rem;padding:.5rem;background:var(--bg-card);border:2px solid var(--border)}.earnings-tier .tier-range{font-size:.85rem;color:var(--text-muted);margin-left:.5rem}.earnings-table-wrap{overflow-x:auto;margin-bottom:.75rem}.earnings-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:2px solid var(--border)}.earnings-table th,.earnings-table td{padding:.5rem .75rem;text-align:left;border:1px solid var(--border)}.earnings-table th{background:var(--blue);color:#fff;font-size:.8rem;font-weight:700}.earnings-table .symbol{font-family:var(--font-mono);font-weight:700;color:var(--blue)}.earnings-table .time-badge{font-size:.75rem;background:var(--bg-elevated);padding:.15rem .35rem;border:1px solid var(--border)}.earnings-table .change.up{color:var(--green)}.earnings-table .change.down{color:var(--red)}.earnings-note{font-size:.8rem;color:var(--text-muted)}.undervalued-screener{margin-top:.5rem}.data-disclaimer{background:#fff3cd;border:2px solid var(--amber);padding:.5rem .75rem;font-size:.85rem;margin-bottom:.75rem}.screener-controls{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.screener-controls select{padding:.4rem;background:#fff;border:2px solid var(--border)}.screener-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:2px solid var(--border)}.screener-table th,.screener-table td{padding:.5rem .75rem;border:1px solid var(--border)}.screener-table th{background:var(--blue);color:#fff;font-size:.8rem;font-weight:700}.screener-table .symbol{font-family:var(--font-mono);font-weight:700;color:var(--blue)}.screener-table .score-badge{font-weight:700;padding:.15rem .35rem}.screener-table .score-badge.high{background:var(--green);color:#fff}.screener-table .score-badge.mid{background:var(--amber);color:#000}.screener-table .score-badge.low{background:var(--red);color:#fff}.screener-table .change.up{color:var(--green)}.screener-table .change.down{color:var(--red)}.risk-calculator{animation:fadeIn .3s ease}.formula-desc{margin-top:.5rem;font-size:.9rem;color:var(--text-muted);padding:.5rem;background:var(--bg-card);border:1px solid var(--border)}.formula-desc strong{color:var(--blue)}.risk-form{display:flex;gap:.75rem;margin:1rem 0}.symbol-input{flex:1;max-width:280px;padding:.5rem;background:#fff;border:2px solid var(--border);color:var(--text);font-family:var(--font-mono);font-size:1rem}.symbol-input:focus{outline:none;border-color:var(--blue)}.risk-form button{padding:.5rem 1rem;background:var(--red);color:#fff;border:2px solid var(--red);font-weight:700;cursor:pointer}.risk-form button:hover:not(:disabled){background:#a01830}.risk-form button:disabled{opacity:.6;cursor:not-allowed}.error-msg{color:var(--red);margin-bottom:1rem;font-weight:700}.risk-result{background:var(--bg-card);border:2px solid var(--border);padding:1rem;margin-top:1rem}.result-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.result-header h3{font-size:1.2rem;font-weight:700}.risk-badge{font-size:.8rem;font-weight:700;padding:.2rem .5rem}.risk-badge.low{background:var(--green);color:#fff}.risk-badge.medium{background:var(--amber);color:#000}.risk-badge.high{background:var(--red);color:#fff}.result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.result-item{display:flex;flex-direction:column;gap:.2rem;padding:.5rem;background:var(--bg-elevated);border:1px solid var(--border)}.result-item .label{font-size:.75rem;color:var(--text-muted)}.result-item .value{font-size:1rem;font-weight:700}.result-item .value.positive{color:var(--green)}.result-item .value.negative{color:var(--red)}.price-note,.api-note{margin-top:.75rem;font-size:.8rem;color:var(--text-muted)}.api-note code{font-family:var(--font-mono)}.trending{animation:fadeIn .3s ease}.market-cap-tier{margin-bottom:1.5rem}.tier-header{font-size:1rem;font-weight:700;margin-bottom:.75rem;padding:.5rem;background:var(--bg-card);border:2px solid var(--border)}.tier-range{font-size:.85rem;color:var(--text-muted);margin-left:.5rem}.market-cap-tier .trending-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem;margin-top:.75rem}.trending-card{background:var(--bg-card);border:2px solid var(--border);padding:.75rem}.trending-symbol{font-family:var(--font-mono);font-weight:700;font-size:1rem;color:var(--blue)}.trending-name{font-size:.8rem;color:var(--text-muted);margin-top:.2rem}.trending-change{font-size:1rem;font-weight:700;margin-top:.35rem}.trending-change.up{color:var(--green)}.trending-change.down{color:var(--red)}.markets{animation:fadeIn .3s ease}.markets-subnav{display:flex;gap:.25rem;margin-bottom:1rem;flex-wrap:wrap}.markets-subnav button{background:var(--bg-card);border:2px solid var(--border);color:var(--text);padding:.4rem .75rem;font-family:var(--font);font-size:.85rem;font-weight:700;cursor:pointer}.markets-subnav button:hover{background:var(--gold)}.markets-subnav button.active{background:var(--red);color:#fff;border-color:var(--red)}.backtesting-tool{margin-top:.5rem}.section-title{font-size:1.1rem;font-weight:700;margin-bottom:.5rem;color:var(--blue)}.section-desc{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.backtest-form{background:var(--bg-card);border:2px solid var(--border);padding:1rem;margin-bottom:1rem}.form-row{margin-bottom:.75rem}.form-group label{display:block;font-size:.8rem;color:var(--text-muted);margin-bottom:.25rem}.form-group select,.form-group input{width:100%;padding:.4rem;background:#fff;border:2px solid var(--border)}.run-btn{margin-top:.5rem;padding:.5rem 1rem;background:var(--red);color:#fff;border:2px solid var(--red);font-weight:700;cursor:pointer}.run-btn:disabled{opacity:.6;cursor:not-allowed}.backtest-error{color:var(--red);font-size:.9rem;margin-bottom:1rem}.backtest-results{background:var(--bg-card);border:2px solid var(--border);padding:1rem}.backtest-results h3{font-size:1rem;margin-bottom:.75rem}.results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.result-card{background:var(--bg-elevated);border:1px solid var(--border);padding:.75rem}.result-label{font-size:.75rem;color:var(--text-muted)}.result-value{font-size:1rem;font-weight:700}.result-value.positive{color:var(--green)}.result-value.negative{color:var(--red)}.strategy-guide{margin-top:1.5rem;background:var(--bg-card);border:2px solid var(--border);padding:1rem}.strategy-guide h3{font-size:1rem;margin-bottom:.75rem}.strategy-item h4{font-size:.9rem;font-weight:700;margin-bottom:.25rem}.strategy-item p{font-size:.85rem;color:var(--text-muted);line-height:1.4}.ma-feed{margin-top:.5rem}.ma-list{display:flex;flex-direction:column;gap:.5rem}.ma-card{background:var(--bg-card);border:2px solid var(--border);padding:.75rem 1rem}.ma-acquirer{font-weight:700;color:var(--blue)}.ma-arrow{color:var(--text-muted)}.ma-value{color:var(--green)}.ma-status.closed{background:var(--green);color:#fff;padding:.1rem .35rem}.ma-status.announced{background:var(--blue);color:#fff;padding:.1rem .35rem}.ma-status.rumored,.ma-status.speculated{background:var(--amber);color:#000;padding:.1rem .35rem}.ipo-pipeline{margin-top:.5rem}.ipo-table{width:100%;border-collapse:collapse;background:var(--bg-card);border:2px solid var(--border)}.ipo-table th,.ipo-table td{padding:.5rem .75rem;border:1px solid var(--border)}.ipo-table th{background:var(--blue);color:#fff;font-size:.8rem;font-weight:700}.ipo-table .company{font-weight:700;color:var(--blue)}.ipo-status.expected{background:var(--blue);color:#fff;padding:.1rem .35rem}.ipo-status.rumored{background:var(--amber);color:#000;padding:.1rem .35rem}.ipo-status.completed{background:var(--green);color:#fff;padding:.1rem .35rem}.monte-carlo{margin-top:.5rem}.mc-form{background:var(--bg-card);border:2px solid var(--border);padding:1rem;margin-bottom:1rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem}.mc-form .form-group label{display:block;font-size:.8rem;margin-bottom:.25rem}.mc-form .form-group input,.mc-form .form-group select{width:100%;padding:.4rem;background:#fff;border:2px solid var(--border)}.mc-form .run-btn{padding:.5rem 1rem;background:var(--red);color:#fff;border:2px solid var(--red);font-weight:700;cursor:pointer}.mc-results{background:var(--bg-card);border:2px solid var(--border);padding:1rem}.percentile-card{background:var(--bg-elevated);border:2px solid var(--border);padding:.75rem}.percentile-card.median{border-color:var(--blue)}.percentile-card .value{color:var(--green)}.advanced{animation:fadeIn .3s ease}.advanced-subnav{display:flex;gap:.25rem;margin-bottom:1rem;flex-wrap:wrap}.advanced-subnav button{background:var(--bg-card);border:2px solid var(--border);color:var(--text);padding:.4rem .75rem;font-family:var(--font);font-size:.85rem;font-weight:700;cursor:pointer}.advanced-subnav button:hover{background:var(--gold)}.advanced-subnav button.active{background:var(--red);color:#fff;border-color:var(--red)}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(180deg,var(--blue) 0%,#001a4d 100%);padding:1rem 0;border-bottom:4px solid var(--red);box-shadow:0 4px 8px #0000004d}.header-inner{max-width:960px;margin:0 auto;padding:0 1rem}.logo-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.logo{font-size:2rem;font-weight:900;color:#fff;font-family:var(--font-serif);text-transform:uppercase;letter-spacing:2px;text-shadow:2px 2px 2px rgba(0,0,0,.5)}.tagline{color:var(--gold);font-size:.9rem;margin-top:.25rem;font-weight:700}.nav{display:flex;gap:.25rem;margin-top:1rem;flex-wrap:wrap}.nav button{background:var(--bg-box);border:2px solid var(--border);color:var(--text);padding:.5rem .75rem;font-family:var(--font);font-size:.85rem;font-weight:700;cursor:pointer;transition:none}.nav button:hover{background:var(--gold);color:var(--blue)}.nav button.active{background:var(--red);color:#fff;border-color:var(--red)}.loading{text-align:center;padding:3rem;color:var(--text-muted)}.ticker-bar{background:var(--red);color:#fff;padding:.4rem 1rem;font-size:.8rem;font-weight:700;text-align:center;border-bottom:2px solid var(--border)}.main{flex:1;padding:1rem;max-width:960px;margin:0 auto;width:100%}.footer{padding:.75rem 1rem;text-align:center;color:var(--text-muted);font-size:.75rem;border-top:2px solid var(--border);background:var(--bg-box)}:root{--bg: #e8e4d9;--bg-box: #f5f0e6;--bg-card: #faf5eb;--bg-elevated: #fffef8;--bg-dark: #2c2c2c;--red: #c41e3a;--blue: #002868;--gold: #ffd700;--accent: #002868;--accent-dim: #004080;--text: #1a1a1a;--text-muted: #555;--border: #333;--green: #228b22;--amber: #b8860b;--font: Arial, Helvetica, sans-serif;--font-serif: "Times New Roman", Times, serif;--font-mono: "Courier New", Courier, monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;line-height:1.4}#root{min-height:100vh}.sample-badge{font-size:.7rem;font-weight:700;color:var(--red);padding:.15rem .4rem;margin-left:.5rem;vertical-align:middle}
