@charset "UTF-8";
.gov-jobs {
  background: #f7f8fa;
  color: #1a1a1a;
  padding: 24px 12px; }
  @media (min-width: 768px) {
    .gov-jobs {
      padding: 32px 16px; } }
  @media (min-width: 1024px) {
    .gov-jobs {
      padding: 40px 16px; } }
  .gov-jobs > * {
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto; }
  .gov-jobs__header {
    margin-bottom: 20px;
    padding: 0 12px; }
    .gov-jobs__header h1 {
      font-size: clamp(1.25rem, calc(1.1rem + 1vw), 1.75rem);
      font-weight: 700;
      line-height: 1.25;
      margin: 0 0 8px 0; }
    .gov-jobs__header .gov-jobs__subtitle {
      color: #6b7280;
      font-size: 0.95rem; }
  .gov-jobs .gov-intro {
    padding: 0 12px;
    margin-bottom: 20px;
    text-align: left; }
    .gov-jobs .gov-intro p {
      margin: 0;
      color: #6b7280;
      font-size: 0.95rem;
      line-height: 1.7; }
  .gov-jobs__list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 0 12px; }
    @media (min-width: 768px) {
      .gov-jobs__list {
        grid-template-columns: repeat(2, 1fr); } }
    @media (min-width: 1024px) {
      .gov-jobs__list {
        grid-template-columns: repeat(3, 1fr); } }
  .gov-jobs__empty {
    background: #ffffff;
    border: 1px dashed #e5e7eb;
    color: #6b7280;
    padding: 20px;
    border-radius: 8px;
    text-align: center; }

.breadcrumb {
  padding: 0 12px;
  margin-bottom: 8px;
  font-size: 0.92rem;
  color: #6b7280; }
  .breadcrumb__list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0; }
  .breadcrumb__item {
    display: inline-flex;
    align-items: center; }
    .breadcrumb__item a {
      color: #6b7280;
      text-decoration: none; }
      .breadcrumb__item a:hover {
        color: #1a1a1a; }
  .breadcrumb__item + .breadcrumb__item::before {
    content: "›";
    color: #e5e7eb;
    margin: 0 8px; }

.gov-job {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.08s ease;
  padding: 20px;
  position: relative; }
  .gov-job:hover {
    border-color: #c9d8fa;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08); }
  .gov-job--expired {
    opacity: 0.6; }
  .gov-job__expired-badge {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #dc3545;
    color: white;
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    border-bottom-left-radius: 0.25rem; }
  .gov-job__title {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 12px; }
    .gov-job__title .gov-job__name {
      font-size: 1.1rem;
      font-weight: 600; }
    .gov-job__title .gov-job__nature {
      color: #6b7280;
      font-size: 0.9rem; }
  .gov-job__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-bottom: 12px; }
    .gov-job__meta span {
      display: inline-flex;
      align-items: center;
      gap: 4px;
      font-size: 0.92rem;
      color: #1a1a1a; }
  .gov-job__extra {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-bottom: 16px; }
    .gov-job__extra .gov-job__salary {
      color: #10b981;
      font-weight: 600; }
    .gov-job__extra .gov-job__apply-email a {
      color: #2563eb;
      text-decoration: underline; }
      .gov-job__extra .gov-job__apply-email a:hover {
        color: #1453dd; }
  .gov-job__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px; }
    .gov-job__actions .gov-job__btn {
      appearance: none;
      border: 1px solid #2563eb;
      background: #2563eb;
      color: #fff;
      border-radius: 999px;
      padding: 8px 16px;
      font-weight: 600;
      font-size: 0.95rem;
      line-height: 1;
      transition: background 0.15s ease, border-color 0.15s ease, transform 0.06s ease;
      text-decoration: none; }
      .gov-job__actions .gov-job__btn:hover {
        background: #1453dd;
        border-color: #1453dd; }
      .gov-job__actions .gov-job__btn:active {
        transform: translateY(1px); }
      .gov-job__actions .gov-job__btn.secondary {
        background: transparent;
        color: #2563eb; }
        .gov-job__actions .gov-job__btn.secondary:hover {
          background: rgba(37, 99, 235, 0.08); }

.pagination {
  margin-top: 24px;
  padding: 0 12px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px; }
  @media (min-width: 768px) {
    .pagination {
      grid-template-columns: auto 1fr;
      align-items: center; } }
  .pagination__summary {
    color: #6b7280;
    font-size: 0.95rem; }
  .pagination__list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0; }
    .pagination__list li.active .pagination__link {
      background: #2563eb;
      border-color: #2563eb;
      color: #fff; }
    .pagination__list li.disabled .pagination__link {
      pointer-events: none;
      opacity: 0.55; }
  .pagination__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 36px;
    padding: 0 12px;
    border: 1px solid #e5e7eb;
    background: #ffffff;
    color: #1a1a1a;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 600;
    transition: border-color 0.15s ease, background 0.15s ease; }
    .pagination__link:hover {
      border-color: #c9d8fa; }
    .pagination__link.prev, .pagination__link.next {
      min-width: 72px; }

@media print {
  .lang_swicth_wrapper, .head_bg_wrapper, nav.head_bg_wrapper, .footer_wrapper {
    display: none !important; }
  .gov-jobs {
    padding: 0;
    background: #fff; }
  .gov-jobs__list {
    grid-template-columns: 1fr; }
  .gov-job {
    box-shadow: none;
    border-color: #000; } }

/*# sourceMappingURL=csb_gov_vacancies.css.map */