/* Vidyarthi.ai portal styles. GENERATED by _dev/portal_css.py - edit _dev/portal_extra.css or _dev/base_source.css */
.vp img, .vp svg{max-width: 100%;}

.vp h1, .vp h2, .vp h3, .vp h4{margin: 0 0 var(--space-3);
  line-height: var(--lh-heading);
  color: var(--color-text);}

.vp h1{font-size: var(--fs-2xl);}

.vp h2{font-size: var(--fs-xl);}

.vp h3{font-size: var(--fs-lg);}

.vp p{margin: 0 0 var(--space-4);}

.vp a{color: var(--color-primary);
  text-decoration: underline;
  text-underline-offset: 2px;}

.vp a:hover{color: var(--color-primary-hover);}

.vp a:focus-visible, .vp button:focus-visible, .vp input:focus-visible, .vp select:focus-visible, .vp [tabindex]:focus-visible{outline: 3px solid var(--color-focus);
  outline-offset: 2px;}

.vp .visually-hidden{position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;}

.vp .container{width: 100%;
  max-width: 68rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--space-3);
  padding-right: var(--space-3);}

.vp .btn{display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  min-width: 44px;
  padding: 0 var(--space-4);
  font: inherit;
  font-weight: 600;
  text-decoration: none;
  color: var(--color-primary);
  background: var(--color-bg);
  border: 2px solid var(--color-primary);
  border-radius: var(--radius-md);
  cursor: pointer;}

.vp .btn--primary{color: var(--color-on-primary);
  background: var(--color-primary);}

.vp .btn--primary:hover{color: var(--color-on-primary);
  background: var(--color-primary-hover);}

.vp .status{display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 var(--space-3);
  font-size: var(--fs-chip);
  font-weight: 600;
  border: 1px solid var(--color-border);
  border-radius: 999px;
  white-space: nowrap;}

.vp .status--neutral{color: var(--color-text-muted);
  background: var(--color-surface);
  border-color: var(--color-border);}

.vp .status--due{color: var(--color-amber-text);
  background: var(--color-amber-bg);
  border-color: var(--color-amber-border);}

.vp .status--urgent{color: var(--color-red-text);
  background: var(--color-red-bg);
  border-color: var(--color-red-border);}

.vp .status--verified{color: var(--color-green-text);
  background: var(--color-green-bg);
  border-color: var(--color-green-border);}

.vp .header-row{display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  padding-top: var(--space-2);
  padding-bottom: var(--space-2);}

.vp .intro{padding-top: var(--space-6);
  padding-bottom: var(--space-4);}

.vp .intro p{max-width: 42rem;
  font-size: var(--fs-lg);
  color: var(--color-text-muted);}

.vp .blocks{display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);
  padding-top: var(--space-4);
  padding-bottom: var(--space-5);}

.vp .block{padding: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);}

.vp .block-head{display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  margin-bottom: var(--space-2);}

.vp .block-head h2{margin: 0;}

.vp .block-head h2 a, .vp .block-head h3 a{display: inline-flex;
  align-items: center;
  min-height: 44px;}

.vp .block-head h3{margin: 0;}

.vp .find, .vp .more{padding-top: var(--space-4);
  padding-bottom: var(--space-4);}

.vp .cards{display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);}

.vp .block p{margin: 0;
  color: var(--color-text-muted);}

.vp .why{padding-top: var(--space-5);
  padding-bottom: var(--space-5);
  border-top: 1px solid var(--color-border);}

.vp .why-list{list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);}

.vp .why-item svg{width: 28px;
  height: 28px;
  margin-bottom: var(--space-2);
  stroke: var(--color-primary);
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;}

.vp .why-item h3{margin-bottom: var(--space-1);}

.vp .why-item p{margin: 0;
  color: var(--color-text-muted);}

.vp .last-updated{padding-bottom: var(--space-5);
  color: var(--color-text-muted);}

.vp .page{padding-top: var(--space-6);
  padding-bottom: var(--space-6);}

