/*
Theme Name: LeadPress Affiliate
Theme URI: https://example.com/leadpress-affiliate
Author: ChatGPT
Author URI: https://openai.com
Description: Affiliate review theme focused on lead capture before redirecting to offer pages.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Tags: affiliate, landing page, blog, minimal
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: leadpress-affiliate
*/
:root {
  --lp-font: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  --lp-bg: #0f172a;
  --lp-card: #111827;
  --lp-text: #f1f5f9;
  --lp-muted: #9ca3af;
  --lp-accent: #22c55e;
  --lp-danger: #ef4444;
}

body {
  font-family: var(--lp-font);
  background: var(--lp-bg);
  color: var(--lp-text);
  margin: 0;
  line-height: 1.6;
}
a { color: var(--lp-accent); text-decoration: none; }
a:hover { text-decoration: underline; }

.container { max-width: 880px; margin: 0 auto; padding: 24px; }
.header { display:flex; align-items:center; justify-content:space-between; gap: 12px; }
.site-title a{ color: var(--lp-text); font-weight: 700; font-size: 22px; }
.nav a { color: var(--lp-muted); margin-left: 14px; }
.card { background: var(--lp-card); border-radius: 14px; padding: 24px; box-shadow: 0 10px 24px rgba(0,0,0,.25); }

.cta-wrap { display:flex; gap:12px; flex-wrap:wrap; margin: 18px 0; }
.lp-btn {
  display:inline-flex; align-items:center; justify-content:center;
  padding: 14px 18px; border-radius: 12px; border: 0; cursor: pointer;
  background: var(--lp-accent); color:#052e16; font-weight:800; letter-spacing:.3px;
}

.post-meta { color: var(--lp-muted); font-size: 14px; }
.footer { color: var(--lp-muted); font-size:14px; padding: 24px; text-align:center; }

