/* =========================================================
   RESEARCH PROJECTS PAGE — page-specific only.
   Loaded solely by research-projects.php via $pageExtraCss.

   Two content shapes on this page:
   1. "Major Sponsored Research Projects" — a handful of large,
      externally-funded projects (AICTE, DST, etc.) with a named
      PI, amount and funding authority. Shown as highlight cards,
      matching the accred-hi-card language used on the Approvals
      & Accreditation page.
   2. "Institutional Seed Money & Research Grants" — a long,
      year-wise ledger of in-house grants (investigator, funding
      source, project title, no amount on record). Shown as
      compact rows, matching the ledger-row / ee-row language
      used on the Approvals and Entrance Examination pages.
   ========================================================= */

/* ---- Section scaffolding (shared kicker/heading/lede rhythm) ---- */
.rp-section{ padding:72px 0; }
.rp-section--tint{ background:var(--cream); }

.rp-kicker{
  display:inline-flex; align-items:center; gap:10px;
  font-size:.76rem; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:var(--green-700); margin-bottom:12px;
}
.rp-kicker::before{ content:''; width:22px; height:2px; background:var(--gold-500); }

.rp-heading{
  font-size:clamp(1.55rem,2.4vw,2.1rem);
  font-weight:800; color:var(--green-900); max-width:720px; margin:0 0 14px;
}
.rp-lede{
  max-width:740px;
  font-size:1rem; line-height:1.75; color:var(--ink-soft);
  margin:0 0 40px;
}

/* =========================================================
   MAJOR SPONSORED PROJECTS — highlight cards
   ========================================================= */
.rp-major-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.rp-major-card{
  background:#fff; border:1px solid var(--line);
  border-radius:var(--radius-lg); overflow:hidden;
  display:flex; flex-direction:column;
}
.rp-major-banner{
  background:var(--green-900); color:var(--gold-500);
  font-family:'Poppins',sans-serif; font-weight:800;
  font-size:1rem; letter-spacing:.04em;
  padding:12px 20px; text-align:center;
}
.rp-major-body{ padding:24px 24px 26px; flex:1; display:flex; flex-direction:column; }
.rp-major-eyebrow{
  font-size:.68rem; font-weight:700; letter-spacing:.1em;
  text-transform:uppercase; color:var(--ink-soft); margin-bottom:6px;
}
.rp-major-pi{
  font-family:'Poppins',sans-serif;
  font-size:1.08rem; font-weight:800; color:var(--green-900);
  margin:0 0 12px; line-height:1.3;
}
.rp-major-project{
  font-size:.88rem; line-height:1.65; color:var(--ink);
  margin:0 0 18px;
  flex:1;
}
.rp-major-project strong{ color:var(--green-800); }
.rp-major-stats{
  display:flex; flex-direction:column; gap:0;
  border-top:1px solid var(--line);
  padding-top:14px;
  margin-top:auto;
}
.rp-major-stat{
  display:flex; align-items:baseline; justify-content:space-between;
  gap:10px; padding:6px 0; font-size:.82rem;
}
.rp-major-stat-label{
  font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  font-size:.68rem; color:var(--ink-soft); flex-shrink:0;
}
.rp-major-stat-value{ color:var(--green-800); font-weight:700; text-align:right; }
.rp-major-stat-value.is-amount{ color:var(--gold-600); }

@media (max-width:900px){ .rp-major-grid{ grid-template-columns:1fr; } }

/* =========================================================
   SEED GRANTS — year-wise ledger
   ========================================================= */
.rp-year-panel{
  background:#fff; border:1px solid var(--line);
  border-radius:var(--radius-lg); overflow:hidden;
  margin-bottom:24px;
  scroll-margin-top:96px;
}
.rp-year-panel:last-child{ margin-bottom:0; }
.rp-year-panel-head{
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:20px 28px;
  border-bottom:1px solid var(--line);
  background:var(--green-050,var(--green-100));
}
.rp-year-panel-head h3{
  font-size:1.02rem; font-weight:800; color:var(--green-900); margin:0;
  font-family:'Poppins',sans-serif;
}
.rp-year-count{
  font-size:.72rem; font-weight:700; color:var(--green-700);
  background:#fff; border:1px solid var(--line);
  border-radius:999px; padding:4px 12px; flex-shrink:0;
}

