/* Wave 6 panchang tools (set T7): the printable Hindu calendar and the small result pieces the planners share. */
.t7-actions { display: flex; flex-wrap: wrap; gap: 0.6rem; align-items: center; margin: 0.4rem 0 1rem; }
.t7-actions .btn { cursor: pointer; }
.t7-sheet { margin: 1.2rem 0 2rem; }
.t7-month { background: var(--parchment, #fff); border: 1px solid var(--parchment-edge, #d9cfb8); border-radius: 6px; padding: 0.9rem 0.9rem 0.7rem; margin-bottom: 1.4rem; }
.t7-month h3 { margin: 0 0 0.15rem; font-size: 1.25rem; }
.t7-sub { margin: 0 0 0.6rem; font-size: 0.82rem; color: var(--ink-dim, #666); }
.t7-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.t7-grid { width: 100%; min-width: 640px; border-collapse: collapse; table-layout: fixed; }
.t7-grid th { font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; padding: 0.3rem; background: var(--parchment-dark, #eee); border: 1px solid var(--parchment-edge, #d9cfb8); }
.t7-grid td { vertical-align: top; height: 5.2rem; padding: 0.25rem 0.3rem; border: 1px solid var(--parchment-edge, #d9cfb8); font-size: 0.7rem; line-height: 1.3; overflow: hidden; }
.t7-grid td.t7-empty { background: transparent; }
.t7-grid .t7-d { display: block; font-size: 1.05rem; font-weight: 600; }
.t7-grid .t7-t { display: block; }
.t7-grid .t7-n { display: block; color: var(--ink-dim, #666); }
.t7-grid .t7-f { display: block; margin-top: 0.15rem; font-weight: 600; }
.t7-grid td.t7-sun .t7-d { color: #9a3b2c; }
.t7-grid td.t7-pur { box-shadow: inset 0 0 0 2px var(--gold-bright, #c9962b); }
.t7-grid td.t7-ama { background: rgba(0, 0, 0, 0.06); }
.t7-key { margin: 0.7rem 0 0; padding-left: 1.1rem; font-size: 0.78rem; columns: 2; column-gap: 1.5rem; }
.t7-key li { break-inside: avoid; margin-bottom: 0.15rem; }
.t7-foot { margin: 0.5rem 0 0; font-size: 0.72rem; color: var(--ink-dim, #666); }
.t7-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 0.6rem; }
.t7-pair .nvc-answer { border-bottom: 0; margin: 0; }
.t7-ok { color: var(--gold-bright, #8a6a12); font-weight: 600; }
@media (max-width: 640px) { .t7-pair { grid-template-columns: 1fr; } .t7-key { columns: 1; } }

@media print {
  @page { size: A4 landscape; margin: 7mm; }
  body.t7-printing { background: #fff !important; color: #000 !important; }
  body.t7-printing .t7-hide { display: none !important; }
  body.t7-printing .t7-actions { display: none !important; }
  body.t7-printing .t7-sheet { margin: 0; }
  body.t7-printing .t7-month { border: 0; padding: 0; margin: 0; background: #fff; break-after: page; page-break-after: always; break-inside: avoid; }
  body.t7-printing .t7-month:last-of-type { break-after: auto; page-break-after: auto; }
  body.t7-printing .t7-month h3 { font-size: 14pt; color: #000; margin: 0; }
  body.t7-printing .t7-sub, body.t7-printing .t7-foot, body.t7-printing .t7-grid .t7-n { color: #333; }
  body.t7-printing .t7-scroll { overflow: visible; }
  body.t7-printing .t7-grid { min-width: 0; width: 100%; }
  body.t7-printing .t7-grid th { background: #e8e8e8 !important; color: #000; border-color: #666; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body.t7-printing .t7-grid td { height: 16.5mm; padding: 0.8mm 1.2mm; border-color: #666; font-size: 7pt; line-height: 1.15; color: #000; }
  body.t7-printing .t7-grid .t7-d { font-size: 11pt; }
  body.t7-printing .t7-grid th { padding: 1mm; }
  body.t7-printing .t7-sub { margin: 0 0 2mm; font-size: 8pt; }
  body.t7-printing .t7-grid td.t7-sun .t7-d { color: #000; }
  body.t7-printing .t7-grid td.t7-pur { box-shadow: none; outline: 2px solid #000; outline-offset: -3px; }
  body.t7-printing .t7-grid td.t7-ama { background: #ddd !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body.t7-printing .t7-key { font-size: 6.5pt; columns: 6; margin-top: 1.5mm; line-height: 1.2; }
  body.t7-printing .t7-key li { margin-bottom: 0; }
  body.t7-printing .t7-foot { margin: 1mm 0 0; font-size: 6.5pt; }
}
