/* ==========================================================================
   ECHS - Dedicated Inner Page Styles (100% CSP Compliant)
   ========================================================================== */


/* --- Regional Centres Directory Styles --- */
/* Dedicated Regional Centres Directory Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    .rc-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 36px 0;
      border-bottom: 3px solid #c59b27;
    }
    .rc-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .rc-banner h1 {
      font-size: 1.9rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .rc-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 760px;
      line-height: 1.5;
    }
    .rc-badge-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.12);
      border: 1px solid rgba(255, 255, 255, 0.25);
      border-radius: 30px;
      padding: 6px 16px;
      font-size: 0.82rem;
      font-weight: 600;
      backdrop-filter: blur(6px);
    }

    .rc-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .rc-main-content {
      background: #0b1329;
    }

    /* Selector Card */
    .rc-selector-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 24px 28px;
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
      margin-bottom: 28px;
      border-left: 5px solid #003366;
    }
    body.dark-mode .rc-selector-card {
      background: #1e293b;
      border-color: #334155;
      border-left-color: #3b82f6;
    }
    .selector-form-row {
      display: flex;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .selector-label {
      font-size: 1.15rem;
      font-weight: 800;
      color: #0f172a;
      min-width: 180px;
      display: flex;
      align-items: center;
      gap: 6px;
    }
    body.dark-mode .selector-label {
      color: #f1f5f9;
    }
    .selector-label .req-star {
      color: #dc2626;
      font-weight: 900;
    }
    .selector-dropdown-wrap {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .rc-select-element {
      width: 100%;
      padding: 12px 18px;
      font-size: 1rem;
      font-weight: 600;
      border: 2px solid #003366;
      border-radius: 8px;
      background: #ffffff;
      color: #003366;
      cursor: pointer;
      box-shadow: 0 2px 6px rgba(0, 51, 102, 0.08);
      outline: none;
      transition: all 0.2s;
    }
    body.dark-mode .rc-select-element {
      background: #0f172a;
      border-color: #3b82f6;
      color: #f8fafc;
    }
    .rc-select-element:focus {
      border-color: #c59b27;
      box-shadow: 0 0 0 3px rgba(197, 155, 39, 0.25);
    }

    /* Initial State Guide */
    .empty-prompt-card {
      text-align: center;
      padding: 60px 20px;
      background: #ffffff;
      border: 2px dashed #cbd5e1;
      border-radius: 12px;
      color: #64748b;
    }
    body.dark-mode .empty-prompt-card {
      background: #1e293b;
      border-color: #475569;
      color: #94a3b8;
    }
    .empty-prompt-card svg {
      width: 56px;
      height: 56px;
      fill: #003366;
      opacity: 0.7;
      margin-bottom: 16px;
    }
    body.dark-mode .empty-prompt-card svg {
      fill: #60a5fa;
    }
    .empty-prompt-card h3 {
      font-size: 1.25rem;
      font-weight: 800;
      color: #0f172a;
      margin: 0 0 8px 0;
    }
    body.dark-mode .empty-prompt-card h3 {
      color: #f1f5f9;
    }
    .empty-prompt-card p {
      font-size: 0.95rem;
      max-width: 540px;
      margin: 0 auto;
    }

    /* Active Details Container */
    .rc-details-container {
      display: none;
    }
    .rc-details-header {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 18px 24px;
      margin-bottom: 24px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      flex-wrap: wrap;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .rc-details-header {
      background: #1e293b;
      border-color: #334155;
    }
    .rc-header-title h2 {
      font-size: 1.45rem;
      font-weight: 800;
      color: #003366;
      margin: 0 0 4px 0;
      display: flex;
      align-items: center;
      gap: 8px;
    }
    body.dark-mode .rc-header-title h2 {
      color: #60a5fa;
    }
    .rc-stats-badges {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }
    .stat-badge {
      font-size: 0.8rem;
      font-weight: 700;
      padding: 4px 10px;
      border-radius: 6px;
    }
    .stat-badge-rc { background: #fee2e2; color: #991b1b; }
    .stat-badge-shq { background: #e0f2fe; color: #0369a1; }
    .stat-badge-pc { background: #fef3c7; color: #92400e; }
    body.dark-mode .stat-badge-rc { background: #450a0a; color: #fca5a5; }
    body.dark-mode .stat-badge-shq { background: #082f49; color: #7dd3fc; }
    body.dark-mode .stat-badge-pc { background: #451a03; color: #fde68a; }

    .rc-tools-group {
      display: flex;
      align-items: center;
      gap: 12px;
    }
    .inner-search-input {
      padding: 8px 14px 8px 34px;
      font-size: 0.88rem;
      border: 1px solid #cbd5e1;
      border-radius: 6px;
      background: #f8fafc;
      color: #0f172a;
      width: 220px;
    }
    body.dark-mode .inner-search-input {
      background: #0f172a;
      border-color: #475569;
      color: #f8fafc;
    }
    .inner-search-wrap {
      position: relative;
    }
    .inner-search-icon {
      position: absolute;
      left: 10px;
      top: 50%;
      transform: translateY(-50%);
      width: 15px;
      height: 15px;
      fill: #64748b;
      pointer-events: none;
    }
    .btn-print-rc {
      background: #003366;
      color: #ffffff;
      padding: 8px 16px;
      border-radius: 6px;
      font-size: 0.85rem;
      font-weight: 600;
      border: none;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s;
    }
    .btn-print-rc:hover {
      background: #002244;
    }
    body.dark-mode .btn-print-rc {
      background: #2563eb;
    }

    /* Section Cards & Tables */
    .section-block {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      overflow: hidden;
      margin-bottom: 28px;
      box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .section-block {
      background: #1e293b;
      border-color: #334155;
    }
    .section-header-bar {
      padding: 14px 20px;
      color: #ffffff;
      font-weight: 800;
      font-size: 0.96rem;
      letter-spacing: 0.5px;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .header-bar-rc {
      background: linear-gradient(135deg, #881337, #9f1239);
      border-bottom: 3px solid #f43f5e;
    }
    .header-bar-shq {
      background: linear-gradient(135deg, #075985, #0284c7);
      border-bottom: 3px solid #38bdf8;
    }
    .header-bar-pc {
      background: linear-gradient(135deg, #78350f, #92400e);
      border-bottom: 3px solid #f59e0b;
    }
    .section-badge-count {
      background: rgba(255, 255, 255, 0.2);
      padding: 2px 10px;
      border-radius: 20px;
      font-size: 0.78rem;
    }

    /* Table Styles */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .rc-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.88rem;
      text-align: left;
    }
    .rc-table thead th {
      background: #f1f5f9;
      color: #1e293b;
      padding: 12px 16px;
      font-weight: 700;
      font-size: 0.82rem;
      text-transform: uppercase;
      letter-spacing: 0.4px;
      border-bottom: 2px solid #cbd5e1;
      white-space: nowrap;
    }
    body.dark-mode .rc-table thead th {
      background: #0f172a;
      color: #cbd5e1;
      border-bottom-color: #475569;
    }
    .rc-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background 0.15s ease;
    }
    body.dark-mode .rc-table tbody tr {
      border-bottom-color: #334155;
    }
    .rc-table tbody tr:nth-child(even) {
      background: #fafbfc;
    }
    body.dark-mode .rc-table tbody tr:nth-child(even) {
      background: #172033;
    }
    .rc-table tbody tr:hover {
      background: #eff6ff;
    }
    body.dark-mode .rc-table tbody tr:hover {
      background: #1e3a5f;
    }
    .rc-table td {
      padding: 12px 16px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .rc-table td {
      color: #e2e8f0;
    }
    .td-col1 {
      font-weight: 800;
      color: #003366;
      white-space: nowrap;
    }
    body.dark-mode .td-col1 {
      color: #60a5fa;
    }
    .td-col2 {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .td-col2 {
      color: #f8fafc;
    }
    .td-tele {
      white-space: nowrap;
    }
    .td-address {
      font-size: 0.82rem;
      line-height: 1.45;
      color: #475569;
      max-width: 300px;
    }
    body.dark-mode .td-address {
      color: #94a3b8;
    }

    /* Badges & Links */
    .phone-link {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
      display: inline-flex;
      align-items: center;
      gap: 4px;
    }
    body.dark-mode .phone-link {
      color: #38bdf8;
    }
    .phone-link:hover {
      text-decoration: underline;
    }
    .tele-tag {
      font-size: 0.68rem;
      font-weight: 700;
      padding: 1px 4px;
      border-radius: 3px;
      margin-right: 4px;
      display: inline-block;
    }
    .tele-tag-civil { background: #e0f2fe; color: #0369a1; }
    .tele-tag-mil { background: #fef3c7; color: #92400e; }
    body.dark-mode .tele-tag-civil { background: #075985; color: #e0f2fe; }
    body.dark-mode .tele-tag-mil { background: #78350f; color: #fef3c7; }

    /* Bold, Black Email Styling as requested */
    .email-container {
      display: flex;
      align-items: center;
      gap: 6px;
    }
    .email-box {
      font-family: 'Inter', system-ui, sans-serif;
      font-size: 0.88rem;
      font-weight: 700;
      color: #0a0a0a; /* Sharp, bold black for high contrast */
      background: #f1f5f9;
      padding: 4px 8px;
      border-radius: 5px;
      border: 1px solid #cbd5e1;
      text-decoration: none;
      white-space: nowrap;
      transition: all 0.2s;
    }
    .email-box:hover {
      color: #003366;
      border-color: #003366;
      background: #e0f2fe;
    }
    body.dark-mode .email-box {
      background: #0f172a;
      border-color: #475569;
      color: #ffffff; /* Crisp pure white in dark mode */
      font-weight: 700;
    }
    body.dark-mode .email-box:hover {
      color: #60a5fa;
      border-color: #3b82f6;
      background: #1e293b;
    }
    .copy-email-btn {
      background: #ffffff;
      border: 1px solid #cbd5e1;
      padding: 4px 8px;
      border-radius: 4px;
      cursor: pointer;
      font-size: 0.72rem;
      font-weight: 600;
      color: #64748b;
      transition: all 0.2s;
    }
    body.dark-mode .copy-email-btn {
      background: #1e293b;
      border-color: #475569;
      color: #94a3b8;
    }
    .copy-email-btn:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }
    body.dark-mode .copy-email-btn:hover {
      background: #3b82f6;
      border-color: #3b82f6;
    }

    /* Print styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .rc-selector-card, .site-footer, .copy-email-btn, .btn-print-rc, .inner-search-wrap {
        display: none !important;
      }
      .rc-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .section-block {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
        page-break-inside: avoid;
      }
      .section-header-bar {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .rc-table thead th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .rc-table td {
        color: #000000 !important;
      }
    }

/* --- Record Offices Directory Styles --- */
/* Dedicated Record Offices Directory Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    .ro-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 36px 0;
      border-bottom: 3px solid #c59b27;
    }
    .ro-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .ro-banner h1 {
      font-size: 1.9rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .ro-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 760px;
      line-height: 1.5;
    }
    .ro-badge-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.12);
      border: 1px solid rgba(255, 255, 255, 0.25);
      border-radius: 30px;
      padding: 6px 16px;
      font-size: 0.82rem;
      font-weight: 600;
      backdrop-filter: blur(6px);
    }

    .ro-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .ro-main-content {
      background: #0b1329;
    }

    /* Selector Card */
    .ro-selector-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 24px 28px;
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
      margin-bottom: 28px;
      border-left: 5px solid #003366;
    }
    body.dark-mode .ro-selector-card {
      background: #1e293b;
      border-color: #334155;
      border-left-color: #3b82f6;
    }
    .selector-form-row {
      display: flex;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .selector-label {
      font-size: 1.15rem;
      font-weight: 800;
      color: #0f172a;
      min-width: 170px;
      display: flex;
      align-items: center;
      gap: 6px;
    }
    body.dark-mode .selector-label {
      color: #f1f5f9;
    }
    .selector-label .req-star {
      color: #dc2626;
      font-weight: 900;
    }
    .selector-dropdown-wrap {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .ro-select-element {
      width: 100%;
      padding: 12px 18px;
      font-size: 1rem;
      font-weight: 600;
      border: 2px solid #003366;
      border-radius: 8px;
      background: #ffffff;
      color: #003366;
      cursor: pointer;
      box-shadow: 0 2px 6px rgba(0, 51, 102, 0.08);
      outline: none;
      transition: all 0.2s;
    }
    body.dark-mode .ro-select-element {
      background: #0f172a;
      border-color: #3b82f6;
      color: #f8fafc;
    }
    .ro-select-element:focus {
      border-color: #c59b27;
      box-shadow: 0 0 0 3px rgba(197, 155, 39, 0.25);
    }

    /* Initial State Guide */
    .empty-prompt-card {
      text-align: center;
      padding: 60px 20px;
      background: #ffffff;
      border: 2px dashed #cbd5e1;
      border-radius: 12px;
      color: #64748b;
    }
    body.dark-mode .empty-prompt-card {
      background: #1e293b;
      border-color: #475569;
      color: #94a3b8;
    }
    .empty-prompt-card svg {
      width: 56px;
      height: 56px;
      fill: #003366;
      opacity: 0.7;
      margin-bottom: 16px;
    }
    body.dark-mode .empty-prompt-card svg {
      fill: #60a5fa;
    }
    .empty-prompt-card h3 {
      font-size: 1.25rem;
      font-weight: 800;
      color: #0f172a;
      margin: 0 0 8px 0;
    }
    body.dark-mode .empty-prompt-card h3 {
      color: #f1f5f9;
    }
    .empty-prompt-card p {
      font-size: 0.95rem;
      max-width: 540px;
      margin: 0 auto;
    }

    /* Selected Record Office Card */
    .ro-details-container {
      display: none;
    }
    .ro-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 4px 18px rgba(0, 0, 0, 0.06);
      margin-bottom: 28px;
    }
    body.dark-mode .ro-card {
      background: #1e293b;
      border-color: #334155;
    }
    .ro-card-header {
      background: linear-gradient(135deg, #002244 0%, #003366 100%);
      color: #ffffff;
      padding: 18px 24px;
      border-bottom: 3px solid #c59b27;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    .ro-card-header h2 {
      font-size: 1.35rem;
      font-weight: 800;
      margin: 0;
      letter-spacing: -0.2px;
    }
    .ro-id-badge {
      background: rgba(255, 255, 255, 0.18);
      border: 1px solid rgba(255, 255, 255, 0.3);
      padding: 4px 12px;
      border-radius: 20px;
      font-size: 0.8rem;
      font-weight: 700;
    }

    .ro-card-body {
      padding: 24px 28px;
    }
    .ro-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.92rem;
    }
    .ro-table tr {
      border-bottom: 1px solid #edf2f7;
    }
    body.dark-mode .ro-table tr {
      border-bottom-color: #334155;
    }
    .ro-table tr:last-child {
      border-bottom: none;
    }
    .ro-table th {
      width: 260px;
      padding: 14px 16px;
      background: #f8fafc;
      color: #003366;
      font-weight: 700;
      text-align: left;
      vertical-align: middle;
      border-right: 1px solid #edf2f7;
    }
    body.dark-mode .ro-table th {
      background: #0f172a;
      color: #60a5fa;
      border-right-color: #334155;
    }
    .ro-table td {
      padding: 14px 20px;
      color: #1e293b;
      vertical-align: middle;
    }
    body.dark-mode .ro-table td {
      color: #f1f5f9;
    }

    /* Links & Email format */
    .phone-link {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }
    body.dark-mode .phone-link {
      color: #38bdf8;
    }
    .phone-link:hover {
      text-decoration: underline;
    }

    /* Email Styling: Bold, High-Contrast Black & Crisp Visibility */
    .email-container {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }
    .email-box {
      font-family: 'Inter', system-ui, sans-serif;
      font-size: 0.92rem;
      font-weight: 700;
      color: #0a0a0a; /* Sharp, bold black for high contrast */
      background: #f1f5f9;
      padding: 5px 12px;
      border-radius: 6px;
      border: 1px solid #cbd5e1;
      text-decoration: none;
      transition: all 0.2s;
    }
    .email-box:hover {
      color: #003366;
      border-color: #003366;
      background: #e0f2fe;
    }
    body.dark-mode .email-box {
      background: #0f172a;
      border-color: #475569;
      color: #ffffff; /* Crisp pure white in dark mode */
      font-weight: 700;
    }
    body.dark-mode .email-box:hover {
      color: #60a5fa;
      border-color: #3b82f6;
      background: #1e293b;
    }
    .copy-email-btn {
      background: #ffffff;
      border: 1px solid #cbd5e1;
      padding: 5px 10px;
      border-radius: 5px;
      cursor: pointer;
      font-size: 0.76rem;
      font-weight: 600;
      color: #475569;
      transition: all 0.2s;
    }
    body.dark-mode .copy-email-btn {
      background: #1e293b;
      border-color: #475569;
      color: #94a3b8;
    }
    .copy-email-btn:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }
    body.dark-mode .copy-email-btn:hover {
      background: #3b82f6;
      border-color: #3b82f6;
    }

    .ro-action-bar {
      display: flex;
      justify-content: flex-end;
      gap: 12px;
      padding: 16px 28px;
      background: #f8fafc;
      border-top: 1px solid #edf2f7;
    }
    body.dark-mode .ro-action-bar {
      background: #0f172a;
      border-top-color: #334155;
    }
    .btn-print {
      background: #003366;
      color: #ffffff;
      padding: 8px 16px;
      border-radius: 6px;
      font-size: 0.85rem;
      font-weight: 600;
      border: none;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s;
    }
    .btn-print:hover {
      background: #002244;
    }
    body.dark-mode .btn-print {
      background: #2563eb;
    }

    /* All Record Offices Table Section */
    /* Print styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .ro-selector-card, .btn-print, .copy-email-btn, .site-footer {
        display: none !important;
      }
      .ro-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .ro-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
        page-break-inside: avoid;
      }
      .ro-card-header {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .ro-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .ro-table td {
        color: #000000 !important;
      }
    }

/* --- Styles for ops_coord.php --- */
/* Dedicated Operations & Coordination Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .policy-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .policy-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .policy-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .policy-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 780px;
      line-height: 1.5;
    }

    .policy-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .policy-main-content {
      background: #0b1329;
    }

    /* Search & Filter Bar */
    .policy-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 20px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
      justify-content: space-between;
    }
    body.dark-mode .policy-control-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-search-box {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .policy-search-icon {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #94a3b8;
      pointer-events: none;
    }
    .policy-search-input {
      width: 100%;
      padding: 11px 16px 11px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      font-weight: 500;
      outline: none;
      background: #ffffff;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .policy-search-input {
      background: #0f172a;
      border-color: #334155;
      color: #f8fafc;
    }
    .policy-search-input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    body.dark-mode .policy-search-input:focus {
      border-color: #60a5fa;
      box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
    }

    .count-indicator {
      font-size: 0.88rem;
      font-weight: 700;
      color: #003366;
      background: #e0f2fe;
      padding: 7px 16px;
      border-radius: 20px;
    }
    body.dark-mode .count-indicator {
      background: #082f49;
      color: #7dd3fc;
    }

    /* Main Table Card */
    .policy-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .policy-table-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-card-header {
      background: #f1f5f9;
      padding: 16px 22px;
      border-bottom: 2px solid #e2e8f0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    body.dark-mode .policy-card-header {
      background: #0f172a;
      border-bottom-color: #334155;
    }
    .policy-card-header h2 {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    body.dark-mode .policy-card-header h2 {
      color: #60a5fa;
    }

    .btn-print-table {
      background: #ffffff;
      border: 1.5px solid #cbd5e1;
      border-radius: 6px;
      padding: 6px 14px;
      font-size: 0.82rem;
      font-weight: 700;
      color: #334155;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s, color 0.2s;
    }
    body.dark-mode .btn-print-table {
      background: #1e293b;
      border-color: #475569;
      color: #e2e8f0;
    }
    .btn-print-table:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }

    /* Table Styling */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .policy-table {
      width: 100%;
      border-collapse: collapse;
      text-align: left;
      font-size: 0.92rem;
    }
    .policy-table th {
      background: #003366;
      color: #ffffff;
      padding: 14px 18px;
      font-weight: 700;
      letter-spacing: 0.3px;
      font-size: 0.85rem;
      text-transform: uppercase;
      border-bottom: 2px solid #002244;
      white-space: nowrap;
    }
    body.dark-mode .policy-table th {
      background: #091e3a;
      border-bottom-color: #001428;
    }
    .policy-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background-color 0.15s ease;
    }
    body.dark-mode .policy-table tbody tr {
      border-bottom-color: #334155;
    }
    .policy-table tbody tr:nth-child(even) {
      background-color: #fafbfd;
    }
    body.dark-mode .policy-table tbody tr:nth-child(even) {
      background-color: #172338;
    }
    .policy-table tbody tr:hover {
      background-color: #f0f7ff;
    }
    body.dark-mode .policy-table tbody tr:hover {
      background-color: #1e3a5f;
    }
    .policy-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .policy-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .policy-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      line-height: 1.45;
      transition: color 0.2s;
    }
    body.dark-mode .policy-title-link {
      color: #f1f5f9;
    }
    .policy-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .policy-title-link:hover {
      color: #60a5fa;
    }

    .date-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #f1f5f9;
      color: #334155;
      padding: 6px 12px;
      border-radius: 6px;
      font-size: 0.84rem;
      font-weight: 700;
      border: 1px solid #cbd5e1;
      white-space: nowrap;
    }
    body.dark-mode .date-badge {
      background: #0f172a;
      color: #94a3b8;
      border-color: #334155;
    }
    .date-badge svg {
      width: 14px;
      height: 14px;
      fill: currentColor;
    }

    /* Download Button */
    .btn-policy-download {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      background: #dc2626;
      color: #ffffff;
      padding: 9px 16px;
      border-radius: 6px;
      font-weight: 700;
      font-size: 0.84rem;
      text-decoration: none;
      transition: all 0.2s ease;
      white-space: nowrap;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
    }
    .btn-policy-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-policy-download svg {
      width: 15px;
      height: 15px;
      fill: currentColor;
    }

    /* Empty state */
    .no-results-row {
      display: none;
      text-align: center;
      padding: 40px 20px;
      color: #64748b;
    }
    body.dark-mode .no-results-row {
      color: #94a3b8;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .policy-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .policy-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .policy-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .policy-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .policy-table td {
        color: #000000 !important;
      }
    }

/* --- Styles for med_sec.php --- */
/* Dedicated Medical Section Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .med-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .med-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .med-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .med-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 780px;
      line-height: 1.5;
    }

    .med-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .med-main-content {
      background: #0b1329;
    }

    /* Search & Filter Bar */
    .med-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 20px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
      justify-content: space-between;
    }
    body.dark-mode .med-control-card {
      background: #1e293b;
      border-color: #334155;
    }

    .med-search-box {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .med-search-icon {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #94a3b8;
      pointer-events: none;
    }
    .med-search-input {
      width: 100%;
      padding: 11px 16px 11px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      font-weight: 500;
      outline: none;
      background: #ffffff;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .med-search-input {
      background: #0f172a;
      border-color: #334155;
      color: #f8fafc;
    }
    .med-search-input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    body.dark-mode .med-search-input:focus {
      border-color: #60a5fa;
      box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
    }

    .count-indicator {
      font-size: 0.88rem;
      font-weight: 700;
      color: #003366;
      background: #e0f2fe;
      padding: 7px 16px;
      border-radius: 20px;
    }
    body.dark-mode .count-indicator {
      background: #082f49;
      color: #7dd3fc;
    }

    /* Main Table Card */
    .med-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .med-table-card {
      background: #1e293b;
      border-color: #334155;
    }

    .med-card-header {
      background: #f1f5f9;
      padding: 16px 22px;
      border-bottom: 2px solid #e2e8f0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    body.dark-mode .med-card-header {
      background: #0f172a;
      border-bottom-color: #334155;
    }
    .med-card-header h2 {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    body.dark-mode .med-card-header h2 {
      color: #60a5fa;
    }

    .btn-print-table {
      background: #ffffff;
      border: 1.5px solid #cbd5e1;
      border-radius: 6px;
      padding: 6px 14px;
      font-size: 0.82rem;
      font-weight: 700;
      color: #334155;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s, color 0.2s;
    }
    body.dark-mode .btn-print-table {
      background: #1e293b;
      border-color: #475569;
      color: #e2e8f0;
    }
    .btn-print-table:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }

    /* Table Styling */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .med-table {
      width: 100%;
      border-collapse: collapse;
      text-align: left;
      font-size: 0.92rem;
    }
    .med-table th {
      background: #003366;
      color: #ffffff;
      padding: 14px 18px;
      font-weight: 700;
      letter-spacing: 0.3px;
      font-size: 0.85rem;
      text-transform: uppercase;
      border-bottom: 2px solid #002244;
      white-space: nowrap;
    }
    body.dark-mode .med-table th {
      background: #091e3a;
      border-bottom-color: #001428;
    }
    .med-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background-color 0.15s ease;
    }
    body.dark-mode .med-table tbody tr {
      border-bottom-color: #334155;
    }
    .med-table tbody tr:nth-child(even) {
      background-color: #fafbfd;
    }
    body.dark-mode .med-table tbody tr:nth-child(even) {
      background-color: #172338;
    }
    .med-table tbody tr:hover {
      background-color: #f0f7ff;
    }
    body.dark-mode .med-table tbody tr:hover {
      background-color: #1e3a5f;
    }
    .med-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .med-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .med-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      line-height: 1.45;
      transition: color 0.2s;
    }
    body.dark-mode .med-title-link {
      color: #f1f5f9;
    }
    .med-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .med-title-link:hover {
      color: #60a5fa;
    }

    .date-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #f1f5f9;
      color: #334155;
      padding: 6px 12px;
      border-radius: 6px;
      font-size: 0.84rem;
      font-weight: 700;
      border: 1px solid #cbd5e1;
      white-space: nowrap;
    }
    body.dark-mode .date-badge {
      background: #0f172a;
      color: #94a3b8;
      border-color: #334155;
    }
    .date-badge svg {
      width: 14px;
      height: 14px;
      fill: currentColor;
    }

    /* Download Button */
    .btn-med-download {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      background: #dc2626;
      color: #ffffff;
      padding: 9px 16px;
      border-radius: 6px;
      font-weight: 700;
      font-size: 0.84rem;
      text-decoration: none;
      transition: all 0.2s ease;
      white-space: nowrap;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
    }
    .btn-med-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-med-download svg {
      width: 15px;
      height: 15px;
      fill: currentColor;
    }

    /* Empty state */
    .no-results-row {
      display: none;
      text-align: center;
      padding: 40px 20px;
      color: #64748b;
    }
    body.dark-mode .no-results-row {
      color: #94a3b8;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .med-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .med-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .med-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .med-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .med-table td {
        color: #000000 !important;
      }
    }

/* --- Styles for stat_auto_sec.php --- */
/* Dedicated S & A Sec Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .policy-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .policy-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .policy-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .policy-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 780px;
      line-height: 1.5;
    }

    .policy-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .policy-main-content {
      background: #0b1329;
    }

    /* Search & Filter Bar */
    .policy-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 20px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
      justify-content: space-between;
    }
    body.dark-mode .policy-control-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-search-box {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .policy-search-icon {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #94a3b8;
      pointer-events: none;
    }
    .policy-search-input {
      width: 100%;
      padding: 11px 16px 11px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      font-weight: 500;
      outline: none;
      background: #ffffff;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .policy-search-input {
      background: #0f172a;
      border-color: #334155;
      color: #f8fafc;
    }
    .policy-search-input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    body.dark-mode .policy-search-input:focus {
      border-color: #60a5fa;
      box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
    }

    .count-indicator {
      font-size: 0.88rem;
      font-weight: 700;
      color: #003366;
      background: #e0f2fe;
      padding: 7px 16px;
      border-radius: 20px;
    }
    body.dark-mode .count-indicator {
      background: #082f49;
      color: #7dd3fc;
    }

    /* Main Table Card */
    .policy-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .policy-table-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-card-header {
      background: #f1f5f9;
      padding: 16px 22px;
      border-bottom: 2px solid #e2e8f0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    body.dark-mode .policy-card-header {
      background: #0f172a;
      border-bottom-color: #334155;
    }
    .policy-card-header h2 {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    body.dark-mode .policy-card-header h2 {
      color: #60a5fa;
    }

    .btn-print-table {
      background: #ffffff;
      border: 1.5px solid #cbd5e1;
      border-radius: 6px;
      padding: 6px 14px;
      font-size: 0.82rem;
      font-weight: 700;
      color: #334155;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s, color 0.2s;
    }
    body.dark-mode .btn-print-table {
      background: #1e293b;
      border-color: #475569;
      color: #e2e8f0;
    }
    .btn-print-table:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }

    /* Table Styling */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .policy-table {
      width: 100%;
      border-collapse: collapse;
      text-align: left;
      font-size: 0.92rem;
    }
    .policy-table th {
      background: #003366;
      color: #ffffff;
      padding: 14px 18px;
      font-weight: 700;
      letter-spacing: 0.3px;
      font-size: 0.85rem;
      text-transform: uppercase;
      border-bottom: 2px solid #002244;
      white-space: nowrap;
    }
    body.dark-mode .policy-table th {
      background: #091e3a;
      border-bottom-color: #001428;
    }
    .policy-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background-color 0.15s ease;
    }
    body.dark-mode .policy-table tbody tr {
      border-bottom-color: #334155;
    }
    .policy-table tbody tr:nth-child(even) {
      background-color: #fafbfd;
    }
    body.dark-mode .policy-table tbody tr:nth-child(even) {
      background-color: #172338;
    }
    .policy-table tbody tr:hover {
      background-color: #f0f7ff;
    }
    body.dark-mode .policy-table tbody tr:hover {
      background-color: #1e3a5f;
    }
    .policy-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .policy-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .policy-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      line-height: 1.45;
      transition: color 0.2s;
    }
    body.dark-mode .policy-title-link {
      color: #f1f5f9;
    }
    .policy-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .policy-title-link:hover {
      color: #60a5fa;
    }

    .date-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #f1f5f9;
      color: #334155;
      padding: 6px 12px;
      border-radius: 6px;
      font-size: 0.84rem;
      font-weight: 700;
      border: 1px solid #cbd5e1;
      white-space: nowrap;
    }
    body.dark-mode .date-badge {
      background: #0f172a;
      color: #94a3b8;
      border-color: #334155;
    }
    .date-badge svg {
      width: 14px;
      height: 14px;
      fill: currentColor;
    }

    /* Download Button */
    .btn-policy-download {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      background: #dc2626;
      color: #ffffff;
      padding: 9px 16px;
      border-radius: 6px;
      font-weight: 700;
      font-size: 0.84rem;
      text-decoration: none;
      transition: all 0.2s ease;
      white-space: nowrap;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
    }
    .btn-policy-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-policy-download svg {
      width: 15px;
      height: 15px;
      fill: currentColor;
    }

    /* Empty state */
    .no-results-row {
      display: none;
      text-align: center;
      padding: 40px 20px;
      color: #64748b;
    }
    body.dark-mode .no-results-row {
      color: #94a3b8;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .policy-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .policy-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .policy-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .policy-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .policy-table td {
        color: #000000 !important;
      }
    }

/* --- Styles for p_fc_sec.php --- */
/* Dedicated P & FC Sec Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .policy-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .policy-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .policy-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .policy-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 780px;
      line-height: 1.5;
    }

    .policy-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .policy-main-content {
      background: #0b1329;
    }

    /* Search & Filter Bar */
    .policy-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 20px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
      justify-content: space-between;
    }
    body.dark-mode .policy-control-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-search-box {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .policy-search-icon {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #94a3b8;
      pointer-events: none;
    }
    .policy-search-input {
      width: 100%;
      padding: 11px 16px 11px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      font-weight: 500;
      outline: none;
      background: #ffffff;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .policy-search-input {
      background: #0f172a;
      border-color: #334155;
      color: #f8fafc;
    }
    .policy-search-input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    body.dark-mode .policy-search-input:focus {
      border-color: #60a5fa;
      box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
    }

    .count-indicator {
      font-size: 0.88rem;
      font-weight: 700;
      color: #003366;
      background: #e0f2fe;
      padding: 7px 16px;
      border-radius: 20px;
    }
    body.dark-mode .count-indicator {
      background: #082f49;
      color: #7dd3fc;
    }

    /* Main Table Card */
    .policy-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .policy-table-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-card-header {
      background: #f1f5f9;
      padding: 16px 22px;
      border-bottom: 2px solid #e2e8f0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    body.dark-mode .policy-card-header {
      background: #0f172a;
      border-bottom-color: #334155;
    }
    .policy-card-header h2 {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    body.dark-mode .policy-card-header h2 {
      color: #60a5fa;
    }

    .btn-print-table {
      background: #ffffff;
      border: 1.5px solid #cbd5e1;
      border-radius: 6px;
      padding: 6px 14px;
      font-size: 0.82rem;
      font-weight: 700;
      color: #334155;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s, color 0.2s;
    }
    body.dark-mode .btn-print-table {
      background: #1e293b;
      border-color: #475569;
      color: #e2e8f0;
    }
    .btn-print-table:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }

    /* Table Styling */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .policy-table {
      width: 100%;
      border-collapse: collapse;
      text-align: left;
      font-size: 0.92rem;
    }
    .policy-table th {
      background: #003366;
      color: #ffffff;
      padding: 14px 18px;
      font-weight: 700;
      letter-spacing: 0.3px;
      font-size: 0.85rem;
      text-transform: uppercase;
      border-bottom: 2px solid #002244;
      white-space: nowrap;
    }
    body.dark-mode .policy-table th {
      background: #091e3a;
      border-bottom-color: #001428;
    }
    .policy-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background-color 0.15s ease;
    }
    body.dark-mode .policy-table tbody tr {
      border-bottom-color: #334155;
    }
    .policy-table tbody tr:nth-child(even) {
      background-color: #fafbfd;
    }
    body.dark-mode .policy-table tbody tr:nth-child(even) {
      background-color: #172338;
    }
    .policy-table tbody tr:hover {
      background-color: #f0f7ff;
    }
    body.dark-mode .policy-table tbody tr:hover {
      background-color: #1e3a5f;
    }
    .policy-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .policy-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .policy-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      line-height: 1.45;
      transition: color 0.2s;
    }
    body.dark-mode .policy-title-link {
      color: #f1f5f9;
    }
    .policy-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .policy-title-link:hover {
      color: #60a5fa;
    }

    .date-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #f1f5f9;
      color: #334155;
      padding: 6px 12px;
      border-radius: 6px;
      font-size: 0.84rem;
      font-weight: 700;
      border: 1px solid #cbd5e1;
      white-space: nowrap;
    }
    body.dark-mode .date-badge {
      background: #0f172a;
      color: #94a3b8;
      border-color: #334155;
    }
    .date-badge svg {
      width: 14px;
      height: 14px;
      fill: currentColor;
    }

    /* Download Button */
    .btn-policy-download {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      background: #dc2626;
      color: #ffffff;
      padding: 9px 16px;
      border-radius: 6px;
      font-weight: 700;
      font-size: 0.84rem;
      text-decoration: none;
      transition: all 0.2s ease;
      white-space: nowrap;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
    }
    .btn-policy-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-policy-download svg {
      width: 15px;
      height: 15px;
      fill: currentColor;
    }

    /* Empty state */
    .no-results-row {
      display: none;
      text-align: center;
      padding: 40px 20px;
      color: #64748b;
    }
    body.dark-mode .no-results-row {
      color: #94a3b8;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .policy-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .policy-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .policy-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .policy-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .policy-table td {
        color: #000000 !important;
      }
    }

