/* ═══════════════════════════════════════════════════
   SACNIC v36 — THE SCOREBOARD
   Font: Fraunces (display) · DM Sans (body) · Geist Mono (numbers) · Lora (articles)
   ═══════════════════════════════════════════════════ */

:root {
  --bg: #060606; --bg2: #0c0c0c;
  --srf: #111; --srf2: #191919; --srf3: #222;
  --bdr: #232323;
  --acc: #eab308; --acc-glow: rgba(234,179,8,0.1);
  --txt: #e6e6e6; --txt2: #919191; --txt3: rgba(255,255,255,0.45);
  --success: #22c55e; --danger: #ef4444; --new: #3b82f6;
  --us: #3b82f6; --us-dim: rgba(59,130,246,0.1);
  --in: #f97316; --in-dim: rgba(249,115,22,0.1);
  --uk: #e23040; --uk-dim: rgba(226,48,64,0.1);
  --r: 10px; --mx: 1080px;
  --fh: 'Fraunces', serif;
  --fb: 'DM Sans', sans-serif;
  --fm: 'Geist Mono', monospace;
  color-scheme: dark;
}

/* ── LIGHT THEME ── */
[data-theme="light"] {
  --bg: #f0ede8; --bg2: #e8e4de;
  --srf: #ffffff; --srf2: #f7f4ef; --srf3: #ede9e3;
  --bdr: #d4cfc8;
  --acc: #b8900a; --acc-glow: rgba(184,144,10,0.1);
  --txt: #111111; --txt2: #4a4745; --txt3: rgba(0,0,0,0.5);
  --success: #15803d; --danger: #dc2626; --new: #1d4ed8;
  --us: #1a56c4; --us-dim: rgba(26,86,196,0.08);
  --in: #c2410c; --in-dim: rgba(194,65,12,0.08);
  --uk: #b91c1c; --uk-dim: rgba(185,28,28,0.08);
  color-scheme: light;
}
/* Header — stays dark in both themes */
[data-theme="light"] header {
  background: rgba(17,17,17,0.97);
  border-bottom-color: #000;
}
[data-theme="light"] .amb { display: none; }
[data-theme="light"] nav a:hover { background: rgba(255,255,255,0.08); }
[data-theme="light"] .logo-name { color: #fff; }
[data-theme="light"] .logo-tag { color: rgba(255,255,255,0.4); }
[data-theme="light"] nav a { color: rgba(255,255,255,0.7); }
[data-theme="light"] nav a.on { color: var(--acc); }
[data-theme="light"] .search-wrap input { background: #1e1e1e; color: #f0ede8; border-color: #333; }
[data-theme="light"] .search-wrap input::placeholder { color: #666; }
[data-theme="light"] #theme-tog { background: rgba(255,255,255,0.1); color: rgba(255,255,255,0.7); border-color: rgba(255,255,255,0.15); }

/* Table cards & data tables */
[data-theme="light"] .table-card { background: var(--srf); backdrop-filter: none; }
[data-theme="light"] td { border-bottom-color: var(--bdr); }
[data-theme="light"] tr:hover td { background: rgba(0,0,0,0.025); }
[data-theme="light"] th { background: rgba(0,0,0,0.02); border-bottom-color: var(--bdr); }
[data-theme="light"] .day-table td { border-bottom-color: var(--bdr); }
[data-theme="light"] .day-table tr:hover td { background: rgba(0,0,0,0.025); }

/* Hero gradient */
[data-theme="light"] .hero::before { background: linear-gradient(to top, #f0ede8 8%, transparent 65%); }
[data-theme="light"] .hero-title { color: var(--txt); }
[data-theme="light"] .hero-meta { color: var(--txt2); }
[data-theme="light"] .hero-btn { background: var(--txt); color: #fff; }
[data-theme="light"] .hero-btn:hover { background: var(--acc); color: #000; }

/* Movie hero */
[data-theme="light"] .movie-hero { background: linear-gradient(135deg, #e8e4de 0%, #f0ede8 100%); }
[data-theme="light"] .movie-hero-overlay { background: linear-gradient(to right, rgba(240,237,232,0.95) 40%, transparent 100%); }
[data-theme="light"] .movie-hero-title { color: var(--txt); }
[data-theme="light"] .movie-hero-meta { color: var(--txt2); }

/* Spinner */
[data-theme="light"] .spinner { border-color: var(--bdr); border-top-color: var(--acc); }

/* Week rows */
[data-theme="light"] .week-row td,
[data-theme="light"] .week-summary-row td { background: rgba(184,144,10,0.06); border-top-color: rgba(184,144,10,0.15); }
[data-theme="light"] .total-row td,
[data-theme="light"] .grand-total-row td { background: rgba(184,144,10,0.08); border-top-color: rgba(184,144,10,0.25); }

/* Rank circle */
[data-theme="light"] .c-rank { background: var(--srf3); color: var(--txt2); }

/* Overlay */
[data-theme="light"] .detail-overlay { background: rgba(0,0,0,0.5); }

/* Editorial section */
[data-theme="light"] .ed-spotlight::after { background: radial-gradient(circle, rgba(184,144,10,0.06), transparent 70%); }
[data-theme="light"] .ed-countdown { background: rgba(184,144,10,0.06); border-color: rgba(184,144,10,0.18); }
[data-theme="light"] .ed-pill-secondary { background: var(--srf3); }

/* Market cards */
[data-theme="light"] .market-card { background: var(--srf); }
[data-theme="light"] .market-card:hover { background: var(--srf2); }

/* Search dropdown — stays dark */
[data-theme="light"] .search-dropdown { background: #1a1a1a; border-color: #333; }
[data-theme="light"] .sr-item:hover { background: #222; }
[data-theme="light"] .sr-title { color: #e6e6e6; }
[data-theme="light"] .sr-year { color: #888; }

/* Sort / filter buttons */
[data-theme="light"] .sort-btn { border-color: var(--bdr); color: var(--txt2); }
[data-theme="light"] .sort-btn.active { background: var(--srf2); border-color: var(--acc); color: var(--acc); }

/* Sidebar */
[data-theme="light"] .sb-link { background: var(--srf2); border-color: var(--bdr); }
[data-theme="light"] .sb-link:hover { border-color: var(--acc); }

/* Note bar */
[data-theme="light"] .note-bar { background: rgba(184,144,10,0.06); border-color: rgba(184,144,10,0.12); }

/* Footer */
[data-theme="light"] footer { border-top-color: var(--bdr); }

/* Mobile market tabs */
[data-theme="light"] .mkt-tabs { background: var(--bg); border-bottom-color: var(--bdr); }

/* ── Additional light-mode hardening ── */
/* Table separators — ensure visible on cream */
[data-theme="light"] table { border-color: var(--bdr); }
[data-theme="light"] .table-card table td,
[data-theme="light"] .table-card table th { border-bottom: 1px solid var(--bdr); }

/* Progress bars in chart — darken track on light */
[data-theme="light"] .c-rank { background: var(--srf3); color: var(--txt); font-weight: 600; }

/* Stats grid cells */
[data-theme="light"] .stats-grid > div,
[data-theme="light"] [class*="stat-card"],
[data-theme="light"] [class*="stat-box"] { border-color: var(--bdr); }

/* Section cards with left accent border */
[data-theme="light"] [style*="border-left:3px solid"],
[data-theme="light"] [style*="border-left: 3px solid"] { border-left-color: var(--acc) !important; }

/* Inline table rows with hardcoded rgba borders */
[data-theme="light"] [style*="border-bottom:1px solid rgba(255"] { border-bottom-color: var(--bdr) !important; }

/* Tabs bar */
[data-theme="light"] .tabs-bar { border-color: var(--bdr); }
[data-theme="light"] .tab-btn { color: var(--txt2); }
[data-theme="light"] .tab-btn.on { color: var(--acc); border-bottom-color: var(--acc); }

/* Hero banner gradient on market pages */
[data-theme="light"] .hero { background: linear-gradient(135deg, #e8e4de 0%, #f0ede8 100%); }
[data-theme="light"] .hero::after { background: linear-gradient(to top, var(--bg) 5%, transparent 60%); }

/* Badge pills — ensure readable on light */
[data-theme="light"] .badge-hot { background: rgba(234,89,12,0.12); color: #c2410c; }
[data-theme="light"] .badge-new { background: rgba(29,78,216,0.1); color: #1d4ed8; }

/* Ticker */
[data-theme="light"] .ticker { background: var(--srf); border-bottom-color: var(--bdr); }

/* D2/movie page specific — inline style overrides */
[data-theme="light"] .week-summary-row td { border-top: 1px solid rgba(184,144,10,0.2) !important; }
[data-theme="light"] .total-row td { border-top: 2px solid rgba(184,144,10,0.3) !important; }


/* Trending cards — ensure readable on light */
[data-theme="light"] .ed-film-num { color: #9a7c05; }
[data-theme="light"] .ed-film-rank { color: var(--txt2); }
[data-theme="light"] .ed-film-label { color: var(--txt2); }

/* Dashboard list panels */
[data-theme="light"] .dash-list-panel { background: var(--srf); }
[data-theme="light"] .dash-list-fig { color: var(--txt); }

/* Articles cards on light */
[data-theme="light"] .dash-art-item { background: var(--srf); }
[data-theme="light"] .dash-art-tag { color: var(--txt2); }
[data-theme="light"] .dash-art-date { color: var(--txt2); }

/* Masthead stats pills */
[data-theme="light"] .masthead-stat { background: var(--srf); border-color: var(--bdr); color: var(--txt2); }
[data-theme="light"] .masthead-stat strong { color: var(--txt); }

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scrollbar-gutter:stable; }
body { font-family:var(--fb); background:var(--bg); color:var(--txt); line-height:1.5; min-height:100vh; font-size:15px; overflow-x:hidden; }
a { color:inherit; text-decoration:none; transition:color 0.2s; }
img { display:block; max-width:100%; }
button { font:inherit; cursor:pointer; border:none; background:none; }

/* ── AMBIENT ── */
.amb { position:fixed; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(ellipse 60% 40% at 20% 0%, rgba(249,115,22,0.025) 0%, transparent 60%),
    radial-gradient(ellipse 40% 30% at 80% 0%, rgba(59,130,246,0.02) 0%, transparent 50%); }

/* ── LAYOUT ── */
.main { max-width:var(--mx); margin:1.5rem auto 4rem; padding:0 1.5rem; min-height:580px; }
.panel { display:none; animation:fadeUp 0.25s ease; }
.panel.on { display:block; }
#bo { min-height:540px; }
@keyframes fadeUp { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes livePulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:0.4; transform:scale(0.8); } }

/* ── HEADER ── */
header { position:sticky; top:0; z-index:100; border-bottom:1px solid var(--bdr); background:rgba(6,6,6,0.9); backdrop-filter:blur(16px); }
.hdr { max-width:var(--mx); margin:0 auto; height:54px; display:flex; align-items:center; padding:0 1.5rem; gap:1rem; }
.logo { display:inline-flex; align-items:center; gap:12px; margin-right:auto; text-decoration:none; flex-shrink:0; }
.logo-mark { flex-shrink:0; display:flex; align-items:center; }
.logo-mark svg { display:block; }
.logo-wordmark { display:flex; flex-direction:column; gap:3px; }
.logo-name { font:300 18px/1 var(--fh); letter-spacing:0.5px; color:var(--txt); }
.logo-name em { font-style:italic; color:var(--acc); }
.logo-tag { font:600 9px var(--fm); color:var(--txt3); letter-spacing:3.5px; text-transform:uppercase; }
nav { display:flex; gap:2px; }
nav a { padding:6px 11px; border-radius:6px; font-size:13px; font-weight:500; color:var(--txt2); transition:all 0.15s; }
nav a:hover { color:var(--txt); background:rgba(255,255,255,0.04); }
nav a.on { color:var(--acc); background:var(--acc-glow); }

/* ── MASTHEAD (SEO hero — static, crawler-visible) ── */
.masthead { max-width:var(--mx); margin:0 auto; padding:1.75rem 1.5rem 0; }
.masthead-eyebrow { display:flex; align-items:center; gap:10px; margin-bottom:0.75rem; }
.masthead-date { font:500 11px var(--fm); color:var(--txt2); letter-spacing:0.08em; text-transform:uppercase; }
.masthead-rule { flex:1; height:1px; background:var(--bdr); }
.masthead-h1 { font:300 48px/1.05 var(--fh); color:var(--txt); letter-spacing:-0.5px; margin-bottom:0.5rem; }
.masthead-h1 em { font-style:italic; color:var(--acc); }
.masthead-sub { font:400 15px/1.6 var(--fb); color:var(--txt2); max-width:560px; margin-bottom:0.75rem; }

/* ── MARKET CARDS ── */
.markets { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--bdr); border-radius:var(--r); overflow:hidden; border:1px solid var(--bdr); margin-bottom:1.5rem; }
.market-card { background:var(--srf); padding:1.25rem 1.5rem; text-decoration:none; display:flex; flex-direction:column; transition:background 0.15s; position:relative; overflow:hidden; }
.market-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; }
.market-card.market-us::before { background:var(--us); }
.market-card.market-in::before { background:var(--in); }
.market-card.market-uk::before { background:var(--uk); }
.market-card:hover { background:var(--srf2); }
.market-flag { font:700 10px var(--fm); letter-spacing:0.1em; text-transform:uppercase; color:var(--txt3); margin-bottom:0.5rem; display:flex; align-items:center; gap:6px; }
.market-flag span { display:inline-block; width:6px; height:6px; border-radius:50%; }
.market-card.market-us .market-flag span { background:var(--us); }
.market-card.market-in .market-flag span { background:var(--in); }
.market-card.market-uk .market-flag span { background:var(--uk); }
.market-no1 { font:500 16px/1.2 var(--fh); color:var(--txt); margin-bottom:0.3rem; }
.market-num { font:700 22px var(--fm); margin-bottom:0.2rem; }
.market-card.market-us .market-num { color:var(--us); }
.market-card.market-in .market-num { color:var(--in); }
.market-card.market-uk .market-num { color:var(--uk); }
.market-meta { font:400 11px var(--fb); color:var(--txt3); margin-bottom:0.75rem; }
.market-link { font:600 11px var(--fm); letter-spacing:0.06em; text-transform:uppercase; margin-top:auto; display:flex; align-items:center; gap:4px; transition:gap 0.2s; }
.market-card.market-us .market-link { color:var(--us); }
.market-card.market-in .market-link { color:var(--in); }
.market-card.market-uk .market-link { color:var(--uk); }
.market-card:hover .market-link { gap:8px; }

/* ── EDITORIAL SECTION ── */
.ed-wrap { max-width:var(--mx); margin:0 auto; padding:0 1.5rem; margin-top:-0.25rem; }
.ed-grid { display:grid; grid-template-columns:1fr 380px; gap:1px; background:var(--bdr); border:1px solid var(--bdr); border-radius:var(--r); overflow:hidden; margin-bottom:1rem; }
.ed-spotlight { background:var(--srf); padding:1.75rem 2rem; position:relative; overflow:hidden; }
.ed-spotlight::after { content:''; position:absolute; top:0; right:0; width:200px; height:200px; background:radial-gradient(circle, rgba(234,179,8,0.04), transparent 70%); pointer-events:none; }
.ed-spotlight-label { font:700 9px var(--fm); letter-spacing:0.12em; text-transform:uppercase; color:var(--acc); margin-bottom:0.6rem; display:flex; align-items:center; gap:6px; }
.ed-spotlight-dot { width:6px; height:6px; border-radius:50%; background:#ef4444; animation:livePulse 1.2s ease-in-out infinite; }
.ed-spotlight-title { font:400 28px/1.15 var(--fh); color:var(--txt); margin-bottom:0.4rem; }
.ed-spotlight-title em { font-style:italic; color:var(--acc); }
.ed-spotlight-meta { font:400 12px/1.6 var(--fb); color:var(--txt2); margin-bottom:1rem; }
.ed-countdown { display:inline-flex; align-items:center; gap:12px; background:rgba(234,179,8,0.07); border:1px solid rgba(234,179,8,0.18); border-radius:8px; padding:8px 14px; margin-bottom:1rem; }
.ed-countdown-num { font:700 26px var(--fm); color:var(--acc); line-height:1; }
.ed-countdown-label { font:400 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:0.08em; line-height:1.4; }
.ed-countdown-div { width:1px; height:28px; background:var(--bdr); }
.ed-pills { display:flex; gap:7px; flex-wrap:wrap; }
.ed-pill { display:inline-flex; align-items:center; gap:4px; padding:6px 12px; border-radius:6px; font:600 11px var(--fm); text-decoration:none; transition:all 0.15s; letter-spacing:0.03em; }
.ed-pill-primary { background:var(--acc); color:#000; }
.ed-pill-primary:hover { background:#f59e0b; }
.ed-pill-secondary { background:var(--srf2); border:1px solid var(--bdr); color:var(--txt2); }
.ed-pill-secondary:hover { border-color:rgba(234,179,8,0.3); color:var(--acc); }

.ed-about { background:var(--srf); padding:1.75rem 1.75rem; border-left:1px solid var(--bdr); }
.ed-about-title { font:400 22px/1.1 var(--fh); color:var(--txt); margin-bottom:0.75rem; }
.ed-about-body { font:400 13px/1.75 var(--fb); color:var(--txt2); margin-bottom:1.25rem; }
.ed-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin-bottom:1.1rem; }
.ed-stat { background:var(--srf2); border:1px solid var(--bdr); border-radius:6px; padding:10px; text-align:center; }
.ed-stat-val { font:700 18px var(--fm); color:var(--acc); }
.ed-stat-label { font:400 9px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:0.08em; margin-top:2px; }
.ed-markets { display:flex; gap:5px; flex-wrap:wrap; }
.ed-market-tag { font:400 11px var(--fb); color:var(--txt3); padding:4px 10px; background:var(--srf2); border:1px solid var(--bdr); border-radius:4px; text-decoration:none; transition:0.15s; }
.ed-market-tag:hover { color:var(--acc); border-color:rgba(234,179,8,0.3); }

.ed-trending { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--bdr); border:1px solid var(--bdr); border-radius:var(--r); overflow:hidden; margin-bottom:0.75rem; }
.ed-film { background:var(--srf); padding:1rem 1.1rem; text-decoration:none; transition:0.15s; position:relative; display:flex; gap:10px; align-items:flex-start; }
.ed-film:hover { background:var(--srf2); }
.ed-film:hover .ed-film-title { color:var(--acc); }
.ed-film-poster { width:40px; height:60px; object-fit:cover; border-radius:4px; flex-shrink:0; background:var(--srf2); }
.ed-film-body { flex:1; min-width:0; }
.ed-film-rank { font:700 9px var(--fm); color:var(--txt3); letter-spacing:0.08em; text-transform:uppercase; margin-bottom:4px; }
.ed-film-title { font:600 13px var(--fb); color:var(--txt); margin-bottom:3px; line-height:1.3; transition:0.15s; }
.ed-film-num { font:700 14px var(--fm); color:var(--acc); margin-bottom:2px; }
.ed-film-label { font:400 9px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:0.06em; }
.ed-film-badge { position:absolute; top:8px; right:8px; font:700 8px var(--fm); padding:2px 6px; border-radius:3px; letter-spacing:0.04em; }
.badge-new { background:rgba(34,197,94,0.12); color:#22c55e; border:1px solid rgba(34,197,94,0.25); }
.badge-hot { background:rgba(249,115,22,0.12); color:#f97316; border:1px solid rgba(249,115,22,0.25); }
.badge-up { background:rgba(168,85,247,0.12); color:#a855f7; border:1px solid rgba(168,85,247,0.25); }

.ed-analysis { display:flex; align-items:center; gap:0.75rem; flex-wrap:wrap; padding:0.7rem 1rem; background:var(--srf); border:1px solid var(--bdr); border-radius:8px; margin-bottom:0; }
.ed-analysis-label { font:600 9px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:0.1em; flex-shrink:0; }
.ed-analysis a { font:400 12px var(--fb); color:var(--acc); text-decoration:none; padding:3px 8px; border:1px solid rgba(234,179,8,0.18); border-radius:4px; transition:0.15s; }
.ed-analysis a:hover { background:rgba(234,179,8,0.07); border-color:rgba(234,179,8,0.35); }

/* ── SEARCH & CONTROLS ── */
.search-wrap { position:relative; width:200px; margin-right:0.5rem; }
#searchInput { width:100%; background:var(--srf2); border:1px solid var(--bdr); padding:6px 12px; border-radius:6px; color:var(--txt); font-size:13px; outline:none; transition:0.2s; font-family:var(--fb); }
#searchInput:focus { border-color:var(--acc); box-shadow:0 0 0 2px var(--acc-glow); }
.search-dropdown { position:absolute; top:100%; left:0; right:0; background:var(--bg2); border:1px solid var(--bdr); border-radius:6px; margin-top:5px; max-height:280px; overflow-y:auto; display:none; z-index:500; box-shadow:0 12px 40px rgba(0,0,0,0.7); }
.search-dropdown.on { display:block; }
.sr-item { display:flex; gap:10px; padding:10px; border-bottom:1px solid var(--bdr); cursor:pointer; transition:0.15s; }
.sr-item:hover { background:var(--srf3); }
.sr-poster { width:32px; height:48px; object-fit:cover; border-radius:3px; background:var(--srf); }
.sr-info { display:flex; flex-direction:column; justify-content:center; }
.sr-title { font-weight:600; font-size:13px; color:var(--txt); }
.sr-year { font-size:11px; color:var(--txt3); }
.region-sel { background:var(--srf2); color:var(--txt); border:1px solid var(--bdr); padding:6px 28px 6px 10px; border-radius:6px; font-size:12px; appearance:none; cursor:pointer; font-family:var(--fb); background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23a3a3a3%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"); background-repeat:no-repeat; background-position:right 9px center; background-size:8px; }

/* ── TABS ── */
.tabs-container { max-width:var(--mx); margin:0 auto 0; padding:0 1.5rem; }
.tabs-bar { display:inline-flex; background:var(--srf2); padding:3px; border-radius:9px; border:1px solid var(--bdr); gap:3px; }
.tab-btn { padding:7px 18px; font-size:13px; font-weight:500; color:var(--txt2); border-radius:7px; transition:0.15s; }
.tab-btn:hover { color:var(--txt); }
.tab-btn.on { background:var(--srf); color:var(--acc); font-weight:600; border:1px solid var(--bdr); box-shadow:0 1px 6px rgba(0,0,0,0.3); }

/* ── HERO (movie pages / country pages) ── */
.hero { position:relative; height:260px; width:100%; display:flex; align-items:flex-end; margin-bottom:1.5rem; border-radius:var(--r); overflow:hidden; border:1px solid var(--bdr); }
.hero::before { content:''; position:absolute; inset:0; background:linear-gradient(to top, #060606 8%, transparent 65%); z-index:1; }
.hero-content { position:relative; z-index:2; padding:24px 32px; width:100%; max-width:800px; }
.hero-tag { display:inline-block; background:var(--acc); color:#000; font-weight:700; font-size:10px; padding:3px 9px; border-radius:4px; margin-bottom:8px; text-transform:uppercase; letter-spacing:1px; }
.hero-title { font:300 34px/1.1 var(--fh); color:#fff; margin-bottom:8px; }
.hero-meta { display:flex; gap:12px; font-size:13px; color:rgba(255,255,255,0.8); margin-bottom:14px; font-weight:500; }
.hero-btn { display:inline-flex; align-items:center; gap:8px; background:#fff; color:#000; padding:9px 20px; border-radius:7px; font-weight:700; font-size:13px; transition:0.2s; }
.hero-btn:hover { background:var(--acc); }

/* ── TABLE CARD ── */
.table-card { background:rgba(17,17,17,0.7); border:1px solid var(--bdr); border-radius:var(--r); overflow:hidden; backdrop-filter:blur(8px); }
.tb-bar { display:flex; justify-content:space-between; align-items:center; padding:14px 16px; border-bottom:1px solid var(--bdr); background:rgba(255,255,255,0.015); }
.tb-title { font:700 16px var(--fm); margin:0; color:var(--txt); }
.tb-controls { display:flex; gap:5px; }
.sort-btn { background:transparent; border:1px solid var(--bdr); color:var(--txt2); font-size:11px; font-weight:500; padding:4px 10px; border-radius:5px; transition:all 0.15s; font-family:var(--fb); }
.sort-btn:hover { border-color:var(--txt3); color:var(--txt); }
.sort-btn.active { background:var(--srf2); border-color:var(--acc); color:var(--acc); font-weight:600; }
.card-pad { padding:18px; }

/* ── DATA TABLE ── */
table { width:100%; border-collapse:collapse; }
th { text-align:left; padding:11px 16px; font:600 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; border-bottom:1px solid var(--bdr); background:rgba(255,255,255,0.01); }
td { padding:0 16px; height:46px; border-bottom:1px solid rgba(255,255,255,0.035); vertical-align:middle; transition:background 0.1s; font-feature-settings:"tnum"; font-variant-numeric:tabular-nums; }
tr:hover td { background:rgba(255,255,255,0.025); }
.c-rank { width:24px; height:24px; border-radius:50%; background:var(--srf2); color:var(--txt2); font:700 11px var(--fm); display:grid; place-items:center; }
.c-movie { display:flex; align-items:center; gap:10px; }
.c-poster { width:34px; height:51px; border-radius:4px; object-fit:cover; background:var(--srf2); flex-shrink:0; }
.c-title { font-weight:600; font-size:13px; color:var(--txt); margin-bottom:1px; line-height:1.2; }
.c-studio { font-size:10px; color:var(--txt2); }
.c-num { font:700 13px var(--fm); color:var(--acc); letter-spacing:-0.3px; }
.badge { display:inline-block; padding:3px 8px; border-radius:4px; font:700 10px var(--fm); min-width:50px; text-align:center; }
.b-up { background:rgba(34,197,94,0.09); color:var(--success); border:1px solid rgba(34,197,94,0.18); }
.b-dn { background:rgba(239,68,68,0.09); color:var(--danger); border:1px solid rgba(239,68,68,0.18); }
.b-new { background:rgba(59,130,246,0.09); color:var(--new); border:1px solid rgba(59,130,246,0.18); }

/* ── GRIDS ── */
.movie-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(148px,1fr)); gap:14px; }
.m-card { background:var(--srf); border-radius:8px; overflow:hidden; border:1px solid var(--bdr); transition:all 0.2s; cursor:pointer; position:relative; }
.m-card:hover { transform:translateY(-3px); border-color:var(--acc); }
.m-poster { width:100%; aspect-ratio:2/3; object-fit:cover; }
.m-info { padding:9px; }
.m-title { font-weight:600; font-size:12px; line-height:1.2; margin-bottom:3px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.m-date-badge { position:absolute; top:7px; right:7px; background:rgba(0,0,0,0.85); color:var(--acc); font-size:10px; font-weight:700; padding:2px 6px; border-radius:3px; border:1px solid rgba(255,255,255,0.08); }

.article-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:18px; }
.a-card { background:var(--srf); border:1px solid var(--bdr); border-radius:8px; overflow:hidden; transition:0.2s; }
.a-card:hover { border-color:var(--acc); transform:translateY(-2px); }
.a-img { width:100%; height:155px; object-fit:cover; filter:brightness(0.75); }
.a-body { padding:14px; }
.a-tag { display:inline-block; font:700 9px var(--fm); text-transform:uppercase; padding:2px 6px; border-radius:3px; margin-bottom:7px; background:var(--srf2); color:var(--txt2); border:1px solid var(--bdr); }
.a-title { font:400 17px var(--fh); line-height:1.2; margin-bottom:7px; color:var(--txt); }
.a-desc { font-size:12px; color:var(--txt2); line-height:1.55; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }

/* ── OVERLAY ── */
.detail-overlay { position:fixed; inset:0; background:rgba(0,0,0,0.65); backdrop-filter:blur(4px); z-index:200; display:none; justify-content:flex-end; opacity:0; transition:opacity 0.2s; }
.detail-overlay.on { display:flex; opacity:1; }
.detail-panel { width:480px; max-width:90vw; background:var(--bg); height:100%; border-left:1px solid var(--bdr); overflow-y:auto; transform:translateX(100%); transition:transform 0.3s cubic-bezier(0.16,1,0.3,1); }
.detail-overlay.on .detail-panel { transform:translateX(0); }
.dp-hero { height:220px; position:relative; }
.dp-content { padding:22px; position:relative; }

/* ── EXTRAS ── */
.note-bar { background:rgba(234,179,8,0.07); border:1px solid rgba(234,179,8,0.12); border-radius:var(--r); padding:10px 16px; font-size:12px; color:var(--acc); margin-top:12px; }
.advance-bar { background:rgba(234,179,8,0.06); border:1px solid rgba(234,179,8,0.18); border-radius:var(--r); padding:14px 18px; margin-bottom:1.25rem; }
.live-badge { display:inline-flex; align-items:center; gap:5px; background:rgba(239,68,68,0.12); border:1px solid rgba(239,68,68,0.25); border-radius:4px; padding:3px 8px; font:700 9px var(--fm); color:#ef4444; letter-spacing:0.08em; }
.live-dot { width:5px; height:5px; background:#ef4444; border-radius:50%; animation:livePulse 1.2s ease-in-out infinite; }
/* ── ADS — hidden until AdSense approved ── */
.ad-wrap { display:none; }
.spinner { border:2px solid #1e1e1e; border-top:2px solid var(--acc); border-radius:50%; width:28px; height:28px; animation:spin 0.6s linear infinite; }
.loader { display:flex; flex-direction:column; align-items:center; padding:3rem; gap:8px; }

/* ── FOOTER ── */
footer { border-top:1px solid var(--bdr); padding:1.5rem 0; margin-top:2rem; }
.ft { max-width:var(--mx); margin:0 auto; padding:0 1.5rem; font:400 11px var(--fm); color:var(--txt2); }
.ft a { color:var(--txt2); }
.ft a:hover { color:var(--acc); }
.ft-links{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;max-width:var(--mx);margin:0 auto 2rem;padding:2rem 1.5rem 1.5rem;border-top:1px solid var(--bdr)}
.ft-col{display:flex;flex-direction:column;gap:8px}
.ft-col-hd{font:600 11px/1 var(--fm);color:var(--txt3);text-transform:uppercase;letter-spacing:.08em;text-decoration:none;margin-bottom:4px}
.ft-col-hd:hover{color:var(--acc)}
.ft-col a{font:400 13px/1 var(--fb);color:var(--txt2);text-decoration:none}
.ft-col a:hover{color:var(--txt);text-decoration:underline}
@media(max-width:640px){.ft-links{grid-template-columns:repeat(2,1fr);gap:1.5rem}}

/* ── RESPONSIVE ── */
@media (max-width:900px) {
  .masthead-h1 { font-size:36px; }
  .markets { grid-template-columns:1fr; }
  .ed-grid { grid-template-columns:1fr; }
  .ed-about { border-left:none; border-top:1px solid var(--bdr); }
  .ed-trending { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
  .masthead { padding:1.75rem 1rem 0; }
  .masthead-h1 { font-size:28px; }
  .masthead-sub { font-size:13px; }
  .hdr { height:50px; padding:0 1rem; }
  .logo-name { font-size:16px; }
  .logo-tag { letter-spacing:2.5px; font-size:8px; }
  .logo { gap:9px; }
  .search-wrap { width:130px; }
  nav { display:none; }
  #theme-tog { display:block; flex-shrink:0; font-size:9px; padding:4px 8px; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.15); color:rgba(255,255,255,0.6); margin-left:auto; }
  td { height:42px; font-size:12px; padding:0 10px; }
  .detail-panel { width:100%; }
  .tb-bar { flex-direction:column; gap:7px; align-items:flex-start; }
  .tb-controls { flex-wrap:wrap; }
  .article-grid { grid-template-columns:1fr; }
  .tabs-container { padding:0 1rem; }
  .ed-wrap { padding:0 1rem; }
}
@media(max-width:600px) {
    /* Hide CHG (5th col) and WK (6th col) on small screens */
    .table-card table th:nth-child(5),
    .table-card table td:nth-child(5),
    .table-card table th:nth-child(6),
    .table-card table td:nth-child(6) { display:none; }
    /* Tighten rank column */
    .table-card table th:first-child,
    .table-card table td:first-child { width:28px; padding:0 4px; }
    /* Smaller poster + gap */
    .c-movie { gap:6px; }
    .c-poster { width:28px; height:42px; }
    /* Number columns breathe */
    .c-num { font-size:12px; }
    .table-card table td:nth-child(3),
    .table-card table td:nth-child(4) { padding:0 6px; font-size:11px; white-space:nowrap; }
    .table-card table th:nth-child(3),
    .table-card table th:nth-child(4) { padding:0 6px; font-size:9px; }
    /* Film title smaller */
    .c-title { font-size:11px; }
    .c-studio { font-size:8px; }
}

/* Sparkline mobile fixes */
@media(max-width:768px) {
    .spark-card { padding:12px 14px; margin-bottom:0.5rem; }
    .spark-header { flex-direction:column; align-items:flex-start; gap:2px; margin-bottom:8px; }
    .spark-svg { min-height:160px; }
    .spark-title { font-size:13px; }
    .spark-meta { font-size:10px; }
}
@media(max-width:480px) {
    .spark-svg { min-height:150px; }
}

@media (max-width:480px) {
  .masthead-h1 { font-size:24px; }
  .ed-trending { grid-template-columns:1fr; }
}

/* ═══════════════════════════════════════════════════
   MOVIE PAGE COMPONENTS — preserved from v30
   ═══════════════════════════════════════════════════ */

/* Verdict pills */
.verdict-pill { display:inline-flex; align-items:center; gap:6px; padding:8px 18px; border-radius:20px; font:700 13px var(--fm); }
.v-hit, .verdict-hit { background:rgba(34,197,94,0.15); border:1px solid rgba(34,197,94,0.4); color:#22c55e; }
.v-flop, .verdict-flop { background:rgba(239,68,68,0.12); border:1px solid rgba(239,68,68,0.35); color:#ef4444; }
.v-blockbuster, .verdict-blockbuster { background:rgba(234,179,8,0.15); border:1px solid rgba(234,179,8,0.4); color:#f59e0b; }
.v-average { background:rgba(99,102,241,0.12); border:1px solid rgba(99,102,241,0.35); color:#818cf8; }
.v-disaster { background:rgba(239,68,68,0.12); border:1px solid rgba(239,68,68,0.35); color:#ef4444; }
.v-running, .v-nowshowing { background:rgba(59,130,246,0.1); border:1px solid rgba(59,130,246,0.3); color:#60a5fa; }
.v-upcoming { background:rgba(168,85,247,0.1); color:#a855f7; border:1px solid rgba(168,85,247,0.2); }

/* Verdict table row classes */
.verdict { display:inline-block; padding:3px 10px; border-radius:20px; font:600 11px var(--fm); }
.v-blockbuster.verdict { background:rgba(234,179,8,0.15); color:#f59e0b; }
.v-hit.verdict { background:rgba(34,197,94,0.12); color:#22c55e; }
.v-flop.verdict { background:rgba(239,68,68,0.1); color:#ef4444; }
.v-disaster.verdict { background:rgba(239,68,68,0.1); color:#ef4444; }
.v-average.verdict { background:rgba(99,102,241,0.1); color:#818cf8; }
.v-upcoming.verdict { background:rgba(168,85,247,0.1); color:#a855f7; }

/* Collection grid */
.collection-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(130px,1fr)); gap:12px; margin-bottom:1.5rem; }
.coll-stat { background:var(--srf2); border:1px solid var(--bdr); border-radius:8px; padding:14px; text-align:center; }
.coll-stat-val { font:700 20px var(--fm); color:var(--acc); margin-bottom:4px; }
.coll-stat-label { font:400 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; }
.coll-stat-record { font:700 9px var(--fm); color:var(--success); text-transform:uppercase; letter-spacing:0.5px; margin-top:2px; }

/* Day table */
.day-table table { width:100%; border-collapse:collapse; }
.day-table th { text-align:left; padding:10px 16px; font:600 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; border-bottom:1px solid var(--bdr); }
.day-table td { padding:9px 16px; border-bottom:1px solid rgba(255,255,255,0.04); font-size:13px; }
.day-table tr:hover td { background:rgba(255,255,255,0.02); }
.week-row td, .week-summary-row td { background:rgba(234,179,8,0.05); color:var(--acc); font:600 11px var(--fm); border-top:1px solid rgba(234,179,8,0.15); cursor:pointer; }
.total-row td { background:rgba(234,179,8,0.08); font:700 13px var(--fm); color:var(--acc); border-top:2px solid rgba(234,179,8,0.3); }
.day-row { display:none; }
.day-row.vis { display:table-row; }
.grand-total-row td { background:rgba(234,179,8,0.08); font:700 13px var(--fm); color:var(--acc); border-top:2px solid rgba(234,179,8,0.3); }
.grand-total-amount { color:var(--acc) !important; font-size:16px; }
.week-label-wrap { display:flex; align-items:center; gap:6px; }
.week-toggle-icon, .wtgl { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:4px; transition:transform .25s,background .25s,color .25s; font-size:.7rem; margin-right:6px; background:rgba(56,189,248,.1); color:#38bdf8; }
.week-row.open .wtgl, .week-summary-row.open .wtgl, .week-row.open .week-toggle-icon, .week-summary-row.open .week-toggle-icon { transform:rotate(180deg); background:rgba(234,179,8,.22); color:#eab308; }
.week-dates { font:400 10px var(--fm); color:var(--txt3); margin-left:4px; }

/* Content layout (movie pages) */
.content-layout { display:grid; grid-template-columns:1fr 295px; gap:1.5rem; align-items:start; }
.sb-link { display:flex; justify-content:space-between; align-items:center; padding:10px; background:var(--srf2); border:1px solid var(--bdr); border-radius:6px; font-size:13px; transition:0.2s; margin-bottom:7px; }
.sb-link:hover { border-color:var(--acc); }
.sidebar-section, .sb-body { margin-bottom:1.5rem; }
.sb-head, .sb-card { font:600 11px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:0.1em; margin-bottom:10px; padding-bottom:8px; border-bottom:1px solid var(--bdr); }

/* Movie hero */
.movie-hero { position:relative; height:380px; background:linear-gradient(135deg,#0d0800 0%,#0a0a0a 100%); overflow:hidden; border-radius:var(--r); margin-bottom:2rem; border:1px solid var(--bdr); }
.movie-hero-bg { position:absolute; inset:0; background-size:cover; background-position:center 25%; opacity:0.35; }
.movie-hero-overlay { position:absolute; inset:0; background:linear-gradient(to right,rgba(5,5,5,0.95) 40%,transparent 100%); }
.movie-hero-content, .movie-hero-info { position:relative; z-index:2; display:flex; gap:2rem; padding:2.5rem; align-items:flex-end; height:100%; }
.movie-poster-wrap img { width:130px; border-radius:8px; box-shadow:0 10px 40px rgba(0,0,0,0.7); border:1px solid var(--bdr); }
.industry-badge { display:inline-block; color:#fff; font:700 10px var(--fm); padding:3px 10px; border-radius:4px; text-transform:uppercase; letter-spacing:1px; margin-bottom:10px; }
.movie-hero-title { font:700 clamp(22px,3.5vw,52px)/1.1 var(--fh); color:#fff; margin-bottom:8px; }
.movie-hero-meta { color:rgba(255,255,255,0.65); font-size:13px; margin-bottom:16px; display:flex; gap:10px; flex-wrap:wrap; }
.record-badge { display:inline-flex; align-items:center; gap:6px; background:rgba(234,179,8,0.15); border:1px solid rgba(234,179,8,0.3); color:#f59e0b; font:700 10px var(--fm); padding:3px 10px; border-radius:4px; text-transform:uppercase; letter-spacing:1px; margin-left:8px; }

/* Breadcrumb */
.breadcrumb { font:400 12px var(--fm); color:var(--txt3); margin-bottom:1.5rem; }
.breadcrumb a { color:var(--txt2); }
.breadcrumb a:hover { color:var(--acc); }
.breadcrumb span { margin:0 6px; }

/* FAQ */
.faq-item { border-bottom:1px solid var(--bdr); padding:16px 0; }
.faq-q { font:600 15px var(--fb); color:var(--txt); margin-bottom:8px; }
.faq-a { font:400 14px/1.7 var(--fb); color:var(--txt2); }

/* OTT box */
.ott-box, .streaming-box { display:flex; gap:12px; align-items:flex-start; background:var(--srf2); border:1px solid var(--bdr); border-radius:8px; padding:14px; margin:1rem 0; }
.ott-icon, .streaming-icon { font-size:24px; flex-shrink:0; }
.ott-label, .streaming-label { font:600 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; margin-bottom:4px; }
.ott-value, .streaming-value { font:400 13px var(--fb); color:var(--txt2); }

/* Bollywood tracker */
.tracker-wrap { background:var(--srf); border:1px solid var(--bdr); border-radius:var(--r); overflow:hidden; }
.tracker-head { display:flex; justify-content:space-between; align-items:center; padding:14px 18px; border-bottom:1px solid var(--bdr); background:rgba(255,255,255,0.02); }
.tracker-title { font:600 14px var(--fb); color:var(--txt); }
.tracker-count { font:400 11px var(--fm); color:var(--txt3); }
.tracker-table { width:100%; border-collapse:collapse; }
.ytd-stat { background:var(--srf); padding:18px 20px; text-align:center; }
.ytd-val { font:700 26px var(--fm); color:var(--acc); margin-bottom:4px; letter-spacing:-0.5px; }
.ytd-label { font:400 9px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1.5px; }
.upcoming-sep td { background:rgba(168,85,247,0.04); color:#a855f7; font:700 10px var(--fm); text-transform:uppercase; letter-spacing:2px; padding:8px 16px; height:auto; border-top:1px solid rgba(168,85,247,0.15); border-bottom:1px solid rgba(168,85,247,0.15); }
.filter-btn { padding:5px 12px; font:500 12px var(--fb); color:var(--txt2); border:1px solid var(--bdr); border-radius:5px; transition:0.15s; background:transparent; }
.filter-btn:hover, .filter-btn.active { color:var(--acc); border-color:rgba(234,179,8,0.4); background:var(--acc-glow); }
.m-info { display:flex; align-items:center; gap:8px; }
.m-name { font:600 13px var(--fb); color:var(--txt); }
.m-stars { font:400 11px var(--fb); color:var(--txt3); margin-top:1px; }
.m-num { font:400 11px var(--fm); color:var(--txt2); }

/* Section header */
.section-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem; }
.shead { font:500 22px var(--fh); color:var(--txt); }
.shead-t { font:600 14px var(--fb); color:var(--txt); }
.shead-m { font:400 13px var(--fb); color:var(--txt2); }

/* Article body */
.article-body { font:400 17px/1.9 'Lora', serif; color:var(--txt2); }
.article-body p { margin-bottom:1.35rem; }
.article-body h2 { font-family:var(--fh); font-size:23px; color:var(--txt); margin:2.5rem 0 0.75rem; }
.article-body h3 { font:600 13px var(--fb); color:var(--txt); text-transform:uppercase; letter-spacing:0.05em; margin:1.75rem 0 0.6rem; }
.article-body strong { color:var(--txt); }
.article-divider { border:none; border-top:1px solid var(--bdr); margin:2.5rem 0; }
.article-meta { font:400 12px var(--fm); color:var(--txt3); margin-bottom:2rem; display:flex; gap:1.5rem; flex-wrap:wrap; }

/* Ticker — hidden on new design, kept for HTML compat */
.ticker { display:none; }
.ticker-live { display:none; }
.ticker-live-dot { display:none; }
.ticker-inner { display:none; }
.ticker-track { display:none; }
.t-item { display:none; }

/* Comparison / analysis page */
.compare-table { width:100%; border-collapse:collapse; margin:1.5rem 0; font-size:13px; }
.compare-table th { background:var(--srf2); padding:10px 14px; text-align:left; font:600 11px var(--fm); text-transform:uppercase; letter-spacing:0.06em; color:var(--txt3); border-bottom:1px solid var(--bdr); }
.compare-table td { padding:11px 14px; border-bottom:1px solid var(--bdr); color:var(--txt2); }
.compare-table tr:last-child td { border-bottom:none; }
.cmp-hero { text-align:center; padding:2rem; }
.cmp-hero-label { font:600 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:0.1em; margin-bottom:8px; }
.cmp-hero-title { font:300 36px var(--fh); color:var(--acc); }
.cmp-hero-sub { font:400 13px var(--fb); color:var(--txt2); margin-top:6px; }
.cmp-films { display:grid; grid-template-columns:1fr auto 1fr; gap:1rem; align-items:center; margin:1.5rem 0; }
.cmp-film { text-align:center; }
.cmp-film-name { font:600 16px var(--fb); color:var(--txt); margin-bottom:4px; }
.cmp-film-year { font:400 12px var(--fm); color:var(--txt3); margin-bottom:8px; }
.cmp-film-stat { font:700 28px var(--fm); color:var(--acc); }
.cmp-film-stat-label { font:400 10px var(--fm); color:var(--txt3); text-transform:uppercase; margin-top:4px; }
.cmp-vs { font:700 20px var(--fm); color:var(--txt3); text-align:center; }

/* Records page */
.rec-hero { background:var(--srf2); border:1px solid var(--bdr); border-radius:var(--r); padding:2rem; margin-bottom:1.5rem; text-align:center; }
.page-hero { position:relative; border-radius:var(--r); overflow:hidden; margin-bottom:1.5rem; }
.page-hero-tag { display:inline-block; background:var(--acc); color:#000; font:700 10px var(--fm); padding:3px 9px; border-radius:4px; text-transform:uppercase; letter-spacing:1px; margin-bottom:8px; }

/* Upcoming cards */
.up-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px; }
.up-card { background:var(--srf); border:1px solid var(--bdr); border-radius:8px; padding:16px; transition:0.2s; }
.up-card:hover { border-color:var(--acc); transform:translateY(-2px); }
.up-title { font:600 14px var(--fb); color:var(--txt); margin-bottom:4px; }
.up-date { font:700 11px var(--fm); color:var(--acc); margin-bottom:4px; }
.up-meta { font:400 12px var(--fb); color:var(--txt3); }
.up-target { font:400 11px var(--fm); color:var(--txt2); margin-top:8px; }

/* Container alias */
.container { max-width:var(--mx); margin:0 auto; padding:0 1.5rem; }
.card { background:var(--srf); border:1px solid var(--bdr); border-radius:var(--r); }

/* Clash / preview pages */
.clash-hero { text-align:center; padding:2.5rem 1rem; }
.clash-card { background:var(--srf); border:1px solid var(--bdr); border-radius:var(--r); padding:1.5rem; }
.clash-film-title { font:600 18px var(--fb); color:var(--txt); margin-bottom:6px; }
.clash-film-star { font:400 13px var(--fb); color:var(--txt2); margin-bottom:4px; }
.clash-film-budget { font:700 22px var(--fm); color:var(--acc); }
.clash-film-budget-lbl { font:400 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; }
.vs-badge { display:inline-block; background:rgba(234,179,8,0.1); border:1px solid rgba(234,179,8,0.25); color:var(--acc); font:700 14px var(--fm); padding:6px 16px; border-radius:8px; }

/* Bar charts */
.bar-wrap { margin:1rem 0; }
.bar-row { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.bar-label { font:400 12px var(--fb); color:var(--txt2); min-width:140px; flex-shrink:0; }
.bar-val { font:700 12px var(--fm); color:var(--acc); min-width:70px; text-align:right; flex-shrink:0; }
.bar-d1 { height:24px; border-radius:4px; background:var(--acc); transition:width 0.6s ease; }
.bar-d2 { height:24px; border-radius:4px; background:#3b82f6; transition:width 0.6s ease; }
.bar-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.bar-legend { display:flex; gap:16px; margin-top:8px; font-size:11px; color:var(--txt2); }
.bar-legend-item { display:flex; align-items:center; gap:5px; }

/* Milestone / record badges */
.ms-val { font:700 28px var(--fm); color:var(--acc); }
.ms-lbl { font:400 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; }
.ms-gold { color:#f59e0b; }
.ms-green { color:#22c55e; }
.ms-red { color:#ef4444; }
.ms-purple { color:#a855f7; }
.ms-note { font:400 11px var(--fb); color:var(--txt3); margin-top:4px; }

/* Update notices */
.update-dot { width:6px; height:6px; border-radius:50%; background:#22c55e; display:inline-block; margin-right:6px; }
.update-notice { font:400 12px var(--fb); color:var(--txt3); }
.updated-tag { display:inline-block; background:rgba(34,197,94,0.1); border:1px solid rgba(34,197,94,0.2); color:#22c55e; font:600 9px var(--fm); padding:2px 7px; border-radius:3px; text-transform:uppercase; letter-spacing:0.5px; }
.tbd-badge { display:inline-block; background:rgba(99,102,241,0.1); border:1px solid rgba(99,102,241,0.2); color:#818cf8; font:600 9px var(--fm); padding:2px 7px; border-radius:3px; text-transform:uppercase; letter-spacing:0.5px; }

/* Misc layout helpers */
.pg-layout { display:grid; grid-template-columns:1fr 280px; gap:1.5rem; }
.tab-panel { display:none; }
.tab-panel.on { display:block; }
.tabs { display:flex; gap:6px; border-bottom:1px solid var(--bdr); padding-bottom:8px; margin-bottom:1rem; }
.tabs .tab-btn { padding:6px 14px; font-size:13px; border-radius:6px; color:var(--txt2); }
.tabs .tab-btn.on { color:var(--acc); background:var(--acc-glow); }
.open { } /* toggled by JS */
.vis { } /* toggled by JS */
.rn { font:700 11px var(--fm); color:var(--txt3); }
.rt { text-align:right; }
.vc { }
.win { color:var(--success); }
.win-badge { background:rgba(34,197,94,0.1); color:#22c55e; border:1px solid rgba(34,197,94,0.2); padding:2px 8px; border-radius:4px; font:600 10px var(--fm); }
.tbd { color:var(--txt3); font-style:italic; }
.on { } /* panel active state */

@media (max-width:900px) {
  .pg-layout { grid-template-columns:1fr; }
  .movie-hero { height:auto; min-height:280px; }
  .movie-hero-title { font-size:28px; }
  .cmp-films { grid-template-columns:1fr; }
  .cmp-vs { margin:0.5rem 0; }
}
@media (max-width:768px) {
  .content-layout { grid-template-columns:1fr; }
  .collection-grid { grid-template-columns:repeat(2,1fr); }
  .up-grid { grid-template-columns:1fr; }
  .movie-hero { height:auto; min-height:0; }
  .movie-hero-content, .movie-hero-info { flex-direction:column; align-items:flex-start; justify-content:flex-start; height:auto; padding:1.25rem; gap:0.75rem; }
  .movie-hero-poster { width:72px; height:auto; flex-shrink:0; border-radius:6px; }
  .movie-hero-title { font-size:22px; }
  .movie-hero-meta { font-size:11px; gap:6px; }
  .stats-grid { grid-template-columns:repeat(2,1fr); }
}

/* ── Mobile market tabs ─────────────────────────────────────── */
.mkt-tabs {
    display: none !important;
}
@media (min-width: 769px) {
    .mkt-tabs { display: none !important; }
}
@media (max-width: 768px) {
    .mkt-tabs {
        display: flex !important;
        position: sticky;
        top: 0;
        z-index: 90;
        background: var(--bg);
        border-bottom: 1px solid var(--bdr);
        padding: 0;
    }
    .mkt-tab {
        flex: 1;
        text-align: center;
        padding: 10px 0;
        font: 600 12px var(--fm);
        color: var(--txt2);
        text-decoration: none;
        border-bottom: 2px solid transparent;
        transition: color .15s, border-color .15s;
        letter-spacing: .04em;
        text-transform: uppercase;
    }
    .mkt-tab:hover { color: var(--txt); }
    .mkt-tab--active {
        color: var(--acc);
        border-bottom-color: var(--acc);
    }
}

/* ── DASHBOARD STATIC MARKET + ARTICLES SECTIONS ── */
.dash-lists-wrap { max-width:var(--mx); margin:0.75rem auto 0; padding:0 1.5rem; display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--bdr); border:1px solid var(--bdr); border-radius:var(--r); overflow:hidden; }
.dash-list-panel { background:var(--srf); padding:1rem 1.25rem; }
.dash-list-hd { font:700 13px var(--fb); color:var(--txt); padding-bottom:.75rem; border-bottom:1px solid var(--bdr); margin-bottom:.5rem; }
.dash-list-row { display:flex; align-items:center; justify-content:space-between; padding:7px 0; border-bottom:1px solid var(--bdr); }
.dash-list-row:last-of-type { border-bottom:none; }
.dash-list-title { font:400 13px var(--fb); color:var(--acc); text-decoration:none; flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-right:12px; }
.dash-list-title:hover { text-decoration:underline; }
.dash-list-verdict { font:700 8px var(--fm); letter-spacing:0.04em; text-transform:uppercase; flex-shrink:0; margin-right:8px; }
.dash-list-fig { font:500 13px var(--fm); color:var(--txt); white-space:nowrap; flex-shrink:0; }
.dash-list-more { padding-top:.75rem; }
.dash-list-more a { font:400 13px var(--fb); color:var(--acc); text-decoration:none; }
.dash-list-more a:hover { text-decoration:underline; }

/* Articles grid — 2-col with poster images */
.dash-articles-wrap { max-width:var(--mx); margin:0.75rem auto 0; padding:0 1.5rem; }
.dash-articles-hd { display:flex; align-items:center; justify-content:space-between; margin-bottom:.75rem; }
.dash-articles-hd-title { font:500 20px var(--fh); color:var(--txt); }
.dash-articles-hd-more { font:400 13px var(--fb); color:var(--acc); text-decoration:none; }
.dash-articles-hd-more:hover { text-decoration:underline; }
.dash-art-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.dash-art-item { display:flex; gap:12px; background:var(--srf); border:1px solid var(--bdr); border-radius:8px; padding:12px; text-decoration:none; transition:border-color .15s; overflow:hidden; }
.dash-art-item:hover { border-color:rgba(234,179,8,0.3); }
.dash-art-poster { width:52px; height:78px; border-radius:4px; object-fit:cover; background:var(--srf2); flex-shrink:0; }
.dash-art-body { flex:1; min-width:0; display:flex; flex-direction:column; justify-content:center; }
.dash-art-tag { font:700 9px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:.08em; margin-bottom:4px; }
.dash-art-title { font:500 13px/1.35 var(--fb); color:var(--txt); margin-bottom:4px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dash-art-date { font:400 10px var(--fm); color:var(--txt3); }

/* Masthead inline stats */
.masthead-stats { display:inline-flex; gap:6px; flex-wrap:wrap; margin-bottom:0.75rem; }
.masthead-stat { font:400 11px var(--fb); color:var(--txt3); padding:4px 10px; background:var(--srf); border:1px solid var(--bdr); border-radius:4px; }
.masthead-stat strong { color:var(--txt2); font-weight:600; }

@media(max-width:680px) {
    .dash-lists-wrap { grid-template-columns:1fr; }
    .dash-art-grid { grid-template-columns:1fr; }
}

/* ═══════════════════════════════════════════════════
   MOVIE PAGE REDESIGN v1 — Tier 1
   ═══════════════════════════════════════════════════ */

/* Quote strip — the headline number */
.quote-strip { background:rgba(234,179,8,0.04); border:1px solid rgba(234,179,8,0.15); border-radius:var(--r); padding:1.25rem 1.75rem; margin-bottom:0.75rem; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.quote-left { }
.quote-right { text-align:right; }
.quote-number { font:700 48px/1 var(--fm); color:var(--acc); letter-spacing:-1px; }
.quote-number .qn-cur { font-size:28px; color:rgba(234,179,8,0.6); vertical-align:top; line-height:1.4; }
.quote-number .qn-unit { font-size:22px; color:rgba(234,179,8,0.7); }
.quote-delta { display:flex; align-items:center; gap:8px; justify-content:flex-end; margin-top:4px; }
.quote-delta-val { font:700 12px var(--fm); }
.quote-delta-val.up { color:var(--success); }
.quote-delta-val.down { color:var(--danger); }
.quote-delta-pct { font:400 11px var(--fm); color:var(--txt3); }
.quote-meta { font:400 10px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; margin-top:2px; }

/* Stats row — weighted grid */
.stats-row { display:grid; grid-template-columns:2fr 1.2fr 1fr 1fr 1fr; gap:8px; margin-bottom:0.75rem; }
.stats-row .coll-stat-val { font-size:18px; }
.stats-row .stat-primary { border-color:rgba(234,179,8,0.3); }
.stats-row .stat-primary .coll-stat-val { font-size:22px; }

/* Verdict badge (standalone) */
.verdict-badge { display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:8px 18px; border-radius:4px; font:700 13px var(--fm); letter-spacing:0.5px; width:100%; }
.verdict-badge-blockbuster { background:rgba(34,197,94,0.12); border:1px solid rgba(34,197,94,0.35); color:#22c55e; }
.verdict-badge-superhit { background:rgba(34,197,94,0.1); border:1px solid rgba(34,197,94,0.3); color:#22c55e; }
.verdict-badge-hit { background:rgba(34,197,94,0.1); border:1px solid rgba(34,197,94,0.3); color:#22c55e; }
.verdict-badge-average { background:rgba(251,191,36,0.1); border:1px solid rgba(251,191,36,0.3); color:#fbbf24; }
.verdict-badge-below-average { background:rgba(251,191,36,0.08); border:1px solid rgba(251,191,36,0.25); color:#fbbf24; }
.verdict-badge-flop { background:rgba(239,68,68,0.1); border:1px solid rgba(239,68,68,0.3); color:#ef4444; }
.verdict-badge-disaster { background:rgba(239,68,68,0.12); border:1px solid rgba(239,68,68,0.35); color:#ef4444; }
.verdict-badge-running { background:rgba(234,179,8,0.1); border:1px solid rgba(234,179,8,0.3); color:#eab308; }

/* Sparkline card */
.spark-card { background:var(--srf2); border:1px solid var(--bdr); border-radius:var(--r); padding:16px 20px; margin-bottom:0.75rem; }
.spark-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.spark-title { font:700 14px var(--fm); color:var(--txt); }
.spark-meta { font:400 11px var(--fm); color:var(--txt3); }
.spark-svg { width:100%; display:block; }

/* Delta column in day-wise table */
.day-table .delta-cell { font:600 11px var(--fm); }
.day-table .delta-cell.up { color:var(--success); }
.day-table .delta-cell.down { color:var(--danger); }

/* Light mode overrides for new components */
[data-theme="light"] .quote-strip { background:rgba(184,144,10,0.04); border-color:rgba(184,144,10,0.15); }
[data-theme="light"] .quote-number { color:var(--acc); }
[data-theme="light"] .quote-number .qn-cur { color:rgba(184,144,10,0.5); }
[data-theme="light"] .quote-number .qn-unit { color:rgba(184,144,10,0.6); }
[data-theme="light"] .quote-delta-val.up { color:var(--success); }
[data-theme="light"] .quote-delta-val.down { color:var(--danger); }
[data-theme="light"] .spark-card { background:var(--srf); }
[data-theme="light"] .verdict-badge-blockbuster,
[data-theme="light"] .verdict-badge-superhit,
[data-theme="light"] .verdict-badge-hit { background:rgba(21,128,61,0.08); border-color:rgba(21,128,61,0.25); color:#15803d; }
[data-theme="light"] .verdict-badge-average,
[data-theme="light"] .verdict-badge-below-average { background:rgba(184,144,10,0.08); border-color:rgba(184,144,10,0.25); color:#92400e; }
[data-theme="light"] .verdict-badge-flop,
[data-theme="light"] .verdict-badge-disaster { background:rgba(220,38,38,0.08); border-color:rgba(220,38,38,0.25); color:#dc2626; }
[data-theme="light"] .verdict-badge-running { background:rgba(184,144,10,0.08); border-color:rgba(184,144,10,0.25); color:#92400e; }

/* ── Batch 5: Extracted inline styles ── */
.hero-btn-primary { background:var(--acc); color:#000; border:1px solid var(--acc); }
.hero-btn-secondary { background:var(--srf2); color:var(--txt); border:1px solid var(--bdr); }
.hero-btn,.hero-btn-primary,.hero-btn-secondary { font:600 13px var(--fm); padding:10px 20px; border-radius:6px; text-decoration:none; display:inline-flex; align-items:center; gap:6px; }
.hero-btn-primary:hover { opacity:.9; }
.hero-btn-secondary:hover { background:var(--bdr); }
.expand-btn { background:var(--srf2); border:1px solid var(--bdr); color:var(--txt2); padding:6px 12px; border-radius:6px; font:600 11px var(--fm); cursor:pointer; transition:.15s; }
.expand-btn:hover { background:var(--bdr); }
.cmp-inline-wrap { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:0.75rem; }
.bench-row { display:flex; justify-content:space-between; padding:9px 0; border-bottom:1px solid rgba(255,255,255,0.05); font-size:13px; }
.bench-label { color:var(--txt2); }
.bench-val { font:700 13px var(--fm); color:var(--acc); }
.bench-total { background:rgba(234,179,8,0.04); margin:0 -1.25rem; padding:9px 1.25rem; border-bottom:none; }
.bench-total .bench-label { font:600 13px var(--fb); color:var(--txt); }
.bench-total .bench-val { font:700 14px var(--fm); }
.rp-heading { font:700 11px var(--fm); color:var(--txt3); text-transform:uppercase; letter-spacing:1px; margin-bottom:10px; }
.sb-arrow { color:var(--acc); }

/* ── Film page chart ── */
.film-chart-wrap { margin-bottom:0.75rem; }
.film-chart-bar { display:flex; justify-content:space-between; align-items:center; padding:12px 16px; border-bottom:1px solid var(--bdr); background:var(--srf); border-radius:var(--r) var(--r) 0 0; }
.film-chart-title { font:700 14px var(--fm); color:var(--txt); }
.chart-toggle { display:flex; gap:4px; }
.chart-toggle-btn { background:var(--srf2); border:1px solid var(--bdr); color:var(--txt2); padding:4px 10px; border-radius:4px; font:600 10px var(--fm); cursor:pointer; text-transform:uppercase; letter-spacing:.5px; transition:.15s; }
.chart-toggle-btn.active { background:var(--acc); color:#000; border-color:var(--acc); }
.film-chart-canvas { background:var(--srf); border-radius:0 0 var(--r) var(--r); border:1px solid var(--bdr); border-top:none; padding:12px; }
.film-chart-canvas canvas { width:100%!important; height:220px!important; }
[data-theme="light"] .film-chart-bar { background:var(--srf); }
[data-theme="light"] .film-chart-canvas { background:var(--srf); }
[data-theme="light"] .chart-toggle-btn.active { background:var(--acc); color:#000; }
[data-theme="light"] .bench-row { border-bottom-color:rgba(0,0,0,0.06); }
[data-theme="light"] .bench-total { background:rgba(184,144,10,0.04); }

@media(max-width:768px) {
    .quote-strip { padding:1rem 1.25rem; }
    .quote-number { font-size:36px; }
    .quote-number .qn-cur { font-size:22px; }
    .quote-number .qn-unit { font-size:18px; }
    .stats-row { grid-template-columns:1fr 1fr; }
    .chart-toggle { display:none!important; }
    .film-chart-wrap { margin-bottom:0.5rem; }
    .film-chart-canvas canvas { height:180px!important; }
}
