.summary-section h3{margin:22px 0 10px;font-size:17px;color:#5f3814}
.summary-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-bottom:6px}
.summary-tools label{display:grid;gap:4px;font-size:13px;color:#7a5a36}.summary-tools p{flex-basis:100%;margin:0}
.summary-headlines{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.summary-headlines li{padding:9px 12px 9px 14px;border-radius:10px;background:#fffdf8;border:1px solid #eedcb9;border-left:4px solid #c9a96b;font-size:15px;line-height:1.5}
.summary-headlines .hl-good{border-left-color:#3d8b4f;background:#f4faf2}.summary-headlines .hl-warn{border-left-color:#c0582c;background:#fdf3ec}
.sum-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.sum-grid.four{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.sum-card{padding:12px 14px;border-radius:12px;background:#fffdf8;border:1px solid #eedcb9;border-top:4px solid #c9a96b}
.sum-card.tone-good{border-top-color:#3d8b4f}.sum-card.tone-warn{border-top-color:#c0582c}
.sum-card h4{margin:0 0 6px;font-size:16px;color:#3d230b}.sum-card p{margin:4px 0;font-size:14px;line-height:1.5}
.sum-card .bav-line strong{font-size:20px;color:#744314;margin-right:2px}.sum-card .muted{color:#7a5a36;font-size:13px}
.summary-bhava{width:100%;border-collapse:collapse;font-size:13.5px}.summary-bhava th,.summary-bhava td{padding:7px 8px;border-bottom:1px solid #efe1c4;text-align:left;vertical-align:top}
.summary-bhava th{background:#f6ead2;color:#5f3814;white-space:nowrap}.summary-bhava tr.linked td{background:#f1f8ee}.summary-bhava td:first-child{white-space:nowrap;font-weight:600}
.varga-tools{display:grid;gap:8px;margin:10px 0}
.varga-lagnesh{margin:0;padding:10px 12px;border-radius:10px;background:#fff4dc;border:1px solid #e3c890;font-size:14.5px;line-height:1.5}
.varga-mode{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.varga-mode button{min-height:38px;padding:6px 14px}
.varga-mode button[aria-pressed=true]{background:#744314;color:#fff;border-color:#744314}
.varga-note{margin:0}.varga-transit-chart svg{max-width:100%;height:auto}
#all-varga-table tr.is-lagnesh td{background:#fff4dc;font-weight:600}#all-varga-table tr.is-lagna td{background:#f6ead2}
@media(max-width:600px){.summary-bhava{font-size:12.5px}.summary-headlines li{font-size:14px}}
.varga-method{display:flex;align-items:center;gap:8px;font-size:14px;color:#5f3814}.varga-method select{min-height:38px}
.timeline-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(7px,1fr));gap:2px;margin:8px 0 4px}
.tl-cell{height:22px;border-radius:3px}.tl-good{background:#5aa46a}.tl-mixed{background:#e3c25b}.tl-hard{background:#d0613b}
.tl-cell.tl-now{outline:3px solid #3d230b;outline-offset:1px}
.tl-group{display:grid;gap:10px}.tl-card{padding:12px 14px;border-radius:12px;background:#fffdf8;border:1px solid #eedcb9;border-left:6px solid #e3c25b}
.tl-card.tl-good{border-left-color:#5aa46a}.tl-card.tl-hard{border-left-color:#d0613b}
.tl-card header{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:6px}.tl-card header strong{font-size:15.5px;color:#3d230b}
.tl-badge{font-size:12.5px;font-weight:700;padding:3px 10px;border-radius:999px;background:#f6ead2;color:#5f3814;white-space:nowrap}
.tl-good .tl-badge{background:#e3f2e3;color:#2f6b3a}.tl-hard .tl-badge{background:#fbe3d8;color:#9b2c1f}
.tl-card ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.tl-card li{font-size:14px;line-height:1.5;padding-left:14px;position:relative}
.tl-card li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:#c9a96b}.tl-card li.hl-good::before{background:#5aa46a}.tl-card li.hl-warn::before{background:#d0613b}
.tl-ctx{margin:8px 0 0;font-size:13px;color:#7a5a36}
.sum-grid.areas{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.sum-card.area h4{font-size:16px}.area-line{display:grid;grid-template-columns:18px 1fr;gap:2px 6px;margin:6px 0!important}
.area-mark{font-weight:800;text-align:center}.area-line.hl-good .area-mark{color:#3d8b4f}.area-line.hl-warn .area-mark{color:#c0582c}
.area-src{grid-column:2;font-size:11.5px;color:#a0845f}
.tl-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:13px;color:#5f3814}.tl-legend span{display:flex;align-items:center;gap:5px}.tl-legend button{margin-left:auto;min-height:36px}
.tl-years{display:grid;gap:4px}.tl-decade{margin:14px 0 2px;font-size:13px;font-weight:700;color:#a96d19;letter-spacing:.04em}
.tl-year{border:1px solid #eedcb9;border-radius:10px;background:#fffdf8}.tl-year.is-now{border:2px solid #744314;box-shadow:0 2px 10px #5f381426}.tl-year.is-past summary{opacity:.92}
.tl-year>summary{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:10px;padding:8px 10px;cursor:pointer;list-style:none}.tl-year>summary::-webkit-details-marker{display:none}
.tl-ylabel{display:grid;line-height:1.15}.tl-ylabel strong{font-size:15px;color:#3d230b}.tl-ylabel small{font-size:11px;color:#8a6a45}
.tl-mstrip{display:grid;grid-template-columns:repeat(12,1fr);gap:2px}
.tl-m{display:inline-block;height:18px;min-width:10px;border-radius:3px}.tl-legend .tl-m{width:14px;height:14px}
.tl-m.tl-good{background:#5aa46a}.tl-m.tl-mixed{background:#e3c25b}.tl-m.tl-hard{background:#d0613b}.tl-m.tl-empty{background:transparent}.tl-m.tl-now{outline:3px solid #3d230b;outline-offset:1px}
.tl-year .tl-badge{font-size:12px}.tl-year.tl-good>summary .tl-badge{background:#e3f2e3;color:#2f6b3a}.tl-year.tl-hard>summary .tl-badge{background:#fbe3d8;color:#9b2c1f}
.tl-body{padding:4px 12px 12px;display:grid;gap:8px}.tl-body h5{margin:4px 0 0;font-size:14px;color:#5f3814}.tl-body ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.tl-body li{font-size:14px;line-height:1.5;padding-left:14px;position:relative}.tl-body li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:#c9a96b}.tl-body li.hl-good::before{background:#5aa46a}.tl-body li.hl-warn::before{background:#d0613b}
.tl-monthwise summary{cursor:pointer;color:#744314;font-size:14px;font-weight:600;padding:4px 0}.tl-months{display:grid;gap:8px;margin-top:6px}
@media(max-width:400px){.tl-year>summary{grid-template-columns:52px 1fr auto;gap:6px}.tl-m{min-width:7px;height:16px}}
.d3-section,.varga-gallery-section{margin-top:22px}.d3-section h3,.varga-gallery-section h3{color:#5f3814;margin:0 0 8px}
.varga-gallery{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.varga-tile{padding:10px 12px;border:1px solid #eedcb9;border-radius:12px;background:#fffdf8;display:grid;gap:4px}
.varga-tile h4{margin:0;font-size:15px;color:#3d230b}.varga-tile-theme{margin:0;font-size:12.5px;color:#7a5a36}
.varga-tile-chart svg{width:100%;height:auto}.varga-tile-info{margin:0;font-size:13px;line-height:1.45;color:#3d230b}
.varga-tile button{justify-self:start;min-height:34px;padding:4px 12px;font-size:13px}
.chara-lagna{margin:12px 0 18px;padding:12px;border:1px solid #e3c890;border-radius:14px;background:#fffaf0}.chara-lagna h3{margin:0 0 8px;color:#5f3814}.chara-lagna h4{margin:14px 0 6px;color:#5f3814;font-size:15px}
.cl-head{display:flex;flex-wrap:wrap;gap:6px}.cl-head button{min-height:38px}
.cl-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.cl-card{padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #eedcb9;border-left:6px solid #e3c25b}.cl-card.cl-good{border-left-color:#3d8b4f}.cl-card.cl-bad{border-left-color:#c0582c}
.cl-top{display:flex;justify-content:space-between;align-items:center;gap:6px}.cl-top strong{color:#3d230b}
.cl-dot{font-size:12.5px;font-weight:700;color:#a08020}.cl-good .cl-dot{color:#2f6b3a}.cl-bad .cl-dot{color:#9b2c1f}
.cl-card p{margin:3px 0;font-size:13.5px}.cl-role{color:#7a5a36;font-size:12.5px!important}.cl-sub{color:#7a5a36}
.cl-tags{display:flex;flex-wrap:wrap;gap:4px}.cl-tags span{font-size:12px;padding:2px 8px;border-radius:999px;background:#f6ead2}
.tag-rahu{background:#fbe3d8!important;color:#9b2c1f}.tag-mal{background:#fdecd2!important;color:#8a4b12}.tag-ben{background:#e3f2e3!important;color:#2f6b3a}
.cl-charts{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.cl-chart{margin:0}.cl-chart svg{width:100%;height:auto}.cl-chart figcaption{font-size:12.5px;color:#7a5a36;text-align:center}
.tl-mstrip .tl-m{border:0;padding:0;cursor:pointer}
.tl-m.tl-c-vgood{background:#2f7d45}.tl-m.tl-c-good{background:#7fbf7f}.tl-m.tl-c-avg{background:#e3c25b}.tl-m.tl-c-bad{background:#e08a4f}.tl-m.tl-c-vbad{background:#c0392b}
.tl-m.tl-change{box-shadow:inset 0 -4px 0 #3d230b}.tl-mstrip .tl-m:hover,.tl-mstrip .tl-m:focus-visible{outline:2px solid #3d230b;outline-offset:1px}
.tl-popover{position:fixed;z-index:100;max-height:75vh;overflow:auto;background:#fffdf8;border:1px solid #d9bf8c;border-radius:14px;box-shadow:0 12px 36px #3d230b40;padding:10px 12px 12px;font-size:13.5px;line-height:1.45}
.tl-popover h5{margin:10px 0 4px;font-size:13px;color:#744314}.tl-popover p{margin:3px 0}
.pp-close{position:sticky;top:0;float:right;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:#f3e1bb;color:#5f3814;cursor:pointer}
.pp-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;color:#fff;margin-right:36px}.pp-head strong{font-size:15px}
.pp-head.tl-c-avg{color:#3d230b}.pp-head.tl-c-vgood{background:#2f7d45}.pp-head.tl-c-good{background:#5a9e5a}.pp-head.tl-c-avg{background:#e3c25b}.pp-head.tl-c-bad{background:#d97a3c}.pp-head.tl-c-vbad{background:#c0392b}
.pp-item{padding:5px 0;border-bottom:1px solid #f0e3c8}.pp-row{display:grid;grid-template-columns:62px 1fr auto auto;gap:6px;align-items:center}
.pp-row strong{color:#3d230b}.pp-pos{color:#7a5a36;font-size:12.5px}.pp-v{font-weight:700;font-size:12.5px}.pp-good .pp-v{color:#2f6b3a}.pp-warn .pp-v{color:#a5321f}.pp-info .pp-v{color:#8a6a20}
.pp-pts{font-weight:700;color:#744314}.pp-meter{grid-column:1/-1;display:grid;grid-template-columns:repeat(8,1fr);gap:2px}.pp-meter i{height:5px;border-radius:2px;background:#eee2c8}.pp-meter i.on{background:#a96d19}
.pp-major .pp-meter i.on{background:#744314}.pp-note{color:#5f4a30;font-size:12.5px}
.pp-logic{font-weight:600}.hl-good.pp-logic{color:#2f6b3a}.hl-warn.pp-logic{color:#a5321f}
.pp-changes{margin-top:8px;padding:6px 8px;border-radius:10px;background:#fff4dc;border:1px solid #e3c890}.pp-changes p{font-size:12.5px}
.pp-dasha p{font-size:12.5px}.pp-next{margin-top:10px!important;padding:6px 8px;border-radius:8px;background:#f3e9d6;font-weight:600;color:#5f3814}
.tl-popover .hl-good:not(.pp-logic){border-left:3px solid #5aa46a;padding-left:6px}.tl-popover .hl-warn:not(.pp-logic){border-left:3px solid #d0613b;padding-left:6px}
.sum-card.snap{grid-column:1/-1}.area-line-plain{font-size:14px;line-height:1.5;margin:5px 0!important}.area-line-plain.hl-good{color:#244f2c}.area-line-plain.hl-warn{color:#8a2a1a}
.jv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:6px 0 10px}
.jv{padding:10px 12px;border-radius:12px;border:2px solid #e3c25b;background:#fffaf0}.jv-good{border-color:#3d8b4f;background:#f1f8ee}.jv-warn{border-color:#c0582c;background:#fdf1ea}
.jv-t{display:block;font-size:12.5px;color:#7a5a36}.jv-l{display:block;font-size:20px;color:#3d230b;margin:2px 0}.jv-good .jv-l{color:#2f6b3a}.jv-warn .jv-l{color:#a5321f}.jv p{margin:2px 0 0!important;font-size:13.5px}
.jd-panel{margin-top:12px;padding-top:10px;border-top:1px solid #efe1c4}.jd-panel h5{margin:0 0 4px;font-size:15px;color:#5f3814}
.jd-bar{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.jd-bar button{min-height:36px;padding:4px 10px;font-size:13px}
.jd-body{display:grid;gap:10px;grid-template-columns:minmax(0,340px) 1fr;align-items:start}.jd-wheel svg{width:100%;height:auto;max-width:340px}
.jd-sit{font-weight:600;color:#3d230b}.jd-list{list-style:none;margin:4px 0;padding:0;display:grid;gap:4px}.jd-list li{font-size:14px;padding:6px 8px;border-radius:8px;background:#fff7e6}
.jd-who{color:#744314;font-weight:600}.jd-flag{font-weight:600}
@media(max-width:640px){.jd-body{grid-template-columns:1fr}}
/* Guruji's rules: saffron highlight + badge (proprietary knowledge) */
.is-guru{background:#fff1df!important;border-left:4px solid #d9580b!important;padding-left:8px!important;border-radius:6px}
li.is-guru::before{display:none}.is-guru .area-mark{color:#d9580b!important}
.guru-badge{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:#c2410c;color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.02em;vertical-align:middle;white-space:nowrap}
h4.is-guru,h5.is-guru{background:transparent!important;border-left-width:4px!important}
.guru-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:6px 0 10px;padding:8px 10px;border-radius:10px;background:#fff1df;border:1px solid #f3c79b;font-size:13px;color:#7a2e0a}
.jv.is-guru{border-left-width:2px!important;padding-left:12px!important}
