/* ===== SARKARI JOBS FRONTEND STYLES ===== */
:root {
  --sj-green: #0b9444;
  --sj-dark-green: #13513C;
  --sj-blue: #1e73be;
  --sj-orange: #e8621d;
  --sj-red: #c0392b;
  --sj-light: #f4f9f6;
  --sj-border: #dde8e0;
}

/* ARCHIVE PAGE */
.sj-archive-header { background: var(--sj-dark-green); color:#fff; padding: 20px 24px; margin-bottom:20px; border-radius:6px; }
.sj-archive-header h1 { margin:0 0 6px; font-size:26px; color:#fff; }
.sj-archive-desc { margin:0 0 12px; opacity:.85; font-size:15px; }
.sj-filter-row { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.sj-filter-group { display:flex; flex-wrap:wrap; gap:5px; align-items:center; font-size:14px; }
.sj-filter-group a { background:rgba(255,255,255,.15); color:#fff; padding:3px 10px; border-radius:20px; text-decoration:none; }
.sj-filter-group a:hover, .sj-filter-group a.active { background:#fff; color: var(--sj-dark-green); }

/* JOB LISTING TABLE */
.sj-table-wrap { overflow-x:auto; }
.sj-listing-table { width:100%; border-collapse:collapse; font-size:16px; background:#fff; box-shadow:0 1px 6px rgba(0,0,0,.08); border-radius:6px; overflow:hidden; }
.sj-listing-table thead tr { background: var(--sj-dark-green); color:#fff; }
.sj-listing-table th { padding:12px 16px; text-align:left; font-size:15px; font-weight:600; white-space:nowrap; }
.sj-listing-table td { padding:13px 16px; border-bottom:1px solid var(--sj-border); vertical-align:top; }
.sj-listing-table tbody tr:last-child td { border-bottom:none; }
.sj-listing-table tbody tr:nth-child(even) { background:#f9fdfb; }
.sj-listing-table tbody tr:hover { background:#edf7f1; }
.col-title { width:40%; }
.col-org { width:20%; }
.col-qual { width:15%; }
.col-type { width:8%; text-align:center; }
.col-action { width:12%; text-align:center; }
.sj-job-title-link { color:#1a1a1a; font-weight:600; text-decoration:none; line-height:1.4; font-size:16px; }
.sj-job-title-link:hover { color: var(--sj-green); }
.sj-vac-badge { font-size:14px; color: var(--sj-green); font-weight:400; }
.sj-ld-inline { font-size:13px; color: var(--sj-red); margin-top:4px; }
.col-org a { color: var(--sj-blue); text-decoration:none; font-size:15px; }
.sj-type-badge { padding:3px 8px; border-radius:20px; font-size:11px; font-weight:600; }
.sj-type-online  { background:#e3f2fd; color:#1565c0; }
.sj-type-offline { background:#fce4ec; color:#c62828; }
.sj-view-btn { display:inline-block; background: var(--sj-blue); color:#fff; padding:6px 14px; border-radius:4px; font-size:12px; font-weight:600; text-decoration:none; white-space:nowrap; }
.sj-view-btn:hover { background:#1558a8; color:#fff; }
.sj-pagination { margin:20px 0; display:flex; gap:6px; flex-wrap:wrap; }
.sj-pagination .page-numbers { padding:6px 12px; border:1px solid var(--sj-border); border-radius:4px; color: var(--sj-blue); text-decoration:none; font-size:13px; }
.sj-pagination .page-numbers.current { background: var(--sj-green); color:#fff; border-color: var(--sj-green); }
.sj-no-jobs { padding:40px; text-align:center; color:#666; }

/* HOMEPAGE SHORTCODE BOXES */
.sj-latest-box, .sj-popular-box, .sj-expiring-box {
  background:#fff; border:1px solid var(--sj-border); border-radius:6px;
  margin-bottom:24px; overflow:hidden;
}
.sj-section-title {
  background: var(--sj-dark-green); color:#fff;
  margin:0; padding:13px 18px; font-size:18px; font-weight:700;
}
.sj-section-title.sj-orange { background: var(--sj-orange); }
.sj-section-title.sj-red    { background: var(--sj-red); }
.sj-job-list { margin:0; padding:0; list-style:none; }
.sj-job-list li { border-bottom:1px solid #eee; }
.sj-job-list li:last-child { border-bottom:none; }
.sj-job-link { display:flex; justify-content:space-between; align-items:center; padding:12px 18px; color:#1a1a1a; text-decoration:none; gap:12px; }
.sj-job-link:hover { background: var(--sj-light); }
.sj-job-name { font-size:16px; line-height:1.4; flex:1; }
.sj-job-name em { color: var(--sj-green); font-style:normal; font-size:14px; }
.sj-job-date { font-size:13px; color: var(--sj-red); white-space:nowrap; font-weight:600; }
.sj-job-date.sj-urgent { background:#fff3cd; padding:2px 6px; border-radius:3px; }
.sj-more-link { text-align:right; padding:8px 18px; background: var(--sj-light); }
.sj-more-link a { color: var(--sj-blue); font-size:13px; font-weight:600; text-decoration:none; }

/* QUICK NAV */
.sj-quicknav { background:#fff; border:1px solid var(--sj-border); border-radius:6px; overflow:hidden; margin-bottom:20px; }
.sj-quicknav-title { background: var(--sj-blue); color:#fff; margin:0; padding:10px 16px; font-size:15px; }
.sj-quicknav ul { margin:0; padding:0; list-style:none; }
.sj-quicknav li { border-bottom:1px solid #eee; }
.sj-quicknav a { display:block; padding:10px 16px; color:#222; text-decoration:none; font-size:15px; font-weight:500; }
.sj-quicknav a:hover { background: var(--sj-light); color: var(--sj-green); }
.sj-quicknav a::before { content:'▸ '; color: var(--sj-green); }

/* TAX BOXES (dept/qual/state) */
.sj-taxbox { background:#fff; border:1px solid var(--sj-border); border-radius:6px; overflow:hidden; margin-bottom:16px; }
.sj-taxbox-title { background: var(--sj-dark-green); color:#fff; margin:0; padding:9px 14px; font-size:14px; }
.sj-taxbox ul { margin:0; padding:0; list-style:none; display:flex; flex-wrap:wrap; gap:4px; padding:10px 12px; }
.sj-taxbox li { }
.sj-taxbox a { display:inline-block; background:#edf7f1; color: var(--sj-dark-green); padding:5px 12px; border-radius:20px; font-size:14px; text-decoration:none; }
.sj-taxbox a:hover { background: var(--sj-green); color:#fff; }
.sj-statebox ul { column-count:2; }

/* SINGLE JOB PAGE */
.sj-breadcrumb { font-size:12px; color:#666; padding:10px 0; margin-bottom:16px; }
.sj-breadcrumb a { color: var(--sj-blue); text-decoration:none; }
.sj-breadcrumb a:hover { text-decoration:underline; }
.sj-job-page-title { font-size:28px; color:#1a1a1a; border-bottom:3px solid var(--sj-green); padding-bottom:10px; margin-bottom:20px; }

/* Quick Info Box */
.sj-infobox { background: var(--sj-light); border:1px solid var(--sj-border); border-radius:8px; padding:16px; margin-bottom:20px; }
.sj-infobox-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.sj-infobox-item { display:flex; flex-direction:column; gap:3px; }
.sj-info-label { font-size:13px; color:#666; text-transform:uppercase; letter-spacing:.5px; }
.sj-info-value { font-size:16px; font-weight:700; color:#1a1a1a; }
.sj-info-date .sj-info-value { color: var(--sj-red); }
.sj-info-type .sj-info-value { color: var(--sj-blue); }

/* Notification buttons */
.sj-notif-bar { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
.sj-btn { display:inline-flex; align-items:center; gap:5px; padding:12px 20px; border-radius:6px; font-size:16px; font-weight:600; text-decoration:none; color:#fff; }
.sj-btn-notif    { background: var(--sj-orange); }
.sj-btn-apply    { background: var(--sj-green); }
.sj-btn-official { background: var(--sj-blue); }
.sj-btn:hover { opacity:.88; }

/* Sections */
.sj-section { margin-bottom:28px; }
.sj-section-h2 { font-size:20px; color:#fff; background: var(--sj-dark-green); padding:10px 16px; border-radius:6px 6px 0 0; margin:0; }
.sj-detail-table { width:100%; border-collapse:collapse; border:1px solid var(--sj-border); border-top:none; }
.sj-detail-table th { background:#e8f5ed; padding:11px 16px; text-align:left; font-size:15px; font-weight:600; border-bottom:1px solid var(--sj-border); }
.sj-detail-table td { padding:11px 16px; border-bottom:1px solid #eee; font-size:16px; }
.sj-detail-table tbody tr:last-child td { border-bottom:none; }
.sj-detail-table tbody tr:nth-child(even) { background:#f9fdfb; }
.sj-note { font-size:12px; color:#666; margin:6px 14px; font-style:italic; }
.sj-select-list { padding-left:20px; margin:0; background:#fff; border:1px solid var(--sj-border); border-top:none; padding:12px 14px 12px 30px; }
.sj-select-list li { padding:5px 0; font-size:16px; }
.sj-apply-steps { background:#fff; border:1px solid var(--sj-border); border-top:none; padding:14px 14px 14px 30px; margin:0; }
.sj-apply-steps li { padding:6px 0; font-size:16px; line-height:1.6; }
.sj-link-table td:first-child { width:60%; font-weight:600; }
.sj-link-btn { display:inline-block; padding:6px 16px; border-radius:4px; color:#fff; font-size:13px; font-weight:600; text-decoration:none; }
.sj-link-btn.sj-green { background: var(--sj-green); }
.sj-link-btn.sj-blue  { background: var(--sj-blue); }
.sj-link-btn.sj-orange{ background: var(--sj-orange); }
.sj-link-btn.sj-tg    { background:#0088cc; }
.sj-red { color: var(--sj-red) !important; }
.sj-post-tags { font-size:13px; margin-top:20px; padding-top:14px; border-top:1px solid #eee; }
.sj-post-tags a { color: var(--sj-blue); text-decoration:none; }

/* Related Jobs */
.sj-related { background:#fff; border:1px solid var(--sj-border); border-radius:6px; overflow:hidden; margin-top:24px; }
.sj-related-title { background: var(--sj-blue); color:#fff; margin:0; padding:12px 18px; font-size:16px; }

/* Post intro */
.sj-post-intro { font-size:15px; line-height:1.7; color:#333; margin-bottom:24px; }

@media (max-width: 768px) {
  .sj-infobox-grid { grid-template-columns:repeat(2,1fr); }
  .col-org, .col-qual, .col-type { display:none; }
  .sj-notif-bar { flex-direction:column; }
  .sj-btn { text-align:center; justify-content:center; }
  .sj-statebox ul { column-count:1; }
}
