:root{--green: #10b981;--red: #ef4444}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,sans-serif;background-color:var(--bg-color);color:var(--text-primary);line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:2rem 1rem}header{text-align:center;margin-bottom:3rem}h1{font-size:2.5rem;margin-bottom:1rem;color:#fff}h2{font-size:1.5rem;margin-bottom:1rem;color:#fff;margin-top:2rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}p.subtitle{color:var(--text-muted);font-size:1.1rem;max-width:700px;margin:0 auto}.card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.card h3{margin-bottom:1rem;font-size:1.2rem;color:#fff}.controls{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}select{background-color:var(--bg-color);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:4px;font-family:inherit;outline:none}select:focus{border-color:var(--accent-color)}.table-container{overflow-x:auto;border:1px solid var(--border-color);border-radius:8px;background-color:var(--card-bg);margin-bottom:2rem}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}th{background-color:#ffffff08;font-weight:600;color:var(--text-muted);white-space:nowrap}tr:hover td{background-color:#ffffff05}td.mono{font-family:JetBrains Mono,monospace}.positive{color:var(--green)}.negative{color:var(--red)}.ticker{font-weight:700;color:var(--accent-color)}.sector-tag{display:inline-block;padding:.2rem .5rem;background:#ffffff0d;border-radius:4px;font-size:.8rem}.faq-section{margin-top:4rem}.faq-item{margin-bottom:1.5rem;background:var(--card-bg);border:1px solid var(--border-color);padding:1.5rem;border-radius:8px}.faq-item h3{color:#fff;margin-bottom:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}@media(min-width:768px){.stats-grid{grid-template-columns:repeat(4,1fr)}}.stat-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;text-align:center;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--green),#059669)}.stat-card .stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:.5rem}.stat-card .stat-value{font-size:1.8rem;font-weight:700;font-family:JetBrains Mono,monospace}.stat-card .stat-detail{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.monthly-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.month-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;text-align:center}.month-card .month-name{font-size:.85rem;color:var(--text-muted);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.month-card .month-return{font-size:1.4rem;font-weight:700;font-family:JetBrains Mono,monospace;margin-bottom:.75rem}.month-bar-container{height:8px;background:#ffffff0d;border-radius:4px;overflow:hidden}.month-bar{height:100%;border-radius:4px;transition:width .6s ease}.heatmap-container{margin-bottom:2rem}.heatmap-grid{display:flex;flex-wrap:wrap;gap:4px;border-radius:12px;overflow:hidden;min-height:200px}.heatmap-cell{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1rem .75rem;border-radius:8px;text-align:center;transition:transform .2s,box-shadow .2s;cursor:default;min-height:100px}.heatmap-cell:hover{transform:scale(1.03);box-shadow:0 4px 20px #0006;z-index:2}.heatmap-cell .hm-sector{font-size:.85rem;font-weight:700;color:#fff;margin-bottom:4px;text-shadow:0 1px 3px rgba(0,0,0,.5)}.heatmap-cell .hm-return{font-size:1.1rem;font-weight:700;font-family:JetBrains Mono,monospace;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5)}.heatmap-cell .hm-count{font-size:.7rem;color:#ffffffb3;margin-top:2px}.chart-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.chart-section h3{color:#fff;margin-bottom:1rem;font-size:1.2rem}.chart-wrapper{position:relative;max-height:350px}.portfolio-calc{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:2rem;margin-bottom:2rem;text-align:center}.portfolio-calc h3{color:#fff;font-size:1.3rem;margin-bottom:.5rem}.portfolio-calc .calc-subtitle{color:var(--text-muted);font-size:.9rem;margin-bottom:1.5rem}.portfolio-toggle{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.portfolio-toggle button{background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-muted);padding:.5rem 1.25rem;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.9rem;transition:all .2s}.portfolio-toggle button.active{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}.portfolio-toggle button:hover:not(.active){background:#ffffff1a;color:#fff}.portfolio-result{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;max-width:500px;margin:0 auto}.portfolio-result .result-box{background:#ffffff08;border-radius:10px;padding:1.5rem}.result-box .result-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin-bottom:.5rem}.result-box .result-value{font-size:2rem;font-weight:700;font-family:JetBrains Mono,monospace}.result-box .result-gain{font-size:.85rem;margin-top:.25rem}.insights-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:2rem}@media(min-width:768px){.insights-grid{grid-template-columns:1fr 1fr}}.insight-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;display:flex;gap:1rem;align-items:flex-start}.insight-card .insight-icon{font-size:1.5rem;flex-shrink:0}.insight-card .insight-text{font-size:.95rem;color:var(--text-primary);line-height:1.5}.insight-card .insight-text strong{color:#fff}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:2rem}@media(min-width:768px){.dashboard-grid{grid-template-columns:1fr 1fr}}
