*{box-sizing:border-box}html,body,#root{color:#f2f2f5;background:#0a0a0c;height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:#4ade80}.app{background:#0a0a0c;flex-direction:column;min-height:100vh;display:flex}.topbar{box-sizing:border-box;background:#0a0a0c;border-bottom:1px solid #1c1c22;flex-shrink:0;align-items:center;gap:20px;height:52px;padding:8px 18px;display:flex}.logo{color:#f2f2f5;letter-spacing:.01em;white-space:nowrap;margin:0;font-size:18px;font-weight:800}.logo .accent{color:#4ade80}.search-form{width:340px;position:relative}.search-input{color:#f2f2f5;box-sizing:border-box;background:#141417;border:1px solid #232329;border-radius:8px;width:100%;padding:8px 12px;font-size:13px;transition:border-color .15s}.search-input::placeholder{color:#5c5c66}.search-input:focus{border-color:#4ade80;outline:none}.suggestions{z-index:30;background:#141417;border:1px solid #232329;border-radius:8px;max-height:320px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #0000008c}.suggestions li{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.suggestions li:hover{background:#1e1e24}.suggestions .sym{color:#f2f2f5;min-width:70px;font-weight:700}.suggestions .name{color:#8a8a94;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.suggestions .exch{color:#5c5c66;font-size:11px}.header-quote-strip{color:#f2f2f5;white-space:nowrap;align-items:baseline;gap:10px;font-size:13px;display:flex;overflow:hidden}.header-quote-strip .h-symbol{letter-spacing:.01em;font-size:15px;font-weight:800}.header-quote-strip .h-price{font-weight:700}.header-quote-strip .h-change.up{color:#4ade80}.header-quote-strip .h-change.down{color:#f87171}.workspace{flex:auto;height:calc(100vh - 52px);min-height:480px;display:flex}.chart-column{background:#0a0a0c;border-right:1px solid #1c1c22;flex-direction:column;flex:auto;min-width:0;display:flex}.chart-toolbar{border-bottom:1px solid #1c1c22;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.range-selector{background:#141417;border-radius:8px;gap:2px;padding:3px;display:flex}.range-selector button{color:#8a8a94;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600}.range-selector button:hover{color:#f2f2f5}.range-selector button.active{color:#4ade80;background:#232329}.ma-legend{color:#8a8a94;align-items:center;gap:14px;font-size:11px;display:flex}.ma-legend span{align-items:center;gap:5px;display:flex}.ma-legend .swatch{border-radius:1px;width:14px;height:2px;display:inline-block}.ma-legend .legend-sep{background:#232329;width:1px;height:12px}.chart-full{flex:auto;min-height:0;position:relative}.chart-wrapper{width:100%;height:100%;position:relative}.chart-container{width:100%;height:100%}.chart-loading{color:#f2f2f5;z-index:5;background:#141417f2;border:1px solid #232329;border-radius:6px;padding:4px 12px;font-size:12px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.sidebar{background:#0a0a0c;flex-shrink:0;width:300px;padding:16px;overflow-y:auto}.sidebar-section-title{color:#5c5c66;text-transform:uppercase;letter-spacing:.08em;margin:20px 0 10px;font-size:11px;font-weight:700}.sidebar-section-title:first-child{margin-top:0}.company-block h1{color:#f2f2f5;letter-spacing:.01em;margin:0;font-size:20px}.company-name{color:#b0b0ba;margin:3px 0 0;font-size:12.5px}.sector{color:#5c5c66;margin:3px 0 0;font-size:11px}.rating-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.rating-box{text-align:center;border:1px solid #232329;border-top:2px solid var(--grade-color,#5c5c66);background:#141417;border-radius:8px;padding:10px 4px}.rating-box .r-value{color:var(--grade-color,#f2f2f5);font-size:17px;font-weight:800;line-height:1.15}.rating-box .r-label{text-transform:uppercase;color:#5c5c66;letter-spacing:.04em;font-size:9.5px;font-weight:700}.rating-box.grade-a{--grade-color:#4ade80}.rating-box.grade-b{--grade-color:#a3e635}.rating-box.grade-c{--grade-color:#facc15}.rating-box.grade-d{--grade-color:#fb923c}.rating-box.grade-f{--grade-color:#f87171}.rating-box.grade-na{--grade-color:#5c5c66}.stats-list{flex-direction:column;gap:0;display:flex}.stats-row{border-bottom:1px solid #18181c;justify-content:space-between;align-items:baseline;padding:7px 2px;font-size:12.5px;display:flex}.stats-row .stat-label{color:#8a8a94}.stats-row .stat-value{color:#f2f2f5;font-weight:600}.valuation-panel{margin-top:6px}.valuation-summary{text-align:center;border:1px solid #232329;border-top:2px solid var(--val-color,#5c5c66);background:#141417;border-radius:10px;margin-bottom:10px;padding:14px}.valuation-summary-label{text-transform:uppercase;letter-spacing:.04em;color:var(--val-color,#f2f2f5);font-size:11.5px;font-weight:700}.valuation-summary-value{color:#f2f2f5;margin-top:4px;font-size:20px;font-weight:800}.valuation-summary-sub{color:#8a8a94;margin-top:4px;font-size:11.5px}.valuation-rows{flex-direction:column;gap:8px;display:flex}.valuation-row{background:#101013;border:1px solid #1c1c22;border-radius:8px;padding:8px 10px}.valuation-row-top{justify-content:space-between;align-items:baseline;display:flex}.valuation-method{color:#f2f2f5;font-size:12.5px;font-weight:700}.valuation-row-bottom{justify-content:space-between;align-items:baseline;margin-top:3px;display:flex}.valuation-note{color:#6b6b76;font-size:10.5px}.valuation-value{color:#d5d5da;font-size:12px;font-weight:700}.valuation-pct{font-size:12px;font-weight:800}.valuation-under{--val-color:#4ade80;color:var(--val-color)}.valuation-fair{--val-color:#facc15;color:var(--val-color)}.valuation-over{--val-color:#f87171;color:var(--val-color)}.valuation-na{--val-color:#5c5c66;color:var(--val-color)}.valuation-disclaimer{color:#5c5c66;margin-top:10px;font-size:10px;line-height:1.5}.error-banner{color:#f87171;background:#1c1215;border:1px solid #4c2226;flex-shrink:0;padding:8px 14px;font-size:13px}@media (width<=900px){.workspace{flex-direction:column;height:auto}.sidebar{border-top:1px solid #1c1c22;width:auto}.chart-full{height:60vh}}
