/* ═══════════════════════════════════════════
   CHAKRA SUBPAGE — SHARED STYLES
   ═══════════════════════════════════════════ */

.ck-bg { position:fixed; top:0; left:0; width:100%; height:100%; pointer-events:none; z-index:0; overflow:hidden; }
.ck-bg span { position:absolute; border-radius:50%; animation:ck-rise linear infinite; opacity:0; }
@keyframes ck-rise { 0%{opacity:0;transform:translateY(100vh) scale(.5)} 10%{opacity:.5} 90%{opacity:.3} 100%{opacity:0;transform:translateY(-10vh) scale(1)} }

/* ── Hero ── */
.ck-page-hero {
  position: relative; min-height: 55vh;
  display: flex; align-items: center; justify-content: center;
  text-align: center; padding: 4rem 2rem; z-index: 1;
}
.ck-page-hero__location {
  font-size: .7rem; letter-spacing: .15em; text-transform: uppercase;
  color: var(--color-text-muted); margin-bottom: 1rem;
}
.ck-page-hero__symbol { font-size: 3rem; margin-bottom: .75rem; }
.ck-page-hero__title {
  font-family: var(--font-display); font-size: clamp(2rem,5vw,3rem);
  letter-spacing: .12em; margin-bottom: .5rem;
  text-shadow: 0 0 30px currentColor;
}
.ck-page-hero__sanskrit {
  font-family: var(--font-accent); font-style: italic;
  font-size: .9rem; color: var(--color-text-dim);
}
.ck-page-hero__motto {
  font-family: var(--font-accent); font-style: italic;
  font-size: 1rem; color: rgba(192,208,232,.75); margin-top: var(--space-md);
}