.vp .prose{max-width: 42rem;}

.vp .sample{margin: 0 0 var(--space-3);
  padding: var(--space-3);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);}

.vp .sample-row{display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-bottom: var(--space-4);}

.vp .footer-links{list-style: none;
  margin: 0 0 var(--space-4);
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0 var(--space-4);}

.vp .footer-links a{display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-weight: 600;}

@media (min-width: 480px){
.vp .container{padding-left: var(--space-4);
    padding-right: var(--space-4);}

}
@media (min-width: 768px){
.vp h1{font-size: var(--fs-3xl);}

.vp .blocks{grid-template-columns: 1fr 1fr;}

.vp .cards{grid-template-columns: 1fr 1fr;}

.vp .why-list{grid-template-columns: repeat(3, 1fr);}

}
@media (min-width: 1024px){
.vp .container{padding-left: var(--space-5);
    padding-right: var(--space-5);}

.vp .intro{padding-top: var(--space-7);}

.vp .blocks, .vp .cards{gap: var(--space-5);}

.vp .cards{grid-template-columns: repeat(3, 1fr);}

}
.vp [hidden]{display: none !important;}

.vp .note{color: var(--color-text-muted);}

.vp .filters{display: none;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-3);
  margin: var(--space-4) 0;
  padding: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);}

.js .vp .filters{display: grid;}

.vp .field--search, .vp .field--wide, .vp .field--checks{grid-column: 1 / -1;}

.vp .field{min-width: 0;}

.vp .field label{display: block;
  margin-bottom: var(--space-1);
  font-weight: 600;}

.vp .field input[type="search"], .vp .field select{width: 100%;
  min-height: 44px;
  padding: 0 var(--space-3);
  font: inherit;
  color: var(--color-text);
  background: var(--color-bg);
  border: 2px solid var(--color-border);
  border-radius: var(--radius-md);}

.vp .field--checks{display: flex;
  flex-direction: column;}

.vp .field .check{display: flex;
  align-items: center;
  gap: var(--space-2);
  min-height: 44px;
  margin: 0;
  font-weight: 400;
  cursor: pointer;}

.vp .check input{flex: none;
  width: 24px;
  height: 24px;
  accent-color: var(--color-primary);}

.vp .course-count{display: none;
  margin: 0 0 var(--space-3);
  color: var(--color-text-muted);}

.js .vp .course-count{display: block;}

.vp .course-list{list-style: none;
  margin: 0 0 var(--space-5);
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);}

.vp .course{display: flex;
  flex-direction: column;
  padding: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);}

.vp .course-title{margin: 0 0 var(--space-1);
  font-size: var(--fs-lg);}

.vp .course-provider{margin: 0 0 var(--space-3);
  font-weight: 600;
  color: var(--color-text-muted);}

.vp .course-facts{list-style: none;
  margin: 0 0 var(--space-3);
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);}

.vp .course-facts .status{white-space: normal;}

.vp .course-desc{margin: 0 0 var(--space-3);}

.vp .course-fee{margin: 0 0 var(--space-3);
  font-weight: 600;
  color: var(--color-amber-text);}

.vp .course-for{margin: 0 0 var(--space-4);
  font-size: var(--fs-chip);
  color: var(--color-text-muted);}

.vp .course-go{margin-top: auto;
  align-self: stretch;}

.vp .course-empty{display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);}

.vp .course-more{text-align: center;}

@media (min-width: 768px){
.vp .filters{grid-template-columns: repeat(3, 1fr);}

.vp .field--wide{grid-column: auto;}

.vp .field--checks{flex-direction: row;
    flex-wrap: wrap;
    gap: 0 var(--space-5);}

.vp .course-list{grid-template-columns: 1fr 1fr;}

.vp .course-go{align-self: flex-start;}

}
@media (min-width: 1024px){
.vp .course-list{grid-template-columns: repeat(3, 1fr);
    gap: var(--space-5);}

}
.vp .small-title{margin: var(--space-4) 0 var(--space-2);
  font-size: var(--fs-md, 1.05rem);}

