/* ============================================
   ThinkSuccess v2 — Curation Library overrides
   Loads AFTER styles.css. Pillar palette:
   library=gold · frameworks=blue · reviews=green · manifest=plum
   ============================================ */

:root {
  --c-library:    var(--gold);
  --c-frameworks: #4F8EF7;
  --c-reviews:    #34D399;
  --c-manifest:   #A78BFA;
  --font-serif: Georgia, "Times New Roman", serif;
}

/* Pillar tags reuse cat-tag styling */
.cat-tag.library    { background: rgba(255,185,85,.14); color: var(--gold-text); }
.cat-tag.frameworks { background: rgba(79,142,247,.14); color: #8FB5FA; }
.cat-tag.reviews    { background: rgba(52,211,153,.14); color: #6EE7B7; }
.cat-tag.manifest   { background: rgba(167,139,250,.14); color: #C4B5FD; }

/* --- Pillar cards on homepage --- */
.pillar-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin: 32px 0 8px;
}
.pillar-card {
  background: var(--surface-2);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: var(--radius-lg);
  padding: 28px 24px;
  transition: var(--transition);
  display: block;
}
.pillar-card:hover { transform: translateY(-3px); border-color: rgba(255,185,85,.35); box-shadow: var(--shadow-sm); }
.pillar-icon { font-size: 1.6rem; margin-bottom: 14px; }
.pillar-card h3 { font-size: 1.05rem; margin-bottom: 8px; color: var(--white); }
.pillar-card p { font-size: .85rem; color: var(--text-muted); line-height: 1.55; }
.pillar-card .pillar-cta { display: inline-block; margin-top: 14px; font-size: .78rem; font-weight: 700; letter-spacing: .04em; }
.pillar-card.library .pillar-cta    { color: var(--c-library); }
.pillar-card.frameworks .pillar-cta { color: var(--c-frameworks); }
.pillar-card.reviews .pillar-cta    { color: var(--c-reviews); }
.pillar-card.manifest .pillar-cta   { color: var(--c-manifest); }

/* --- Article body typography --- */
.article-body { max-width: 720px; margin: 0 auto; padding: 40px 24px 64px; }
.article-body h1 { font-family: var(--font-serif); font-size: 2.1rem; line-height: 1.2; margin-bottom: 14px; color: var(--white); }
.article-body h2 { font-size: 1.35rem; margin: 40px 0 14px; color: var(--white); }
.article-body h3 { font-size: 1.05rem; margin: 28px 0 10px; color: var(--gold-text); }
.article-body p  { margin-bottom: 18px; color: var(--text); font-size: 1.02rem; line-height: 1.75; }
.article-body ul, .article-body ol { margin: 0 0 18px 22px; list-style: disc; }
.article-body ol { list-style: decimal; }
.article-body li { margin-bottom: 8px; line-height: 1.65; }
.article-body blockquote {
  border-left: 3px solid var(--gold);
  background: var(--surface-2);
  padding: 16px 20px;
  margin: 24px 0;
  border-radius: 0 var(--radius) var(--radius) 0;
  font-style: italic;
  color: var(--gold-text);
}
.article-meta-line { display:flex; gap:10px; align-items:center; flex-wrap:wrap; color: var(--text-muted); font-size:.85rem; margin-bottom: 28px; }
.byline-avatar { width:32px; height:32px; border-radius:50%; background:linear-gradient(135deg,var(--gold),var(--gold-dim)); color:#2A1A00; font-weight:800; font-size:.7rem; display:flex; align-items:center; justify-content:center; }

/* --- Disclosure + info boxes --- */
.disclosure-box, .evidence-box {
  background: var(--surface-2);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: var(--radius);
  padding: 14px 18px;
  font-size: .82rem;
  color: var(--text-muted);
  margin: 20px 0;
  line-height: 1.6;
}
.evidence-box { border-left: 3px solid var(--c-reviews); }
.evidence-box strong { color: var(--c-reviews); }

/* --- Product / shop cards --- */
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin:32px 0; }
.product-card {
  background: var(--surface-2);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: var(--radius-lg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.product-thumb { height: 170px; display:flex; align-items:center; justify-content:center; font-size:2.4rem; background: linear-gradient(135deg, var(--surface-3), var(--surface-4)); }
.product-body { padding: 20px; display:flex; flex-direction:column; gap:8px; flex:1; }
.product-body h3 { font-size: 1rem; color: var(--white); }
.product-body p { font-size:.83rem; color: var(--text-muted); line-height:1.55; flex:1; }
.product-price { font-size: 1.2rem; font-weight: 800; color: var(--gold); }
.product-btn {
  display:block; text-align:center; padding: 11px;
  background: linear-gradient(135deg, var(--gold), var(--gold-dim));
  color:#2A1A00; font-weight:800; border-radius: var(--radius);
  font-size:.85rem; transition: var(--transition);
}
.product-btn:hover { filter: brightness(1.1); }
.product-btn.soon { background: var(--surface-4); color: var(--text-muted); cursor: default; }

/* --- CTA band --- */
.cta-band {
  background: linear-gradient(135deg, rgba(255,185,85,.10), rgba(167,139,250,.10));
  border: 1px solid rgba(255,185,85,.25);
  border-radius: var(--radius-lg);
  padding: 26px 28px;
  margin: 36px 0;
}
.cta-band h3 { color: var(--white); margin-bottom: 8px; font-size: 1.1rem; }
.cta-band p { color: var(--text-muted); font-size:.9rem; margin-bottom: 14px; }

/* --- Breadcrumb --- */
.breadcrumb { max-width:720px; margin:0 auto; padding:20px 24px 0; font-size:.78rem; color:var(--text-dim); }
.breadcrumb a { color: var(--text-muted); }
.breadcrumb a:hover { color: var(--gold); }

/* --- Newsletter form states --- */
.newsletter-msg { margin-top:10px; font-size:.85rem; min-height:1.2em; }
.newsletter-msg.ok { color:#6EE7B7; }
.newsletter-msg.err { color:#FCA5A5; }

/* --- Responsive --- */
@media (max-width: 980px) {
  .pillar-grid { grid-template-columns: repeat(2, 1fr); }
  .product-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 620px) {
  .pillar-grid { grid-template-columns: 1fr; }
  .product-grid { grid-template-columns: 1fr; }
  .article-body h1 { font-size: 1.6rem; }
}
