/* Koe Birth Chart (Prokerala) – minimal, theme-friendly UI */
.koe-bc{max-width:100%;margin:0 auto; margin-bottom: 30px;}
.koe-bc__card{background:#fff;border-radius:18px;box-shadow:0 12px 28px rgba(0,0,0,.06);padding:26px}
.koe-bc__header{margin-bottom:18px}
.koe-bc__title{font-size:28px;font-weight:700;line-height:1.2;margin-bottom:6px}
.koe-bc__subtitle{opacity:.7}
.koe-bc__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.koe-bc__grid--2{grid-template-columns:1fr 1fr}
.koe-bc__field{display:flex;flex-direction:column;gap:8px}
.koe-bc__field span{font-weight:600}
.koe-bc__field input[type="text"],
.koe-bc__field input[type="date"],
.koe-bc__field input[type="time"]{
  width:100%;padding:12px 14px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff
}
.koe-bc__field--wide{grid-column:1 / -1}
.koe-bc__hint{font-size:13px;opacity:.7;line-height:1.35}
.koe-bc__check{display:flex;align-items:flex-start;gap:10px}
.koe-bc__check input{margin-top:3px}
.koe-bc__advanced{margin-top:10px}
.koe-bc__advanced summary{cursor:pointer;font-weight:700}
.koe-bc__actions{display:flex;align-items:center;gap:14px;margin-top:18px}
.koe-bc__btn{appearance:none;border:0;border-radius:999px;padding:12px 22px;font-weight:700;cursor:pointer;background:#111;color:#fff}
.koe-bc__status{font-size:14px;opacity:.8}
.koe-bc__result{margin-top:18px}
.koe-bc__chips{display:flex;flex-wrap:wrap;gap:10px}
.koe-bc__chip{background:rgba(0,0,0,.04);border-radius:999px;padding:8px 12px;display:flex;gap:8px;align-items:center}
.koe-bc__chip-label{opacity:.7}
.koe-bc__section{margin-top:18px}
.koe-bc__section-title{font-weight:800;margin-bottom:8px}
.koe-bc__asc-main{display:flex;align-items:center;gap:10px}
.koe-bc__asc-sign{font-size:20px;font-weight:800}
.koe-bc__badge{font-size:12px;padding:4px 10px;border-radius:999px;background:rgba(0,0,0,.06)}
.koe-bc__badge--exact{background:rgba(0,0,0,.08)}
.koe-bc__badge--approx{background:rgba(0,0,0,.06)}
.koe-bc__muted{opacity:.75;line-height:1.4}
@media (max-width:560px){
  .koe-bc__grid{grid-template-columns:1fr}
  .koe-bc__card{padding:18px}
  .koe-bc__title{font-size:24px}
}

.koe-bc__geo input { 
  width: 80% !important;
  margin-right: 10px !important;
}

/* -------------------------------------------------------------------------
 * SVG Natal Chart (Phase 1)
 * ---------------------------------------------------------------------- */

.koe-bc-chart {
  margin: 16px 0 18px;
  padding: 14px;
  border-radius: 14px;
  background: rgba(0,0,0,0.03);
}

.koe-bc-chart__title {
  font-weight: 700;
  margin-bottom: 10px;
  font-size: 16px;
}

.koe-bc-chart__svg {
  width: 100%;
  height: auto;
  display: block;
  max-width: 520px;
  margin: 0 auto;
}

.koe-bc-chart__hint {
  margin-top: 10px;
  font-size: 12px;
  opacity: 0.8;
  text-align: center;
}

/* backgrounds */
.koe-bc-chart__bg {
  fill: #fff;
  stroke: rgba(0,0,0,0.10);
  stroke-width: 1;
}
.koe-bc-chart__bg--outer { fill: #fff; }
.koe-bc-chart__bg--inner { fill: rgba(0,0,0,0.01); }
.koe-bc-chart__bg--core  { fill: rgba(0,0,0,0.02); }

/* zodiac ring segments */
.koe-bc-chart__sign {
  stroke: rgba(0,0,0,0.08);
  stroke-width: 1;
}
.koe-bc-chart__sign--fire  { fill: rgba(255, 80, 80, 0.12); }
.koe-bc-chart__sign--earth { fill: rgba(80, 170, 90, 0.12); }
.koe-bc-chart__sign--air   { fill: rgba(60, 140, 255, 0.12); }
.koe-bc-chart__sign--water { fill: rgba(130, 90, 220, 0.12); }

.koe-bc-chart__sign-glyph {
  font-size: 18px;
  font-weight: 700;
  fill: rgba(0,0,0,0.75);
}

.koe-bc-chart__sign-name {
  font-size: 10px;
  letter-spacing: 0.2px;
  fill: rgba(0,0,0,0.70);
}

/* house lines + numbers */
.koe-bc-chart__cusp {
  stroke: rgba(0,0,0,0.18);
  stroke-width: 1;
}
.koe-bc-chart__cusp--axis {
  stroke: rgba(0,0,0,0.38);
  stroke-width: 2;
}

.koe-bc-chart__house-num {
  font-size: 12px;
  font-weight: 700;
  fill: rgba(0,0,0,0.45);
}

/* ASC/MC labels */
.koe-bc-chart__angle {
  font-size: 11px;
  font-weight: 800;
  fill: rgba(0,0,0,0.70);
}
.koe-bc-chart__angle--asc { fill: rgba(0,0,0,0.85); }
.koe-bc-chart__angle--mc  { fill: rgba(0,0,0,0.75); }

/* planets */
.koe-bc-chart__planet-dot {
  fill: #fff;
  stroke: rgba(0,0,0,0.25);
  stroke-width: 1.25;
}

.koe-bc-chart__planet-glyph {
  font-size: 16px;
  font-weight: 700;
  fill: rgba(0,0,0,0.85);
}

/* Planet interaction panel */
.koe-bc-chart__planet.is-active .koe-bc-chart__planet-dot {
  stroke: #000;
  stroke-width: 2;
}

.koe-bc-chart__info {
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(0,0,0,0.04);
}

.koe-bc-chart__info-title {
  font-weight: 700;
  margin-bottom: 4px;
}

.koe-bc-chart__info-meta {
  font-size: 14px;
  opacity: 0.85;
}

/* -------------------------------------------------------------------------
 * Interpretation text
 * ---------------------------------------------------------------------- */

.koe-bc-interpretation {
  margin: 14px 0 8px;
  padding: 14px;
  border-radius: 14px;
  background: rgba(0,0,0,0.03);
}

.koe-bc-interpretation__title {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 800;
}

.koe-bc-interpretation__p {
  margin: 0 0 10px;
  line-height: 1.55;
  font-size: 14px;
  opacity: 0.95;
}

.koe-bc-interpretation__p:last-child {
  margin-bottom: 0;
}

body.dark .koe-bc__card {
    background: #1e1e1e;
}
.koe-bc__geo-btn { cursor: pointer; }
