/* ============================================================
   DAILY STOCK — Design System & Global Styles v2
   ============================================================ */

:root {
  --bg-base: #050810;
  --bg-card: rgba(12, 16, 28, 0.82);
  --bg-card-hover: rgba(18, 24, 40, 0.9);
  --bg-glass: rgba(255,255,255,0.04);
  --border: rgba(255,255,255,0.08);
  --border-hover: rgba(255,255,255,0.16);

  --accent-primary: #6c63ff;
  --accent-blue: #4facfe;
  --accent-cyan: #00d2ff;
  --accent-purple: #a855f7;

  --green: #10d479;
  --green-glow: rgba(16,212,121,0.15);
  --red: #f43f5e;
  --red-glow: rgba(244,63,94,0.15);

  --text-primary: #f0f2ff;
  --text-secondary: #8892b0;
  --text-muted: #4a5568;

  --font-main: 'Inter', sans-serif;
  --font-mono: 'JetBrains Mono', monospace;

  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;

  --shadow-card: 0 4px 32px rgba(0,0,0,0.4);
  --shadow-glow: 0 0 40px rgba(108,99,255,0.15);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-main);background:var(--bg-base);color:var(--text-primary);min-height:100vh;overflow-x:hidden;line-height:1.6}

/* ── BACKGROUND ─────────────────────────────────────────── */
.bg-grid{position:fixed;inset:0;background-image:linear-gradient(rgba(108,99,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(108,99,255,.04) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;z-index:0}
.bg-orbs{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;animation:orbFloat 20s ease-in-out infinite}
.orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(108,99,255,.3),transparent 70%);top:-200px;left:-100px}
.orb-2{width:500px;height:500px;background:radial-gradient(circle,rgba(16,212,121,.15),transparent 70%);bottom:-100px;right:-100px;animation-delay:-7s}
.orb-3{width:400px;height:400px;background:radial-gradient(circle,rgba(79,172,254,.2),transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:-14s}
@keyframes orbFloat{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}

/* ── HEADER ─────────────────────────────────────────────── */
.header{position:sticky;top:0;z-index:100;background:rgba(5,8,16,.85);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}
.header-inner{max-width:1440px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{display:flex;align-items:center;gap:10px}
.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-blue));border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff}
.logo-icon svg{width:18px;height:18px}
.logo-text{font-size:1.2rem;font-weight:800;letter-spacing:-.5px}
.logo-accent{color:var(--accent-blue)}
.header-center{display:flex;align-items:center;gap:16px}
.live-badge{display:flex;align-items:center;gap:6px;background:rgba(16,212,121,.1);border:1px solid rgba(16,212,121,.25);border-radius:100px;padding:4px 12px;font-size:.65rem;font-weight:700;letter-spacing:1px;color:var(--green)}
.pulse-dot{width:6px;height:6px;background:var(--green);border-radius:50%;animation:pulse 2s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(16,212,121,.6)}50%{opacity:.8;transform:scale(1.1);box-shadow:0 0 0 4px rgba(16,212,121,0)}}
.date-display{font-size:.8rem;color:var(--text-secondary);font-family:var(--font-mono)}
.market-status{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:var(--text-secondary)}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--red)}
.status-dot.open{background:var(--green);animation:pulse 1.5s infinite}