/* --- Styles for vig_sec.php --- */
/* Dedicated Vigilance Section Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .vig-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .vig-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .vig-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .vig-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 780px;
      line-height: 1.5;
    }

    .vig-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .vig-main-content {
      background: #0b1329;
    }

    /* Search & Filter Bar */
    .vig-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 20px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
      justify-content: space-between;
    }
    body.dark-mode .vig-control-card {
      background: #1e293b;
      border-color: #334155;
    }

    .vig-search-box {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .vig-search-icon {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #94a3b8;
      pointer-events: none;
    }
    .vig-search-input {
      width: 100%;
      padding: 11px 16px 11px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      font-weight: 500;
      outline: none;
      background: #ffffff;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .vig-search-input {
      background: #0f172a;
      border-color: #334155;
      color: #f8fafc;
    }
    .vig-search-input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    body.dark-mode .vig-search-input:focus {
      border-color: #60a5fa;
      box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
    }

    .count-indicator {
      font-size: 0.88rem;
      font-weight: 700;
      color: #003366;
      background: #e0f2fe;
      padding: 7px 16px;
      border-radius: 20px;
    }
    body.dark-mode .count-indicator {
      background: #082f49;
      color: #7dd3fc;
    }

    /* Main Table Card */
    .vig-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .vig-table-card {
      background: #1e293b;
      border-color: #334155;
    }

    .vig-card-header {
      background: #f1f5f9;
      padding: 16px 22px;
      border-bottom: 2px solid #e2e8f0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    body.dark-mode .vig-card-header {
      background: #0f172a;
      border-bottom-color: #334155;
    }
    .vig-card-header h2 {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    body.dark-mode .vig-card-header h2 {
      color: #60a5fa;
    }

    .btn-print-table {
      background: #ffffff;
      border: 1.5px solid #cbd5e1;
      border-radius: 6px;
      padding: 6px 14px;
      font-size: 0.82rem;
      font-weight: 700;
      color: #334155;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s, color 0.2s;
    }
    body.dark-mode .btn-print-table {
      background: #1e293b;
      border-color: #475569;
      color: #e2e8f0;
    }
    .btn-print-table:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }

    /* Table Styling */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .vig-table {
      width: 100%;
      border-collapse: collapse;
      text-align: left;
      font-size: 0.92rem;
    }
    .vig-table th {
      background: #003366;
      color: #ffffff;
      padding: 14px 18px;
      font-weight: 700;
      letter-spacing: 0.3px;
      font-size: 0.85rem;
      text-transform: uppercase;
      border-bottom: 2px solid #002244;
      white-space: nowrap;
    }
    body.dark-mode .vig-table th {
      background: #091e3a;
      border-bottom-color: #001428;
    }
    .vig-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background-color 0.15s ease;
    }
    body.dark-mode .vig-table tbody tr {
      border-bottom-color: #334155;
    }
    .vig-table tbody tr:nth-child(even) {
      background-color: #fafbfd;
    }
    body.dark-mode .vig-table tbody tr:nth-child(even) {
      background-color: #172338;
    }
    .vig-table tbody tr:hover {
      background-color: #f0f7ff;
    }
    body.dark-mode .vig-table tbody tr:hover {
      background-color: #1e3a5f;
    }
    .vig-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .vig-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .vig-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      line-height: 1.45;
      transition: color 0.2s;
    }
    body.dark-mode .vig-title-link {
      color: #f1f5f9;
    }
    .vig-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .vig-title-link:hover {
      color: #60a5fa;
    }

    .date-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #f1f5f9;
      color: #334155;
      padding: 6px 12px;
      border-radius: 6px;
      font-size: 0.84rem;
      font-weight: 700;
      border: 1px solid #cbd5e1;
      white-space: nowrap;
    }
    body.dark-mode .date-badge {
      background: #0f172a;
      color: #94a3b8;
      border-color: #334155;
    }
    .date-badge svg {
      width: 14px;
      height: 14px;
      fill: currentColor;
    }

    /* Download Button */
    .btn-vig-download {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      background: #dc2626;
      color: #ffffff;
      padding: 9px 16px;
      border-radius: 6px;
      font-weight: 700;
      font-size: 0.84rem;
      text-decoration: none;
      transition: all 0.2s ease;
      white-space: nowrap;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
    }
    .btn-vig-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-vig-download svg {
      width: 15px;
      height: 15px;
      fill: currentColor;
    }

    /* Empty state */
    .no-results-row {
      display: none;
      text-align: center;
      padding: 40px 20px;
      color: #64748b;
    }
    body.dark-mode .no-results-row {
      color: #94a3b8;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .vig-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .vig-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .vig-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .vig-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .vig-table td {
        color: #000000 !important;
      }
    }

