/* Wave 8 tools, set T15: Shadbala, couple vivah muhurat, festival dates for any year, hora for any date. */
.t15-note { font-size: 0.86rem; color: var(--ink-dim, #666); margin: 0.4rem 0 0.8rem; }
.t15-tbl { font-size: 0.86rem; }
.t15-tbl th, .t15-tbl td { padding: 0.35rem 0.45rem; text-align: right; }
.t15-tbl th:first-child, .t15-tbl td:first-child { text-align: left; }
.t15-ok { color: #2f6b3a; font-weight: 600; }
.t15-low { color: #9b4a1a; font-weight: 600; }
.t15-bar { position: relative; height: 0.7rem; background: rgba(120, 100, 60, 0.15); border-radius: 3px; min-width: 4rem; }
.t15-bar > span { display: block; height: 100%; border-radius: 3px; background: var(--gold-bright, #c9962b); }
.t15-bar > i { position: absolute; top: -2px; bottom: -2px; width: 0; border-left: 2px solid #3a3a3a; }
.t15-parts { margin: 0.4rem 0 0.2rem; }
.t15-parts summary { cursor: pointer; font-weight: 600; margin: 0.4rem 0; }
.t15-readings { font-size: 0.86rem; padding-left: 1.1rem; }
.t15-readings li { margin: 0.25rem 0; }
.t15-good { background: rgba(60, 130, 70, 0.12); }
.t15-dim { color: var(--ink-dim, #666); }
.t15-two { display: grid; grid-template-columns: 1fr 1fr; gap: 0.8rem; }
.t15-pick { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0.2rem 0 0.8rem; }
@media (max-width: 640px) { .t15-two { grid-template-columns: 1fr; } .t15-tbl { font-size: 0.76rem; } .t15-tbl th, .t15-tbl td { padding: 0.28rem 0.25rem; } }
.t15-fs { border: 1px solid var(--parchment-edge, #d9cfb8); border-radius: 6px; margin: 0 0 1rem; padding: 0.6rem 0.9rem; }
.t15-fs legend { font-weight: 600; padding: 0 0.4rem; }
.t15-couple td, .t15-couple th { text-align: left; vertical-align: top; }
.t15-couple hr { border: 0; border-top: 1px dashed var(--parchment-edge, #d9cfb8); margin: 0.3rem 0; }