/* ── TICKER BAR ─────────────────────────────────────────── */
.ticker-bar{position:relative;z-index:10;background:rgba(12,16,28,.9);border-bottom:1px solid var(--border);padding:12px 24px;max-width:1440px;margin:0 auto;overflow-x:auto;scrollbar-width:none}
.ticker-bar::-webkit-scrollbar{display:none}
.ticker-scroll{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.ticker-item{display:flex;align-items:center;gap:8px;padding:0 20px}
.ticker-divider{width:1px;height:30px;background:var(--border);flex-shrink:0}
.ticker-name{font-size:.7rem;font-weight:700;letter-spacing:.5px;color:var(--text-secondary);text-transform:uppercase}
.ticker-price{font-family:var(--font-mono);font-size:.9rem;font-weight:600}
.ticker-change{font-family:var(--font-mono);font-size:.78rem;font-weight:600;padding:2px 7px;border-radius:4px}
.ticker-change.positive{color:var(--green);background:var(--green-glow)}
.ticker-change.negative{color:var(--red);background:var(--red-glow)}

/* ── SENTIMENT BANNER ───────────────────────────────────── */
.sentiment-banner{position:relative;z-index:10;max-width:1440px;margin:0 auto;padding:16px 24px}
.sentiment-inner{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 28px;display:flex;align-items:center;gap:24px;backdrop-filter:blur(20px)}
.sentiment-label{font-size:.65rem;font-weight:700;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;white-space:nowrap}
.sentiment-gauge{flex:1}
.gauge-labels{display:flex;justify-content:space-between;font-size:.6rem;color:var(--text-muted);margin-bottom:6px;font-weight:500}
.gauge-bar{position:relative;height:8px;background:linear-gradient(90deg,#f43f5e 0%,#fb7185 20%,#94a3b8 40%,#34d399 70%,#10d479 100%);border-radius:100px}
.gauge-needle{position:absolute;top:-12px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:2px}
.needle-value{background:var(--accent-primary);color:#fff;font-size:.65rem;font-weight:700;padding:2px 5px;border-radius:4px;font-family:var(--font-mono)}
.gauge-needle::after{content:'';width:2px;height:12px;background:#fff;border-radius:2px;margin-top:2px}
.sentiment-reading{font-size:1rem;font-weight:800;letter-spacing:2px;white-space:nowrap}

/* ── WORKFLOW LABELS ─────────────────────────────────────── */
.workflow-label{max-width:1440px;margin:24px auto 0;padding:0 24px;display:flex;align-items:center;justify-content:center;gap:14px}
.workflow-step{font-size:.65rem;font-weight:800;letter-spacing:2px;color:#fff;background:linear-gradient(135deg,var(--accent-primary),var(--accent-blue));padding:4px 12px;border-radius:100px;white-space:nowrap}
.workflow-title{font-size:.9rem;font-weight:700;color:var(--text-primary)}
.workflow-score{font-family:var(--font-mono);font-size:.8rem;font-weight:700;padding:3px 12px;border-radius:6px}

/* ── CARDS ───────────────────────────────────────────────── */
.main{position:relative;z-index:10;box-sizing:border-box}
.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;backdrop-filter:blur(20px);box-shadow:var(--shadow-card);transition:border-color .3s,box-shadow .3s,transform .3s;position:relative;overflow:hidden;animation:fadeInUp .5s ease forwards;opacity:0}
.card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.02) 0%,transparent 60%);pointer-events:none}
.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card),var(--shadow-glow);transform:translateY(-2px)}
@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

