/* AUTH SCREENS */
.auth-screen{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:1000}
.auth-box{border:1px solid var(--border2);padding:40px;width:380px;background:var(--bg2)}
.auth-logo{font-family:'JetBrains Mono',monospace;font-size:18px;color:var(--accent);letter-spacing:4px;margin-bottom:4px}
.auth-sub{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text3);letter-spacing:2px;margin-bottom:28px}
.auth-label{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text3);letter-spacing:2px;margin-bottom:6px;display:block}
.auth-input{width:100%;background:var(--bg3);border:1px solid var(--border2);color:var(--text);font-family:'JetBrains Mono',monospace;font-size:13px;padding:10px 12px;outline:none;margin-bottom:14px}
.auth-input:focus{border-color:var(--accent)}
.auth-btn{width:100%;background:var(--accent);border:none;color:var(--bg);font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;padding:12px;cursor:pointer;letter-spacing:2px;transition:background 0.2s;margin-bottom:12px}
.auth-btn:hover{background:var(--accent2)}
.auth-link{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text3);cursor:pointer;letter-spacing:1px;text-decoration:underline;background:none;border:none;padding:0;transition:color 0.2s}
.auth-link:hover{color:var(--accent)}

/* HEADER */
.header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--bg2);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;flex-wrap:wrap;gap:6px}
.logo{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--accent);letter-spacing:3px;white-space:nowrap;cursor:pointer}
.logo span{color:var(--text3)}
.header-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.header-time{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text3);letter-spacing:1px;white-space:nowrap}
.header-greeting{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--accent);letter-spacing:1px}
.icon-btn{background:none;border:1px solid var(--border2);color:var(--text3);font-family:'JetBrains Mono',monospace;font-size:10px;padding:4px 8px;cursor:pointer;letter-spacing:1px;transition:all 0.2s;white-space:nowrap}
.icon-btn:hover{border-color:var(--accent);color:var(--accent)}
.icon-btn.danger:hover{border-color:var(--red);color:var(--red)}
.icon-btn.scanning{border-color:var(--yellow);color:var(--yellow);animation:pulse 1s infinite}

/* MARKET TICKER */
.market-ticker{background:var(--bg2);border-bottom:1px solid var(--border);padding:5px 16px;display:flex;gap:20px;overflow-x:auto;scrollbar-width:none}
.market-ticker::-webkit-scrollbar{display:none}
.ticker-item{display:flex;align-items:center;gap:6px;white-space:nowrap;font-family:'JetBrains Mono',monospace;font-size:11px}
.ticker-label{color:var(--text3);font-size:10px}
.ticker-chg.up{color:var(--green)}
.ticker-chg.down{color:var(--red)}

/* MAIN LAYOUT */
.main-layout{display:grid;grid-template-columns:260px 1fr 300px;height:calc(100vh - 72px);overflow:hidden}
.panel-left{background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}
.panel-center{display:flex;flex-direction:column;overflow:hidden;background:var(--bg)}
.panel-right{background:var(--bg2);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}
.panel-header{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.panel-title{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--accent);letter-spacing:2px}

/* SEARCH */
.search-bar{display:flex;padding:8px 10px;border-bottom:1px solid var(--border)}
.search-input{flex:1;background:var(--bg3);border:1px solid var(--border2);border-right:none;color:var(--text);font-family:'JetBrains Mono',monospace;font-size:12px;padding:6px 10px;outline:none;text-transform:uppercase;letter-spacing:1px}
.search-input:focus{border-color:var(--accent2)}
.search-input::placeholder{color:var(--text3)}
.search-btn{background:var(--accent);border:none;color:var(--bg);font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;padding:6px 10px;cursor:pointer;transition:background 0.2s}
.search-btn:hover{background:var(--accent2)}

