/* Job Board Shared Styles - Scoped to avoid conflicts */
/* Resizable Layout Styles */
.job-board-container {
  /* DISABLED - Resize handle CSS */
  /*
  .resize-handle {
      width: 4px;
      background-color: transparent;
      cursor: col-resize;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      transition: all 0.2s ease;

      &:hover {
          background-color: #e9ecef;
          width: 6px;
      }

      &:active {
          background-color: #dee2e6;
          width: 6px;
      }

      .resize-handle-line {
          width: 1px;
          height: 32px;
          background-color: transparent;
          border-radius: 0.5px;
          transition: all 0.2s ease;
      }

      &:hover .resize-handle-line {
          background-color: #6c757d;
          width: 2px;
          height: 40px;
      }

      &:active .resize-handle-line {
          background-color: #495057;
          width: 2px;
          height: 40px;
      }
  }
  */
  /* Mobile Job Modal Styles - Scoped to job board modals */
  /* Job card highlighting styles - Scoped to job board container */
  /* Ensure minimum 4px spacing between logo and text content */
  /* Job info section (right column) layout fixes */
  /* Ensure minimum 4px spacing between logo and text in job cards */
  /* Ensure minimum 4px spacing between logo and text in job info section */
  /* Ensure report content fits and scrolls like job info */
  /* Limit report render area similarly to default info content area */
}
.job-board-container .resizable-container {
  display: flex;
  height: 100%;
  position: relative;
}
.job-board-container .jobs-column {
  flex: 0 0 40%; /* Default 40% width */
  min-width: 300px; /* Minimum width for usability */
  max-width: 70%; /* Maximum width to ensure info column is visible */
  transition: flex-basis 0.1s ease;
}
.job-board-container .info-column {
  flex: 1; /* Take remaining space */
  min-width: 300px; /* Minimum width for usability */
}
.job-board-container .job-info-mobile {
  display: none;
}
@media (max-width: 767.98px) {
  .job-board-container {
    /* DISABLED - Resize handle mobile CSS */
    /*
    .resize-handle {
        display: none;
    }
    */
  }
  .job-board-container .resizable-container {
    flex-direction: column;
  }
  .job-board-container .jobs-column {
    flex: 0 0 auto;
    min-width: unset;
    max-width: unset;
    width: 100%;
    display: none;
  }
  .job-board-container .info-column {
    flex: 1;
    min-width: unset;
    width: 100%;
  }
  .job-board-container .job-info-mobile {
    display: block !important;
  }
}
.job-board-container .modal-fullscreen-sm-down {
  max-width: 100%;
  margin: 0;
}
.job-board-container .modal-fullscreen-sm-down .modal-dialog {
  max-width: 100%;
  margin: 0;
  height: 100%;
}
.job-board-container .modal-fullscreen-sm-down .modal-content {
  height: 100%;
  border-radius: 0;
}
.job-board-container .modal-fullscreen-sm-down .modal-body {
  overflow-y: auto;
  padding: 1rem;
}
.job-board-container .job-card {
  transition: all 0.2s ease-in-out;
  border: 2px solid transparent;
}
.job-board-container .job-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  border-color: #e9ecef;
}
.job-board-container .job-card.active {
  border-color: #0d6efd;
  background-color: #f8f9ff;
  box-shadow: 0 4px 12px rgba(13, 110, 253, 0.15);
}
.job-board-container .job-card.active:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(13, 110, 253, 0.2);
}
.job-board-container .card-body .d-flex {
  /* Ensure minimum 8px spacing between logo and text */
  gap: 8px !important;
  /* Logo container - fixed width to prevent it from taking too much space */
  /* Text container - takes remaining space */
}
.job-board-container .card-body .d-flex .d-flex.flex-column:first-child {
  flex: 0 0 auto; /* Don't grow or shrink */
  width: 71px; /* Fixed width matching the logo size */
  display: flex;
  align-items: center; /* Vertically center the logo */
  justify-content: center; /* Horizontally center the logo */
}
.job-board-container .card-body .d-flex .d-flex.flex-column:last-child {
  flex: 1; /* Take remaining space */
  min-width: 0; /* Allow flex item to shrink */
  overflow: hidden; /* Prevent text overflow */
}
.job-board-container .card-body .d-flex .d-flex.flex-column:last-child .job-title {
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.job-board-container .card-body .d-flex .d-flex.flex-column:last-child .job-company {
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.job-board-container .job-info-section .d-flex {
  /* Ensure minimum 8px spacing between logo and text */
  gap: 8px !important;
  /* Logo container - fixed width to prevent it from taking too much space */
  /* Text container - takes remaining space */
}
.job-board-container .job-info-section .d-flex .d-flex.flex-column:first-child {
  flex: 0 0 auto; /* Don't grow or shrink */
  width: 71px; /* Fixed width matching the logo size */
  display: flex;
  align-items: center; /* Vertically center the logo */
  justify-content: center; /* Horizontally center the logo */
}
.job-board-container .job-info-section .d-flex .d-flex.flex-column:last-child {
  flex: 1; /* Take remaining space */
  min-width: 0; /* Allow flex item to shrink */
  overflow: hidden; /* Prevent text overflow */
}
.job-board-container .job-info-section .d-flex .d-flex.flex-column:last-child .job-title {
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.job-board-container .job-info-section .d-flex .d-flex.flex-column:last-child .job-company {
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
}
.job-board-container .card-body .d-flex .d-flex.flex-column.me-2 {
  /* Ensure at least 4px margin-end spacing */
  margin-right: 4px !important;
}
.job-board-container .job-info-section .d-flex .d-flex.flex-column.me-2 {
  /* Ensure at least 4px margin-end spacing */
  margin-right: 4px !important;
}
.job-board-container .card .card-body {
  /* keep existing overflow behavior */
}
.job-board-container #jobInfoContent {
  max-height: none;
}
.job-board-container .report-content-wrap {
  /* Fill the available card-body height and avoid horizontal scroll */
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  word-wrap: break-word;
  overflow-wrap: anywhere;
  white-space: normal;
}
.job-board-container .report-content-inner {
  max-width: 720px;
}
.job-board-container .report-content-inner ul {
  list-style: disc;
  padding-left: 1.25rem;
  margin-bottom: 0.5rem;
}
.job-board-container .report-content-inner ul li {
  display: list-item;
}
@media (max-width: 767.98px) {
  .job-board-container {
    /* Make three-dot menu button have larger clickable area on mobile while keeping visual size */
  }
  .job-board-container .report-content-inner {
    max-width: 100%;
  }
  .job-board-container .job-card-three-dots {
    position: relative;
    /* Create invisible larger clickable area */
  }
  .job-board-container .job-card-three-dots::before {
    content: "";
    position: absolute;
    top: -8px;
    left: -8px;
    right: -8px;
    bottom: -8px;
    z-index: 1;
  }
}
