/* family.css — Family view (assets/family.js) */
#jg-family{margin-top:18px}
.fm-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-bottom:18px}
.fm-sum div{background:var(--slab);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px}
.fm-sum span{display:block;font-size:12px;color:var(--muted)}
.fm-sum b{font:500 16px var(--body);color:var(--brass-lt)}
.fm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.fm-card{background:var(--slab);border:1px solid var(--line);border-top:3px solid var(--brass);border-radius:var(--r);padding:16px 16px 12px;display:flex;flex-direction:column}
.fm-card.good{border-top-color:#3F9A6E}.fm-card.low{border-top-color:var(--sindoor)}
.fm-card header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.fm-card h3{margin:0;font-size:21px;color:var(--chalk)}
.fm-card header p{margin:2px 0 0;font-size:13px;color:var(--muted)}
.fm-stars{color:var(--brass-lt);font-size:16px;letter-spacing:1px;white-space:nowrap}.fm-stars i{font-style:normal;color:var(--line-2)}
.fm-card dl{margin:12px 0 0;flex:1}
.fm-card dl div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:10px;padding:8px 0;border-top:1px dashed var(--line)}
.fm-card dt{font-size:12.5px;color:var(--muted)}
.fm-card dd{margin:0;font-size:14.5px;font-weight:500}
.fm-card dd small{display:block;font-weight:400;color:#AEB6CA;font-size:13px;line-height:1.5;margin-top:2px}
.fm-card dd.ok{color:#6FD0A0}.fm-card dd.no{color:var(--sindoor-lt)}.fm-card dd.warn{color:#F0A35B}
.fm-card footer{margin-top:8px;font-size:13.5px}.fm-card footer a{color:var(--brass-lt)}
.fm-empty{background:var(--slab);border:1px dashed var(--line-2);border-radius:var(--r);padding:24px;text-align:center}
.fm-empty h2{margin:0 0 8px;font-size:22px}.fm-empty p{color:var(--muted);max-width:56ch;margin:0 auto 14px}
.fm-note{color:var(--muted);font-size:13.5px;margin-top:16px}.fm-note a{color:var(--brass-lt)}
@media (max-width:420px){.fm-grid{grid-template-columns:minmax(0,1fr)}}
/* family tithi birthday chart */
.fm-tb{background:var(--slab);border:1px solid var(--line);border-top:3px solid var(--brass);border-radius:var(--r);padding:16px 16px 6px;margin:0 0 18px}
.fm-tb-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px}
.fm-tb h2{margin:0;font-size:22px}
.fm-nak{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;color:var(--muted);cursor:pointer}
.fm-nak input{width:17px;height:17px;accent-color:var(--brass)}
.fm-tb-sub{color:var(--muted);font-size:13.5px;margin:6px 0 10px}.fm-tb-sub b{color:var(--chalk);font-weight:500}
.fm-tl{list-style:none;margin:0;padding:0}
.fm-tl li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1.3fr);gap:6px 14px;padding:11px 8px;border-top:1px dashed var(--line);align-items:start}
.fm-tl li.soon{background:rgba(63,154,110,.08)}.fm-tl li.today{background:rgba(192,138,46,.16)}
.fm-tl b{display:block;font-weight:500;font-size:15px;color:var(--chalk)}.fm-tl .ti b{color:var(--brass-lt)}
.fm-tl small{display:block;color:#AEB6CA;font-size:12.5px;margin-top:2px}
.fm-tl li.soon .dt small,.fm-tl li.today .dt small{color:#6FD0A0}
.fm-tl .dt{text-align:right}
.fm-tb-act{margin:12px 0 4px}
@media (max-width:560px){.fm-tl li{grid-template-columns:minmax(0,1fr) auto}.fm-tl .ti{grid-column:1/-1;order:3}}
@media print{
  body.fm-print .mast,body.fm-print #jg-ticker,body.fm-print .crumbs,body.fm-print .phero,body.fm-print .seo,body.fm-print footer.sitefoot,
  body.fm-print .fm-sum,body.fm-print .fm-grid,body.fm-print #jg-family>.fm-note,body.fm-print .fm-tb-act,body.fm-print .fm-nak,body.fm-print .adsbygoogle,body.fm-print .jg-toast{display:none!important}
  body.fm-print{background:#fff!important;color:#141414}
  body.fm-print .fm-tb{border:0;background:#fff;padding:0}
  body.fm-print .fm-tb h2,body.fm-print .fm-tl b,body.fm-print .fm-tl .ti b,body.fm-print .fm-tb-sub b{color:#141414!important}
  body.fm-print .fm-tl small,body.fm-print .fm-tb-sub,body.fm-print .fm-note{color:#444!important}
  body.fm-print .fm-tl li{background:none!important;border-top:1px solid #bbb;break-inside:avoid}
}
