/* अध्ययनसार™ — राजव्यवस्था अध्यायों का साझा पुस्तक-पाठक
   एक ही दो-स्तंभीय ढाँचा, तटस्थ सतह, अलग मोबाइल तथ्य और विषयानुकूल प्रश्न।
   भविष्य के प्रत्येक polity/chapter-XXX पृष्ठ में यही stylesheet और class names रहें।
   सभी रंग साझा design-system/tokens.css से आएँगे। */

html body.polity-course-page[data-as-layout="study"]{
  background:var(--ds-bg);
  color:var(--ds-text);
  overflow-x:clip;
  --polity-book-radius:13px;
}
html body.polity-course-page[data-as-layout="study"] *{box-sizing:border-box}
html body.polity-course-page .polity-course-shell{
  width:min(1180px,calc(100% - 40px));
  max-width:none;
  margin:0 auto;
  padding:19px 0 64px;
  min-width:0;
}
html body.polity-course-page .polity-crumb{
  width:100%;margin:0 0 16px;
  color:var(--ds-text-muted);
  font-size:.84rem;line-height:1.6;
  overflow-wrap:anywhere;
}
html body.polity-course-page .polity-crumb a{
  color:var(--ds-primary);text-decoration:none;
}
html body.polity-course-page .polity-crumb a:hover{text-decoration:underline}

/* मुख्य पाठ बाएँ, सीमित चौड़ाई में संदर्भ-तथ्य दाएँ; तीसरा स्तंभ नहीं */
html body.polity-course-page .polity-course-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(244px,276px);
  gap:clamp(18px,2.25vw,30px);
  align-items:start;min-width:0;
}
html body.polity-course-page .polity-course-main{
  width:100%;max-width:none;min-width:0;
  margin:0;
  padding:clamp(22px,2.65vw,37px) clamp(21px,3vw,42px) 32px;
  border:1px solid var(--ds-border);
  border-radius:var(--polity-book-radius);
  background:var(--ds-surface);
  color:var(--ds-text);
  font-family:var(--ds-font-body);
  font-size:1.125rem;line-height:1.76;
  overflow-wrap:anywhere;
  box-shadow:0 2px 12px color-mix(in srgb,var(--ds-heading) 4%,transparent);
}
/* अध्याय शीर्षक मुख्य लेख के अंदर हो; बाहरी शीर्षक से खाली पट्टी न बने */
html body.polity-course-page .polity-course-head{
  margin:0 0 22px;
  padding:0 0 20px;
  border:0;border-bottom:1px solid var(--ds-border);
  border-radius:0;box-shadow:none;
  background:transparent;color:var(--ds-text);
}
html body.polity-course-page .polity-course-head .polity-kicker{
  margin:0 0 6px;
  color:var(--ds-text-muted);
  font-size:.79rem;font-weight:740;line-height:1.5;letter-spacing:.015em;
}
html body.polity-course-page .polity-course-head h1{
  margin:0;
  color:var(--ds-heading);
  font-size:clamp(1.56rem,2.15vw,2.05rem);
  font-weight:760;line-height:1.45;letter-spacing:0;text-wrap:pretty;
}
html body.polity-course-page .polity-course-head>p:last-child:not(.polity-kicker){
  margin:7px 0 0;color:var(--ds-text-muted);font-size:.95rem;line-height:1.65;
}