/* --- Styles for c_l_sec.php --- */
/* Dedicated C & L Sec Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .policy-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .policy-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .policy-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .policy-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 780px;
      line-height: 1.5;
    }

    .policy-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .policy-main-content {
      background: #0b1329;
    }

    /* Search & Filter Bar */
    .policy-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 20px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
      justify-content: space-between;
    }
    body.dark-mode .policy-control-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-search-box {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .policy-search-icon {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #94a3b8;
      pointer-events: none;
    }
    .policy-search-input {
      width: 100%;
      padding: 11px 16px 11px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      font-weight: 500;
      outline: none;
      background: #ffffff;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .policy-search-input {
      background: #0f172a;
      border-color: #334155;
      color: #f8fafc;
    }
    .policy-search-input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    body.dark-mode .policy-search-input:focus {
      border-color: #60a5fa;
      box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
    }

    .count-indicator {
      font-size: 0.88rem;
      font-weight: 700;
      color: #003366;
      background: #e0f2fe;
      padding: 7px 16px;
      border-radius: 20px;
    }
    body.dark-mode .count-indicator {
      background: #082f49;
      color: #7dd3fc;
    }

    /* Main Table Card */
    .policy-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .policy-table-card {
      background: #1e293b;
      border-color: #334155;
    }

    .policy-card-header {
      background: #f1f5f9;
      padding: 16px 22px;
      border-bottom: 2px solid #e2e8f0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    body.dark-mode .policy-card-header {
      background: #0f172a;
      border-bottom-color: #334155;
    }
    .policy-card-header h2 {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    body.dark-mode .policy-card-header h2 {
      color: #60a5fa;
    }

    .btn-print-table {
      background: #ffffff;
      border: 1.5px solid #cbd5e1;
      border-radius: 6px;
      padding: 6px 14px;
      font-size: 0.82rem;
      font-weight: 700;
      color: #334155;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s, color 0.2s;
    }
    body.dark-mode .btn-print-table {
      background: #1e293b;
      border-color: #475569;
      color: #e2e8f0;
    }
    .btn-print-table:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }

    /* Table Styling */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .policy-table {
      width: 100%;
      border-collapse: collapse;
      text-align: left;
      font-size: 0.92rem;
    }
    .policy-table th {
      background: #003366;
      color: #ffffff;
      padding: 14px 18px;
      font-weight: 700;
      letter-spacing: 0.3px;
      font-size: 0.85rem;
      text-transform: uppercase;
      border-bottom: 2px solid #002244;
      white-space: nowrap;
    }
    body.dark-mode .policy-table th {
      background: #091e3a;
      border-bottom-color: #001428;
    }
    .policy-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background-color 0.15s ease;
    }
    body.dark-mode .policy-table tbody tr {
      border-bottom-color: #334155;
    }
    .policy-table tbody tr:nth-child(even) {
      background-color: #fafbfd;
    }
    body.dark-mode .policy-table tbody tr:nth-child(even) {
      background-color: #172338;
    }
    .policy-table tbody tr:hover {
      background-color: #f0f7ff;
    }
    body.dark-mode .policy-table tbody tr:hover {
      background-color: #1e3a5f;
    }
    .policy-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .policy-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .policy-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      line-height: 1.45;
      transition: color 0.2s;
    }
    body.dark-mode .policy-title-link {
      color: #f1f5f9;
    }
    .policy-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .policy-title-link:hover {
      color: #60a5fa;
    }

    .date-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #f1f5f9;
      color: #334155;
      padding: 6px 12px;
      border-radius: 6px;
      font-size: 0.84rem;
      font-weight: 700;
      border: 1px solid #cbd5e1;
      white-space: nowrap;
    }
    body.dark-mode .date-badge {
      background: #0f172a;
      color: #94a3b8;
      border-color: #334155;
    }
    .date-badge svg {
      width: 14px;
      height: 14px;
      fill: currentColor;
    }

    /* Download Button */
    .btn-policy-download {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      background: #dc2626;
      color: #ffffff;
      padding: 9px 16px;
      border-radius: 6px;
      font-weight: 700;
      font-size: 0.84rem;
      text-decoration: none;
      transition: all 0.2s ease;
      white-space: nowrap;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
    }
    .btn-policy-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-policy-download svg {
      width: 15px;
      height: 15px;
      fill: currentColor;
    }

    /* Empty state */
    .no-results-row {
      display: none;
      text-align: center;
      padding: 40px 20px;
      color: #64748b;
    }
    body.dark-mode .no-results-row {
      color: #94a3b8;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .policy-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .policy-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .policy-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .policy-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .policy-table td {
        color: #000000 !important;
      }
    }