/* Modal */
.lp-modal-overlay {
  position: fixed; inset: 0; background: rgba(2,6,23, 0.65); display:none; z-index: 9998;
}
.lp-modal {
  position: fixed; left:50%; top:50%; transform: translate(-50%,-50%);
  width: 92%; max-width: 560px; background:#0b1220; border:1px solid #1f2937;
  border-radius: 16px; padding: 22px; display:none; z-index: 9999;
}
.lp-modal header { display:flex; justify-content: space-between; align-items: center; gap: 12px; }
.lp-close { background:transparent; border:none; color:#94a3b8; font-size: 22px; cursor:pointer; }
.lp-form { display:grid; gap: 12px; margin-top: 12px; }
.lp-input { padding: 12px 14px; background:#0a1220; color:#e2e8f0; border:1px solid #334155; border-radius: 12px; }
.lp-help { color:#94a3b8; font-size: 13px; }
.lp-error { color: var(--lp-danger); font-size: 13px; display:none; }
.lp-success { color: #86efac; font-size: 13px; display:none; }
.lp-policy { font-size: 12px; color: #9ca3af; }


/* ----- UI polish v1.3.0 ----- */
.container { max-width: 920px; }
.entry > * + * { margin-top: 1rem; }
.entry img { max-width: 100%; height: auto; border-radius: 12px; }
.entry table { width: 100%; border-collapse: collapse; overflow: hidden; border-radius: 12px; }
.entry table th, .entry table td { padding: 12px; border-bottom: 1px solid #1f2937; }
.entry table thead th { background: #0b1324; text-align: left; }
.entry ul { padding-left: 1.25rem; }
.entry li { margin-top: .5rem; }
.lp-btn { transition: transform .06s ease, box-shadow .2s ease; box-shadow: 0 6px 14px rgba(0,0,0,.25); }
.lp-btn:hover { transform: translateY(-1px); text-decoration: none; }
.badge { background:#1f2937; color:#a5b4fc; padding:4px 8px; border-radius:999px; font-size:12px; }
.header { position: sticky; top: 0; background: rgba(17,24,39,.65); backdrop-filter: blur(6px); z-index: 40; }
.site-logo img { max-width: var(--lp-logo-width); height:auto; border-radius: 6px; }
.sep { height: 1px; background: #1f2937; margin: 24px 0; border-radius: 1px; }
.notice { padding: 12px 14px; border-radius: 12px; background: #0b1220; border: 1px solid #1f2937; }


/* ---- v1.3.1 Light/Dark + palettes + CTA presets ---- */
:root[data-theme="dark"] {
  --lp-bg: #0f172a; --lp-card:#111827; --lp-text:#f1f5f9; --lp-muted:#9ca3af;
}
:root[data-theme="light"] {
  --lp-bg: #ffffff; --lp-card:#ffffff; --lp-text:#0f172a; --lp-muted:#475569;
  color-scheme: light;
}
@media (prefers-color-scheme: light) { :root { color-scheme: light; } }
@media (prefers-color-scheme: dark)  { :root { color-scheme: dark; } }
body { background: var(--lp-bg); color: var(--lp-text); }
.card { background: var(--lp-card); }

/* Palettes affect accent variable */
:root.palette-emerald { --lp-accent:#22c55e; }
:root.palette-blue    { --lp-accent:#3b82f6; }
:root.palette-amber   { --lp-accent:#f59e0b; }
:root.palette-violet  { --lp-accent:#8b5cf6; }

/* CTA presets */
:root.cta-radius-sharp  { --lp-radius-btn: 6px; }
:root.cta-radius-round  { --lp-radius-btn: 12px; }
:root.cta-radius-pill   { --lp-radius-btn: 999px; }

:root.cta-size-sm { --lp-btn-py: 10px; --lp-btn-px: 14px; --lp-btn-fs: 14px; }
:root.cta-size-md { --lp-btn-py: 14px; --lp-btn-px: 18px; --lp-btn-fs: 16px; }
:root.cta-size-lg { --lp-btn-py: 16px; --lp-btn-px: 22px; --lp-btn-fs: 18px; }

.lp-btn {
  padding: var(--lp-btn-py,14px) var(--lp-btn-px,18px);
  border-radius: var(--lp-radius-btn,12px);
  font-size: var(--lp-btn-fs,16px);
}
.theme-toggle { background:#0b1220; border:1px solid #1f2937; color:#e2e8f0; padding:8px 10px; border-radius:10px; cursor:pointer; }
:root[data-theme="light"] .theme-toggle { background:#eef2ff; border-color:#c7d2fe; color:#111827; }

.container--wide{max-width:1180px}
.card .cta-wrap{margin-top:8px}
.card{border-radius:14px}

.popular-grid .card{min-width:250px}
.container--wide{max-width:1200px}


/* ---- LeadPress Design Controls (palette + CTA presets) v1.3.8 ---- */
:root.palette-emerald { --lp-accent:#22c55e; }
:root.palette-blue    { --lp-accent:#3b82f6; }
:root.palette-amber   { --lp-accent:#f59e0b; }
:root.palette-violet  { --lp-accent:#8b5cf6; }

:root.cta-radius-sharp { --lp-radius-btn:6px; }
:root.cta-radius-round { --lp-radius-btn:12px; }
:root.cta-radius-pill  { --lp-radius-btn:999px; }

:root.cta-size-sm { --lp-btn-py:10px; --lp-btn-px:14px; --lp-btn-fs:14px; }
:root.cta-size-md { --lp-btn-py:14px; --lp-btn-px:18px; --lp-btn-fs:16px; }
:root.cta-size-lg { --lp-btn-py:16px; --lp-btn-px:22px; --lp-btn-fs:18px; }

.lp-btn{ 
  padding: var(--lp-btn-py,14px) var(--lp-btn-px,18px);
  font-size: var(--lp-btn-fs,16px);
  border-radius: var(--lp-radius-btn,12px);
  background: var(--lp-accent, #22c55e);
  border: none;
  color: #0b1220;
}
a, .entry a { color: var(--lp-accent, #22c55e); }
