/* Lumière Skin — Shared styles: auth nav, paywall, gates */

/* ── Auth nav ── */
.nav-auth { display:flex; align-items:center; gap:10px; }

.btn-outline {
  padding:7px 18px; background:transparent; color:var(--text);
  font-size:12px; font-weight:500; letter-spacing:0.8px; text-transform:uppercase;
  border:1px solid var(--border2); border-radius:4px; text-decoration:none;
  transition:all .2s; font-family:'Jost',sans-serif;
}
.btn-outline:hover { border-color:var(--text); }

.btn-green-nav {
  padding:8px 20px; background:var(--green); color:white;
  font-size:12px; font-weight:600; letter-spacing:0.8px; text-transform:uppercase;
  border:none; border-radius:4px; text-decoration:none; transition:all .2s;
  font-family:'Jost',sans-serif;
}
.btn-green-nav:hover { background:#2e5039; }

.av-circle {
  width:32px; height:32px; background:var(--green); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:white; font-size:14px; font-weight:700;
  font-family:'Playfair Display',serif; text-decoration:none;
}
.nav-avatar { text-decoration:none; }

/* ── Guest badge in nav ── */
.guest-badge {
  padding:4px 10px; background:var(--gold-lt); border:1px solid rgba(201,168,76,.3);
  border-radius:100px; font-size:11px; font-weight:600; color:var(--gold-dk);
  letter-spacing:0.5px;
}

/* ── Paywall overlay (blur section) ── */
.paywall-overlay {
  position:absolute; inset:0;
  background:rgba(245,243,238,0.85);
  backdrop-filter:blur(6px);
  border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  z-index:10;
}

.paywall-card {
  text-align:center; padding:32px 40px;
  background:var(--surface); border:1px solid var(--border);
  border-radius:16px; box-shadow:0 8px 32px rgba(0,0,0,.08);
  max-width:360px;
}

.paywall-icon { font-size:28px; margin-bottom:12px; }
.paywall-title {
  font-family:'Playfair Display',serif; font-size:18px; font-weight:700;
  margin-bottom:8px; color:var(--text);
}
.paywall-desc { font-size:13px; color:var(--text-s); line-height:1.6; margin-bottom:20px; }
.paywall-btn {
  display:block; padding:12px 24px; background:var(--green); color:white;
  border-radius:8px; font-size:13px; font-weight:600; text-decoration:none;
  transition:all .2s; margin-bottom:12px; font-family:'Jost',sans-serif;
}
.paywall-btn:hover { background:#2e5039; }
.paywall-signin { font-size:12px; color:var(--text-s); }
.paywall-signin a { color:var(--green); text-decoration:none; font-weight:600; }

/* ── Gate banner (inline) ── */
.gate-banner {
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 20px; background:var(--gold-lt);
  border:1px solid rgba(201,168,76,.3); border-radius:10px;
  margin-top:16px; font-size:13px; gap:16px;
}
.gate-banner span { color:var(--text-mid); }
.gate-banner a {
  color:var(--green); font-weight:600; text-decoration:none;
  white-space:nowrap; font-size:13px;
}
.gate-banner a:hover { text-decoration:underline; }

/* ── Page gate (full block) ── */
.page-gate {
  position:fixed; inset:0; background:rgba(245,243,238,.95);
  backdrop-filter:blur(8px); z-index:200;
  display:flex; align-items:center; justify-content:center;
}
.pg-card {
  text-align:center; padding:48px 56px;
  background:var(--surface); border:1px solid var(--border);
  border-radius:20px; box-shadow:0 16px 48px rgba(0,0,0,.1);
  max-width:420px;
}
.pg-leaf { font-size:36px; margin-bottom:16px; }
.pg-title {
  font-family:'Playfair Display',serif; font-size:24px; font-weight:700;
  margin-bottom:10px;
}
.pg-desc { font-size:14px; color:var(--text-s); line-height:1.7; margin-bottom:28px; }
.pg-btn {
  display:block; padding:14px 28px; background:var(--green); color:white;
  border-radius:8px; font-size:14px; font-weight:600; text-decoration:none;
  transition:all .2s; margin-bottom:14px; font-family:'Jost',sans-serif;
}
.pg-btn:hover { background:#2e5039; box-shadow:0 4px 14px rgba(61,107,79,.25); }
.pg-signin { font-size:13px; color:var(--text-s); }
.pg-signin a { color:var(--green); text-decoration:none; font-weight:600; }

/* ── Comparison table on index ── */
.compare-table { width:100%; border-collapse:collapse; font-size:14px; }
.compare-table th {
  padding:12px 20px; text-align:left;
  font-size:11px; font-weight:600; letter-spacing:1.2px; text-transform:uppercase;
  color:var(--text-s); border-bottom:2px solid var(--border);
}
.compare-table th.hl { color:var(--green); }
.compare-table td { padding:14px 20px; border-bottom:1px solid var(--border); color:var(--text-mid); }
.compare-table tr:last-child td { border-bottom:none; }
.compare-table .feat-name { font-weight:500; color:var(--text); }
.compare-table .check { color:var(--green); font-size:16px; }
.compare-table .cross { color:var(--border2); font-size:16px; }
.compare-table .partial { color:var(--gold-dk); font-size:13px; font-weight:600; }

/* ── GLOBAL DARK MODE OVERRIDE ── */
@media (prefers-color-scheme: dark) {
  :root {
    --bg:#f5f3ee !important;
    --surface:#ffffff !important;
    --card:#f0ede6 !important;
    --border:#e4dfd6 !important;
    --text:#1c1a17 !important;
    --text-mid:#4a4540 !important;
    --text-s:#9a9288 !important;
  }
  html, body { background:#f5f3ee !important; color:#1c1a17 !important; }
  nav { background:#f5f3ee !important; }
  input, textarea, button { background-color: initial; color: initial; }
}