/* --- Styles for sops.php --- */
/* Dedicated Policies & SOPs Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .sop-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .sop-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .sop-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .sop-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 780px;
      line-height: 1.5;
    }

    .sop-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .sop-main-content {
      background: #0b1329;
    }

    /* Search & Filter Bar */
    .sop-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 20px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
      justify-content: space-between;
    }
    body.dark-mode .sop-control-card {
      background: #1e293b;
      border-color: #334155;
    }

    .sop-search-box {
      flex: 1;
      min-width: 280px;
      position: relative;
    }
    .sop-search-icon {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #94a3b8;
      pointer-events: none;
    }
    .sop-search-input {
      width: 100%;
      padding: 11px 16px 11px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      font-weight: 500;
      outline: none;
      background: #ffffff;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .sop-search-input {
      background: #0f172a;
      border-color: #334155;
      color: #f8fafc;
    }
    .sop-search-input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    body.dark-mode .sop-search-input:focus {
      border-color: #60a5fa;
      box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
    }

    .count-indicator {
      font-size: 0.88rem;
      font-weight: 700;
      color: #003366;
      background: #e0f2fe;
      padding: 7px 16px;
      border-radius: 20px;
    }
    body.dark-mode .count-indicator {
      background: #082f49;
      color: #7dd3fc;
    }

    /* Main Table Card */
    .sop-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
    }
    body.dark-mode .sop-table-card {
      background: #1e293b;
      border-color: #334155;
    }

    .sop-card-header {
      background: #f1f5f9;
      padding: 16px 22px;
      border-bottom: 2px solid #e2e8f0;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    body.dark-mode .sop-card-header {
      background: #0f172a;
      border-bottom-color: #334155;
    }
    .sop-card-header h2 {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    body.dark-mode .sop-card-header h2 {
      color: #60a5fa;
    }

    .btn-print-table {
      background: #ffffff;
      border: 1.5px solid #cbd5e1;
      border-radius: 6px;
      padding: 6px 14px;
      font-size: 0.82rem;
      font-weight: 700;
      color: #334155;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s, color 0.2s;
    }
    body.dark-mode .btn-print-table {
      background: #1e293b;
      border-color: #475569;
      color: #e2e8f0;
    }
    .btn-print-table:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }

    /* Table Styling */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .sop-table {
      width: 100%;
      border-collapse: collapse;
      text-align: left;
      font-size: 0.92rem;
    }
    .sop-table th {
      background: #003366;
      color: #ffffff;
      padding: 14px 18px;
      font-weight: 700;
      letter-spacing: 0.3px;
      font-size: 0.85rem;
      text-transform: uppercase;
      border-bottom: 2px solid #002244;
      white-space: nowrap;
    }
    body.dark-mode .sop-table th {
      background: #091e3a;
      border-bottom-color: #001428;
    }
    .sop-table tbody tr {
      border-bottom: 1px solid #f1f5f9;
      transition: background-color 0.15s ease;
    }
    body.dark-mode .sop-table tbody tr {
      border-bottom-color: #334155;
    }
    .sop-table tbody tr:nth-child(even) {
      background-color: #fafbfd;
    }
    body.dark-mode .sop-table tbody tr:nth-child(even) {
      background-color: #172338;
    }
    .sop-table tbody tr:hover {
      background-color: #f0f7ff;
    }
    body.dark-mode .sop-table tbody tr:hover {
      background-color: #1e3a5f;
    }
    .sop-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .sop-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .sop-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      line-height: 1.45;
      transition: color 0.2s;
    }
    body.dark-mode .sop-title-link {
      color: #f1f5f9;
    }
    .sop-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .sop-title-link:hover {
      color: #60a5fa;
    }

    /* Download Button */
    .btn-sop-download {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      background: #dc2626;
      color: #ffffff;
      padding: 9px 16px;
      border-radius: 6px;
      font-weight: 700;
      font-size: 0.84rem;
      text-decoration: none;
      transition: all 0.2s ease;
      white-space: nowrap;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.25);
    }
    .btn-sop-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-sop-download svg {
      width: 15px;
      height: 15px;
      fill: currentColor;
    }

    /* Empty state */
    .no-results-row {
      display: none;
      text-align: center;
      padding: 40px 20px;
      color: #64748b;
    }
    body.dark-mode .no-results-row {
      color: #94a3b8;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .sop-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .sop-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .sop-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .sop-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .sop-table td {
        color: #000000 !important;
      }
    }

