/* =========================================
 Global Drishti Premium Sarkari Theme
 Styles for Front Page,Categories,and Posts
 ========================================= */

:root {
    --primary-blue: #0A2463;
    --primary-red: #D90429;
    --primary-green: #2ecc71;
    --accent-orange: #f39c12;
    --accent-purple: #7c3aed;
    --accent-teal: #0d9488;
    --accent-slate: #334155;
    --accent-indigo: #4f46e5;
    --text-dark: #2b2d42;
    --text-light: #8d99ae;
    --bg-light: #f8f9fa;
    --white: #ffffff;
    --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.05);
    --shadow-md: 0 5px 15px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.15);
    --radius: 8px;
    /* Poppins: bold, geometric, the look most Indian govt/result portals already
       use for headings — reads as "official" without feeling cold like Arial.
       Inter: built specifically for small-size screen legibility — matters here
       since list items/post titles are dense text at 14-15px. */
    --font-heading: 'Poppins', 'Roboto', 'Helvetica', sans-serif;
    --font-body: 'Inter', 'Work Sans', sans-serif;
}

body {
    background-color: #f4f7f6;
    color: var(--text-dark);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.55;
}

/* ========== GLOBAL FONT SIZE STANDARDIZATION (all pages/devices) ========== */
/* No more random big/small fonts. Consistent across homepage, posts, cards, admit/result etc. */
.sarkari-box,
.box-content,
.box-content li a,
.post-main,
.entry-content,
.list-box,
.sarkari-content-section,
.table-section,
.side-box,
.sb-head,
.post-title,
h1, h2, h3, h4, h5, h6,
p, li, td, th,
.sarkari-hero-section,
.sarkari-grid-wrapper {
  font-size: inherit;
}

@media (max-width: 991px) {
  body {
    font-size: 14.5px;
  }
}

@media (max-width: 767px) {
  body {
    font-size: 14px;
  }
  .sarkari-box .box-content li a {
    font-size: 13.5px;
  }
}

/* AdSense Auto Ads runs site-wide with no code-level size constraint --
   Google decides ad format/size dynamically. If it ever places something
   wider than the viewport, this stops it from widening the whole page
   (the "zoomed out, blank space on the right" symptom) instead of just
   letting the oversized ad get safely clipped/scoped to its own box. */
html, body, #page, .wrapper, .site {
    overflow-x: hidden !important;
    max-width: 100% !important;
    position: relative;
}