.card-header{display:flex;align-items:center;justify-content:center;margin-bottom:18px;gap:10px}
.card-title{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:700;color:var(--text-primary);letter-spacing:.3px;text-transform:uppercase}
.card-title svg{width:15px;height:15px;color:var(--accent-blue);flex-shrink:0}
.card-badge{font-size:.58rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:3px 10px;border-radius:100px;background:rgba(108,99,255,.15);border:1px solid rgba(108,99,255,.3);color:var(--accent-primary);white-space:nowrap}
.card-badge.highlight{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.3);color:#fbbf24}
.card-badge.reddit-badge{background:rgba(255,69,0,.15);border-color:rgba(255,69,0,.35);color:#ff6b35}
.card-badge.meta-badge{background:rgba(24,119,242,.15);border-color:rgba(24,119,242,.35);color:#4facfe}

/* ── PICK REVIEW ─────────────────────────────────────────── */
.card-full{max-width:1440px;margin:12px auto 0;padding:0 24px}
.card-full>.card{margin:0}
.review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.review-item{padding:16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-glass);display:flex;flex-direction:column;gap:8px;transition:all .2s}
.review-item.win{border-color:rgba(16,212,121,.3);background:rgba(16,212,121,.05)}
.review-item.miss{border-color:rgba(244,63,94,.3);background:rgba(244,63,94,.05)}
.review-item.partial{border-color:rgba(251,191,36,.3);background:rgba(251,191,36,.05)}

.review-header{display:flex;align-items:center;gap:10px}
.review-verdict{font-size:1.2rem;flex-shrink:0}
.review-symbol{font-family:var(--font-mono);font-size:1rem;font-weight:800;color:var(--text-primary)}
.review-name{font-size:.68rem;color:var(--text-secondary)}
.review-badge{margin-left:auto;font-size:.6rem;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}
.review-badge.win{color:var(--green);background:var(--green-glow);border:1px solid rgba(16,212,121,.3)}
.review-badge.miss{color:var(--red);background:var(--red-glow);border:1px solid rgba(244,63,94,.3)}
.review-badge.partial{color:#fbbf24;background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.3)}

.review-prices{display:flex;gap:16px}
.review-price-block{font-size:.68rem;color:var(--text-muted)}
.review-price-block span{display:block;font-family:var(--font-mono);font-size:.85rem;font-weight:700;color:var(--text-primary);margin-top:2px}
.review-actual{color:var(--green) !important}
.review-actual.neg{color:var(--red) !important}

.review-reason{font-size:.7rem;color:var(--text-secondary);line-height:1.5;padding-top:6px;border-top:1px solid var(--border)}
.review-reason strong{color:var(--text-primary)}

/* ── SOCIAL SENTIMENT ────────────────────────────────────── */
.social-row{max-width:1440px;margin:12px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;box-sizing:border-box}
.card-social{animation-delay:.1s}
.social-list{display:flex;flex-direction:column;gap:8px}
.social-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-glass);border:1px solid var(--border);transition:all .2s;cursor:pointer}
.social-item:hover{background:rgba(255,255,255,.06);border-color:var(--border-hover)}
.social-rank{font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);width:16px;text-align:center;flex-shrink:0}
.social-symbol{font-family:var(--font-mono);font-size:.85rem;font-weight:700;width:48px;flex-shrink:0}
.social-label{font-size:.7rem;color:var(--text-secondary);flex:1;line-height:1.3}
.social-heat{font-size:.75rem;padding:2px 7px;border-radius:4px;font-weight:700;flex-shrink:0}
.social-heat.fire{color:#f97316;background:rgba(249,115,22,.15);border:1px solid rgba(249,115,22,.3)}
.social-heat.hot{color:#fbbf24;background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.3)}
.social-heat.warm{color:var(--accent-blue);background:rgba(79,172,254,.1);border:1px solid rgba(79,172,254,.3)}
.social-heat.cool{color:var(--red);background:var(--red-glow);border:1px solid rgba(244,63,94,.3)}

/* ── DASHBOARD GRID ──────────────────────────────────────── */
.dashboard-grid{max-width:1440px;margin:24px auto 0;padding:0 24px 24px;display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.card-movers{grid-column:span 4;animation-delay:.05s}
.card-featured{grid-column:span 5;animation-delay:.10s}
.card-watchlist{grid-column:span 3;animation-delay:.15s}
.card-analyst{grid-column:span 7;animation-delay:.20s}
.card-themes{grid-column:span 5;animation-delay:.25s}
.card-dividends{grid-column:span 5;animation-delay:.30s}
.card-wide{grid-column:span 7;animation-delay:.35s}

/* ── TOP MOVERS ──────────────────────────────────────────── */
.movers-list{display:flex;flex-direction:column;gap:8px}
.mover-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);background:var(--bg-glass);border:1px solid var(--border);transition:all .2s;cursor:pointer}
.mover-row:hover{background:rgba(255,255,255,.05);border-color:var(--border-hover);transform:translateX(2px)}
.mover-rank{font-family:var(--font-mono);font-size:.62rem;color:var(--text-muted);width:14px}
.mover-symbol{font-family:var(--font-mono);font-weight:700;font-size:.82rem;width:48px}
.mover-name{font-size:.7rem;color:var(--text-secondary);flex:1}
.mover-change{font-family:var(--font-mono);font-size:.8rem;font-weight:700;padding:2px 7px;border-radius:5px}
.mover-change.pos{color:var(--green);background:var(--green-glow)}
.mover-change.neg{color:var(--red);background:var(--red-glow)}

/* ── FEATURED STOCK ──────────────────────────────────────── */
.featured-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.featured-logo{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:800;font-size:.72rem;letter-spacing:.5px;flex-shrink:0}
.featured-logo.dell{background:linear-gradient(135deg,#007db8,#00b4d8);color:#fff}
.featured-logo.nvda{background:linear-gradient(135deg,#76b900,#a8e063);color:#000}
.featured-logo.mu{background:linear-gradient(135deg,#0080ff,#00c6ff);color:#fff}
.featured-logo.snow{background:linear-gradient(135deg,#29b5e8,#00d4e8);color:#fff}
.featured-name{font-size:.95rem;font-weight:700}
.featured-sector{font-size:.7rem;color:var(--text-secondary);margin-top:2px}
.featured-price-block{margin-left:auto;text-align:right}
.featured-price{font-family:var(--font-mono);font-size:1.5rem;font-weight:700}
.featured-change{font-family:var(--font-mono);font-size:.85rem;font-weight:700}
.featured-mini-chart{margin-bottom:14px;border-radius:var(--radius-sm);overflow:hidden;height:90px;background:rgba(255,255,255,.02)}
#featuredChart{width:100%;height:100%}
.featured-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}
.stat-item{padding:10px 12px;background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-sm)}
.stat-label{font-size:.6rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:2px}
.stat-value{font-family:var(--font-mono);font-size:.85rem;font-weight:700}
.featured-insight{display:flex;gap:10px;padding:12px;background:rgba(108,99,255,.08);border:1px solid rgba(108,99,255,.2);border-radius:var(--radius-sm)}
.insight-icon{font-size:1rem;flex-shrink:0;margin-top:1px}
.featured-insight p{font-size:.72rem;color:var(--text-secondary);line-height:1.6}

/* ── WATCHLIST ───────────────────────────────────────────── */
.watchlist-table{display:flex;flex-direction:column;gap:0}
.watchlist-header{display:grid;grid-template-columns:56px 1fr 68px 68px;gap:6px;padding:5px 8px;font-size:.6rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);margin-bottom:5px}
.watchlist-body{display:flex;flex-direction:column;gap:3px}
.watchlist-row{display:grid;grid-template-columns:56px 1fr 68px 68px;gap:6px;align-items:center;padding:9px 8px;border-radius:var(--radius-sm);border:1px solid transparent;transition:all .2s;cursor:pointer}
.watchlist-row:hover{background:var(--bg-glass);border-color:var(--border)}
.wl-symbol{font-family:var(--font-mono);font-size:.8rem;font-weight:700}
.wl-price{font-family:var(--font-mono);font-size:.82rem;font-weight:600;text-align:right}
.wl-change{font-family:var(--font-mono);font-size:.73rem;font-weight:700;text-align:right}
.wl-change.pos{color:var(--green)}.wl-change.neg{color:var(--red)}
.wl-target{font-family:var(--font-mono);font-size:.7rem;color:var(--accent-blue);text-align:right}

/* ── ANALYST PICKS ───────────────────────────────────────── */
.analyst-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.analyst-card{padding:14px;background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-md);transition:all .2s;cursor:pointer;position:relative;overflow:hidden}
.analyst-card::after{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-blue));opacity:0;transition:opacity .2s}
.analyst-card:hover{background:rgba(255,255,255,.05);border-color:var(--border-hover);transform:translateY(-2px)}
.analyst-card:hover::after{opacity:1}
.ac-symbol{font-family:var(--font-mono);font-size:.95rem;font-weight:800;margin-bottom:2px}
.ac-name{font-size:.67rem;color:var(--text-secondary);margin-bottom:10px;line-height:1.3}
.ac-rating{display:inline-block;font-size:.58rem;font-weight:700;letter-spacing:.5px;padding:2px 7px;border-radius:4px;text-transform:uppercase;margin-bottom:8px}
.ac-rating.buy{background:rgba(16,212,121,.15);color:var(--green);border:1px solid rgba(16,212,121,.3)}
.ac-rating.strong-buy{background:rgba(16,212,121,.25);color:var(--green);border:1px solid rgba(16,212,121,.5)}
.ac-rating.undervalued{background:rgba(79,172,254,.15);color:var(--accent-blue);border:1px solid rgba(79,172,254,.3)}
.ac-price{font-family:var(--font-mono);font-size:1rem;font-weight:700}
.ac-source{font-size:.6rem;color:var(--text-muted);margin-top:5px}

/* ── THEMES ──────────────────────────────────────────────── */
.themes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.theme-card{padding:14px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-glass);transition:all .2s;cursor:pointer;position:relative;overflow:hidden}
.theme-card:hover{transform:translateY(-2px);border-color:var(--border-hover)}
.theme-icon{font-size:1.4rem;margin-bottom:7px}
.theme-name{font-size:.78rem;font-weight:700;margin-bottom:3px}
.theme-desc{font-size:.67rem;color:var(--text-secondary);line-height:1.4}
.theme-perf{position:absolute;top:10px;right:10px;font-family:var(--font-mono);font-size:.68rem;font-weight:700}
.theme-perf.neg{color:var(--red)}

/* ── DIVIDENDS ───────────────────────────────────────────── */
.dividend-list{display:flex;flex-direction:column;gap:8px}
.dividend-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-glass);transition:all .2s;cursor:pointer}
.dividend-row:hover{background:rgba(255,255,255,.05);border-color:var(--border-hover);transform:translateX(3px)}
.div-symbol{font-family:var(--font-mono);font-size:.9rem;font-weight:800;width:48px}
.div-name{font-size:.7rem;color:var(--text-secondary);flex:1}
.div-yield{text-align:right}
.div-yield-label{font-size:.6rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}
.div-yield-value{font-family:var(--font-mono);font-size:.95rem;font-weight:700;color:var(--green)}