/* --- Tender Page Styles --- */
/* Dedicated Tender Notices Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .tender-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .tender-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .tender-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .tender-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 760px;
      line-height: 1.5;
    }
    .tender-badge-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.12);
      border: 1px solid rgba(255, 255, 255, 0.25);
      border-radius: 30px;
      padding: 6px 16px;
      font-size: 0.82rem;
      font-weight: 600;
      backdrop-filter: blur(6px);
    }

    .tender-main-content {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .tender-main-content {
      background: #0b1329;
    }

    /* KPI Highlights */
    .tender-kpi-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 16px;
      margin-bottom: 28px;
    }
    .tender-kpi-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 16px 20px;
      display: flex;
      align-items: center;
      gap: 16px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      transition: transform 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .tender-kpi-card {
      background: #1e293b;
      border-color: #334155;
    }
    .tender-kpi-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px rgba(0, 51, 102, 0.08);
    }
    .kpi-icon-wrap {
      width: 46px;
      height: 46px;
      border-radius: 10px;
      background: #e0f2fe;
      color: #003366;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    body.dark-mode .kpi-icon-wrap {
      background: #0f172a;
      color: #38bdf8;
    }
    .kpi-number {
      font-size: 1.45rem;
      font-weight: 900;
      color: #003366;
      line-height: 1;
      margin-bottom: 4px;
    }
    body.dark-mode .kpi-number {
      color: #60a5fa;
    }
    .kpi-title {
      font-size: 0.8rem;
      font-weight: 600;
      color: #64748b;
      text-transform: uppercase;
      letter-spacing: 0.3px;
    }
    body.dark-mode .kpi-title {
      color: #94a3b8;
    }

    /* Filter & Search Bar */
    .tender-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 18px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 16px;
    }
    body.dark-mode .tender-control-card {
      background: #1e293b;
      border-color: #334155;
    }
    .tender-search-box {
      position: relative;
      flex: 1;
      min-width: 280px;
      max-width: 450px;
    }
    .tender-search-icon {
      position: absolute;
      left: 12px;
      top: 50%;
      transform: translateY(-50%);
      width: 16px;
      height: 16px;
      fill: #64748b;
      pointer-events: none;
    }
    .tender-search-input {
      width: 100%;
      padding: 10px 14px 10px 38px;
      font-size: 0.9rem;
      border: 1px solid #cbd5e1;
      border-radius: 8px;
      background: #f8fafc;
      color: #0f172a;
      outline: none;
      transition: all 0.2s;
    }
    .tender-search-input:focus {
      border-color: #003366;
      background: #ffffff;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.15);
    }
    body.dark-mode .tender-search-input {
      background: #0f172a;
      border-color: #475569;
      color: #f1f5f9;
    }
    body.dark-mode .tender-search-input:focus {
      border-color: #3b82f6;
    }

    .tender-filters-group {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
    }
    .filter-pill-btn {
      background: #f1f5f9;
      border: 1px solid #cbd5e1;
      color: #334155;
      padding: 6px 14px;
      border-radius: 20px;
      font-size: 0.82rem;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s;
    }
    body.dark-mode .filter-pill-btn {
      background: #0f172a;
      border-color: #334155;
      color: #cbd5e1;
    }
    .filter-pill-btn:hover, .filter-pill-btn.active {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }
    body.dark-mode .filter-pill-btn:hover, body.dark-mode .filter-pill-btn.active {
      background: #3b82f6;
      border-color: #3b82f6;
    }

    /* Tender Table Card */
    .tender-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05);
      margin-bottom: 28px;
    }
    body.dark-mode .tender-table-card {
      background: #1e293b;
      border-color: #334155;
    }
    .tender-card-header {
      background: linear-gradient(135deg, #002244 0%, #003366 100%);
      color: #ffffff;
      padding: 16px 24px;
      border-bottom: 3px solid #c59b27;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    .tender-card-header h2 {
      font-size: 1.25rem;
      font-weight: 800;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .btn-print-table {
      background: rgba(255, 255, 255, 0.15);
      border: 1px solid rgba(255, 255, 255, 0.3);
      color: #ffffff;
      padding: 6px 14px;
      border-radius: 6px;
      font-size: 0.8rem;
      font-weight: 600;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s;
    }
    .btn-print-table:hover {
      background: rgba(255, 255, 255, 0.28);
    }

    /* Table Styles */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .tender-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.9rem;
    }
    .tender-table thead th {
      background: #f8fafc;
      color: #003366;
      font-weight: 800;
      font-size: 0.82rem;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      padding: 14px 18px;
      border-bottom: 2px solid #cbd5e1;
      white-space: nowrap;
      text-align: left;
    }
    body.dark-mode .tender-table thead th {
      background: #0f172a;
      color: #93c5fd;
      border-bottom-color: #334155;
    }
    .tender-table tbody tr {
      border-bottom: 1px solid #edf2f7;
      transition: background 0.15s ease;
    }
    body.dark-mode .tender-table tbody tr {
      border-bottom-color: #334155;
    }
    .tender-table tbody tr:nth-child(even) {
      background: #fafbfc;
    }
    body.dark-mode .tender-table tbody tr:nth-child(even) {
      background: #172033;
    }
    .tender-table tbody tr:hover {
      background: #f0f7ff;
    }
    body.dark-mode .tender-table tbody tr:hover {
      background: #1e3a5f;
    }
    .tender-table td {
      padding: 16px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .tender-table td {
      color: #e2e8f0;
    }

    /* Cell Elements */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.82rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .rc-badge {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      padding: 4px 10px;
      border-radius: 6px;
      font-size: 0.82rem;
      font-weight: 800;
      letter-spacing: 0.5px;
      text-transform: uppercase;
    }
    .rc-badge-kolkata {
      background: #e0f2fe;
      color: #0369a1;
      border: 1px solid #bae6fd;
    }
    body.dark-mode .rc-badge-kolkata {
      background: #082f49;
      color: #7dd3fc;
      border-color: #0369a1;
    }
    .rc-badge-pune {
      background: #fef3c7;
      color: #92400e;
      border: 1px solid #fde68a;
    }
    body.dark-mode .rc-badge-pune {
      background: #451a03;
      color: #fde68a;
      border-color: #92400e;
    }

    .tender-title-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      display: block;
      margin-bottom: 6px;
      line-height: 1.4;
      transition: color 0.2s;
    }
    body.dark-mode .tender-title-link {
      color: #f1f5f9;
    }
    .tender-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .tender-title-link:hover {
      color: #60a5fa;
    }
    .tender-subinfo {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
      font-size: 0.78rem;
      color: #64748b;
    }
    body.dark-mode .tender-subinfo {
      color: #94a3b8;
    }
    .tender-cat-tag {
      background: #f1f5f9;
      padding: 2px 8px;
      border-radius: 4px;
      font-weight: 600;
      border: 1px solid #e2e8f0;
    }
    body.dark-mode .tender-cat-tag {
      background: #0f172a;
      border-color: #334155;
      color: #cbd5e1;
    }

    /* PDF Action Button */
    .btn-pdf-download {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #dc2626;
      color: #ffffff;
      padding: 6px 14px;
      border-radius: 6px;
      font-size: 0.8rem;
      font-weight: 700;
      text-decoration: none;
      border: none;
      cursor: pointer;
      box-shadow: 0 2px 6px rgba(220, 38, 38, 0.2);
      transition: all 0.2s ease;
      white-space: nowrap;
    }
    .btn-pdf-download:hover {
      background: #b91c1c;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 10px rgba(220, 38, 38, 0.35);
    }
    .btn-pdf-download svg {
      width: 14px;
      height: 14px;
      fill: currentColor;
    }

    .date-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-weight: 700;
      font-size: 0.86rem;
      color: #0f172a;
      background: #f8fafc;
      padding: 6px 12px;
      border-radius: 6px;
      border: 1px solid #e2e8f0;
      white-space: nowrap;
    }
    body.dark-mode .date-badge {
      background: #0f172a;
      color: #f1f5f9;
      border-color: #334155;
    }
    .date-badge-none {
      color: #94a3b8;
      font-weight: 500;
    }

    /* Notice Information Box */
    .tender-notice-box {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-left: 5px solid #c59b27;
      border-radius: 10px;
      padding: 22px 26px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
    }
    body.dark-mode .tender-notice-box {
      background: #1e293b;
      border-color: #334155;
      border-left-color: #c59b27;
    }
    .tender-notice-box h3 {
      font-size: 1.1rem;
      font-weight: 800;
      color: #003366;
      margin: 0 0 10px 0;
      display: flex;
      align-items: center;
      gap: 8px;
    }
    body.dark-mode .tender-notice-box h3 {
      color: #60a5fa;
    }
    .tender-notice-box ul {
      margin: 0;
      padding-left: 20px;
      color: #475569;
      font-size: 0.88rem;
      line-height: 1.6;
    }
    body.dark-mode .tender-notice-box ul {
      color: #cbd5e1;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .tender-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .tender-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .tender-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .tender-card-header {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .tender-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .tender-table td {
        color: #000000 !important;
      }
    }