.rp-grant-list{ display:flex; flex-direction:column; }
.rp-grant-row{
  display:grid;
  grid-template-columns:40px 1fr auto;
  align-items:center;
  gap:16px;
  padding:14px 28px;
  border-bottom:1px solid var(--line);
}
.rp-grant-row:last-child{ border-bottom:none; }
.rp-grant-row:hover{ background:var(--green-050,var(--green-100)); }
.rp-grant-num{
  font-family:'Poppins',sans-serif; font-weight:800;
  font-size:.8rem; color:var(--ink-soft);
  background:var(--green-100); border-radius:8px;
  padding:6px 0; text-align:center;
}
.rp-grant-body{ min-width:0; display:flex; flex-direction:column; gap:3px; }
.rp-grant-investigator{
  font-size:.9rem; font-weight:700; color:var(--green-900);
}
.rp-grant-title{
  font-size:.83rem; line-height:1.55; color:var(--ink-soft);
}
.rp-grant-funding{
  flex-shrink:0;
  font-family:'Poppins',sans-serif;
  font-size:.74rem; font-weight:700; color:var(--green-700);
  background:var(--green-100); border-radius:6px;
  padding:5px 10px; white-space:nowrap; text-align:center;
  max-width:150px;
}

@media (max-width:640px){
  .rp-grant-row{ grid-template-columns:32px 1fr; row-gap:8px; padding:14px 18px; }
  .rp-grant-funding{ grid-column:2; max-width:none; width:fit-content; }
  .rp-year-panel-head{ padding:16px 18px; }
}

/* =========================================================
   SIDEBAR + LAYOUT — matches the year-jump-nav pattern used
   on the faculty publication year pages (fry-sidebar).
   ========================================================= */
.rp-body{ padding:0 0 32px; }
.rp-layout{
  display:grid;
  grid-template-columns:260px 1fr;
  gap:56px;
  align-items:start;
}
.rp-sidebar{
  position:sticky;
  top:96px;
  margin-top:64px;
  display:flex;
  flex-direction:column;
  gap:20px;
}
.rp-nav-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:22px 22px 14px;
  box-shadow:var(--shadow-card);
}
.rp-nav-card h4{
  font-size:.76rem; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--green-800); margin-bottom:12px;
}
.rp-jump-nav{ display:flex; flex-direction:column; gap:2px; }
.rp-jump-nav a{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:9px 10px; border-radius:8px;
  font-size:.86rem; font-weight:600; color:var(--ink-soft);
  border-left:2px solid transparent;
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.rp-jump-nav a:hover{ background:var(--green-100); color:var(--green-800); }
.rp-jump-nav a.is-active{
  background:var(--green-100); color:var(--green-800);
  border-left-color:var(--gold-500); font-weight:700;
}
.rp-jump-count{
  font-size:.68rem; font-weight:700; color:var(--green-700);
  background:var(--green-100); border-radius:999px;
  padding:2px 8px; flex-shrink:0;
}
.rp-jump-nav a.is-active .rp-jump-count{ background:#fff; }

.rp-stat-card{
  display:flex; flex-direction:column; gap:4px;
  background:var(--green-900); border-radius:var(--radius-lg);
  padding:22px; color:#fff;
}
.rp-stat-value{
  font-family:'Poppins',sans-serif; font-weight:800;
  font-size:1.8rem; color:var(--gold-500); line-height:1.1;
}
.rp-stat-label{ font-size:.78rem; color:rgba(255,255,255,.8); }

.rp-main{ min-width:0; padding-top:64px; }

@media (max-width:980px){
  .rp-layout{ grid-template-columns:1fr; }
  .rp-sidebar{ position:static; margin-top:-40px; flex-direction:row; flex-wrap:wrap; gap:18px; }
  .rp-nav-card, .rp-stat-card{ flex:1 1 260px; }
}
@media (max-width:640px){
  .rp-sidebar{ flex-direction:column; }
  .rp-main{ padding-top:44px; }
}

/* ---- Disclaimer note ---- */
.rp-note{
  max-width:760px;
  font-size:.84rem;
  line-height:1.7;
  color:var(--ink-soft);
  font-style:italic;
  border-left:2px solid var(--gold-500);
  padding-left:16px;
  margin-top:8px;
}
