
/* JobsAlertIndia compact interactive layer */
.jai-icon-btn{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff;width:38px;height:38px;border-radius:10px;cursor:pointer;margin-left:8px}.jai-icon-btn:hover{background:rgba(255,255,255,.18)}
.jai-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#0f172a;color:#fff;padding:11px 16px;border-radius:10px;font-size:13px;font-weight:600;opacity:0;pointer-events:none;transition:.22s;z-index:3000;box-shadow:0 12px 30px rgba(0,0,0,.2)}.jai-toast.show{opacity:1;transform:translate(-50%,0)}
.save-job-btn{border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:9px;padding:9px 12px;cursor:pointer;font-weight:600}.save-job-btn.saved{color:#4f46e5;background:#eef2ff;border-color:#c7d2fe}
.jai-dark{background:#0b1120!important;color:#e2e8f0!important}.jai-dark .list-item,.jai-dark .filter-section,.jai-dark .card,.jai-dark .search-header-card,.jai-dark .sidebar-box,.jai-dark .full-width-block>div{background:#111827!important;border-color:#263244!important;color:#e2e8f0}.jai-dark input,.jai-dark select{background:#0f172a!important;color:#e2e8f0!important;border-color:#334155!important}.jai-dark .job-title,.jai-dark h1,.jai-dark h2,.jai-dark h3,.jai-dark p,.jai-dark .job-meta,.jai-dark .suggestion-item{color:#e2e8f0!important}.jai-dark .suggestions-box{background:#111827}.jai-dark .suggestion-item:hover{background:#1f2937}
.jai-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 auto 22px;max-width:1200px;padding:0 15px}.jai-stat{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:13px 15px;box-shadow:0 3px 10px rgba(15,23,42,.05)}.jai-stat b{display:block;font-size:20px;color:#0f172a}.jai-stat span{font-size:12px;color:#64748b}.jai-quick{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.jai-quick a{padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #e2e8f0;color:#334155;font-size:12px;font-weight:600}.jai-quick a:hover{border-color:#2563eb;color:#2563eb}
.jai-deadline{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:5px 8px;border-radius:999px;background:#fff7ed;color:#c2410c}.jai-deadline.hot{background:#fef2f2;color:#dc2626}.jai-deadline.ok{background:#ecfdf5;color:#047857}
@media(max-width:700px){.jai-stat-row{grid-template-columns:repeat(2,1fr)}.jai-icon-btn{width:36px;height:36px}.jai-quick{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}}

/* ==========================================================
   JobsAlertIndia UI Refresh v3
   UI ONLY: no database/API changes
   ========================================================== */
:root{
  --jai-blue:#2563eb;
  --jai-blue-dark:#1d4ed8;
  --jai-navy:#0f172a;
  --jai-bg:#f5f7fb;
  --jai-card:#ffffff;
  --jai-border:#e5e7eb;
  --jai-muted:#64748b;
  --jai-radius:16px;
  --jai-shadow:0 8px 24px rgba(15,23,42,.07);
}

html{scroll-behavior:smooth}
body{background:var(--jai-bg)}
button,a,input,select,textarea{font-family:inherit}

/* ---------- global polish ---------- */
.navbar{
  min-height:64px;
  padding:10px clamp(14px,3vw,32px)!important;
  background:rgba(15,23,42,.97)!important;
  backdrop-filter:blur(14px);
}
.logo a{font-size:21px!important;white-space:nowrap}
.logo img{box-shadow:0 2px 8px rgba(0,0,0,.18)}
.nav-search{transition:.2s;border-color:#475569!important}
.nav-search:focus-within{border-color:#60a5fa!important;box-shadow:0 0 0 3px rgba(37,99,235,.18)}
.menu-btn{transition:.2s!important}
.menu-btn:hover{background:rgba(255,255,255,.16)!important}

.hero{
  padding:58px 20px 52px!important;
  margin-bottom:24px!important;
  background:
    radial-gradient(circle at 20% 10%,rgba(37,99,235,.22),transparent 34%),
    radial-gradient(circle at 80% 90%,rgba(245,158,11,.16),transparent 32%),
    linear-gradient(135deg,#0b1220,#18253a)!important;
}
.hero h2{font-size:clamp(28px,4vw,42px)!important;letter-spacing:-1px}
.hero p{max-width:760px;margin:0 auto;color:#cbd5e1;font-size:15px}

/* compact latest bar */
.news-ticker-container{height:40px!important;background:#111c2e!important;border-bottom:1px solid #26344b!important}
.ticker-label{min-width:108px!important;padding:0 16px!important;background:#2563eb!important;font-size:11px!important}
.ticker-label::after{background:#2563eb!important}
.ticker-content a{font-size:12px!important;margin-right:28px!important}

/* stats */
.jai-stat-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px!important;margin-bottom:18px!important}
.jai-stat{position:relative;overflow:hidden;padding:16px 18px!important;border-radius:16px!important;box-shadow:var(--jai-shadow)!important;transition:.2s}
.jai-stat::after{content:"";position:absolute;right:-22px;bottom:-30px;width:80px;height:80px;border-radius:50%;background:rgba(37,99,235,.06)}
.jai-stat:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.1)!important}
.jai-stat b{font-size:23px!important;color:#0f172a!important}
.jai-stat span{font-size:12px!important}

/* quick navigation */
.jai-quick{gap:8px!important}
.jai-quick a{padding:9px 13px!important;transition:.2s;white-space:nowrap}
.jai-quick a:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(37,99,235,.1)}

/* Homepage card visual styling. Layout is controlled by final-desktop-layout.css. */
.category-block{border:1px solid var(--jai-border);border-radius:18px!important;box-shadow:var(--jai-shadow)!important;padding:18px!important}
.cat-header{gap:12px!important;margin-bottom:14px!important}
.cat-icon{width:42px!important;height:42px!important;border-radius:12px!important}
.cat-info h2{font-size:20px}
.cat-info p{font-size:12px;color:var(--jai-muted)}
.count-tag{font-size:11px!important;padding:5px 9px!important}
.cat-sub-grid{margin-bottom:14px!important;padding-bottom:13px!important}
.cat-sub-grid a{transition:.2s}
.cat-sub-grid a:hover{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}

/* action cards */
.action-buttons{gap:12px!important;margin-bottom:24px!important}
.action-card{min-height:52px;border-radius:14px!important;animation:none!important;box-shadow:0 6px 18px rgba(15,23,42,.08)!important}
.action-card:hover{animation:none!important;transform:translateY(-2px);filter:brightness(1.03)}

/* sidebar */
.sidebar{gap:18px!important}
.sidebar-box{border-radius:16px!important;box-shadow:var(--jai-shadow)!important}
.dark-header{padding:13px 15px!important}
.notification-box{min-height:0!important}
.marquee-wrapper{height:300px!important}
.q-link{border-radius:10px!important;transition:.2s}
.q-link:hover{transform:translateY(-1px);filter:brightness(1.03)}

/* listing page */
.listing-container{max-width:1120px!important}
.filter-section{
  background:#fff!important;
  border:1px solid var(--jai-border)!important;
  border-radius:18px!important;
  box-shadow:var(--jai-shadow)!important;
  padding:16px!important;
  grid-template-columns:2fr repeat(4,minmax(130px,1fr))!important;
  align-items:center;
}
.search-box-inner input,.filter-row select{min-height:46px!important;border-radius:12px!important}
#clearFilters,#savedOnly{min-height:46px}
#jobList .list-item{border-radius:16px!important;border:1px solid var(--jai-border)!important;box-shadow:0 4px 16px rgba(15,23,42,.05)!important}
#jobList .list-item:hover{box-shadow:0 12px 26px rgba(15,23,42,.09)!important}
.btn-row{gap:8px!important}
.action-btn{border-radius:10px!important}

/* details page */
.main-wrapper{max-width:1200px!important;gap:20px!important}
.card{border-radius:20px!important;box-shadow:0 12px 35px rgba(0,0,0,.25)!important}
.job-banner{max-height:390px;object-fit:cover}
.stats{gap:12px!important}
.stat-box{border-radius:16px!important}

/* mock tests */
.attempt-container,.inst-container{width:min(1120px,calc(100% - 30px));margin-left:auto;margin-right:auto}
.exam-list-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.test-card{border-radius:18px!important;box-shadow:var(--jai-shadow)!important;border:1px solid var(--jai-border)!important;transition:.2s!important}
.test-card:hover{transform:translateY(-4px)!important;box-shadow:0 14px 30px rgba(15,23,42,.11)!important}
.start-exam-btn{border-radius:10px!important}
.inst-container{border:1px solid var(--jai-border);box-shadow:var(--jai-shadow)!important}

/* exam panel */
.exam-header{height:64px!important;padding:0 18px!important}
.timer-box{border-radius:10px!important}
.option-btn{border-radius:12px!important}
.p-item{border-radius:8px!important}

/* admin */
.admin-wrap{max-width:1200px!important}
.admin-card{border-radius:18px!important;box-shadow:var(--jai-shadow)!important}
.admin-btn{border-radius:10px!important;transition:.2s}
.admin-btn:hover{transform:translateY(-1px)}
.admin-grid input,.admin-grid select,.admin-grid textarea{border-radius:10px!important}

/* floating back-to-top */
#jaiTopBtn{position:fixed;right:18px;bottom:18px;width:42px;height:42px;border:0;border-radius:50%;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 25px rgba(37,99,235,.3);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;z-index:1500}
#jaiTopBtn.show{opacity:1;visibility:visible;transform:none}

/* ---------- tablet ---------- */
@media (max-width:1100px){
  .layout-grid{grid-template-columns:235px minmax(0,1fr)!important;gap:18px!important}
  .filter-section{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .filter-section .search-box-inner{grid-column:1/-1}
  .exam-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ---------- phone ---------- */
@media (max-width:900px){
  .navbar{padding:10px 12px!important;display:flex!important;flex-wrap:wrap!important}
  .logo{width:auto!important;flex:1 1 auto!important;margin:0!important;display:flex!important;justify-content:flex-start!important}
  .logo a{font-size:19px!important}
  .nav-right{width:100%!important;order:2;gap:8px!important;margin-top:8px}
  .nav-search{min-width:0!important;width:auto!important;flex:1 1 auto!important;padding:8px 12px!important}
  .nav-search input{font-size:13px!important}
  .menu-btn{padding:8px 11px!important;font-size:13px!important}
  #jaiThemeBtn{flex:0 0 38px}

  .hero{padding:34px 15px 30px!important;margin-bottom:16px!important}
  .hero h2{font-size:27px!important}
  .hero p{font-size:13px!important;line-height:1.7}
  .news-ticker-container{display:none}

  .jai-stat-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:0 12px!important;gap:10px!important}
  .jai-stat{padding:13px!important}
  .jai-stat b{font-size:20px!important}

  .container-fluid{width:100%!important;padding-left:12px!important;padding-right:12px!important}
  .jai-quick{overflow-x:auto!important;flex-wrap:nowrap!important;scrollbar-width:none!important;padding-bottom:3px!important}
  .jai-quick::-webkit-scrollbar{display:none}
  .jai-quick a{flex:0 0 auto}

  .layout-grid{display:block!important}
  .main-content{width:100%!important}
  .sidebar{width:290px!important;max-width:86vw!important}

  .govt-sections-wrapper{grid-template-columns:1fr!important;gap:14px!important}
  .category-block{padding:14px!important}
  .jobs-grid{grid-template-columns:1fr!important;gap:12px!important}
  .job-card{min-height:0!important}
  .action-buttons{display:grid!important;grid-template-columns:1fr 1fr!important}
  .action-card{min-width:0!important;width:100%!important}

  .filter-section{grid-template-columns:1fr!important;padding:12px!important;gap:9px!important}
  .filter-section .search-box-inner{grid-column:auto}
  #clearFilters,#savedOnly{width:100%}
  .listing-container{width:calc(100% - 20px)!important;padding:0!important}
  .page-header-banner{padding:28px 15px!important}
  .page-header-banner h2{font-size:23px!important}

  .main-wrapper{width:100%!important;margin-top:8px!important;padding:0 10px!important}
  .card{padding:17px!important;border-radius:16px!important}
  .job-title{font-size:23px!important}
  .stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:18px 0!important}
  .stat-box{padding:12px 5px!important;border-radius:13px!important}
  .stat-box b{font-size:12px!important;word-break:break-word}
  .stat-icon{width:38px!important;height:38px!important}
  .details-text{font-size:14px!important}
  .details-text table{font-size:12px!important}

  .exam-list-grid{grid-template-columns:1fr!important}
  .attempt-container,.inst-container{width:calc(100% - 24px)!important}
  .inst-container{padding:22px!important;margin-top:24px!important}

  .admin-wrap{padding:0 12px!important;margin:22px auto!important}
  .topbar{align-items:flex-start!important;flex-direction:column!important}
  .admin-grid{grid-template-columns:1fr!important}
  .admin-card{padding:16px!important}
  .admin-table{font-size:12px!important}

  #jaiTopBtn{right:12px;bottom:12px}
}

/* ---------- small phone ---------- */
@media (max-width:520px){
  .logo a{font-size:17px!important}
  .logo img{height:32px!important}
  .menu-btn span{display:none}
  .menu-btn{width:40px;height:40px;justify-content:center;padding:0!important}
  .nav-search{height:40px}
  .nav-search input{font-size:12px!important}
  .hero h2{font-size:24px!important}
  .jai-stat span{font-size:11px!important}
  .jai-stat b{font-size:18px!important}
  .cat-info h2{font-size:18px!important}
  .cat-info p{font-size:11px!important}
  .stats{grid-template-columns:1fr!important}
  .stat-box{flex-direction:row!important;text-align:left!important;gap:10px!important;justify-content:flex-start!important}
  .stat-icon{margin:0!important;flex:0 0 auto}
  .stat-box span{font-size:9px!important}
  .stat-box b{margin-left:auto!important;text-align:right!important}
  .action-buttons{grid-template-columns:1fr!important}
  .action-card{min-height:48px!important}
  .details-text h3{font-size:17px!important}
  .exam-header{padding:0 10px!important}
  .exam-title{font-size:14px!important;max-width:55vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .timer-box{font-size:14px!important;padding:7px 10px!important}
  .question-area{padding:18px!important}
  .q-text{font-size:16px!important}
  .option-btn{padding:13px!important;font-size:14px!important}
  .footer-actions{position:sticky;bottom:0;background:#fff;padding:12px 0!important}
  .nav-btn{padding:11px 13px!important}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Original-content area: useful to visitors and visually compact. */
.jai-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 15px 18px}
.jai-value-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:18px;box-shadow:0 5px 18px rgba(15,23,42,.05)}
.jai-value-card .icon{width:38px;height:38px;border-radius:11px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.jai-value-card h3{margin:0 0 7px;color:#0f172a;font-size:15px}
.jai-value-card p{margin:0;color:#64748b;font-size:12px;line-height:1.7}
@media(max-width:700px){.jai-value-grid{grid-template-columns:1fr;margin-left:0;margin-right:0;gap:10px}.jai-value-card{padding:15px}}
