/* Yashtrology Tools — report & print styles */
:root{--ink:#1c2340;--muted:#6b6f80;--brand:#0f1a4a;--accent:#9a6a12;--gold:#c99a35;--bg:#fffdf8;--line:#e9dfc9;--g:#15803d;--y:#a16207;--r:#b91c1c}
.rpt{font-family:"EB Garamond","Georgia","Noto Serif",serif;font-size:11.5pt;color:var(--ink);font-size:11pt;line-height:1.5}
.rpt .pg{background:#fff;max-width:210mm;margin:0 auto 18px;padding:16mm 15mm 18mm;box-shadow:0 2px 18px rgba(15,26,74,.12);border-top:4px solid var(--gold);position:relative}
.rpt h2{font-family:"Cinzel",Georgia,serif;color:var(--brand);font-size:17pt;letter-spacing:.02em;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--gold);position:relative}
.rpt h2::after{content:"✦";position:absolute;right:0;bottom:-.62em;background:#fff;color:var(--gold);font-size:11pt;padding-left:6px}
.rpt h3{font-family:"Cinzel",Georgia,serif;letter-spacing:.01em;color:var(--accent);font-size:12.5pt;margin:12px 0 6px}
.rpt h4{margin:6px 0;color:var(--brand);font-family:Arial,sans-serif;font-size:10.5pt}
.rpt p{margin:5px 0 7px;text-align:justify}
.rpt .part{font:600 9pt Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.rpt table{width:100%;border-collapse:collapse;margin:6px 0 10px;font-family:Arial,sans-serif;font-size:9.5pt}
.rpt th{background:#f3eee2;color:var(--brand);text-align:left;font-weight:700}
.rpt th,.rpt td{border:1px solid var(--line);padding:4px 6px;vertical-align:top}
.rpt table.small{font-size:8.8pt}.rpt table.tiny{font-size:7.8pt}.rpt table.tiny td,.rpt table.tiny th{padding:2px 4px}
.rpt table.cols2{column-count:1}
.rpt table.kv th{width:38%;background:#fdf8ef}
.rpt .two{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
.rpt .charts3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;justify-items:center;margin:8px 0}
.rpt .charts6{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 6px;justify-items:center}
.rpt .charts6 .cap{text-align:center;font:9pt Arial,sans-serif;color:var(--muted);margin-top:-2px}
.rpt .ad3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.rpt svg.chart{max-width:100%;height:auto}
.rpt .block{border-left:3px solid var(--line);padding:2px 0 2px 10px;margin:8px 0;break-inside:avoid}
.rpt .year{border-left-color:var(--gold)}
.rpt .age{font:9pt Arial,sans-serif;color:var(--muted)}
.rpt .yoga{padding:6px 10px;margin:6px 0;background:#f7fbf5;border:1px solid #d9eed2;border-radius:6px;break-inside:avoid;font-size:10.5pt}
.rpt .yoga.dosha{background:#fdf6f4;border-color:#f2d6cf}
.rpt .note{background:#fff7e6;border:1px solid #f5d9a8;border-radius:6px;padding:8px 10px;margin:10px 0;font-size:10pt}
.rpt .badge{display:inline-block;font:700 7.5pt Arial,sans-serif;padding:1px 6px;border-radius:9px;margin-left:4px;vertical-align:middle;background:#eee;color:#444;text-transform:uppercase;letter-spacing:.03em}
.rpt .badge.g{background:#dcfce7;color:var(--g)}.rpt .badge.y{background:#fef3c7;color:var(--y)}.rpt .badge.r{background:#fee2e2;color:var(--r)}
.rpt .muted{color:var(--muted)}
.rpt td.ok{color:var(--g);font-weight:700}.rpt td.bad{color:var(--r)}
.rpt ul{margin:4px 0 8px 18px;padding:0}.rpt li{margin:2px 0;font-size:10pt}
.rpt .toc{columns:2;font:10pt Arial,sans-serif;padding-left:18px}.rpt .toc li{margin:3px 0}.rpt .toc li.tp{list-style:none;margin:10px 0 2px -18px;font-weight:700;color:var(--gold);text-transform:uppercase;font-size:8.5pt;letter-spacing:.08em}
.rpt .toc a{color:var(--ink);text-decoration:none}
.rpt table.loshu{width:auto;margin:6px 0}.rpt table.loshu td{width:62px;height:62px;text-align:center;font:700 16pt Georgia,serif;color:var(--brand);position:relative;background:#fffaf0}
.rpt table.loshu small{position:absolute;right:4px;bottom:2px;font:8pt Arial;color:#c9b79c}
/* cover */
.rpt .cover{text-align:center;background:radial-gradient(90% 60% at 50% 18%,#1d2a6b 0%,#0d1540 45%,#070b22 100%);color:#f3e7c9;border-top:none;min-height:265mm;display:flex;flex-direction:column;align-items:center;justify-content:center;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:1.5px solid #c99a35;outline:1px solid #c99a35;outline-offset:-10px}
.rpt .cv-logo{width:62mm;height:62mm;filter:drop-shadow(0 0 18px rgba(232,184,74,.45))}
.rpt .cv-top{font:600 9.5pt Montserrat,Arial,sans-serif;letter-spacing:.42em;color:#e8b84a;margin-top:10px}
.rpt .cover h1{font-family:"Cinzel",Georgia,serif;font-size:30pt;margin:16px 0 4px;color:#f0c860;text-shadow:0 0 18px rgba(232,184,74,.35)}
.rpt .cv-sub{font:9.5pt Montserrat,Arial,sans-serif;color:#b9bfd6;letter-spacing:.06em;margin-bottom:22px}
.rpt .cv-rule{color:#e8b84a;letter-spacing:.6em;margin:4px 0 10px}
.rpt .cv-name{font-family:"Cinzel",Georgia,serif;font-size:23pt;font-weight:700;margin:8px 0 4px;color:#fff}
.rpt .cv-det{font:10.5pt Montserrat,Arial,sans-serif;color:#cfd3e6}
.rpt .cv-chart{margin:22px 0;background:#fffaf0;border-radius:6px;padding:6px;box-shadow:0 0 0 1px #c99a35}
.rpt .cv-foot{font:8.5pt Montserrat,Arial,sans-serif;color:#9aa1bf;margin-top:12px;letter-spacing:.05em}
.rpt .cv-tag{font:600 9pt Montserrat,Arial,sans-serif;letter-spacing:.3em;color:#e8b84a;margin-top:8px}
.rpt .pg:not(.cover)::before{content:"YASHTROLOGY";position:absolute;top:6mm;right:15mm;font:600 7pt Montserrat,Arial,sans-serif;letter-spacing:.4em;color:#c9b88f}
@page{size:A4;margin:12mm 11mm 14mm}
@media print{
  body{background:#fff!important}
  .no-print,#formView,#previewView,.toolbar,.unlock,footer{display:none!important}
  .rpt .pg{box-shadow:none;margin:0;padding:0 0 4mm;max-width:none;border-top:none;break-after:page;page-break-after:always}
  .rpt .pg:not(.cover)::before{top:-6mm;right:0}
  .rpt .cover{padding:14mm 10mm}
  .rpt .pg.flow{break-after:page}
  .rpt .cover{min-height:265mm}
  .rpt table{break-inside:auto}.rpt tr{break-inside:avoid}
  .rpt h2,.rpt h3{break-after:avoid}
  .rpt a{color:inherit;text-decoration:none}
}
@media (max-width:700px){.rpt .pg{padding:16px 12px}.rpt .two,.rpt .charts3,.rpt .charts6,.rpt .ad3{grid-template-columns:1fr}.rpt .toc{columns:1}}

.rpt .okc{color:#15803d;font-weight:700}.rpt .badc{color:#9ca3af}