/* अध्याय की वास्तविक पुस्तक-शैली: छोटे अंतराल, स्पष्ट क्रम, बिना सजावटी पट्टियों के */
html body.polity-course-page .polity-course-main h2{
  clear:both;
  margin:1.9rem 0 .82rem;
  padding:0 0 .53rem;
  border:0;border-bottom:1px solid var(--ds-border);
  border-radius:0;background:transparent;
  color:var(--ds-heading);
  font-size:clamp(1.27rem,1.65vw,1.48rem);
  font-weight:770;line-height:1.48;letter-spacing:0;
  scroll-margin-top:112px;
}
html body.polity-course-page .polity-course-main .polity-course-head+h2{margin-top:.4rem}
html body.polity-course-page .polity-course-main h3{
  margin:1.35rem 0 .57rem;
  padding:0;border:0;background:transparent;
  color:var(--ds-heading);font-size:1.16rem;font-weight:750;line-height:1.5;
  scroll-margin-top:112px;
}
html body.polity-course-page .polity-course-main h4,
html body.polity-course-page .polity-course-main .polity-book-subhead{
  margin:1.05rem 0 .42rem;
  padding:0;border:0;background:transparent;
  color:var(--ds-heading);font-size:1.025rem;font-weight:750;line-height:1.62;
}
html body.polity-course-page .polity-course-main :is(p,li){
  color:var(--ds-text);line-height:1.77;font-size:inherit;
  overflow-wrap:anywhere;text-align:start;
}
html body.polity-course-page .polity-course-main p{margin:0 0 .85rem}
html body.polity-course-page .polity-course-main strong,
html body.polity-course-page .polity-course-main b{color:var(--ds-heading);font-weight:735}
html body.polity-course-page .polity-course-main a{color:var(--ds-primary);text-underline-offset:3px}
html body.polity-course-page .polity-course-main :where(ul,ol).polity-book-list{
  display:block;
  margin:.48rem 0 1.08rem;
  padding:0 0 0 1.38rem;
  list-style:disc outside;
}
html body.polity-course-page .polity-course-main ol.polity-book-list{list-style:decimal outside}
html body.polity-course-page .polity-course-main .polity-book-list li{
  display:list-item;margin:.3rem 0;padding:0;
  line-height:1.73;color:var(--ds-text);font-weight:400;
}
html body.polity-course-page .polity-course-main .polity-book-list li::marker{color:var(--ds-text-muted)}
html body.polity-course-page .polity-course-main .polity-book-list li.is-numbered{list-style:none;margin-left:-.5rem}
html body.polity-course-page .polity-course-main p.course-item{
  margin:.3rem 0 .55rem;padding:0;border:0;
  color:var(--ds-text);line-height:1.75;
}
html body.polity-course-page .polity-course-main .course-subnote,
html body.polity-course-page .polity-course-main .polity-book-label{
  margin:.8rem 0 .45rem;
  color:var(--ds-text-muted);
  font-size:.93rem;line-height:1.65;font-weight:650;
}
html body.polity-course-page .polity-book-table-wrap{
  max-width:100%;overflow-x:auto;
  margin:12px 0 20px;border:1px solid var(--ds-border);border-radius:9px;
}
html body.polity-course-page .polity-book-table{
  width:100%;min-width:540px;border-collapse:collapse;table-layout:fixed;
  font-size:.94rem;line-height:1.55;
}
html body.polity-course-page .polity-book-table :is(th,td){
  padding:10px 12px;
  color:var(--ds-text);
  border-bottom:1px solid var(--ds-border);
  text-align:left;vertical-align:top;
}
html body.polity-course-page .polity-book-table th{
  font-weight:730;color:var(--ds-heading);background:var(--ds-surface-soft);
}
html body.polity-course-page .polity-book-table tr:last-child td{border-bottom:0}
html body.polity-course-page .polity-book-table td:nth-child(odd){font-weight:700}
html body.polity-course-page .polity-course-main .polity-book-list+.polity-book-list{margin-top:-.35rem}

/* दाईं त्वरित पुनरावृत्ति; वही तथ्य, बेहतर पठनीयता */
html body.polity-course-page .polity-course-facts{
  position:sticky;top:94px;
  max-height:calc(100dvh - 112px);
  overflow-y:auto;scrollbar-width:thin;
  min-width:0;
  margin:0;
  padding:17px 17px 8px;
  border:1px solid var(--ds-border);
  border-radius:var(--polity-book-radius);
  background:var(--ds-surface);
  color:var(--ds-text);
  box-shadow:0 2px 12px color-mix(in srgb,var(--ds-heading) 3%,transparent);
}
html body.polity-course-page .polity-course-facts h2{
  position:sticky;top:-17px;z-index:1;
  margin:0 0 4px;padding:0 0 13px;
  background:var(--ds-surface);
  border-bottom:1px solid var(--ds-border);
  font-size:1.06rem;font-weight:760;line-height:1.5;
  color:var(--ds-heading);
}
html body.polity-course-page :is(.polity-course-facts,.polity-course-mobile-facts) dl{margin:0;padding:0}
html body.polity-course-page :is(.polity-course-facts,.polity-course-mobile-facts) dl>div{
  padding:10px 0;border-bottom:1px solid var(--ds-border);
}
html body.polity-course-page :is(.polity-course-facts,.polity-course-mobile-facts) dl>div:last-child{border-bottom:0}
html body.polity-course-page :is(.polity-course-facts,.polity-course-mobile-facts) dt{
  margin:0 0 3px;color:var(--ds-heading);
  font-size:.86rem;font-weight:760;line-height:1.53;
}
html body.polity-course-page :is(.polity-course-facts,.polity-course-mobile-facts) dd{
  margin:0;color:var(--ds-text);font-size:.87rem;line-height:1.62;
}
html body.polity-course-page .polity-course-mobile-facts{display:none}

