/* ArthaVolt — universal light-theme overrides + shared UI (theme fab, premium detail modal).
   Loaded AFTER each page's inline <style>, but wins via higher specificity (html[data-theme=...]). */

html[data-theme="light"] {
  --accent: #6d5cff;
  --accent-glow: rgba(109, 92, 255, 0.35);
  --bg: #f6f7fb;
  --card: rgba(255,255,255,0.9);
  --card-bg: rgba(255,255,255,0.9);
  --border: rgba(15, 23, 42, 0.08);
  --text: #0f172a;
  --text-main: #0f172a;
  --dim: #475569;
  --text-dim: #475569;
  --grid-color: rgba(109, 92, 255, 0.08);
  --success: #059669;
  --danger: #dc2626;
  --warn: #d97706;
  --warning: #d97706;
  --broadcast-text: #1e293b;
  --broadcast-glow1: rgba(0,0,0,0.15);
  --broadcast-glow2: rgba(0,0,0,0.08);
  --broadcast-glow3: rgba(0,0,0,0.04);
}

/* Light theme: soften some hard-coded dark backgrounds */
html[data-theme="light"] body {
  background-color: var(--bg) !important;
  color: var(--text-main) !important;
  background-image:
    radial-gradient(circle at 15% 10%, rgba(109,92,255,.10), transparent 45%),
    radial-gradient(circle at 85% 85%, rgba(168,85,247,.08), transparent 45%) !important;
}
html[data-theme="light"] nav { background: rgba(255,255,255,0.7) !important; border-bottom-color: var(--border) !important; }
html[data-theme="light"] .bg-grid { opacity: .8; }
html[data-theme="light"] .blob { opacity: .10; }
html[data-theme="light"] .preview-box { background: #eef1f7 !important; }
html[data-theme="light"] .card-tag { background: rgba(15,23,42,0.55) !important; }
html[data-theme="light"] .logo { color: var(--text-main); }
html[data-theme="light"] .back { color: var(--text-dim); }

/* ===== Floating theme toggle (auto-injected by auth.js if no #theme-icon exists) ===== */
.av-theme-fab{
  position:fixed; right:18px; bottom:88px; z-index:9998;
  width:46px; height:46px; border-radius:14px;
  background:var(--card-bg, rgba(15,15,20,0.7));
  border:1px solid var(--border, rgba(255,255,255,0.08));
  color:var(--accent,#7b6cff);
  display:inline-flex; align-items:center; justify-content:center;
  cursor:pointer; font-size:18px; backdrop-filter:blur(10px);
  box-shadow:0 8px 24px -12px rgba(0,0,0,.4);
  transition:transform .2s ease, box-shadow .3s ease, background .3s ease;
}
.av-theme-fab:hover{ transform:translateY(-2px); box-shadow:0 14px 30px -12px rgba(123,108,255,.4); }
@media (max-width:520px){ .av-theme-fab{ right:14px; bottom:80px; width:42px; height:42px; } }

/* ===== Premium account detail modal ===== */
.av-detail-overlay{
  position:fixed; inset:0; background:rgba(0,0,0,.65); backdrop-filter:blur(14px);
  display:none; align-items:center; justify-content:center; z-index:10000;
  opacity:0; transition:opacity .25s ease; padding:16px;
}
html[data-theme="light"] .av-detail-overlay{ background:rgba(15,23,42,.45); }
.av-detail-overlay.show{ display:flex; opacity:1; }
.av-detail-modal{
  width:100%; max-width:520px; max-height:90vh; overflow-y:auto;
  background:var(--card-bg, rgba(15,15,20,0.95));
  color:var(--text-main,#fff);
  border:1px solid var(--border, rgba(255,255,255,0.08));
  border-radius:22px; padding:0; position:relative;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.5);
  transform:translateY(20px); transition:transform .3s ease;
}
.av-detail-overlay.show .av-detail-modal{ transform:translateY(0); }
.av-detail-hero{
  padding:22px 22px 16px;
  background:linear-gradient(135deg, var(--accent,#7b6cff), #a855f7 60%, #ec4899);
  border-radius:22px 22px 0 0;
  color:#fff; position:relative; overflow:hidden;
}
.av-detail-hero::after{
  content:""; position:absolute; inset:0;
  background:radial-gradient(circle at 90% 10%, rgba(255,255,255,.25), transparent 45%);
  pointer-events:none;
}
.av-detail-close{
  position:absolute; top:12px; right:12px; z-index:2;
  width:34px; height:34px; border-radius:10px;
  background:rgba(0,0,0,.25); border:1px solid rgba(255,255,255,.2);
  color:#fff; cursor:pointer; font-size:16px;
  display:inline-flex; align-items:center; justify-content:center;
}
.av-detail-thumb{
  width:72px; height:72px; border-radius:16px;
  background:rgba(255,255,255,.2); border:1px solid rgba(255,255,255,.3);
  display:inline-flex; align-items:center; justify-content:center;
  overflow:hidden; margin-bottom:12px;
}
.av-detail-thumb img{ width:100%; height:100%; object-fit:cover; }
.av-detail-thumb i{ font-size:32px; color:#fff; }
.av-detail-name{ font-family:'Space Grotesk',sans-serif; font-size:22px; font-weight:800; margin-bottom:4px; }
.av-detail-sub{ font-size:13px; opacity:.9; }
.av-detail-body{ padding:20px 22px; }
.av-detail-stats{
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:16px;
}
.av-stat{
  background:color-mix(in oklab, var(--accent,#7b6cff) 10%, transparent);
  border:1px solid var(--border, rgba(255,255,255,0.08));
  border-radius:14px; padding:12px 14px;
}
.av-stat .lbl{ font-size:11px; color:var(--text-dim,#94a3b8); text-transform:uppercase; letter-spacing:.5px; margin-bottom:4px; }
.av-stat .val{ font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:16px; color:var(--text-main,#fff); }
.av-stat.stock .val{ color:var(--success,#10b981); }
.av-stat.stock.out .val{ color:var(--danger,#ef4444); }
.av-section{ margin-top:14px; }
.av-section h4{
  font-size:12px; text-transform:uppercase; letter-spacing:.8px;
  color:var(--accent,#7b6cff); margin-bottom:8px; font-weight:700;
  display:flex; align-items:center; gap:6px;
}
.av-section .body{
  background:color-mix(in oklab, var(--text-main,#fff) 4%, transparent);
  border:1px solid var(--border, rgba(255,255,255,0.08));
  border-radius:12px; padding:12px 14px;
  font-size:14px; line-height:1.6; color:var(--text-main,#fff);
  white-space:pre-wrap;
}
.av-features{ display:flex; flex-wrap:wrap; gap:8px; }
.av-feat{
  background:color-mix(in oklab, var(--accent,#7b6cff) 12%, transparent);
  border:1px solid color-mix(in oklab, var(--accent,#7b6cff) 30%, transparent);
  color:var(--text-main,#fff);
  padding:6px 12px; border-radius:999px; font-size:12px; font-weight:600;
  display:inline-flex; align-items:center; gap:6px;
}
.av-detail-cta{
  display:flex; gap:10px; margin-top:18px;
}
.av-detail-cta button{
  flex:1; padding:14px; border-radius:14px; border:none; cursor:pointer;
  font-weight:700; font-size:14px; font-family:inherit;
}
.av-detail-cta .buy{
  background:linear-gradient(135deg,var(--accent,#7b6cff),#a855f7);
  color:#fff;
  box-shadow:0 12px 24px -12px var(--accent-glow, rgba(123,108,255,.5));
}
.av-detail-cta .buy:disabled{ opacity:.5; cursor:not-allowed; box-shadow:none; }
.av-detail-cta .cancel{
  background:transparent; color:var(--text-dim,#94a3b8);
  border:1px solid var(--border, rgba(255,255,255,0.08));
}
.av-detail-cta .cancel:hover{ color:var(--text-main,#fff); }

/* Detail button on premium apps card */
.apps-card .detail-btn{
  background:transparent;
  border:1px solid var(--border, rgba(255,255,255,0.08));
  color:var(--text-main,#fff);
  padding:8px 12px; border-radius:10px; font-weight:600; cursor:pointer;
  font-size:12px; margin-top:6px; width:100%;
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  transition:border-color .2s ease, color .2s ease;
}
.apps-card .detail-btn:hover{ border-color:var(--accent,#7b6cff); color:var(--accent,#7b6cff); }