/* --- Circulars Page Styles --- */
/* Dedicated Circulars Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .circular-banner {
      background: linear-gradient(135deg, #064e3b 0%, #047857 50%, #003366 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .circular-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .circular-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .circular-banner p {
      font-size: 0.95rem;
      opacity: 0.92;
      margin: 0;
      max-width: 760px;
      line-height: 1.5;
    }
    .circular-badge-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.15);
      border: 1px solid rgba(255, 255, 255, 0.25);
      backdrop-filter: blur(8px);
      padding: 8px 16px;
      border-radius: 50px;
      font-size: 0.86rem;
      font-weight: 600;
    }
    .circular-badge-pill .pill-dot {
      width: 10px;
      height: 10px;
      background: #34d399;
      border-radius: 50%;
      box-shadow: 0 0 8px #34d399;
    }

    /* Page Content Wrapper */
    .circular-main-wrap {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 60vh;
    }
    body.dark-mode .circular-main-wrap {
      background: #0b1120;
    }

    /* KPI Highlights */
    .circular-kpi-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 16px;
      margin-bottom: 28px;
    }
    .circular-kpi-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 16px 20px;
      display: flex;
      align-items: center;
      gap: 16px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      transition: transform 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .circular-kpi-card {
      background: #1e293b;
      border-color: #334155;
    }
    .circular-kpi-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px rgba(0, 51, 102, 0.08);
    }
    .kpi-icon-wrap {
      width: 46px;
      height: 46px;
      border-radius: 10px;
      background: #d1fae5;
      color: #065f46;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    body.dark-mode .kpi-icon-wrap {
      background: #064e3b;
      color: #6ee7b7;
    }
    .kpi-number {
      font-size: 1.45rem;
      font-weight: 900;
      color: #065f46;
      line-height: 1;
      margin-bottom: 4px;
    }
    body.dark-mode .kpi-number {
      color: #34d399;
    }
    .kpi-title {
      font-size: 0.8rem;
      font-weight: 600;
      color: #64748b;
      text-transform: uppercase;
      letter-spacing: 0.3px;
    }
    body.dark-mode .kpi-title {
      color: #94a3b8;
    }

    /* Controls Bar (Search + Filter Tabs) */
    .circular-controls-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 20px 24px;
      margin-bottom: 26px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
      display: flex;
      flex-direction: column;
      gap: 16px;
    }
    body.dark-mode .circular-controls-card {
      background: #1e293b;
      border-color: #334155;
    }
    .circular-search-row {
      display: flex;
      gap: 14px;
      align-items: center;
      flex-wrap: wrap;
    }
    .circular-search-box {
      flex: 1;
      min-width: 260px;
      position: relative;
    }
    .circular-search-box input {
      width: 100%;
      padding: 10px 14px 10px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      outline: none;
      transition: border-color 0.2s, box-shadow 0.2s;
      background: #ffffff;
      color: #0f172a;
    }
    body.dark-mode .circular-search-box input {
      background: #0f172a;
      border-color: #334155;
      color: #f1f5f9;
    }
    .circular-search-box input:focus {
      border-color: #047857;
      box-shadow: 0 0 0 3px rgba(4, 120, 87, 0.15);
    }
    .circular-search-box svg {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      color: #94a3b8;
    }
    .btn-print-table {
      background: #003366;
      color: #ffffff;
      border: none;
      padding: 10px 18px;
      border-radius: 8px;
      font-size: 0.88rem;
      font-weight: 700;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      transition: background 0.2s;
    }
    .btn-print-table:hover {
      background: #002244;
    }

    .filter-tabs-row {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      align-items: center;
    }
    .filter-btn {
      background: #f1f5f9;
      border: 1px solid #cbd5e1;
      color: #475569;
      padding: 7px 16px;
      border-radius: 20px;
      font-size: 0.84rem;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s;
    }
    body.dark-mode .filter-btn {
      background: #0f172a;
      border-color: #334155;
      color: #94a3b8;
    }
    .filter-btn.active, .filter-btn:hover {
      background: #047857;
      border-color: #047857;
      color: #ffffff;
    }
    body.dark-mode .filter-btn.active, body.dark-mode .filter-btn:hover {
      background: #34d399;
      border-color: #34d399;
      color: #064e3b;
    }

    /* Table Container */
    .table-container-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
      overflow: hidden;
    }
    body.dark-mode .table-container-card {
      background: #1e293b;
      border-color: #334155;
    }
    .circular-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.9rem;
    }
    .circular-table thead th {
      background: #f8fafc;
      color: #003366;
      font-weight: 800;
      font-size: 0.82rem;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      padding: 14px 18px;
      border-bottom: 2px solid #cbd5e1;
      text-align: left;
      white-space: nowrap;
    }
    body.dark-mode .circular-table thead th {
      background: #0f172a;
      color: #93c5fd;
      border-bottom-color: #334155;
    }
    .circular-table tbody tr {
      border-bottom: 1px solid #edf2f7;
      transition: background 0.15s ease;
    }
    body.dark-mode .circular-table tbody tr {
      border-bottom-color: #334155;
    }
    .circular-table tbody tr:hover {
      background: #f0fdf4;
    }
    body.dark-mode .circular-table tbody tr:hover {
      background: #1e293b;
    }
    .circular-table td {
      padding: 14px 18px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .circular-table td {
      color: #f1f5f9;
    }
    .policy-ref-badge {
      display: inline-block;
      background: #e2e8f0;
      color: #0f172a;
      font-family: monospace;
      font-weight: 700;
      font-size: 0.78rem;
      padding: 3px 8px;
      border-radius: 4px;
      border: 1px solid #cbd5e1;
    }
    body.dark-mode .policy-ref-badge {
      background: #0f172a;
      border-color: #334155;
      color: #38bdf8;
    }
    .circular-title-text {
      font-weight: 700;
      color: #003366;
      font-size: 0.95rem;
      line-height: 1.4;
      margin-bottom: 4px;
    }
    body.dark-mode .circular-title-text {
      color: #60a5fa;
    }
    .circular-summary-text {
      font-size: 0.82rem;
      color: #64748b;
      line-height: 1.45;
      margin: 0;
    }
    body.dark-mode .circular-summary-text {
      color: #94a3b8;
    }
    .badge-circ-type {
      padding: 3px 10px;
      border-radius: 4px;
      font-size: 0.72rem;
      font-weight: 800;
      text-transform: uppercase;
    }
    .badge-circ-type.badge-circular {
      background: #fef3c7;
      color: #b45309;
      border: 1px solid #fde68a;
    }
    .badge-circ-type.badge-policy {
      background: #dbeafe;
      color: #1e40af;
      border: 1px solid #bfdbfe;
    }
    .badge-circ-type.badge-order {
      background: #dcfce7;
      color: #15803d;
      border: 1px solid #bbf7d0;
    }
    .badge-circ-type.badge-advisory {
      background: #ede9fe;
      color: #6d28d9;
      border: 1px solid #ddd6fe;
    }
    .btn-pdf-circ {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #dc2626;
      color: #ffffff;
      padding: 6px 14px;
      border-radius: 6px;
      font-size: 0.8rem;
      font-weight: 700;
      text-decoration: none;
      transition: background 0.2s, transform 0.15s;
      white-space: nowrap;
    }
    .btn-pdf-circ:hover {
      background: #b91c1c;
      transform: translateY(-1px);
    }
    .no-results-box {
      padding: 40px;
      text-align: center;
      color: #64748b;
    }
    @media print {
      .top-utility-strip, .main-header, .main-navbar, .breadcrumb-bar, .circular-controls-card, .btn-print-table, .portal-footer {
        display: none !important;
      }
      .circular-banner {
        background: #ffffff !important;
        color: #000000 !important;
        padding: 10px 0 !important;
        border-bottom: 2px solid #000 !important;
      }
      .circular-table th {
        background: #eee !important;
        color: #000 !important;
      }
    }

/* --- News Page Styles --- */
/* Dedicated News Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .news-banner {
      background: linear-gradient(135deg, #0b2545 0%, #134074 50%, #003366 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .news-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .news-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .news-banner p {
      font-size: 0.95rem;
      opacity: 0.92;
      margin: 0;
      max-width: 760px;
      line-height: 1.5;
    }
    .news-badge-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.15);
      border: 1px solid rgba(255, 255, 255, 0.25);
      backdrop-filter: blur(8px);
      padding: 8px 16px;
      border-radius: 50px;
      font-size: 0.86rem;
      font-weight: 600;
    }
    .news-badge-pill .pill-dot {
      width: 10px;
      height: 10px;
      background: #22c55e;
      border-radius: 50%;
      box-shadow: 0 0 8px #22c55e;
    }

    /* Page Content Wrapper */
    .news-main-wrap {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 60vh;
    }
    body.dark-mode .news-main-wrap {
      background: #0b1120;
    }

    /* KPI Highlights */
    .news-kpi-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 16px;
      margin-bottom: 28px;
    }
    .news-kpi-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 16px 20px;
      display: flex;
      align-items: center;
      gap: 16px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      transition: transform 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .news-kpi-card {
      background: #1e293b;
      border-color: #334155;
    }
    .news-kpi-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px rgba(0, 51, 102, 0.08);
    }
    .kpi-icon-wrap {
      width: 46px;
      height: 46px;
      border-radius: 10px;
      background: #e0f2fe;
      color: #003366;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    body.dark-mode .kpi-icon-wrap {
      background: #0f172a;
      color: #38bdf8;
    }
    .kpi-number {
      font-size: 1.45rem;
      font-weight: 900;
      color: #003366;
      line-height: 1;
      margin-bottom: 4px;
    }
    body.dark-mode .kpi-number {
      color: #60a5fa;
    }
    .kpi-title {
      font-size: 0.8rem;
      font-weight: 600;
      color: #64748b;
      text-transform: uppercase;
      letter-spacing: 0.3px;
    }
    body.dark-mode .kpi-title {
      color: #94a3b8;
    }

    /* Controls Bar (Search + Filter Tabs) */
    .news-controls-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 20px 24px;
      margin-bottom: 26px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
      display: flex;
      flex-direction: column;
      gap: 16px;
    }
    body.dark-mode .news-controls-card {
      background: #1e293b;
      border-color: #334155;
    }
    .news-search-row {
      display: flex;
      gap: 14px;
      align-items: center;
      flex-wrap: wrap;
    }
    .news-search-box {
      flex: 1;
      min-width: 260px;
      position: relative;
    }
    .news-search-box input {
      width: 100%;
      padding: 10px 14px 10px 42px;
      border: 1.5px solid #cbd5e1;
      border-radius: 8px;
      font-size: 0.92rem;
      outline: none;
      transition: border-color 0.2s, box-shadow 0.2s;
      background: #ffffff;
      color: #0f172a;
    }
    body.dark-mode .news-search-box input {
      background: #0f172a;
      border-color: #334155;
      color: #f1f5f9;
    }
    .news-search-box input:focus {
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.12);
    }
    .news-search-box svg {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      color: #94a3b8;
    }
    .filter-tabs-row {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      align-items: center;
    }
    .filter-btn {
      background: #f1f5f9;
      border: 1px solid #cbd5e1;
      color: #475569;
      padding: 7px 16px;
      border-radius: 20px;
      font-size: 0.84rem;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s;
    }
    body.dark-mode .filter-btn {
      background: #0f172a;
      border-color: #334155;
      color: #94a3b8;
    }
    .filter-btn.active, .filter-btn:hover {
      background: #003366;
      border-color: #003366;
      color: #ffffff;
    }
    body.dark-mode .filter-btn.active, body.dark-mode .filter-btn:hover {
      background: #38bdf8;
      border-color: #38bdf8;
      color: #0f172a;
    }

    /* News Cards List */
    .news-items-grid {
      display: flex;
      flex-direction: column;
      gap: 16px;
    }
    .news-item-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-left: 5px solid #003366;
      border-radius: 12px;
      padding: 22px 26px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
      transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
    body.dark-mode .news-item-card {
      background: #1e293b;
      border-color: #334155;
      border-left-color: #38bdf8;
    }
    .news-item-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 8px 20px rgba(0, 51, 102, 0.08);
      border-left-color: #c59b27;
    }
    .news-card-meta {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
    }
    .badge-tag {
      padding: 3px 10px;
      border-radius: 4px;
      font-size: 0.72rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }
    .badge-tag.badge-new {
      background: #fee2e2;
      color: #dc2626;
      border: 1px solid #fca5a5;
    }
    .badge-tag.badge-press {
      background: #e0f2fe;
      color: #0369a1;
      border: 1px solid #bae6fd;
    }
    .badge-tag.badge-event {
      background: #fef3c7;
      color: #b45309;
      border: 1px solid #fde68a;
    }
    .badge-tag.badge-announcement {
      background: #ede9fe;
      color: #6d28d9;
      border: 1px solid #ddd6fe;
    }
    .news-card-date {
      color: #64748b;
      font-size: 0.84rem;
      font-weight: 600;
      display: flex;
      align-items: center;
      gap: 6px;
    }
    body.dark-mode .news-card-date {
      color: #94a3b8;
    }
    .news-card-title {
      font-size: 1.15rem;
      font-weight: 800;
      color: #0f172a;
      line-height: 1.45;
      margin: 0;
    }
    body.dark-mode .news-card-title {
      color: #f1f5f9;
    }
    .news-card-title-hi {
      font-size: 0.95rem;
      color: #475569;
      font-weight: 500;
      margin: 0;
    }
    body.dark-mode .news-card-title-hi {
      color: #94a3b8;
    }
    .news-card-desc {
      color: #334155;
      font-size: 0.92rem;
      line-height: 1.6;
      margin: 0;
    }
    body.dark-mode .news-card-desc {
      color: #cbd5e1;
    }
    .news-card-footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding-top: 10px;
      border-top: 1px solid #f1f5f9;
      flex-wrap: wrap;
    }
    body.dark-mode .news-card-footer {
      border-top-color: #334155;
    }
    .btn-download-pdf {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #dc2626;
      color: #ffffff;
      padding: 7px 16px;
      border-radius: 6px;
      font-size: 0.84rem;
      font-weight: 700;
      text-decoration: none;
      transition: background 0.2s, transform 0.15s;
    }
    .btn-download-pdf:hover {
      background: #b91c1c;
      transform: translateY(-1px);
    }
    .no-results-box {
      background: #ffffff;
      border: 1px dashed #cbd5e1;
      border-radius: 12px;
      padding: 40px;
      text-align: center;
      color: #64748b;
    }
    body.dark-mode .no-results-box {
      background: #1e293b;
      border-color: #334155;
      color: #94a3b8;
    }

