/* NewBizFeed public dark theme — Phase 1 (#120).
   Design tokens mirror the admin clarity dashboard palette for a cohesive
   product experience. Loaded after styles.css so equal-specificity rules win.

   All dark overrides are scoped to [data-theme="dark"] so the light theme
   remains the default.  Visitors toggle via the theme-switch button. */

/* ── Dark design tokens (custom properties — harmless at :root) ── */
:root{
  --pub-bg:#0f1117;
  --pub-surface:#171a23;
  --pub-text:#f7f3ea;
  --pub-muted:#a7a3ad;
  --pub-border:rgba(255,255,255,.085);
  --pub-accent:#9b8cff;
  --pub-glow:0 0 32px rgba(155,140,255,.20);
  --pub-radius:22px;
}

/* ── Global containment: zero horizontal overflow on every viewport ── */
*,*::before,*::after{box-sizing:border-box}
html{max-width:100%;overflow-x:hidden}
body{max-width:100%;overflow-x:hidden}
img{max-width:100%}

/* ════════════════════════════════════════════════════════════════
   DARK THEME — all overrides scoped to [data-theme="dark"]
   ════════════════════════════════════════════════════════════════ */

/* ── Dark base ── */
[data-theme="dark"] body{
  margin:0;
  background-color:var(--pub-bg);
  background-image:radial-gradient(circle at 20% -10%,rgba(155,140,255,.08),transparent 40%),linear-gradient(180deg,#13161f 0%,#0f1117 46%,#0c0e14 100%);
  color:var(--pub-text);
  -webkit-font-smoothing:antialiased;
}
[data-theme="dark"] a{color:var(--pub-accent)}
[data-theme="dark"] p{color:var(--pub-muted)}
[data-theme="dark"] h1,[data-theme="dark"] h2,[data-theme="dark"] h3{color:var(--pub-text)}
[data-theme="dark"] .lede{color:var(--pub-muted)}
[data-theme="dark"] .eyebrow{color:var(--pub-accent)}
[data-theme="dark"] .muted{color:var(--pub-muted)}
[data-theme="dark"] ::selection{background:rgba(155,140,255,.30);color:var(--pub-text)}

/* ── Site header ── */
[data-theme="dark"] .site-header{
  background:rgba(15,17,23,.82);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--pub-border);
  box-shadow:0 12px 34px rgba(0,0,0,.28);
}
[data-theme="dark"] .header-inner{color:var(--pub-text)}
[data-theme="dark"] .desktop-nav a:not(.btn){color:var(--pub-text)}
[data-theme="dark"] .desktop-nav a:not(.btn):hover{background:rgba(255,255,255,.06)}
[data-theme="dark"] .ghost-btn{color:var(--pub-accent)!important}
[data-theme="dark"] .ghost-btn:hover{background:rgba(255,255,255,.06)}
[data-theme="dark"] .nav-links a:not(.btn):hover,[data-theme="dark"] .ghost-btn:hover{background:rgba(255,255,255,.06)}