/* पढ़ाई के अंत में सरल अध्ययन लिंक */
html body.polity-course-page .polity-course-links{
  display:flex;flex-wrap:wrap;gap:9px;
  margin:28px 0 0;padding:20px 0 0;border:0;border-top:1px solid var(--ds-border);
}
html body.polity-course-page .polity-course-links a{
  display:inline-flex;align-items:center;min-height:40px;
  padding:8px 12px;border:1px solid var(--ds-border);border-radius:8px;
  background:var(--ds-surface);color:var(--ds-primary);
  font-size:.88rem;font-weight:720;line-height:1.5;text-decoration:none;
}
html body.polity-course-page .polity-course-links a:hover,
html body.polity-course-page .polity-course-links a[aria-current="page"]{
  border-color:var(--ds-primary);text-decoration:none;
}

/* MCQ मूल चार-विकल्प रूप में, सही/गलत एवं व्याख्या वही साझा JS संभाले */
html body.polity-course-page .objective-practice-wrap{width:100%!important;max-width:none!important;margin:0}
html body.polity-course-page .mcq-summary{position:static;top:auto;margin-bottom:16px;padding:8px 0 11px}
html body.polity-course-page .mcq-section{margin:0 0 28px}
html body.polity-course-page .mcq-section-head{margin-bottom:12px}
html body.polity-course-page .mcq-card{padding:0 0 24px;overflow-wrap:anywhere}
html body.polity-course-page .mcq-stem p{font-size:1.125rem;font-weight:600}
html body.polity-course-page .mcq-stem .course-qline{margin:.32rem 0;font-weight:500}
html body.polity-course-page .mcq-stem .course-statement{
  margin:.33rem 0;padding:0 0 0 .58rem;
  border-left:2px solid var(--ds-border);font-weight:500;
}
html body.polity-course-page .mcq-explanation{overflow-wrap:anywhere}
html body.polity-course-page .mcq-explanation p{margin:.5rem 0}
html body.polity-course-page .mains-question{
  border-bottom:1px solid var(--ds-border);padding:10px 0 15px;
}
html body.polity-course-page .mains-question h3{margin:.45rem 0 .6rem}
html body.polity-course-page .polity-course-main .polity-mains-stem{
  margin:.65rem 0 .85rem;font-weight:730;color:var(--ds-heading);line-height:1.76;
}
html body.polity-course-page .mains-question .polity-book-list{margin:.5rem 0 .7rem}

html body.polity-course-page .mains-question .mains-question-text{font-weight:730;color:var(--ds-heading)}
/* कोई खंड ऊपर या नीचे अनावश्यक रिक्त स्थान न ले */
html body.polity-course-page .polity-course-main>:first-child{margin-top:0}
html body.polity-course-page .polity-course-main>:last-child{margin-bottom:0}

/* मोबाइल: केवल मुख्य पढ़ाई, तथ्य अलग बंद खंड; क्षैतिज स्क्रॉल नहीं */
@media(max-width:980px){
  html body.polity-course-page .polity-course-shell{
    width:min(830px,calc(100% - 24px));padding:12px 0 45px;
  }
  html body.polity-course-page .polity-course-grid{
    grid-template-columns:minmax(0,1fr);gap:0;
  }
  html body.polity-course-page .polity-course-facts{display:none!important}
  html body.polity-course-page .polity-course-main{
    padding:clamp(17px,3.2vw,29px);
    border-radius:11px;
  }
  html body.polity-course-page .polity-course-mobile-facts{
    display:block;margin:25px 0 8px;
    border:1px solid var(--ds-border);border-radius:9px;
    background:var(--ds-surface);color:var(--ds-text);overflow:hidden;
  }
  html body.polity-course-page .polity-course-mobile-facts>summary{
    cursor:pointer;list-style:none;
    padding:12px 14px;background:var(--ds-surface-soft);
    color:var(--ds-heading);font-size:.96rem;font-weight:740;line-height:1.6;
  }
  html body.polity-course-page .polity-course-mobile-facts>summary::-webkit-details-marker{display:none}
  html body.polity-course-page .polity-course-mobile-facts>summary::after{content:"＋";float:right;font-weight:650}
  html body.polity-course-page .polity-course-mobile-facts[open]>summary::after{content:"－"}
  html body.polity-course-page .polity-course-mobile-facts dl{padding:0 14px 8px}
}
@media(max-width:560px){
  html body.polity-course-page .polity-course-shell{width:calc(100% - 16px)}
  html body.polity-course-page .polity-course-main{padding:17px 15px 23px}
  html body.polity-course-page .polity-course-head h1{font-size:1.53rem;line-height:1.5}
  html body.polity-course-page .polity-course-main h2{font-size:1.24rem}
  html body.polity-course-page .polity-course-main h3{font-size:1.09rem}
  html body.polity-course-page .polity-course-main{font-size:1.125rem}
  html body.polity-course-page .polity-course-links a{width:100%}
  html body.polity-course-page .polity-book-table :is(th,td){padding:8px 9px;font-size:.88rem}
  html body.polity-course-page .mcq-summary{grid-template-columns:1fr auto}
}