.vp .state-links{list-style: none;
  margin: 0 0 var(--space-4);
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);}

.js .vp .course-count{display: block;}

.vp .job-list{list-style: none;
  margin: 0 0 var(--space-5);
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-4);}

.vp .job{display: flex;
  flex-direction: column;
  padding: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);}

.vp .job-title{margin: 0 0 var(--space-1);
  font-size: var(--fs-lg);}

.vp .job-org{margin: 0 0 var(--space-3);
  font-weight: 600;
  color: var(--color-text-muted);}

.vp .job-dates{margin: 0 0 var(--space-4);}

.vp .job-go{margin-top: auto;
  align-self: stretch;}

.vp .job-list--compact{margin: var(--space-3) 0;
  gap: var(--space-3);}

@media (min-width: 768px){
.vp .job-list{grid-template-columns: 1fr 1fr;}

.vp .job-list--compact{grid-template-columns: 1fr;}

}
@media (min-width: 1024px){
.vp .job-list:not(.job-list--compact){grid-template-columns: repeat(3, 1fr);}

}
.vp .status--posts{gap: 0.3em;}

.vp .state-count{margin-left: 0.3em;
  font-weight: 400;}

.vp .state-links .btn--has{border-color: var(--color-primary);}

.vp .state-more{margin: 0 0 var(--space-4);}

.vp .state-more summary{cursor: pointer;
  min-height: 44px;
  display: flex;
  align-items: center;
  font-weight: 600;
  color: var(--color-primary);}

.vp .state-more[open] summary{margin-bottom: var(--space-2);}

.vp .plain-list{margin: 0 0 var(--space-5);
  padding-left: 1.25rem;
  display: grid;
  gap: var(--space-2);
  max-width: 42rem;}

.vp .skills, .vp .more{margin-top: var(--space-6);}

.vp h1, .vp h2, .vp h3{font-family: var(--display); letter-spacing: -.01em;}

.vp .btn{border-radius: 999px; border-width: 2px;}

.vp .btn--primary{background: linear-gradient(135deg, var(--indigo), var(--violet)); border-color: transparent;}

.vp .btn--accent{color: var(--night); background: linear-gradient(135deg, var(--saffron2), var(--saffron)); border-color: transparent; box-shadow: 0 10px 24px -10px rgba(255,122,26,.8);}

.vp .btn--accent:hover{color: var(--night); filter: brightness(1.06);}

