/**
 * Layout Fix: 25% Filters LEFT | 75% Jobs RIGHT
 * Exactly like rocketjobs.pl
 */

/* Force flex layout for main row */
.section-box.mt-30 .container > .row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
}

/* Desktop layout (>= 992px) */
@media (min-width: 992px) {
  /* Filters - LEFT side - 25% width - ORDER 1 */
  .section-box.mt-30 .row > .col-lg-3 {
    flex: 0 0 25% !important;
    max-width: 25% !important;
    order: 1 !important;
    padding-right: 20px !important;
  }

  /* Jobs - RIGHT side - 75% width - ORDER 2 */
  .section-box.mt-30 .row > .col-lg-9 {
    flex: 0 0 75% !important;
    max-width: 75% !important;
    order: 2 !important;
    padding-left: 20px !important;
  }

  /* Make sidebar sticky */
  .section-box.mt-30 .col-lg-3 .sidebar-shadow {
    position: sticky !important;
    top: 100px !important;
    max-height: calc(100vh - 120px) !important;
    overflow-y: auto !important;
  }

  /* Remove any floats */
  .section-box.mt-30 .col-lg-3,
  .section-box.mt-30 .col-lg-9 {
    float: none !important;
  }
}

/* Tablet and mobile (< 992px) */
@media (max-width: 991px) {
  .section-box.mt-30 .container > .row {
    flex-direction: column !important;
  }

  .section-box.mt-30 .row > .col-lg-3,
  .section-box.mt-30 .row > .col-lg-9 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* Filters on top */
  .section-box.mt-30 .row > .col-lg-3 {
    order: 1 !important;
    margin-bottom: 30px;
  }

  /* Jobs below */
  .section-box.mt-30 .row > .col-lg-9 {
    order: 2 !important;
  }
}

/* Jobs container - 2 columns in 75% space */
#jobs-container {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 20px;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Job cards - 2 per row in desktop */
@media (min-width: 992px) {
  #jobs-container > [class*="col-"] {
    flex: 0 0 calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    margin-bottom: 20px;
  }
}

/* Job cards - 1 per row on mobile */
@media (max-width: 991px) {
  #jobs-container > [class*="col-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px;
  }
}

/* Ensure visibility */
.section-box.mt-30 .col-lg-3 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.section-box.mt-30 .col-lg-9 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
