@import url('https://fonts.googleapis.com/css2?family=Lora:wght@500;600;700&family=Noto+Serif+Devanagari:wght@500;600;700&family=Noto+Sans:wght@400;500;600&family=Noto+Sans+Devanagari:wght@400;500;600&display=swap');

:root{
  --text:#1c1c1a;
  --muted:#615c52;
  --accent:#0b5a6f;
  --accent-deep:#083f4f;
  --border:#cdc6b6;
  --panel:#faf7f0;
  --module-head:#eee7d4;
  --module-border:#ddd3b6;
  --ambox-bg:#fdf3df;
  --ambox-border:#e3c27a;
  --ambox-accent:#b9781f;
  --green:#136b58;
  --orange:#96590a;
  --red:#943131;
  --s1:6px; --s2:10px; --s3:14px; --s4:20px; --s5:28px; --s6:38px;
}
*{box-sizing:border-box;}
body{
  margin:0; background:#fff; color:var(--text);
  font-family:'Noto Sans','Noto Sans Devanagari',Helvetica,Arial,sans-serif;
  font-size:16px; line-height:1.68;
}
h1,h2,h3{font-family:'Lora','Noto Serif Devanagari',Georgia,serif; font-weight:700; color:#000; margin:0;}
a{color:var(--accent); text-decoration:none;}
a:hover{text-decoration:underline;}
:focus-visible{outline:2px solid var(--accent); outline-offset:2px;}
.hi{font-family:'Noto Serif Devanagari','Noto Sans Devanagari',serif;}
ul{margin:0; padding:0; list-style:none;}
p{margin:0 0 var(--s4);}

.accent-bar{height:4px; background:var(--accent);}

.masthead{border-bottom:1px solid var(--border); padding:var(--s3) 24px;}
.masthead-inner{max-width:1200px; margin:0 auto; display:flex; align-items:center; gap:22px; flex-wrap:wrap;}
.wordmark{display:flex; align-items:center; justify-content:center; gap:10px; flex-shrink:0;}
.logo-link{
  font-size:1.7rem; font-weight:700; color:var(--text); letter-spacing:0.01em;
  display:inline-block; text-align:center; text-decoration:none;
  border-bottom:3px solid var(--accent); padding-bottom:0; line-height:1; margin:0 0 -6px 0;
}
.logo-link:hover{border-bottom-color:var(--accent-deep);}
.searchbox{flex:1; display:flex; max-width:400px; min-width:170px;}
.searchbox input{flex:1; border:1px solid var(--border); border-right:none; border-radius:4px 0 0 4px; padding:9px 14px; font-size:0.9rem; font-family:inherit;}
.searchbox button{border:1px solid var(--border); background:var(--panel); border-radius:0 4px 4px 0; padding:0 14px; cursor:pointer;}
.interlang{display:flex; gap:14px; font-size:0.82rem; margin-left:auto;}
.interlang a{color:var(--muted);}
.interlang a.hi{color:var(--text);}

.page{max-width:1200px; margin:0 auto; display:flex; align-items:flex-start;}
.sidebar{width:200px; flex-shrink:0; padding:var(--s5) var(--s4) var(--s5) 24px; margin-right:var(--s4); border-right:1px solid var(--border); font-size:0.92rem;}
.sidebar h4{font-size:0.76rem; text-transform:uppercase; letter-spacing:0.04em; color:var(--muted); border-bottom:1px solid #ece6d6; padding-bottom:var(--s1); margin:0 0 var(--s2);}
.sidebar-group{margin-bottom:var(--s5);}
.sidebar li{margin-bottom:var(--s2); line-height:1.5;}
.sidebar li a.current{color:var(--text); font-weight:700;}
.sidebar li a.current::before{content:"▸ "; color:var(--accent);}
.content{flex:1; min-width:0; padding:var(--s5) var(--s4);}

.breadcrumb{margin-bottom:var(--s4); font-size:0.82rem; color:var(--muted);}
.breadcrumb ol{list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:4px;}
.breadcrumb li::after{content:"›"; margin-left:4px; color:var(--border);}
.breadcrumb li:last-child::after{content:"";}
.breadcrumb a{color:var(--accent); text-decoration:none;}
.breadcrumb a:hover{text-decoration:underline;}
.breadcrumb [aria-current="page"]{color:var(--text); font-weight:600;}

.intro h1{font-size:2rem; margin-bottom:var(--s1);}
.tagline{font-style:italic; color:var(--muted); font-size:0.95rem; margin-bottom:var(--s5);}
.stat-strip{border:1px solid var(--border); border-radius:4px; background:var(--panel); padding:var(--s3) var(--s4); font-size:0.86rem; color:var(--muted); margin-bottom:var(--s6);}
.stat-strip b{color:var(--text);}
.module-grid{display:grid; grid-template-columns:1fr 1fr; gap:var(--s4); margin-bottom:var(--s6);}
.module{border:1px solid var(--module-border); border-radius:4px; overflow:hidden;}
.module-head{background:var(--module-head); border-bottom:2px solid var(--accent); padding:var(--s2) var(--s4); font-family:'Lora',serif; font-size:1.05rem; font-weight:700;}
.module-body{padding:var(--s4);}
.module-body ul{list-style:disc; padding-left:22px;}
.module-body li{margin-bottom:var(--s2);}
.entry-tag-inline{font-size:0.78rem; padding:2px 8px; border-radius:3px; margin-left:6px; white-space:nowrap;}
.tag-unverified{background:#fdf3df; color:var(--orange); border:1px solid var(--ambox-border);}
.tag-verified{background:#e5f1ee; color:var(--green); border:1px solid #a9d1c6;}
.tag-myth{background:#f7e9e9; color:var(--red); border:1px solid #e0b8b8;}

.kosha-list h2{font-size:1.3rem; border-bottom:1px solid var(--border); padding-bottom:var(--s2); margin-bottom:var(--s4);}
.kosha-table{width:100%; border-collapse:collapse; font-size:0.9rem; margin-bottom:var(--s6);}
.kosha-table th{text-align:left; border-bottom:2px solid var(--border); padding:var(--s2) var(--s3); font-family:'Noto Sans'; font-size:0.76rem; text-transform:uppercase; color:var(--muted);}
.kosha-table td{border-bottom:1px solid #ece6d6; padding:var(--s3); vertical-align:top;}
.kosha-table tr:hover td{background:var(--panel);}
.kosha-table .num{color:var(--muted); font-variant-numeric:tabular-nums;}
.kosha-table a{font-weight:600;}
.kosha-table .count{color:var(--muted); white-space:nowrap;}

.policy-box{border:1px solid var(--border); border-radius:4px; background:var(--panel); padding:var(--s4) var(--s5); margin-bottom:var(--s6);}
.policy-box h2{font-size:1.1rem; margin-bottom:var(--s3);}
.policy-row{display:flex; gap:var(--s2); margin-bottom:var(--s2); font-size:0.9rem;}
.policy-row:last-child{margin-bottom:0;}
.policy-mark{flex-shrink:0; font-weight:700;}
.policy-mark.v{color:var(--green);}
.policy-mark.u{color:var(--orange);}
.policy-mark.m{color:var(--red);}

.suggestion-note{border:1px dashed var(--border); border-radius:4px; padding:var(--s3) var(--s4); font-size:0.88rem; color:var(--muted); margin-bottom:var(--s3);}
.suggestion-note strong{color:var(--text);}

.entry-crumb{font-size:0.82rem; color:var(--muted); margin-bottom:var(--s2);}
.entry-title{font-size:2.1rem; border-bottom:1px solid var(--border); padding-bottom:var(--s2); margin-bottom:var(--s1);}
.entry-title .hi{font-size:0.55em; font-weight:600; color:var(--muted); margin-left:14px;}
.entry-subline{font-style:italic; color:var(--muted); font-size:0.88rem; margin-bottom:var(--s4);}

.ambox{background:var(--ambox-bg); border:1px solid var(--ambox-border); border-left:5px solid var(--ambox-accent); border-radius:3px; padding:var(--s3) var(--s4); font-size:0.85rem; margin-bottom:var(--s4); display:flex; gap:var(--s2); align-items:flex-start;}
.ambox .icon{font-weight:700; color:var(--ambox-accent); font-size:1.1rem; line-height:1;}
.ambox a{font-weight:600;}

.entry-layout{display:flex; gap:var(--s5); align-items:flex-start;}
.entry-article{flex:1; min-width:0; max-width:72ch;}
.infobox{width:280px; flex-shrink:0; border:1px solid var(--border); border-radius:4px; overflow:hidden; background:var(--panel); font-size:0.85rem;}
.infobox-title{background:var(--module-head); border-bottom:2px solid var(--accent); text-align:center; font-family:'Lora',serif; font-weight:700; font-size:1.05rem; padding:var(--s2);}
.infobox-image{background:#e9e4d6; height:130px; display:flex; align-items:center; justify-content:center; color:#8a8578; font-size:0.78rem; border-bottom:1px solid var(--border);}
.infobox table{width:100%; border-collapse:collapse;}
.infobox td{padding:var(--s2) var(--s3); border-top:1px solid #ece6d6; vertical-align:top;}
.infobox td.k{color:var(--muted); width:38%; font-weight:600;}

.toc-box{display:inline-block; border:1px solid var(--border); border-radius:4px; background:var(--panel); padding:var(--s3) var(--s5); margin:var(--s1) 0 var(--s4); font-size:0.88rem;}
.toc-box .toc-title{font-weight:700; margin-bottom:var(--s2); text-align:center; border-bottom:1px solid var(--border); padding-bottom:var(--s1);}
.toc-box ol{padding-left:20px; margin:0;}
.toc-box li{margin-bottom:var(--s1);}

.entry-article h2{font-size:1.35rem; border-bottom:1px solid #ece6d6; padding-bottom:var(--s1); margin:var(--s5) 0 var(--s3);}
.entry-article sup{color:var(--accent); font-size:0.72em; cursor:help;}

.subtopic-table{width:100%; border-collapse:collapse; font-size:0.9rem; margin:var(--s3) 0 var(--s4);}
.subtopic-table th{text-align:left; border-bottom:2px solid var(--border); padding:var(--s2) var(--s3); font-size:0.76rem; text-transform:uppercase; color:var(--muted);}
.subtopic-table td{border-bottom:1px solid #ece6d6; padding:var(--s3); vertical-align:top;}
.subtopic-table tr:hover td{background:var(--panel);}
.subtopic-table .type{color:var(--muted); font-size:0.82rem; white-space:nowrap;}

.refs{margin-top:var(--s5); border-top:1px solid var(--border); padding-top:var(--s3);}
.refs h2{font-size:1.1rem; border:none; margin-bottom:var(--s2);}
.refs ol{padding-left:20px; font-size:0.84rem; color:var(--muted);}
.refs li{margin-bottom:var(--s1);}
.refs .note{font-size:0.78rem; font-style:italic; margin-top:var(--s2);}

.categories{margin-top:var(--s4); border:1px solid var(--border); border-radius:4px; background:var(--panel); padding:var(--s2) var(--s3); font-size:0.84rem;}
.categories b{margin-right:var(--s1);}
.categories a{margin-right:4px;}
.categories a:not(:last-child)::after{content:" |"; color:var(--border); margin-left:4px;}

footer.site-footer{
  border-top:1px solid var(--border); margin-top:var(--s3); padding:var(--s5) 24px var(--s4);
  background:var(--panel); font-size:0.84rem; color:var(--muted);
}
.footer-inner{max-width:1200px; margin:0 auto;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:var(--s5); margin-bottom:var(--s5);}
.footer-logo{
  font-family:'Lora',serif; font-size:1.2rem; font-weight:700; color:var(--text);
  text-decoration:none; display:inline-block; margin-bottom:var(--s2);
  border-bottom:2px solid var(--accent); padding-bottom:0; line-height:1;
}
.footer-logo:hover{border-bottom-color:var(--accent-deep); text-decoration:none; color:var(--text);}
.footer-desc{font-size:0.84rem; line-height:1.65; max-width:44ch; margin-bottom:var(--s3);}
.footer-contact{font-size:0.78rem; color:var(--muted);}
.footer-contact a{color:var(--accent); border-bottom:none;}
.footer-heading{
  font-family:'Noto Sans'; font-size:0.72rem; font-weight:600;
  text-transform:uppercase; letter-spacing:0.14em; color:var(--accent);
  margin:0 0 var(--s3); padding-bottom:var(--s1); border-bottom:1px solid var(--border);
}
.footer-nav ul{list-style:none; padding:0; margin:0;}
.footer-nav li{margin-bottom:var(--s2);}
.footer-nav a{color:var(--muted); text-decoration:none; border-bottom:none;}
.footer-nav a:hover{color:var(--text); text-decoration:underline;}
.footer-bottom{
  border-top:1px solid var(--border); padding-top:var(--s3);
  display:flex; justify-content:space-between; flex-wrap:wrap; gap:var(--s2);
  font-size:0.76rem; color:var(--muted);
}
@media (max-width:820px){
  .footer-grid{grid-template-columns:1fr; gap:var(--s4);}
}
footer a{color:var(--muted); border-bottom:none;}
footer a:hover{color:var(--accent);}

.infobox-caption{padding:var(--s1) var(--s3); font-size:0.76rem; font-style:italic; color:var(--muted); border-bottom:1px solid var(--border); background:var(--panel);}

@media (max-width:820px){
  .page{flex-direction:column;}
  .sidebar{width:100%; border-right:none; border-bottom:1px solid var(--border); display:flex; flex-wrap:wrap; gap:var(--s4); margin-right:0;}
  .sidebar-group{flex:1 1 45%;}
  .module-grid{grid-template-columns:1fr;}
  .entry-layout{flex-direction:column;}
  .infobox{width:100%;}
  .interlang{margin-left:0;}
}
@media (max-width:640px){
  .masthead-inner{flex-direction:column; align-items:stretch;}
  .searchbox{max-width:none;}
  .interlang{margin-left:0; justify-content:center;}
}
