*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: hidden; max-width: 100vw; }
body { font-family: 'Inter', sans-serif; background: #0e1424; color: #e5e5e5; margin: 0; min-height: 100vh; }

.jn-wrap { max-width:860px;margin:0 auto;padding:2rem 1.25rem 4rem; }

/* Hero */
.jp-hero { text-align:center;margin-bottom:2rem; }
.jp-hero h1 { font-size:clamp(1.5rem,4vw,2rem);font-weight:800;color:#fff;margin:0 0 0.35rem; }
.jp-hero h1 span { color:#f59e0b; }
.jp-hero p { color:#666;font-size:0.88rem;margin:0; }

/* Date picker form */
.jp-picker { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.5rem;margin-bottom:1.5rem; }
.jp-picker-row { display:flex;gap:0.75rem;flex-wrap:nowrap;align-items:flex-start; }
.jp-field { display:flex;flex-direction:column;gap:0.3rem;flex:0 0 auto; }
.jp-place-wrap { flex:1 1 auto;min-width:160px; }
.jp-submit-wrap { display:flex;flex-direction:column;justify-content:flex-start;padding-top:1.35rem;flex-shrink:0; }
.jp-submit { background:#f59e0b;color:#000;border:none;border-radius:8px;padding:0.65rem 1.25rem;font-size:0.88rem;font-weight:700;font-family:'Inter',sans-serif;cursor:pointer;white-space:nowrap;transition:background 0.15s; }
.jp-submit:hover { background:#fbbf24; }

/* 5 Elements grid */
.jp-elements { display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:1.5rem; }
.jp-el { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;position:relative;overflow:hidden; }
.jp-el::before { content:'';position:absolute;top:0;left:0;right:0;height:3px; }
.jp-el.vara::before   { background:#60a5fa; }
.jp-el.tithi::before  { background:#f59e0b; }
.jp-el.nak::before    { background:#a78bfa; }
.jp-el.yoga::before   { background:#34d399; }
.jp-el.karana::before { background:#f87171; }
.jp-el-label { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:0.5rem; }
.jp-el.vara .jp-el-label   { color:#60a5fa; }
.jp-el.tithi .jp-el-label  { color:#f59e0b; }
.jp-el.nak .jp-el-label    { color:#a78bfa; }
.jp-el.yoga .jp-el-label   { color:#34d399; }
.jp-el.karana .jp-el-label { color:#f87171; }
.jp-el-name { font-size:1.25rem;font-weight:800;color:#fff;margin-bottom:0.2rem;line-height:1.2; }
.jp-el-sub { font-size:0.8rem;color:#666;margin-bottom:0.75rem; }
.jp-el-quality { display:inline-flex;align-items:center;padding:0.15rem 0.5rem;border-radius:999px;font-size:0.7rem;font-weight:700;margin-bottom:0.75rem; }
.quality-good { background:rgba(52,211,153,0.12);color:#34d399;border:1px solid rgba(52,211,153,0.2); }
.quality-bad  { background:rgba(248,113,113,0.12);color:#f87171;border:1px solid rgba(248,113,113,0.2); }
.quality-mixed{ background:rgba(245,158,11,0.1);color:#f59e0b;border:1px solid rgba(245,158,11,0.2); }
.jp-progress-wrap { margin-top:auto; }
.jp-progress-label { display:flex;justify-content:space-between;font-size:0.7rem;color:#555;margin-bottom:0.3rem; }
.jp-progress-bar { background:#111827;border-radius:999px;height:5px;overflow:hidden; }
.jp-progress-fill { height:100%;border-radius:999px;background:#f59e0b;transition:width 0.6s ease; }
.jp-el.vara .jp-progress-fill   { background:#60a5fa; }
.jp-el.tithi .jp-progress-fill  { background:#f59e0b; }
.jp-el.nak .jp-progress-fill    { background:#a78bfa; }
.jp-el.yoga .jp-progress-fill   { background:#34d399; }
.jp-el.karana .jp-progress-fill { background:#f87171; }

/* Sun / Moon strip */
.jp-luminary { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1rem 1.4rem;margin-bottom:1.5rem;display:flex;gap:1.5rem;flex-wrap:wrap; }
.jp-lum-item { display:flex;align-items:center;gap:0.75rem; }
.jp-lum-icon { font-size:1.5rem; }
.jp-lum-label { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:#666; }
.jp-lum-val { font-size:0.95rem;font-weight:700;color:#e5e5e5; }
.jp-lum-deg { font-size:0.8rem;color:#555; }

/* Paksha badge */
.jp-paksha { display:inline-flex;align-items:center;gap:0.5rem;background:rgba(245,158,11,0.07);border:1px solid rgba(245,158,11,0.15);border-radius:8px;padding:0.6rem 1rem;margin-bottom:1.5rem;font-size:0.88rem;color:#f59e0b;font-weight:600; }

/* Error */
.jp-error { background:#111827;border:1px solid #2a1a1a;border-radius:14px;padding:2rem;text-align:center;color:#f87171; }

/* Muhurat timings */
.jp-timings { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;margin-bottom:1.5rem; }
.jp-timings-title { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#888;margin-bottom:1rem; }
.jp-timings-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:0.75rem; }
.jp-timing-card { border-radius:10px;padding:0.85rem 1rem;display:flex;flex-direction:column;gap:0.2rem;position:relative;overflow:hidden; }
.jp-timing-card.bad  { background:rgba(248,113,113,0.07);border:1px solid rgba(248,113,113,0.18); }
.jp-timing-card.good { background:rgba(52,211,153,0.06);border:1px solid rgba(52,211,153,0.15); }
.jp-timing-card.info { background:rgba(96,165,250,0.06);border:1px solid rgba(96,165,250,0.15); }
.jp-timing-label { font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.07em; }
.jp-timing-card.bad  .jp-timing-label { color:#f87171; }
.jp-timing-card.good .jp-timing-label { color:#34d399; }
.jp-timing-card.info .jp-timing-label { color:#60a5fa; }
.jp-timing-time { font-size:0.95rem;font-weight:800;color:#fff; }
.jp-timing-note { font-size:0.7rem;color:#555;margin-top:0.15rem; }
.jp-sunrise-row { display:flex;gap:1.5rem;margin-bottom:0.9rem;padding-bottom:0.9rem;border-bottom:1px solid #1e1e1e; }
.jp-sr-item { display:flex;align-items:center;gap:0.5rem; }
.jp-sr-icon { font-size:1.1rem; }
.jp-sr-label { font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:#666; }
.jp-sr-val { font-size:0.95rem;font-weight:700;color:#e5e5e5; }

/* Developer API callout */
.jp-api-callout { background:#0d0d0d;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;margin-bottom:1.5rem; }
.jp-api-callout-head { display:flex;align-items:center;justify-content:space-between;margin-bottom:0.75rem;flex-wrap:wrap;gap:0.5rem; }
.jp-api-toggle { background:transparent;border:1px solid #1e2840;color:#888;border-radius:6px;padding:0.3rem 0.7rem;font-size:0.75rem;font-family:'Inter',sans-serif;cursor:pointer;transition:all 0.15s; }
.jp-api-toggle:hover { border-color:#f59e0b;color:#f59e0b; }
.jp-api-code { display:none;background:#060606;border:1px solid #1a1a1a;border-radius:8px;padding:1rem;font-size:0.72rem;font-family:'JetBrains Mono',monospace;color:#9ca3af;overflow-x:auto;max-height:320px;overflow-y:auto;line-height:1.6; }
.jp-api-code.open { display:block; }
.jp-api-code .k { color:#f59e0b; }
.jp-api-code .s { color:#34d399; }
.jp-api-code .n { color:#60a5fa; }

/* Transit chart */
.jp-transit { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;margin-bottom:1.5rem; }
.jp-transit-title { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#f59e0b;margin-bottom:0.75rem; }
.jp-transit svg { display:block;width:100%;height:auto;border-radius:10px;overflow:hidden; }
.jp-transit-legend { display:flex;flex-wrap:wrap;gap:0.5rem 1rem;margin-top:0.75rem; }
.jp-transit-legend-item { display:flex;align-items:center;gap:0.35rem;font-size:0.72rem;color:#666; }
.jp-transit-legend-dot { width:8px;height:8px;border-radius:50%;flex-shrink:0; }

/* Masa / Samvat bar */
.jp-masa { display:flex;flex-wrap:wrap;gap:0.5rem 1.5rem;background:#111827;border:1px solid #1e1e1e;border-radius:10px;padding:0.75rem 1.25rem;margin-bottom:1.5rem;align-items:center; }
.jp-masa-item { display:flex;align-items:center;gap:0.4rem;font-size:0.82rem; }
.jp-masa-label { color:#555;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;font-size:0.65rem; }
.jp-masa-val { color:#e5e5e5;font-weight:700; }

/* Extra muhurtas */
.jp-timing-card.shubh { background:rgba(167,139,250,0.06);border:1px solid rgba(167,139,250,0.15); }
.jp-timing-card.shubh .jp-timing-label { color:#a78bfa; }

/* Choghadiya */
.jp-chog { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;margin-bottom:1.5rem; }
.jp-chog-title { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#888;margin-bottom:0.75rem; }
.jp-chog-period { font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:#555;margin:0.85rem 0 0.5rem; }
.jp-chog-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:0.5rem; }
.jp-chog-slot { border-radius:8px;padding:0.6rem 0.85rem;border:1px solid transparent;position:relative; }
.jp-chog-slot.good    { background:rgba(52,211,153,0.06);border-color:rgba(52,211,153,0.18); }
.jp-chog-slot.neutral { background:rgba(96,165,250,0.05);border-color:rgba(96,165,250,0.15); }
.jp-chog-slot.bad     { background:rgba(248,113,113,0.05);border-color:rgba(248,113,113,0.12); }
.jp-chog-slot.current { outline:2px solid #f59e0b;outline-offset:1px; }
.jp-chog-name { font-size:0.9rem;font-weight:800;color:#fff;margin-bottom:0.15rem; }
.jp-chog-slot.good    .jp-chog-name { color:#34d399; }
.jp-chog-slot.neutral .jp-chog-name { color:#60a5fa; }
.jp-chog-slot.bad     .jp-chog-name { color:#f87171; }
.jp-chog-time { font-size:0.7rem;color:#555; }
.jp-chog-lord { font-size:0.62rem;color:#444;margin-top:0.15rem; }
.jp-chog-now  { position:absolute;top:0.35rem;right:0.5rem;font-size:0.6rem;font-weight:700;color:#f59e0b;text-transform:uppercase;letter-spacing:0.06em; }

/* Hora table */
.jp-hora { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;margin-bottom:1.5rem; }
.jp-hora-title { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#888;margin-bottom:0.1rem; }
.jp-hora-toggle { background:transparent;border:1px solid #1e2840;color:#888;border-radius:6px;padding:0.3rem 0.7rem;font-size:0.72rem;font-family:'Inter',sans-serif;cursor:pointer;transition:all 0.15s;margin-bottom:0.75rem; }
.jp-hora-toggle:hover { border-color:#f59e0b;color:#f59e0b; }
.jp-hora-grid { display:none;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:0.4rem; }
.jp-hora-grid.open { display:grid; }
.jp-hora-row { display:flex;align-items:center;gap:0.6rem;border-radius:7px;padding:0.45rem 0.75rem;border:1px solid #1a1a1a; }
.jp-hora-row.current { border-color:#f59e0b;background:rgba(245,158,11,0.06); }
.jp-hora-num { font-size:0.65rem;color:#444;width:1.5rem;text-align:right;flex-shrink:0; }
.jp-hora-lord { font-size:0.8rem;font-weight:700;color:#e5e5e5;width:5rem;flex-shrink:0; }
.jp-hora-time { font-size:0.68rem;color:#555; }
.jp-hora-act  { font-size:0.65rem;color:#444;margin-top:0.1rem; }

/* Festivals */
.jp-festivals { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;margin-bottom:1.5rem; }
.jp-festivals-title { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#888;margin-bottom:0.85rem; }
.jp-fest-list { display:flex;flex-direction:column;gap:0.5rem; }
.jp-fest-item { display:flex;align-items:flex-start;gap:0.75rem;padding:0.7rem 0.9rem;border-radius:10px;border:1px solid #1e1e1e;background:#0d0d0d; }
.jp-fest-item.imp-1 { border-color:rgba(245,158,11,0.2);background:rgba(245,158,11,0.04); }
.jp-fest-item.imp-2 { border-color:rgba(167,139,250,0.15);background:rgba(167,139,250,0.03); }
.jp-fest-dot { width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:0.35rem; }
.imp-1 .jp-fest-dot { background:#f59e0b; }
.imp-2 .jp-fest-dot { background:#a78bfa; }
.imp-3 .jp-fest-dot { background:#555; }
.jp-fest-name-row { display:flex;align-items:center;flex-wrap:wrap;gap:0.4rem;margin-bottom:0.15rem; }
.jp-fest-name { font-size:0.9rem;font-weight:700;color:#e5e5e5; }
.jp-fest-badge { display:inline-flex;align-items:center;gap:0.25rem;font-size:0.58rem;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;padding:0.15rem 0.45rem;border-radius:4px; }
.jp-fest-badge-fast { background:rgba(139,92,246,0.12);color:#a78bfa;border:1px solid rgba(139,92,246,0.2); }
.jp-fest-badge-time { background:rgba(245,158,11,0.1);color:#f59e0b;border:1px solid rgba(245,158,11,0.18); }
.jp-fest-name-hi { font-size:0.78rem;color:#888;margin-bottom:0.2rem; }
.jp-fest-desc { font-size:0.75rem;color:#555;line-height:1.5; }
.jp-fest-tithi-window { font-size:0.68rem;color:#4b5563;margin-top:0.2rem; }
.jp-fest-tithi-window i { color:#6b7280;margin-right:0.2rem; }
.jp-fest-region { font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:#444;margin-top:0.25rem; }

/* Subscribe banner */
.jp-subscribe { background:linear-gradient(135deg,#0a1628 0%,#0d1f0d 100%);border:1px solid rgba(52,211,153,0.15);border-radius:14px;padding:1.4rem 1.5rem;margin-bottom:1.5rem;text-align:center; }
.jp-subscribe-title { font-size:1rem;font-weight:800;color:#fff;margin-bottom:0.3rem; }
.jp-subscribe-sub { font-size:0.82rem;color:#666;margin-bottom:1.1rem; }
.jp-subscribe-btns { display:flex;gap:0.75rem;justify-content:center;flex-wrap:wrap; }
.jp-sub-btn { display:inline-flex;align-items:center;gap:0.45rem;border-radius:8px;padding:0.6rem 1.2rem;font-size:0.85rem;font-weight:700;text-decoration:none;transition:opacity 0.15s; }
.jp-sub-btn:hover { opacity:0.85; }
.jp-sub-btn-wa  { background:#25D366;color:#000; }
.jp-sub-btn-tg  { background:#229ED9;color:#fff; }

/* CTA */
.jp-cta { background:linear-gradient(135deg,#111 0%,#0f0d08 100%);border:1px solid rgba(245,158,11,0.18);border-radius:14px;padding:1.25rem 1.5rem;text-align:center; }

/* Daily Vedic Digest */
.jp-digest { background:#111827;border:1px solid #1e1e1e;border-radius:14px;padding:1.25rem 1.4rem;margin-bottom:1.5rem;position:relative;overflow:hidden; }
.jp-digest::before { content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#f59e0b 0%,#a78bfa 50%,#60a5fa 100%); }
.jp-digest-head { display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:0.5rem; }
.jp-digest-label { font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#f59e0b;margin-bottom:0.2rem; }
.jp-digest-meta { font-size:0.78rem;color:#555; }
.jp-digest-tabs { display:flex;gap:0.4rem;margin-bottom:1rem;flex-wrap:wrap; }
.jp-dtab { background:transparent;border:1px solid #1e2840;color:#666;border-radius:8px;padding:0.35rem 0.9rem;font-size:0.78rem;font-weight:600;font-family:'Inter',sans-serif;cursor:pointer;transition:all 0.15s;display:inline-flex;align-items:center;gap:0.35rem; }
.jp-dtab:hover { border-color:#f59e0b;color:#f59e0b; }
.jp-dtab.jd-active { background:rgba(245,158,11,0.1);border-color:#f59e0b;color:#f59e0b; }
.jp-dpanel { display:none; }
.jp-dpanel.jd-active { display:block; }
.jp-digest-skel { display:flex;flex-direction:column;gap:0.45rem; }
.jp-dskel-line { background:linear-gradient(90deg,#1f2937 25%,#283548 50%,#1f2937 75%);background-size:200% 100%;animation:jd-shimmer 1.4s infinite;border-radius:4px;height:9px; }
@keyframes jd-shimmer { to { background-position:-200% 0; } }
.jp-digest-empty { text-align:center;padding:1.5rem 1rem;color:#555;font-size:0.82rem; }
.jp-digest-empty i { font-size:1.4rem;color:#374151;display:block;margin-bottom:0.5rem; }
.jp-cosmic-grid { display:grid;grid-template-columns:1fr 1fr;gap:1rem; }
@media(max-width:580px){ .jp-cosmic-grid { grid-template-columns:1fr; } }
.jp-ccard { background:#0d0d0d;border:1px solid #1a1a1a;border-radius:12px;padding:1rem 1.1rem; }
.jp-ccard-lbl { font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:0.65rem;display:flex;align-items:center;gap:0.4rem; }
.jp-ccard.energy .jp-ccard-lbl { color:#f59e0b; }
.jp-ccard.wisdom .jp-ccard-lbl { color:#34d399; }
.jp-ccard-txt { font-size:0.84rem;color:#c9d1d9;line-height:1.75; }
.jp-ccard.wisdom .jp-ccard-txt { font-style:italic;border-left:2px solid rgba(52,211,153,0.35);padding-left:0.7rem; }
.jp-rashi-chips { display:grid;grid-template-columns:repeat(6,1fr);gap:0.35rem;margin-bottom:0.85rem; }
@media(max-width:480px){ .jp-rashi-chips { grid-template-columns:repeat(4,1fr); } }
.jp-rc { background:#0d0d0d;border:1px solid #1a1a1a;border-radius:8px;padding:0.4rem 0.2rem;text-align:center;cursor:pointer;transition:all 0.15s; }
.jp-rc:hover { border-color:#a78bfa; }
.jp-rc.jd-active { background:rgba(167,139,250,0.08);border-color:#a78bfa; }
.jp-rc .rc-ico { display:block;margin:0 auto 0.15rem;filter:opacity(0.6);transition:filter 0.15s; }
.jp-rc:hover .rc-ico { filter:opacity(0.9); }
.jp-rc.jd-active .rc-ico { filter:opacity(1); }
.rc-title-ico { width:22px;height:22px;flex-shrink:0;filter:opacity(0.7); }
.jp-rc .rc-nm { display:block;font-size:0.58rem;font-weight:600;color:#444;margin-top:0; }
.jp-rc.jd-active .rc-nm { color:#c4b5fd; }
.jp-rashi-preds { background:#0d0d0d;border:1px solid #1a1a1a;border-radius:12px;overflow:hidden; }
.jp-rashi-header { padding:0.6rem 1rem;border-bottom:1px solid #111;font-size:0.78rem;font-weight:700;color:#c4b5fd;display:flex;align-items:center;gap:0.4rem; }
.jp-pred-row { display:flex;align-items:center;gap:0.7rem;padding:0.58rem 1rem;border-bottom:1px solid #111111; }
.jp-pred-row:last-child { border-bottom:none; }
.jp-pred-ico { width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:0.72rem;flex-shrink:0; }
.jp-pred-ico.career { background:rgba(96,165,250,0.1);color:#60a5fa; }
.jp-pred-ico.love   { background:rgba(248,113,113,0.1);color:#f87171; }
.jp-pred-ico.money  { background:rgba(52,211,153,0.1);color:#34d399; }
.jp-pred-ico.family { background:rgba(245,158,11,0.1);color:#f59e0b; }
.jp-pred-ico.peace  { background:rgba(167,139,250,0.1);color:#a78bfa; }
.jp-pred-lbl { font-size:0.6rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:#4b5563;width:38px;flex-shrink:0; }
.jp-pred-txt { font-size:0.82rem;color:#c9d1d9;line-height:1.5; }
.jp-num-day { display:flex;align-items:center;gap:1rem;background:rgba(96,165,250,0.05);border:1px solid rgba(96,165,250,0.12);border-radius:12px;padding:0.85rem 1.1rem;margin-bottom:0.85rem; }
.jp-num-big { font-size:2.5rem;font-weight:800;color:#60a5fa;line-height:1;flex-shrink:0; }
.jp-num-theme { font-size:0.95rem;font-weight:700;color:#fff; }
.jp-num-intro { font-size:0.8rem;color:#666;line-height:1.6;margin-top:0.2rem; }
.jp-mk-chips { display:grid;grid-template-columns:repeat(9,1fr);gap:0.3rem;margin-bottom:0.85rem; }
.jp-mk-chip { background:#0d0d0d;border:1px solid #1a1a1a;border-radius:8px;padding:0.42rem 0;font-size:0.85rem;font-weight:700;color:#4b5563;cursor:pointer;text-align:center;transition:all 0.15s; }
.jp-mk-chip:hover { border-color:#60a5fa;color:#60a5fa; }
.jp-mk-chip.jd-active { background:rgba(96,165,250,0.08);border-color:#60a5fa;color:#60a5fa; }
.jp-mk-content { background:#0d0d0d;border:1px solid #1a1a1a;border-radius:12px;padding:0.9rem 1.1rem; }
.jp-mk-hdr { font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.07em;color:#60a5fa;margin-bottom:0.5rem; }
.jp-mk-txt { font-size:0.83rem;color:#c9d1d9;line-height:1.8; }

/* Light Theme */
[data-theme="light"] body { background:#fdf8f2; color:#0f2044; }

[data-theme="light"] .jp-hero h1 { color:#0f2044; }
[data-theme="light"] .jp-hero p  { color:#2a4a7f; }

[data-theme="light"] .jp-picker,
[data-theme="light"] .jp-el,
[data-theme="light"] .jp-luminary,
[data-theme="light"] .jp-timings,
[data-theme="light"] .jp-masa,
[data-theme="light"] .jp-chog,
[data-theme="light"] .jp-hora,
[data-theme="light"] .jp-digest,
[data-theme="light"] .jp-transit,
[data-theme="light"] .jp-festivals,
[data-theme="light"] .jp-api-callout {
    background: #ffffff;
    border-color: #e8ddd0;
}

[data-theme="light"] .jp-ccard,
[data-theme="light"] .jp-rashi-preds,
[data-theme="light"] .jp-mk-content,
[data-theme="light"] .jp-fest-item { background:#fef9f0; border-color:#e8ddd0; }

[data-theme="light"] .jp-el-name,
[data-theme="light"] .jp-lum-val,
[data-theme="light"] .jp-masa-val,
[data-theme="light"] .jp-timing-time,
[data-theme="light"] .jp-chog-name,
[data-theme="light"] .jp-hora-lord,
[data-theme="light"] .jp-fest-name,
[data-theme="light"] .jp-num-theme,
[data-theme="light"] .jp-subscribe-title,
[data-theme="light"] .jp-sr-val,
[data-theme="light"] .jp-rashi-header { color:#0f2044; }

[data-theme="light"] .jp-el-sub,
[data-theme="light"] .jp-lum-label,
[data-theme="light"] .jp-lum-deg,
[data-theme="light"] .jp-masa-label,
[data-theme="light"] .jp-timings-title,
[data-theme="light"] .jp-timing-note,
[data-theme="light"] .jp-chog-title,
[data-theme="light"] .jp-chog-time,
[data-theme="light"] .jp-chog-lord,
[data-theme="light"] .jp-hora-title,
[data-theme="light"] .jp-hora-time,
[data-theme="light"] .jp-hora-act,
[data-theme="light"] .jp-hora-num,
[data-theme="light"] .jp-fest-badge-fast { background:rgba(139,92,246,0.08);color:#7c3aed;border-color:rgba(139,92,246,0.2); }
[data-theme="light"] .jp-fest-badge-time { background:rgba(217,119,6,0.08);color:#b45309;border-color:rgba(217,119,6,0.2); }
[data-theme="light"] .jp-fest-tithi-window { color:#6b7280; }
[data-theme="light"] .jp-fest-desc,
[data-theme="light"] .jp-fest-name-hi,
[data-theme="light"] .jp-fest-region,
[data-theme="light"] .jp-transit-legend-item,
[data-theme="light"] .jp-subscribe-sub,
[data-theme="light"] .jp-digest-meta,
[data-theme="light"] .jp-pred-lbl,
[data-theme="light"] .jp-sr-label { color:#6b7280; }

[data-theme="light"] .jp-ccard-txt,
[data-theme="light"] .jp-pred-txt,
[data-theme="light"] .jp-mk-txt { color:#2a4a7f; }

[data-theme="light"] .jp-progress-bar { background:#e8ddd0; }

[data-theme="light"] .jp-sunrise-row,
[data-theme="light"] .jp-pred-row { border-bottom-color:#e8ddd0; }

[data-theme="light"] .jp-hora-row { border-color:#e8ddd0; }
[data-theme="light"] .jp-hora-row.current { border-color:#c8860a; background:rgba(200,134,10,0.06); }

[data-theme="light"] .jp-chog-slot.good    { background:rgba(52,211,153,0.08); border-color:rgba(52,211,153,0.3); }
[data-theme="light"] .jp-chog-slot.neutral { background:rgba(96,165,250,0.07); border-color:rgba(96,165,250,0.25); }
[data-theme="light"] .jp-chog-slot.bad     { background:rgba(248,113,113,0.07); border-color:rgba(248,113,113,0.2); }

[data-theme="light"] .jp-api-code { background:#f5f0e8; border-color:#e8ddd0; color:#2a4a7f; }
[data-theme="light"] .jp-api-toggle { border-color:#e8ddd0; color:#2a4a7f; }
[data-theme="light"] .jp-api-toggle:hover { border-color:#c8860a; color:#c8860a; }

[data-theme="light"] .jp-mk-chip { background:#fef9f0; border-color:#e8ddd0; color:#6b7280; }
[data-theme="light"] .jp-mk-chip:hover { border-color:#60a5fa; color:#2563eb; }
[data-theme="light"] .jp-mk-chip.jd-active { background:rgba(96,165,250,0.1); border-color:#60a5fa; color:#2563eb; }

[data-theme="light"] .jp-rc { background:#fef9f0; border-color:#e8ddd0; }
[data-theme="light"] .jp-rc .rc-nm { color:#6b7280; }
[data-theme="light"] .jp-rc .rc-ico { filter:brightness(0) saturate(100%) invert(9%) sepia(77%) saturate(1209%) hue-rotate(197deg) brightness(93%) contrast(104%) opacity(0.85); }
[data-theme="light"] .jp-rc:hover .rc-ico { filter:brightness(0) saturate(100%) invert(9%) sepia(77%) saturate(1209%) hue-rotate(197deg) brightness(93%) contrast(104%); }
[data-theme="light"] .jp-rc.jd-active .rc-ico { filter:brightness(0) saturate(100%) invert(9%) sepia(77%) saturate(1209%) hue-rotate(197deg) brightness(93%) contrast(104%); }
[data-theme="light"] .rc-title-ico { filter:brightness(0) saturate(100%) invert(9%) sepia(77%) saturate(1209%) hue-rotate(197deg) brightness(93%) contrast(104%); }

[data-theme="light"] .jp-dtab { border-color:#e8ddd0; color:#6b7280; }
[data-theme="light"] .jp-dtab:hover { border-color:#c8860a; color:#c8860a; }
[data-theme="light"] .jp-dtab.jd-active { background:rgba(200,134,10,0.08); border-color:#c8860a; color:#c8860a; }

[data-theme="light"] .jp-dskel-line { background:linear-gradient(90deg,#f0ebe3 25%,#e8ddd0 50%,#f0ebe3 75%); background-size:200% 100%; }

[data-theme="light"] .jp-subscribe { background:linear-gradient(135deg,#f0fff4 0%,#fdf8f2 100%); border-color:rgba(52,211,153,0.25); }

[data-theme="light"] .jp-cta { background:linear-gradient(135deg,#ffffff 0%,#fef9f0 100%); border-color:rgba(200,134,10,0.2); }

/* ── Vedic Ankashastra Universal Day ── */
.jp-anka-uni {
    background: var(--card-bg);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
}
.jp-anka-head {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--gold);
    margin-bottom: 0.75rem;
}
.jp-anka-body {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 0.6rem;
}
.jp-anka-num {
    font-size: 2.5rem;
    font-weight: 900;
    color: var(--gold);
    font-family: 'Cinzel', 'EB Garamond', serif;
    line-height: 1;
    min-width: 2.5rem;
    text-align: center;
}
.jp-anka-planet { display: flex; flex-direction: column; gap: 0.15rem; }
.jp-anka-planet-name { font-size: 1rem; font-weight: 700; color: var(--text); }
.jp-anka-planet-sub { font-size: 0.72rem; color: var(--text3); }
.jp-anka-nature {
    font-size: 0.82rem;
    color: var(--text2);
    line-height: 1.6;
    margin: 0;
}
.jp-anka-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 1rem;
    margin-top: 0.5rem;
    font-size: 0.7rem;
    color: var(--text3);
}
.jp-anka-footer i { margin-right: 0.25rem; color: var(--gold); }
[data-theme="light"] .jp-anka-uni { background:#fef9f0; border-color:#e8ddd0; }
[data-theme="light"] .jp-anka-nature { color:#4b5563; }
