:root{color-scheme:dark;--bg: #030712;--bg-accent: rgba(37, 99, 235, .12);--panel: rgba(10, 18, 36, .94);--panel-elevated: rgba(14, 24, 46, .92);--panel-border: rgba(148, 163, 184, .14);--panel-border-strong: rgba(148, 163, 184, .2);--text: #e5e7eb;--muted: #94a3b8;--muted-soft: rgba(148, 163, 184, .74);--accent: #60a5fa;--shadow: 0 24px 70px rgba(0, 0, 0, .35);--resistance: #f87171;--weakening: #fb7185;--flip: #f59e0b;--breakout: #22c55e;--support: #38bdf8;--air: #64748b}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top,var(--bg-accent),transparent 32%),linear-gradient(180deg,#071225,#030712);color:var(--text)}button,select{font:inherit}.app-shell{min-height:100vh;padding:24px}.topbar,.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:22px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar{width:min(1360px,100%);margin:0 auto 20px;padding:20px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px}.topbar__brand{display:flex;flex-direction:column;gap:10px;min-width:0}.topbar__eyebrow{margin:0;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.topbar__symbol-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.topbar__symbol{margin:0;font-size:clamp(1.7rem,2vw,2.1rem);line-height:1;letter-spacing:-.03em}.topbar__badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#60a5fa1f;color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.topbar__controls{display:flex;align-items:flex-start;justify-content:flex-end;gap:22px;flex-wrap:wrap}.topbar__controls-group{display:grid;gap:8px;min-width:0}.topbar__controls-group--timeframe{justify-items:end}.topbar__controls-group--expiration{min-width:170px}.topbar__controls-label{font-size:.7rem;color:var(--muted);letter-spacing:.14em;text-transform:uppercase}.topbar__select-wrap{display:grid;gap:4px}.topbar__select{min-width:132px;height:34px;padding:0 34px 0 12px;border-radius:10px;border:1px solid rgba(148,163,184,.16);background:#ffffff0a;color:var(--text);outline:none;transition:border-color .18s ease,background .18s ease,color .18s ease}.topbar__select:hover,.topbar__select:focus{border-color:#60a5fa52;background:#ffffff0f}.topbar__select:disabled{opacity:.6;cursor:not-allowed}.topbar__controls-meta{font-size:.78rem;color:var(--text)}.topbar__controls-meta span{color:var(--muted)}.timeframe-tabs{display:inline-flex;flex-wrap:wrap;gap:8px}.timeframe-tabs__button{border:1px solid rgba(148,163,184,.14);background:#ffffff08;color:var(--muted);border-radius:999px;padding:9px 14px;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.timeframe-tabs__button:hover{border-color:#60a5fa47;color:var(--text)}.timeframe-tabs__button.is-active{color:var(--text);background:#60a5fa24;border-color:#60a5fa47}.dashboard{width:min(1360px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,2fr) minmax(330px,.95fr);gap:20px;align-items:start}.dashboard__main{display:grid;gap:20px}.dashboard__chart-card{display:grid;gap:14px}.dashboard__chart-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.dashboard__eyebrow,.panel__eyebrow{margin:0 0 8px;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.dashboard__title{margin:0;font-size:clamp(1.85rem,2.5vw,2.5rem);line-height:1;letter-spacing:-.04em}.quote-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(110px,1fr);gap:12px}.quote-strip__item{min-width:110px;padding:12px 14px;border-radius:16px;background:linear-gradient(180deg,#ffffff0d,#ffffff06);border:1px solid rgba(148,163,184,.12)}.quote-strip__item span{display:block;margin-bottom:4px;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.quote-strip__item strong{font-size:1.02rem;line-height:1.2}.dashboard__indicator-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel{padding:20px}.panel__header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:16px}.panel__title{margin:0;font-size:1.08rem;line-height:1.2}.panel__meta{font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.panel__empty{min-height:180px;display:grid;place-items:center;border:1px dashed rgba(148,163,184,.16);border-radius:16px;color:var(--muted);text-align:center;padding:18px}.panel__empty--error{color:#fca5a5;border-color:#f8717147;background:#7f1d1d1f}.panel--chart{min-height:560px}.chart-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}.chart-stats__item{min-width:0;padding:10px 12px;border-radius:14px;border:1px solid rgba(148,163,184,.12);background:linear-gradient(180deg,#ffffff0a,#ffffff05);display:flex;flex-direction:column;gap:5px}.chart-stats__item span{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.chart-stats__item strong{font-size:.95rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-surface{position:relative;min-height:430px;border-radius:18px;border:1px solid rgba(148,163,184,.12);background:linear-gradient(180deg,#60a5fa0d,#0f172a2e);overflow:hidden}.chart-surface__canvas{width:100%;height:430px}.panel--ladder{min-height:560px}.ladder{display:grid;gap:10px}.ladder__meta-card{padding:14px;border-radius:16px;border:1px solid rgba(148,163,184,.12);background:linear-gradient(180deg,#ffffff0a,#ffffff05)}.ladder__meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ladder__meta-item{min-width:0;display:grid;gap:4px}.ladder__meta-item span,.ladder__metric span{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ladder__meta-item strong{font-size:.94rem}.ladder__row{border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:14px;display:grid;gap:12px;background:#ffffff05;position:relative;overflow:hidden}.ladder__row:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#94a3b842}.ladder__row--resistance{border-color:#f871712e;background:#f8717112}.ladder__row--resistance:before{background:var(--resistance)}.ladder__row--weakening{border-color:#fb71852e;background:#fb718512}.ladder__row--weakening:before{background:var(--weakening)}.ladder__row--flip-zone{border-color:#f59e0b2e;background:#f59e0b12}.ladder__row--flip-zone:before{background:var(--flip)}.ladder__row--breakout-fuel{border-color:#22c55e2e;background:#22c55e12}.ladder__row--breakout-fuel:before{background:var(--breakout)}.ladder__row--support{border-color:#38bdf82e;background:#38bdf812}.ladder__row--support:before{background:var(--support)}.ladder__row--air-pocket{border-color:#64748b2e;background:#64748b12}.ladder__row--air-pocket:before{background:var(--air)}.ladder__head{display:flex;justify-content:space-between;align-items:center;gap:12px}.ladder__strike{font-size:1.42rem;font-weight:800;line-height:1;letter-spacing:-.03em}.ladder__score{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:700;background:#ffffff14}.ladder__body{display:grid;gap:10px}.ladder__state-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.ladder__state{display:inline-flex;align-self:flex-start;padding:6px 10px;border-radius:999px;font-size:.74rem;font-weight:700;background:#ffffff14}.ladder__distance-pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.72rem;color:var(--muted-soft);border:1px solid rgba(148,163,184,.14);background:#ffffff08}.ladder__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ladder__metric{display:flex;flex-direction:column;gap:4px;min-width:0}.ladder__metric strong{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel--indicator{min-height:320px}.panel--indicator-tall{min-height:360px}.indicator-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}.indicator-hero__value{font-size:clamp(1.9rem,2.5vw,2.5rem);font-weight:800;line-height:1;letter-spacing:-.04em}.indicator-hero__label{margin-top:8px;color:var(--muted);font-size:.9rem}.indicator-hero__bands{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-size:.72rem;text-align:right}.indicator-hero__bands--rsi{padding-top:2px}.sparkline{position:relative;min-height:140px;border-radius:16px;border:1px solid rgba(148,163,184,.12);background:linear-gradient(180deg,#60a5fa08,#0f172a29);overflow:hidden;padding:12px}.sparkline--tall{min-height:170px}.sparkline svg{width:100%;height:120px;display:block}.sparkline--tall svg{height:150px}.sparkline__zone{opacity:.18}.sparkline__zone--high{fill:#f871711f}.sparkline__zone--mid{fill:#94a3b80a}.sparkline__zone--low{fill:#38bdf81a}.sparkline__guide{stroke:#94a3b824;stroke-width:1;stroke-dasharray:4 4}.sparkline__line{fill:none;stroke-width:2.25;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round;transition:opacity .18s ease,stroke-width .18s ease,filter .18s ease}.sparkline__line--rsi,.sparkline__line--k{stroke:#60a5fa}.sparkline__line--d{stroke:#f59e0b}.sparkline__line--j{stroke:#22c55e}.sparkline__line.is-dimmed{opacity:.22}.sparkline__line.is-active{opacity:1;stroke-width:3.2;filter:drop-shadow(0 0 8px rgba(255,255,255,.14))}.kdj-readout{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.kdj-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(148,163,184,.1);color:var(--text);cursor:pointer;transition:opacity .18s ease,transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.kdj-chip strong{font-weight:700}.kdj-chip:hover{transform:translateY(-1px)}.kdj-chip:focus-visible{outline:2px solid rgba(96,165,250,.4);outline-offset:2px}.kdj-chip__label{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.kdj-chip--k.is-active{border-color:#60a5fa66;background:#60a5fa1f;box-shadow:0 0 0 1px #60a5fa29 inset}.kdj-chip--d.is-active{border-color:#f59e0b61;background:#f59e0b1f;box-shadow:0 0 0 1px #f59e0b24 inset}.kdj-chip--j.is-active{border-color:#22c55e61;background:#22c55e1f;box-shadow:0 0 0 1px #22c55e24 inset}.kdj-chip.is-dimmed{opacity:.38}.indicator-footer{display:flex;justify-content:space-between;gap:12px;margin-top:12px;color:var(--muted);font-size:.8rem}@media(max-width:1220px){.chart-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1100px){.dashboard,.dashboard__indicator-grid{grid-template-columns:1fr}.panel--chart,.panel--ladder{min-height:auto}}@media(max-width:860px){.topbar{grid-template-columns:1fr;align-items:start}.topbar__controls{width:100%;justify-content:space-between}.topbar__controls-group--timeframe{justify-items:start}.dashboard__chart-head{flex-direction:column;align-items:flex-start}.quote-strip{width:100%;grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:640px){.app-shell{padding:16px}.panel,.topbar{border-radius:18px;padding:18px}.chart-surface__canvas{height:340px}.chart-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ladder__meta-grid,.ladder__metrics{grid-template-columns:1fr}.panel__header,.indicator-footer,.ladder__state-row{flex-direction:column;align-items:flex-start}.quote-strip{grid-template-columns:1fr}.topbar__controls{flex-direction:column;align-items:flex-start}}