/* ── Brand lockup — logo readable on dark ── */
[data-theme="dark"] .brand{color:var(--pub-text)}
[data-theme="dark"] .brand-mark{
  border-radius:16px;
  box-shadow:0 12px 28px rgba(0,0,0,.32),0 0 0 1px var(--pub-border);
  filter:drop-shadow(0 0 18px rgba(155,140,255,.12));
  object-fit:contain;
}
[data-theme="dark"] .brand-wordmark{
  background:linear-gradient(135deg,#f7f3ea 0%,#cdc8e0 40%,#9b8cff 100%);
  background-clip:text;
  -webkit-background-clip:text;
  color:var(--pub-text);
  -webkit-text-fill-color:transparent;
}
[data-theme="dark"] .brand small{color:var(--pub-muted)}

/* ── Site footer ── */
[data-theme="dark"] .site-footer{
  background:linear-gradient(180deg,#0c0e14 0%,#0a0c11 100%);
  border-top:1px solid var(--pub-border);
}
[data-theme="dark"] .footer-links a{color:var(--pub-muted)}
[data-theme="dark"] .footer-links a:hover{color:var(--pub-text)}

/* ── Hero ── */
[data-theme="dark"] .hero-shell{color:var(--pub-text)}
[data-theme="dark"] .hero-copy{color:var(--pub-text)}
[data-theme="dark"] .hero-shell:before{background:radial-gradient(circle,rgba(155,140,255,.18),rgba(155,140,255,.06) 36%,transparent 70%)}
[data-theme="dark"] .hero-kicker{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-accent)}
[data-theme="dark"] .hero-proof span{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-text)}
[data-theme="dark"] .hero-proof b{color:var(--pub-accent)}
[data-theme="dark"] .hero-data-rail span{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-text)}
[data-theme="dark"] .hero-data-rail b{color:var(--pub-text)}
[data-theme="dark"] .dot{background:linear-gradient(135deg,var(--pub-accent),#f09cf4);box-shadow:0 0 0 6px rgba(155,140,255,.13)}

/* ── Lead finder form ── */
[data-theme="dark"] .lead-finder{background:var(--pub-surface);border-color:var(--pub-border);box-shadow:0 18px 52px rgba(0,0,0,.22)}
[data-theme="dark"] .lead-finder label{color:var(--pub-muted)}

/* ── Quick packs / link cloud ── */
[data-theme="dark"] .quick-packs a,[data-theme="dark"] .link-cloud a{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-text)}
[data-theme="dark"] .quick-packs a:hover,[data-theme="dark"] .link-cloud a:hover{border-color:rgba(155,140,255,.55);box-shadow:0 10px 28px rgba(0,0,0,.18)}

/* ── Cards — dark surface ── */
[data-theme="dark"] .lead-card,[data-theme="dark"] .feature-card,[data-theme="dark"] .price-card,[data-theme="dark"] .card-panel,[data-theme="dark"] .form-card,[data-theme="dark"] .card.form,[data-theme="dark"] .legal-card,[data-theme="dark"] .table-card,[data-theme="dark"] .recommended-panel,[data-theme="dark"] .status-panel div,[data-theme="dark"] .csv-preview{
  background:var(--pub-surface);
  border-color:var(--pub-border);
  box-shadow:0 18px 52px rgba(0,0,0,.22);
}
[data-theme="dark"] .lead-card{background:linear-gradient(180deg,var(--pub-surface),rgba(15,17,23,.92))}
[data-theme="dark"] .lead-card:before,[data-theme="dark"] .price-card.featured:before,[data-theme="dark"] .table-card:before{background:linear-gradient(90deg,var(--pub-accent),#f09cf4)}
[data-theme="dark"] .feature-card p,[data-theme="dark"] .price-card p,[data-theme="dark"] .legal-card p,[data-theme="dark"] .small-note{color:var(--pub-muted)}

/* ── Lead card internals ── */
[data-theme="dark"] .lead-card-top p{color:var(--pub-muted)}
[data-theme="dark"] .live-pill,[data-theme="dark"] .status-pill,[data-theme="dark"] .plan-badge{background:rgba(155,140,255,.14);color:#d9d2ff;border:1px solid rgba(155,140,255,.24)}
[data-theme="dark"] .live-pill span{background:var(--pub-accent)}
[data-theme="dark"] .lead-card-tabs span{background:rgba(255,255,255,.04);border-color:var(--pub-border);color:var(--pub-text)}
[data-theme="dark"] .lead-row{background:rgba(255,255,255,.03);border-color:var(--pub-border)}
[data-theme="dark"] .lead-row strong{color:var(--pub-text)}
[data-theme="dark"] .lead-row span,[data-theme="dark"] .lead-row em{color:var(--pub-muted)}
[data-theme="dark"] .lead-row:hover{border-color:rgba(155,140,255,.32);box-shadow:0 10px 28px rgba(0,0,0,.18)}
[data-theme="dark"] .card-metrics div{background:rgba(255,255,255,.03);border:1px solid var(--pub-border)}
[data-theme="dark"] .card-metrics b{color:var(--pub-accent)}
[data-theme="dark"] .card-metrics span{color:var(--pub-muted)}
[data-theme="dark"] .lead-card-note{border-top-color:var(--pub-border);color:var(--pub-muted)}
[data-theme="dark"] .feed-header{color:var(--pub-muted)}
[data-theme="dark"] .text-link{color:var(--pub-accent)}

/* ── Customer strip ── */
[data-theme="dark"] .customer-strip{border-top-color:var(--pub-border);border-bottom-color:var(--pub-border);color:var(--pub-muted)}
[data-theme="dark"] .customer-strip span{color:var(--pub-accent)}
[data-theme="dark"] .customer-strip b{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-text)}

/* ── UX depth panel — restyle to match dark ── */
[data-theme="dark"] .ux-depth-panel div{background:linear-gradient(145deg,var(--pub-surface) 0%,#12151e 70%,#0f121a 100%);border:1px solid var(--pub-border);box-shadow:0 24px 64px rgba(0,0,0,.22)}
[data-theme="dark"] .ux-depth-panel span{color:var(--pub-accent)}
[data-theme="dark"] .ux-depth-panel b{color:var(--pub-text)}

/* ── Feature step badge ── */
[data-theme="dark"] .step{background:linear-gradient(135deg,var(--pub-accent),#f09cf4);color:#111217}

/* ── CSV table scroll ── */
[data-theme="dark"] .csv-table-scroll{background:var(--pub-surface);border-color:var(--pub-border);scrollbar-color:rgba(155,140,255,.34) rgba(255,255,255,.06)}
[data-theme="dark"] .csv-table-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.04)}
[data-theme="dark"] .csv-table-scroll::-webkit-scrollbar-thumb{background:linear-gradient(90deg,var(--pub-accent),#f09cf4);border-color:rgba(255,255,255,.04)}
[data-theme="dark"] .csv-schema-table th{background:rgba(255,255,255,.05);color:var(--pub-text)}
[data-theme="dark"] .csv-schema-table td{color:var(--pub-muted)}
[data-theme="dark"] .csv-preview-disclosure{background:linear-gradient(135deg,rgba(155,140,255,.10),rgba(155,140,255,.04));border-color:rgba(155,140,255,.22);color:var(--pub-text)}
[data-theme="dark"] .csv-scroll-hint{background:rgba(255,255,255,.04);border-color:var(--pub-border);color:var(--pub-muted)}
[data-theme="dark"] .csv-empty{border-color:var(--pub-border);color:var(--pub-muted);background:rgba(255,255,255,.03)}

/* ── Compliance band ── */
[data-theme="dark"] .compliance-band{background:linear-gradient(135deg,#0a0c11,#12151e)}
[data-theme="dark"] .compliance-band p{color:var(--pub-muted)}
[data-theme="dark"] .compliance-label{background:rgba(155,140,255,.12);border-color:rgba(155,140,255,.22)}

/* ── Forms ── */
[data-theme="dark"] input,[data-theme="dark"] select,[data-theme="dark"] textarea{background:#11141d;border:1px solid var(--pub-border);color:var(--pub-text)}
[data-theme="dark"] input:focus,[data-theme="dark"] select:focus,[data-theme="dark"] textarea:focus{outline:3px solid rgba(155,140,255,.24);border-color:var(--pub-accent)}
[data-theme="dark"] label{color:var(--pub-muted)}
[data-theme="dark"] .form-error{color:#ff7a90}

/* ── Tables ── */
[data-theme="dark"] table{background:transparent}
[data-theme="dark"] th{background:rgba(255,255,255,.04);color:var(--pub-muted)}
[data-theme="dark"] th,[data-theme="dark"] td{border-bottom-color:var(--pub-border);color:var(--pub-text)}
[data-theme="dark"] td small{color:var(--pub-muted)}

/* ── Buttons ── */
[data-theme="dark"] .btn.secondary{background:var(--pub-surface);color:var(--pub-text)!important;border:1px solid var(--pub-border);box-shadow:none}

/* ── Trust row ── */
[data-theme="dark"] .trust-row span{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-text)}

/* ── Pack value grid ── */
[data-theme="dark"] .pack-value-grid article{background:var(--pub-surface);border-color:var(--pub-border);box-shadow:0 12px 36px rgba(0,0,0,.18)}
[data-theme="dark"] .pack-value-grid span{color:var(--pub-accent)}
[data-theme="dark"] .pack-value-grid p{color:var(--pub-muted)}

/* ── Status panel ── */
[data-theme="dark"] .status-panel span{color:var(--pub-accent)}
[data-theme="dark"] .status-panel b{color:var(--pub-text)}
[data-theme="dark"] .status-panel em{color:var(--pub-muted)}

/* ── Recommended panel / table title ── */
[data-theme="dark"] .table-title{border-bottom-color:var(--pub-border)}
[data-theme="dark"] .table-title span{color:var(--pub-muted)}
[data-theme="dark"] .recommend-grid article{background:rgba(255,255,255,.03);border-color:var(--pub-border)}
[data-theme="dark"] .recommend-grid b{color:var(--pub-text)}
[data-theme="dark"] .recommend-grid span,[data-theme="dark"] .recommend-grid p{color:var(--pub-muted)}

/* ── Listing update grid ── */
[data-theme="dark"] .public-listing-updates>.table-title{background:var(--pub-surface);border-color:var(--pub-border)}
[data-theme="dark"] .listing-update-grid{background:rgba(255,255,255,.02);border-color:var(--pub-border)}
[data-theme="dark"] .listing-update-grid article{background:rgba(255,255,255,.03);border-color:var(--pub-border)}
[data-theme="dark"] .listing-update-grid strong{color:var(--pub-text)}
[data-theme="dark"] .listing-update-grid span{color:var(--pub-muted)}

/* ── Pricing hero ── */
[data-theme="dark"] .pricing-hero:after{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-text)}
[data-theme="dark"] .check-list li{color:var(--pub-muted)}
[data-theme="dark"] .check-list li:before{color:var(--pub-accent)}
[data-theme="dark"] .reason-note{color:var(--pub-text)}
[data-theme="dark"] .source-note{color:var(--pub-muted)}
[data-theme="dark"] .price{color:var(--pub-accent)}

/* ── Message card ── */
[data-theme="dark"] .message-card{background:linear-gradient(135deg,var(--pub-surface),rgba(15,17,23,.94));border-color:var(--pub-border)}
[data-theme="dark"] .message-card:before{background:linear-gradient(180deg,var(--pub-accent),#f09cf4)}

/* ── Mobile sticky CTA ── */
[data-theme="dark"] .mobile-sticky-cta{background:linear-gradient(135deg,var(--pub-accent) 0%,#7a6fd6 100%);box-shadow:0 18px 48px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.18)}

/* ── Mobile menu — dark ── */
@media (max-width:767px){
  [data-theme="dark"] .mobile-menu-toggle{background:var(--pub-surface);border-color:var(--pub-border);color:var(--pub-text)!important}
  [data-theme="dark"] .mobile-menu-toggle .menu-icon i{background:var(--pub-text)}
  [data-theme="dark"] .mobile-menu-panel{background:var(--pub-surface)!important;border-color:var(--pub-border)!important;box-shadow:0 28px 80px rgba(0,0,0,.42)}
  [data-theme="dark"] .mobile-menu-panel a,[data-theme="dark"] .mobile-menu-panel button{background:rgba(255,255,255,.04)!important;color:var(--pub-text)!important;border-color:var(--pub-border)!important}
  [data-theme="dark"] .mobile-menu-panel a small{color:var(--pub-muted)!important}
  [data-theme="dark"] .mobile-menu-primary{background:linear-gradient(135deg,var(--pub-accent),#f09cf4)!important;color:#111217!important}
  [data-theme="dark"] .customer-strip{background:rgba(255,255,255,.03)}
}

/* ── Suggest-update: clear mobile sticky CTA ── */
@media (max-width:767px){
  [data-theme="dark"] .suggest-update-shell{padding-bottom:96px}
}

/* ── Desktop hero glow enhancement ── */
@media (min-width:768px){
  [data-theme="dark"] .hero-shell{position:relative}
}

/* ── Pricing page — Phase 2 ── */
[data-theme="dark"] .price-card.featured{
  border-color:var(--pub-accent);
  box-shadow:0 26px 70px rgba(0,0,0,.34),var(--pub-glow);
}
[data-theme="dark"] .price-card .plan-form .btn{
  background:linear-gradient(135deg,var(--pub-accent),#f09cf4);
  color:#111217!important;
  box-shadow:0 14px 34px rgba(0,0,0,.30);
}
[data-theme="dark"] .plan-badge{
  background:linear-gradient(135deg,var(--pub-accent),#f09cf4);
  color:#111217;
}
[data-theme="dark"] .price-card .tagline{color:var(--pub-text)}

/* Non-featured plan cards: premium hover on dark */
[data-theme="dark"] .price-card:not(.featured):hover{
  border-color:rgba(155,140,255,.40);
  box-shadow:0 22px 60px rgba(0,0,0,.30),var(--pub-glow);
}

/* ── Theme toggle ── icon-only pill in the header ── */
.theme-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0;
  flex:0 0 auto;
  width:34px;
  height:34px;
  padding:0;
  border:none;
  background:transparent;
  color:#06152d;
  cursor:pointer;
  line-height:1;
  transition:color .16s ease,background .16s ease;
  box-shadow:none;
  order:99;
}
.theme-toggle .theme-icon{
  display:inline-block;
  width:16px;
  height:16px;
  stroke:#06152d;
  opacity:1;
}
.theme-toggle .theme-icon-dark{display:none}
[data-theme="dark"] .theme-toggle .theme-icon-light{display:none}
[data-theme="dark"] .theme-toggle .theme-icon-dark{display:inline-block}
.theme-toggle:hover{background:rgba(19,82,147,.06)}
[data-theme="dark"] .theme-toggle{color:#e2e8f0}
[data-theme="dark"] .theme-toggle .theme-icon{stroke:#e2e8f0}
[data-theme="dark"] .theme-toggle:hover{background:rgba(255,255,255,.06)}
.theme-toggle:active{transform:scale(.95)}
@media (max-width:767px){.theme-toggle{width:32px;height:32px}.theme-toggle .theme-icon{width:15px;height:15px}}

/* Issue 188: app shell dark theme. */
[data-theme="dark"] .app-mode{background:radial-gradient(circle at 82% 0,rgba(48,164,132,.12),transparent 28rem),linear-gradient(180deg,#081421 0,#0d1a28 54%,#07101c 100%)}
[data-theme="dark"] .app-header,[data-theme="dark"] .app-bottom-nav,[data-theme="dark"] .app-account-card{background:rgba(11,24,38,.9);border-color:rgba(148,178,202,.16);box-shadow:0 18px 48px rgba(0,0,0,.34)}
[data-theme="dark"] .app-brand,[data-theme="dark"] .app-brand strong{color:#f6fbff}[data-theme="dark"] .app-brand small,[data-theme="dark"] .app-bottom-nav a{color:#b7c6d6}[data-theme="dark"] .app-access-pill{background:rgba(48,164,132,.14);border-color:rgba(48,164,132,.28);color:#9ce3d0}[data-theme="dark"] .app-bottom-nav a:hover{background:rgba(255,255,255,.08)}[data-theme="dark"] .app-bottom-nav a[aria-current="page"]{color:#fff;background:linear-gradient(135deg,var(--pub-accent),#30a484)}

/* Issue 190: control panel V2 dark theme. */
[data-theme="dark"] .control-panel-sidebar .sidebar-card,[data-theme="dark"] .control-panel-sidebar nav,[data-theme="dark"] .control-panel-tab-strip a,[data-theme="dark"] .pagination-page{background:rgba(11,24,38,.9);border-color:rgba(148,178,202,.16);color:#c8d6e3}[data-theme="dark"] .control-panel-sidebar nav a{color:#c8d6e3}[data-theme="dark"] .control-panel-sidebar nav a[aria-current="page"],[data-theme="dark"] .control-panel-tab-strip a[aria-current="page"],[data-theme="dark"] .pagination-page[aria-current="page"]{color:#fff;background:linear-gradient(135deg,var(--pub-accent),#30a484)}[data-theme="dark"] .pagination-ellipsis{color:#91a3b7}[data-theme="dark"] .per-page-control span{color:#c8d6e3}

/* Issue 192: compact header action dark theme. */
[data-theme="dark"] .app-header-action{background:rgba(11,24,38,.92);border-color:rgba(148,178,202,.18);color:#d8e6f2}[data-theme="dark"] .app-header-action-primary{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--pub-accent),#30a484)}
