
:root{
  --bg:#071017; --panel:#0b151e; --panel2:#0e1a24; --border:#1d3441;
  --text:#ecf3f7; --muted:#8297a3; --cyan:#32d9d3; --green:#5ee89b;
  --red:#ff6b6b; --gold:#e4b64b; --amber:#ffb64c; --purple:#9e83ff;
}
*{box-sizing:border-box} html,body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
button{font:inherit}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#08121a;border-right:1px solid #132833;padding:22px 18px;display:flex;flex-direction:column;gap:26px}
.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:54px;height:54px;display:grid;place-items:center;flex:0 0 54px}.brand-logo{width:100%;height:100%;object-fit:contain;display:block}.brand-title{font-weight:900;letter-spacing:.15px;font-size:14px;white-space:nowrap}.brand-title span{color:var(--purple)}.brand-sub,.tiny{font-size:11px;color:var(--muted);letter-spacing:.4px}
nav{display:flex;flex-direction:column;gap:7px}.nav{border:0;background:transparent;color:#aebcc4;padding:12px 14px;border-radius:8px;text-align:left;cursor:pointer}.nav.active,.nav:hover{background:#0d202b;color:#fff}
.entitlement{margin-top:auto;border:1px solid #203845;background:#0b1720;border-radius:12px;padding:16px}.entitlement-title{font-weight:800;color:var(--gold);margin:6px 0}
.shell{margin-left:250px;min-height:100vh}.topbar{height:76px;border-bottom:1px solid #132833;display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;background:rgba(7,16,23,.94);backdrop-filter:blur(10px);z-index:10}
.system-strip{display:flex;gap:24px;align-items:center}.system-strip span{display:flex;flex-direction:column;gap:3px}.system-strip b{font-size:11px;color:#7f929e}.system-strip em{font-size:12px;font-style:normal}.ok{color:var(--green)!important}.warn{color:var(--amber)!important}.top-actions{display:flex;gap:12px;align-items:center}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#183447;color:#fff;font-weight:800}
.btn{border:1px solid #24505f;background:#0f2934;color:#fff;border-radius:8px;padding:9px 12px;cursor:pointer}.btn:hover{border-color:var(--cyan)}.btn.secondary{background:transparent}
.ticker{padding:14px 24px;display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px}.ticker-item{background:#0a151e;border:1px solid #17303d;border-radius:9px;padding:10px 12px;display:flex;justify-content:space-between}.ticker-item b{font-size:12px}.ticker-item small{font-size:11px}
.layout{padding:0 24px 32px;display:grid;grid-template-columns:230px minmax(520px,1fr) 310px;gap:14px;grid-template-areas:"watch hero ai" "watch chart ai" "news chart recent" "performance performance recent"}
.card{border:1px solid var(--border);background:linear-gradient(180deg,#0b151e,#09131b);border-radius:12px;padding:16px}.watch-card{grid-area:watch}.hero{grid-area:hero}.ai{grid-area:ai}.chart-card{grid-area:chart}.news{grid-area:news}.recent{grid-area:recent}.performance{grid-area:performance}
.section-head,.hero-head,.chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.section-head.compact{align-items:center}.section-head h3,.chart-head h3{margin:2px 0 0;font-size:15px}.eyebrow{font-size:10px;color:#78909c;letter-spacing:1.2px;font-weight:800}
.pill,.status{display:inline-flex;align-items:center;border:1px solid #29414d;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.pill.gold{color:var(--gold);border-color:#5b4b24}.pill.green{color:var(--green);border-color:#255d47}.session{color:#d5dce0}
.watchlist{margin-top:12px;display:flex;flex-direction:column;gap:8px}.watch-row{border:1px solid #17313e;background:#0b1821;border-radius:9px;padding:10px}.watch-row.core{border-color:#2b6e70;background:#0d2025}.watch-top{display:flex;justify-content:space-between;font-size:12px;font-weight:800}.watch-bottom{display:flex;justify-content:space-between;margin-top:5px;color:var(--muted);font-size:10px}
.hero h1{margin:4px 0;font-size:25px}.hero h1 small{font-size:11px;color:var(--gold);vertical-align:middle}.signal-meta{display:flex;gap:7px}.signal-row{display:flex;justify-content:space-between;align-items:center;margin:16px 0}.signal-side{font-size:48px;line-height:1;font-weight:900;letter-spacing:-1px}.signal-side.long{color:var(--green)}.signal-side.short{color:var(--red)}.setup-line{display:flex;gap:10px;align-items:center;margin-top:9px;color:var(--muted);font-size:11px}
.confidence{text-align:center}.ring{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) 0 84%,#1b303a 84% 100%);position:relative}.ring:after{content:"";position:absolute;inset:8px;border-radius:50%;background:#0b151e}.ring span{position:relative;z-index:1;font-size:19px;font-weight:900}
.levels{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #17313e;border-bottom:1px solid #17313e}.level{padding:11px;border-right:1px solid #17313e}.level:last-child{border-right:0}.level span{font-size:9px;color:var(--muted);display:block;margin-bottom:5px}.level b{font-size:14px}.level.entry b,.level.tp b{color:var(--green)}.level.sl b{color:var(--red)}
.lifecycle{margin-top:14px}.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-top:12px}.stage{font-size:9px;color:#69808c;text-align:center;position:relative;padding-top:18px}.stage:before{content:"";width:9px;height:9px;border-radius:50%;background:#21343e;border:2px solid #324d5a;position:absolute;top:0;left:50%;transform:translateX(-50%)}.stage.done{color:var(--green)}.stage.done:before{background:var(--green);border-color:var(--green)}
.ai-verdict{margin-top:14px;color:var(--green);font-weight:900;font-size:18px}.ai-copy{color:#b3c2ca;line-height:1.55;font-size:12px;margin:10px 0 14px}.checks{border-top:1px solid #17313e;border-bottom:1px solid #17313e;padding:8px 0}.checks div{display:flex;justify-content:space-between;font-size:11px;padding:6px 0}.checks span{color:#8ea0aa}.checks b{color:var(--green)}.ai-note{margin-top:14px;background:#0d1c25;border:1px solid #173441;border-radius:9px;padding:12px;font-size:11px;line-height:1.5;color:#b9c6cc}
.chart-head{align-items:center}.tf{display:flex;gap:5px}.tf button{background:#0a171f;border:1px solid #1b3441;color:#8396a0;border-radius:6px;padding:6px 9px}.tf button.active{color:var(--cyan);border-color:#2b6f78}
.chart{height:360px;margin-top:13px;border:1px solid #132c38;border-radius:9px;position:relative;overflow:hidden;background:#08131b}.grid{position:absolute;inset:0;background-image:linear-gradient(#132734 1px,transparent 1px),linear-gradient(90deg,#132734 1px,transparent 1px);background-size:100% 58px,90px 100%;opacity:.48}.chart svg{position:absolute;inset:0;width:100%;height:100%}.price-line{fill:none;stroke:var(--green);stroke-width:3}.ma-line{fill:none;stroke:#bea64a;stroke-width:2;opacity:.7}.entry-line{stroke:var(--green);stroke-dasharray:7 7}.tp-line{stroke:#31cfa0;stroke-dasharray:6 6}.sl-line{stroke:var(--red);stroke-dasharray:6 6}.chart-tag{position:absolute;right:12px;padding:4px 7px;border-radius:5px;font-size:10px;font-weight:800}.chart-tag.entry{top:48%;background:#1b6a4b}.chart-tag.tp{top:27%;background:#176d61}.chart-tag.sl{top:67%;background:#783c45}.indicator-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:9px}.indicator-row div{background:#0a171f;border:1px solid #17303d;border-radius:7px;padding:8px}.indicator-row span{font-size:9px;color:#77909c;display:block}.indicator-row b{font-size:11px}
.news-time{font-size:11px;color:var(--amber);margin-top:14px}.news-title{font-weight:700;margin:5px 0 7px;font-size:12px}.signal-cards{display:flex;flex-direction:column;gap:8px;margin-top:12px}.mini-signal{border:1px solid #17303d;border-radius:8px;padding:10px}.mini-top{display:flex;justify-content:space-between;font-size:11px;font-weight:800}.mini-side.long{color:var(--green)}.mini-side.short{color:var(--red)}.mini-data{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:7px;font-size:10px;color:#8fa2ab}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.stats div{border:1px solid #17303d;background:#0a171f;border-radius:8px;padding:13px}.stats span{display:block;font-size:9px;color:#81949e}.stats b{font-size:17px;margin-top:4px;display:block}
dialog{border:1px solid #254250;background:#0a151e;color:var(--text);border-radius:12px;width:min(460px,calc(100vw - 30px));padding:0}.modal{padding:18px}.modal label{display:block;padding:10px 0;border-bottom:1px solid #142a35;font-size:12px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.icon-btn{border:0;background:transparent;color:#b9c6cc;font-size:24px}.toast{position:fixed;right:20px;bottom:20px;background:#10242e;border:1px solid #2c5f6c;padding:11px 14px;border-radius:8px;font-size:12px;opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}
@media(max-width:1180px){.layout{grid-template-columns:220px 1fr;grid-template-areas:"watch hero" "watch ai" "chart chart" "news recent" "performance performance"}.ai{min-height:auto}.ticker{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.sidebar{display:none}.shell{margin-left:0}.system-strip span:nth-child(n+2){display:none}.topbar{padding:0 14px}.ticker{padding:10px 12px;grid-template-columns:repeat(2,1fr);overflow:hidden}.layout{padding:0 12px 24px;grid-template-columns:1fr;grid-template-areas:"hero" "watch" "ai" "chart" "recent" "news" "performance"}.signal-side{font-size:40px}.levels{grid-template-columns:repeat(2,1fr)}.level{border-bottom:1px solid #17313e}.indicator-row,.stats{grid-template-columns:repeat(2,1fr)}.chart{height:300px}.btn{font-size:11px}}
.login-copy{font-size:12px;line-height:1.55;color:#aabac2;margin:12px 0 16px}.field-label{display:block!important;border:0!important;padding:8px 0!important;color:#91a3ad;font-size:11px!important}.field-label input{width:100%;margin-top:7px;padding:11px 12px;border:1px solid #24414f;border-radius:8px;background:#07131b;color:#edf4f7;outline:none}.field-label input:focus{border-color:var(--cyan)}.login-error{min-height:18px;color:var(--red);font-size:11px;margin-top:5px}.account-details{margin-top:12px;border:1px solid #17303d;border-radius:9px;padding:12px;line-height:1.7;font-size:12px;color:#b7c4ca}.connection-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:5px}.connection-dot.off{background:var(--red)}
.ticker-item.live-core{border-color:#2b6e70;background:#0d2025}.empty-state{border:1px dashed #23404d;border-radius:8px;padding:14px;color:#78909c;font-size:11px;text-align:center}.chart-feed-state{position:absolute;left:12px;top:12px;font-size:10px;color:#7e939e;background:rgba(7,16,23,.82);padding:5px 7px;border-radius:5px;border:1px solid #17313e}

/* V3.2.1 real navigation pages */
.page{display:none}.page.active{display:block}.page-pad{padding:22px 24px 36px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.page-heading h2{margin:3px 0 0;font-size:24px}.page-grid{display:grid;gap:14px}.page-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid.watch-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.page-card{margin-top:14px}.page-copy{color:#afc0c9;font-size:13px;line-height:1.65;margin:14px 0 0}.detail-panel{margin-top:14px;background:#091720;border:1px solid #173441;border-radius:9px;padding:14px;color:#c3d0d6;line-height:1.6;font-size:13px}.feature-list{margin-top:12px;border-top:1px solid #17313e}.feature-list div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #132833;font-size:12px}.feature-list span{color:#91a4ae}.feature-list b{font-size:12px}.danger{color:var(--red)!important}.empty-state{color:#80949f;padding:14px 0;font-size:12px}.table-wrap{overflow:auto;margin-top:12px}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{text-align:left;padding:11px 10px;border-bottom:1px solid #17303d;font-size:11px;white-space:nowrap}.data-table th{color:#78909c;font-size:9px;letter-spacing:.7px;text-transform:uppercase}.data-table td{color:#c6d2d8}.market-card{min-height:150px}.market-card.core{border-color:#2b6e70}.market-card.disabled{opacity:.72}.market-price{font-size:31px;font-weight:900;margin-top:20px}.market-meta{display:flex;gap:16px;flex-wrap:wrap;color:#8fa2ac;font-size:11px;margin-top:10px}.signal-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.signal-detail-grid div{background:#0b1a23;border:1px solid #17303d;border-radius:8px;padding:10px}.signal-detail-grid span{font-size:9px;color:#7f939e;display:block}.signal-detail-grid b{display:block;margin-top:4px;font-size:13px}.action-card{display:block;text-decoration:none;color:var(--text);transition:transform .15s,border-color .15s}.action-card:hover{transform:translateY(-2px);border-color:var(--cyan)}.action-card h3{margin:6px 0}.action-card p{color:#9fb0b9;font-size:12px;line-height:1.5}.action-card>span{color:var(--cyan);font-size:12px;font-weight:800}.inline-actions{display:flex;gap:8px;margin-top:14px}.chart-feed-state{position:absolute;left:12px;top:12px;font-size:10px;color:#78909c;background:#071017bb;padding:5px 7px;border-radius:5px}
@media(max-width:1100px){.page-grid.two,.page-grid.watch-grid{grid-template-columns:1fr}.signal-detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sidebar{position:static;width:100%;height:auto}.shell{margin-left:0}.sidebar nav{display:grid;grid-template-columns:repeat(2,1fr)}.entitlement{display:none}.topbar{position:static;height:auto;padding:14px;gap:12px;align-items:flex-start}.system-strip{gap:10px;flex-wrap:wrap}.ticker,.page-pad{padding-left:14px;padding-right:14px}.layout{padding:0 14px 24px;grid-template-columns:1fr;grid-template-areas:"hero" "ai" "chart" "watch" "news" "recent" "performance"}.ticker{grid-template-columns:1fr}.signal-side{font-size:39px}.page-grid.two,.page-grid.watch-grid{grid-template-columns:1fr}}

/* ==================================================================
   V3.3 / RC3 LIVE TRADING VIEW
   ================================================================== */
.avatar{
  width:38px;height:38px;min-width:38px;min-height:38px;
  padding:0!important;margin:0;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  line-height:1!important;text-align:center!important;
  font-size:13px;font-weight:900;letter-spacing:0;
  box-sizing:border-box;
}

.chart-card{overflow:hidden}
.chart-head{align-items:flex-start}
.chart-subtitle{margin-top:5px;color:#7f929e;font-size:10px;line-height:1.45}
.tf{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.tf button{cursor:pointer;min-width:42px;transition:border-color .15s,color .15s,background .15s}
.tf button:hover{border-color:#3b7f88;color:#d7f9ff}
.tf button.active{color:var(--cyan);border-color:var(--cyan);background:#0b242c;box-shadow:0 0 0 1px rgba(50,220,225,.06) inset}

.chart-legend{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:12px;color:#8297a2;font-size:9px}
.chart-legend span{display:inline-flex;align-items:center;gap:5px}
.legend-line{display:inline-block;width:18px;height:0;border-top:2px solid}
.legend-line.yellow{border-color:#f4df00}.legend-line.red{border-color:#ff624f}.legend-line.green{border-color:#39f56c}
.legend-candle{display:inline-block;width:7px;height:13px;border-radius:1px}.legend-candle.up{background:#15f05a}.legend-candle.down{background:#ff2d2d}

.market-chart-wrap{height:480px;margin-top:10px;border:1px solid #17313e;border-radius:9px;position:relative;overflow:hidden;background:#05090c}
#marketChartSvg{position:absolute;inset:0;width:100%;height:100%}
.axis-label{position:absolute;z-index:4;color:#617883;font-size:8px;letter-spacing:.9px;font-weight:800;pointer-events:none}
.axis-price{right:8px;top:8px}.axis-time{right:8px;bottom:6px}
.chart-feed-state{z-index:5;left:12px;top:12px;color:#9cb0b9;background:rgba(3,9,13,.88);border-color:#223f4d}

.chart-grid-line{stroke:#162832;stroke-width:1;opacity:.9}.chart-axis-text{fill:#81949f;font-size:11px;font-family:Arial,sans-serif}.chart-axis-title{fill:#607781;font-size:9px;font-family:Arial,sans-serif;letter-spacing:1px}
.candle-wick.up,.candle-body.up{stroke:#00ff59;fill:#00e94f}.candle-wick.down,.candle-body.down{stroke:#ff3030;fill:#ff3030}.candle-wick{stroke-width:1.3}.candle-body{stroke-width:1}
.band-line{fill:none;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.band-line.yellow{stroke:#f1df00;stroke-width:1.8}.band-line.yellow.basis{stroke-width:2.2}.band-line.red{stroke:#ff654f;stroke-width:1}.band-line.green{stroke:#43f56e;stroke-width:1}
.live-price-line{stroke:#ff5555;stroke-width:1.2;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.live-price-tag{fill:#a83f4b}.live-price-text{fill:#fff;font-size:11px;font-family:Arial,sans-serif;font-weight:800}
.signal-level.entry{stroke:#31dda0}.signal-level.tp{stroke:#3bd99d}.signal-level.sl{stroke:#ff5964}.signal-level{stroke-width:1.1;stroke-dasharray:7 5;vector-effect:non-scaling-stroke;opacity:.9}.signal-level-bg.entry{fill:#1b7856}.signal-level-bg.tp{fill:#176d61}.signal-level-bg.sl{fill:#803d47}.signal-level-text{fill:#fff;font-size:10px;font-weight:800;font-family:Arial,sans-serif}
.signal-marker-buy{fill:#2df878;stroke:#062a18;stroke-width:1}.signal-marker-sell{fill:#ff4c4c;stroke:#3c0808;stroke-width:1}.signal-marker-text-buy{fill:#35fa7b}.signal-marker-text-sell{fill:#ff5b5b}.signal-marker-label{font-family:Arial,sans-serif;font-size:9px;font-weight:900}

.oscillator-panel{margin-top:10px;border:1px solid #17313e;border-radius:9px;background:#05090c;overflow:hidden}
.oscillator-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #142b36;color:#b4c4cc;font-size:11px}
.oscillator-head strong{font-size:12px}.oscillator-head>span{color:#718792;font-size:8px;text-align:right}
#oscillatorSvg{display:block;width:100%;height:210px}
.osc-level{stroke:#83929a;stroke-width:1;stroke-dasharray:7 6;opacity:.65}.osc-level.neutral{stroke:#c1c9cd;opacity:.85}.osc-label{fill:#aebdc4;font-size:9px;font-family:Arial,sans-serif}.osc-zone-label{font-size:8px;font-family:Arial,sans-serif;font-weight:800}.osc-zone-label.hot{fill:#ff5a49}.osc-zone-label.cool{fill:#47f86e}.osc-zone-label.neutral{fill:#c5d0d5}.osc-macd{stroke:#32e963;stroke-width:2;opacity:.88}.osc-k{fill:none;stroke:#3cff65;stroke-width:1.4;vector-effect:non-scaling-stroke}.osc-d{fill:none;stroke:#ff614f;stroke-width:1.25;vector-effect:non-scaling-stroke}
.chart-stats{grid-template-columns:repeat(5,1fr)}

@media(max-width:1180px){.market-chart-wrap{height:440px}.chart-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.market-chart-wrap{height:360px}.oscillator-head{align-items:flex-start;flex-direction:column}.oscillator-head>span{text-align:left}.chart-stats{grid-template-columns:repeat(2,1fr)}.chart-legend{gap:8px}.tf{justify-content:flex-start}.chart-head{flex-direction:column}}

/* ==================================================================
   V3.4 / RC4 AI LIVE MARKET ANALYST
   ================================================================== */
.ai-verdict.ok{color:var(--green)!important}.ai-verdict.danger{color:var(--red)!important}.ai-verdict.warn{color:var(--amber)!important}
.tf-bias-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}
.tf-bias-item{background:#091720;border:1px solid #173441;border-radius:8px;padding:11px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.tf-bias-item span{color:#7f939e;font-size:10px;font-weight:800}.tf-bias-item b{font-size:11px}
#aiMarketAlignment{max-width:170px;text-align:right;line-height:1.3}
#signalAIReview b{display:inline-block;margin:4px 0;color:#d8e5ea}
@media(max-width:760px){.tf-bias-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#aiMarketAlignment{max-width:145px}}


/* V3.7 BTC LIVE PWA EXPANSION */
.ticker-item[data-select-asset],.watch-row[data-select-asset],.selectable-market{cursor:pointer;transition:transform .15s,border-color .15s,background .15s}
.ticker-item[data-select-asset]:hover,.watch-row[data-select-asset]:hover,.selectable-market:hover{transform:translateY(-1px);border-color:#2b6f78}
.ticker-item.live-asset,.watch-row.live-asset,.market-card.live-beta{border-color:#31506d;background:#0b1823}
.chart-controls{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.asset-tabs{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.asset-tabs button{cursor:pointer;background:#08141c;border:1px solid #233d49;color:#9db0ba;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800}
.asset-tabs button:hover{border-color:#3b7f88;color:#d7f9ff}
.asset-tabs button.active{color:var(--cyan);border-color:var(--cyan);background:#0b242c}
.asset-tabs small{font-size:8px;color:var(--green);margin-left:4px}
.market-card.live-beta{border-color:#31506d}
.market-note{margin:10px 0 0;color:#90a4ae;font-size:11px;line-height:1.5}
.market-action{margin-top:13px;color:var(--cyan);font-size:11px;font-weight:800}
@media(max-width:820px){.chart-controls{align-items:flex-start}.asset-tabs{justify-content:flex-start}}
