.elementor-26331 .elementor-element.elementor-element-1f01bf2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}/* Start custom CSS for text-editor, class: .elementor-element-9c19c74 *//*
 * Base Styling for Custom Post Container
 */
.custom-post {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #f9f9f9;
}

.custom-post * {
    box-sizing: border-box;
}

/* Header Styling (Card 1) */
.custom-post header {
    background-color: #005b96;
    color: white;
    padding: 25px 15px 0 15px;
    border-radius: 5px;
    margin-bottom: 20px;
    text-align: center;
}

.custom-post h1 {
    margin: 0 0 5px 0;
    font-size: 1.8em;
}

.custom-post .address {
    font-style: italic;
    font-size: 0.9em;
    opacity: 0.9;
}

/* New style for buttons inside the header at the bottom */
.custom-post .header-buttons {
    text-align: center;
    padding: 15px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    margin-top: 15px;
}

/* Section Styling (Card based for each section) */
.custom-post section {
    background-color: white;
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Heading Styling */
.custom-post h2, .custom-post h3, .custom-post h4 {
    color: #003f63;
    border-bottom: 2px solid #e2f0fb;
    padding-bottom: 5px;
    margin-top: 0;
}

/* --- Responsive Table Wrapper (KEY CHANGE: Horizontal Scroll) --- */
.custom-post .responsive-table {
    margin-top: 15px;
    margin-bottom: 15px;
    /* This enables horizontal scrolling on small screens */
    overflow-x: auto;
}

/* Standard Table Styling */
.custom-post table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #ddd;
}

.custom-post th, .custom-post td {
    padding: 10px;
    text-align: left;
    border: 1px solid #ddd;
    word-wrap: break-word;
    font-size: 0.85em; 
}

.custom-post th {
    background-color: #e2f0fb;
    color: #003f63;
    font-weight: bold;
    text-transform: uppercase;
}

/* --- VACANCY TABLE: FIXED LAYOUT FOR ALIGNMENT ACROSS ALL DEVICES --- */

.custom-post #silchar-vacancies table,
.custom-post #diphu-vacancies table {
    /* Set a wide enough minimum width so all columns display correctly */
    min-width: 900px; 
    /* Enforce fixed column layout for perfect alignment */
    table-layout: fixed; 
}

/* Define precise column widths for the main tables */
.custom-post #silchar-vacancies th:nth-child(1), .custom-post #silchar-vacancies td:nth-child(1),
.custom-post #diphu-vacancies th:nth-child(1), .custom-post #diphu-vacancies td:nth-child(1) {
    width: 5%; /* SI No. */
    text-align: center;
}
.custom-post #silchar-vacancies th:nth-child(2), .custom-post #silchar-vacancies td:nth-child(2),
.custom-post #diphu-vacancies th:nth-child(2), .custom-post #diphu-vacancies td:nth-child(2) {
    width: 38%; /* Department Name */
}
.custom-post #silchar-vacancies th:nth-child(3), .custom-post #silchar-vacancies td:nth-child(3),
.custom-post #diphu-vacancies th:nth-child(3), .custom-post #diphu-vacancies td:nth-child(3) {
    width: 12%; /* Total Vacancy */
    text-align: center;
}
/* Remaining 6 columns (UR, SC, ST, OBC, EWS, PWD) take 7.5% each (6 * 7.5 = 45%) */
.custom-post #silchar-vacancies th:nth-child(n+4), .custom-post #silchar-vacancies td:nth-child(n+4),
.custom-post #diphu-vacancies th:nth-child(n+4), .custom-post #diphu-vacancies td:nth-child(n+4) {
    width: 7.5%; 
    text-align: center;
}

/* --- Mobile Reflow Styles Removed to force consistent look --- */


/* List Styling */
.custom-post ul, .custom-post ol {
    padding-left: 20px;
}

.custom-post li {
    margin-bottom: 8px;
}

/* Important Notes Box */
.custom-post .important {
    background-color: #fff3cd;
    border-left: 5px solid #ffca2c;
    padding: 15px;
    margin-top: 20px;
    margin-bottom: 20px;
    border-radius: 3px;
    font-weight: bold;
}

/* Button Styling (Used in header) */
.custom-post .btn {
    display: inline-block;
    padding: 10px 20px;
    margin: 5px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s;
    white-space: nowrap;
    font-size: 0.95em;
}

.custom-post .btn-primary {
    background-color: #005b96;
    color: white;
}

.custom-post .btn-secondary {
    background-color: #003f63;
    color: white;
}

.custom-post .btn:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

/* Table of Content Styling */
.custom-post .toc-list {
    list-style-type: none;
    padding: 0;
    margin-left: 0; 
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.custom-post .toc-list li {
    flex: 1 1 300px; 
    margin: 0;
}

.custom-post .toc-list li a {
    text-decoration: none;
    color: #005b96;
    display: block;
    padding: 8px 10px;
    background-color: #e2f0fb;
    border-radius: 3px;
    transition: background-color 0.3s;
    font-size: 0.9em;
    border: 1px solid #cce7ff;
}

.custom-post .toc-list li a:hover {
    background-color: #cce7ff;
}/* End custom CSS */