/* ── NEWS ────────────────────────────────────────────────── */
.card-wide{max-width:1440px;margin:0 auto 20px;padding:0 24px;box-sizing:border-box}
.card-wide>.card{margin:0}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.news-item{padding:16px;background:var(--bg-glass);border:1px solid var(--border);border-radius:var(--radius-md);transition:all .2s;cursor:pointer;display:flex;flex-direction:column;gap:8px}
.news-item:hover{background:rgba(255,255,255,.05);border-color:var(--border-hover);transform:translateY(-2px)}
.news-tag{display:inline-block;font-size:.56rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:2px 7px;border-radius:4px;width:fit-content}
.news-tag.geopolitics{background:rgba(244,63,94,.15);color:var(--red);border:1px solid rgba(244,63,94,.3)}
.news-tag.tech{background:rgba(108,99,255,.15);color:var(--accent-primary);border:1px solid rgba(108,99,255,.3)}
.news-tag.defense{background:rgba(251,191,36,.15);color:#fbbf24;border:1px solid rgba(251,191,36,.3)}
.news-tag.commodities{background:rgba(249,115,22,.15);color:#f97316;border:1px solid rgba(249,115,22,.3)}
.news-tag.earnings{background:rgba(16,212,121,.15);color:var(--green);border:1px solid rgba(16,212,121,.3)}
.news-tag.global{background:rgba(79,172,254,.15);color:var(--accent-blue);border:1px solid rgba(79,172,254,.3)}
.news-headline{font-size:.82rem;font-weight:600;line-height:1.4}
.news-body{font-size:.7rem;color:var(--text-secondary);line-height:1.6;flex:1}
.news-time{font-size:.6rem;color:var(--text-muted);font-family:var(--font-mono)}

/* ── TAB NAVIGATION ──────────────────────────────────────── */
.tab-navigation{max-width:1440px;margin:20px auto 10px;padding:0 24px;display:flex;justify-content:center;gap:12px;z-index:10;position:relative}
.tab-btn{display:inline-flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:100px;padding:8px 20px;font-size:0.8rem;font-weight:600;color:var(--text-secondary);text-decoration:none;transition:all 0.25s ease;box-shadow:var(--shadow-card);cursor:pointer}
.tab-btn:hover{border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}
.tab-btn.active{background:linear-gradient(135deg,var(--accent-primary),var(--accent-blue));border-color:transparent;color:#fff;box-shadow:0 4px 15px rgba(108,99,255,0.2)}

/* ── OPTIONS CHAIN FLOWS ─────────────────────────────────── */
.options-row{max-width:1440px;margin:12px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;box-sizing:border-box}
.card-options{animation-delay:.25s}
.options-table{display:flex;flex-direction:column;gap:0}
.options-header{display:grid;grid-template-columns:30px 50px 75px 95px 1fr 1fr 50px;gap:6px;padding:6px 8px;font-size:.6rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);margin-bottom:5px}
.options-body{display:flex;flex-direction:column;gap:4px}
.options-row-item{display:grid;grid-template-columns:30px 50px 75px 95px 1fr 1fr 50px;gap:6px;align-items:center;padding:8px;border-radius:var(--radius-sm);border:1px solid transparent;background:var(--bg-glass);transition:all .2s;cursor:pointer}
.options-row-item:hover{background:rgba(255,255,255,.05);border-color:var(--border);transform:translateX(2px)}
.opt-rank{font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted);text-align:center}
.opt-symbol{font-family:var(--font-mono);font-size:.82rem;font-weight:700}
.opt-strike{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--text-primary)}
.opt-expiry{font-size:.67rem;color:var(--text-secondary)}
.opt-volume{font-family:var(--font-mono);font-size:.8rem;font-weight:700;text-align:right}
.opt-volume.call{color:var(--green)}
.opt-volume.put{color:var(--accent-purple)}
.opt-oi{font-family:var(--font-mono);font-size:.78rem;color:var(--text-secondary);text-align:right}
.opt-iv{font-family:var(--font-mono);font-size:.78rem;color:var(--accent-cyan);text-align:right}
.call-badge{background:rgba(16,212,121,.15);border-color:rgba(16,212,121,.35);color:var(--green)}
.put-badge{background:rgba(168,85,247,.15);border-color:rgba(168,85,247,.35);color:var(--accent-purple)}

