/* Zodastro Detailed Kundli */
body.zdk-body { background:#20062B url("/wp-content/uploads/2026/07/purplezodiac.jpg") center/cover fixed; }
.zdk-wrap, .zdk-viewer { --gold:#fbbf24; --gold2:#f59e0b; --ink:#f1f5f9; --muted:#cbd5e1; --card:rgba(9,13,22,.92); max-width:1150px; margin:0 auto; padding:24px 12px 48px; color:var(--ink); font-family:Poppins,"Noto Sans Devanagari",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; box-sizing:border-box; }
.zdk-wrap *, .zdk-viewer *, .zdk-wrap *::before, .zdk-wrap *::after { box-sizing:border-box; }
.zdk-card, .zdk-hero { background:linear-gradient(135deg,rgba(9,13,22,.93) 0%,rgba(19,24,46,.93) 50%,rgba(31,17,46,.93) 100%); border:1px solid rgba(245,158,11,.3); border-radius:20px; padding:24px 22px; margin:0 0 20px; }
.zdk-hero { text-align:center; }
.zdk-kicker { color:#fcd34d; font-size:.85rem; letter-spacing:.06em; text-transform:uppercase; margin:0 0 6px; }
.zdk-h1 { font-size:clamp(1.5rem,3.8vw,2.3rem); font-weight:800; line-height:1.2; margin:0 0 10px; background:linear-gradient(to right,#fde047,#f59e0b,#fb923c); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:var(--gold); }
.zdk-lead { color:var(--muted); max-width:820px; margin:0 auto 14px; line-height:1.65; }
.zdk-badges { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.zdk-badges span { background:rgba(245,158,11,.12); border:1px solid rgba(245,158,11,.35); color:#fde68a; border-radius:999px; padding:6px 12px; font-size:.85rem; }
.zdk-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:20px; align-items:start; }
.zdk-card h2 { color:var(--gold); font-size:1.3rem; margin:0 0 12px; }
.zdk-card h3 { color:#fde68a; font-size:1.05rem; margin:16px 0 8px; }
.zdk-card p, .zdk-card li { color:var(--muted); line-height:1.6; }
.zdk-hint, .zdk-fine { font-size:.85rem; color:#94a3b8 !important; }
.zdk-form .zdk-row { display:flex; gap:12px; }
.zdk-form .zdk-tight { gap:8px; }
.zdk-form .zdk-tight > * { flex:1; min-width:0; }
.zdk-grow { flex:1; min-width:0; }
.zdk-field { display:block; margin:0 0 14px; position:relative; }
.zdk-field > span, .zdk-label { display:block; font-size:.85rem; font-weight:600; color:#fde68a; margin:0 0 6px; }
.zdk-form input[type=text], .zdk-form input[type=email], .zdk-form input[type=tel], .zdk-form select { width:100%; height:46px; padding:0 12px; border-radius:12px; border:1px solid rgba(148,163,184,.35); background:#0b1020; color:#f8fafc; font-size:1rem; font-family:inherit; outline:none; transition:border-color .2s, box-shadow .2s; }
.zdk-form select { appearance:auto; }
.zdk-form input:focus, .zdk-form select:focus { border-color:var(--gold2); box-shadow:0 0 0 3px rgba(245,158,11,.2); }
.zdk-form .zdk-invalid { border-color:#f87171 !important; }
.zdk-check { display:flex; gap:8px; align-items:flex-start; margin-top:8px; font-size:.85rem; color:var(--muted); cursor:pointer; }
.zdk-check input { margin-top:3px; }
.zdk-suggest { position:absolute; z-index:50; left:0; right:0; top:100%; margin:4px 0 0; padding:4px; list-style:none; background:#0f172a; border:1px solid rgba(245,158,11,.4); border-radius:12px; max-height:280px; overflow:auto; box-shadow:0 12px 30px rgba(0,0,0,.45); }
.zdk-suggest li { padding:10px 12px; border-radius:8px; cursor:pointer; color:#e2e8f0; font-size:.95rem; line-height:1.35; }
.zdk-suggest li.zdk-act, .zdk-suggest li:hover { background:rgba(245,158,11,.18); }
.zdk-suggest li small { color:#94a3b8; }
.zdk-suggest .zdk-none { cursor:default; color:#94a3b8; }
.zdk-place-picked { display:block; margin-top:6px; color:#86efac; font-size:.8rem; }
.zdk-pay { border:1px dashed rgba(245,158,11,.45); border-radius:14px; padding:12px 14px; margin:6px 0 14px; background:rgba(245,158,11,.06); }
.zdk-pay-line { display:flex; justify-content:space-between; align-items:center; color:var(--muted); padding:3px 0; }
.zdk-pay-line strong { color:var(--gold); font-size:1.1rem; }
.zdk-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:0 20px; border-radius:12px; border:1px solid rgba(245,158,11,.5); background:transparent; color:var(--gold) !important; font-weight:700; font-size:1rem; cursor:pointer; text-decoration:none !important; font-family:inherit; }
.zdk-btn-main { background:linear-gradient(135deg,#f59e0b,#ea580c); color:#1c1002 !important; border:0; box-shadow:0 8px 24px rgba(234,88,12,.35); }
.zdk-btn-main:hover { filter:brightness(1.07); }
.zdk-btn[disabled] { opacity:.5; cursor:not-allowed; filter:grayscale(.4); }
.zdk-btn-ghost { background:rgba(2,6,23,.6); }
.zdk-form .zdk-btn-main { width:100%; min-height:54px; font-size:1.1rem; margin-top:4px; }
.zdk-btn.zdk-busy::after { content:""; width:16px; height:16px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:zdk-spin .8s linear infinite; }
.zdk-msg { border-radius:12px; padding:10px 14px; margin:0 0 12px; background:rgba(248,113,113,.12); border:1px solid rgba(248,113,113,.45); color:#fecaca; font-size:.92rem; }
.zdk-msg a { color:#fde68a; text-decoration:underline; }
.zdk-msg.zdk-ok { background:rgba(74,222,128,.12); border-color:rgba(74,222,128,.45); color:#bbf7d0; }
.zdk-ticks { list-style:none; margin:0; padding:0; }
.zdk-ticks li { position:relative; padding:6px 0 6px 28px; border-bottom:1px solid rgba(148,163,184,.12); }
.zdk-ticks li::before { content:"✦"; position:absolute; left:4px; top:6px; color:var(--gold2); }
.zdk-why { margin-top:14px; padding:14px; border-radius:14px; background:rgba(2,6,23,.5); }
.zdk-why p { font-size:.9rem; margin:0; }
.zdk-steps { margin:0; padding-left:22px; }
.zdk-faq details { border-top:1px solid rgba(245,158,11,.18); padding:12px 0; }
.zdk-faq details:first-of-type { border-top:0; }
.zdk-faq summary { cursor:pointer; font-weight:600; color:var(--ink); }
.zdk-faq details p { margin:10px 0 0; }
.zdk-mine ul { list-style:none; margin:0; padding:0; }
.zdk-mine li { display:flex; flex-wrap:wrap; gap:6px 12px; align-items:baseline; padding:10px 0; border-bottom:1px solid rgba(148,163,184,.12); }
.zdk-mine a { color:var(--gold) !important; }
.zdk-mine span { color:#94a3b8; font-size:.85rem; }
.zdk-mine em { color:#fca5a5; font-size:.8rem; }
.zdk-center { text-align:center; }
.zdk-spin { display:inline-block; width:16px; height:16px; border:2px solid #f59e0b; border-right-color:transparent; border-radius:50%; animation:zdk-spin .8s linear infinite; vertical-align:-3px; margin-right:8px; }
@keyframes zdk-spin { to { transform:rotate(360deg); } }

/* Viewer */
.zdk-viewer { max-width:none; padding:16px 10px 48px; }
.zdk-toolbar { position:sticky; top:0; z-index:40; display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; max-width:860px; margin:0 auto 14px; padding:10px 12px; border-radius:16px; background:rgba(9,13,22,.92); border:1px solid rgba(245,158,11,.3); backdrop-filter:blur(6px); }
.zdk-tb-back { color:#fde68a !important; text-decoration:none !important; font-size:.92rem; }
.zdk-tb-actions { display:flex; gap:8px; flex-wrap:wrap; }
.zdk-progress { max-width:860px; margin:0 auto 14px; padding:14px 16px; border-radius:16px; background:rgba(9,13,22,.92); border:1px solid rgba(245,158,11,.3); }
.zdk-progress-text { color:#fde68a; font-weight:600; margin-bottom:8px; }
.zdk-bar { height:8px; border-radius:99px; background:rgba(148,163,184,.25); overflow:hidden; }
.zdk-bar i { display:block; height:100%; width:0; background:linear-gradient(90deg,#f59e0b,#ea580c); transition:width .5s; }
.zdk-progress .zdk-fine { margin:8px 0 0; }
.zdk-src { position:absolute; left:-99999px; top:0; width:794px; visibility:hidden; }
.zdk-pages-wrap { max-width:100%; overflow:hidden; }
.zdk-pages { width:794px; margin:0 auto; transform-origin:top left; }
.zdk-pdf-stage { position:fixed; left:-12000px; top:0; width:794px; z-index:-1; }
.zdk-overlay { position:fixed; inset:0; z-index:99999; background:rgba(2,6,23,.82); display:flex; align-items:center; justify-content:center; color:#fde68a; font:600 1.05rem Poppins,"Noto Sans Devanagari",sans-serif; text-align:center; padding:20px; }

/* A4 page (794 x 1123 CSS px) */
.zdk-page { width:794px; height:1123px; background:#fffdf7; color:#1f2937; position:relative; overflow:hidden; margin:0 0 18px; box-shadow:0 10px 30px rgba(0,0,0,.35); font-family:"Noto Sans Devanagari",Poppins,"Segoe UI",Arial,sans-serif; font-size:13.4px; line-height:1.62; }
.zdk-page::before { content:""; position:absolute; inset:14px; border:1.5px solid #e8c48a; border-radius:4px; pointer-events:none; }
.zdk-page-head, .zdk-page-foot { position:absolute; left:40px; right:40px; display:flex; justify-content:space-between; font-size:10.5px; color:#9a3412; letter-spacing:.02em; }
.zdk-page-head { top:24px; border-bottom:1px solid #f1d9ae; padding-bottom:5px; }
.zdk-page-head b { font-family:Cinzel,serif; letter-spacing:.12em; }
.zdk-page-foot { bottom:22px; border-top:1px solid #f1d9ae; padding-top:5px; }
.zdk-page-body { position:absolute; top:58px; bottom:52px; left:44px; right:44px; overflow:hidden; }
.zdk-page-inner { transform-origin:top left; }
.zdk-page h2 { font-family:Poppins,"Noto Sans Devanagari",sans-serif; color:#7c2d12; font-size:21px; line-height:1.3; margin:0 0 12px; padding-bottom:6px; border-bottom:2px solid #f59e0b; }
.zdk-page h3 { color:#9a3412; font-size:15.5px; margin:14px 0 6px; line-height:1.35; }
.zdk-page h4 { color:#7c2d12; margin:0 0 6px; font-size:14px; }
.zdk-page p { margin:0 0 9px; text-align:justify; }
.zdk-page ul { margin:0 0 10px; padding-left:22px; }
.zdk-page li { margin:0 0 4px; }
.zdk-page strong { color:#7c2d12; }
.zdk-page .zdk-cont { margin-top:0; }
.zdk-small { font-size:11px; color:#6b7280; line-height:1.5; }
.zdk-lead { font-size:14px; }
.zdk-page .zdk-lead { color:#374151; max-width:none; }
.zdk-tbl { width:100%; border-collapse:collapse; margin:0 0 12px; font-size:12px; line-height:1.4; }
.zdk-tbl th, .zdk-tbl td { border:1px solid #f0d6a8; padding:5px 6px; text-align:left; vertical-align:top; }
.zdk-tbl thead th { background:#7c2d12; color:#fff7ed; font-weight:600; }
.zdk-tbl tbody tr:nth-child(even) td { background:#fff7e8; }
.zdk-tbl tbody th { background:#fff1d6; color:#7c2d12; width:28%; }
.zdk-tbl-sm { font-size:11.2px; }
.zdk-tbl-sm th, .zdk-tbl-sm td { padding:4px 5px; }
.zdk-tbl small { color:#9ca3af; font-weight:400; }
.zdk-tbl thead small { color:#fde7c7; }
.zdk-tbl tr.zdk-on td { background:#fde68a !important; font-weight:600; }
.zdk-ok { color:#15803d; font-weight:600; }
.zdk-warn { color:#b45309; font-weight:600; }
.zdk-kv { width:100%; border-collapse:collapse; font-size:12.4px; margin:0 0 10px; }
.zdk-kv th, .zdk-kv td { border-bottom:1px solid #f3e1bf; padding:5px 6px; text-align:left; vertical-align:top; }
.zdk-kv th { color:#9a3412; font-weight:600; width:44%; }
.zdk-2col { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.zdk-2col h3:first-child { margin-top:0; }
.zdk-avk .zdk-kv { columns:2; }
.zdk-avk .zdk-kv tbody { display:grid; grid-template-columns:1fr 1fr; column-gap:18px; }
.zdk-avk .zdk-kv tr { display:grid; grid-template-columns:44% 56%; }
.zdk-chart-row { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin:4px 0 6px; }
.zdk-chart-row figure { margin:0; text-align:center; }
.zdk-chart-row figcaption { font-weight:700; color:#7c2d12; margin-top:4px; }
.zdk-chart { width:100%; height:auto; display:block; }
.zdk-yogas { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:10px; }
.zdk-yoga { border:1px solid #f0d6a8; background:#fff7e8; border-radius:8px; padding:8px 10px; font-size:12px; line-height:1.45; }
.zdk-yoga strong { display:block; margin-bottom:2px; }
.zdk-stones { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:6px; }
.zdk-stone { border:1px solid #f0c27a; background:linear-gradient(135deg,#fff7e6,#ffedd5); border-radius:10px; padding:10px; text-align:center; }
.zdk-stone span { display:block; font-size:11px; color:#9a3412; }
.zdk-stone strong { font-size:13.5px; }
.zdk-mantra { font-size:11.5px; }
.zdk-note-box { margin-top:18px; padding:12px 14px; border-radius:10px; background:#fff7e8; border:1px solid #f0d6a8; }
.zdk-note-box p { font-size:12px; margin:0; }
.zdk-toc { margin:0 0 6px; padding:0; list-style:none; counter-reset:toc; }
.zdk-toc li { display:flex; align-items:baseline; gap:8px; padding:6px 0; border-bottom:1px dotted #e5c48e; font-size:13.5px; counter-increment:toc; }
.zdk-toc li::before { content:counter(toc) "."; color:#b45309; font-weight:700; min-width:22px; }
.zdk-toc li span { flex:1; }
.zdk-toc li b { color:#7c2d12; }
.zdk-wait { color:#b45309; font-weight:600; }
/* cover */
.zdk-page-bare .zdk-page-body { top:40px; bottom:40px; left:40px; right:40px; }
.zdk-cover-page { background:radial-gradient(circle at 50% 30%,#3b0764 0%,#1e0533 55%,#12021f 100%); color:#fde68a; }
.zdk-cover-page::before { border-color:#f59e0b; inset:16px; border-width:2px; }
.zdk-cover-in { height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.zdk-cover-brand { font-family:Cinzel,serif; letter-spacing:.35em; font-size:20px; color:#fbbf24; }
.zdk-cover-logo { max-height:60px; max-width:240px; }
.zdk-om { font-size:46px; color:#f59e0b; line-height:1; margin:14px 0 4px; }
.zdk-cover-page h1 { font-family:Poppins,"Noto Sans Devanagari",sans-serif; font-size:36px; line-height:1.25; margin:6px 0 4px; color:#fde68a; }
.zdk-cover-sub { color:#fcd34d; font-size:14px; margin:0 0 18px; }
.zdk-cover-chart { width:300px; margin:0 0 18px; filter:drop-shadow(0 8px 20px rgba(0,0,0,.4)); }
.zdk-cover-for { text-transform:uppercase; letter-spacing:.2em; font-size:11px; color:#e9d5ff; margin:0; }
.zdk-cover-name { font-size:30px; font-weight:700; color:#fff; margin:2px 0 6px; }
.zdk-cover-meta { color:#e9d5ff; font-size:13px; margin:0 0 4px; }
.zdk-cover-site { margin-top:20px; color:#fbbf24; letter-spacing:.2em; font-size:12px; }
.zdk-end-page .zdk-end-in { height:100%; display:flex; flex-direction:column; justify-content:center; text-align:center; padding:0 30px; }
.zdk-end-page .zdk-end-in p { text-align:center; }

@media (max-width:900px) { .zdk-grid { grid-template-columns:1fr; } }
@media (max-width:600px) {
	.zdk-card, .zdk-hero { padding:18px 14px; border-radius:16px; }
	.zdk-wrap { padding:14px 8px 32px; }
	.zdk-form .zdk-row { flex-direction:column; gap:0; }
	.zdk-form .zdk-tight { flex-direction:row; gap:6px; }
	.zdk-toolbar { border-radius:12px; }
	.zdk-btn { padding:0 14px; font-size:.92rem; }
}

@media print {
	@page { size:A4; margin:0; }
	body * { visibility:hidden !important; }
	#zdk-pages, #zdk-pages * { visibility:visible !important; }
	#zdk-pages { position:absolute; left:0; top:0; transform:none !important; width:210mm; }
	.zdk-pages-wrap { height:auto !important; overflow:visible !important; }
	.zdk-page { margin:0; box-shadow:none; page-break-after:always; break-after:page; width:210mm; height:297mm; }
	body { background:#fff !important; }
	* { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
}