/* WATCHLIST */
.watchlist{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border2) transparent}
.watchlist-item{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--border);cursor:pointer;transition:background 0.15s;position:relative}
.watchlist-item:hover{background:var(--bg3)}
.watchlist-item.active{background:var(--bg4);border-left:2px solid var(--accent)}
.wl-left{display:flex;flex-direction:column;gap:2px}
.wl-sym{font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:700}
.wl-name{font-size:11px;color:var(--text3)}
.wl-signals{display:flex;gap:3px;margin-top:2px;font-size:12px}
.wl-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.wl-price{font-family:'JetBrains Mono',monospace;font-size:12px}
.wl-chg{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700}
.wl-chg.up{color:var(--green)}
.wl-chg.down{color:var(--red)}
.conviction-bar{position:absolute;bottom:0;left:0;height:2px;transition:width 0.5s}
.remove-btn{opacity:0;background:none;border:none;color:var(--red);cursor:pointer;font-size:13px;padding:2px 4px;position:absolute;right:4px;top:50%;transform:translateY(-50%);transition:opacity 0.2s}
.watchlist-item:hover .remove-btn{opacity:1}

/* TICKER HERO */
.ticker-hero{padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg2)}
.ticker-name-row{display:flex;align-items:baseline;gap:10px;margin-bottom:5px;flex-wrap:wrap}
.ticker-main-sym{font-family:'JetBrains Mono',monospace;font-size:20px;font-weight:700;color:var(--accent);letter-spacing:2px}
.ticker-main-name{font-size:13px;color:var(--text2);font-weight:500}
.ticker-price-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.ticker-main-price{font-family:'JetBrains Mono',monospace;font-size:26px;font-weight:700;letter-spacing:-1px}
.ticker-main-chg{font-family:'JetBrains Mono',monospace;font-size:14px;font-weight:700}
.ticker-main-chg.up{color:var(--green)}
.ticker-main-chg.down{color:var(--red)}
.ticker-ext-price{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--text2);margin-top:4px;display:none}
.ticker-ext-price .ext-label{font-size:10px;color:var(--text3);letter-spacing:1px;margin-right:6px}
.ticker-ext-price .ext-chg.up{color:var(--green)}
.ticker-ext-price .ext-chg.down{color:var(--red)}
.add-to-wl{background:none;border:1px solid var(--border2);color:var(--text2);font-family:'JetBrains Mono',monospace;font-size:10px;padding:3px 7px;cursor:pointer;letter-spacing:1px;transition:all 0.2s}
.add-to-wl:hover{border-color:var(--accent);color:var(--accent)}

/* STATS */
.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid var(--border)}
.stat-box{padding:7px 10px;border-right:1px solid var(--border)}
.stat-box:last-child{border-right:none}
.stat-label{font-family:'JetBrains Mono',monospace;font-size:9px;color:var(--text3);letter-spacing:1px;margin-bottom:2px}
.stat-value{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700}
.stat-value.up{color:var(--green)}
.stat-value.down{color:var(--red)}
.stat-value.warn{color:var(--orange)}

/* SECTOR ROW */
#sectorRow{padding:6px 14px;border-bottom:1px solid var(--border);background:var(--bg2);display:none;flex-wrap:wrap;gap:20px}

/* EMPTY STATE */
.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:10px;color:var(--text3);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:1px;text-align:center}
.empty-icon{font-size:36px;opacity:0.2}

