  /* --- Root & Base -------------------------------------------- */
  :root {
      --nb-primary: #086AD8;
      --nb-primary-light: #E8F1FD;
      --nb-primary-dark: #0558b0;
      --nb-text: #1a1a2e;
      --nb-text-muted: #6b7280;
      --nb-border: #e5e7eb;
      --nb-bg: #f4f6fb;
      --nb-white: #ffffff;
      --nb-badge-green: #d1fae5;
      --nb-badge-green-text: #065f46;
      --nb-badge-blue-text: #1e40af;
      --nb-badge-blue: #dbeafe;
      --nb-badge-gray: #f3f4f6;
      --nb-badge-gray-text: #374151;
      --nb-success: #10b981;
      --nb-radius: 10px;
      --nb-shadow: 0 2px 12px rgba(8, 106, 216, .08);
  }

  /* --- Layout ------------------------------------------------- */
  .nb-26-job-apply .nb-page-wrap {
      max-width: 1180px;
      margin: 0 auto;
      padding: 28px 16px 48px;
  }

  .nb-26-job-apply .nb-main-grid {
      display: grid;
      grid-template-columns: 1fr 420px;
      gap: 24px;
      align-items: start;
  }

  @media (max-width: 991px) {
      .nb-26-job-apply .nb-main-grid {
          grid-template-columns: 1fr;
      }
  }


  /* --- Back Link ---------------------------------------------- */
  .nb-26-job-apply .nb-back-link {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: 16px;
      font-weight: 600;
      color: var(--nb-primary);
      text-decoration: none;
      margin-bottom: 16px;
      transition: opacity .2s;
  }
  .nb-back-link {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: 16px;
      font-weight: 600;
      color: var(--nb-primary);
      text-decoration: none;
      margin-bottom: 16px;
      transition: opacity .2s;
  }

  .nb-26-job-apply .nb-back-link:hover {
      opacity: .75;
  }

  /* --- Job Header --------------------------------------------- */


  .nb-26-job-apply .nb-header-top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: 14px;
  }

  .nb-26-job-apply .nb-job-title {
      font-size: 40px;
      font-weight: 700;
      color: var(--nb-text);
      margin: 0 0 12px;
      line-height: 1.2;
  }

  @media (max-width: 600px) {
      .nb-26-job-apply .nb-job-title {
          font-size: 30px;
      }
  }

  .nb-26-job-apply .nb-job-meta {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 14px;
      font-size: 13px;
      color: var(--nb-text-muted);
      margin-bottom: 20px;
  }

  .nb-26-job-apply .nb-job-meta-item {
      display: flex;
      align-items: center;
      gap: 5px;
      /* font-size: 13px; */
  }

  /* --- Badges ------------------------------------------------- */
  .nb-26-job-apply .nb-badge {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      font-size: 15px;
      /* font-weight: 500; */
      padding: 4px 13px;
      border-radius: 3px;
      white-space: nowrap;
  }

  .nb-26-job-apply .nb-badge-blue {
      background: var(--nb-primary);
      color: #fff;
  }

  .nb-26-job-apply .nb-badge-green {
      background: #ECFDF5;
      color: #004730;
      border: 1px solid #a7f3d0;
      padding: 0px 7px;
  }

  .nb-26-job-apply .nb-badge-outline-blue {
      background: #0066CC1A;
      color: #086AD8;
      /* border: 1px solid #bfdbfe; */
      padding: 1px 10px;
  }

  /* --- Action Buttons ----------------------------------------- */
  .nb-26-job-apply .nb-btn-action {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: 16px;
      font-weight: 500;
      padding: 4px 19px;
      border-radius: 5px;
      border: 1px solid var(--nb-border);
      background: var(--nb-white);
      color: var(--nb-primary);
      cursor: pointer;
      text-decoration: none;
  }

  .nb-26-job-apply .nb-btn-action:hover {
      background: #d9eafc;
      /* border-color: #c0c8d8; */
      /* color: var(--nb-text); */
  }

  .nb-26-job-apply .nb-btn-save {
      /* background: var(--nb-primary-light); */
      border-color: #086AD8;
      /* color: var(--nb-primary); */
  }

  .nb-26-job-apply .nb-btn-save:hover {
      background: #d9eafc;
      border-color: var(--nb-primary);
      color: var(--nb-primary);
  }

  /* --- Section ------------------------------------------------ */
  .nb-26-job-apply .nb-section {
      padding: 18px 24px;
      border: 1px solid var(--nb-border);
      border-radius: 12px;
      margin-bottom: 20px;
  }

  .nb-26-job-apply .nb-section-heading {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 14px;
  }

  .nb-26-job-apply .nb-section-icon {
      width: 36px;
      height: 36px;
      color: #fff;
      border-radius: 8px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 20px;
      flex-shrink: 0;
      background: #086AD8;
  }

  .nb-26-job-apply .nb-section-icon img {
      height: 20px;
      width: 20px;
  }

  .nb-26-job-apply .nb-section-title {
      font-size: 22px;
      font-weight: 700;
      margin: 0;
      color: var(--nb-text);
  }

  /* --- About Job ---------------------------------------------- */
  .nb-26-job-apply .nb-about-text {
      font-size: 16px;
      color: #374151;
      line-height: 1.5;
      margin-bottom: 18px;
  }

  .nb-26-job-apply .nb-about-text a {
      color: var(--nb-primary);
      text-decoration: none;
  }

  .nb-26-job-apply .nb-about-text a:hover {
      text-decoration: underline;
  }

  .nb-26-job-apply .nb-detail-grid {
      display: inline-grid;
      grid-template-columns: repeat(4, auto);
      /* gap: 12px; */
      border-radius: 8px;
      padding: 16px 10px;
      border: 1px solid var(--nb-border);
      width: 100%;
  }

  @media (max-width: 600px) {
      .nb-26-job-apply .nb-detail-grid {
          grid-template-columns: repeat(2, 1fr);
      }
  }

  .nb-26-job-apply .nb-detail-cell-label {
      font-size: 14px;
      /* color: var(--nb-primary); */
      display: flex;
      /* align-items: center; */
      gap: 5px;
      /* margin-bottom: 5px; */
      font-weight: 400;
      position: relative;
      /* min-width: 120px; */
      padding: 0px 8px;
  }

  .nb-26-job-apply .nb-detail-cell-label img {
      width: 17px;
      height: 17px;
      margin-top: 3px
  }

  .nb-26-job-apply .nb-detail-cell-label i {
      color: var(--nb-primary);
      padding-top: 5px;
  }

  .nb-26-job-apply .nb-detail-cell-label div span {
      color: #5E7185;
      /* font-size: 16px; */
      /* font-weight: 400; */
  }

  @media (max-width: 767px) {

      .nb-26-job-apply .nb-detail-cell-label:nth-child(1)::after,
      .nb-26-job-apply .nb-detail-cell-label:nth-child(3)::after {
          content: "";
          position: absolute;
          right: 0;
          top: 10%;
          width: 1px;
          height: 80%;
          background: #E6E6E6;
      }
  }

  @media (min-width: 768px) {
      .nb-26-job-apply .nb-detail-cell-label:not(:last-child)::after {
          content: "";
          position: absolute;
          right: 0;
          top: 10%;
          width: 1px;
          height: 80%;
          background: #E6E6E6;
      }
  }

  .nb-26-job-apply .nb-detail-cell-value {
      font-size: 14px;
      font-weight: 600;
      color: var(--nb-text);
      line-height: 1.4;
  }

  .nb-26-job-apply .nb-detail-cell-sub {
      /* font-size: 16px; */
      color: var(--nb-text-muted);
      /* font-weight: 400; */
  }

  /* --- Responsibilities --------------------------------------- */
  .nb-26-job-apply .nb-resp-list {
      list-style: none;
      padding: 0;
      margin: 0;
  }

  .nb-26-job-apply .nb-resp-list li {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-size: 16px;
      color: #374151;
      padding: 0px 0;
      line-height: 1.5rem;
  }

  .nb-26-job-apply .nb-resp-list li i {
      color: var(--nb-primary);
      font-size: 15px;
      margin-top: 2px;
      flex-shrink: 0;
  }

  /* --- Skills ------------------------------------------------- */
  .nb-26-job-apply .nb-skill-tags {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
  }

  .nb-26-job-apply .nb-skill-tag {
      font-size: 16px;
      font-weight: 500;
      padding: 5px 12px;
      border-radius: 50px;
      background: #0066CC1A;
      color: var(--nb-primary);
      border: 1px solid #086AD81A;
  }

  /* --- Benefits ----------------------------------------------- */
  .nb-26-job-apply .nb-benefits {
      display: inline-grid;
      grid-template-columns: repeat(4, auto);
      border: 1px solid var(--nb-border);
      border-radius: 12px;
      background: #F4F7FE;
      padding: 0px 10px;
  }

  .nb-26-job-apply .nb-benefit-item {
      padding: 16px 6px;
      /* border-right: 1px solid var(--nb-border); */
      display: flex;
      align-items: flex-start;
      gap: 5px;
      position: relative;
  }

  @media (max-width: 767px) {

      .nb-26-job-apply .nb-benefit-item:nth-child(1)::after,
      .nb-26-job-apply .nb-benefit-item:nth-child(3)::after {
          content: "";
          position: absolute;
          right: 0;
          top: 10%;
          width: 1px;
          height: 80%;
          background: #E6E6E6;
      }
  }

  @media (min-width: 768px) {
      .nb-26-job-apply .nb-benefit-item:not(:last-child)::after {
          content: "";
          position: absolute;
          right: 0;
          top: 10%;
          width: 1px;
          height: 80%;
          background: #E6E6E6;
      }
  }

  .nb-26-job-apply .nb-benefit-item:last-child {
      /* border-right: none; */
  }

  .nb-26-job-apply .nb-benefit-icon {
      /* width: 32px; */
      /* height: 32px; */
      /* background: var(--nb-primary-light); */
      color: var(--nb-primary);
      /* border-radius: 8px; */
      /* display: flex; */
      /* align-items: center; */
      /* justify-content: center; */
      /* font-size: 14px; */
      flex-shrink: 0;
      /* margin-top: 2px; */
  }

  .nb-26-job-apply .nb-benefit-icon img {
      width: 17px;
      height: 17px;
      margin-bottom: 24px;
  }


  .nb-26-job-apply .nb-benefit-title {
      font-size: 14px;
      font-weight: 500;
      color: var(--nb-primary);
      margin-bottom: 3px;
  }

  .nb-26-job-apply .nb-benefit-text {
      font-size: 14px;
      color: var(--nb-text-muted);
      line-height: 18px;
  }

  @media (max-width: 600px) {
      .nb-26-job-apply .nb-benefits {
          grid-template-columns: repeat(2, 1fr);
      }

      .nb-26-job-apply .nb-benefit-item:nth-child(2) {
          border-right: none;
      }

      /* .nb-26-job-apply .nb-benefit-item:nth-child(n+3) {
                border-top: 1px solid var(--nb-border);
            } */
  }

  /* --- Apply Form --------------------------------------------- */
  .nb-26-job-apply .nb-form-card {
      position: sticky;
      top: 20px;
  }

  .nb-26-job-apply .nb-form-header {
      padding-bottom: 20px;
  }

  .nb-26-job-apply .nb-form-title-row {
      display: flex;
      align-items: flex-start;
      justify-content: center;
      gap: 10px;
      align-items: center;
  }

  .nb-26-job-apply .nb-form-title {
      font-size: 22px;
      font-weight: 700;
      margin: 0 0 4px;
      color: var(--nb-text);
  }

  .nb-26-job-apply .nb-form-title span {
      color: var(--nb-primary);
  }

  .nb-26-job-apply .nb-form-subtitle {
      font-size: 16px;
      color: var(--nb-text-muted);
      margin: 0;
      display: flex;
      align-items: center;
      gap: 6px;
      line-height: 20px;
  }

  .nb-26-job-apply .nb-form-title-icon {
      width: 36px;
      height: 36px;
      color: var(--nb-primary);
      border-radius: 50px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 18px;
      flex-shrink: 0;
      background: #0066CC1A;
  }

  /* --- Form Body ---------------------------------------------- */
  /* .nb-26-job-apply .nb-form-body {
    padding: 18px 22px;
    max-height: calc(100vh - 220px);
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #c5daf8 transparent;
} */

  .nb-26-job-apply .nb-form-body::-webkit-scrollbar {
      width: 4px;
  }

  .nb-26-job-apply .nb-form-body::-webkit-scrollbar-thumb {
      background: #c5daf8;
      border-radius: 10px;
  }

  @media (max-width: 991px) {
      .nb-26-job-apply .nb-form-card {
          position: static;
      }

      .nb-26-job-apply .nb-form-body {
          max-height: none;
      }
  }

  /* --- Form Group --------------------------------------------- */
  .nb-26-job-apply .nb-form-group {
      margin-bottom: 14px;
  }

  .nb-26-job-apply .nb-form-label {
      font-size: 16px;
      font-weight: 500;
      color: var(--nb-text);
      margin-bottom: 6px;
      display: block;
  }

  .nb-26-job-apply .nb-required {
      color: #830B0B;
      margin-left: 2px;
  }

  /* --- Input -------------------------------------------------- */
  .nb-26-job-apply .nb-input-wrap {
      position: relative;
  }

  .nb-26-job-apply .nb-input-icon {
      position: absolute;
      left: 12px;
      top: 50%;
      transform: translateY(-50%);
      color: #9ca3af;
      font-size: 14px;
      pointer-events: none;
      z-index: 2;
  }

  .nb-26-job-apply .nb-form-control {
      width: 100%;
      height: 47px;
      padding: 0 16px 0 32px;
      border: 1.5px solid var(--nb-border);
      border-radius: 5px;
      font-size: 16px;
      color: var(--nb-text);
      background: var(--nb-white);
      /* font-family: 'Inter', sans-serif; */
      transition: border-color .2s, box-shadow .2s;
      outline: none;
  }

  .nb-26-job-apply .nb-form-control::placeholder {
      color: #b0b8c8;
  }

  .nb-26-job-apply .nb-form-control:focus {
      border-color: var(--nb-primary);
      color: #000;
      box-shadow: 0 0 0 3px rgba(8, 106, 216, .12);
  }

  .nb-26-job-apply .nb-form-control.no-icon {
      padding-left: 12px;
  }

  /* Select arrow */
  .nb-26-job-apply .nb-select-wrap {
      position: relative;
  }

  .nb-26-job-apply .nb-select-wrap::after {
      content: '\f078';
      font-family: 'Font Awesome 6 Free';
      font-weight: 900;
      position: absolute;
      right: 12px;
      top: 50%;
      transform: translateY(-50%);
      color: #9ca3af;
      font-size: 11px;
      pointer-events: none;
      z-index: 2;
  }

  .nb-26-job-apply select.nb-form-control {
      appearance: none;
      -webkit-appearance: none;
      cursor: pointer;
  }

  .nb-26-job-apply .nb-select-with-icon {
      position: relative;
  }

  .nb-26-job-apply .nb-select-with-icon::after {
      content: '\f078';
      font-family: 'Font Awesome 6 Free';
      font-weight: 900;
      position: absolute;
      right: 12px;
      top: 50%;
      transform: translateY(-50%);
      color: #9ca3af;
      font-size: 11px;
      pointer-events: none;
      z-index: 2;
  }

  /* Phone group */
  .nb-26-job-apply .nb-phone-group {
      display: flex;
      gap: 8px;
  }

  .nb-26-job-apply .nb-phone-code {
      width: 85px;
      flex-shrink: 0;
  }

  .nb-26-job-apply .nb-phone-field {
      flex: 1;
  }

  /* CTC row */
  .nb-26-job-apply .nb-ctc-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
  }

  @media (max-width: 480px) {
      .nb-26-job-apply .nb-ctc-row {
          grid-template-columns: 1fr;
      }
  }

  .nb-26-job-apply .nb-ctc-input {
      position: relative;
  }

  .nb-26-job-apply .nb-ctc-prefix {
      position: absolute;
      left: 11px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 16px;
      color: #6b7280;
      font-weight: 500;
      pointer-events: none;
      z-index: 2;
  }

  .nb-26-job-apply .nb-ctc-input .nb-form-control {
      padding-left: 24px;
  }

  /* Upload zone */
  .nb-26-job-apply .nb-upload-zone {
      border: 2px dashed #c5daf8;
      border-radius: 10px;
      background: var(--nb-primary-light);
      padding: 10px 16px;
      text-align: center;
      cursor: pointer;
      transition: border-color .2s, background .2s;
      position: relative;
  }

  .nb-26-job-apply .nb-upload-zone:hover {
      border-color: var(--nb-primary);
      background: #daeafb;
  }

  .nb-26-job-apply .nb-upload-zone input[type="file"] {
      position: absolute;
      inset: 0;
      opacity: 0;
      cursor: pointer;
      width: 100%;
      height: 100%;
  }

  .nb-26-job-apply .nb-upload-icon {
      font-size: 22px;
      color: var(--nb-primary);
      /* margin-bottom: 8px; */
  }

  .nb-26-job-apply .nb-upload-text {
      font-size: 13px;
      color: var(--nb-text);
      font-weight: 500;
  }

  .nb-26-job-apply .nb-upload-text span {
      color: var(--nb-primary);
      font-weight: 600;
  }

  .nb-26-job-apply .nb-upload-hint {
      font-size: 11.5px;
      color: #000;
      margin-top: 3px;
  }

  /* Textarea */
  .nb-26-job-apply .nb-textarea {
      width: 100%;
      padding: 10px 12px;
      border: 1.5px solid var(--nb-border);
      border-radius: 8px;
      font-size: 16px;
      color: var(--nb-text);
      background: var(--nb-white);
      font-family: 'Inter', sans-serif;
      resize: vertical;
      min-height: 82px;
      outline: none;
      transition: border-color .2s, box-shadow .2s;
  }

  .nb-26-job-apply .nb-textarea::placeholder {
      color: #b0b8c8;
  }

  .nb-26-job-apply .nb-textarea:focus {
      border-color: var(--nb-primary);
      box-shadow: 0 0 0 3px rgba(8, 106, 216, .12);
  }

  /* Submit button */
  .nb-26-job-apply .nb-btn-submit {
      width: 100%;
      height: 46px;
      background: var(--nb-primary);
      color: #fff;
      border: none;
      border-radius: 9px;
      font-size: 16px;
      font-weight: 600;
      font-family: 'Inter', sans-serif;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      cursor: pointer;
      margin-top: 4px;
  }

  .nb-26-job-apply .nb-btn-submit:hover {
      background: var(--nb-primary-dark);
      transform: translateY(-1px);
  }

  .nb-26-job-apply .nb-btn-submit:active {
      transform: translateY(0);
  }

  .nb-26-job-apply .nb-form-safe {
      text-align: center;
      font-size: 14px;
      color: var(--nb-text-muted);
      margin-top: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 5px;
  }

  .nb-26-job-apply .nb-form-safe i {
      color: var(--nb-success);
  }