/* Global typography refresh — Marathi + English */
:root{
  --font-ui:"Inter","Noto Sans Devanagari","Nirmala UI","Mangal",system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* Base text rendering */
html,body{
  font-family:var(--font-ui);
  font-optical-sizing:auto;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
body{
  font-weight:400;
  line-height:1.62;
  letter-spacing:0;
}

/* Keep every interactive control visually consistent */
button,input,textarea,select,option{
  font-family:var(--font-ui);
  font-weight:500;
  letter-spacing:0;
}
input::placeholder,textarea::placeholder{font-weight:400;color:#8a96a6}

/* Headings — strong but not overly heavy */
h1,h2,h3,h4,h5,h6,
.section-head h1,.section-head h2,.dashboard-head h1,
.panel-head h3,.auth-card h1,.module-card h3,.school-card h3,
.coordinator-content h2,.hm-completion-head h2,.hm-task-head h2{
  font-family:var(--font-ui);
  font-weight:800;
  letter-spacing:0;
  text-wrap:balance;
}

/* Large Marathi headings need slightly more breathing room for matras */
.hero h1,.home-hero h1{
  font-family:var(--font-ui);
  font-weight:800;
  line-height:1.16;
  letter-spacing:0;
}
.home-hero h1 span{letter-spacing:0}

/* Official identity */
.brand strong{
  font-family:var(--font-ui);
  font-weight:800;
  letter-spacing:0;
}
.brand-official,.brand-meta,.gov-strip{
  font-family:var(--font-ui);
  font-weight:600;
  letter-spacing:.01em;
}
.brand small{font-family:var(--font-ui);font-weight:500}

/* Navigation */
.nav{
  font-family:var(--font-ui);
  font-weight:700;
  letter-spacing:0;
}
.nav a:not(.btn){font-weight:700}

/* Buttons and links */
.btn,.link-arrow{
  font-family:var(--font-ui);
  font-weight:700;
  letter-spacing:0;
}
.btn-sm{font-weight:700}

/* Labels, badges and small UI text */
.eyebrow,.panel-kicker,.status-pill,.badge,
.home-section-note,.announcement-label,
.coordinator-kicker,.task-chip,.my-task-chip,
.hm-status,.hm-task-priority,.report-status{
  font-family:var(--font-ui);
  font-weight:700;
}
.eyebrow,.panel-kicker{
  letter-spacing:.045em;
}
.announcement-track{font-family:var(--font-ui);font-weight:600;letter-spacing:0}

/* Body copy */
p,li,td,dd,.muted,.section-copy{
  font-family:var(--font-ui);
  font-weight:400;
}
strong,b{font-family:var(--font-ui);font-weight:700}

/* Forms */
label,.form-stack label{
  font-family:var(--font-ui);
  font-weight:700;
}
.form-stack input,.form-stack textarea,.form-stack select,
input,textarea,select{
  line-height:1.5;
}

/* Tables */
table,th,td{font-family:var(--font-ui)}
th{
  font-weight:700;
  letter-spacing:.025em;
}
td{font-weight:400}

/* Numeric / dashboard emphasis */
.kpi strong,.mini-stat-grid strong,.completion-percent,
.hm-completion-score strong,.snapshot-card strong,
.month-kpi strong,.my-task-kpi strong{
  font-family:"Inter","Noto Sans Devanagari",system-ui,sans-serif;
  font-weight:700;
  letter-spacing:-.015em;
  font-variant-numeric:tabular-nums;
}

/* Cards and secondary information */
.kpi small,.home-kpi-note,.school-meta,.detail-list dt,
.facility-row-card small,.home-download-body small,
.coordinator-meta span{
  font-weight:500;
}

/* Profile quote */
.coordinator-content blockquote{
  font-family:var(--font-ui);
  font-weight:600;
  line-height:1.75;
  letter-spacing:0;
}

/* Prevent older negative tracking rules from making Devanagari look cramped */
.coordinator-content h2,
.section-head h1,.section-head h2,.dashboard-head h1,
.brand strong{
  letter-spacing:0;
}

/* Mobile readability */
@media(max-width:760px){
  body{line-height:1.58}
  .nav{font-weight:700}
  .hero h1,.home-hero h1{line-height:1.18}
}
