:root{color:#cbd5e1;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#080d18;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#080d18}body{background:radial-gradient(circle at 75% 0,#0ea5e914,#0000 30%),#080d18;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{appearance:none}#root{min-height:100vh}.app-shell{width:min(1440px,100% - 40px);margin:0 auto;padding:34px 0 48px}.topbar{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.eyebrow,.section-label{color:#38bdf8;letter-spacing:.19em;margin:0 0 7px;font-size:11px;font-weight:700}h1{color:#f8fafc;letter-spacing:-.045em;margin:0;font-size:clamp(38px,6vw,62px)}h2{color:#f8fafc;margin:0}.subtitle{color:#94a3b8;max-width:680px;margin-top:9px;font-size:16px}.system-pill{color:#94a3b8;text-transform:uppercase;background:#111827;border:1px solid #253046;border-radius:999px;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.system-pill span,.ok-dot,.bad-dot{background:#f59e0b;border-radius:999px;width:8px;height:8px}.system-pill.healthy span,.ok-dot{background:#22c55e}.system-pill.degraded span,.bad-dot{background:#ef4444}.error-banner{color:#fca5a5;background:#2b1215;border:1px solid #7f1d1d;border-radius:10px;margin-bottom:18px;padding:12px 16px;font-size:13px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.stat-card,.panel{background:#0f172a;border:1px solid #1f2937;box-shadow:0 18px 45px #00000026}.stat-card{border-radius:12px;padding:18px 20px}.stat-card span,.quote-grid span,.ohlc-grid span,.headline-price span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.stat-card strong{color:#f8fafc;font-size:25px}.workspace{grid-template-columns:280px minmax(0,1fr);gap:12px;display:grid}.panel{border-radius:14px}.watchlist{min-height:670px;overflow:hidden}.panel-heading{border-bottom:1px solid #1f2937;justify-content:space-between;align-items:center;padding:19px 18px;display:flex}.panel-heading h2{font-size:18px}.panel-heading>span{color:#64748b;font-size:12px}.instrument-list{max-height:610px;overflow-y:auto}.instrument{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #172033;justify-content:space-between;align-items:center;gap:14px;padding:14px 17px;display:flex}.instrument:hover{background:#111c31}.instrument.active{background:#12213a;box-shadow:inset 3px 0 #38bdf8}.instrument strong{color:#e2e8f0;font-size:14px;display:block}.instrument small{color:#64748b;margin-top:4px;font-size:10px;display:block}.instrument>span{color:#94a3b8;font-size:11px}.market-panel{padding:22px}.market-header{justify-content:space-between;gap:24px;margin-bottom:20px;display:flex}.market-header h2{letter-spacing:-.03em;font-size:31px}.instrument-meta{color:#64748b;margin-top:5px;font-size:12px}.headline-price{text-align:right}.headline-price strong{color:#f8fafc;letter-spacing:-.035em;font-size:32px;display:block}.headline-price small{color:#64748b;font-size:11px}.timeframe-tabs{gap:5px;margin-bottom:10px;display:flex}.timeframe-tabs button{color:#64748b;cursor:pointer;background:#111827;border:1px solid #253046;border-radius:7px;padding:7px 11px;font-size:11px;font-weight:700}.timeframe-tabs button:hover,.timeframe-tabs button.active{color:#e0f2fe;background:#0c4a6e;border-color:#0ea5e9}.chart-card{background-color:#0b1220;background-image:linear-gradient(#38bdf808 1px,#0000 1px),linear-gradient(90deg,#38bdf808 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #1e293b;border-radius:11px;height:300px;padding:14px 8px 8px}.chart-wrap,.price-chart{width:100%;height:100%}.price-chart{overflow:visible}.price-chart polyline{fill:none;stroke:#38bdf8;stroke-width:1.4px;vector-effect:non-scaling-stroke}.chart-empty{color:#475569;place-items:center;height:100%;font-size:12px;display:grid}.quote-grid,.ohlc-grid{gap:8px;display:grid}.quote-grid{grid-template-columns:repeat(4,1fr);margin-top:10px}.ohlc-grid{grid-template-columns:repeat(6,1fr);margin-top:8px}.quote-grid article,.ohlc-grid article{background:#0b1220;border:1px solid #1e293b;border-radius:9px;padding:13px 14px}.quote-grid strong,.ohlc-grid strong{color:#e2e8f0;font-size:14px}.quote-grid .source{font-size:12px}.footer{color:#64748b;align-items:center;gap:20px;margin-top:12px;padding:13px 4px;font-size:11px;display:flex}.footer div{align-items:center;gap:7px;display:inline-flex}.footer a{color:#38bdf8;margin-left:auto;text-decoration:none}.muted{color:#64748b;padding:20px;font-size:12px}@media (width<=950px){.stats-grid{grid-template-columns:repeat(2,1fr)}.workspace{grid-template-columns:1fr}.watchlist{min-height:auto}.instrument-list{max-height:280px}.ohlc-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=620px){.app-shell{width:min(100% - 22px,1440px);padding-top:20px}.topbar,.market-header{flex-direction:column}.headline-price{text-align:left}.stats-grid,.quote-grid,.ohlc-grid{grid-template-columns:repeat(2,1fr)}.chart-card{height:220px}.footer{flex-direction:column;align-items:flex-start;gap:8px}.footer a{margin-left:0}}.chart-wrap{position:relative}.chart-legend{z-index:2;background:#080d18d1;border:1px solid #1e293b;border-radius:7px;gap:12px;padding:5px 8px;font-size:10px;font-weight:700;display:flex;position:absolute;top:4px;right:8px}.chart-legend span{align-items:center;gap:5px;display:inline-flex}.chart-legend span:before{content:"";border-radius:99px;width:12px;height:2px}.legend-close{color:#38bdf8}.legend-close:before{background:#38bdf8}.legend-sma{color:#fbbf24}.legend-sma:before{background:#fbbf24}.legend-ema{color:#a78bfa}.legend-ema:before{background:#a78bfa}.price-chart polyline{fill:none;vector-effect:non-scaling-stroke}.price-chart .close-line{stroke:#38bdf8;stroke-width:1.5px}.price-chart .sma-line{stroke:#fbbf24;stroke-width:1.2px;opacity:.9}.price-chart .ema-line{stroke:#a78bfa;stroke-width:1.2px;opacity:.9}.indicator-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(280px,2fr);gap:8px;margin-top:10px;display:grid}.indicator-grid article{background:#0b1220;border:1px solid #1e293b;border-radius:9px;padding:13px 14px}.indicator-grid article>span,.rsi-heading span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.indicator-grid article>strong,.rsi-heading strong{color:#e2e8f0;font-size:17px}.rsi-card{min-width:0}.rsi-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.rsi-heading b{letter-spacing:.06em;border-radius:999px;padding:5px 8px;font-size:10px}.rsi-heading .neutral{color:#7dd3fc;background:#38bdf81f}.rsi-heading .oversold{color:#86efac;background:#22c55e1f}.rsi-heading .overbought{color:#fca5a5;background:#ef44441f}.rsi-scale{background:linear-gradient(90deg,#22c55e38 0 30%,#38bdf826 30% 70%,#ef444438 70% 100%);border-radius:999px;height:7px;margin-top:13px;position:relative;overflow:hidden}.rsi-value{opacity:.85;background:#e2e8f0;border-radius:999px;height:100%}.rsi-marker{background:#ffffff6b;width:1px;height:100%;position:absolute;top:0}.marker-30{left:30%}.marker-70{left:70%}.rsi-labels{color:#475569;justify-content:space-between;margin-top:5px;font-size:9px;display:flex}@media (width<=950px){.indicator-grid{grid-template-columns:repeat(2,1fr)}.rsi-card{grid-column:1/-1}}@media (width<=620px){.indicator-grid{grid-template-columns:1fr}.rsi-card{grid-column:auto}.chart-legend{width:fit-content;margin:0 0 8px auto;position:static}.price-chart{height:calc(100% - 30px)}}.timeframe-tabs button:disabled{cursor:not-allowed;opacity:.3}.timeframe-tabs button:disabled:hover{color:#64748b;background:#111827;border-color:#253046}.market-signal-card{background:#0b1220;border:1px solid #1e293b;border-radius:9px;margin-top:10px;padding:14px}.market-signal-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.market-signal-heading>div:first-child>span,.signal-score span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.market-signal-heading>div:first-child>strong{letter-spacing:.04em;font-size:19px}.signal-bullish{color:#86efac}.signal-neutral{color:#7dd3fc}.signal-bearish{color:#fca5a5}.signal-score{text-align:right;min-width:72px}.signal-score strong{color:#e2e8f0;font-size:18px}.signal-reasons{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.signal-reasons span{color:#94a3b8;background:#111827;border:1px solid #1e293b;border-radius:999px;padding:5px 8px;font-size:10px;line-height:1.3}@media (width<=620px){.market-signal-heading{align-items:flex-start}.signal-reasons{flex-direction:column;align-items:flex-start}}.signal-history-card{background:#0b1220;border:1px solid #1e293b;border-radius:9px;margin-top:10px;padding:14px}.signal-history-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.signal-history-header span,.signal-history-meta span,.signal-transition span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.signal-history-header strong{color:#e2e8f0;font-size:15px}.signal-transition{text-align:right}.signal-transition strong{font-size:12px}.signal-history-chart{background-color:#080f1c;background-image:linear-gradient(#38bdf808 1px,#0000 1px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:100% 25%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px solid #172033;border-radius:8px;height:150px;margin-top:14px;padding:10px}.signal-history-chart svg{width:100%;height:105px;overflow:visible}.signal-score-line{fill:none;stroke:#38bdf8;stroke-width:1.5px;vector-effect:non-scaling-stroke}.signal-zero-line{stroke:#334155;stroke-width:1px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.signal-history-labels{color:#475569;justify-content:space-between;font-size:9px;display:flex}.signal-history-empty{color:#64748b;text-align:center;border:1px dashed #253046;border-radius:8px;margin-top:12px;padding:22px;font-size:11px}.signal-history-meta{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px;display:grid}.signal-history-meta>div{background:#0e1625;border:1px solid #172033;border-radius:7px;padding:9px 10px}.signal-history-meta strong{color:#cbd5e1;font-size:11px}.signal-transition-list{gap:5px;margin-top:10px;display:grid}.signal-transition-list>div{border-top:1px solid #172033;grid-template-columns:minmax(145px,1fr) 100px 40px;align-items:center;gap:10px;padding:7px 9px;font-size:10px;display:grid}.signal-transition-list time{color:#64748b}.signal-transition-list span{font-weight:700}.signal-transition-list b{color:#cbd5e1;text-align:right}@media (width<=700px){.signal-history-meta{grid-template-columns:repeat(2,1fr)}.signal-transition-list>div{grid-template-columns:1fr auto auto}}.signal-intelligence{margin-top:12px}.signal-intelligence-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.signal-intelligence-grid article{background:#0e1625;border:1px solid #172033;border-radius:7px;padding:10px}.signal-intelligence-grid span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:700;display:block}.signal-intelligence-grid strong{color:#e2e8f0;font-size:17px;display:block}.signal-intelligence-grid small{color:#64748b;text-transform:uppercase;font-size:9px}.momentum-improving{color:#86efac!important}.momentum-weakening{color:#fca5a5!important}.momentum-flat{color:#7dd3fc!important}.signal-distribution{background:#080f1c;border:1px solid #172033;border-radius:8px;margin-top:12px;padding:10px}.signal-distribution-heading{justify-content:space-between;margin-bottom:10px;display:flex}.signal-distribution-heading span{color:#94a3b8;text-transform:uppercase;font-size:10px;font-weight:700}.signal-distribution-heading small{color:#475569;font-size:9px}.distribution-row{grid-template-columns:65px 1fr 45px;align-items:center;gap:8px;margin-top:7px;display:grid}.distribution-row>span{color:#94a3b8;font-size:9px}.distribution-row>div{background:#172033;border-radius:999px;height:6px;overflow:hidden}.distribution-row i{border-radius:inherit;height:100%;display:block}.distribution-row.bullish i{background:#22c55e}.distribution-row.neutral i{background:#38bdf8}.distribution-row.bearish i{background:#ef4444}.distribution-row strong{color:#cbd5e1;text-align:right;font-size:9px}@media (width<=800px){.signal-intelligence-grid{grid-template-columns:repeat(2,1fr)}}.technical-analysis-card{background:#0b1220;border:1px solid #1e293b;border-radius:9px;margin-top:10px;padding:14px}.technical-analysis-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.technical-analysis-header span,.technical-primary-grid span,.technical-grid span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:700;display:block}.technical-analysis-header>div:first-child>strong{letter-spacing:.04em;font-size:18px}.technical-score{text-align:right}.technical-score strong{color:#e2e8f0;font-size:24px}.technical-score small{color:#64748b;margin-left:2px;font-size:10px}.technical-primary-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.technical-primary-grid article,.technical-grid article{background:#0e1625;border:1px solid #172033;border-radius:7px;padding:9px 10px}.technical-primary-grid strong,.technical-grid strong{color:#e2e8f0;font-size:12px}.technical-primary-grid small{color:#64748b;margin-top:3px;font-size:8px;display:block}.technical-grid{grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px;display:grid}.technical-reasons{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.technical-reasons span{color:#94a3b8;background:#111827;border:1px solid #1e293b;border-radius:999px;padding:5px 7px;font-size:9px}.technical-history-note{color:#fbbf24;margin-top:10px;font-size:10px}@media (width<=950px){.technical-grid{grid-template-columns:repeat(3,1fr)}.technical-primary-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.technical-analysis-header{align-items:flex-start}.technical-grid,.technical-primary-grid{grid-template-columns:repeat(2,1fr)}}.support-resistance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.support-resistance-grid article{background:#0f172a61;border:1px solid #94a3b829;border-radius:12px;min-width:0;padding:14px}.support-resistance-grid span,.support-resistance-grid small{display:block}.support-resistance-grid strong{margin-top:5px;font-size:1.05rem;display:block}.support-resistance-grid small{opacity:.7;overflow-wrap:anywhere;margin-top:6px}@media (width<=700px){.support-resistance-grid{grid-template-columns:1fr}}.multi-timeframe-card{background:#0b1220;border:1px solid #1e293b;border-radius:9px;margin-top:12px;padding:14px}.multi-timeframe-header{justify-content:space-between;gap:16px;display:flex}.multi-timeframe-header>div:last-child{text-align:right}.multi-timeframe-header span,.mtf-grid>article>span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700;display:block}.multi-timeframe-header strong{margin-top:4px;font-size:17px;display:block}.multi-timeframe-header small{color:#64748b;font-size:9px}.mtf-summary{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.mtf-summary>span{color:#94a3b8;border:1px solid #1e293b;border-radius:999px;padding:5px 8px;font-size:9px}.mtf-summary strong{color:#e2e8f0}.mtf-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:10px;display:grid}.mtf-grid article{background:#0e1625;border:1px solid #172033;border-radius:7px;padding:9px}.mtf-grid article.active{border-color:#38bdf8}.mtf-grid article>strong,.mtf-grid article>b,.mtf-grid article>small{margin-top:4px;display:block}.mtf-grid article>b{color:#e2e8f0;font-size:14px}.mtf-grid article>b small,.mtf-grid article>small{color:#64748b;font-size:8px}@media (width<=950px){.mtf-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=620px){.mtf-grid{grid-template-columns:repeat(2,1fr)}.multi-timeframe-header{align-items:flex-start}}