.adsbygoogle,
ins.adsbygoogle,
iframe[id*="google_ads"],
iframe[id*="aswift"],
div[id*="google_ads_iframe"],
div[aria-label*="Advertisement"] {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Anchor/vignette ads from Auto ads attach as position:fixed, which escapes
   normal overflow clipping on the body -- constrain these specifically too. */
div[id*="google_ads_iframe"][style*="position: fixed"],
div[id*="google_ads_iframe"][style*="position:fixed"] {
    max-width: 100vw !important;
    left: 0 !important;
}

/* === CRITICAL FIX: Stop AdSense from entering post tables ===
   Auto ads were slipping into <td> / table cells, destroying the strict 
   sarkari-style 2-col layout (fixed widths, borders, aligned vertical lines, 
   no-wrap on labels).
   This rule aggressively hides and removes from flow any ad elements inside 
   all post content tables. */
.post-body table .adsbygoogle,
.post-body table ins.adsbygoogle,
.post-body table div[id*="google_ads"],
.post-body table iframe[id*="google_ads"],
.post-body table div[aria-label*="Advertisement"],
.entry-content table .adsbygoogle,
.entry-content table ins.adsbygoogle,
.entry-content table div[id*="google_ads"],
.entry-content table iframe[id*="google_ads"],
.sarkari-main-wrapper table .adsbygoogle,
.sarkari-main-wrapper table ins.adsbygoogle {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
}

/* Extra protection for ads placed directly as cell content */
.post-body table td .adsbygoogle,
.post-body table th .adsbygoogle,
.entry-content table td .adsbygoogle,
.entry-content table th .adsbygoogle {
    display: none !important;
}

/* Also suppress any stray ad containers that might be siblings inside table rows */
.post-body table tr .adsbygoogle,
.post-body table > .adsbygoogle,
.entry-content table tr .adsbygoogle {
    display: none !important;
}

/* Category color key — one fixed color per section, used consistently instead
   of ad hoc hex values, so the same color always means the same thing site-wide */
.header-syllabus {
    background: linear-gradient(135deg, var(--accent-purple), #5b21b6);
}
.header-syllabus + .box-content {
    border-left: 4px solid var(--accent-purple);
}

.header-admission {
    background: linear-gradient(135deg, var(--accent-teal), #0f766e);
}
.header-admission + .box-content {
    border-left: 4px solid var(--accent-teal);
}

.header-news {
    background: linear-gradient(135deg, var(--accent-slate), #1e293b);
}
.header-news + .box-content {
    border-left: 4px solid var(--accent-slate);
}

.header-tools {
    background: linear-gradient(135deg, var(--accent-indigo), #4338ca);
}
.header-tools + .box-content {
    border-left: 4px solid var(--accent-indigo);
}

a {
    text-decoration: none;
    transition: color 0.2s ease-out, opacity 0.2s ease-out;
}

a:hover {
    text-decoration: none;
}


.sarkari-top-bar {
    background: #000;
    color: #ccc;
    padding: 5px 0;
    font-size: 0.8rem;
    border-bottom: 1px solid #333;
}

.sarkari-main-header {
    background: #fff;
    padding: 0;
}

.site-branding .site-title,
.site-title,
.site-title a {
    font-family: var(--font-heading) !important;
    font-weight: 800 !important;
    color: var(--primary-blue) !important;
    font-size: 2.2rem !important;
    margin: 0 !important;
    letter-spacing: -1px !important;
    text-decoration: none !important;
}

.site-branding .site-description,
.site-description {
    color: var(--primary-red) !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
    margin: 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    opacity: 1 !important;
}


.sarkari-navbar-wrapper {
    background: linear-gradient(90deg, var(--primary-blue), #0d2c75);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.sarkari-navbar {
    padding: 0;
}

.sarkari-navbar .nav-link {
    color: #fff !important;
    font-weight: 500;
    padding: 15px 18px !important;
    font-size: 0.95rem;
    text-transform: uppercase;
    transition: background 0.3s;
}

.sarkari-navbar .nav-link:hover {
    background: rgba(255, 255, 255, 0.1);
    color: #ffeb3b !important;
}

.sarkari-navbar .nav-link i {
    margin-right: 5px;
    color: rgba(255, 255, 255, 0.7);
}

.header-search-icon a {
    color: #fff;
    font-size: 1.2rem;
    padding: 15px;
    display: inline-block;
}

.search-dropdown {
    background: #fff;
    border-bottom: 3px solid var(--primary-red);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}




.sarkari-hero-section {
    background: linear-gradient(135deg, #ffffff 0%, #f0f4ff 100%);
    padding: 50px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    position: relative;
    overflow: hidden;
}

.sarkari-hero-section::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(10, 36, 99, 0.05) 0%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
    z-index: 0;
}

.hero-title {
    font-family: var(--font-heading);
    font-weight: 800;
    color: var(--primary-blue);
    margin-bottom: 15px;
    font-size: 2.8rem;
    position: relative;
    z-index: 1;
    text-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

.hero-title .highlight {
    color: var(--primary-red);
}

.hero-subtitle {
    font-size: 1.2rem;
    line-height: 1.5;
    color: var(--text-light);
    max-width: 600px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    min-height: 3.6rem;
    /* Stable space for 2 lines */
    display: block;
}


.portal-card {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border-radius: var(--radius);
    padding: 35px 20px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.3s ease;
    border: 1px solid rgba(255, 255, 255, 0.5);
    height: 100%;
    position: relative;
    overflow: hidden;
}

.portal-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 5px;
}

.job-card::after {
    background: var(--primary-blue);
}

.scheme-card::after {
    background: var(--primary-green);
}

.portal-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

.card-icon {
    font-size: 45px;
    margin-bottom: 20px;
    display: inline-block;
    padding: 15px;
    background: rgba(240, 244, 255, 0.8);
    border-radius: 50%;
}

.job-card .card-icon {
    color: var(--primary-blue);
}

.scheme-card .card-icon {
    color: var(--primary-green);
    background: rgba(235, 250, 235, 0.8);
}

.portal-card h2 {
    font-weight: 800;
    font-size: 1.6rem;
    margin-bottom: 10px;
    letter-spacing: -0.5px;
}

.portal-card p {
    color: var(--text-light);
    margin-bottom: 25px;
    font-size: 1rem;
}

.btn-portal {
    display: inline-block;
    padding: 12px 30px;
    border-radius: 50px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.btn-portal {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.btn-portal:hover {
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2);
}

.btn-blue {
    background: linear-gradient(45deg, var(--primary-blue), #1e4b9e);
}

.btn-green {
    background: linear-gradient(45deg, var(--primary-green), #27ae60);
}


.sarkari-marquee-container {
    background: linear-gradient(90deg, var(--primary-blue), #0d2c75);
    color: #fff;
    border-radius: var(--radius);
    display: flex;
    align-items: center;
    padding: 0;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    height: 45px;
    /* Fixed height for marquee to stop shifting */
    overflow: hidden;
}

.marquee-label {
    background: linear-gradient(45deg, var(--primary-red), #ff3355);
    padding: 6px 20px;
    font-weight: bold;
    font-size: 0.95rem;
    white-space: nowrap;
    z-index: 2;
    border-radius: 0 var(--radius) var(--radius) 0;
    box-shadow: 2px 0 10px rgba(0, 0, 0, 0.3);
}

.marquee-item {
    margin-right: 40px;
}

.marquee-item a {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    text-decoration: none !important;
}

.marquee-item a:hover {
    color: #ffeb3b !important;
    text-decoration: underline !important;
}

.badge-danger {
    background-color: var(--primary-red);
    margin-right: 8px;
    font-weight: 600;
    padding: 4px 8px;
}

.sarkari-new-badge {
    background: #ff0000;
    color: #fff;
    font-size: 8px;
    font-weight: 900;
    padding: 2px 4px;
    border-radius: 3px;
    margin-left: 5px;
    vertical-align: middle;
    display: inline-block;
    line-height: 1;
    animation: pulse-red 1s infinite;
}

@keyframes pulse-red {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.7);
    }

    70% {
        transform: scale(1);
        box-shadow: 0 0 0 5px rgba(255, 0, 0, 0);
    }

    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0);
    }
}


.sarkari-content-section {
    background: #fff;
    border-radius: var(--radius);
    padding: 25px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
    margin-bottom: 35px;
    border: 1px solid #f0f0f0;
    min-height: 800px;
    /* Increased to accommodate content fully */
    contain: layout;
    /* Prevent internal shifts from affecting external elements */
}

.section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #f0f0f0;
    padding-bottom: 15px;
    margin-bottom: 25px;
}

.section-header h3 {
    font-size: 1.6rem;
    color: var(--primary-blue);
    font-weight: 800;
    margin: 0;
    display: flex;
    align-items: center;
}

.section-header h3 i {
    margin-right: 10px;
    color: var(--primary-red);
}

.view-all-link {
    font-size: 0.95rem;
    color: var(--primary-red);
    font-weight: 700;
    padding: 8px 15px;
    background: #fff4f4;
    border-radius: 20px;
}

.view-all-link:hover {
    background: var(--primary-red);
    color: #fff;
}


.sarkari-grid-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* Mobile collapse to 1 column is in the @media (max-width: 767px) block below — .sarkari-box has no Bootstrap col-* class, so it does NOT stack on its own. */

.sarkari-box {
    border: 2px solid #000 !important;
    border-radius: var(--radius);
    overflow: hidden;
    background: #fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.02);
    transition: transform 0.2s;
}

.sarkari-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
}

/* Header was center-aligned while the post list below it is left-aligned --
   that mismatch is what made the heading and the posts feel like two
   separate blocks stacked together instead of one card. Left-aligning the
   header (to match the body) and carrying its color down as a left-border
   accent on the content ties them into one visual unit. */
.box-header {
    padding: 14px 18px;
    text-align: left;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    font-size: 1.05rem;
    letter-spacing: 0.5px;
    font-family: var(--font-heading);
}

.header-result {
    background: linear-gradient(135deg, var(--primary-red), #b71c1c);
}
.header-result + .box-content {
    border-left: 4px solid var(--primary-red);
}

.header-admit {
    background: linear-gradient(135deg, var(--primary-blue), #1565c0);
}
.header-admit + .box-content {
    border-left: 4px solid var(--primary-blue);
}


.header-jobs {
    background: linear-gradient(135deg, var(--accent-orange), #e65100);
}
.header-jobs + .box-content {
    border-left: 4px solid var(--accent-orange);
}

.header-scheme {
    background: linear-gradient(135deg, var(--primary-green), #2bad58);
}

.box-content ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.box-content li {
    border-bottom: 1px solid #f5f5f5;
}

.box-content li a {
    display: block;
    padding: 12px 18px;
    color: var(--primary-blue);
    font-size: 0.92rem;
    transition: all 0.2s ease;
    border-left: 3px solid transparent;
}

.box-content li a:hover {
    background: #fdfdfd;
    color: #000000;
    padding-left: 22px;
    font-weight: 600;
    border-left-color: var(--primary-blue);
}

.more-link {
    text-align: right;
    font-weight: 700;
    color: var(--primary-blue) !important;
    font-size: 0.9rem !important;
    background: #f9f9f9;
}

.more-link:hover {
    background: #eee;
}

.no-data {
    padding: 20px;
    text-align: center;
    color: #999;
    font-style: italic;
}


.scheme-post-card {
    background: #fff;
    border: none;
    border-radius: var(--radius);
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    height: 100%;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}

.scheme-post-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.scheme-thumb img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    transition: transform 0.5s;
}

.scheme-post-card:hover .scheme-thumb img {
    transform: scale(1.05);
}

.fallback-thumb {
    height: 200px;
    background: linear-gradient(45deg, var(--primary-green), #2ecc71);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 3.5rem;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}

.scheme-details {
    padding: 20px;
}

.scheme-details h4 {
    font-size: 1.2rem;
    margin-bottom: 10px;
    line-height: 1.4;
    font-weight: 700;
}

.scheme-details h4 a {
    color: var(--text-dark);
    text-decoration: none;
}

.scheme-details h4 a:hover {
    color: var(--primary-green);
}

.scheme-meta {
    font-size: 0.85rem;
    color: #888;
    margin-bottom: 12px;
    display: flex;
    justify-content: space-between;
}

.excerpt {
    font-size: 0.95rem;
    color: #666;
    margin-bottom: 15px;
    height: 48px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
}

.read-more {
    color: var(--primary-green);
    font-weight: 700;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.read-more:hover {
    text-decoration: underline;
}


.archive-header {
    background: #fff;
    padding: 40px;
    margin-bottom: 30px;
    border-radius: var(--radius);
    border-left: 6px solid var(--primary-blue);
    box-shadow: var(--shadow-sm);
}

.archive-title {
    margin: 0;
    color: var(--primary-blue);
    font-weight: 800;
}

.archive-desc {
    margin-top: 15px;
    color: #555;
    font-size: 1.05rem;
}

.sarkari-table-container {
    background: #fff;
    padding: 25px;
    border-radius: var(--radius);
    box-shadow: var(--shadow-sm);
}

.table-sarkari {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.table-sarkari th {
    background: var(--primary-blue);
    color: #fff;
    padding: 15px;
    text-align: left;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.9rem;
}

.table-sarkari th:first-child {
    border-top-left-radius: var(--radius);
}

.table-sarkari th:last-child {
    border-top-right-radius: var(--radius);
}

.table-sarkari td {
    border-bottom: 1px solid #eee;
    padding: 15px;
    font-size: 0.95rem;
}

.table-sarkari tr:last-child td {
    border-bottom: none;
}

.table-sarkari tr:hover {
    background-color: #f8f9ff;
}



.sarkari-footer,
.site-footer,
.ast-footer-bar {
    background: linear-gradient(135deg, #051636, #0A2463) !important;
    color: #ffffff !important;
    padding: 50px 0 30px;
    margin-top: 50px;
    position: relative;
    border-top: 5px solid var(--primary-red);
}

/* Force all footer text to be white for visibility */
.sarkari-footer *,
.site-footer *,
.ast-footer-bar * {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.footer-brand .footer-logo {
    color: #fff;
    font-weight: 800;
    font-size: 2rem;
    margin-bottom: 10px;
    letter-spacing: -1px;
}

.copyright-text {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.9rem;
    margin: 0;
}

.footer-links a {
    color: rgba(255, 255, 255, 0.8);
    font-weight: 500;
    font-size: 0.95rem;
    margin: 0 10px;
}

.footer-links a:hover {
    color: var(--primary-red);
}

.footer-links .sep {
    color: rgba(255, 255, 255, 0.3);
}

.footer-social .social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.1);

    border-radius: 50%;
    margin-left: 10px;
    color: #fff;
    font-size: 1.1rem;
    transition: all 0.3s;
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-social .social-icon:hover {
    transform: translateY(-3px);
    background: #fff;
}

.footer-social .social-icon.fb:hover {
    color: #3b5998;
}

.footer-social .social-icon.tw:hover {
    color: #000;
}

.footer-social .social-icon.in:hover {
    color: #e1306c;
}

.footer-social .social-icon.tg:hover {
    color: #0088cc;
}

/* Footer mobile media query removed as requested */


/* All mobile media queries removed as requested */


.schema-faq details {
    background: #fff;
    border: 1px solid #e1e1e1;
    border-radius: 5px;
    margin-bottom: 10px;
    padding: 15px;
    transition: all 0.3s ease;
}

.schema-faq details[open] {
    border-left: 4px solid var(--primary-green);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
    padding-bottom: 20px;
}

.schema-faq summary {
    font-weight: 700;
    cursor: pointer;
    list-style: none;
    outline: none;
    color: var(--primary-blue);
    font-size: 1.05rem;
    position: relative;
    padding-right: 20px;
}

.schema-faq summary::-webkit-details-marker {
    display: none;
}


.schema-faq summary::after {
    content: '+';
    position: absolute;
    right: 0;
    top: 0;
    font-weight: bold;
    color: var(--primary-red);
    transition: transform 0.3s;
}

.schema-faq details[open] summary::after {
    transform: rotate(45deg);

    content: '-';
    transform: none;
}

.schema-faq p {
    margin-top: 15px;
    color: #444;
    font-size: 0.95rem;
    line-height: 1.6;
    border-top: 1px solid #f0f0f0;
    padding-top: 10px;
}

/* ======================================================= 
   🔥🔥 START: INTERACTIVE REVOLUTION (Inspired by 1WE) 🔥🔥 
   ======================================================= */

:root {
    --glass-bg: rgba(255, 255, 255, 0.7);
    --glass-border: rgba(255, 255, 255, 0.4);
    --neon-blue: #3b82f6;
    --neon-purple: #8b5cf6;
}

/* Glassy Card Upgrade */
.sarkari-box,
.sarkari-content-section,
.portal-card,
.gd-card {
    background: var(--glass-bg) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid var(--glass-border) !important;
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.07) !important;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    border-radius: 12px !important;
}

/* Advanced Hover Interactions */
.sarkari-box:hover,
.portal-card:hover,
.gd-card:hover {
    transform: translateY(-8px) scale(1.01) !important;
    box-shadow: 0 20px 40px 0 rgba(31, 38, 135, 0.12) !important;
    border-color: var(--neon-blue) !important;
}

/* Neon Glow Buttons */
.btn-portal,
.gd-btn,
.view-all-link {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.btn-portal:hover,
.gd-btn:hover {
    box-shadow: 0 0 20px rgba(59, 130, 246, 0.4) !important;
    transform: translateY(-2px);
}

/* Micro-Interactions for Links */
.box-content li a:hover {
    color: #000000 !important;
    background: rgba(59, 130, 246, 0.05) !important;
    padding-left: 22px !important;
}

/* Animated Title Glow */
.hero-title .highlight {
    background: linear-gradient(120deg, #d90429, #ff3355, #d90429);
    background-size: 200% auto;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: shine-animation 3s linear infinite;
}

@keyframes shine-animation {
    to {
        background-position: 200% center;
    }
}

/* Card Entry Animations (App-like load) */
.sarkari-box,
.portal-card,
.gd-card {
    animation: cardReveal 0.6s cubic-bezier(0.23, 1, 0.32, 1) both;
}

@keyframes cardReveal {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Staggered delay for cards */
.sarkari-grid-wrapper .sarkari-box:nth-child(1) {
    animation-delay: 0.1s;
}

.sarkari-grid-wrapper .sarkari-box:nth-child(2) {
    animation-delay: 0.2s;
}

.sarkari-grid-wrapper .sarkari-box:nth-child(3) {
    animation-delay: 0.3s;
}


/* Responsive Table interactivity */
.gd-table tr,
.table-sarkari tr {
    transition: background 0.2s;
}

.gd-table tr:hover,
.table-sarkari tr:hover {
    background: rgba(59, 130, 246, 0.03) !important;
}

/* Smooth Image Reveal */
.scheme-thumb img,
.featured-image-wrapper img {
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Smooth Scrolling */
html {
    scroll-behavior: smooth;
}

/* Premium Meta Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* ======================================================== 
   💎 GLOBAL VISIBILITY & LAYOUT (Migrated & Optimized) 💎 
   ======================================================== */

/* 1. Navbar & Navigation Fixes (Professional Centering) */
.navbar-nav > li > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    white-space: nowrap !important;
    height: 50px;
}

.navbar-nav > li > a i {
    font-size: 16px !important;
    margin-right: 6px !important;
    display: inline-block !important;
}

/* 2. Body text natural color — no forced overrides */
body p, body li {
    color: var(--text-dark);
    opacity: 1;
    visibility: visible;
}

/* Box content links stay dark — text-dark (#2b2d42) wasn't dark enough for
   comfortable reading, bumped to near-black for stronger contrast */
.box-content li a {
    color: var(--primary-blue) !important;
}

/* Sidebar cards (right side on posts) now exactly match homepage cards */
.sidebar .sarkari-box,
.sidebar .sarkari-box .box-content,
.sidebar .sarkari-box .box-content li a {
    font-size: 0.92rem !important;
    line-height: 1.45 !important;
    font-family: var(--font-body) !important;
}
.sidebar .sarkari-box .box-header {
    font-size: 1.05rem !important;
    font-family: var(--font-heading) !important;
}
table td, table th {
    color: var(--primary-blue) !important;
}

/* 4. Marquee & Dark Section Visibility (White on Dark) */
.sarkari-marquee-container, 
.sarkari-marquee-container marquee,
.sarkari-marquee-container * {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Footer: white text scoped ONLY to .sarkari-footer */
.sarkari-footer * {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.sarkari-marquee-container {
    background: #0A2463 !important;
    display: flex !important;
}

.marquee-label {
    background: #D90429 !important;
    color: #ffffff !important;
}

/* 5. UAG & Info-Box Block Fixes (Contrast Restoration) */
html body .wp-block-uagb-info-box .uagb-ifb-content,
html body .wp-block-uagb-info-box .uagb-ifb-title,
html body .wp-block-uagb-info-box .uagb-ifb-text,
html body .uagb-info-box .uagb-ifb-content,
html body .uagb-info-box .uagb-ifb-title,
html body .uagb-info-box .uagb-ifb-text,
html body .wp-block-uagb-info-box * {
    color: #000000 !important;
    opacity: 1 !important;
}

html body .wp-block-uagb-info-box a,
html body .uagb-info-box a {
    color: #0033cc !important;
    font-weight: 700 !important;
}

/* Mobile navbar media query removed as requested */

/* =======================================================
   ✅ SEO CONTENT SECTION — ALL CLASSES (No Inline Styles)
   ======================================================= */

.seo-content-section {
    background-color: #f8f9fa;
    padding: 50px 0;
    border-top: 3px solid #e9ecef;
    font-family: 'Inter', 'Roboto', sans-serif;
}

.sarkari-guide-content {
    color: #333333;
}

.seo-main-title {
    font-size: 26px;
    font-weight: 700;
    color: #d32f2f !important;
    margin-bottom: 20px;
    line-height: 1.4;
}

.seo-sub-title {
    font-size: 20px;
    font-weight: 600;
    margin-top: 25px;
    margin-bottom: 12px;
    color: #1a1a1a !important;
    border-left: 4px solid #d32f2f;
    padding-left: 12px;
}

.seo-para {
    margin-bottom: 15px;
    line-height: 1.8;
    color: #333333 !important;
    font-size: 16px;
}

.seo-list {
    margin-bottom: 15px;
    padding-left: 20px;
    line-height: 1.8;
    color: #333333 !important;
}

.seo-list li {
    margin-bottom: 8px;
    color: #333333 !important;
    font-size: 16px;
}

.seo-footer-note {
    margin-top: 30px;
    font-size: 14px;
    color: #555555 !important;
    font-style: italic;
    border-top: 1px solid #e9ecef;
    padding-top: 20px;
}

/* =======================================================
   ✅ HERO SECTION — MOBILE VISIBILITY FIX
   ======================================================= */

/* Hero text must always be dark (light gray is invisible on mobile) */
.hero-subtitle {
    color: #444444 !important;
}

.hero-title {
    color: var(--primary-blue) !important;
}

.portal-card h3 {
    color: #1a1a1a !important;
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: 10px;
}

.portal-card p {
    color: #333333 !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
}

/* =======================================================
   ✅ MOBILE-SPECIFIC OVERRIDES (max-width: 767px)
   ======================================================= */

@media (max-width: 767px) {

    /* Hero section mobile */
    .hero-title {
        font-size: 1.6rem !important;
        color: var(--primary-blue) !important;
        -webkit-text-fill-color: var(--primary-blue) !important;
    }

    .hero-subtitle {
        font-size: 1rem !important;
        color: #333333 !important;
        padding: 0 10px;
    }

    .portal-card h3 {
        font-size: 1.2rem !important;
        color: #1a1a1a !important;
    }

    .portal-card p {
        color: #333333 !important;
    }

    /* SEO section mobile */
    .seo-content-section {
        padding: 30px 0;
    }

    .seo-main-title {
        font-size: 20px !important;
        color: #d32f2f !important;
    }

    .seo-sub-title {
        font-size: 17px !important;
        color: #1a1a1a !important;
    }

    .seo-para,
    .seo-list li {
        font-size: 15px !important;
        color: #333333 !important;
        line-height: 1.7 !important;
    }

    /* Fix alignment on mobile — everything left-aligned in content */
    .sarkari-guide-content {
        text-align: left;
    }

    .seo-list {
        padding-left: 15px;
    }

    /* Portal cards row — stack properly */
    .portal-cards-row {
        margin: 0 10px;
    }

    .portal-cards-row .col-md-5 {
        width: 100%;
    }

    /* sarkari-grid-wrapper is a plain CSS grid (NOT Bootstrap columns) — the
       comment above it claimed "stacks via Bootstrap col" but .sarkari-box has
       no col-* class at all, so the fixed 3-column grid never collapsed. At a
       375px screen that's ~110px per column, forcing every word onto its own
       line. This is the actual fix the comment thought already existed. */
    .sarkari-grid-wrapper {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .box-header {
        font-size: 1rem;
    }

    /* Toggler had no explicit styling here — fell back to a bare/awkward
       default look. Give it a deliberate shape instead. */
    .navbar-toggler {
        background: rgba(255, 255, 255, 0.15);
        border: none !important;
        border-radius: 6px;
        padding: 8px 14px;
        position: relative;
        z-index: 2001;
    }

    .navbar-toggler .fa-bars,
    .navbar-toggler .fa-times {
        font-size: 1.1rem;
    }

    /* Icon swap: bars when closed, X when open (no JS — driven by Bootstrap's
       own aria-expanded toggle on the button) */
    .navbar-toggler .icon-close { display: none; }
    .navbar-toggler[aria-expanded="true"] .icon-open { display: none; }
    .navbar-toggler[aria-expanded="true"] .icon-close { display: inline; }

    .header-search-icon a {
        padding: 8px 10px;
    }

    /* BBC/Reuters pattern: compact header — drop the low-value date/welcome
       strip so logo+hamburger is the first thing visible on a small screen. */
    .sarkari-top-bar {
        display: none;
    }

    /* Full-screen overlay menu instead of Bootstrap's thin inline dropdown.
       Bootstrap still toggles the .show class via its own JS — only the
       visual treatment of .collapse / .collapse.show is changed here. */
    .sarkari-navbar .navbar-collapse {
        display: block !important;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: linear-gradient(160deg, #0d2c75, var(--primary-blue));
        z-index: 2000;
        padding: 90px 30px 30px;
        transform: translateX(-100%);
        transition: transform 0.3s ease;
        overflow-y: auto;
    }

    .sarkari-navbar .navbar-collapse.show {
        transform: translateX(0);
    }

    .sarkari-navbar .navbar-nav {
        margin-right: 0 !important;
    }

    .sarkari-navbar .nav-item {
        border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    }

    .sarkari-navbar .nav-link {
        padding: 16px 4px !important;
        font-size: 1.1rem;
        text-transform: none;
    }

    .sarkari-navbar .nav-link i {
        width: 24px;
        text-align: center;
    }

    .header-search-icon {
        margin-top: 20px;
        border-top: 1px solid rgba(255, 255, 255, 0.12);
        padding-top: 16px;
    }

    .header-search-icon a {
        color: #fff;
        font-size: 1rem;
    }

    .header-search-icon a::after {
        content: " Search";
    }

    /* Card-style list items — BBC/Reuters pattern: each row gets a colored
       accent, generous tap height, and a trailing chevron, instead of a bare
       text link. Applies to every .sarkari-box list (Result, Admit Card,
       Latest Jobs, Syllabus, Admission, News, Schemes). */
    .sarkari-box .box-content ul li {
        border-bottom: 1px solid #eef1f4;
        list-style: none;
    }

    .sarkari-box .box-content ul li:last-child {
        border-bottom: none;
    }

    .sarkari-box .box-content ul li a {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 14px 16px;
        font-size: 0.95rem;
        line-height: 1.4;
        color: var(--primary-blue);
        min-height: 48px;
    }

    .sarkari-box .box-content ul li a::after {
        content: "\f105"; /* font-awesome chevron-right */
        font-family: FontAwesome;
        color: #c7ccd1;
        flex-shrink: 0;
    }

    .sarkari-box .box-content ul li.no-data a,
    .sarkari-box .box-content ul li.no-data {
        padding: 14px 16px;
        color: #888;
        font-style: italic;
    }

    .sarkari-box .box-content ul li a.more-link {
        font-weight: 700;
        color: var(--primary-blue);
    }

    .sarkari-box .box-content ul li a.more-link::after {
        content: "\f178"; /* arrow-right, distinguishes it from regular rows */
    }
}

/* Responsive Layout & Table support for all post content tables (Mobiles & Tablets) */
@media (max-width: 1024px) {
    /* Compress container margins/paddings for maximum content area */
    .sarkari-content-section {
        padding: 12px !important;
        margin-bottom: 20px !important;
        border-radius: 8px !important;
    }
    .container {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
    .row {
        margin-left: -4px !important;
        margin-right: -4px !important;
    }
    .col-lg-8, .col-md-12, .col-lg-4 {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    /* Heading scaling to prevent overflow/word wrap clutter */
    h1.entry-title {
        font-size: 1.6rem !important;
        line-height: 1.3 !important;
        margin-bottom: 12px !important;
        text-align: center !important;
    }
    .entry-content h2, .sarkari-content-section h2 {
        font-size: 1.3rem !important;
        margin-top: 18px !important;
        margin-bottom: 8px !important;
    }
    .entry-content h3, .sarkari-content-section h3 {
        font-size: 1.2rem !important;
        margin-top: 14px !important;
        margin-bottom: 6px !important;
    }

    /* High Density Responsive Tables - sarkariresult.com style */
    /* Keep proper table model. Scroll via wrapper above. Consistent columns. */
    .entry-content table,
    .sarkari-content-section table,
    .post-body table,
    .post-main table,
    table.dense {
        display: table !important;
        width: 100% !important;
        min-width: 100% !important;
        border-collapse: collapse !important;
        table-layout: fixed !important;
    }

    .entry-content table td,
    .entry-content table th,
    .sarkari-content-section table td,
    .sarkari-content-section table th,
    .post-body td, .post-body th,
    .post-main td, .post-main th,
    table.dense td, table.dense th {
        white-space: normal !important;
        padding: 6px 8px !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        vertical-align: top;
    }

    /* Force inherit */
    .entry-content table td *,
    .sarkari-content-section table td *,
    .entry-content table th *,
    .sarkari-content-section table th *,
    .post-body table td *, .post-body table th * {
        font-size: inherit !important;
        line-height: inherit !important;
        color: inherit !important;
        background: transparent !important;
    }
}

/* Tablet portrait grid optimization (2-columns instead of squished 3-columns) */
@media (min-width: 768px) and (max-width: 991px) {
    .sarkari-grid-wrapper {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 18px !important;
    }
}

/* Specific overrides for small mobile screens (< 768px) */
@media (max-width: 767px) {
    h1.entry-title {
        font-size: 1.35rem !important;
    }
    .entry-content table td,
    .entry-content table th,
    .sarkari-content-section table td,
    .sarkari-content-section table th,
    .post-body table td, .post-body table th,
    .post-main table td, .post-main table th,
    table.dense th, table.dense td {
        font-size: 12.5px !important;
        padding: 5px 7px !important;
    }
    /* Force proper table model, no breaking */
    .entry-content table,
    .sarkari-content-section table,
    .post-body table,
    .post-main table,
    table.dense {
        display: table !important;
    }
}

/* Smart table container for horizontal scroll (sarkariresult.com style) 
   Proper table model + scroll wrapper only. No display:block hacks on table/tr/td */
.post-body,
.entry-content,
.sarkari-content-section,
.post-main,
.table-section,
.sarkari-table-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
}

/* Force proper table model everywhere (like sarkariresult.com) */
.post-body table,
.entry-content table,
.post-main table,
.sarkari-content-section table,
table.dense,
table.list,
table.gd,
.table-sarkari,
table {
    display: table !important;
    table-layout: fixed !important;
    width: 100% !important;
    min-width: 100% !important;
    border-collapse: collapse !important;
}

/* Prevent layout collapse - force minimum table width on small screens */
@media (max-width: 767px) {
  .post-body table,
  .entry-content table,
  .post-main table,
  table.dense {
    min-width: 520px; /* triggers clean horizontal scroll, keeps columns aligned */
  }
}

/* =======================================================
   ✅ MARQUEE LINK VISIBILITY FIX
   ======================================================= */

/* Marquee container — dark blue background */
.sarkari-marquee-container {
    background: linear-gradient(90deg, #0A2463, #0d2c75) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center;
    overflow: hidden;
}

/* ALL text inside marquee — force white */
.sarkari-marquee-container *,
.sarkari-marquee-container marquee,
.sarkari-marquee-container marquee * {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Marquee links specifically */
.marquee-item a {
    color: #ffffff !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.marquee-item a:hover {
    color: #ffeb3b !important;
    text-decoration: underline !important;
}

/* Marquee badge */
.marquee-item .badge {
    color: #ffffff !important;
    background-color: #D90429 !important;
}

/* Marquee label (LEFT UPDATE tag) */
.marquee-label {
    background: linear-gradient(45deg, #D90429, #ff3355) !important;
    color: #ffffff !important;
    padding: 6px 20px;
    font-weight: 700;
    font-size: 0.9rem;
    white-space: nowrap;
    flex-shrink: 0;
}

/* =======================================================
   📂 CATEGORY PAGE — SarkariResult-style dense black-grid upgrade
   (added 23.06.2026 — overrides earlier .archive-header/.table-sarkari
    rules above via cascade. Targets EXISTING class names so all 4
    category templates upgrade with NO PHP change. Rollback = delete
    this block / restore sarkari-style.css.bak-23062026)
   ======================================================= */

/* --- archive header: compact + black border, colored left bar kept --- */
.sarkari-main-wrapper .archive-header {
    padding: 16px 20px;
    margin-bottom: 18px;
    border: 1.5px solid #000;
    border-left-width: 6px;
    box-shadow: var(--shadow-sm);
}
.sarkari-main-wrapper .archive-title { font-size: 1.5rem; font-weight: 700; }
.sarkari-main-wrapper .archive-desc { margin-top: 4px; font-size: 0.9rem; color: var(--text-light); }

/* --- list container: black border, less padding --- */
.sarkari-main-wrapper .sarkari-table-container {
    border: 1.5px solid #000;
    padding: 0;
    overflow: hidden;
}
.sarkari-main-wrapper .sarkari-table-container > h4 {
    background: linear-gradient(135deg, var(--primary-blue), #1565c0);
    color: #fff !important;
    font-family: var(--font-heading);
    font-size: 0.95rem;
    margin: 0;
    padding: 11px 16px;
    border-bottom: 1.5px solid #000;
}

/* --- dense black-grid table --- */
.sarkari-main-wrapper .table-sarkari { border-collapse: collapse; border-spacing: 0; }
.sarkari-main-wrapper .table-sarkari th {
    padding: 10px 16px;
    border: 1px solid #000;
    font-size: 0.74rem;
}
.sarkari-main-wrapper .table-sarkari th:first-child,
.sarkari-main-wrapper .table-sarkari th:last-child { border-radius: 0; }
.sarkari-main-wrapper .table-sarkari td {
    border: 1px solid #000;
    padding: 10px 16px;
    font-size: 0.88rem;
    vertical-align: top;
}
.sarkari-main-wrapper .table-sarkari tr:last-child td { border: 1px solid #000; }
.sarkari-main-wrapper .table-sarkari tr:hover { background-color: #f8f9fb; }
/* smart 2-line title wrap (no ellipsis cut) on the name column link */
.sarkari-main-wrapper .table-sarkari td:first-child a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.35;
}

/* --- "New" tag: compact red pill --- */
.sarkari-main-wrapper .table-sarkari .badge {
    font-size: 0.6rem;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 3px;
    vertical-align: middle;
}

/* --- download / action button: solid blue --- */
.sarkari-main-wrapper .table-sarkari .btn-outline-primary {
    background: var(--primary-blue);
    color: #fff;
    border: 1.5px solid var(--primary-blue);
    font-weight: 700;
    border-radius: 5px;
    padding: 5px 14px;
    white-space: nowrap;
}
.sarkari-main-wrapper .table-sarkari .btn-outline-primary:hover {
    background: #1565c0; border-color: #1565c0; color: #fff;
}

/* --- pagination: black-bordered number boxes --- */
.sarkari-main-wrapper .pagination .page-numbers,
.sarkari-main-wrapper .navigation .page-numbers {
    display: inline-block;
    min-width: 36px;
    text-align: center;
    padding: 7px 11px;
    margin: 3px;
    border: 1.5px solid #000;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.82rem;
    background: #fff;
    color: var(--primary-blue);
}
.sarkari-main-wrapper .pagination .page-numbers.current,
.sarkari-main-wrapper .navigation .page-numbers.current,
.sarkari-main-wrapper .navigation.pagination .nav-links .page-numbers.current {
    /* extra-specific 3rd selector above beats colors/default.css's
       .navigation.pagination .nav-links .page-numbers.current (red) —
       found live 24.06.2026, current-page pill was rendering red not blue */
    background: var(--primary-blue);
    color: #fff;
}
.sarkari-main-wrapper .pagination .page-numbers:hover,
.sarkari-main-wrapper .navigation .page-numbers:hover { background: #f4f7fb; }

/* --- sidebar boxes: black border to match ---
   NOTE: an older "Glassy Card Upgrade" rule (~line 901, unconditional, all
   viewports) sets `.sarkari-box { border:1px solid var(--glass-border)
   !important; background: rgba(255,255,255,.7) !important; backdrop-filter:
   blur(12px) !important; }`. That glassmorphism look directly contradicts
   this redesign's flat/dense/black-grid direction, so it's overridden here
   with matching !important + higher specificity (found live 24.06.2026 via
   getComputedStyle — border was rendering translucent white, not black). */
.sarkari-main-wrapper .sarkari-box {
    border: 1.5px solid #000 !important;
    background: #fff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: var(--shadow-sm) !important;
}
.sarkari-main-wrapper .sarkari-box:hover {
    transform: none !important;
    border-color: #000 !important;
    box-shadow: 0 6px 14px rgba(0,0,0,0.1) !important;
}
.sarkari-main-wrapper .sarkari-box .box-header { border-bottom: 1.5px solid #000 !important; }

/* --- mobile: tighten table padding (3rd col already d-none below md) --- */
@media (max-width: 767px) {
    .sarkari-main-wrapper .table-sarkari th,
    .sarkari-main-wrapper .table-sarkari td { padding: 9px 12px; font-size: 0.84rem; }
    .sarkari-main-wrapper .archive-header { padding: 14px 16px; }
    .sarkari-main-wrapper .archive-title { font-size: 1.25rem; }
}

/* =======================================================
   🏠 HOME + shared list rows — dense black-grid
   (.box-content lists appear in home 6-box grid AND category/post
    sidebars — upgrading here keeps all three consistent)
   NOTE: a mobile-only rule `.sarkari-box .box-content ul li` (inside
   @media max-width:767px, ~line 1385) wins on element-count specificity
   (ul+li beats just li) and was rendering #eef1f4 grey instead of black
   on phones. !important added below to guarantee this wins at every size.
   ======================================================= */
.sarkari-main-wrapper .box-content li { border-bottom: 1px solid #000 !important; }
.sarkari-main-wrapper .box-content li:last-child { border-bottom: none !important; }
.sarkari-main-wrapper .box-content li a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.35;
    padding: 9px 16px;
    font-size: 0.86rem;
    border-left: 3px solid transparent;
}
/* keep the existing hover accent but stop the jumpy padding-shift fighting the clamp */
.sarkari-main-wrapper .box-content li a:hover { padding-left: 16px; }
/* "View More" footer row stays single-line + centered-right */
.sarkari-main-wrapper .box-content li a.more-link { -webkit-line-clamp: 1; }

/* =======================================================
   📄 POST (single) — title/breadcrumb polish + black-grid content tables
   (content tables come from the_content / GD pipeline; light styling
    WITHOUT !important so the plugin's own rules still win where set)
   ======================================================= */
.single .sarkari-main-wrapper .entry-title { font-size: 1.5rem; }
/* POST CONTENT TABLES - 100% sarkariresult.com style: proper table, dark black borders, consistent, scroll on mobile */
.single .sarkari-main-wrapper .post-body table,
.single .sarkari-main-wrapper .entry-content table,
.sarkari-content-section table,
.post-main table {
    width: 100% !important;
    border: 1.5px solid #000 !important;
    border-collapse: collapse !important;
    margin: 12px 0 !important;
    font-size: 0.88rem;
    table-layout: fixed !important;
    background: #fff;
}
.single .sarkari-main-wrapper .post-body table th,
.single .sarkari-main-wrapper .post-body table td,
.single .sarkari-main-wrapper .entry-content table th,
.single .sarkari-main-wrapper .entry-content table td,
.sarkari-content-section table th,
.sarkari-content-section table td,
.post-main table th,
.post-main table td {
    border: 1px solid #000 !important;
    padding: 8px 11px !important;
    text-align: left !important;
    vertical-align: top !important;
    font-size: 0.88rem !important;
}
.single .sarkari-main-wrapper .post-body table th,
.single .sarkari-main-wrapper .entry-content table th,
.sarkari-content-section table th,
.post-main table th {
    background: #f4f7fb !important;
    font-weight: 700 !important;
}
.single .sarkari-main-wrapper .post-body table thead th,
.single .sarkari-main-wrapper .entry-content table thead th,
.sarkari-content-section table thead th,
.post-main table thead th {
    background: var(--primary-blue) !important;
    color: #fff !important;
}

/* Mobile: proper table + horizontal scroll, no breaking, dark borders */
@media (max-width: 767px) {
    .single .sarkari-main-wrapper .post-body table,
    .single .sarkari-main-wrapper .entry-content table,
    .sarkari-content-section table,
    .post-main table {
        display: table !important;
        min-width: 100% !important;
        font-size: 0.82rem !important;
    }
    .single .sarkari-main-wrapper .post-body table td,
    .single .sarkari-main-wrapper .post-body table th,
    .single .sarkari-main-wrapper .entry-content table td,
    .single .sarkari-main-wrapper .entry-content table th,
    .sarkari-content-section table td,
    .sarkari-content-section table th,
    .post-main table td,
    .post-main table th {
        padding: 6px 8px !important;
        font-size: 0.82rem !important;
    }
}

/* Mobile (27.06.2026): sticky first column on wide tables — the row label
   (e.g. "Section", "Event") stays pinned on the left while the reader
   scrolls horizontally through the remaining columns, instead of
   disappearing off-screen and making the row's data ambiguous. Has no
   visible effect on tables that don't overflow (e.g. existing 2-column
   label|value tables), since sticky only activates when its container
   actually scrolls. */
@media (max-width: 767px) {
    .single .sarkari-main-wrapper .post-body table td:first-child,
    .single .sarkari-main-wrapper .entry-content table td:first-child,
    .sarkari-content-section table td:first-child,
    .post-main table td:first-child,
    .single .sarkari-main-wrapper .post-body table th:first-child,
    .single .sarkari-main-wrapper .entry-content table th:first-child,
    .sarkari-content-section table th:first-child,
    .post-main table th:first-child {
        position: sticky !important;
        left: 0 !important;
        z-index: 2 !important;
        box-shadow: 2px 0 4px -2px rgba(0, 0, 0, 0.4) !important;
    }
    .single .sarkari-main-wrapper .post-body table thead th:first-child,
    .single .sarkari-main-wrapper .entry-content table thead th:first-child,
    .sarkari-content-section table thead th:first-child,
    .post-main table thead th:first-child {
        z-index: 3 !important;
    }

    /* Fading edge hint on the scroll wrapper — signals there's more
       content to the right before the reader has scrolled there. */
    .gd-table-scroll {
        position: relative !important;
    }
    .gd-table-scroll::after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 20px;
        background: linear-gradient(to right, transparent, rgba(0, 0, 0, 0.15));
        pointer-events: none;
    }
}

/* Mobile (27.06.2026) — TIER 2: "card" layout for wide tables (3+ columns).
   See the boosted-specificity override block at the very end of this file
   (search "TIER 2 OVERRIDE") for the actual rules — moved there because
   several older unscoped `!important` rules elsewhere in this file (e.g.
   the universal td/th padding + the td:first-child width rule) have
   higher specificity than a plain `.gd-card-table td` selector and were
   winning the cascade, causing the data-label and cell value to overlap
   instead of sitting side by side. */

/* Small card around Important Links table etc. - full black outer border on the card itself */
.single .post-body table.links,
.single .post-body .important-links,
.single .post-body table[summary*="link"],
.post-main table.links,
.post-main .important-links,
.entry-content table.links,
.post-main .links-table {
    border: 1.5px solid #000 !important;
    background: #fff;
    box-shadow: var(--shadow-sm);
}

/* ========== UNIVERSAL BLACK TABLE BORDERS (visible on all devices) ========== */
/* ALL tables must have DARK #000 borders - consistent like sarkariresult.com */
.post-body table,
.entry-content table,
.post-main table,
.sarkari-content-section table,
table.dense,
table.list,
table.gd,
.table-sarkari,
.sarkari-table-container table,
table {
    border: 2px solid #000 !important;
    border-color: #000 !important;
    border-collapse: collapse !important;
    box-shadow: none !important;
    width: 100% !important;
}

.post-body th, .post-body td,
.entry-content th, .entry-content td,
.post-main th, .post-main td,
.sarkari-content-section th, .sarkari-content-section td,
table.dense th, table.dense td,
table.list th, table.list td,
table.gd th, table.gd td,
.table-sarkari th, .table-sarkari td,
th, td {
    border: 1px solid #000 !important;
    border-color: #000 !important;
    box-shadow: none !important;
    padding: 8px 10px !important;
}

/* Make borders even stronger on mobile for visibility */
@media (max-width: 767px) {
    .post-body table,
    .entry-content table,
    .post-main table,
    table.dense,
    table {
        border: 2px solid #000 !important;
        border-color: #000 !important;
    }
    .post-body th, .post-body td,
    .entry-content th, .entry-content td,
    .post-main th, .post-main td,
    table.dense th, table.dense td,
    th, td {
        border: 1px solid #000 !important;
        border-color: #000 !important;
    }
}

/* === HEADING + TABLE AS ONE BLACK-BORDERED UNIT (no "heading separate from table") === */
/* Heading gets top/sides border; following table gets bottom/sides, no gap. Looks integrated. */
.post-body h2,
.post-body h3 {
  border: 2px solid #000 !important;
  border-bottom: none !important;
  margin-bottom: 0 !important;
  padding: 8px 12px !important;
  background: #f4f7fb !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
}

.post-body h2 + table,
.post-body h3 + table {
  border: 2px solid #000 !important;
  border-top: none !important;
  margin-top: 0 !important;
}

/* === SARKARIRESULT-STYLE 2-COLUMN TABLES === */
/* Label col: fixed, no wrap. Value col: wraps only. Vertical line aligned across ALL rows, no shift. */
.post-body table td:first-child,
.post-body table th:first-child {
  white-space: nowrap !important;
  width: 38% !important;
  font-weight: 700 !important;
  vertical-align: top !important;
}

.post-body table td:last-child,
.post-body table th:last-child {
  word-wrap: break-word !important;
  word-break: break-word !important;
  vertical-align: top !important;
}

/* Force alignment: same column widths in every row */
.post-body table,
.post-body table td,
.post-body table th,
.entry-content table,
.entry-content table td,
.entry-content table th {
  table-layout: fixed !important;
}

/* Consistent padding, value cells wrap */
.post-body table td,
.post-body table th,
.entry-content table td,
.entry-content table th {
  padding: 6px 10px !important;
}

/* Mobile refinements: keep alignment, scroll if needed, only values wrap */
@media (max-width: 767px) {
  .post-body table td:first-child,
  .post-body table th:first-child {
    width: 45% !important;
    font-size: 0.78rem !important;
  }
  .post-body table td:last-child,
  .post-body table th:last-child {
    font-size: 0.78rem !important;
  }
  .post-body table,
  .entry-content table {
    min-width: 100% !important;
    display: table !important;
    overflow-x: auto;
  }
}

/* =======================================================
   🔥🔥 END: GLOBAL DRISHTI MASTER CSS 🔥🔥
   SINGLE SOURCE OF TRUTH — All styles here.
   ======================================================= */

/* =======================================================
   FIX: Category Admit Card / Result pages — sidebar going down
   Force Bootstrap-like 2-column layout on desktop for .col-lg-8 + .col-lg-4
   inside .sarkari-main-wrapper .container .row
   This was causing "Latest Jobs" / "Results" cards to stack below instead of right.
   ======================================================= */
@media (min-width: 992px) {
  .sarkari-main-wrapper .container .row {
    display: flex !important;
    flex-wrap: nowrap !important;
  }
  .sarkari-main-wrapper .container .row > .col-lg-8,
  .sarkari-main-wrapper .container .row > .col-md-12:first-child {
    flex: 0 0 66.66667% !important;
    max-width: 66.66667% !important;
    width: 66.66667% !important;
    padding-right: 15px !important;
  }
  .sarkari-main-wrapper .container .row > .col-lg-4 {
    flex: 0 0 33.33333% !important;
    max-width: 33.33333% !important;
    width: 33.33333% !important;
    margin-top: 0 !important;
    padding-left: 15px !important;
  }
}

/* Ensure the sarkari-box sidebars inside the right col have good spacing */
.sarkari-main-wrapper .col-lg-4 .sarkari-box {
  margin-bottom: 20px !important;
}
.sarkari-main-wrapper .col-lg-4 .sarkari-box:last-child {
  margin-bottom: 0 !important;
}

/* === INTENDED REDESIGN LAYOUT (from FINAL mockups) === */
/* Matches gd-category-FINAL-responsive.html and gd-post-FINAL-responsive.html exactly */

.layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 20px;
}

.list-box,
.post-main {
  background: #fff;
  border: 1.5px solid #000;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.02);
}

.list-box .lb-head,
.post-title {
  background: linear-gradient(135deg, var(--primary-blue), #1565c0);
  color: #fff;
  font-family: var(--font-heading);
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.05rem;
  padding: 11px 16px;
  border-bottom: 1.5px solid #000;
}

table.list,
table.gd {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.86rem;
}

table.list th,
table.gd th,
table.list td,
table.gd td {
  border: 1px solid #000;
  padding: 9px 13px;
  text-align: left;
  vertical-align: top;
}

table.list th,
table.gd th {
  background: #f4f7fb;
  font-weight: 700;
}

table.list tr:hover td,
table.gd tr:hover td {
  background: #f8f9fb;
}

/* Sidebar boxes - exact from mockup */
.sidebar {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.side-box {
  border: 1.5px solid #000;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.02);
}

.side-box .sb-head {
  padding: 10px 14px;
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.82rem;
  font-family: var(--font-heading);
  border-bottom: 1.5px solid #000;
}

/* POST CONTENT - Make it 100% sarkariresult.com style: dense, tabular, black grid, minimal vague text */
/* POST BODY - 100% sarkariresult.com style: very dense, tabular, black borders everywhere, minimal margins, scannable like data sheets */
.single .sarkari-main-wrapper .post-body,
.single .sarkari-main-wrapper .entry-content {
  font-size: 0.88rem !important;
  line-height: 1.3 !important;
  color: #111 !important;
  padding: 4px 8px !important;
}

.single .sarkari-main-wrapper .post-body p,
.single .sarkari-main-wrapper .entry-content p {
  margin: 4px 0 8px !important;
  font-size: 0.86rem !important;
  line-height: 1.3 !important;
}

.single .sarkari-main-wrapper .post-body h2,
.single .sarkari-main-wrapper .entry-content h2,
.single .sarkari-main-wrapper .post-body h3,
.single .sarkari-main-wrapper .entry-content h3 {
  background: #f4f7fb !important;
  border: 1.5px solid #000 !important;
  padding: 5px 8px !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  margin: 10px 0 6px !important;
  color: #000 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px;
}

.single .sarkari-main-wrapper .post-body ul,
.single .sarkari-main-wrapper .entry-content ul {
  margin: 4px 0 8px !important;
  padding-left: 14px !important;
  list-style: disc;
}

.single .sarkari-main-wrapper .post-body ul li,
.single .sarkari-main-wrapper .entry-content ul li {
  margin: 2px 0 !important;
  font-size: 0.85rem !important;
  line-height: 1.25 !important;
}

.single .sarkari-main-wrapper .post-body ol,
.single .sarkari-main-wrapper .entry-content ol {
  margin: 4px 0 8px !important;
  padding-left: 18px !important;
}

.single .sarkari-main-wrapper .post-body ol li,
.single .sarkari-main-wrapper .entry-content ol li {
  margin: 2px 0 !important;
  font-size: 0.85rem !important;
}

/* All tables in posts - exactly sarkariresult style: full black grid, dense, consistent */
.single .sarkari-main-wrapper .post-body table,
.single .sarkari-main-wrapper .entry-content table {
  border: 1.5px solid #000 !important;
  border-collapse: collapse !important;
  width: 100% !important;
  margin: 8px 0 !important;
  font-size: 0.84rem !important;
  background: #fff;
}

.single .sarkari-main-wrapper .post-body table th,
.single .sarkari-main-wrapper .post-body table td,
.single .sarkari-main-wrapper .entry-content table th,
.single .sarkari-main-wrapper .entry-content table td {
  border: 1px solid #000 !important;
  padding: 5px 8px !important;
  text-align: left !important;
  vertical-align: top !important;
  font-size: 0.84rem !important;
  line-height: 1.2 !important;
}

.single .sarkari-main-wrapper .post-body table th,
.single .sarkari-main-wrapper .entry-content table th {
  background: #f4f7fb !important;
  font-weight: 700 !important;
}

/* Important links and data tables - black outer, clean */
.single .post-body table.links,
.single .post-body .important-links,
.entry-content table.links {
  border: 1.5px solid #000 !important;
}

/* === FINAL ENFORCEMENT: ALL POST TABLES DARK BLACK BORDERS + CONSISTENT (no light borders, full grid visible on mobile/desktop) === */
.post-body table, 
.entry-content table, 
.post-main table, 
.sarkari-content-section table,
table.dense, 
.table-sarkari,
table {
    border: 1.5px solid #000 !important;
    border-color: #000 !important;
}
.post-body th, .post-body td,
.entry-content th, .entry-content td,
.post-main th, .post-main td,
.sarkari-content-section th, .sarkari-content-section td,
table.dense th, table.dense td {
    border: 1px solid #000 !important;
    border-color: #000 !important;
}
@media (max-width: 767px) {
    .post-body table, 
    .entry-content table, 
    .post-main table, 
    .sarkari-content-section table,
    table.dense {
        border: 2px solid #000 !important;
    }
    .post-body th, .post-body td,
    .entry-content th, .entry-content td,
    .post-main th, .post-main td,
    table.dense th, table.dense td {
        border: 1px solid #000 !important;
    }
}

.single .post-body table.links td,
.single .post-body .important-links td,
.entry-content table.links td {
  padding: 5px 8px !important;
  font-size: 0.84rem !important;
}

.single .post-body table.links a,
.single .post-body .important-links a,
.entry-content table.links a {
  font-weight: 600;
  color: var(--primary-blue);
}

/* === MAKE HEADING + TABLE LOOK LIKE ONE BLACK-BORDERED UNIT (sarkariresult style) === */
/* h2/h3 has top + sides border (no bottom). Following table has bottom + sides (no top). 
   Result: single outer black border enclosing both. Heading "owns" the table. */
.post-body h2,
.post-body h3 {
  border: 2px solid #000 !important;
  border-bottom: none !important;
  margin-bottom: 0 !important;
  padding: 8px 12px !important;
  background: #f4f7fb !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
}

.post-body h2 + table,
.post-body h3 + table {
  border: 2px solid #000 !important;
  border-top: none !important;
  margin-top: 0 !important;
}

/* === SARKARIRESULT TABLE ALIGNMENT & WRAP === */
/* 2-column tables (dates, fees, links): 
   - First cell (label): no wrap, fixed width.
   - Second cell (value): wraps.
   - The vertical line between columns is perfectly aligned in EVERY row.
   - Only the VALUE wraps. */
.post-body table td:first-child,
.post-body table th:first-child {
  white-space: nowrap !important;
  width: 38% !important;
  font-weight: 700 !important;
  vertical-align: top !important;
}

.post-body table td:last-child,
.post-body table th:last-child {
  word-wrap: break-word !important;
  word-break: break-word !important;
  vertical-align: top !important;
}

/* Fixed layout = every row has identical column widths → no shifting lines */
.post-body table,
.post-body table td,
.post-body table th,
.entry-content table,
.entry-content table td,
.entry-content table th {
  table-layout: fixed !important;
}

/* Consistent padding */
.post-body table td,
.post-body table th,
.entry-content table td,
.entry-content table th {
  padding: 6px 10px !important;
}

/* Mobile: aligned rows, only values wrap, table scrolls horizontally if needed */
@media (max-width: 767px) {
  .post-body table td:first-child,
  .post-body table th:first-child {
    width: 45% !important;
    font-size: 0.78rem !important;
  }
  .post-body table td:last-child,
  .post-body table th:last-child {
    font-size: 0.78rem !important;
  }
  .post-body table,
  .entry-content table {
    min-width: 100% !important;
    display: table !important;
    overflow-x: auto;
  }
}

/* === POST TABLES + HEADING INTEGRATION LIKE SARKARIRESULT.COM === */
/* Heading (h2/h3) + following table share black outer border, looks like one unit */
.post-body h2,
.post-body h3 {
  border: 1.5px solid #000 !important;
  border-bottom: none !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  background: #f4f7fb !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
}

.post-body h2 + table,
.post-body h3 + table {
  border: 1.5px solid #000 !important;
  border-top: none !important;
  margin-top: 0 !important;
}

/* Two-column alignment: label fixed/no-wrap, value wraps only */
.post-body table td:first-child,
.post-body table th:first-child {
  white-space: nowrap !important;
  width: 38% !important;
  font-weight: 700 !important;
  vertical-align: top !important;
}

.post-body table td:last-child,
.post-body table th:last-child {
  word-wrap: break-word !important;
  word-break: break-word !important;
  vertical-align: top !important;
}

/* All rows aligned, no shifting vertical lines between columns */
.post-body table,
.post-body table td,
.post-body table th,
.entry-content table,
.entry-content table td,
.entry-content table th {
  table-layout: fixed !important;
}

/* Ensure consistent cell padding, no variation */
.post-body table td,
.post-body table th,
.entry-content table td,
.entry-content table th {
  padding: 6px 10px !important;
}

/* Mobile: keep aligned, only value wraps, horizontal scroll if needed */
@media (max-width: 767px) {
  .post-body table td:first-child,
  .post-body table th:first-child {
    width: 45% !important;
    font-size: 0.8rem !important;
  }
  .post-body table td:last-child,
  .post-body table th:last-child {
    font-size: 0.8rem !important;
  }
  .post-body table,
  .entry-content table {
    min-width: 100% !important;
    display: table !important;
  }
}

/* ULTIMATE TABLE BORDER FIX FOR MOBILE & DESKTOP - FULL BLACK, CONSISTENT, NO VARIATION */
.post-body table, .entry-content table, .post-main table, table, table.dense, .sarkari-content-section table {
    border: 2px solid #000 !important;
}
.post-body th, .post-body td, .entry-content th, .entry-content td, .post-main th, .post-main td, th, td, table.dense th, table.dense td {
    border: 1px solid #000 !important;
}
@media (max-width: 767px) {
    .post-body table, .entry-content table, .post-main table, table.dense {
        min-width: 100%;
        display: table;
        overflow-x: auto;
    }
}
}

/* Hybrid context sections (explanatory text) - subtle, not vague, keeps human touch */
.single .sarkari-main-wrapper .post-body p.hybrid-context,
.single .sarkari-main-wrapper .entry-content p.hybrid-context,
.single .post-body .context,
.single .entry-content .context {
  background: #f9f9f9;
  border: 1px solid #ddd;
  padding: 6px 10px;
  margin: 8px 0;
  font-size: 0.85rem;
  line-height: 1.35;
  border-left: 3px solid var(--primary-blue);
}

/* ===== TABLE-BASED CONTENT SECTION for Tools and Mocks (from redesign mockup) ===== */
.table-section { background:#fff; border:1.5px solid #000; border-radius:var(--radius); margin-bottom:18px; box-shadow:var(--shadow-sm); overflow:hidden; }
.table-section h3 {
  font-family:var(--font-heading); font-size:0.95rem; padding:12px 16px; border-bottom:1.5px solid #000; text-transform:uppercase;
}
.table-section.ts-mock h3 { color:var(--primary-red); }
.table-section.ts-tools h3 { color:var(--accent-indigo); }
.table-section { overflow-x: auto; }
table.dense { width:100%; border-collapse:collapse; font-size:0.82rem; }
table.dense th {
  background:#f4f7fb; color:var(--text-dark); text-align:left; padding:8px 16px;
  font-size:0.72rem; text-transform:uppercase; letter-spacing:0.3px; border:1px solid #000;
}
table.dense td { padding:7px 16px; border:1px solid #000; }
table.dense tr:hover td { background:#f8f9fb; }
table.dense td a { color:var(--primary-blue); font-weight:500; }
table.dense td a:hover { color:#000000; }
.post-body table td a:hover,
.entry-content table td a:hover,
.post-main table td a:hover,
.sarkari-content-section table td a:hover {
    color: #000000 !important;
}
.tag-pdf { color:var(--primary-red); font-weight:700; font-size:0.75rem; }
.tag-live { color:var(--primary-green); font-weight:700; font-size:0.72rem; }

/* Mobile for dense tables - hide middle columns */
@media (max-width: 640px) {
  .ts-mock td:nth-child(3), .ts-mock th:nth-child(3) { display:none; }
  .ts-tools td:nth-child(2), .ts-tools th:nth-child(2) { display:none; }
  table.dense th, table.dense td { padding:9px 12px; font-size:0.84rem; }
  .table-section h3 { font-size:0.88rem; padding:11px 14px; }
}

/* ========== HOMEPAGE FIXES - Restore previous good layout ========== */
/* Hero centered */
.sarkari-hero-section .row {
  justify-content: center !important;
  text-align: center !important;
}

.sarkari-hero-section .hero-title,
.sarkari-hero-section p {
  text-align: center !important;
}

/* Portal cards side by side and centered */
.portal-cards-row {
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap;
  gap: 20px;
}

.portal-cards-row .col-md-5 {
  flex: 0 0 42% !important;
  max-width: 42% !important;
  margin: 0 !important;
}

/* Government Schemes section full width, no right pull */
.container.sarkari-content-section .row,
.sarkari-content-section .row {
  display: block !important;
  width: 100% !important;
}

.container.sarkari-content-section .col-md-12 {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
}

/* Free Tools layout fix */
.sarkari-content-section .box-header.header-tools + .box-content ul {
  display: block !important;
  columns: 1 !important;
  column-gap: normal !important;
}

.sarkari-content-section .box-header.header-tools + .box-content ul li {
  display: block !important;
  width: 100% !important;
}

/* ============================================================
   FINAL OVERRIDE: SARKARIRESULT.COM EXACT HEADING + TABLE + ALIGN
   - Heading + immediate table = ONE continuous black border unit
   - 2-col: label (first) fixed 38% NEVER wraps; value wraps only
   - Vertical divider line PERFECTLY aligned in every row
   - table-layout:fixed + widths guarantee no shift
   - Applied last so wins over all prior rules
   ============================================================ */
.single .post-main .post-body h2,
.single .post-main .post-body h3,
.post-body h2,
.post-body h3,
.entry-content h2 + table ~ h2, /* safety */
.post-body h2, .post-body h3 {
  border: 2px solid #000 !important;
  border-bottom: none !important;
  margin: 16px 0 0 !important;
  margin-bottom: 0 !important;
  padding: 8px 12px !important;
  background: #f4f7fb !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  display: block !important;
}

.single .post-main .post-body h2 + table,
.single .post-main .post-body h3 + table,
.post-body h2 + table,
.post-body h3 + table,
.entry-content h2 + table,
.entry-content h3 + table {
  border: 2px solid #000 !important;
  border-top: none !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
}

/* Strict 2-column: label col fixed width, no wrap ever. Value col wraps. */
.single .post-main .post-body table td:first-child,
.single .post-main .post-body table th:first-child,
.post-body table td:first-child,
.post-body table th:first-child,
.entry-content table td:first-child,
.entry-content table th:first-child {
  white-space: nowrap !important;
  width: 38% !important;
  min-width: 38% !important;
  font-weight: 700 !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
}

.single .post-main .post-body table td:last-child,
.single .post-main .post-body table th:last-child,
.post-body table td:last-child,
.post-body table th:last-child,
.entry-content table td:last-child,
.entry-content table th:last-child {
  word-wrap: break-word !important;
  word-break: break-word !important;
  white-space: normal !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
}

/* Force identical column widths across all rows - no line shift ever */
.single .post-main .post-body table,
.single .post-main .post-body table td,
.single .post-main .post-body table th,
.post-body table,
.post-body table td,
.post-body table th,
.entry-content table,
.entry-content table td,
.entry-content table th {
  table-layout: fixed !important;
  border-collapse: collapse !important;
}

/* Uniform cell padding */
.single .post-main .post-body table td,
.single .post-main .post-body table th,
.post-body table td,
.post-body table th,
.entry-content table td,
.entry-content table th {
  padding: 7px 10px !important;
}

/* Mobile: maintain alignment + scroll container, labels stay single line */
@media (max-width: 767px) {
  .single .post-main .post-body table td:first-child,
  .single .post-main .post-body table th:first-child,
  .post-body table td:first-child,
  .post-body table th:first-child,
  .entry-content table td:first-child,
  .entry-content table th:first-child {
    width: 42% !important;
    min-width: 42% !important;
    font-size: 0.82rem !important;
  }
  .single .post-main .post-body table,
  .post-body table,
  .entry-content table {
    min-width: 540px !important; /* force scroll, keep columns */
    display: table !important;
  }
  .single .post-main .post-body table td,
  .single .post-main .post-body table th,
  .post-body table td,
  .post-body table th {
    font-size: 0.82rem !important;
    padding: 6px 8px !important;
  }
}
  margin-bottom: 4px;
}

/* Wrapper for tools and mocks to match upper grid cards exactly */
.sarkari-grid-wrapper.tools-mocks-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px;
  margin-top: 20px;
}

/* =======================================================
   🏆 MASTER DESIGN — ALL POSTS (DESKTOP + TABLET + MOBILE)
   Single source of truth for every post on the site.
   Scope: Post content tables, headings, links, sections, cards.
   Only edit inside this block for future changes.
   ======================================================= */

/* ---------- DESKTOP (default, > 991px) ---------- */
.single .sarkari-main-wrapper .post-body,
.single .sarkari-main-wrapper .entry-content,
.post-main {
  /* Base container */
}

.single .sarkari-main-wrapper .post-body h2,
.single .sarkari-main-wrapper .post-body h3,
.single .sarkari-main-wrapper .entry-content h2,
.single .sarkari-main-wrapper .entry-content h3 {
  border: 2px solid #000 !important;
  border-bottom: none !important;
  margin-bottom: 0 !important;
  padding: 10px 14px !important;
  background: #f4f7fb !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  color: #111827 !important;
}

/* Merged border for heading + following content (table or list) */
.single .sarkari-main-wrapper .post-body h2 + table,
.single .sarkari-main-wrapper .post-body h2 + p,
.single .sarkari-main-wrapper .post-body h2 + ol,
.single .sarkari-main-wrapper .post-body h2 + ul,
.single .sarkari-main-wrapper .entry-content h2 + table,
.single .sarkari-main-wrapper .entry-content h2 + p,
.single .sarkari-main-wrapper .entry-content h2 + ol,
.single .sarkari-main-wrapper .entry-content h2 + ul {
  border: 2px solid #000 !important;
  border-top: none !important;
  margin-top: 0 !important;
  padding: 10px 14px !important;
  background: #fff !important;
}

/* Full black bordered tables */
.single .sarkari-main-wrapper .post-body table,
.single .sarkari-main-wrapper .entry-content table,
.post-main table {
  border: 2px solid #000 !important;
  border-collapse: collapse !important;
  width: 100% !important;
  table-layout: fixed !important;
  background: #fff;
}

.single .sarkari-main-wrapper .post-body table th,
.single .sarkari-main-wrapper .post-body table td,
.single .sarkari-main-wrapper .entry-content table th,
.single .sarkari-main-wrapper .entry-content table td {
  border: 1px solid #000 !important;
  padding: 8px 12px !important;
  text-align: left !important;
  vertical-align: top !important;
  font-size: 0.9rem !important;
  color: #111827 !important;
}

/* 2-column layout for data tables (Event | Date, etc.) */
.single .sarkari-main-wrapper .post-body table td:first-child,
.single .sarkari-main-wrapper .post-body table th:first-child,
.single .sarkari-main-wrapper .entry-content table td:first-child,
.single .sarkari-main-wrapper .entry-content table th:first-child {
  white-space: nowrap !important;
  width: 40% !important;
  font-weight: 700 !important;
  background: #f4f7fb !important;
}

.single .sarkari-main-wrapper .post-body table td:last-child,
.single .sarkari-main-wrapper .entry-content table td:last-child {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* Links inside post tables & content - always blue */
.single .sarkari-main-wrapper .post-body a,
.single .sarkari-main-wrapper .entry-content a,
.post-main a {
  color: var(--primary-blue) !important;
}

.single .sarkari-main-wrapper .post-body a:hover,
.single .sarkari-main-wrapper .entry-content a:hover {
  color: #000 !important;
  text-decoration: underline !important;
}

/* Cards / sections inside posts (Who Can Apply, Important Links, etc.) */
.single .sarkari-main-wrapper .post-body .important-links,
.single .sarkari-main-wrapper .entry-content .important-links {
  border: 2px solid #000 !important;
  padding: 8px 12px !important;
  background: #fff;
}

/* ---------- TABLET (768px - 991px) ---------- */
@media (min-width: 768px) and (max-width: 991px) {
  .single .sarkari-main-wrapper .post-body table,
  .single .sarkari-main-wrapper .entry-content table {
    font-size: 0.85rem !important;
  }

  .single .sarkari-main-wrapper .post-body table td:first-child,
  .single .sarkari-main-wrapper .post-body table th:first-child {
    width: 42% !important;
    font-size: 0.82rem !important;
  }
}

/* ---------- MOBILE (< 768px) ---------- */
@media (max-width: 767px) {
  .single .sarkari-main-wrapper .post-body,
  .single .sarkari-main-wrapper .entry-content {
    font-size: 14px !important;
  }

  .single .sarkari-main-wrapper .post-body table,
  .single .sarkari-main-wrapper .entry-content table,
  .post-main table {
    min-width: 520px !important; /* forces horizontal scroll */
    display: table !important;
    font-size: 0.8rem !important;
  }

  .single .sarkari-main-wrapper .post-body table td:first-child,
  .single .sarkari-main-wrapper .post-body table th:first-child,
  .single .sarkari-main-wrapper .entry-content table td:first-child,
  .single .sarkari-main-wrapper .entry-content table th:first-child {
    width: 45% !important;
    font-size: 0.78rem !important;
    white-space: nowrap !important;
  }

  .single .sarkari-main-wrapper .post-body table td,
  .single .sarkari-main-wrapper .post-body table th {
    padding: 6px 8px !important;
  }

  /* Keep merged border behavior on mobile too */
  .single .sarkari-main-wrapper .post-body h2 + table,
  .single .sarkari-main-wrapper .post-body h2 + p,
  .single .sarkari-main-wrapper .post-body h2 + ol,
  .single .sarkari-main-wrapper .post-body h2 + ul {
    border: 2px solid #000 !important;
    border-top: none !important;
  }
}

/* Homepage + Sidebar cards - consistent master look */
.sarkari-box {
  border: 2px solid #000 !important;
  background: #fff;
}

.sarkari-box .box-content li a {
  color: var(--primary-blue) !important;
}

.sarkari-box .box-content li a:hover {
  color: #000 !important;
}
}

@media (max-width: 767px) {
  .sarkari-grid-wrapper.tools-mocks-grid {
    grid-template-columns: 1fr;
  }
}

.sb-jobs { background: linear-gradient(135deg, var(--accent-orange), #e65100); }
.sb-result { background: linear-gradient(135deg, var(--primary-red), #b71c1c); }
.sb-admit { background: linear-gradient(135deg, var(--primary-blue), #1565c0); }

.side-box ul { list-style: none; margin: 0; padding: 0; }
.side-box li { border-bottom: 1px solid #000; }
.side-box li:last-child { border-bottom: none; }
.side-box li a {
  display: block;
  padding: 9px 14px;
  font-size: 0.83rem;
  font-weight: 500;
  line-height: 1.35;
  color: var(--text-dark);
}
.side-box li a:hover { background: #f8f9fb; color: var(--primary-blue); }

.side-box .sb-foot {
  padding: 8px;
  text-align: center;
  background: #fafbfc;
  border-top: 1.5px solid #000;
}
.side-box .sb-foot a {
  font-size: 0.76rem;
  font-weight: 700;
  color: var(--primary-blue);
}

/* Section headers for post (colored + black border) */
.sec-h {
  font-family: var(--font-heading);
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
  background: var(--primary-blue);
  padding: 9px 14px;
  border-radius: 6px 6px 0 0;
  margin-top: 22px;
  border: 1.5px solid #000;
  border-bottom: none;
}
.sec-h.red { background: var(--primary-red); }
.sec-h.green { background: var(--primary-green); }
.sec-h.orange { background: linear-gradient(135deg, var(--accent-orange), #e65100); }

/* Post main content wrapper */
.post-main {
  border: 1.5px solid #000;
}

/* Responsive - stack on smaller screens */
@media (max-width: 1024px) {
  .layout {
    grid-template-columns: 1fr;
  }
  .sidebar {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
  }
}

@media (max-width: 767px) {
  .sidebar {
    grid-template-columns: 1fr;
  }
  .layout {
    gap: 14px;
  }
}

/* =======================================================
   🎯 SARKARI RESULT STYLE TABLES (Post Content & Pages)
   ======================================================= */
.entry-content table,
.sarkari-content-section table,
.post-body table,
.post-main table,
table.dense {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 15px 0 !important;
    font-size: 14px !important;
    color: #000000 !important;
}

/* Borders for all cells */
.entry-content table th,
.entry-content table td,
.sarkari-content-section table th,
.sarkari-content-section table td,
.post-body table th,
.post-body table td,
.post-main table th,
.post-main table td,
table.dense th,
table.dense td {
    border: 1.5px solid #000000 !important;
    padding: 8px 12px !important;
    line-height: 1.4 !important;
}

/* Header style: high-contrast navy blue */
.entry-content table th,
.sarkari-content-section table th,
.post-body table th,
.post-main table th,
table.dense th {
    background-color: #0A2463 !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
}

/* Alternating rows */
.entry-content table tr:nth-child(even),
.sarkari-content-section table tr:nth-child(even),
.post-body table tr:nth-child(even),
.post-main table tr:nth-child(even),
table.dense tr:nth-child(even) {
    background-color: #f2f5fa !important;
}

.entry-content table tr:hover,
.sarkari-content-section table tr:hover,
.post-body table tr:hover,
.post-main table tr:hover,
table.dense tr:hover {
    background-color: #e6eefa !important;
}

/* Links inside tables styled as buttons (Apply Online, etc.) */
.entry-content table td a,
.sarkari-content-section table td a,
.post-body table td a,
.post-main table td a,
table.dense td a {
    display: inline-block !important;
    background-color: #D90429 !important;
    color: #ffffff !important;
    padding: 5px 12px !important;
    border-radius: 4px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    margin: 2px 0 !important;
    transition: background 0.2s !important;
}

.entry-content table td a:hover,
.sarkari-content-section table td a:hover,
.post-body table td a:hover,
.post-main table td a:hover,
table.dense td a:hover {
    background-color: #b3001e !important;
}

/* Special styling: links with official/gov in url styled green */
.entry-content table td a[href*="official"],
.entry-content table td a[href*="gov.in"],
.entry-content table td a[href*="nic.in"],
.post-body table td a[href*="official"],
.post-body table td a[href*="gov.in"] {
    background-color: #2ecc71 !important;
}
.entry-content table td a[href*="official"]:hover,
.entry-content table td a[href*="gov.in"]:hover,
.post-body table td a[href*="official"]:hover {
    background-color: #27ae60 !important;
}

/* Mobile-specific adjustments */
@media (max-width: 767px) {
    .entry-content table,
    .sarkari-content-section table,
    .post-body table,
    .post-main table,
    table.dense {
        min-width: 500px !important;
        font-size: 11.5px !important;
    }
    
    .entry-content table th,
    .entry-content table td,
    .sarkari-content-section table th,
    .sarkari-content-section table td,
    table.dense th,
    table.dense td {
        padding: 5px 8px !important;
    }
}

/* ============================================
   USER REQUEST FIX: 
   - Event Date (and similar date text) was white → not visible
   - Make ALL links blue on: homepage, post pages, inside tables, inside cards
     so users perceive them as clickable (blue = link habit)
   ============================================ */

/* === FIX: Event/Date headers white + make links blue for clickability ===
   - "EVENT" and "DATE" (and similar th in Important Dates tables) were white or light on light bg → invisible
   - All links in homepage cards, post tables, sidebar cards should be blue so user knows they are clickable
   - Strong !important and specific selectors to win over other rules
*/

.post-body table th,
.entry-content table th,
.post-main table th,
.sarkari-content-section table th,
table th {
    color: #1f2937 !important;   /* dark gray, visible */
    background-color: #f4f7fb !important;  /* light bg for contrast */
}

/* Also protect data cells and first column (often "Event" or label) */
.post-body table td,
.entry-content table td,
.post-main table td,
.sarkari-content-section table td,
table td,
.post-body table td:first-child,
.entry-content table td:first-child {
    color: #1f2937 !important;
}

/* Homepage and cards - links blue */
.sarkari-box .box-content li a,
.box-content li a,
.sarkari-grid-wrapper a,
.sarkari-content-section a,
.homepage a {
    color: var(--primary-blue) !important;
}

/* Post page tables - all links inside tables blue (data links like in Important Links) */
.post-body table a,
.entry-content table a,
.post-main table a,
.sarkari-main-wrapper table a {
    color: var(--primary-blue) !important;
    font-weight: 500 !important;
}

.post-body table a:hover,
.entry-content table a:hover,
.sarkari-box .box-content li a:hover,
.box-content li a:hover {
    color: #000000 !important;
    text-decoration: underline !important;
}

/* Keep specific "links" tables and Important Links blue and prominent */
.post-body table.links a,
.post-body .important-links a,
.entry-content table.links a {
    color: var(--primary-blue) !important;
    font-weight: 600 !important;
}

/* === URGENT OVERRIDE: Force dark text on Event/Date headers in tables ===
   The "EVENT" and "DATE" (and similar sub-headers) are still white.
   This targets post content tables with very high specificity.
*/
.single .sarkari-main-wrapper .post-body table th,
.single .sarkari-main-wrapper .entry-content table th,
.post-body table th,
.entry-content table th {
  color: #111827 !important;
  background-color: #f3f4f6 !important;
}

.single .sarkari-main-wrapper .post-body table td,
.single .sarkari-main-wrapper .entry-content table td,
.post-body table td,
.entry-content table td {
  color: #111827 !important;
}

/* Force links blue in tables, cards, home for clickability */
.post-body table a,
.entry-content table a,
.post-body a,
.entry-content a,
.sarkari-box .box-content li a,
.box-content a,
table a,
.sarkari-content-section a,
.homepage a {
  color: #0A2463 !important;
}

.post-body table a:hover,
.entry-content table a:hover,
.sarkari-box .box-content li a:hover {
  color: #000 !important;
}

/* === FIX: Full black 4-side borders for "Who Can Apply", "How to Apply for RVUNL 2026", "Important Links" ===
   These sections (h2 + p/ol/ul) should have proper black border on all four sides like the Important Dates table.
   Currently borders are incomplete or not consistent black.
   Use merged h2 + following content pattern.
*/
.post-body h2 + p,
.post-body h2 + ol,
.post-body h2 + ul,
.entry-content h2 + p,
.entry-content h2 + ol,
.entry-content h2 + ul {
  border: 2px solid #000 !important;
  border-top: none !important;
  margin-top: 0 !important;
  padding: 8px 12px !important;
  background: #fff !important;
}

/* Make sure the h2 itself has the top + sides border */
.post-body h2,
.post-body h3 {
  border: 2px solid #000 !important;
  border-bottom: none !important;
}

/* Specific for Important Links section if it's a ul or list under h2 */
.post-body h2 + ul,
.entry-content h2 + ul {
  border: 2px solid #000 !important;
  border-top: none !important;
}

/* REMOVED 26.06.2026: obsolete "force dark text on light bg" patch for the
   OLD plain single.php template (which had no table styling, so headers
   genuinely needed a forced visible color). The new dynamic template
   (gd-single.css) gives .post-body table th its own deliberate blue
   background + white bold text design – this !important block was
   silently overriding it on every table. See [[project_single_redesign_26062026]]. */

/* ============================================================
   GROK BUILD MODE - FINAL CONSOLIDATED MASTER SARKARI DESIGN
   Date: 2026-06-26
   This block is the SINGLE SOURCE OF TRUTH.
   All previous conflicting glass / multi-fix / layered rules are overridden here.
   Target: Exact sarkariresult.com feel - 2px solid #000 borders, visible dark headers, blue links.
   ============================================================ */

/* 1. Homepage + Sidebar .sarkari-box - solid black 2px (no glass) */
.sarkari-main-wrapper .sarkari-box,
.sarkari-box {
  border: 2px solid #000 !important;
  background: #ffffff !important;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.03) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* 2. Post sections (h2 + content) - full 4-side black border boxes */
.post-body h2,
.single .sarkari-main-wrapper .post-body h2,
.entry-content h2 {
  border: 2px solid #000 !important;
  border-bottom: none !important;
  padding: 9px 12px !important;
  margin: 18px 0 0 !important;
  background: #fff !important;
  font-weight: 700 !important;
}

.post-body h2 + p,
.post-body h2 + table,
.post-body h2 + ol,
.post-body h2 + ul,
.single .sarkari-main-wrapper .post-body h2 + p,
.single .sarkari-main-wrapper .post-body h2 + table,
.single .sarkari-main-wrapper .post-body h2 + ol,
.single .sarkari-main-wrapper .post-body h2 + ul,
.entry-content h2 + p,
.entry-content h2 + table,
.entry-content h2 + ol,
.entry-content h2 + ul {
  border: 2px solid #000 !important;
  border-top: none !important;
  padding: 10px 12px !important;
  margin-top: 0 !important;
  background: #fff !important;
}

/* 3. All post tables - full border + visible headers (Event/Date must be dark) */
.post-body table,
.single .sarkari-main-wrapper .post-body table,
.entry-content table,
.post-main table {
  border: 2px solid #000 !important;
  border-collapse: collapse !important;
  table-layout: fixed !important;
  width: 100% !important;
}

.post-body table th,
.post-body table td,
.single .sarkari-main-wrapper .post-body table th,
.single .sarkari-main-wrapper .post-body table td,
.entry-content table th,
.entry-content table td {
  border: 1px solid #000 !important;
  padding: 8px 11px !important;
  vertical-align: top !important;
  color: #111827 !important;
  font-size: 0.92rem !important;
}

/* Event/Date headers - light bg + DARK text (critical fix) */
.post-body table th,
.single .sarkari-main-wrapper .post-body table th,
.entry-content table th {
  background: #f3f4f6 !important;
  color: #111827 !important;
  font-weight: 700 !important;
}

/* 2-column layout (label | value) like sarkariresult */
.post-body table td:first-child,
.post-body table th:first-child,
.single .sarkari-main-wrapper .post-body table td:first-child,
.single .sarkari-main-wrapper .post-body table th:first-child {
  white-space: nowrap !important;
  width: 38% !important;
  font-weight: 700 !important;
  background: #f3f4f6 !important;
}

/* FIX (27.06.2026): the rule above also matches a multi-column table's
   HEADER-ROW first cell (e.g. "Section" in a 4-column comparison table),
   forcing it to the light-grey "label column" background WITHOUT setting
   color — so it inherits white text from the thead-th rule above and
   becomes invisible (white-on-near-white). Header-row first cells must
   always match the rest of their own header row, never the body-row
   "label column" style. Scoped to thead specifically so the intentional
   2-column label|value styling for body rows is untouched. */
.post-body table thead th:first-child,
.single .sarkari-main-wrapper .post-body table thead th:first-child,
.single .sarkari-main-wrapper .entry-content table thead th:first-child,
.sarkari-content-section table thead th:first-child,
.post-main table thead th:first-child {
  background: var(--primary-blue) !important;
  color: #fff !important;
  width: auto !important;
}

/* 4. All links blue + hover (homepage cards, tables, content) */
.post-body a,
.entry-content a,
.post-main a,
.sarkari-box .box-content li a,
.sarkari-grid-wrapper a {
  color: #0A2463 !important;
  text-decoration: none !important;
}

.post-body a:hover,
.entry-content a:hover,
.sarkari-box .box-content li a:hover {
  color: #000000 !important;
  text-decoration: underline !important;
}

/* 5. Important Links / special sections - clean black box */
.post-body .important-links,
.post-body table.links,
.single .sarkari-main-wrapper .post-body .important-links {
  border: 2px solid #000 !important;
  background: #fff !important;
}

/* 6. Homepage + category cards consistency */
.sarkari-content-section,
.sarkari-table-container {
  border: 1px solid #e5e7eb;
}

/* 7. Force no glass anywhere in sarkari elements */
.sarkari-main-wrapper .sarkari-box,
.sarkari-box,
.post-main {
  background: #fff !important;
  backdrop-filter: none !important;
}

/* Mobile table scroll + size (keep sarkari dense feel) */
@media (max-width: 767px) {
  .post-body table,
  .single .sarkari-main-wrapper .post-body table,
  .entry-content table {
    min-width: 520px !important;
    font-size: 13px !important;
  }
  .post-body table td:first-child,
  .post-body table th:first-child {
    width: 42% !important;
  }
}

   OLD plain single.php template (which had no table styling, so headers
   genuinely needed a forced visible color). The new dynamic template
   (gd-single.css) gives .post-body table th its own deliberate blue
   background + white bold text design — this !important block was
   silently overriding it on every table. See [[project_single_redesign_26062026]]. */

/* ============================================================
   TIER 2 OVERRIDE (27.06.2026) — card-table layout, boosted specificity.
   Moved to end-of-file + selectors deliberately match (or exceed) every
   ancestor-prefix pattern used elsewhere in this file, because several
   older unscoped !important rules above (universal td/th padding, the
   td:first-child "label column" width, and the min-width:520px mobile
   table rule just above) were winning the cascade over a plain
   `.gd-card-table td` selector — causing the data-label text and the
   cell's own value to render on top of each other instead of side by
   side, and preventing the table from actually shrinking to fit the
   screen. Every selector here is repeated against all four ancestor
   prefixes used throughout this file so it cannot lose to anything
   already declared above, regardless of source order. */
@media (max-width: 767px) {
    .post-body table.gd-card-table,
    .single .sarkari-main-wrapper .post-body table.gd-card-table,
    .entry-content table.gd-card-table,
    .sarkari-content-section table.gd-card-table,
    .post-main table.gd-card-table {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        font-size: 0.85rem !important;
    }
    .post-body table.gd-card-table thead,
    .single .sarkari-main-wrapper .post-body table.gd-card-table thead,
    .entry-content table.gd-card-table thead,
    .sarkari-content-section table.gd-card-table thead,
    .post-main table.gd-card-table thead {
        position: absolute !important;
        left: -9999px !important; /* visually hidden, not display:none, so it stays in the accessibility tree */
    }
    .post-body table.gd-card-table tbody,
    .single .sarkari-main-wrapper .post-body table.gd-card-table tbody,
    .entry-content table.gd-card-table tbody,
    .sarkari-content-section table.gd-card-table tbody,
    .post-main table.gd-card-table tbody,
    .post-body table.gd-card-table tr,
    .single .sarkari-main-wrapper .post-body table.gd-card-table tr,
    .entry-content table.gd-card-table tr,
    .sarkari-content-section table.gd-card-table tr,
    .post-main table.gd-card-table tr {
        display: block !important;
        width: 100% !important;
    }
    .post-body table.gd-card-table tr,
    .single .sarkari-main-wrapper .post-body table.gd-card-table tr,
    .entry-content table.gd-card-table tr,
    .sarkari-content-section table.gd-card-table tr,
    .post-main table.gd-card-table tr {
        margin-bottom: 14px !important;
        border: 1.5px solid #000 !important;
        border-radius: 6px !important;
        overflow: hidden !important;
    }
    .post-body table.gd-card-table td,
    .post-body table.gd-card-table th,
    .single .sarkari-main-wrapper .post-body table.gd-card-table td,
    .single .sarkari-main-wrapper .post-body table.gd-card-table th,
    .entry-content table.gd-card-table td,
    .entry-content table.gd-card-table th,
    .sarkari-content-section table.gd-card-table td,
    .sarkari-content-section table.gd-card-table th,
    .post-main table.gd-card-table td,
    .post-main table.gd-card-table th,
    .post-body table.gd-card-table td:first-child,
    .post-body table.gd-card-table th:first-child,
    .single .sarkari-main-wrapper .post-body table.gd-card-table td:first-child,
    .single .sarkari-main-wrapper .post-body table.gd-card-table th:first-child {
        display: block !important;
        position: relative !important;
        text-align: right !important;
        padding: 10px 10px 10px 46% !important;
        border: none !important;
        border-bottom: 1px solid #e2e2e2 !important;
        min-height: 1.4em !important;
        white-space: normal !important;
        box-shadow: none !important;
        z-index: auto !important;
        left: auto !important;
        width: 100% !important;
        font-weight: 400 !important;
        background: transparent !important;
    }
    .post-body table.gd-card-table tr:last-child td:last-child,
    .single .sarkari-main-wrapper .post-body table.gd-card-table tr:last-child td:last-child,
    .entry-content table.gd-card-table tr:last-child td:last-child,
    .sarkari-content-section table.gd-card-table tr:last-child td:last-child,
    .post-main table.gd-card-table tr:last-child td:last-child {
        border-bottom: none !important;
    }
    .post-body table.gd-card-table td[data-label]::before,
    .post-body table.gd-card-table th[data-label]::before,
    .single .sarkari-main-wrapper .post-body table.gd-card-table td[data-label]::before,
    .single .sarkari-main-wrapper .post-body table.gd-card-table th[data-label]::before,
    .entry-content table.gd-card-table td[data-label]::before,
    .sarkari-content-section table.gd-card-table td[data-label]::before,
    .post-main table.gd-card-table td[data-label]::before {
        content: attr(data-label);
        position: absolute !important;
        left: 10px !important;
        top: 10px !important;
        width: 40% !important;
        font-weight: 700 !important;
        text-align: left !important;
        color: #0A2463 !important;
        white-space: normal !important;
        background: transparent !important;
    }
    /* Card tables never overflow, so the Tier-1 scroll wrapper's fade-edge
       hint would just be a dead decorative sliver on the right — hide it. */
    .gd-table-scroll:has(table.gd-card-table),
    .gd-table-scroll--card {
        overflow-x: visible !important;
    }
    .gd-table-scroll:has(table.gd-card-table)::after,
    .gd-table-scroll--card::after {
        display: none !important;
    }
}
