@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap');
/* NextGen Sarkari Modern UI Refresh
   Purpose: Visual-only redesign inspired by a fresh civic job-portal shell.
   Existing routes, IDs, APIs and inline JS are preserved. */
:root{
  --ng-bg:#f6faf7;
  --ng-bg-2:#eef7f3;
  --ng-surface:#ffffff;
  --ng-surface-soft:#e8f6f1;
  --ng-surface-blue:#eef4ff;
  --ng-border:rgba(15,118,110,.12);
  --ng-border-strong:rgba(15,118,110,.22);
  --ng-primary:#0f766e;
  --ng-primary-2:#f59e0b;
  --ng-primary-dark:#115e59;
  --ng-accent:#ea580c;
  --ng-text:#0f172a;
  --ng-muted:#64748b;
  --ng-muted-2:#94a3b8;
  --ng-success:#22c55e;
  --ng-danger:#ef4444;
  --ng-warning:#f59e0b;
  --ng-radius-sm:14px;
  --ng-radius:20px;
  --ng-radius-lg:28px;
  --ng-pill:999px;
  --ng-shadow:0 18px 45px rgba(32,36,54,.08);
  --ng-shadow-soft:0 10px 30px rgba(32,36,54,.06);
  --ng-shadow-float:0 22px 60px rgba(15,118,110,.18);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at 15% 0%, rgba(245,158,11,.08), transparent 28%),
    radial-gradient(circle at 85% 5%, rgba(15,118,110,.08), transparent 32%),
    linear-gradient(180deg,var(--ng-bg) 0%,#ffffff 68%);
  color:var(--ng-text);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing:-.01em;
}
body.sticky-footer-page{background:linear-gradient(180deg,var(--ng-bg) 0%,#fff 70%)}
img{max-width:100%}
a{color:inherit}
::selection{background:rgba(15,118,110,.18)}
:focus-visible{outline:3px solid rgba(15,118,110,.4);outline-offset:3px;border-radius:10px}

/* Header / app bar */
header,
.site-header,
.page-header{
  background:rgba(255,255,255,.82)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  color:var(--ng-text)!important;
  border-bottom:1px solid rgba(15,118,110,.10);
  box-shadow:0 8px 28px rgba(32,36,54,.04);
  padding:18px clamp(16px,3vw,36px)!important;
  text-align:left!important;
  position:relative;
  z-index:120;
}
.site-header::after{display:none!important}
.logo-container,
.site-brand,
.sidebar-brand{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:14px!important;
  max-width:1180px;
  margin:0 auto;
  flex-wrap:nowrap!important;
}
.logo-container .logo,
.site-brand .logo,
.sidebar-brand .logo,
.logo{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  border-radius:18px!important;
  object-fit:contain!important;
  background:linear-gradient(135deg,var(--ng-primary),var(--ng-primary-2))!important;
  box-shadow:0 12px 28px rgba(15,118,110,.24)!important;
  padding:8px!important;
}
header h1,
.site-header h1,
.page-header h1,
.site-brand-name h1{
  color:var(--ng-text)!important;
  font-size:clamp(1.25rem,2vw,1.75rem)!important;
  line-height:1.08!important;
  letter-spacing:-.04em!important;
  margin:0!important;
}
header p,
.site-header p,
.page-header p,
.site-brand-name p{
  color:var(--ng-muted)!important;
  margin:4px 0 0!important;
  font-size:.95rem!important;
  line-height:1.35!important;
  opacity:1!important;
}
.modern-top-actions{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:10px;
}
.modern-nav-toggle,
.modern-theme-dot{
  width:46px;
  height:46px;
  border:1px solid rgba(15,118,110,.14);
  border-radius:16px;
  background:var(--ng-surface-soft);
  color:var(--ng-primary);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:1.35rem;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(15,118,110,.08);
}
.modern-theme-dot{display:none;font-size:1.1rem}
.modern-nav-toggle:hover{transform:translateY(-1px)}

/* Desktop top navigation */
nav.site-nav,
.site-nav{
  background:rgba(255,255,255,.84)!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(15,118,110,.10)!important;
  box-shadow:0 12px 28px rgba(32,36,54,.05)!important;
  padding:10px clamp(12px,2vw,22px)!important;
  gap:8px!important;
  top:0!important;
  z-index:110!important;
}
nav.site-nav a,
.site-nav a{
  background:transparent!important;
  border:1px solid transparent!important;
  color:#475569!important;
  border-radius:var(--ng-pill)!important;
  padding:10px 15px!important;
  font-size:.92rem!important;
  font-weight:750!important;
  letter-spacing:-.015em;
  min-height:42px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
nav.site-nav a:hover,
nav.site-nav a.active,
.site-nav a:hover,
.site-nav a.active{
  background:linear-gradient(135deg,var(--ng-primary),var(--ng-primary-dark))!important;
  border-color:rgba(15,118,110,.16)!important;
  color:white!important;
  transform:translateY(-1px)!important;
  box-shadow:0 12px 24px rgba(15,118,110,.22)!important;
}

.container,
.main-content{
  width:min(1180px,100%);
  margin-inline:auto!important;
  padding:clamp(18px,3vw,36px) clamp(16px,3vw,24px) 72px!important;
}

/* Reusable visual components */
.section-title,
.section-headline h2,
.study-section-heading,
.panel h2{
  color:var(--ng-text)!important;
  border-left:0!important;
  padding-left:0!important;
  letter-spacing:-.045em!important;
  font-size:clamp(1.55rem,2.5vw,2.25rem)!important;
  line-height:1.12!important;
  margin:32px 0 16px!important;
}
.section-title::before{
  content:"";
  display:inline-block;
  width:7px;
  height:26px;
  border-radius:var(--ng-pill);
  background:linear-gradient(180deg,var(--ng-primary),var(--ng-accent));
  margin-right:12px;
  vertical-align:-4px;
}
.page-subtitle,
.updates-intro,
.hero-text,
.card p,
.study-card p,
.study-resource-card p{
  color:var(--ng-muted)!important;
}
.card,
.job-card,
.paper-card,
.update-card,
.results-card,
.syllabus-card,
.study-card,
.study-resource-card,
.detail-panel,
.detail-sidebar,
.job-hero-card,
.job-detail-card,
.job-sidebar-card,
.job-faq-card,
.job-related-card,
.papers-filter-card,
.results-filter-card,
.syllabus-filter-card,
.study-toolbar,
.updates-filter-panel,
.panel,
.form-section,
.stat-card,
.stats-card,
.content-coming-soon,
.results-empty-card,
.syllabus-empty-card,
.papers-empty-card,
.study-empty-card,
.updates-empty-state,
.updates-table-wrap{
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(15,118,110,.12)!important;
  border-radius:var(--ng-radius-lg)!important;
  box-shadow:var(--ng-shadow-soft)!important;
}
.card:hover,
.job-card:hover,
.paper-card:hover,
.results-card:hover,
.syllabus-card:hover,
.study-card:hover,
.study-resource-card:hover{
  transform:translateY(-4px)!important;
  box-shadow:var(--ng-shadow)!important;
}
.badge,
.status-badge{
  background:var(--ng-surface-soft)!important;
  color:var(--ng-primary-dark)!important;
  border:1px solid rgba(15,118,110,.12)!important;
  border-radius:var(--ng-pill)!important;
  padding:7px 12px!important;
  font-weight:800!important;
  letter-spacing:.02em!important;
}
.status-new{background:#e9fdf1!important;color:#16803e!important;border-color:rgba(34,197,94,.18)!important}
.status-updated{background:#eef4ff!important;color:#0369a1!important;border-color:rgba(15,118,110,.16)!important}
.status-important{background:#fff7ed!important;color:#c2410c!important;border-color:rgba(245,158,11,.18)!important}
.status-expired{background:#fff1f2!important;color:#be123c!important;border-color:rgba(239,68,68,.18)!important}

.primary-btn,
.secondary-btn,
.card-button,
.updates-action,
.search-submit,
.newsletter-form button,
.button-pill,
button[type="submit"],
.form-actions button,
.action-btn,
.btn-pill{
  border-radius:18px!important;
  min-height:46px;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  font-weight:850!important;
  text-decoration:none!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease!important;
}
.primary-btn,
.card-button.primary,
.search-submit,
.updates-action,
.button-primary,
.form-actions button.primary,
.btn-pill.primary,
button[type="submit"]{
  background:linear-gradient(135deg,var(--ng-primary),var(--ng-primary-dark))!important;
  color:white!important;
  border:1px solid transparent!important;
  box-shadow:0 14px 28px rgba(15,118,110,.22)!important;
}
.secondary-btn,
.card-button.secondary,
.button-secondary,
.button-outline{
  background:var(--ng-surface-soft)!important;
  color:var(--ng-primary-dark)!important;
  border:1px solid rgba(15,118,110,.16)!important;
}
.primary-btn:hover,
.secondary-btn:hover,
.card-button:hover,
.updates-action:hover,
button:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 34px rgba(15,118,110,.20)!important;
}
input,
select,
textarea{
  border:1px solid rgba(15,118,110,.16)!important;
  background:#fbfbff!important;
  border-radius:18px!important;
  min-height:48px!important;
  color:var(--ng-text)!important;
  box-shadow:none!important;
}
input:focus,
select:focus,
textarea:focus{
  outline:none!important;
  border-color:rgba(15,118,110,.55)!important;
  box-shadow:0 0 0 5px rgba(15,118,110,.10)!important;
}

/* Home page: mobile-first hero like the reference */
.modern-announcement{
  width:100%;
  background:rgba(243,239,255,.78);
  border-top:1px solid rgba(15,118,110,.10);
  border-bottom:1px solid rgba(15,118,110,.10);
  color:var(--ng-text);
}
.modern-announcement-inner{
  width:min(1180px,100%);
  margin:0 auto;
  padding:13px clamp(16px,3vw,24px);
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:800;
  color:#1e293b;
}
.modern-announcement-icon{
  width:36px;
  height:36px;
  border-radius:14px;
  background:#dff5ef;
  color:var(--ng-primary);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.modern-announcement a{text-decoration:none;color:inherit}
.main-content .hero{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:clamp(42px,7vw,78px) 0 26px!important;
  margin-top:0!important;
  margin-bottom:22px!important;
  max-width:980px!important;
}
.main-content .hero h2{
  font-size:clamp(2.6rem,7vw,5rem)!important;
  line-height:1.05!important;
  letter-spacing:-.075em!important;
  margin:0 auto 18px!important;
  max-width:930px;
  background:linear-gradient(135deg,#0f766e 0%,#ea580c 48%,#16a34a 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
}
.main-content .hero-text{
  font-size:clamp(1.08rem,2vw,1.35rem)!important;
  line-height:1.65!important;
  max-width:760px;
  margin:0 auto 26px!important;
}
.hero-search{
  width:min(780px,100%);
  margin:0 auto 20px;
  display:grid;
  grid-template-columns:1fr auto;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(15,118,110,.10);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(15,118,110,.14);
}
.hero-search-label{
  display:flex;
  align-items:center;
  gap:14px;
  padding:0 20px;
  color:#6f778b;
}
.hero-search-label svg{
  width:26px;
  height:26px;
  flex:0 0 auto;
  stroke:currentColor;
}
.hero-search input{
  width:100%;
  border:0!important;
  background:transparent!important;
  min-height:68px!important;
  border-radius:0!important;
  padding:0!important;
  font-size:1.15rem!important;
}
.hero-search button{
  border:0;
  background:linear-gradient(135deg,var(--ng-primary),var(--ng-primary-dark));
  color:white;
  font-weight:850;
  font-size:1.08rem;
  padding:0 34px;
  cursor:pointer;
}
.hero-buttons{margin-top:4px!important}
.stat-grid,
.stats-container{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  margin:24px 0 38px!important;
}
.stat-card span,
.stats-card h2,
.stat-card h2,
.stat-card p:first-child{
  color:var(--ng-primary)!important;
  font-size:clamp(1.9rem,3vw,2.8rem)!important;
  font-weight:900!important;
  letter-spacing:-.05em;
}
.stat-card small,
.stats-card p,
.stat-card p{
  color:var(--ng-muted)!important;
  font-weight:750!important;
}
.section-headline,
.section-headline--accent{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:34px 0 18px!important;
}
.section-headline-title{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:clamp(1.35rem,2.2vw,1.8rem);
  font-weight:900;
  color:var(--ng-text);
}
.section-accent-line{background:linear-gradient(180deg,var(--ng-primary),var(--ng-accent))!important;border-radius:var(--ng-pill)!important;width:6px!important;height:28px!important;display:inline-block!important}
.section-icon{background:var(--ng-surface-soft);color:var(--ng-primary);border-radius:14px;padding:8px;line-height:1;display:inline-flex}
.section-headline a,
.section-cta{font-weight:850;color:var(--ng-primary-dark)!important;text-decoration:none!important}
.category-grid,
.job-grid,
.paper-grid,
.results-grid,
.syllabus-grid,
.study-resource-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;
  gap:20px!important;
}
.category-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin-bottom:36px!important}
.category-card{
  min-height:178px;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(15,118,110,.12)!important;
  border-radius:28px!important;
  box-shadow:var(--ng-shadow-soft)!important;
  text-decoration:none!important;
  color:var(--ng-text)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:18px!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.category-card:hover{transform:translateY(-4px)!important;box-shadow:var(--ng-shadow)!important}
.category-card .icon,
.study-card .study-icon,
.results-title-icon,
.syllabus-title-icon,
.previous-papers-title-icon,
.study-page-title .study-icon{
  width:70px!important;
  height:70px!important;
  border-radius:24px!important;
  background:#eef4ff!important;
  color:#0ea5e9!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:2rem!important;
  margin:0!important;
}
.category-card:nth-child(2) .icon{background:#eafaf1!important;color:#22c55e!important}
.category-card:nth-child(3) .icon{background:#fff7ed!important;color:#c026d3!important}
.category-card:nth-child(4) .icon{background:#fff1f2!important;color:#ef4444!important}
.category-card:nth-child(5) .icon{background:#fff7ed!important;color:#f59e0b!important}
.category-card:nth-child(6) .icon{background:#e0f2fe!important;color:#0284c7!important}
.category-card p{font-size:1.08rem!important;font-weight:900!important;margin:0!important;color:var(--ng-text)!important;text-align:center}

.job-card,
.paper-card,
.results-card,
.syllabus-card,
.update-card{
  padding:24px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
  min-height:100%;
  overflow:hidden;
}
.job-card h3,
.paper-card h3,
.results-card h3,
.syllabus-card h3,
.update-card h3,
.card h3{
  color:var(--ng-text)!important;
  font-size:1.18rem!important;
  line-height:1.35!important;
  margin:0 0 6px!important;
  letter-spacing:-.025em!important;
}
.job-card h3 a,
.paper-card h3 a{text-decoration:none!important;color:inherit!important}
.job-info,
.paper-info,
.update-meta,
.job-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.job-info span,
.paper-info span,
.update-meta span,
.job-meta span{
  background:#e7f7f1!important;
  color:#475569!important;
  border-radius:14px!important;
  padding:9px 11px!important;
  font-size:.86rem!important;
  font-weight:700!important;
}
.thumbnail-img,
.study-resource-thumb{
  border-radius:22px!important;
  box-shadow:0 12px 28px rgba(32,36,54,.08);
}
.card-footer,.actions,.paper-actions,.study-resource-actions{margin-top:auto!important;display:flex!important;gap:10px!important;flex-wrap:wrap!important}
.empty-state,.hidden{color:var(--ng-muted)}

/* Filter panels */
.papers-filter-grid,
.updates-filter-grid,
.results-filter-grid,
.syllabus-filter-grid,
.study-toolbar-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:14px!important;
  align-items:end!important;
}
.updates-filter-grid{grid-template-columns:minmax(260px,1.6fr) repeat(4,minmax(150px,1fr))!important}
.search-field{gap:8px!important}
.search-field label{font-weight:800!important;color:var(--ng-text)!important}

/* Latest updates table made softer */
.updates-table th{
  background:#e5f5ef!important;
  color:#1e293b!important;
  border-bottom:1px solid rgba(15,118,110,.12)!important;
}
.updates-table td{border-bottom:1px solid rgba(15,118,110,.08)!important;color:#475569!important}
.updates-table tbody tr:hover{background:#fbfefc!important}

/* Details */
.breadcrumb-bar{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(15,118,110,.10);
  border-radius:var(--ng-pill);
  padding:10px 14px;
  display:inline-flex!important;
  color:var(--ng-muted)!important;
}
.breadcrumb-bar a{color:var(--ng-primary-dark)!important;font-weight:800;text-decoration:none!important}
.job-detail-page .job-title{color:var(--ng-text)!important;letter-spacing:-.055em!important}
.job-detail-page .page-grid,
.detail-layout{gap:24px!important}
.job-detail-page .job-hero-card{background:linear-gradient(135deg,#fff 0%,#f0fdfa 100%)!important}

/* Study material */
.study-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:20px!important}
.study-card{padding:24px!important;gap:10px!important}
.study-card .primary-btn{width:100%;margin-top:auto}
.content-coming-soon{background:linear-gradient(135deg,#fff,#fff7ed)!important}

/* Footer */
footer,
.simple-footer{
  background:linear-gradient(135deg,#071c18 0%,#12352f 100%)!important;
  color:white!important;
  border-radius:32px 32px 0 0;
  margin-top:46px!important;
  box-shadow:0 -18px 50px rgba(32,36,54,.08);
}
.footer-grid{gap:26px!important}
.footer-grid a,
.simple-footer-links a{color:rgba(255,255,255,.76)!important}
.footer-grid a:hover,
.simple-footer-links a:hover{color:#fff!important}

/* Admin refresh */
body:has(.admin-shell){background:linear-gradient(180deg,#f2fbf6 0%,#fff 100%)}
.admin-shell{gap:24px!important;padding-top:24px!important}
.admin-sidebar{border-radius:30px!important;border:1px solid rgba(15,118,110,.12)!important;box-shadow:var(--ng-shadow)!important;top:18px!important}
.section-list button{border-radius:18px!important;background:#fbfbff!important;color:#475569!important;font-weight:750!important;border:1px solid transparent!important}
.section-list button.active,
.section-list button:hover{background:linear-gradient(135deg,var(--ng-primary),var(--ng-primary-dark))!important;color:#fff!important;border-color:transparent!important}
.form-section summary{background:#e5f5ef!important;color:var(--ng-text)!important;border-bottom:1px solid rgba(15,118,110,.12)!important}
.form-section[open] summary{background:#d7f1e9!important}
.form-row label{font-weight:800!important;color:var(--ng-text)!important}
.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important}

/* Mobile bottom navigation */
.modern-bottom-nav{
  position:fixed;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:250;
  display:none;
  grid-template-columns:repeat(5,1fr);
  gap:4px;
  min-height:74px;
  padding:8px;
  border-radius:26px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(15,118,110,.12);
  box-shadow:0 18px 48px rgba(32,36,54,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.modern-bottom-nav a{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-width:0;
  text-decoration:none;
  color:#6f778b;
  border-radius:20px;
  font-size:.73rem;
  font-weight:850;
  line-height:1.1;
}
.modern-bottom-nav a .modern-bottom-icon{
  width:28px;
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:1.25rem;
}
.modern-bottom-nav a.active{color:var(--ng-primary)}
.modern-bottom-nav a.active .modern-bottom-icon{
  background:linear-gradient(135deg,var(--ng-primary),var(--ng-primary-dark));
  color:white;
  border-radius:12px;
  box-shadow:0 10px 20px rgba(15,118,110,.22);
}

@media (max-width:1100px){
  .updates-filter-grid{grid-template-columns:1fr 1fr!important}
  .category-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .detail-layout,.job-detail-page .page-grid{grid-template-columns:1fr!important}
}
@media (max-width:768px){
  body{padding-bottom:96px!important}
  header,
  .site-header,
  .page-header{padding:14px 18px!important;position:sticky;top:0}
  .logo-container .logo,
  .site-brand .logo,
  .logo{width:44px!important;height:44px!important;min-width:44px!important;border-radius:15px!important;padding:7px!important}
  header h1,.site-header h1,.page-header h1{font-size:1.1rem!important}
  header p,.site-header p,.page-header p{font-size:.78rem!important;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .modern-nav-toggle{display:inline-flex!important;margin-left:auto}
  nav.site-nav,
  .site-nav{
    display:none!important;
    position:fixed!important;
    top:72px!important;
    left:12px!important;
    right:12px!important;
    border:1px solid rgba(15,118,110,.12)!important;
    border-radius:24px!important;
    padding:12px!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    max-height:calc(100vh - 170px);
    overflow:auto;
  }
  nav.site-nav.is-open,
  .site-nav.is-open{display:grid!important;grid-template-columns:1fr 1fr!important}
  nav.site-nav a,
  .site-nav a{justify-content:flex-start!important;background:#f0faf5!important;padding:13px 14px!important;font-size:.9rem!important}
  .modern-bottom-nav{display:grid}
  .modern-theme-dot{display:inline-flex}
  .container,.main-content{padding:18px 16px 36px!important}
  .modern-announcement-inner{padding:12px 18px;font-size:.94rem}
  .main-content .hero{padding:46px 0 18px!important}
  .main-content .hero h2{font-size:clamp(2.45rem,12vw,3.35rem)!important}
  .main-content .hero-text{font-size:1.04rem!important;line-height:1.65!important;margin-bottom:24px!important}
  .hero-search{grid-template-columns:1fr auto;border-radius:22px;margin-bottom:18px}
  .hero-search-label{padding:0 14px;gap:10px}
  .hero-search input{min-height:58px!important;font-size:1rem!important}
  .hero-search button{padding:0 20px;font-size:1rem}
  .hero-buttons{display:none!important}
  .stat-grid,.stats-container{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin:18px 0 28px!important}
  .stat-card,.stats-card{padding:18px 12px!important;border-radius:22px!important}
  .section-headline{align-items:flex-start!important;margin:26px 0 14px!important}
  .section-headline-title{font-size:1.2rem!important}
  .section-headline a{font-size:.9rem!important}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .category-card{min-height:150px;border-radius:24px!important;gap:14px!important}
  .category-card .icon{width:58px!important;height:58px!important;border-radius:20px!important;font-size:1.55rem!important}
  .category-card p{font-size:.96rem!important}
  .job-grid,.paper-grid,.grid,.results-grid,.syllabus-grid,.study-resource-grid{grid-template-columns:1fr!important;gap:14px!important}
  .job-card,.paper-card,.results-card,.syllabus-card,.study-card,.study-resource-card,.card{border-radius:24px!important;padding:18px!important}
  .updates-table-wrap{background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
  .updates-table{min-width:0!important;border-collapse:separate!important;border-spacing:0 12px!important}
  .updates-table thead{display:none!important}
  .updates-table tbody,.updates-table tr,.updates-table td{display:block!important;width:100%!important}
  .updates-table tr{background:#fff!important;border:1px solid rgba(15,118,110,.12)!important;border-radius:24px!important;box-shadow:var(--ng-shadow-soft)!important;padding:14px!important;margin-bottom:12px!important}
  .updates-table td{border:0!important;padding:8px 4px!important}
  .updates-table td:nth-child(2)::before{content:"Category: ";font-weight:850;color:var(--ng-text)}
  .updates-table td:nth-child(3)::before{content:"Organization: ";font-weight:850;color:var(--ng-text)}
  .updates-table td:nth-child(4)::before{content:"Published: ";font-weight:850;color:var(--ng-text)}
  .updates-table td:last-child{padding-top:12px!important}
  .updates-action{width:100%}
  .papers-filter-grid,.updates-filter-grid,.results-filter-grid,.syllabus-filter-grid,.study-toolbar-grid{grid-template-columns:1fr!important}
  .study-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
  .study-card .study-icon{width:54px!important;height:54px!important;border-radius:18px!important}
  .footer-grid{grid-template-columns:1fr!important;text-align:left!important}
  footer,.simple-footer{border-radius:26px 26px 0 0!important;padding-bottom:110px!important}
  .admin-shell{grid-template-columns:1fr!important;padding:18px 14px 110px!important}
  .admin-sidebar{position:relative!important;top:0!important}
}
@media (max-width:420px){
  .hero-search{grid-template-columns:1fr;overflow:visible;background:transparent;border:0;box-shadow:none;gap:10px}
  .hero-search-label{background:white;border:1px solid rgba(15,118,110,.10);border-radius:22px;box-shadow:0 16px 38px rgba(15,118,110,.10)}
  .hero-search button{min-height:54px;border-radius:20px;box-shadow:0 14px 26px rgba(15,118,110,.22)}
  .study-grid,.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .modern-bottom-nav{left:8px;right:8px;bottom:8px;border-radius:24px}
  .modern-bottom-nav a{font-size:.68rem}
}
@media (max-width:340px){
  .study-grid,.category-grid{grid-template-columns:1fr!important}
}

/* Admin action button safety */
.action-buttons button.edit{
  background:#eef4ff!important;
  color:var(--ng-primary-dark)!important;
  border:1px solid rgba(15,118,110,.18)!important;
  border-radius:14px!important;
  font-weight:850!important;
}
.action-buttons button.delete{
  background:linear-gradient(135deg,#ef4444,#dc2626)!important;
  color:#fff!important;
  border:1px solid transparent!important;
  border-radius:14px!important;
  font-weight:850!important;
}
.upload-action{
  background:#e7f7f1!important;
  color:var(--ng-primary-dark)!important;
  border:1px solid rgba(15,118,110,.16)!important;
  border-radius:14px!important;
  font-weight:800!important;
}
body.modern-dim{
  background:linear-gradient(180deg,#eefaf5 0%,#ffffff 74%)!important;
}

/* ------------------------------------------------------------------
   NextGen Sarkari UI v2: Original Civic Template
   Original visual system. Uses mint, ink and amber accents for a distinct
   government-jobs portal look while preserving all functionality.
------------------------------------------------------------------- */
:root{
  --ng-bg:#f6faf7;
  --ng-bg-2:#eef7f3;
  --ng-surface:#ffffff;
  --ng-surface-soft:#e8f6f1;
  --ng-surface-blue:#e0f2fe;
  --ng-border:rgba(15,118,110,.14);
  --ng-border-strong:rgba(15,118,110,.26);
  --ng-primary:#0f766e;
  --ng-primary-2:#f59e0b;
  --ng-primary-dark:#115e59;
  --ng-accent:#ea580c;
  --ng-text:#0f172a;
  --ng-muted:#64748b;
  --ng-muted-2:#94a3b8;
  --ng-shadow:0 18px 45px rgba(15,23,42,.08);
  --ng-shadow-soft:0 10px 30px rgba(15,23,42,.06);
  --ng-shadow-float:0 22px 60px rgba(15,118,110,.16);
}
body{
  background:
    radial-gradient(circle at 8% 8%, rgba(15,118,110,.10), transparent 28%),
    radial-gradient(circle at 92% 2%, rgba(245,158,11,.12), transparent 30%),
    linear-gradient(180deg,#f6faf7 0%,#ffffff 70%)!important;
}
::selection{background:rgba(245,158,11,.26)!important}
:focus-visible{outline-color:rgba(15,118,110,.45)!important}
.logo-container .logo,
.site-brand .logo,
.sidebar-brand .logo,
.logo{
  background:linear-gradient(135deg,#0f766e 0%,#14b8a6 60%,#f59e0b 100%)!important;
  box-shadow:0 12px 28px rgba(15,118,110,.24)!important;
}
.modern-theme-dot,
.modern-nav-toggle{
  background:#ecfdf5!important;
  color:#0f766e!important;
  border-color:rgba(15,118,110,.16)!important;
  box-shadow:0 10px 24px rgba(15,118,110,.08)!important;
}
nav.site-nav a:hover,
nav.site-nav a.active,
.site-nav a:hover,
.site-nav a.active,
.primary-btn,
.card-button.primary,
.search-submit,
.updates-action,
.button-primary,
.form-actions button.primary,
.btn-pill.primary,
button[type="submit"]{
  background:linear-gradient(135deg,#0f766e 0%,#115e59 72%,#92400e 100%)!important;
  box-shadow:0 14px 28px rgba(15,118,110,.22)!important;
}
.secondary-btn,
.card-button.secondary,
.button-secondary,
.button-outline{
  background:#ecfdf5!important;
  color:#115e59!important;
  border-color:rgba(15,118,110,.18)!important;
}
.modern-announcement{
  background:linear-gradient(90deg,rgba(236,253,245,.86),rgba(255,247,237,.86))!important;
  border-color:rgba(15,118,110,.12)!important;
}
.modern-announcement-icon,
.section-icon{
  background:#dcfce7!important;
  color:#0f766e!important;
}
.main-content .hero{
  background:
    linear-gradient(135deg,rgba(255,255,255,.96) 0%,rgba(240,253,250,.96) 56%,rgba(255,247,237,.96) 100%)!important;
  border:1px solid rgba(15,118,110,.14)!important;
  border-radius:34px!important;
  box-shadow:0 28px 70px rgba(15,23,42,.08)!important;
  padding:clamp(40px,6vw,72px) clamp(22px,5vw,62px)!important;
  margin-top:22px!important;
  position:relative!important;
  overflow:hidden!important;
  text-align:left!important;
}
.main-content .hero::before{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  right:-90px;
  top:-120px;
  background:radial-gradient(circle,rgba(245,158,11,.22),transparent 68%);
  pointer-events:none;
}
.main-content .hero::after{
  content:"";
  position:absolute;
  width:150px;
  height:8px;
  left:clamp(22px,5vw,62px);
  top:24px;
  border-radius:999px;
  background:linear-gradient(90deg,#0f766e,#f59e0b);
  opacity:.9;
}
.main-content .hero h2{
  max-width:760px!important;
  margin:0 0 18px!important;
  background:linear-gradient(135deg,#0f766e 0%,#0f172a 58%,#ea580c 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}
.main-content .hero-text{
  max-width:650px!important;
  margin:0 0 26px!important;
  color:#475569!important;
}
.hero-search{
  margin:0 0 20px!important;
  border-color:rgba(15,118,110,.16)!important;
  box-shadow:0 24px 54px rgba(15,118,110,.13)!important;
}
.hero-search button{
  background:linear-gradient(135deg,#0f766e,#115e59)!important;
}
.section-accent-line,
.section-title::before{
  background:linear-gradient(180deg,#0f766e,#f59e0b)!important;
}
.section-headline a,
.section-cta,
.breadcrumb-bar a,
.stat-card span,
.stats-card h2,
.stat-card h2,
.stat-card p:first-child{
  color:#0f766e!important;
}
.category-card .icon{
  background:#e0f2fe!important;
  color:#0284c7!important;
}
.category-card:nth-child(2) .icon{background:#dcfce7!important;color:#16a34a!important}
.category-card:nth-child(3) .icon{background:#ffedd5!important;color:#ea580c!important}
.category-card:nth-child(4) .icon{background:#fee2e2!important;color:#dc2626!important}
.category-card:nth-child(5) .icon{background:#fef3c7!important;color:#d97706!important}
.category-card:nth-child(6) .icon{background:#ccfbf1!important;color:#0f766e!important}
.badge,
.status-badge{
  background:#ecfdf5!important;
  color:#115e59!important;
  border-color:rgba(15,118,110,.16)!important;
}
input,
select,
textarea{
  border-color:rgba(15,118,110,.16)!important;
  background:#fbfefc!important;
}
input:focus,
select:focus,
textarea:focus{
  border-color:rgba(15,118,110,.55)!important;
  box-shadow:0 0 0 5px rgba(15,118,110,.10)!important;
}
.job-detail-page .job-hero-card,
.content-coming-soon{
  background:linear-gradient(135deg,#fff 0%,#f0fdfa 62%,#fff7ed 100%)!important;
}
footer,
.simple-footer{
  background:linear-gradient(135deg,#071c18 0%,#12352f 100%)!important;
}
body.modern-dim{
  background:linear-gradient(180deg,#eefaf5 0%,#ffffff 74%)!important;
}

/* Functional mobile menu drawer. The button now controls a real overlay + drawer. */
.modern-top-actions{position:relative;z-index:1004}
.modern-nav-toggle{position:relative;overflow:hidden}
.modern-nav-toggle .menu-line{
  width:20px;
  height:2px;
  background:currentColor;
  border-radius:999px;
  display:block;
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  transition:transform .2s ease,opacity .2s ease,top .2s ease;
}
.modern-nav-toggle .menu-line:nth-child(1){top:15px}
.modern-nav-toggle .menu-line:nth-child(2){top:22px}
.modern-nav-toggle .menu-line:nth-child(3){top:29px}
.modern-nav-toggle.is-active .menu-line:nth-child(1){top:22px;transform:translateX(-50%) rotate(45deg)}
.modern-nav-toggle.is-active .menu-line:nth-child(2){opacity:0;transform:translateX(-50%) scaleX(.3)}
.modern-nav-toggle.is-active .menu-line:nth-child(3){top:22px;transform:translateX(-50%) rotate(-45deg)}
.modern-menu-overlay{
  display:none;
  position:fixed;
  inset:0;
  z-index:998;
  background:rgba(15,23,42,.28);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
body.modern-menu-open{overflow:hidden}
body.modern-menu-open .modern-menu-overlay{display:block}
@media (max-width:768px){
  nav.site-nav,
  .site-nav{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    position:fixed!important;
    top:var(--ng-header-offset,74px)!important;
    left:12px!important;
    right:12px!important;
    z-index:1003!important;
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(-12px) scale(.98)!important;
    pointer-events:none!important;
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease!important;
    background:rgba(255,255,255,.96)!important;
    border:1px solid rgba(15,118,110,.14)!important;
    box-shadow:0 24px 70px rgba(15,23,42,.20)!important;
  }
  body.modern-menu-open nav.site-nav,
  body.modern-menu-open .site-nav,
  nav.site-nav.is-open,
  .site-nav.is-open{
    opacity:1!important;
    visibility:visible!important;
    transform:translateY(0) scale(1)!important;
    pointer-events:auto!important;
  }
  nav.site-nav a,
  .site-nav a{
    background:#f0faf5!important;
    border:1px solid rgba(15,118,110,.10)!important;
  }
  nav.site-nav a.active,
  .site-nav a.active,
  nav.site-nav a:hover,
  .site-nav a:hover{
    background:linear-gradient(135deg,#0f766e,#115e59)!important;
    color:#fff!important;
  }
  .main-content .hero{
    text-align:center!important;
    padding:46px 20px 28px!important;
    border-radius:30px!important;
  }
  .main-content .hero::after{
    left:50%;
    transform:translateX(-50%);
  }
  .main-content .hero h2,
  .main-content .hero-text{
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .hero-search{margin-left:auto!important;margin-right:auto!important}
}
@media (max-width:420px){
  .hero-search-label{border-color:rgba(15,118,110,.14)!important;box-shadow:0 16px 38px rgba(15,118,110,.10)!important}
  .hero-search button{box-shadow:0 14px 26px rgba(15,118,110,.22)!important}
}

/* Keep hamburger hidden on wider screens where the full nav is visible. */
.modern-nav-toggle{display:none!important}
@media (max-width:768px){.modern-nav-toggle{display:inline-flex!important}}

/* ------------------------------------------------------------------
   NextGen Sarkari UI v3: Aurora Civic Modern Theme
   Visual-only refresh. APIs, forms, IDs, routes and existing logic stay untouched.
   Theme direction: blue glass, teal glow, amber energy. No purple clone styling.
------------------------------------------------------------------- */
:root{
  --ng-bg:#f5faff;
  --ng-bg-2:#eaf8ff;
  --ng-surface:#ffffff;
  --ng-surface-soft:#e8f7ff;
  --ng-surface-blue:#e0f2fe;
  --ng-border:rgba(14,165,233,.16);
  --ng-border-strong:rgba(14,165,233,.30);
  --ng-primary:#0ea5e9;
  --ng-primary-2:#10b981;
  --ng-primary-dark:#075985;
  --ng-accent:#f97316;
  --ng-text:#0f172a;
  --ng-muted:#5f6f86;
  --ng-muted-2:#90a4b8;
  --ng-success:#10b981;
  --ng-danger:#ef4444;
  --ng-warning:#f59e0b;
  --ng-radius-sm:16px;
  --ng-radius:22px;
  --ng-radius-lg:32px;
  --ng-pill:999px;
  --ng-shadow:0 24px 64px rgba(15,23,42,.10);
  --ng-shadow-soft:0 14px 38px rgba(15,23,42,.075);
  --ng-shadow-float:0 28px 75px rgba(14,165,233,.22);
}

body{
  background:
    radial-gradient(circle at 10% 8%, rgba(14,165,233,.18), transparent 28%),
    radial-gradient(circle at 88% 10%, rgba(16,185,129,.16), transparent 28%),
    radial-gradient(circle at 58% 0%, rgba(249,115,22,.12), transparent 24%),
    linear-gradient(180deg,#f5faff 0%,#ffffff 70%)!important;
  color:#0f172a!important;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background-image:
    linear-gradient(rgba(14,165,233,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(14,165,233,.045) 1px, transparent 1px);
  background-size:36px 36px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.75),transparent 70%);
}
::selection{background:rgba(14,165,233,.22)!important;color:#06233b!important}
:focus-visible{outline-color:rgba(14,165,233,.50)!important}

/* Crisp app header with menu always available on the corner */
header,
.site-header,
.page-header{
  background:rgba(255,255,255,.78)!important;
  border-bottom:1px solid rgba(14,165,233,.14)!important;
  box-shadow:0 10px 34px rgba(15,23,42,.055)!important;
}
.logo-container .logo,
.site-brand .logo,
.sidebar-brand .logo,
.logo{
  background:linear-gradient(135deg,#020617 0%,#0ea5e9 52%,#10b981 100%)!important;
  box-shadow:0 14px 30px rgba(14,165,233,.26), inset 0 1px 0 rgba(255,255,255,.26)!important;
}
header h1,
.site-header h1,
.page-header h1,
.site-brand-name h1{
  background:linear-gradient(135deg,#0f172a 0%,#075985 52%,#0f766e 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}
.modern-top-actions{
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
.modern-nav-toggle,
.modern-theme-dot{
  display:inline-flex!important;
  width:48px!important;
  height:48px!important;
  border-radius:17px!important;
  background:linear-gradient(135deg,#ffffff,#e0f2fe)!important;
  color:#075985!important;
  border:1px solid rgba(14,165,233,.20)!important;
  box-shadow:0 14px 30px rgba(14,165,233,.15)!important;
}
.modern-nav-toggle:hover,
.modern-theme-dot:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 18px 38px rgba(14,165,233,.22)!important;
}
.modern-nav-toggle .menu-line{height:2.5px!important;width:21px!important;background:currentColor!important}
.modern-nav-toggle .menu-line:nth-child(2){width:16px!important;left:calc(50% + 2px)!important}
.modern-nav-toggle.is-active .menu-line:nth-child(2){opacity:0!important}

/* Desktop nav becomes a lightweight chip row while the corner menu remains available */
nav.site-nav,
.site-nav{
  background:rgba(255,255,255,.72)!important;
  border-bottom:1px solid rgba(14,165,233,.12)!important;
  box-shadow:0 14px 32px rgba(15,23,42,.045)!important;
}
nav.site-nav a,
.site-nav a{
  color:#475569!important;
  border:1px solid transparent!important;
}
nav.site-nav a:hover,
nav.site-nav a.active,
.site-nav a:hover,
.site-nav a.active{
  background:linear-gradient(135deg,#0284c7 0%,#0ea5e9 58%,#10b981 100%)!important;
  color:#ffffff!important;
  box-shadow:0 14px 30px rgba(14,165,233,.25)!important;
}

/* Announcement strip with live motion */
.modern-announcement{
  background:linear-gradient(90deg,rgba(224,242,254,.92),rgba(236,253,245,.92),rgba(255,247,237,.92))!important;
  border-color:rgba(14,165,233,.14)!important;
}
.modern-announcement-inner{color:#0f2b46!important}
.modern-announcement-icon{
  position:relative;
  background:linear-gradient(135deg,#dbeafe,#ecfeff)!important;
  color:#0284c7!important;
  box-shadow:inset 0 0 0 1px rgba(14,165,233,.12)!important;
}
.modern-announcement-icon::after{
  content:"";
  position:absolute;
  right:-2px;
  top:-2px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#10b981;
  box-shadow:0 0 0 6px rgba(16,185,129,.16);
  animation:ngPulse 1.8s ease-out infinite;
}

/* Alive hero panel */
.main-content .hero{
  background:
    radial-gradient(circle at 86% 18%,rgba(16,185,129,.34),transparent 28%),
    radial-gradient(circle at 12% 90%,rgba(14,165,233,.30),transparent 28%),
    linear-gradient(135deg,#061521 0%,#0b2a42 46%,#0e7490 100%)!important;
  color:#ffffff!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:38px!important;
  box-shadow:0 34px 90px rgba(7,89,133,.24)!important;
  padding:clamp(44px,6vw,82px) clamp(22px,5vw,66px)!important;
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate;
}
.main-content .hero::before{
  content:""!important;
  position:absolute!important;
  inset:-35% -20% auto auto!important;
  width:460px!important;
  height:460px!important;
  border-radius:999px!important;
  background:conic-gradient(from 130deg,rgba(14,165,233,.10),rgba(16,185,129,.32),rgba(249,115,22,.22),rgba(14,165,233,.10))!important;
  filter:blur(8px)!important;
  opacity:.9!important;
  animation:ngFloat 8s ease-in-out infinite!important;
  z-index:-1!important;
}
.main-content .hero::after{
  content:""!important;
  position:absolute!important;
  left:clamp(22px,5vw,66px)!important;
  top:26px!important;
  width:165px!important;
  height:8px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#38bdf8,#10b981,#f59e0b)!important;
  box-shadow:0 0 24px rgba(56,189,248,.40)!important;
  opacity:1!important;
}
.main-content .hero h2{
  color:#ffffff!important;
  background:linear-gradient(135deg,#ffffff 0%,#bae6fd 48%,#fed7aa 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  text-shadow:0 18px 44px rgba(0,0,0,.18)!important;
  max-width:820px!important;
}
.main-content .hero-text{
  color:rgba(226,242,255,.88)!important;
  max-width:690px!important;
}
.hero-buttons .secondary-btn,
.main-content .hero .secondary-btn{
  background:rgba(255,255,255,.10)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.18)!important;
  backdrop-filter:blur(10px)!important;
}
.hero-search{
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(255,255,255,.28)!important;
  box-shadow:0 28px 68px rgba(0,0,0,.25)!important;
}
.hero-search svg path,
.hero-search svg circle{stroke:#64748b!important}
.hero-search input{background:transparent!important;color:#0f172a!important}
.hero-search button{
  background:linear-gradient(135deg,#0ea5e9 0%,#0284c7 48%,#10b981 100%)!important;
  box-shadow:0 16px 34px rgba(14,165,233,.35)!important;
}

/* Cards and component polish */
.card,
.job-card,
.paper-card,
.update-card,
.results-card,
.syllabus-card,
.study-card,
.study-resource-card,
.detail-panel,
.detail-sidebar,
.job-hero-card,
.job-detail-card,
.job-sidebar-card,
.job-faq-card,
.job-related-card,
.papers-filter-card,
.results-filter-card,
.syllabus-filter-card,
.study-toolbar,
.updates-filter-panel,
.panel,
.form-section,
.stat-card,
.stats-card,
.content-coming-soon,
.results-empty-card,
.syllabus-empty-card,
.papers-empty-card,
.study-empty-card,
.updates-empty-state,
.updates-table-wrap{
  background:rgba(255,255,255,.90)!important;
  border:1px solid rgba(14,165,233,.15)!important;
  border-radius:30px!important;
  box-shadow:0 18px 48px rgba(15,23,42,.07)!important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.card:hover,
.job-card:hover,
.paper-card:hover,
.results-card:hover,
.syllabus-card:hover,
.study-card:hover,
.study-resource-card:hover,
.category-card:hover{
  transform:translateY(-6px)!important;
  box-shadow:0 28px 70px rgba(14,165,233,.16)!important;
  border-color:rgba(14,165,233,.30)!important;
}
.stat-card,
.stats-card{
  position:relative;
  overflow:hidden;
}
.stat-card::before,
.stats-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,#0ea5e9,#10b981,#f59e0b);
}
.stat-card span,
.stats-card h2,
.stat-card h2,
.stat-card p:first-child{
  color:#0284c7!important;
}
.category-card{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,252,255,.92))!important;
  border-color:rgba(14,165,233,.13)!important;
}
.category-card::before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:4px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,#0ea5e9,#10b981,#f59e0b);
  transform:scaleX(.35);
  transform-origin:left;
  transition:transform .22s ease;
}
.category-card:hover::before{transform:scaleX(1)}
.category-card .icon{
  background:linear-gradient(135deg,#e0f2fe,#ecfeff)!important;
  color:#0284c7!important;
  box-shadow:inset 0 0 0 1px rgba(14,165,233,.13),0 14px 30px rgba(14,165,233,.12)!important;
}
.category-card:nth-child(2) .icon{background:linear-gradient(135deg,#dcfce7,#f0fdf4)!important;color:#16a34a!important}
.category-card:nth-child(3) .icon{background:linear-gradient(135deg,#fff7ed,#ffedd5)!important;color:#f97316!important}
.category-card:nth-child(4) .icon{background:linear-gradient(135deg,#fee2e2,#fff1f2)!important;color:#dc2626!important}
.category-card:nth-child(5) .icon{background:linear-gradient(135deg,#fef3c7,#fffbeb)!important;color:#d97706!important}
.category-card:nth-child(6) .icon{background:linear-gradient(135deg,#ccfbf1,#ecfeff)!important;color:#0f766e!important}
.section-accent-line,
.section-title::before{
  background:linear-gradient(180deg,#0ea5e9,#10b981,#f59e0b)!important;
}
.section-icon{
  background:linear-gradient(135deg,#e0f2fe,#ecfeff)!important;
  color:#0284c7!important;
}
.section-headline a,
.section-cta,
.breadcrumb-bar a{color:#0284c7!important}
.badge,
.status-badge{
  background:#e0f2fe!important;
  color:#075985!important;
  border-color:rgba(14,165,233,.18)!important;
}
.primary-btn,
.card-button.primary,
.search-submit,
.updates-action,
.button-primary,
.form-actions button.primary,
.btn-pill.primary,
button[type="submit"]{
  background:linear-gradient(135deg,#0ea5e9 0%,#0284c7 55%,#10b981 100%)!important;
  box-shadow:0 16px 34px rgba(14,165,233,.28)!important;
}
.secondary-btn,
.card-button.secondary,
.button-secondary,
.button-outline{
  background:#e0f2fe!important;
  color:#075985!important;
  border-color:rgba(14,165,233,.20)!important;
}
input,
select,
textarea{
  background:#f8fcff!important;
  border-color:rgba(14,165,233,.18)!important;
}
input:focus,
select:focus,
textarea:focus{
  border-color:rgba(14,165,233,.55)!important;
  box-shadow:0 0 0 5px rgba(14,165,233,.12)!important;
}
.job-detail-page .job-hero-card,
.content-coming-soon{
  background:linear-gradient(135deg,#ffffff 0%,#e0f2fe 58%,#ecfdf5 100%)!important;
}
footer,
.simple-footer{
  background:
    radial-gradient(circle at 15% 0%,rgba(14,165,233,.28),transparent 30%),
    linear-gradient(135deg,#020617 0%,#082f49 54%,#064e3b 100%)!important;
}


/* Inline SVG icons: avoids broken emoji/question-mark boxes on Windows/Chrome */
.ng-ui-icon,
.ng-sun-icon{
  width:1.18em;
  height:1.18em;
  display:block;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  fill:none;
}
.modern-menu-link-icon .ng-ui-icon,
.modern-bottom-icon .ng-ui-icon{
  width:20px;
  height:20px;
}
.category-card .icon .ng-ui-icon,
.section-icon .ng-ui-icon,
.modern-announcement-icon .ng-ui-icon{
  width:28px;
  height:28px;
}
.modern-theme-dot .ng-sun-icon{
  width:22px;
  height:22px;
}

/* Modern right-side menu drawer controlled by the corner hamburger */
.modern-menu-overlay{
  display:block!important;
  opacity:0!important;
  visibility:hidden!important;
  position:fixed!important;
  inset:0!important;
  z-index:998!important;
  background:rgba(2,6,23,.46)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
  transition:opacity .22s ease,visibility .22s ease!important;
}
body.modern-menu-open .modern-menu-overlay{
  opacity:1!important;
  visibility:visible!important;
}
.modern-menu-panel{
  position:fixed;
  top:14px;
  right:14px;
  bottom:14px;
  width:min(390px,calc(100vw - 28px));
  z-index:1005;
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:20px;
  border-radius:34px;
  background:
    radial-gradient(circle at 90% 6%,rgba(16,185,129,.20),transparent 28%),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(240,249,255,.96));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 32px 90px rgba(2,6,23,.30);
  transform:translateX(calc(100% + 30px)) scale(.98);
  opacity:0;
  visibility:hidden;
  transition:transform .25s ease,opacity .25s ease,visibility .25s ease;
  overflow:auto;
}
.modern-menu-panel.is-open{
  transform:translateX(0) scale(1);
  opacity:1;
  visibility:visible;
}
.modern-menu-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  padding:6px 2px 12px;
  border-bottom:1px solid rgba(14,165,233,.14);
}
.modern-menu-kicker{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:#e0f2fe;
  color:#075985;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.modern-menu-panel h2{
  margin:10px 0 0;
  font-size:1.35rem;
  line-height:1.1;
  letter-spacing:-.05em;
  color:#0f172a;
}
.modern-menu-close{
  width:42px;
  height:42px;
  border-radius:16px;
  border:1px solid rgba(14,165,233,.14);
  background:#ffffff;
  color:#0f172a;
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(15,23,42,.08);
}
.modern-menu-links{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.modern-menu-link{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:56px;
  padding:12px 14px;
  border-radius:20px;
  text-decoration:none;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(14,165,233,.12);
  color:#334155;
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease;
}
.modern-menu-link-icon{
  width:36px;
  height:36px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  background:linear-gradient(135deg,#e0f2fe,#ecfeff);
  color:#0284c7;
  font-weight:900;
}
.modern-menu-link strong{
  font-size:.96rem;
  font-weight:900;
  letter-spacing:-.02em;
}
.modern-menu-link:hover,
.modern-menu-link.active{
  transform:translateX(4px);
  background:linear-gradient(135deg,#0284c7,#0ea5e9,#10b981);
  color:#fff;
  box-shadow:0 18px 36px rgba(14,165,233,.24);
}
.modern-menu-link:hover .modern-menu-link-icon,
.modern-menu-link.active .modern-menu-link-icon{
  background:rgba(255,255,255,.18);
  color:#fff;
}
.modern-menu-cta{
  margin-top:auto;
  padding:18px;
  border-radius:24px;
  background:
    radial-gradient(circle at 90% 10%,rgba(249,115,22,.20),transparent 38%),
    linear-gradient(135deg,#082f49,#0f766e);
  color:#fff;
  box-shadow:0 18px 42px rgba(8,47,73,.20);
}
.modern-menu-cta p{
  margin:0 0 14px;
  color:rgba(255,255,255,.84);
  font-size:.92rem;
  line-height:1.5;
}
.modern-menu-primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:46px;
  border-radius:16px;
  background:#fff;
  color:#075985;
  text-decoration:none;
  font-weight:900;
}
body.modern-menu-open{overflow:hidden!important}
@media (max-width:768px){
  body.modern-menu-open nav.site-nav,
  body.modern-menu-open .site-nav{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .modern-menu-panel{
    left:10px;
    right:10px;
    top:10px;
    bottom:10px;
    width:auto;
    border-radius:30px;
  }
  .modern-theme-dot{display:inline-flex!important}
  .main-content .hero{
    padding:50px 20px 30px!important;
    border-radius:32px!important;
    text-align:center!important;
  }
  .main-content .hero::after{left:50%!important;transform:translateX(-50%)!important}
  .main-content .hero h2{font-size:clamp(2.15rem,10vw,3rem)!important}
  .hero-search-label{background:white!important;border-color:rgba(14,165,233,.18)!important}
  .modern-bottom-nav{
    background:rgba(255,255,255,.88)!important;
    border-color:rgba(14,165,233,.18)!important;
    box-shadow:0 18px 48px rgba(15,23,42,.18)!important;
  }
  .modern-bottom-nav a.active{color:#0284c7!important}
  .modern-bottom-nav a.active .modern-bottom-icon{
    background:linear-gradient(135deg,#0284c7,#0ea5e9,#10b981)!important;
    box-shadow:0 10px 22px rgba(14,165,233,.25)!important;
  }
}
@media (max-width:420px){
  .modern-menu-panel{padding:16px;border-radius:26px}
  .modern-menu-link{min-height:52px;border-radius:18px}
  .modern-menu-close{width:40px;height:40px}
}

/* Small motion makes the page feel active without hurting performance. */
@keyframes ngPulse{
  0%{box-shadow:0 0 0 0 rgba(16,185,129,.34)}
  70%{box-shadow:0 0 0 9px rgba(16,185,129,0)}
  100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}
}
@keyframes ngFloat{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  50%{transform:translate3d(-22px,24px,0) rotate(12deg)}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important;
  }
}

/* ------------------------------------------------------------------
   v5 update: Punjab Jobs hero copy + modern disclaimer page.
   Visual-only update; no APIs, IDs, routes or database logic changed.
------------------------------------------------------------------- */
.main-content .hero h2 span[aria-hidden="true"]{
  -webkit-text-fill-color:initial;
  background:none!important;
  color:inherit!important;
  display:inline-block;
  filter:drop-shadow(0 10px 18px rgba(14,165,233,.25));
  transform:translateY(-.02em);
}

.legal-disclaimer-page{
  max-width:1040px!important;
  padding-top:clamp(18px,3vw,34px)!important;
}
.disclaimer-visual-hero{
  position:relative;
  overflow:hidden;
  text-align:center;
  padding:clamp(34px,6vw,64px) clamp(18px,5vw,54px);
  border-radius:34px;
  background:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.94),transparent 26%),
    radial-gradient(circle at 86% 15%,rgba(250,204,21,.20),transparent 26%),
    linear-gradient(180deg,#fffbea 0%,#fff7dc 54%,#ffffff 100%);
  border:1px solid rgba(245,158,11,.20);
  box-shadow:0 24px 70px rgba(146,64,14,.08);
  margin:18px auto 20px;
}
.disclaimer-visual-hero::before{
  content:"";
  position:absolute;
  left:-70px;
  bottom:-95px;
  width:220px;
  height:220px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(14,165,233,.16),transparent 67%);
}
.disclaimer-visual-hero::after{
  content:"";
  position:absolute;
  right:-95px;
  bottom:-110px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(249,115,22,.13),transparent 70%);
}
.disclaimer-alert-orb{
  width:118px;
  height:118px;
  margin:0 auto 26px;
  border-radius:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#fff1b8,#fff7df);
  color:#ea580c;
  box-shadow:inset 0 0 0 1px rgba(245,158,11,.14),0 18px 46px rgba(245,158,11,.15);
  position:relative;
  z-index:1;
}
.disclaimer-alert-orb .ng-ui-icon{
  width:58px;
  height:58px;
  stroke-width:1.65;
}
.disclaimer-eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 14px;
  margin:0 0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(245,158,11,.18);
  color:#b45309!important;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.78rem;
  position:relative;
  z-index:1;
}
.disclaimer-visual-hero h2{
  margin:0 0 14px;
  color:#0f172a;
  font-size:clamp(2.25rem,6vw,4rem);
  line-height:1.02;
  letter-spacing:-.07em;
  position:relative;
  z-index:1;
}
.disclaimer-visual-hero > p:last-child{
  max-width:760px;
  margin:0 auto;
  color:#9a3412!important;
  font-size:clamp(1.1rem,2.4vw,1.55rem);
  line-height:1.55;
  font-weight:800;
  position:relative;
  z-index:1;
}
.disclaimer-highlight-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  margin:18px 0 20px;
}
.disclaimer-highlight-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:20px;
  align-items:flex-start;
  padding:clamp(22px,4vw,34px);
  border-radius:30px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(14,165,233,.13);
  box-shadow:0 18px 50px rgba(15,23,42,.06);
}
.disclaimer-highlight-card.is-warning{
  border-color:rgba(239,68,68,.13);
  background:linear-gradient(135deg,#ffffff 0%,#fff7ed 100%);
}
.disclaimer-highlight-card.is-info{
  background:linear-gradient(135deg,#ffffff 0%,#eff6ff 58%,#ecfeff 100%);
}
.disclaimer-card-icon{
  width:76px;
  height:76px;
  border-radius:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.is-warning .disclaimer-card-icon{
  background:linear-gradient(135deg,#fff1f2,#fff7ed);
  color:#dc2626;
}
.is-info .disclaimer-card-icon{
  background:linear-gradient(135deg,#e0f2fe,#ecfeff);
  color:#0284c7;
}
.disclaimer-card-icon .ng-ui-icon{
  width:38px;
  height:38px;
  stroke-width:1.9;
}
.disclaimer-highlight-card h3,
.disclaimer-content-card h3{
  margin:0 0 12px!important;
  color:#0f172a!important;
  font-size:clamp(1.35rem,3vw,2.05rem)!important;
  line-height:1.15!important;
  letter-spacing:-.045em!important;
}
.disclaimer-highlight-card p{
  margin:0!important;
  color:#475569!important;
  font-size:1.08rem!important;
  line-height:1.75!important;
}
.disclaimer-highlight-card strong{
  color:#0f172a;
  font-weight:950;
}
.disclaimer-content-card{
  padding:clamp(22px,4vw,40px);
  border-radius:32px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(14,165,233,.13);
  box-shadow:0 24px 70px rgba(15,23,42,.07);
}
.disclaimer-meta{
  display:inline-flex;
  padding:10px 14px;
  border-radius:999px;
  background:#e0f2fe;
  color:#075985;
  font-size:.92rem;
  margin-bottom:24px;
  border:1px solid rgba(14,165,233,.15);
}
.disclaimer-content-card section{
  padding:22px 0;
  border-top:1px solid rgba(14,165,233,.12);
}
.disclaimer-content-card section:first-of-type{
  border-top:0;
  padding-top:0;
}
.disclaimer-content-card p{
  color:#475569!important;
  font-size:1rem!important;
  line-height:1.75!important;
  margin:0 0 10px!important;
}
.disclaimer-content-card a{
  color:#0284c7!important;
  font-weight:800;
  text-decoration:none;
}
.disclaimer-content-card a:hover{text-decoration:underline;}
@media (min-width:860px){
  .disclaimer-highlight-grid{grid-template-columns:1.15fr .85fr;}
  .disclaimer-highlight-card{min-height:230px;}
}
@media (max-width:640px){
  .legal-disclaimer-page{padding-left:14px!important;padding-right:14px!important;}
  .disclaimer-visual-hero{border-radius:28px;padding:34px 18px;}
  .disclaimer-alert-orb{width:96px;height:96px;border-radius:34px;margin-bottom:22px;}
  .disclaimer-alert-orb .ng-ui-icon{width:48px;height:48px;}
  .disclaimer-highlight-card{grid-template-columns:1fr;gap:14px;border-radius:26px;padding:22px;}
  .disclaimer-card-icon{width:62px;height:62px;border-radius:20px;}
  .disclaimer-card-icon .ng-ui-icon{width:32px;height:32px;}
  .disclaimer-highlight-card p{font-size:1rem!important;line-height:1.7!important;}
  .disclaimer-content-card{border-radius:26px;padding:22px;}
}


/* ------------------------------------------------------------------
   v8 update: return to Aurora v5 style, remove home search, move search to Jobs page,
   clean footer alignment, and add scoped footer SVG icons only.
   Backend APIs, Cloudflare Functions, D1, R2 and admin logic unchanged.
------------------------------------------------------------------- */
.main-content .hero{
  max-width:960px!important;
  min-height:auto!important;
  padding:clamp(46px,5vw,70px) clamp(28px,5vw,70px)!important;
}
.main-content .hero h2{
  max-width:760px!important;
  margin-bottom:16px!important;
}
.main-content .hero .hero-text{
  margin-bottom:28px!important;
}
.main-content .hero .hero-buttons{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:14px!important;
  margin-top:0!important;
}
.main-content .hero .primary-btn,
.main-content .hero .secondary-btn{
  min-height:44px!important;
  padding:0 22px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}

.jobs-search-portal{
  max-width:1180px;
  margin:28px auto 0;
  padding:0 clamp(16px,3vw,28px);
}
.jobs-search-inner{
  display:grid;
  grid-template-columns:minmax(230px,.9fr) minmax(320px,1.1fr);
  gap:18px;
  align-items:center;
  padding:24px;
  border:1px solid rgba(14,165,233,.16);
  border-radius:30px;
  background:
    radial-gradient(circle at 95% 10%,rgba(16,185,129,.18),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(236,254,255,.84));
  box-shadow:0 22px 60px rgba(14,165,233,.10);
}
.jobs-search-kicker{
  display:inline-flex;
  width:max-content;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(14,165,233,.10);
  color:#0369a1;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.01em;
  margin-bottom:9px;
}
.jobs-search-copy h2{
  margin:0 0 6px!important;
  color:#0f172a!important;
  font-size:clamp(1.35rem,2.5vw,2.15rem)!important;
  letter-spacing:-.045em;
}
.jobs-search-copy p{
  margin:0!important;
  color:#64748b!important;
  font-weight:650;
  line-height:1.55;
}
.jobs-search-form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
}
.jobs-search-field{
  min-height:54px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 16px;
  background:#fff;
  border:1px solid rgba(14,165,233,.18);
  border-radius:19px;
  box-shadow:0 14px 30px rgba(15,23,42,.06);
}
.jobs-search-icon{
  width:19px;
  height:19px;
  flex:0 0 19px;
  stroke:#64748b;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jobs-search-field input{
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:#0f172a;
  font:inherit;
  font-weight:650;
}
.jobs-search-form button{
  min-height:54px;
  padding:0 24px;
  border:0;
  border-radius:18px;
  cursor:pointer;
  color:#fff;
  font-weight:900;
  background:linear-gradient(135deg,#0ea5e9,#0284c7,#10b981);
  box-shadow:0 14px 26px rgba(14,165,233,.22);
}
.jobs-search-filters{
  grid-column:2;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:-4px;
}
.jobs-search-filters button{
  border:1px solid rgba(14,165,233,.18);
  background:rgba(255,255,255,.82);
  color:#075985;
  padding:9px 13px;
  border-radius:999px;
  cursor:pointer;
  font-size:.84rem;
  font-weight:850;
}
.jobs-search-filters button:hover{
  transform:translateY(-1px);
  background:#e0f2fe;
}
.jobs-meta-text{
  margin:-10px 0 22px!important;
  color:#64748b!important;
  font-weight:750;
}

footer .footer-grid,
.home-footer .footer-grid{
  max-width:1180px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:28px!important;
  align-items:start!important;
  text-align:left!important;
}
footer .footer-column,
.home-footer .footer-column{
  min-width:0;
}
footer .footer-grid h3,
.simple-footer h3{
  margin:0 0 16px!important;
  line-height:1.2!important;
}
footer .footer-link,
.footer-grid a.footer-link,
.simple-footer-links a.footer-link{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  width:100%;
  margin:0 0 10px!important;
  text-decoration:none!important;
  line-height:1.35!important;
}
.simple-footer-links{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(145px,max-content))!important;
  justify-content:center!important;
  align-items:center!important;
  gap:10px 18px!important;
}
.simple-footer-links a.footer-link{
  width:auto!important;
  margin:0!important;
  justify-content:flex-start!important;
}
.footer-link-icon{
  width:15px!important;
  height:15px!important;
  min-width:15px!important;
  min-height:15px!important;
  max-width:15px!important;
  max-height:15px!important;
  flex:0 0 15px!important;
  opacity:.9;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  fill:none!important;
  display:inline-block!important;
  vertical-align:middle!important;
}
.footer-link:hover .footer-link-icon{opacity:1;}
.footer-bottom,
.simple-footer-bottom{
  text-align:center!important;
}
@media (max-width:900px){
  footer .footer-grid,
  .home-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .jobs-search-inner{grid-template-columns:1fr;}
  .jobs-search-filters{grid-column:1;}
}
@media (max-width:640px){
  .main-content .hero{
    padding:38px 18px 28px!important;
    border-radius:30px!important;
  }
  .main-content .hero .hero-buttons{
    flex-direction:column!important;
    gap:10px!important;
  }
  .main-content .hero .primary-btn,
  .main-content .hero .secondary-btn{
    width:100%!important;
  }
  .jobs-search-portal{margin-top:16px;padding:0 14px;}
  .jobs-search-inner{padding:18px;border-radius:24px;}
  .jobs-search-form{grid-template-columns:1fr;}
  .jobs-search-form button{width:100%;}
  footer .footer-grid,
  .home-footer .footer-grid{grid-template-columns:1fr!important;gap:18px!important;}
  .simple-footer-links{grid-template-columns:1fr!important;justify-content:start!important;max-width:260px;margin:0 auto;}
  .simple-footer-links a.footer-link{width:100%!important;}
}

/* ------------------------------------------------------------------
   v10 update: fully functional dark mode + shared footer Sitemap cleanup.
   Visual-only update; APIs, forms, Cloudflare Functions, D1 and R2 untouched.
------------------------------------------------------------------- */
html.modern-dark,
body.modern-dark{color-scheme:dark;}
body.modern-dark{
  --ng-bg:#07111f;
  --ng-bg-2:#0b1726;
  --ng-surface:#0f1b2d;
  --ng-surface-soft:#11263a;
  --ng-surface-blue:#0b2a42;
  --ng-border:rgba(125,211,252,.16);
  --ng-border-strong:rgba(45,212,191,.30);
  --ng-primary:#38bdf8;
  --ng-primary-2:#fbbf24;
  --ng-primary-dark:#0ea5e9;
  --ng-accent:#2dd4bf;
  --ng-text:#eaf2ff;
  --ng-muted:#a8b8cc;
  --ng-muted-2:#7c8ca5;
  --ng-shadow:0 22px 60px rgba(0,0,0,.36);
  --ng-shadow-soft:0 16px 42px rgba(0,0,0,.28);
  --ng-shadow-float:0 26px 72px rgba(14,165,233,.20);
  background:
    radial-gradient(circle at 10% 0%,rgba(14,165,233,.18),transparent 32%),
    radial-gradient(circle at 92% 5%,rgba(45,212,191,.14),transparent 30%),
    linear-gradient(180deg,#050b14 0%,#07111f 42%,#0a1320 100%)!important;
  color:#eaf2ff!important;
}
body.modern-dark *::selection{background:rgba(56,189,248,.30)!important;color:#fff!important;}
body.modern-dark header,
body.modern-dark .site-header,
body.modern-dark .page-header{
  background:rgba(7,17,31,.86)!important;
  border-bottom-color:rgba(125,211,252,.14)!important;
  box-shadow:0 12px 32px rgba(0,0,0,.28)!important;
}
body.modern-dark header h1,
body.modern-dark .site-header h1,
body.modern-dark .page-header h1,
body.modern-dark .site-brand-name h1{
  background:linear-gradient(135deg,#f8fbff 0%,#7dd3fc 55%,#5eead4 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}
body.modern-dark header p,
body.modern-dark .site-header p,
body.modern-dark .page-header p,
body.modern-dark .site-brand-name p{color:#9fb3ca!important;}
body.modern-dark .logo{
  box-shadow:0 12px 28px rgba(14,165,233,.26)!important;
}
body.modern-dark nav.site-nav,
body.modern-dark .site-nav{
  background:rgba(7,17,31,.80)!important;
  border-color:rgba(125,211,252,.12)!important;
  box-shadow:0 12px 32px rgba(0,0,0,.24)!important;
}
body.modern-dark nav.site-nav a,
body.modern-dark .site-nav a{
  color:#c7d6e9!important;
}
body.modern-dark nav.site-nav a:hover,
body.modern-dark nav.site-nav a.active,
body.modern-dark .site-nav a:hover,
body.modern-dark .site-nav a.active,
body.modern-dark .primary-btn,
body.modern-dark .card-button.primary,
body.modern-dark .search-submit,
body.modern-dark .updates-action,
body.modern-dark .button-primary,
body.modern-dark .form-actions button.primary,
body.modern-dark .btn-pill.primary,
body.modern-dark button[type="submit"]{
  background:linear-gradient(135deg,#0ea5e9 0%,#0284c7 50%,#14b8a6 100%)!important;
  color:#ffffff!important;
  box-shadow:0 16px 36px rgba(14,165,233,.24)!important;
}
body.modern-dark .secondary-btn,
body.modern-dark .card-button.secondary,
body.modern-dark .button-secondary,
body.modern-dark .button-outline{
  background:rgba(15,23,42,.74)!important;
  color:#d7e6f8!important;
  border-color:rgba(125,211,252,.20)!important;
}
body.modern-dark .modern-theme-dot,
body.modern-dark .modern-nav-toggle{
  background:linear-gradient(135deg,#0f1b2d,#0b2a42)!important;
  color:#7dd3fc!important;
  border-color:rgba(125,211,252,.22)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.30)!important;
}
body.modern-dark .modern-theme-dot:hover,
body.modern-dark .modern-nav-toggle:hover{box-shadow:0 18px 42px rgba(14,165,233,.18)!important;}
body.modern-dark .modern-theme-dot svg,
body.modern-dark .modern-nav-toggle svg,
body.modern-dark .ng-ui-icon,
body.modern-dark .ng-sun-icon,
body.modern-dark .ng-moon-icon{
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.modern-dark .modern-announcement{
  background:linear-gradient(90deg,rgba(8,47,73,.82),rgba(7,89,133,.55),rgba(19,78,74,.72))!important;
  border-color:rgba(125,211,252,.14)!important;
}
body.modern-dark .modern-announcement a,
body.modern-dark .modern-announcement-inner{color:#dbeafe!important;}
body.modern-dark .modern-announcement-icon,
body.modern-dark .section-icon{
  background:rgba(14,165,233,.14)!important;
  color:#7dd3fc!important;
  border:1px solid rgba(125,211,252,.16)!important;
}
body.modern-dark .main-content .hero{
  background:
    radial-gradient(circle at 84% 18%,rgba(20,184,166,.28),transparent 30%),
    radial-gradient(circle at 12% 90%,rgba(14,165,233,.20),transparent 30%),
    linear-gradient(135deg,#06111f 0%,#08233a 48%,#0f4c5c 100%)!important;
  border-color:rgba(125,211,252,.18)!important;
  box-shadow:0 34px 90px rgba(0,0,0,.38)!important;
}
body.modern-dark .main-content .hero h2{
  background:linear-gradient(135deg,#ffffff 0%,#bae6fd 54%,#99f6e4 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}
body.modern-dark .main-content .hero-text{color:#c7d6e9!important;}
body.modern-dark .hero-search,
body.modern-dark .jobs-search-field{
  background:rgba(255,255,255,.94)!important;
  border-color:rgba(125,211,252,.20)!important;
  color:#0f172a!important;
}
body.modern-dark .hero-search input,
body.modern-dark .jobs-search-field input{color:#0f172a!important;}
body.modern-dark .hero-search input::placeholder,
body.modern-dark .jobs-search-field input::placeholder{color:#64748b!important;}
body.modern-dark .stat-card,
body.modern-dark .stats-card,
body.modern-dark .category-card,
body.modern-dark .card,
body.modern-dark .job-card,
body.modern-dark .paper-card,
body.modern-dark .update-card,
body.modern-dark .results-card,
body.modern-dark .syllabus-card,
body.modern-dark .study-card,
body.modern-dark .study-resource-card,
body.modern-dark .detail-panel,
body.modern-dark .detail-sidebar,
body.modern-dark .job-hero-card,
body.modern-dark .job-detail-card,
body.modern-dark .job-sidebar-card,
body.modern-dark .job-faq-card,
body.modern-dark .job-related-card,
body.modern-dark .papers-filter-card,
body.modern-dark .results-filter-card,
body.modern-dark .syllabus-filter-card,
body.modern-dark .study-toolbar,
body.modern-dark .updates-filter-panel,
body.modern-dark .panel,
body.modern-dark .form-section,
body.modern-dark .content-coming-soon,
body.modern-dark .results-empty-card,
body.modern-dark .syllabus-empty-card,
body.modern-dark .papers-empty-card,
body.modern-dark .study-empty-card,
body.modern-dark .updates-empty-state,
body.modern-dark .updates-table-wrap{
  background:linear-gradient(180deg,rgba(15,27,45,.92),rgba(9,19,32,.92))!important;
  border-color:rgba(125,211,252,.15)!important;
  color:#eaf2ff!important;
  box-shadow:0 20px 58px rgba(0,0,0,.32)!important;
}
body.modern-dark h1,
body.modern-dark h2,
body.modern-dark h3,
body.modern-dark h4,
body.modern-dark .section-headline-title,
body.modern-dark .category-card p,
body.modern-dark .job-card h3,
body.modern-dark .paper-card h3,
body.modern-dark .results-card h3,
body.modern-dark .syllabus-card h3,
body.modern-dark .study-card h3,
body.modern-dark .study-resource-card h3{color:#f8fbff!important;}
body.modern-dark p,
body.modern-dark li,
body.modern-dark .job-meta,
body.modern-dark .paper-meta,
body.modern-dark .detail-text,
body.modern-dark .jobs-meta-text,
body.modern-dark .disclaimer-content-card p{color:#a8b8cc!important;}
body.modern-dark .section-headline a,
body.modern-dark .section-cta,
body.modern-dark .breadcrumb-bar a,
body.modern-dark .stat-card span,
body.modern-dark .stats-card h2,
body.modern-dark .stat-card h2,
body.modern-dark .stat-card p:first-child{color:#7dd3fc!important;}
body.modern-dark .category-card .icon,
body.modern-dark .disclaimer-card-icon,
body.modern-dark .disclaimer-alert-orb{
  background:rgba(14,165,233,.16)!important;
  color:#7dd3fc!important;
  border-color:rgba(125,211,252,.18)!important;
}
body.modern-dark input,
body.modern-dark select,
body.modern-dark textarea{
  background:#0b1726!important;
  color:#eaf2ff!important;
  border-color:rgba(125,211,252,.18)!important;
}
body.modern-dark input::placeholder,
body.modern-dark textarea::placeholder{color:#7c8ca5!important;}
body.modern-dark input:focus,
body.modern-dark select:focus,
body.modern-dark textarea:focus{
  border-color:rgba(56,189,248,.65)!important;
  box-shadow:0 0 0 5px rgba(56,189,248,.14)!important;
}
body.modern-dark .jobs-search-inner{
  background:
    radial-gradient(circle at 95% 10%,rgba(45,212,191,.16),transparent 34%),
    linear-gradient(135deg,rgba(15,27,45,.94),rgba(7,17,31,.94))!important;
  border-color:rgba(125,211,252,.16)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.30)!important;
}
body.modern-dark .jobs-search-copy h2{color:#f8fbff!important;}
body.modern-dark .jobs-search-copy p{color:#a8b8cc!important;}
body.modern-dark .jobs-search-kicker,
body.modern-dark .jobs-search-filters button,
body.modern-dark .badge,
body.modern-dark .status-badge{
  background:rgba(14,165,233,.14)!important;
  color:#bae6fd!important;
  border-color:rgba(125,211,252,.16)!important;
}
body.modern-dark table,
body.modern-dark th,
body.modern-dark td{
  color:#dbeafe!important;
  border-color:rgba(125,211,252,.12)!important;
}
body.modern-dark th{background:rgba(14,165,233,.12)!important;}
body.modern-dark tr{background:transparent!important;}
body.modern-dark tr:hover{background:rgba(14,165,233,.08)!important;}
body.modern-dark .modern-menu-overlay{background:rgba(0,0,0,.52)!important;}
body.modern-dark .modern-menu-panel{
  background:linear-gradient(180deg,#0f1b2d,#07111f)!important;
  color:#eaf2ff!important;
  border-color:rgba(125,211,252,.18)!important;
  box-shadow:0 26px 80px rgba(0,0,0,.44)!important;
}
body.modern-dark .modern-menu-panel h2{color:#f8fbff!important;}
body.modern-dark .modern-menu-kicker{background:rgba(14,165,233,.14)!important;color:#7dd3fc!important;}
body.modern-dark .modern-menu-link{
  background:rgba(15,27,45,.88)!important;
  color:#dbeafe!important;
  border-color:rgba(125,211,252,.14)!important;
}
body.modern-dark .modern-menu-link:hover,
body.modern-dark .modern-menu-link.active{
  background:linear-gradient(135deg,#0ea5e9,#14b8a6)!important;
  color:#ffffff!important;
}
body.modern-dark .modern-menu-close{
  background:rgba(14,165,233,.14)!important;
  color:#eaf2ff!important;
  border-color:rgba(125,211,252,.18)!important;
}
body.modern-dark .modern-menu-cta{
  background:linear-gradient(135deg,#082f49,#134e4a)!important;
  color:#dbeafe!important;
}
body.modern-dark .modern-bottom-nav{
  background:rgba(7,17,31,.90)!important;
  border-color:rgba(125,211,252,.18)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.42)!important;
}
body.modern-dark .modern-bottom-nav a{color:#9fb3ca!important;}
body.modern-dark .modern-bottom-nav a.active{color:#7dd3fc!important;}
body.modern-dark .modern-bottom-icon{
  background:rgba(15,27,45,.86)!important;
  border-color:rgba(125,211,252,.14)!important;
}
body.modern-dark footer,
body.modern-dark .simple-footer,
body.modern-dark .home-footer{
  background:linear-gradient(135deg,#030712 0%,#082f49 58%,#063b36 100%)!important;
  border-top-color:rgba(125,211,252,.16)!important;
}
body.modern-dark footer h3,
body.modern-dark .simple-footer h3{color:#f8fbff!important;}
body.modern-dark footer .footer-link,
body.modern-dark .simple-footer-links a.footer-link{color:rgba(226,242,255,.78)!important;}
body.modern-dark footer .footer-link:hover,
body.modern-dark .simple-footer-links a.footer-link:hover{color:#ffffff!important;}
body.modern-dark .simple-footer-bottom,
body.modern-dark .footer-bottom{color:rgba(226,242,255,.62)!important;}
body.modern-dark .legal-disclaimer-page,
body.modern-dark .disclaimer-content-card{
  color:#eaf2ff!important;
}
body.modern-dark .disclaimer-visual-hero{
  background:
    radial-gradient(circle at 12% 18%,rgba(14,165,233,.14),transparent 28%),
    radial-gradient(circle at 86% 15%,rgba(250,204,21,.14),transparent 28%),
    linear-gradient(180deg,#111827 0%,#0f1b2d 54%,#07111f 100%)!important;
  border-color:rgba(250,204,21,.18)!important;
}
@media (max-width:768px){
  body.modern-dark nav.site-nav a,
  body.modern-dark .site-nav a{background:#0f1b2d!important;color:#dbeafe!important;}
}


/* ------------------------------------------------------------------
   v11 mobile + dark mode reliability pass.
   Keeps the Aurora v5/v9 layout, only improves responsiveness and theme behavior.
------------------------------------------------------------------- */
html,
body{
  max-width:100%;
  overflow-x:hidden!important;
}
img,svg,video,canvas,iframe{
  max-width:100%;
}
.modern-top-actions{
  flex-shrink:0!important;
}
.modern-theme-dot,
.modern-nav-toggle{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
body.modern-menu-open{
  overflow:hidden!important;
  touch-action:none;
}
body.modern-dark .modern-theme-dot svg,
body.modern-dark .modern-nav-toggle .menu-line{
  color:#7dd3fc!important;
  background:currentColor!important;
}
body.modern-dark .footer-link-icon{
  stroke:currentColor!important;
}
@media (max-width:768px){
  body{
    padding-bottom:calc(100px + env(safe-area-inset-bottom,0px))!important;
  }
  header,
  .site-header,
  .page-header{
    min-height:64px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    z-index:300!important;
  }
  .site-brand,
  .logo-container,
  header > div:first-child{
    width:100%!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .site-brand-name,
  .logo-container > div,
  .page-header > div{
    min-width:0!important;
  }
  .modern-top-actions{
    margin-left:auto!important;
    gap:8px!important;
  }
  .modern-theme-dot,
  .modern-nav-toggle{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    border-radius:15px!important;
  }
  .modern-nav-toggle .menu-line{
    width:19px!important;
  }
  .main-content,
  .container{
    width:100%!important;
    max-width:100%!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .modern-announcement{
    margin:0!important;
  }
  .modern-announcement-inner{
    padding:11px 14px!important;
    gap:10px!important;
  }
  .modern-announcement a{
    font-size:.86rem!important;
    line-height:1.35!important;
  }
  .main-content .hero{
    width:100%!important;
    margin:18px auto 18px!important;
    padding:38px 18px 28px!important;
    border-radius:28px!important;
    text-align:center!important;
  }
  .main-content .hero h2{
    font-size:clamp(2rem,11vw,2.85rem)!important;
    line-height:1.05!important;
    max-width:100%!important;
  }
  .main-content .hero-text{
    font-size:.98rem!important;
    line-height:1.6!important;
    margin-bottom:20px!important;
  }
  .main-content .hero .hero-buttons,
  .hero-buttons{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:center!important;
    width:100%!important;
    gap:10px!important;
    margin-top:12px!important;
  }
  .main-content .hero .primary-btn,
  .main-content .hero .secondary-btn,
  .hero-buttons .primary-btn,
  .hero-buttons .secondary-btn{
    width:100%!important;
    min-height:48px!important;
    border-radius:16px!important;
  }
  .stat-grid,
  .stats-container{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .category-grid,
  .study-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .category-card{
    min-height:140px!important;
    padding:18px 10px!important;
  }
  .category-card .icon{
    width:56px!important;
    height:56px!important;
  }
  .section-headline{
    gap:10px!important;
  }
  .section-headline a,
  .section-cta{
    white-space:nowrap!important;
  }
  .jobs-search-portal,
  .papers-filter-card,
  .results-filter-card,
  .syllabus-filter-card,
  .study-toolbar,
  .updates-filter-panel{
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .jobs-search-form,
  .papers-filter-grid,
  .updates-filter-grid,
  .results-filter-grid,
  .syllabus-filter-grid,
  .study-toolbar-grid{
    grid-template-columns:1fr!important;
  }
  input,
  select,
  textarea,
  button{
    max-width:100%!important;
  }
  .modern-menu-panel{
    top:8px!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
    left:8px!important;
    width:auto!important;
    max-width:none!important;
    border-radius:28px!important;
    padding:16px!important;
  }
  .modern-menu-link{
    min-height:52px!important;
  }
  .modern-menu-cta{
    margin-bottom:2px!important;
  }
  .modern-bottom-nav{
    left:8px!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;
    min-height:72px!important;
    border-radius:24px!important;
    z-index:260!important;
  }
  .modern-bottom-nav a{
    font-size:.68rem!important;
    overflow:hidden!important;
  }
  .modern-bottom-icon{
    width:27px!important;
    height:27px!important;
  }
  footer,
  .simple-footer,
  .home-footer{
    padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))!important;
  }
  .simple-footer-links{
    max-width:320px!important;
  }
}
@media (max-width:420px){
  .main-content,
  .container{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .site-brand-name h1,
  header h1,
  .site-header h1,
  .page-header h1{
    font-size:1.02rem!important;
  }
  .site-brand-name p,
  header p,
  .site-header p,
  .page-header p{
    max-width:170px!important;
    font-size:.72rem!important;
  }
  .main-content .hero{
    margin-top:14px!important;
    padding:34px 14px 24px!important;
    border-radius:24px!important;
  }
  .main-content .hero h2{
    font-size:clamp(1.85rem,10.5vw,2.35rem)!important;
  }
  .stat-grid,
  .stats-container,
  .category-grid,
  .study-grid{
    grid-template-columns:1fr 1fr!important;
  }
  .category-card p{
    font-size:.9rem!important;
  }
  .section-headline{
    align-items:flex-start!important;
  }
  .section-headline-title,
  .section-headline h2{
    font-size:1.55rem!important;
    line-height:1.15!important;
  }
  .modern-bottom-nav{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    padding:7px 5px!important;
  }
}
@media (max-width:340px){
  .stat-grid,
  .stats-container,
  .category-grid,
  .study-grid{
    grid-template-columns:1fr!important;
  }
  .modern-bottom-nav a{
    font-size:.62rem!important;
  }
}


/* ------------------------------------------------------------------
   v12 fix: visible dark-mode headings, restored theme icon, modern header font.
   Visual-only update; no API, Cloudflare Function, D1, R2, or admin logic changed.
------------------------------------------------------------------- */
:root{
  --ng-modern-font:"Inter","Plus Jakarta Sans","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --ng-display-font:"Plus Jakarta Sans","Inter","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
}
html, body{
  font-family:var(--ng-modern-font)!important;
}
.site-brand-name h1,
.logo-container h1,
header h1,
.site-header h1,
.page-header h1,
.main-content .hero h2,
.section-headline-title,
.section-headline h2{
  font-family:var(--ng-display-font)!important;
}
.site-brand-name p,
.logo-container p,
header p,
.site-header p,
.page-header p{
  font-family:var(--ng-modern-font)!important;
  font-weight:650!important;
  letter-spacing:.01em!important;
  line-height:1.35!important;
}
.modern-theme-dot{
  position:relative!important;
  overflow:hidden!important;
}
.modern-theme-dot svg,
.modern-theme-dot .ng-sun-icon,
.modern-theme-dot .ng-moon-icon{
  display:block!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  fill:none!important;
  opacity:1!important;
  visibility:visible!important;
}
.modern-theme-dot .ng-sun-icon circle,
.modern-theme-dot .ng-moon-icon circle{
  fill:none!important;
}
body.modern-dark .section-headline-title,
body.modern-dark .section-headline-title > span:not(.section-accent-line):not(.section-icon),
body.modern-dark .section-headline h2,
body.modern-dark .section-headline h2 span,
body.modern-dark .section-title,
body.modern-dark .section-heading,
body.modern-dark main section h2{
  color:#f8fbff!important;
  -webkit-text-fill-color:#f8fbff!important;
  opacity:1!important;
  text-shadow:0 1px 0 rgba(255,255,255,.02)!important;
}
body.modern-dark .section-icon,
body.modern-dark .section-headline .section-icon{
  background:rgba(14,165,233,.14)!important;
  color:#7dd3fc!important;
  border:1px solid rgba(125,211,252,.20)!important;
  box-shadow:0 10px 26px rgba(14,165,233,.12)!important;
}
body.modern-dark .section-accent-line{
  background:linear-gradient(180deg,#38bdf8,#2dd4bf,#fbbf24)!important;
  opacity:1!important;
}
body.modern-dark .section-cta,
body.modern-dark .section-headline a{
  color:#ffffff!important;
}
body.modern-dark .modern-theme-dot{
  color:#fbbf24!important;
}
body:not(.modern-dark) .modern-theme-dot{
  color:#075985!important;
}
body.modern-dark .modern-nav-toggle{
  color:#7dd3fc!important;
}
@media (max-width:768px){
  .modern-theme-dot svg,
  .modern-theme-dot .ng-sun-icon,
  .modern-theme-dot .ng-moon-icon{
    width:20px!important;
    height:20px!important;
    min-width:20px!important;
    min-height:20px!important;
  }
  .site-brand-name p,
  .logo-container p,
  header p,
  .site-header p,
  .page-header p{
    font-size:.78rem!important;
    white-space:normal!important;
  }
  body.modern-dark .section-headline-title,
  body.modern-dark .section-headline-title > span:not(.section-accent-line):not(.section-icon){
    color:#f8fbff!important;
    -webkit-text-fill-color:#f8fbff!important;
  }
}

/* ------------------------------------------------------------------
   v13 mobile polish: true bottom quick nav, sticky top bars,
   mobile footer columns, and Study Material as the fifth mobile tab.
   Visual-only update; no API, Cloudflare Function, D1, R2, or admin logic changed.
------------------------------------------------------------------- */
/* Keep the top website controls reachable while scrolling. */
header,
.site-header,
.page-header{
  position:sticky!important;
  top:0!important;
  z-index:420!important;
}
nav.site-nav,
.site-nav{
  position:sticky!important;
  top:76px!important;
  z-index:410!important;
}

@media (max-width:768px){
  header,
  .site-header,
  .page-header{
    top:0!important;
    z-index:430!important;
  }
  /* Primary nav is replaced by the hamburger drawer on mobile. */
  nav.site-nav,
  .site-nav{
    position:static!important;
    top:auto!important;
  }

  /* Keep the 5-button mobile nav pinned to the real bottom of the screen. */
  .modern-bottom-nav{
    position:fixed!important;
    top:auto!important;
    left:10px!important;
    right:10px!important;
    bottom:max(8px, env(safe-area-inset-bottom))!important;
    z-index:999!important;
    min-height:70px!important;
    padding:7px 6px!important;
    transform:translateZ(0)!important;
    will-change:transform!important;
  }

  /* Make footer columns and About links vertical on mobile. */
  footer .footer-grid,
  .home-footer .footer-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:24px!important;
    text-align:left!important;
  }
  footer .footer-column,
  .home-footer .footer-column,
  .simple-footer-inner{
    width:100%!important;
    max-width:100%!important;
  }
  footer .footer-link,
  .footer-grid a.footer-link,
  .home-footer .footer-grid a.footer-link,
  .simple-footer-links a.footer-link{
    display:flex!important;
    width:100%!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    margin:0 0 12px!important;
    text-align:left!important;
  }
  .simple-footer-links{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:0!important;
    width:100%!important;
    max-width:320px!important;
    margin:0!important;
  }
  .simple-footer h3,
  footer .footer-grid h3,
  .home-footer .footer-grid h3{
    text-align:left!important;
  }
}

@media (max-width:420px){
  .modern-bottom-nav{
    left:8px!important;
    right:8px!important;
    bottom:max(6px, env(safe-area-inset-bottom))!important;
    border-radius:24px!important;
  }
  .modern-bottom-nav a{
    gap:3px!important;
  }
}


/* ------------------------------------------------------------------
   v14 mobile blank-space fix.
   The mobile hamburger uses the modern drawer panel, so the old inline
   primary nav must not reserve hidden space below the header.
------------------------------------------------------------------- */
@media (max-width:768px){
  nav.site-nav,
  .site-nav{
    display:none!important;
    position:absolute!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:none!important;
  }
  .modern-announcement{
    margin-top:0!important;
  }
  .modern-announcement-inner{
    margin-top:0!important;
  }
}