.vp .btn--ghost{color: #fff; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.35);}

.vp .btn--ghost:hover{color: #fff; background: rgba(255,255,255,.16);}

.vp .blocks{padding-top: var(--space-6);}

.vp .block{position: relative; background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
  box-shadow: var(--shadow); padding: var(--space-5);}

.vp .cards .block{transition: transform .15s ease, box-shadow .15s ease;}

.vp .cards .block:hover{transform: translateY(-3px);}

.vp .cards .block::before{content: ""; position: absolute; left: var(--space-5); right: var(--space-5); top: 0; height: 4px; border-radius: 0 0 4px 4px;
  background: linear-gradient(90deg, var(--indigo2), var(--violet));}

.vp .cards .block:nth-child(3n+2)::before{background: linear-gradient(90deg, var(--saffron2), var(--saffron));}

.vp .cards .block:nth-child(3n)::before{background: linear-gradient(90deg, #34d399, #10b981);}

.vp .card-icon{display: inline-grid; place-items: center; width: 48px; height: 48px; margin-bottom: var(--space-3);
  border-radius: 14px; color: #fff; background: linear-gradient(135deg, var(--indigo2), var(--violet));
  box-shadow: 0 10px 20px -10px rgba(79,70,229,.7);}

.vp .cards .block:nth-child(3n+2) .card-icon{background: linear-gradient(135deg, var(--saffron2), var(--saffron)); box-shadow: 0 10px 20px -10px rgba(255,122,26,.8); color: var(--night);}

.vp .cards .block:nth-child(3n) .card-icon{background: linear-gradient(135deg, #34d399, #10b981); box-shadow: 0 10px 20px -10px rgba(16,185,129,.7); color: var(--night);}

.vp .card-icon svg{width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round;}

.vp .find h2, .vp .skills h2, .vp .more h2, .vp .why h2{font-size: clamp(1.4rem, 3.5vw, 1.9rem); font-weight: 800; margin-bottom: var(--space-4);}

.vp .find, .vp .skills, .vp .more{padding-top: var(--space-6);}

.vp .skills, .vp .more{padding-bottom: 0;}

.vp .why{background: linear-gradient(180deg, #f1efff, var(--paper)); border-top: 0; padding-top: var(--space-7); margin-top: var(--space-6);}

.vp .why-item{background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg); padding: var(--space-5); box-shadow: var(--shadow);}

.vp .why-item svg{width: 46px; height: 46px; padding: 11px; border-radius: 14px; stroke: #fff; background: linear-gradient(135deg, var(--indigo2), var(--violet));}

.vp .page > h1:first-child, .vp .prose > h1:first-child{position: relative; overflow: hidden; color: #fff;
  margin: 0 0 var(--space-5); padding: var(--space-6) var(--space-5); border-radius: var(--radius-lg);
  font-size: clamp(1.6rem, 4.5vw, 2.4rem); font-weight: 800;
  background:
    radial-gradient(380px 200px at 100% 0%, rgba(255,122,26,.45), transparent 65%),
    radial-gradient(420px 240px at 0% 100%, rgba(139,92,246,.55), transparent 65%),
    linear-gradient(120deg, var(--night), #1b1760);
  box-shadow: var(--shadow);}

.vp .page > h1:first-child::after, .vp .prose > h1:first-child::after{content: ""; position: absolute; right: -30px; top: -30px; width: 150px; height: 150px; border-radius: 50%;
  border: 2px dashed rgba(255,255,255,.22); pointer-events: none;}

.vp .page{padding-top: var(--space-5);}

.vp .filters{background: #fff; border-radius: var(--radius-lg); box-shadow: var(--shadow); border-color: var(--line);}

.vp .job, .vp .course{background: #fff; border-radius: var(--radius-lg); border: 1px solid var(--line); box-shadow: var(--shadow);}

.vp .job{border-left: 5px solid var(--indigo2);}

.vp .job-title a, .vp .course-title a{color: var(--night);}

.vp .job-title a:hover, .vp .course-title a:hover{color: var(--indigo);}

.vp .job-go, .vp .course-go{color: var(--indigo); font-weight: 700;}

.vp .status{border-radius: 999px;}

.vp .field input[type="search"], .vp .field select{border-radius: 12px; background: #fff; border-color: var(--color-border);}

.vp .field input[type="search"]:focus, .vp .field select:focus{border-color: var(--indigo2);}

.vp .state-links a, .vp .btn-row a{border-radius: 999px;}

.vp .state-links a{background: #fff; border: 2px solid #c7c9f5; color: var(--color-primary); text-decoration: none; font-weight: 600;}

.vp .state-links a:hover{background: #eef0ff; border-color: var(--indigo2);}

@media (prefers-reduced-motion: reduce){
.vp .cards .block{transition: none;}

.vp .cards .block:hover{transform: none;}

}
.vp .btn--primary, .vp .btn--primary:hover, .vp .job-go, .vp .job-go:hover{color: #fff; text-decoration: none;}

.vp .band{margin-top: var(--space-7);}

.vp .band h2 a{color: inherit; text-decoration: none;}

.vp .tiles{display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-3);}

.vp .tile{display: flex; align-items: center; gap: .75rem; min-height: 64px; padding: .75rem 1rem; background: #fff; border: 1px solid var(--line); border-radius: 16px; color: var(--night); font-weight: 700; text-decoration: none; box-shadow: var(--shadow); transition: transform .15s ease;}

.vp .tile:hover{transform: translateY(-2px); border-color: var(--indigo2);}

.vp .tile .card-icon{margin: 0; flex: none; width: 40px; height: 40px;}

.vp .tile--all{background: linear-gradient(135deg, var(--indigo), var(--violet)); color: #fff; border-color: transparent;}

.vp .tile--all .card-icon{background: rgba(255,255,255,.2); color: #fff; box-shadow: none;}

.vp .pills{display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: var(--space-3);}

.vp .pill{display: inline-flex; align-items: center; min-height: 44px; padding: 0 1rem; border-radius: 999px; background: #fff; border: 1px solid var(--line); color: var(--color-primary); font-weight: 600; text-decoration: none;}

.vp .pill:hover{border-color: var(--indigo2); background: #f1f0ff;}

.vp .partner{display: grid; gap: var(--space-4); align-items: center; margin-top: var(--space-7); padding: var(--space-6); border-radius: 24px; color: #fff; background: radial-gradient(circle at 90% 10%, rgba(255,122,26,.35), transparent 45%), linear-gradient(120deg, var(--night), #1b1760);}

.vp .partner h2{color: #fff; margin-bottom: var(--space-2);}

.vp .partner p{color: #d7daf5; margin: 0; max-width: 40rem;}

.vp .cards--four{grid-template-columns: 1fr;}

@media (min-width: 480px){
.vp .tiles{grid-template-columns: repeat(3, 1fr);}

}
@media (min-width: 768px){
.vp .tiles{grid-template-columns: repeat(4, 1fr);}

.vp .cards--four{grid-template-columns: repeat(2, 1fr);}

.vp .partner{grid-template-columns: 1fr auto;}

}
@media (min-width: 1024px){
.vp .cards--four{grid-template-columns: repeat(4, 1fr);}

}

/* ---- tokens for the content area, mapped onto the live Vidyarthi.ai palette ---- */
.vp{
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;
  --radius-sm:8px;--radius-md:12px;--radius-lg:20px;
  --fs-chip:.875rem;--fs-base:1rem;--fs-lg:1.125rem;--fs-xl:1.5rem;--fs-2xl:1.75rem;--fs-3xl:2rem;
  --lh-body:1.55;--lh-heading:1.2;
  --color-primary:#4338ca;--color-primary-hover:#3730a3;--color-on-primary:#fff;
  --color-text:#0f1222;--color-text-muted:#3a3f55;--color-bg:#fff;--color-surface:#fff;--color-border:#e3ded3;--color-focus:#0b57d0;
  --color-amber-bg:#fff3d1;--color-amber-text:#6b4200;--color-amber-border:#e0a52f;
  --color-red-bg:#fde8e8;--color-red-text:#8f1818;--color-red-border:#e08080;
  --color-green-bg:#e3f4e9;--color-green-text:#0e5c35;--color-green-border:#7cc59b;
  --shadow:0 1px 2px rgba(15,18,34,.05),0 14px 32px -14px rgba(15,18,34,.22);
  font-family:Inter,system-ui,-apple-system,'Segoe UI','Noto Sans Devanagari','Noto Sans Bengali',sans-serif;
  color:var(--ink);font-size:16px;line-height:1.55;
}
.vp *,.vp *::before,.vp *::after{box-sizing:border-box}
.vp h1,.vp h2,.vp h3,.vp h4{font-family:var(--display);letter-spacing:-.02em;color:var(--ink)}
.vp ul,.vp ol{list-style:none}
.vp .plain-list{list-style:disc;padding-left:1.4rem;display:grid;gap:6px}
.vp p{margin-bottom:var(--space-3)}
.vp a{text-decoration:none}
.vp .prose a,.vp .plain-list a{text-decoration:underline}
.pg-sec{padding-top:56px}
.pg-sec .w{min-width:0}
.phero .tag{color:var(--saffron2)}
.phero-acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.phero .notr p,.phero p.notr{color:rgba(255,255,255,.72);font-size:18px;max-width:680px}
.fine{color:var(--muted);font-size:14px;margin-top:8px}
.fdisc{padding-bottom:6px}
.fdisc p{color:rgba(255,255,255,.55);font-size:13px;max-width:780px;margin-top:6px}
.i18n-pending .vp,.i18n-pending [data-i18n]{visibility:hidden}

/* ---- hero search modes ---- */
.smode{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap}
.smode button{font:inherit;font-size:13.5px;font-weight:700;padding:7px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;cursor:pointer;transition:.2s}
.smode button:hover{background:rgba(255,255,255,.18)}
.smode button.on{background:#fff;color:var(--ink);border-color:#fff}

/* ---- home: jobs ---- */
.jobsec{padding-bottom:40px}
.jt{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:32px}
.jtile{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px;min-width:0;transition:transform .2s,box-shadow .2s}
.jtile:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.jtile strong{display:block;font-family:var(--display);font-size:15.5px;line-height:1.2}
.jtile small{color:var(--muted);font-size:13px}
.jtile--all{background:var(--ink);border-color:var(--ink);color:#fff}
.jtile--all small{color:rgba(255,255,255,.72)}
.jtile--all .ic{background:rgba(255,255,255,.14);color:#fff!important}
.jcols{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.jcol{min-width:0}
.jcol h3{font-size:21px;font-weight:800;margin-bottom:14px}
.jcol .job-list{display:grid;gap:12px;grid-template-columns:1fr!important}
.sp{margin-top:40px}
.sp h3{font-family:var(--display);font-size:21px;font-weight:800;margin-bottom:14px}
.sp .pills{display:flex;flex-wrap:wrap;gap:8px}
.spill{display:inline-flex;align-items:center;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;font-weight:600;transition:.2s}
.spill:hover{border-color:var(--ink);transform:translateY(-1px)}
.gov .sp{margin-top:36px}

/* ---- home: check every day ---- */
.dq{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.dqc{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:8px;min-width:0}
.dqc h3{font-size:19px;font-weight:800}
.dqc p{color:var(--muted);font-size:14.5px}
.dqc em{font-style:normal;margin-top:auto;padding-top:0;font-size:12px;font-weight:700;color:var(--indigo);background:#eef0ff;padding:4px 10px;border-radius:999px;align-self:flex-start}

@media (max-width:1100px){.jt{grid-template-columns:repeat(3,1fr)}.dq{grid-template-columns:1fr 1fr}}
@media (max-width:860px){.jcols{grid-template-columns:1fr}}
@media (max-width:640px){.jt{grid-template-columns:1fr 1fr}.dq{grid-template-columns:1fr}.pg-sec{padding-top:36px}}

/* ---- content-area polish ---- */
.vp .filters{position:static!important;top:auto!important}
.vp .note,.vp .prose.note{background:#fff4ea;border:1px solid #ffd9b8;color:#7a3a00;border-radius:16px;padding:14px 18px;font-size:15px;max-width:none}
.vp .small-title{font-size:22px;font-weight:800;margin:28px 0 12px}
.vp .state-links{display:flex;flex-wrap:wrap;gap:10px}
.vp .state-links a{text-decoration:none}

/* ---- nav: more items than before, so free some room on mid-size screens ---- */
@media (max-width:1380px){.nav .right .ib[href="courses.html"]{display:none}}

/* ---- home: government jobs showcase ---- */
.jshow{display:grid;grid-template-columns:1.05fr 1fr;border-radius:32px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--sh)}
.jshow-l{position:relative;color:#fff;padding:48px 44px;background:linear-gradient(135deg,rgba(10,11,30,.95) 0%,rgba(24,28,92,.92) 60%,rgba(60,30,110,.9) 100%),url('../images/india-flag.jpg') center/cover;min-width:0}
.jshow-l .tag{color:var(--saffron2)}
.jshow-l h2{font-size:clamp(28px,3.4vw,42px);line-height:1.08;font-weight:800;margin:14px 0 14px;color:#fff;text-wrap:balance}
.jshow-l>p{color:rgba(255,255,255,.76);font-size:16.5px;max-width:520px}
.jfind{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;margin-top:26px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:18px}
.jfind label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:rgba(255,255,255,.7);min-width:0}
.jfind .jf-q{grid-column:1/-1}
.jfind input,.jfind select{font:inherit;font-size:15px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink);background:#fff;border:0;border-radius:12px;padding:12px 14px;width:100%;min-width:0}
.jfind input:focus,.jfind select:focus{outline:3px solid var(--saffron2)}
.jfind .btn{grid-column:1/-1;justify-content:center;margin-top:4px}
.jtrust{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;list-style:none}
.jtrust li{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:rgba(255,255,255,.82)}
.jtrust .i{width:18px;height:18px;color:var(--saffron2)}
.jshow-r{padding:40px 36px;display:flex;flex-direction:column;gap:18px;min-width:0;background:linear-gradient(180deg,#fff,#fbf8f2)}
.jshow-r h3{font-size:20px;font-weight:800}
.jshow-r .jt{grid-template-columns:1fr 1fr;gap:12px;margin:0}
.jshow-r .jtile{padding:14px 14px;border-radius:16px;background:#fff}
.jshow-r .jtile .ic{width:44px;height:44px;flex:none}
.jportals{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--muted);padding-top:14px;border-top:1px dashed var(--line)}
.jportals a{padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-size:13px;font-weight:700}
.jportals a:hover{border-color:var(--ink)}
.jportals .jp-all{margin-left:auto;display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:var(--indigo)}
@media (max-width:980px){.jshow{grid-template-columns:1fr}.jshow-l{padding:36px 26px}.jshow-r{padding:30px 22px}}
@media (max-width:520px){.jfind{grid-template-columns:1fr}.jshow-r .jt{grid-template-columns:1fr}}

.jshow-r .jtile .ic{display:grid;place-items:center;border-radius:12px}
.jshow-r .jtile .ic .i{width:22px;height:22px}
.jshow-r .jtile--all{background:var(--ink);border-color:var(--ink);color:#fff}
.jshow-r .jtile--all .ic{background:rgba(255,255,255,.16);color:#fff!important}

/* jobs page polish */
.vp .jstats{list-style:none;margin:20px 0 8px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.vp .jstats li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;display:flex;flex-direction:column;gap:2px;box-shadow:0 1px 2px rgba(15,18,40,.04)}
.vp .jstats b{font:800 28px/1.1 "Plus Jakarta Sans",system-ui,sans-serif;color:var(--indigo)}
.vp .jstats span{font-size:13px;color:#5b6075;font-weight:600}
.vp #job-filters{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 28px rgba(15,18,40,.06);margin-top:20px}
.vp .job-list{gap:18px}
.vp .job{border-left-width:0;border-top:4px solid var(--indigo2);padding:20px;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.vp .job:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(15,18,40,.12)}
.vp .job .job-title{font-size:18px;line-height:1.3}
.vp .job .job-dates{margin-top:auto;padding-top:10px;font-weight:600}
.vp .job .job-days{display:inline-block;margin-left:6px;padding:2px 10px;border-radius:999px;background:#eef0ff;color:var(--indigo);font-size:12.5px;font-weight:700}
.vp .job[data-days-low] .job-days{background:#ffe9e3;color:#c2410c}
.vp .last-updated{font-size:13px;color:#6b7089;margin-top:20px}
.pg-sec{padding-bottom:56px}
@media (max-width:760px){.vp .jstats{grid-template-columns:repeat(2,1fr)}}

.rules{margin:12px 0 0;padding-left:22px;display:grid;gap:8px;max-width:760px;line-height:1.55}

/* exams page */
.vp .xc .xd{font-weight:700;color:var(--ink)}
.vp .xc .xleft{display:block;font-style:normal;font-size:.82rem;color:#b45309;font-weight:600;margin-top:2px}
.vp .xc .xleft:empty{display:none}
.vp .xc[hidden]{display:none}