/* ── Flow Block ── */
.ck-flow {
  max-width: 800px; margin: 0 auto; padding: 0 1rem;
}
.ck-flow h2 {
  font-family: var(--font-display); font-size: 1.3rem;
  color: var(--ck-color, #9b59b6); letter-spacing: .06em;
  margin-top: var(--space-2xl); margin-bottom: var(--space-md);
  text-shadow: 0 0 12px currentColor;
}
.ck-flow h2:first-of-type { margin-top: 0; }
.ck-flow h3 {
  font-family: var(--font-display); font-size: 1rem;
  color: rgba(192,208,232,.9); letter-spacing: .05em;
  margin-top: var(--space-lg); margin-bottom: var(--space-sm);
}
.ck-flow p {
  font-size: .92rem; color: var(--color-text-dim);
  line-height: 2; margin-bottom: 1rem;
}
.ck-flow strong { color: var(--ck-color, #9b59b6); }
.ck-flow > ul, .ck-flow > ol { padding-left: 1.25rem; margin-bottom: 1rem; }
.ck-flow li { font-size: .9rem; color: var(--color-text-dim); line-height: 1.8; margin-bottom: .4rem; }

/* ── Barnum Opener ── */
.ck-barnum {
  font-size: .95rem; color: var(--color-text-dim); line-height: 2;
  text-align: center; max-width: 650px; margin: 0 auto var(--space-xl);
  padding-bottom: var(--space-lg);
  border-bottom: 1px solid rgba(255,255,255,.04);
}

/* ── Chips ── */
.ck-chips { display:flex; flex-wrap:wrap; gap:.4rem; margin: var(--space-sm) 0 var(--space-md); }
.ck-chip {
  font-size:.75rem; padding:.3rem .7rem; border-radius:20px;
  border:1px solid rgba(255,255,255,.06); background:rgba(255,255,255,.03);
  color:var(--color-text-muted);
}

/* ── Balanced/Blocked Split ── */
.ck-split { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:var(--space-md) 0; }
.ck-split__box {
  padding:1.5rem; border-radius:14px;
  background:rgba(15,12,30,.5); border:1px solid rgba(255,255,255,.04);
}
.ck-split__box h4 { font-family:var(--font-display); font-size:.85rem; letter-spacing:.06em; margin-bottom:.75rem; }
.ck-split__box--good h4 { color:#2ecc71; }
.ck-split__box--blocked h4 { color:#e74c3c; }
.ck-split__box ul { list-style:none; padding:0; }
.ck-split__box li { font-size:.82rem; color:var(--color-text-dim); padding:.3rem 0; line-height:1.6; }
.ck-split__box li::before { content:'• '; color:var(--color-text-muted); }

/* ── Lessons ── */
.ck-lessons { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1rem; margin:var(--space-md) 0; }
.ck-lesson {
  padding:1.25rem; border-radius:12px;
  background:rgba(15,12,30,.4); border:1px solid rgba(255,255,255,.04);
}
.ck-lesson strong { display:block; font-family:var(--font-display); font-size:.85rem; color:var(--ck-color,#9b59b6); margin-bottom:.3rem; letter-spacing:.04em; }
.ck-lesson p { font-size:.8rem; color:var(--color-text-dim); line-height:1.6; margin:0; }

/* ── Practice Box ── */
.ck-practice {
  background:rgba(var(--ck-color-rgb,155,89,182),.04);
  border-left:3px solid var(--ck-color,#9b59b6);
  padding:1.5rem 2rem; border-radius:0 12px 12px 0;
  margin:var(--space-lg) 0;
}
.ck-practice h4 { font-family:var(--font-display); font-size:.9rem; color:var(--ck-color,#9b59b6); letter-spacing:.08em; margin-bottom:.5rem; }
.ck-practice p { font-size:.88rem; color:var(--color-text-dim); line-height:1.8; margin-bottom:.5rem; }
.ck-practice p:last-child { margin-bottom:0; }
.ck-practice ol, .ck-practice ul { padding-left:1.25rem; margin:.5rem 0; }
.ck-practice li { font-size:.85rem; color:var(--color-text-dim); line-height:1.7; margin-bottom:.3rem; }

/* ── Affirmations ── */
.ck-affirmations { display:flex; flex-direction:column; gap:.5rem; margin:var(--space-md) 0; }
.ck-aff {
  font-family:var(--font-accent); font-style:italic; font-size:.9rem;
  color:rgba(192,208,232,.7); padding:.75rem 1.25rem;
  border-radius:10px; background:rgba(15,12,30,.3);
  border:1px solid rgba(255,255,255,.03);
}

/* ── Signs Grid ── */
.ck-signs-grid { display:flex; flex-wrap:wrap; gap:.5rem; margin:var(--space-md) 0; }
.ck-sign {
  font-size:.8rem; padding:.5rem 1rem; border-radius:20px;
  background:rgba(15,12,30,.4); border:1px solid rgba(255,255,255,.05);
  color:var(--color-text-dim);
}

/* ── Tools Grid ── */
.ck-tools-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; margin:var(--space-md) 0; }
.ck-tool-card {
  padding:1.5rem; border-radius:14px;
  background:rgba(15,12,30,.4); border:1px solid rgba(255,255,255,.04);
}
.ck-tool-card h4 { font-family:var(--font-display); font-size:.9rem; color:var(--ck-color,#9b59b6); margin-bottom:.75rem; }
.ck-tool-card ul { list-style:none; padding:0; }
.ck-tool-card li { font-size:.82rem; color:var(--color-text-dim); line-height:1.7; margin-bottom:.4rem; }

/* ── Shadow Work ── */
.ck-shadow {
  padding:2rem; border-radius:16px;
  background:rgba(15,12,30,.5); border:1px solid rgba(255,255,255,.04);
  margin:var(--space-lg) 0;
}
.ck-shadow h4 { font-family:var(--font-display); font-size:.95rem; color:var(--ck-color,#9b59b6); margin-bottom:.75rem; }
.ck-shadow p { font-size:.88rem; color:var(--color-text-dim); line-height:1.8; }

/* ── Responsive ── */
@media (max-width:700px) {
  .ck-split { grid-template-columns:1fr; }
  .ck-tools-grid { grid-template-columns:1fr; }
  .ck-practice { padding:1.25rem 1.5rem; }
}
