:root{
  --maroon:#7a1f2b; --maroon2:#9b2c3a; --gold:#c9a227; --gold-soft:#f6edcf; --gold-line:#e6d9a8;
  --ink:#20242b; --muted:#6b7280; --line:#e7e3d8; --bg:#faf7f0; --card:#ffffff;
  --guru:#7a1f2b; --bhagat:#1f5d7a; --bhatt:#5c6b2f; --other:#8a6d3b;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:'Inter',system-ui,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}
.gur{font-family:'Noto Sans Gurmukhi','Noto Serif Gurmukhi',sans-serif}
a{color:inherit;text-decoration:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 18px}
/* ---- shared top nav ---- */
.nav{background:linear-gradient(135deg,var(--maroon),var(--maroon2));color:#fff;border-bottom:4px solid var(--gold)}
.nav .row{display:flex;align-items:center;gap:22px;padding:13px 0;flex-wrap:wrap}
.nav .brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:16px}
.nav .brand .mark{width:36px;height:36px;border-radius:50%;display:block;object-fit:contain}
.nav .links{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}
.nav .links a{padding:7px 14px;border-radius:999px;font-size:13.5px;font-weight:600;opacity:.9}
.nav .links a:hover{background:rgba(255,255,255,.12)}
.nav .links a.on{background:#fff;color:var(--maroon);opacity:1}
/* ---- headings & shared ---- */
.pagehead{padding:26px 0 6px}
.pagehead h1{margin:0;font-size:25px;font-weight:700}
.pagehead .sub{color:var(--muted);font-size:14px;margin-top:6px;max-width:820px}
.statrow{display:flex;gap:22px;flex-wrap:wrap;margin:16px 0 8px}
.statrow .s b{font-size:22px;font-weight:700;color:var(--maroon)}
.statrow .s span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}
h3.sec{font-size:14px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin:30px 0 12px;border-bottom:1px solid var(--line);padding-bottom:6px}
.note{background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:9px;padding:11px 14px;font-size:13px;color:#6a5410;margin:12px 0}
.btn{display:inline-block;background:var(--maroon);color:#fff;padding:9px 18px;border-radius:8px;font-size:13.5px;font-weight:600;border:none;cursor:pointer}
.btn.ghost{background:#fff;color:var(--maroon);border:1px solid var(--maroon)}
footer{border-top:1px solid var(--line);margin-top:34px;padding:20px 0 46px;font-size:12px;color:var(--muted)}
footer b{color:var(--ink)}
/* ---- tables ---- */
.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px;border:1px solid var(--line)}
.tscroll table.t{border:none;border-radius:0}
table.t{width:100%;border-collapse:collapse;font-size:13.5px;background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden}
table.t th{background:var(--maroon);color:#fff;text-align:left;padding:9px 11px;font-weight:600;font-size:12px}
table.t td{padding:9px 11px;border-top:1px solid var(--line);vertical-align:top}
table.t tr:nth-child(even) td{background:#fcfbf7}
table.t .c{text-align:center;white-space:nowrap}
.exc{font-size:17px;line-height:1.75}
.en{font-size:12.5px;color:#4b5563;margin-top:2px}
/* ---- bars ---- */
.bar{display:grid;grid-template-columns:190px 1fr 92px;align-items:center;gap:10px;padding:4px 4px}
.bar .l{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bar .track{background:#eee;border-radius:6px;height:15px;overflow:hidden}
.bar .fill{height:100%;border-radius:6px;background:var(--maroon)}
.bar .n{text-align:right;font-size:12.5px;color:var(--muted)}
.bar .n b{color:var(--ink)}
/* ---- toggle ---- */
.seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:#fff;margin:4px 0}
.seg button{border:none;background:none;padding:8px 20px;font-size:13.5px;font-weight:600;cursor:pointer;color:var(--muted)}
.seg button.on{background:var(--maroon);color:#fff}
/* ---- home cards ---- */
.hero{padding:40px 0 10px}
.hero h1{font-size:34px;margin:0 0 8px}
.hero .gd{font-size:30px;color:var(--maroon)}
.hero p{font-size:15.5px;color:#3a4049;max-width:760px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:26px 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px;transition:.14s;display:block}
.card:hover{border-color:var(--gold);box-shadow:0 6px 20px rgba(122,31,43,.09);transform:translateY(-2px)}
/* the section eyebrow is small uppercase text, so it needs a deeper gold than the
   decorative --gold to stay readable on a white card (2.4:1 -> 4.7:1) */
.card .k{font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:#8f7009}
.card h2{margin:6px 0 8px;font-size:20px}
.card p{font-size:13.5px;color:var(--muted);margin:0 0 14px}
.card .go{color:var(--maroon);font-weight:700;font-size:13.5px}
.privlink{color:var(--maroon);font-weight:600;text-decoration:none}
.card.soon{opacity:.6}
.card.soon .k{color:var(--muted)}
@media(max-width:640px){.bar{grid-template-columns:120px 1fr 74px}.hero h1{font-size:26px}}

/* ---- language toggle ---- */
.langtog{display:inline-flex;border:1px solid rgba(255,255,255,.5);border-radius:7px;overflow:hidden;flex:none;margin-left:10px}
.langtog button{background:transparent;border:none;color:#fff;opacity:.85;padding:6px 11px;font-size:12px;cursor:pointer;font-family:inherit}
.langtog button.on{background:var(--gold);color:var(--maroon);opacity:1;font-weight:700}
.navtoggle{display:none;background:none;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:8px;padding:5px 11px;font-size:19px;line-height:1;cursor:pointer}
@media(max-width:760px){
  .nav .row{flex-wrap:wrap;gap:12px}
  .navtoggle{display:inline-block;order:2;margin-left:auto}
  .langtog{order:3;margin-left:8px}
  .nav .links{display:none;order:9;width:100%;flex-direction:column;gap:3px;margin:6px 0 2px;flex-wrap:nowrap}
  .nav .links a{width:100%;padding:11px 13px;border-radius:8px;font-size:15px;margin:0}
  .nav.navopen .links{display:flex}
}

/* ---- Hukamnama date search ---- */
.hks{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;padding:16px 18px;margin:18px 0 22px}
.hks h3{margin:0 0 4px;font-size:18px;color:var(--maroon)}
.hks-intro{font-size:12.5px;color:var(--muted);max-width:760px;margin-bottom:12px}
.hks-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.hks-modes{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.hks-modes button{background:#fff;border:none;padding:8px 16px;font-size:13px;cursor:pointer;color:var(--muted);font-family:inherit}
.hks-modes button.on{background:var(--maroon);color:#fff;font-weight:600}
.hks-modes button:not(:last-child){border-right:1px solid var(--line)}
.hks-datelbl{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:7px}
.hks-datelbl input{padding:8px 11px;border:1px solid var(--line);border-radius:8px;font-size:14px;font-family:inherit;background:#fff;color:var(--ink)}
.hks-go{background:var(--gold);color:var(--maroon);border:none;border-radius:8px;padding:9px 18px;font-size:13.5px;font-weight:700;cursor:pointer;font-family:inherit}
.hks-go:hover{background:#d9b53a}
.hks-hint{font-size:12.5px;color:var(--muted);margin-top:12px}
.hks-ok{font-size:13px;color:#2e7d32;font-weight:600;margin:14px 0 8px}
.hks-miss{font-size:13px;color:var(--maroon);font-weight:600;margin:14px 0 6px}
.hks-nearlbl{font-size:12px;color:var(--muted);margin:6px 0 6px;text-transform:uppercase;letter-spacing:.4px}
.hks-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.hks-chip{background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:999px;padding:5px 13px;font-size:12.5px;color:#6a5410;cursor:pointer;font-family:inherit}
.hks-chip:hover{background:var(--gold);color:var(--maroon)}
.hks-result{background:#fffdf7;border:1px solid var(--line);border-radius:10px;padding:12px 15px;margin-bottom:10px}
.hks-result.near{opacity:.97;border-style:dashed}
.hks-rhead{display:flex;align-items:baseline;gap:10px;margin-bottom:7px}
.hks-when{font-size:11px;font-weight:700;color:#fff;background:var(--maroon);border-radius:999px;padding:2px 10px}
.hks-rhead b{font-size:15px;color:var(--ink)}
.hks-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:8px}
.hks-meta .tag{background:#f3efe4;border-radius:5px;padding:2px 9px;font-size:11px;color:var(--muted)}
.hks-meta .tag.ang{background:var(--gold-soft);color:#6a5410;border:1px solid var(--gold-line)}
.hks-lines .ln{padding:6px 0;border-top:1px dashed var(--line)}
.hks-lines .ln:first-child{border-top:none}
.hks-lines .g{font-size:20px;line-height:1.9;color:#241a12}
.hks-lines .tl{font-size:12px;color:#8a6d2e;font-style:italic;margin-top:1px}
.hks-lines .e{font-size:12.5px;color:#4b5563;margin-top:1px}
.hks-more{font-size:12px;color:var(--muted);margin-top:8px;font-style:italic}
.hks-repeat{font-size:12px;color:#6a5410;background:var(--gold-soft);border-radius:6px;padding:5px 10px;margin-top:8px}
.hks-enote{font-size:11px;color:var(--muted);margin-top:7px;font-style:italic}
@media(max-width:640px){.hks-lines .g{font-size:18px}.hks-controls{gap:9px}}
@media(max-width:640px){
  table.t{font-size:12.5px}
  table.t th,table.t td{padding:7px 8px}
  table.t .exc{min-width:180px}
  /* keep the expanded shabad readable within the screen, not the full scroll width */
  .t tr.shabrow>.shabcell{padding:0 10px 12px}
  .shabbody{max-width:calc(100vw - 66px)}
}

/* ---- Hukamnama live source ---- */
.hks-srclbl{font-size:12.5px;color:var(--muted);font-weight:600}
.hks-livecap{font-size:12px;color:#6a5410;background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:8px;padding:8px 12px;margin-top:10px}
.hks-loading{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);margin-top:14px}
.hks-loading .spin{width:15px;height:15px;border:2px solid var(--gold-line);border-top-color:var(--maroon);border-radius:50%;display:inline-block;animation:hksspin .7s linear infinite}
@keyframes hksspin{to{transform:rotate(360deg)}}
.hks-result.live{border-left:3px solid var(--maroon);background:#fffdf9}
.hks-when.live{background:#0f7b3f}
.hks-daily{font-size:11px;color:var(--muted);font-style:italic;margin-left:2px}
.hks-lines .ln.head .g{font-size:15px;color:#7a6a4f}
.hks-via{font-size:10.5px;color:var(--muted);font-style:italic;margin-left:auto}
.hks-dev{font-family:'Noto Sans Devanagari','Noto Sans Gurmukhi',sans-serif;color:#3a4a7a;font-size:16px;line-height:1.75;margin-top:2px}
html[lang="hi"] .gur{font-family:'Noto Sans Devanagari','Noto Sans Gurmukhi',sans-serif}
/* ---- Favorites star (Hukamnama page) ---- */
.hkfav{background:none;border:none;cursor:pointer;font-size:16px;line-height:1;color:#cfc7b0;padding:0;margin:0}
.hkfav.on{color:var(--gold)}
.hkfav:hover{color:var(--maroon)}
.hks-rhead .hkfav{margin-right:6px;font-size:17px;vertical-align:middle}
#seg #hkFavBtn.on{background:var(--gold);color:var(--maroon)}
/* the glyph is only ~14x15px, well under the 24x24 minimum comfortable on a phone.
   Padding grows the tap target; the matching negative margin keeps the layout identical. */
.t td .hkfav{font-size:15px;padding:6px;margin:-6px}

/* Hukamnama top-table expandable shabad */
.t tr.toprow .exc .ecar{display:inline-block;color:var(--gold);font-size:11px;margin-right:7px;transition:transform .15s;vertical-align:middle}
.t tr.toprow.open .exc .ecar{transform:rotate(90deg);color:var(--maroon)}
.t tr.toprow.open .exc{color:var(--maroon)}
.t tr.toprow:hover .exc{color:var(--maroon)}
.t tr.shabrow{display:none}
.t tr.shabrow.open{display:table-row}
.t tr.shabrow>.shabcell{background:#fbf8f1;border-top:none;padding:0 14px 14px}
.shabbody{border:1px solid var(--gold-line);border-left:3px solid var(--gold);border-radius:9px;background:#fff;padding:4px 16px;margin:4px 0 2px}
.shabbody .ln{padding:7px 0;border-top:1px dashed var(--line)}
.shabbody .ln:first-child{border-top:none}
.shabbody .ln .g{font-size:18px;line-height:1.9;color:#241a12}
.shabbody .ln .e{font-size:12.5px;color:#4b5563;margin-top:2px}
.e.hin{font-family:'Noto Sans Devanagari',sans-serif;font-size:14px;color:#374151;line-height:1.6;margin-top:2px}
.e.pun{font-family:'Noto Sans Gurmukhi',sans-serif;font-size:14px;color:#3c4453;line-height:1.7;margin-top:2px}
html.dark .e.pun{color:#c3bba6}
.deva{font-family:'Noto Sans Devanagari','Noto Sans Gurmukhi',sans-serif !important}
.pdfdl{display:inline-flex;align-items:center;gap:9px;margin:2px 0 14px;background:var(--gold-soft,#f3e9c8);border:1px solid var(--gold-line,#e5d59a);color:#6a5410;border-radius:9px;padding:9px 16px;font-size:13.5px;font-weight:600;text-decoration:none;cursor:pointer;transition:.12s}
.pdfdl:hover{background:var(--gold,#c9a227);color:var(--maroon,#7a1f2b);border-color:var(--gold,#c9a227)}
.pdfdl::before{content:'⤓';font-size:16px;font-weight:700}
.shabbody .ln.head .g{font-size:14px;color:#7a6a4f;opacity:.9}
.shabbody .ln.rah{background:var(--gold-soft);border-radius:6px;padding-left:9px;padding-right:9px;border-top-color:var(--gold-line)}
.shabbody .ln.rah .g{color:#5a3d0a;font-weight:500}

/* Hukamnama tab rows */
.seg{flex-wrap:wrap}
.seg.segv{margin-top:8px}
.seg.segv button[data-pdf]{color:var(--maroon);font-weight:700}
.seg.segv button[data-pdf]::after{content:" ↗";font-size:10px;opacity:.7}
html.dark .seg.segv button[data-pdf]{color:#e8c766}
@media(max-width:640px){.seg{border-radius:14px}.seg button{flex:1 1 auto}}