/* ── UTILITIES ───────────────────────────────────────────── */
.positive-text{color:var(--green)}
.negative-text{color:var(--red)}

/* ── DISCLAIMER ──────────────────────────────────────────── */
.disclaimer{max-width:1440px;margin:0 auto 32px;padding:14px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:.68rem;color:var(--text-muted);line-height:1.5;text-align:center}
.disclaimer svg{width:16px;height:16px;flex-shrink:0;color:var(--text-muted)}
.disclaimer strong{color:var(--text-secondary)}

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media(max-width:1100px){
  .card-movers,.card-watchlist{grid-column:span 6}
  .card-featured{grid-column:span 6}
  .card-analyst,.card-themes,.card-dividends{grid-column:span 6}
  .card-wide{grid-column:span 12}
  .analyst-cards{grid-template-columns:repeat(2,1fr)}
  .social-row{grid-template-columns:1fr}
  .options-row{grid-template-columns:1fr}
}
@media(max-width:768px){
  .dashboard-grid{grid-template-columns:1fr}
  .card-movers,.card-featured,.card-watchlist,.card-analyst,.card-themes,.card-dividends{grid-column:span 1}
  .analyst-cards{grid-template-columns:1fr}
  .news-grid{grid-template-columns:1fr}
  .themes-grid{grid-template-columns:1fr}
  .header-center{display:none}
  .social-row{grid-template-columns:1fr}
  .review-grid{grid-template-columns:1fr}
}