/* AI PANEL */
.ai-header{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.ai-status{display:flex;align-items:center;gap:6px;font-family:'JetBrains Mono',monospace;font-size:9px;color:var(--text3);letter-spacing:1px}
.ai-dot{width:6px;height:6px;border-radius:50%;background:var(--green);animation:pulse 2s infinite}
.analyze-btn{width:calc(100% - 28px);margin:10px 14px;padding:9px;background:transparent;border:1px solid var(--accent);color:var(--accent);font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:2px;cursor:pointer;transition:all 0.2s;position:relative;overflow:hidden}
.analyze-btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:rgba(0,212,255,0.08);transition:left 0.3s}
.analyze-btn:hover::before{left:0}
.analyze-btn:hover{box-shadow:0 0 16px rgba(0,212,255,0.15)}
.analyze-btn:disabled{opacity:0.4;cursor:not-allowed}
.ai-output{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border2) transparent;padding:0 14px 14px}
.ai-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:var(--text3);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:1px;text-align:center}
.ai-section{margin-bottom:14px}
.ai-section-title{font-family:'JetBrains Mono',monospace;font-size:9px;color:var(--accent);letter-spacing:2px;margin-bottom:5px;padding-bottom:4px;border-bottom:1px solid var(--border)}
.ai-text{font-size:12px;color:var(--text2);line-height:1.6}
.conviction-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:1px;margin-bottom:12px}
.conviction-badge.strong-buy{background:rgba(0,255,157,0.15);color:var(--green);border:1px solid rgba(0,255,157,0.3)}
.conviction-badge.buy{background:rgba(0,255,157,0.08);color:#00cc7a;border:1px solid rgba(0,204,122,0.2)}
.conviction-badge.hold{background:rgba(255,215,0,0.08);color:var(--yellow);border:1px solid rgba(255,215,0,0.2)}
.conviction-badge.sell{background:rgba(255,51,102,0.08);color:var(--red);border:1px solid rgba(255,51,102,0.2)}
.conviction-badge.strong-sell{background:rgba(255,51,102,0.15);color:var(--red);border:1px solid rgba(255,51,102,0.3)}
.risk-item{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--text2);margin-bottom:4px;line-height:1.5}
.risk-bullet{color:var(--red);flex-shrink:0}
.bull-bullet{color:var(--green);flex-shrink:0}

/* SKIN PICKER */
#skinPanel{display:none;position:fixed;top:48px;right:16px;background:var(--bg2);border:1px solid var(--border2);padding:12px;z-index:500;min-width:180px}
.skin-option{display:flex;align-items:center;gap:10px;padding:8px 10px;cursor:pointer;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text2);transition:background 0.15s;letter-spacing:1px}
.skin-option:hover{background:var(--bg3);color:var(--accent)}
.skin-option.active{color:var(--accent)}
.skin-swatch{width:14px;height:14px;border-radius:50%;border:1px solid var(--border2)}

/* PROFILE STATS */
.profile-stat{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border)}
.profile-stat-label{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text3);letter-spacing:1px}
.profile-stat-value{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--text)}

/* MOBILE TABS */
.mobile-tabs{display:none;background:var(--bg2);border-top:1px solid var(--border);position:fixed;bottom:0;left:0;right:0;z-index:200}
.mobile-tab-bar{display:flex}
.mobile-tab{flex:1;padding:10px 4px 8px;background:none;border:none;color:var(--text3);font-family:'JetBrains Mono',monospace;font-size:9px;cursor:pointer;letter-spacing:1px;border-top:2px solid transparent;transition:all 0.2s;display:flex;flex-direction:column;align-items:center;gap:3px}
.mobile-tab.active{color:var(--accent);border-top-color:var(--accent)}
.mobile-tab-icon{font-size:16px}

/* RESPONSIVE */
@media(max-width:768px){
  body{overflow:auto}
  body::before{display:none}
  .main-layout{display:block;height:auto;overflow:visible}
  .panel-left,.panel-right{display:none}
  .panel-center{height:auto;overflow:visible}
  .mobile-tabs{display:block}
  .chart-area{padding:8px;padding-bottom:70px}
  .stats-grid{grid-template-columns:repeat(3,1fr)}
  .ticker-main-price{font-size:22px}
  .header{padding:6px 12px}
  .logo{font-size:11px}
  .market-ticker{padding:4px 12px;gap:16px}
  .mobile-panel{display:none}
  .mobile-panel.active{display:flex;flex-direction:column;padding-bottom:60px}
  #mobileWatchlist{padding-bottom:60px}
  .form-row{grid-template-columns:1fr}
  .overlay-box{width:95vw;max-height:92vh}
  .header-greeting{display:none}
}
@media(min-width:769px){
  .mobile-tabs{display:none}
  .mobile-panel{display:contents}
}