/* --- Advertisement Page Styles --- */
/* Dedicated Advertisement & Vacancies Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    /* Page Hero Banner */
    .advt-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .advt-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .advt-banner h1 {
      font-size: 1.95rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .advt-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 760px;
      line-height: 1.5;
    }
    .advt-badge-pill {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.12);
      border: 1px solid rgba(255, 255, 255, 0.25);
      border-radius: 30px;
      padding: 6px 16px;
      font-size: 0.82rem;
      font-weight: 600;
      backdrop-filter: blur(6px);
    }

    .advt-main-content {
      padding: 32px 0 60px 0;
      background: #f8fafc;
      min-height: 600px;
    }
    body.dark-mode .advt-main-content {
      background: #0b1329;
    }

    /* Application Form Download Banner */
    .app-form-banner {
      background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
      border: 2px dashed #f59e0b;
      border-radius: 12px;
      padding: 20px 28px;
      margin-bottom: 28px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 16px;
      box-shadow: 0 4px 14px rgba(245, 158, 11, 0.08);
    }
    body.dark-mode .app-form-banner {
      background: linear-gradient(135deg, #1e293b 0%, #172554 100%);
      border-color: #eab308;
      box-shadow: none;
    }
    .app-form-info {
      display: flex;
      align-items: center;
      gap: 16px;
    }
    .app-form-icon-wrap {
      width: 48px;
      height: 48px;
      background: #fef08a;
      border: 1px solid #facc15;
      color: #854d0e;
      border-radius: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    body.dark-mode .app-form-icon-wrap {
      background: #422006;
      border-color: #a16207;
      color: #fef08a;
    }
    .app-form-title {
      font-size: 1.05rem;
      font-weight: 800;
      color: #92400e;
      margin: 0 0 4px 0;
    }
    body.dark-mode .app-form-title {
      color: #fef08a;
    }
    .app-form-sub {
      font-size: 0.85rem;
      color: #78350f;
      margin: 0;
    }
    body.dark-mode .app-form-sub {
      color: #cbd5e1;
    }
    .btn-download-appform {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: #b45309;
      color: #ffffff;
      padding: 10px 22px;
      border-radius: 8px;
      font-size: 0.9rem;
      font-weight: 800;
      text-decoration: none;
      box-shadow: 0 2px 8px rgba(180, 83, 9, 0.25);
      transition: all 0.2s ease;
      white-space: nowrap;
    }
    .btn-download-appform:hover {
      background: #92400e;
      color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 4px 12px rgba(180, 83, 9, 0.4);
    }
    body.dark-mode .btn-download-appform {
      background: #eab308;
      color: #0f172a;
    }
    body.dark-mode .btn-download-appform:hover {
      background: #facc15;
      color: #000000;
    }

    /* KPI Highlights */
    .advt-kpi-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 16px;
      margin-bottom: 28px;
    }
    .advt-kpi-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      padding: 16px 20px;
      display: flex;
      align-items: center;
      gap: 16px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      transition: transform 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .advt-kpi-card {
      background: #1e293b;
      border-color: #334155;
    }
    .advt-kpi-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px rgba(0, 51, 102, 0.08);
    }
    .kpi-icon-wrap {
      width: 44px;
      height: 44px;
      border-radius: 10px;
      background: #e0f2fe;
      color: #003366;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }
    body.dark-mode .kpi-icon-wrap {
      background: #0f172a;
      color: #38bdf8;
    }
    .kpi-number {
      font-size: 1.45rem;
      font-weight: 900;
      color: #003366;
      line-height: 1;
      margin-bottom: 4px;
    }
    body.dark-mode .kpi-number {
      color: #60a5fa;
    }
    .kpi-title {
      font-size: 0.8rem;
      font-weight: 600;
      color: #64748b;
      text-transform: uppercase;
      letter-spacing: 0.3px;
    }
    body.dark-mode .kpi-title {
      color: #94a3b8;
    }

    /* Filter & Search Bar */
    .advt-control-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 18px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 16px;
    }
    body.dark-mode .advt-control-card {
      background: #1e293b;
      border-color: #334155;
    }
    .advt-search-box {
      position: relative;
      flex: 1;
      min-width: 260px;
      max-width: 380px;
    }
    .advt-search-icon {
      position: absolute;
      left: 12px;
      top: 50%;
      transform: translateY(-50%);
      width: 16px;
      height: 16px;
      fill: #64748b;
      pointer-events: none;
    }
    .advt-search-input {
      width: 100%;
      padding: 10px 14px 10px 38px;
      font-size: 0.9rem;
      border: 1px solid #cbd5e1;
      border-radius: 8px;
      background: #f8fafc;
      color: #0f172a;
      outline: none;
      transition: all 0.2s;
    }
    .advt-search-input:focus {
      border-color: #003366;
      background: #ffffff;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.15);
    }
    body.dark-mode .advt-search-input {
      background: #0f172a;
      border-color: #475569;
      color: #f1f5f9;
    }
    body.dark-mode .advt-search-input:focus {
      border-color: #3b82f6;
    }

    .advt-filters-group {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
    }
    .rc-dropdown-filter {
      padding: 10px 16px;
      font-size: 0.88rem;
      font-weight: 600;
      border: 1px solid #cbd5e1;
      border-radius: 8px;
      background: #ffffff;
      color: #003366;
      cursor: pointer;
      outline: none;
      transition: all 0.2s;
    }
    body.dark-mode .rc-dropdown-filter {
      background: #0f172a;
      border-color: #475569;
      color: #f8fafc;
    }
    body.dark-mode .rc-dropdown-filter:focus {
      border-color: #3b82f6;
    }
    .filter-btn-pill {
      background: #f1f5f9;
      border: 1px solid #cbd5e1;
      color: #334155;
      padding: 8px 14px;
      border-radius: 20px;
      font-size: 0.82rem;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s;
    }
    body.dark-mode .filter-btn-pill {
      background: #0f172a;
      border-color: #334155;
      color: #cbd5e1;
    }
    .filter-btn-pill:hover, .filter-btn-pill.active {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }
    body.dark-mode .filter-btn-pill:hover, body.dark-mode .filter-btn-pill.active {
      background: #3b82f6;
      border-color: #3b82f6;
    }

    /* Advertisement Table Card */
    .advt-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05);
      margin-bottom: 28px;
    }
    body.dark-mode .advt-table-card {
      background: #1e293b;
      border-color: #334155;
    }
    .advt-card-header {
      background: linear-gradient(135deg, #002244 0%, #003366 100%);
      color: #ffffff;
      padding: 16px 24px;
      border-bottom: 3px solid #c59b27;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 12px;
    }
    .advt-card-header h2 {
      font-size: 1.25rem;
      font-weight: 800;
      margin: 0;
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .btn-print-table {
      background: rgba(255, 255, 255, 0.15);
      border: 1px solid rgba(255, 255, 255, 0.3);
      color: #ffffff;
      padding: 6px 14px;
      border-radius: 6px;
      font-size: 0.8rem;
      font-weight: 600;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      transition: background 0.2s;
    }
    .btn-print-table:hover {
      background: rgba(255, 255, 255, 0.28);
    }

    /* Table Styles */
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .advt-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.88rem;
    }
    .advt-table thead th {
      background: #f8fafc;
      color: #003366;
      font-weight: 800;
      font-size: 0.8rem;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      padding: 14px 16px;
      border-bottom: 2px solid #cbd5e1;
      white-space: nowrap;
      text-align: left;
    }
    body.dark-mode .advt-table thead th {
      background: #0f172a;
      color: #93c5fd;
      border-bottom-color: #334155;
    }
    .advt-table tbody tr {
      border-bottom: 1px solid #edf2f7;
      transition: background 0.15s ease;
    }
    body.dark-mode .advt-table tbody tr {
      border-bottom-color: #334155;
    }
    .advt-table tbody tr:nth-child(even) {
      background: #fafbfc;
    }
    body.dark-mode .advt-table tbody tr:nth-child(even) {
      background: #172033;
    }
    .advt-table tbody tr:hover {
      background: #f0f7ff;
    }
    body.dark-mode .advt-table tbody tr:hover {
      background: #1e3a5f;
    }
    .advt-table td {
      padding: 14px 16px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .advt-table td {
      color: #e2e8f0;
    }

    /* Cell Badges */
    .td-sno-badge {
      display: inline-block;
      width: 28px;
      height: 28px;
      line-height: 28px;
      text-align: center;
      background: #e0f2fe;
      color: #003366;
      border-radius: 50%;
      font-weight: 800;
      font-size: 0.8rem;
    }
    body.dark-mode .td-sno-badge {
      background: #0f172a;
      color: #60a5fa;
    }

    .rc-tag {
      font-weight: 800;
      color: #003366;
      font-size: 0.88rem;
      letter-spacing: 0.3px;
      display: inline-block;
      padding: 4px 10px;
      background: #f1f5f9;
      border-radius: 6px;
      border: 1px solid #cbd5e1;
    }
    body.dark-mode .rc-tag {
      background: #0f172a;
      border-color: #334155;
      color: #93c5fd;
    }

    .advt-link-box {
      display: flex;
      align-items: center;
      gap: 10px;
    }
    .advt-link {
      color: #003366;
      font-weight: 700;
      font-size: 0.92rem;
      text-decoration: none;
      line-height: 1.4;
      transition: color 0.2s;
    }
    body.dark-mode .advt-link {
      color: #f1f5f9;
    }
    .advt-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .advt-link:hover {
      color: #60a5fa;
    }

    .pdf-badge-icon {
      background: #dc2626;
      color: #ffffff;
      padding: 3px 6px;
      border-radius: 4px;
      font-size: 0.68rem;
      font-weight: 900;
      letter-spacing: 0.5px;
      flex-shrink: 0;
    }

    .date-pill {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: 0.84rem;
      font-weight: 600;
      color: #334155;
      white-space: nowrap;
    }
    body.dark-mode .date-pill {
      color: #cbd5e1;
    }
    .date-pill svg {
      width: 13px;
      height: 13px;
      fill: #64748b;
    }
    .date-none {
      color: #94a3b8;
    }

    /* Result Button */
    .btn-result-view {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #16a34a;
      color: #ffffff;
      padding: 5px 12px;
      border-radius: 6px;
      font-size: 0.78rem;
      font-weight: 700;
      text-decoration: none;
      box-shadow: 0 2px 6px rgba(22, 163, 74, 0.2);
      transition: all 0.2s ease;
      white-space: nowrap;
    }
    .btn-result-view:hover {
      background: #15803d;
      color: #ffffff;
      transform: translateY(-1px);
    }
    .btn-result-view svg {
      width: 12px;
      height: 12px;
      fill: currentColor;
    }

    /* Instructions Box */
    .advt-instructions-box {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-left: 5px solid #003366;
      border-radius: 10px;
      padding: 22px 26px;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
    }
    body.dark-mode .advt-instructions-box {
      background: #1e293b;
      border-color: #334155;
      border-left-color: #3b82f6;
    }
    .advt-instructions-box h3 {
      font-size: 1.1rem;
      font-weight: 800;
      color: #003366;
      margin: 0 0 10px 0;
      display: flex;
      align-items: center;
      gap: 8px;
    }
    body.dark-mode .advt-instructions-box h3 {
      color: #60a5fa;
    }
    .advt-instructions-box ul {
      margin: 0;
      padding-left: 20px;
      color: #475569;
      font-size: 0.88rem;
      line-height: 1.6;
    }
    body.dark-mode .advt-instructions-box ul {
      color: #cbd5e1;
    }

    /* Print Styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .app-form-banner, .advt-control-card, .btn-print-table, .site-footer {
        display: none !important;
      }
      .advt-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .advt-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .advt-card-header {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .advt-table th {
        background: #f0f0f0 !important;
        color: #000000 !important;
      }
      .advt-table td {
        color: #000000 !important;
      }
    }

/* --- Central Organisation Page Styles --- */
/* Dedicated Directory Page Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    .dir-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 36px 0;
      border-bottom: 3px solid #c59b27;
      position: relative;
    }
    .dir-banner-inner {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      flex-wrap: wrap;
    }
    .dir-banner h1 {
      font-size: 1.9rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .dir-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
      max-width: 720px;
      line-height: 1.5;
    }
    .dir-banner-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: rgba(255, 255, 255, 0.12);
      border: 1px solid rgba(255, 255, 255, 0.25);
      border-radius: 30px;
      padding: 6px 16px;
      font-size: 0.82rem;
      font-weight: 600;
      backdrop-filter: blur(6px);
    }

    .dir-main-section {
      padding: 36px 0 60px 0;
      background: #f8fafc;
    }
    body.dark-mode .dir-main-section {
      background: #0b1329;
    }

    /* Executive Leadership Cards */
    .exec-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
      gap: 20px;
      margin-bottom: 32px;
    }
    .exec-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 24px;
      display: flex;
      gap: 18px;
      align-items: center;
      box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
      border-top: 4px solid #003366;
      transition: transform 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .exec-card {
      background: #1e293b;
      border-color: #334155;
      border-top-color: #3b82f6;
    }
    .exec-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 8px 24px rgba(0, 51, 102, 0.12);
    }
    .exec-avatar {
      width: 64px;
      height: 64px;
      border-radius: 50%;
      background: linear-gradient(135deg, #003366, #0a4b82);
      color: #ffffff;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 800;
      font-size: 1.25rem;
      flex-shrink: 0;
      border: 2px solid #c59b27;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
    }
    .exec-info h3 {
      font-size: 1.05rem;
      font-weight: 800;
      color: #0f172a;
      margin: 0 0 4px 0;
    }
    body.dark-mode .exec-info h3 {
      color: #f1f5f9;
    }
    .exec-apptitle {
      font-size: 0.8rem;
      font-weight: 700;
      text-transform: uppercase;
      color: #c59b27;
      letter-spacing: 0.5px;
      margin-bottom: 8px;
    }
    body.dark-mode .exec-apptitle {
      color: #facc15;
    }
    .exec-contacts {
      display: flex;
      flex-direction: column;
      gap: 4px;
      font-size: 0.84rem;
    }
    .exec-contact-item {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      color: #475569;
      text-decoration: none;
    }
    body.dark-mode .exec-contact-item {
      color: #94a3b8;
    }
    .exec-contact-item:hover {
      color: #003366;
      font-weight: 600;
    }
    body.dark-mode .exec-contact-item:hover {
      color: #60a5fa;
    }

    /* Controls Bar: Search & Filters */
    .dir-controls-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 18px 24px;
      margin-bottom: 24px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
    }
    body.dark-mode .dir-controls-card {
      background: #1e293b;
      border-color: #334155;
    }
    .search-box-wrapper {
      position: relative;
      flex: 1;
      min-width: 280px;
    }
    .search-input-field {
      width: 100%;
      padding: 10px 14px 10px 40px;
      font-size: 0.92rem;
      border: 1px solid #cbd5e1;
      border-radius: 8px;
      background: #f8fafc;
      color: #0f172a;
      transition: border-color 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .search-input-field {
      background: #0f172a;
      border-color: #475569;
      color: #f8fafc;
    }
    .search-input-field:focus {
      outline: none;
      border-color: #003366;
      box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.15);
      background: #ffffff;
    }
    body.dark-mode .search-input-field:focus {
      border-color: #3b82f6;
      box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.25);
      background: #0f172a;
    }
    .search-icon-svg {
      position: absolute;
      left: 12px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      fill: #64748b;
      pointer-events: none;
    }
    .dir-actions-group {
      display: flex;
      align-items: center;
      gap: 12px;
    }
    .dir-count-pill {
      font-size: 0.85rem;
      font-weight: 600;
      color: #475569;
      background: #f1f5f9;
      padding: 6px 14px;
      border-radius: 20px;
      border: 1px solid #e2e8f0;
      white-space: nowrap;
    }
    body.dark-mode .dir-count-pill {
      background: #0f172a;
      border-color: #334155;
      color: #94a3b8;
    }
    .btn-print-dir {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #003366;
      color: #ffffff;
      padding: 9px 18px;
      border-radius: 8px;
      font-size: 0.86rem;
      font-weight: 600;
      border: none;
      cursor: pointer;
      transition: background 0.2s;
    }
    .btn-print-dir:hover {
      background: #002244;
    }
    body.dark-mode .btn-print-dir {
      background: #2563eb;
    }
    body.dark-mode .btn-print-dir:hover {
      background: #1d4ed8;
    }

    /* Filter Pills */
    .filter-pills-wrap {
      display: flex;
      gap: 8px;
      overflow-x: auto;
      padding-bottom: 4px;
      margin-bottom: 16px;
    }
    .filter-pill {
      padding: 6px 14px;
      border-radius: 20px;
      border: 1px solid #cbd5e1;
      background: #ffffff;
      font-size: 0.82rem;
      font-weight: 600;
      color: #475569;
      cursor: pointer;
      white-space: nowrap;
      transition: all 0.2s;
    }
    body.dark-mode .filter-pill {
      background: #1e293b;
      border-color: #334155;
      color: #94a3b8;
    }
    .filter-pill.active, .filter-pill:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }
    body.dark-mode .filter-pill.active, body.dark-mode .filter-pill:hover {
      background: #3b82f6;
      border-color: #3b82f6;
      color: #ffffff;
    }

    /* Directory Table Wrapper */
    .dir-table-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
      margin-bottom: 32px;
    }
    body.dark-mode .dir-table-card {
      background: #1e293b;
      border-color: #334155;
    }
    .table-responsive {
      overflow-x: auto;
      width: 100%;
    }
    .dir-table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.88rem;
      text-align: left;
    }
    .dir-table thead th {
      background: #003366;
      color: #ffffff;
      padding: 14px 16px;
      font-weight: 700;
      font-size: 0.82rem;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      white-space: nowrap;
      border-bottom: 2px solid #c59b27;
    }
    body.dark-mode .dir-table thead th {
      background: #0f172a;
      border-bottom-color: #3b82f6;
    }
    .dir-table tbody tr {
      border-bottom: 1px solid #edf2f7;
      transition: background 0.15s ease-in-out;
    }
    body.dark-mode .dir-table tbody tr {
      border-bottom-color: #334155;
    }
    .dir-table tbody tr:nth-child(even) {
      background: #f8fafc;
    }
    body.dark-mode .dir-table tbody tr:nth-child(even) {
      background: #172033;
    }
    .dir-table tbody tr:hover {
      background: #eff6ff;
    }
    body.dark-mode .dir-table tbody tr:hover {
      background: #1e3a5f;
    }

    /* Cells */
    .dir-table td {
      padding: 14px 16px;
      vertical-align: middle;
      color: #1e293b;
    }
    body.dark-mode .dir-table td {
      color: #e2e8f0;
    }
    .td-sno {
      font-weight: 800;
      color: #003366;
      text-align: center;
      width: 50px;
    }
    body.dark-mode .td-sno {
      color: #60a5fa;
    }
    .td-appointment {
      font-weight: 700;
      color: #003366;
      font-size: 0.86rem;
      max-width: 240px;
    }
    body.dark-mode .td-appointment {
      color: #93c5fd;
    }
    .td-name {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .td-name {
      color: #f8fafc;
    }
    .badge-vacant {
      display: inline-block;
      background: #fee2e2;
      color: #991b1b;
      padding: 2px 8px;
      border-radius: 4px;
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.5px;
    }
    body.dark-mode .badge-vacant {
      background: #450a0a;
      color: #fca5a5;
    }

    /* Contacts formatting */
    .phone-link {
      color: #003366;
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-family: 'Inter', system-ui, -apple-system, sans-serif;
      font-weight: 600;
      transition: color 0.2s;
    }
    body.dark-mode .phone-link {
      color: #38bdf8;
    }
    .phone-link:hover {
      text-decoration: underline;
      color: #b45309;
    }
    body.dark-mode .phone-link:hover {
      color: #93c5fd;
    }

    /* Email Styling: Bold, High-Contrast Black & Crisp Visibility */
    .email-container {
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .email-link {
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      transition: opacity 0.2s;
    }
    .email-text {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
      font-size: 0.92rem;
      font-weight: 700;
      color: #0a0a0a; /* Sharp, bold black for high contrast */
      background: #f1f5f9;
      padding: 5px 10px;
      border-radius: 6px;
      border: 1px solid #cbd5e1;
      letter-spacing: 0.2px;
      display: inline-block;
      transition: all 0.2s;
    }
    .email-link:hover .email-text {
      color: #003366;
      border-color: #003366;
      background: #e0f2fe;
    }
    body.dark-mode .email-text {
      background: #0f172a;
      border-color: #475569;
      color: #ffffff; /* Crisp pure white in dark mode */
      font-weight: 700;
    }
    body.dark-mode .email-link:hover .email-text {
      color: #60a5fa;
      border-color: #3b82f6;
      background: #1e293b;
    }

    .copy-btn {
      background: #ffffff;
      border: 1px solid #cbd5e1;
      padding: 5px 9px;
      border-radius: 5px;
      cursor: pointer;
      font-size: 0.74rem;
      font-weight: 600;
      color: #475569;
      transition: all 0.2s;
    }
    body.dark-mode .copy-btn {
      background: #1e293b;
      border-color: #475569;
      color: #94a3b8;
    }
    .copy-btn:hover {
      background: #003366;
      color: #ffffff;
      border-color: #003366;
    }
    body.dark-mode .copy-btn:hover {
      background: #3b82f6;
      border-color: #3b82f6;
    }

    .tele-cell {
      white-space: nowrap;
      font-weight: 600;
    }
    .tele-badge {
      display: inline-block;
      font-size: 0.7rem;
      font-weight: 700;
      padding: 1px 5px;
      border-radius: 3px;
      margin-right: 4px;
    }
    .tele-badge-civil {
      background: #e0f2fe;
      color: #0369a1;
    }
    body.dark-mode .tele-badge-civil {
      background: #075985;
      color: #e0f2fe;
    }
    .tele-badge-army {
      background: #fef3c7;
      color: #92400e;
    }
    body.dark-mode .tele-badge-army {
      background: #78350f;
      color: #fef3c7;
    }

    /* Print styles */
    @media print {
      .top-utility-strip, .gov-header, .site-navbar, .breadcrumb-bar, .dir-controls-card, .filter-pills-wrap, .site-footer, .copy-btn, .btn-print-dir {
        display: none !important;
      }
      .dir-banner {
        background: #ffffff !important;
        color: #000000 !important;
        border-bottom: 2px solid #000000 !important;
        padding: 10px 0 !important;
      }
      .dir-banner h1 {
        color: #000000 !important;
      }
      .dir-table-card {
        box-shadow: none !important;
        border: 1px solid #000000 !important;
      }
      .dir-table thead th {
        background: #f0f0f0 !important;
        color: #000000 !important;
        border-bottom: 1px solid #000000 !important;
      }
      .dir-table td {
        border-bottom: 1px solid #ccc !important;
        color: #000000 !important;
      }
    }

/* --- MD Message Page Styles --- */
/* Dedicated Page Specific Enhancements */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }
    .page-title-banner {
      background: linear-gradient(135deg, #002244 0%, #003366 50%, #0a4b82 100%);
      color: #ffffff;
      padding: 32px 0;
      border-bottom: 3px solid #c59b27;
    }
    .page-title-banner h1 {
      font-size: 1.85rem;
      font-weight: 900;
      margin: 0 0 8px 0;
      letter-spacing: -0.3px;
    }
    .page-title-banner p {
      font-size: 0.95rem;
      opacity: 0.9;
      margin: 0;
    }
    .md-page-content-section {
      padding: 44px 0 60px 0;
      background: #f8fafc;
    }
    body.dark-mode .md-page-content-section {
      background: #0b1329;
    }

/* --- Search Page Styles --- */
/* Dedicated Search Results Styles */
    .breadcrumb-bar {
      background: #f1f5f9;
      padding: 12px 0;
      border-bottom: 1px solid #e2e8f0;
      font-size: 0.86rem;
    }
    body.dark-mode .breadcrumb-bar {
      background: #0f172a;
      border-bottom-color: #1e293b;
    }
    .breadcrumb-list {
      display: flex;
      align-items: center;
      gap: 8px;
      list-style: none;
      margin: 0;
      padding: 0;
      color: #64748b;
    }
    .breadcrumb-list a {
      color: #003366;
      text-decoration: none;
      font-weight: 600;
    }
    body.dark-mode .breadcrumb-list a {
      color: #60a5fa;
    }
    .breadcrumb-separator {
      color: #94a3b8;
    }
    .breadcrumb-current {
      font-weight: 700;
      color: #0f172a;
    }
    body.dark-mode .breadcrumb-current {
      color: #f1f5f9;
    }

    .search-hero-banner {
      background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #003366 100%);
      color: #ffffff;
      padding: 38px 0;
      border-bottom: 3px solid #c59b27;
    }
    .search-hero-title {
      font-size: 1.85rem;
      font-weight: 900;
      margin: 0 0 16px 0;
    }
    .search-input-group {
      display: flex;
      max-width: 720px;
      gap: 10px;
    }
    .search-page-input {
      flex: 1;
      padding: 12px 18px;
      border-radius: 8px;
      border: 1px solid rgba(255, 255, 255, 0.3);
      background: rgba(255, 255, 255, 0.95);
      color: #0f172a;
      font-size: 1rem;
      outline: none;
    }
    .search-page-input:focus {
      background: #ffffff;
      box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.4);
    }
    .btn-search-submit {
      background: #c59b27;
      color: #002244;
      font-weight: 800;
      border: none;
      padding: 12px 24px;
      border-radius: 8px;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-size: 0.95rem;
      transition: background 0.2s, transform 0.15s;
    }
    .btn-search-submit:hover {
      background: #d4a733;
      transform: translateY(-1px);
    }

    .search-main-container {
      padding: 36px 0 60px 0;
      background: #f8fafc;
      min-height: 60vh;
    }
    body.dark-mode .search-main-container {
      background: #0b1120;
    }

    .search-meta-bar {
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 16px;
      margin-bottom: 24px;
      padding-bottom: 16px;
      border-bottom: 1px solid #e2e8f0;
    }
    body.dark-mode .search-meta-bar {
      border-bottom-color: #334155;
    }
    .search-count-text {
      font-size: 1.05rem;
      color: #334155;
      font-weight: 600;
    }
    body.dark-mode .search-count-text {
      color: #cbd5e1;
    }

    .search-filter-pills {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }
    .search-filter-pill {
      background: #ffffff;
      border: 1px solid #cbd5e1;
      color: #475569;
      padding: 6px 14px;
      border-radius: 20px;
      font-size: 0.82rem;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.2s;
    }
    body.dark-mode .search-filter-pill {
      background: #1e293b;
      border-color: #334155;
      color: #94a3b8;
    }
    .search-filter-pill.active, .search-filter-pill:hover {
      background: #003366;
      border-color: #003366;
      color: #ffffff;
    }
    body.dark-mode .search-filter-pill.active, body.dark-mode .search-filter-pill:hover {
      background: #38bdf8;
      border-color: #38bdf8;
      color: #0f172a;
    }

    /* Result Cards */
    .search-results-list {
      display: flex;
      flex-direction: column;
      gap: 16px;
    }
    .search-result-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-left: 4px solid #003366;
      border-radius: 10px;
      padding: 20px 24px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
      transition: transform 0.2s, box-shadow 0.2s;
    }
    body.dark-mode .search-result-card {
      background: #1e293b;
      border-color: #334155;
      border-left-color: #38bdf8;
    }
    .search-result-card:hover {
      transform: translateY(-2px);
      box-shadow: 0 6px 16px rgba(0, 51, 102, 0.08);
    }
    .result-card-top {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 8px;
    }
    .badge-type-pill {
      background: #e0f2fe;
      color: #0369a1;
      font-size: 0.72rem;
      font-weight: 800;
      padding: 3px 8px;
      border-radius: 4px;
      text-transform: uppercase;
      letter-spacing: 0.3px;
    }
    .result-category-text {
      color: #64748b;
      font-size: 0.8rem;
      font-weight: 600;
    }
    body.dark-mode .result-category-text {
      color: #94a3b8;
    }
    .result-title-link {
      font-size: 1.15rem;
      font-weight: 800;
      color: #003366;
      text-decoration: none;
      display: inline-block;
      margin-bottom: 6px;
      line-height: 1.4;
    }
    .result-title-link:hover {
      color: #c59b27;
      text-decoration: underline;
    }
    body.dark-mode .result-title-link {
      color: #60a5fa;
    }
    body.dark-mode .result-title-link:hover {
      color: #93c5fd;
    }
    .result-snippet {
      font-size: 0.9rem;
      color: #334155;
      line-height: 1.55;
      margin: 0 0 12px 0;
    }
    body.dark-mode .result-snippet {
      color: #cbd5e1;
    }
    .result-actions {
      display: flex;
      align-items: center;
      gap: 12px;
    }
    .btn-action-open {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #003366;
      color: #ffffff;
      padding: 6px 14px;
      border-radius: 6px;
      font-size: 0.8rem;
      font-weight: 700;
      text-decoration: none;
      transition: background 0.2s;
    }
    .btn-action-open:hover {
      background: #002244;
    }
    .btn-action-pdf {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #dc2626;
      color: #ffffff;
      padding: 6px 14px;
      border-radius: 6px;
      font-size: 0.8rem;
      font-weight: 700;
      text-decoration: none;
      transition: background 0.2s;
    }
    .btn-action-pdf:hover {
      background: #b91c1c;
    }
    .search-highlight {
      background: #fef08a;
      color: #0f172a;
      font-weight: 700;
      padding: 1px 4px;
      border-radius: 3px;
    }
    body.dark-mode .search-highlight {
      background: #ca8a04;
      color: #ffffff;
    }

    /* Popular Searches Tags */
    .popular-tags-box {
      margin-top: 20px;
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
      font-size: 0.84rem;
    }
    .pop-tag-link {
      background: rgba(255, 255, 255, 0.15);
      border: 1px solid rgba(255, 255, 255, 0.3);
      color: #ffffff;
      padding: 4px 10px;
      border-radius: 20px;
      text-decoration: none;
      transition: background 0.2s;
    }
    .pop-tag-link:hover {
      background: rgba(255, 255, 255, 0.3);
    }

    /* Empty state */
    .empty-search-box {
      background: #ffffff;
      border: 1px dashed #cbd5e1;
      border-radius: 12px;
      padding: 48px 24px;
      text-align: center;
      color: #64748b;
    }
    body.dark-mode .empty-search-box {
      background: #1e293b;
      border-color: #334155;
      color: #94a3b8;
    }
