/* ===================================================================
   CARRER, DETAIL & APPLICATION FORM PAGE - ENHANCED STYLES (Poppins Font, #000/#99d948)
   =================================================================== */

/* Import Poppins Font */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

/* Application Form Page Styles */
.application-form-page .application-form-card {
  border-radius: 24px !important;
  max-width: 800px !important;
  animation: slideUp 0.8s ease-out !important;
}

.application-section {
  padding: 120px 0 !important;
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
}

.position-confirmation {
  background: linear-gradient(135deg, var(--career-accent), #7bc736) !important;
  box-shadow: var(--career-card-shadow) !important;
}

.application-form .form-label {
  color: var(--career-primary) !important;
  font-weight: 500 !important;
  margin-bottom: 8px !important;
}

.application-form .form-control:focus {
  border-color: var(--career-accent) !important;
  box-shadow: 0 0 0 0.2rem rgba(153, 217, 72, 0.25) !important;
}

.btn-primary {
  background: linear-gradient(135deg, var(--career-primary), #333) !important;
  border: none !important;
  padding: 16px 40px !important;
  font-weight: 600 !important;
  border-radius: 50px !important;
  transition: all 0.4s ease !important;
}

.btn-primary:hover {
  background: linear-gradient(135deg, var(--career-accent), #7bc736) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 15px 35px rgba(153, 217, 72, 0.4) !important;
}

.alert {
  border: none !important;
  border-radius: 16px !important;
  padding: 20px 24px !important;
  font-weight: 500 !important;
}

.alert-success {
  background: linear-gradient(135deg, #d4edda, #c3e6cb) !important;
  color: #155724 !important;
}

.alert-danger {
  background: linear-gradient(135deg, #f8d7da, #f1b0b7) !important;
  color: #721c24 !important;
}

.why-join-section .benefit-item {
  padding: 32px 24px !important;
  background: #fff !important;
  border-radius: 20px !important;
  box-shadow: var(--career-card-shadow) !important;
  transition: all 0.4s ease !important;
  text-align: center !important;
}

.why-join-section .benefit-item:hover {
  transform: translateY(-10px) !important;
  box-shadow: var(--career-hover-shadow) !important;
}

.why-join-section .benefit-item i {
  font-size: 48px !important;
  margin-bottom: 20px !important;
  display: block !important;
}

.why-join-section .benefit-item h5 {
  font-size: 20px !important;
  font-weight: 600 !important;
  margin-bottom: 12px !important;
}

@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 768px) {
  .application-section {
    padding: 60px 0 !important;
  }
  
  .application-form-card {
    padding: 30px 20px !important;
    margin: 0 15px !important;
  }
}

@media (max-width: 480px) {
  .application-page .form-label {
    font-size: 16px !important;
    margin-bottom: 8px !important;
  }
  
  .application-form .form-control,
  .application-form .form-control-lg {
    padding: 12px 16px !important;
    font-size: 16px !important;
  }
  
  .application-section {
    padding: 40px 0 !important;
  }
  
  .application-form-card {
    padding: 20px 16px !important;
    margin: 0 10px !important;
  }
  
  .btn-primary {
    padding: 12px 32px !important;
    font-size: 16px !important;
    min-height: 44px !important;
  }
  
  .position-confirmation {
    padding: 20px !important;
  }
  
  .position-confirmation h2 {
    font-size: 20px !important;
  }
}

/* Career Page Variables */
:root {
  --career-primary: #000000;
  --career-accent: #99d948;
  --career-bg: #f8f9fa;
  --career-card-shadow: 0 10px 30px rgba(0,0,0,0.1);
  --career-hover-shadow: 0 20px 40px rgba(153,217,72,0.2);
}

/* Career Page Global Styles */
body.career-page,
.career-page * {
  font-family: 'Poppins', 'General Sans', sans-serif !important;
}

.career-page h1, .career-page h2, .career-page h3, .career-page h4, .career-page h5, .career-page h6 {
  font-weight: 600 !important;
}

/* Career Hero */
.career-hero {
  padding: 120px 0 80px !important;
  align-items: center !important;
}

.career-hero .section-title h1 {
  font-size: 48px !important;
  line-height: 1.2 !important;
}

.career-hero .section-sub-title {
  font-weight: 500 !important;
  font-size: 16px !important;
}

/* Career Counter */
.career-counter-box {
  margin-top: 0 !important;
}

.career-counter-list {
  gap: 30px !important;
}

.career-counter-item h2 {
  font-weight: 700 !important;
  font-size: 42px !important;
  color: var(--career-accent) !important;
}

/* Jobs Preview Slider */
.career-jobs-slider {
  margin: 80px 0 !important;
}

.career-jobs-slider .swiper-slide {
  height: auto !important;
  padding: 0 20px !important;
}

.career-jobs-preview .service-item-prime {
  background: linear-gradient(135deg, #fff 0%, var(--career-bg) 100%) !important;
  border: 1px solid #e9ecef !important;
  transition: all 0.4s ease !important;
  position: relative !important;
  overflow: hidden !important;
}

.career-jobs-preview .service-item-prime::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
  transition: left 0.6s !important;
}

.career-jobs-preview .service-item-prime:hover::before {
  left: 100% !important;
}

.career-jobs-preview .service-item-prime:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--career-hover-shadow) !important;
  border-color: var(--career-accent) !important;
}

/* Simple Jobs List */
.career-openings-section {
  padding: 100px 0 !important;
}

.jobs-simple-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(380px, 1fr)) !important;
  gap: 30px !important;
  margin-top: 60px !important;
}

.job-simple-card {
  background: #fff !important;
  border-radius: 20px !important;
  padding: 40px !important;
  box-shadow: var(--career-card-shadow) !important;
  transition: all 0.4s ease !important;
  border: 1px solid #e9ecef !important;
  position: relative !important;
  overflow: hidden !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

.job-simple-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 4px !important;
  height: 100% !important;
  background: var(--career-accent) !important;
  transform: scaleY(0) !important;
  transition: transform 0.4s ease !important;
}

.job-simple-card:hover {
  transform: translateY(-12px) !important;
  box-shadow: var(--career-hover-shadow) !important;
}

.job-simple-card:hover::before {
  transform: scaleY(1) !important;
}

.job-simple-card .icon-box {
  width: 70px !important;
  height: 70px !important;
  background: linear-gradient(135deg, var(--career-primary), #333) !important;
  border-radius: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 25px !important;
  flex-shrink: 0 !important;
}

.job-simple-card .icon-box img {
  filter: brightness(0) invert(1) !important;
  max-width: 36px !important;
}

.job-simple-card h3 {
  font-size: 24px !important;
  font-weight: 600 !important;
  color: var(--career-primary) !important;
  margin-bottom: 12px !important;
  line-height: 1.3 !important;
}

.job-simple-card h3 a {
  color: inherit !important;
  transition: color 0.3s ease !important;
}

.job-simple-card h3 a:hover {
  color: var(--career-accent) !important;
}

.job-simple-card p {
  color: #666 !important;
  line-height: 1.6 !important;
  margin-bottom: 30px !important;
  font-size: 16px !important;
  flex-grow: 1 !important;
}

/* Job Buttons */
.job-buttons {
  display: flex !important;
  gap: 15px !important;
  margin-top: auto !important;
}

.btn-view-detail {
  flex: 1 !important;
  background: var(--career-primary) !important;
  color: #fff !important;
  padding: 14px 24px !important;
  border-radius: 50px !important;
  font-weight: 500 !important;
  font-size: 15px !important;
  text-align: center !important;
  transition: all 0.3s ease !important;
  border: none !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.btn-view-detail:hover {
  background: var(--career-accent) !important;
  color: var(--career-primary) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(153,217,72,0.3) !important;
}

.btn-apply-now {
  flex: 1 !important;
  background: var(--career-accent) !important;
  color: var(--career-primary) !important;
  padding: 14px 24px !important;
  border-radius: 50px !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  text-align: center !important;
  transition: all 0.3s ease !important;
  border: 2px solid var(--career-accent) !important;
}

.btn-apply-now:hover {
  background: var(--career-primary) !important;
  color: #fff !important;
  border-color: var(--career-primary) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(0,0,0,0.2) !important;
}

/* Detail Page */
.job-header {
  background: linear-gradient(135deg, #fff 0%, var(--career-bg) 100%) !important;
  border-radius: 24px !important;
  padding: 40px !important;
  margin-bottom: 50px !important;
  box-shadow: var(--career-card-shadow) !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 30px !important;
}

.job-header h1 {
  font-size: 36px !important;
  font-weight: 700 !important;
  color: var(--career-primary) !important;
  margin: 0 0 15px 0 !important;
  line-height: 1.2 !important;
}

.job-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
}

.job-meta .badge {
  background: var(--career-accent) !important;
  color: var(--career-primary) !important;
  padding: 10px 20px !important;
  border-radius: 25px !important;
  font-weight: 500 !important;
  font-size: 14px !important;
}

.responsibilities-list li,
.requirements-list li {
  position: relative !important;
  padding: 18px 0 18px 45px !important;
  margin-bottom: 15px !important;
  border-left: 4px solid transparent !important;
  transition: all 0.3s ease !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

.responsibilities-list li::before,
.requirements-list li::before {
  content: '\f058' !important;
  font-family: 'Font Awesome 7 Free' !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 0 !important;
  top: 22px !important;
  color: var(--career-accent) !important;
  font-size: 18px !important;
  background: #fff !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
}

.responsibilities-list li:hover,
.requirements-list li:hover {
  border-left-color: var(--career-accent) !important;
  padding-left: 55px !important;
  background: rgba(153,217,72,0.05) !important;
}

.benefit-item {
  background: linear-gradient(135deg, var(--career-bg) 0%, #fff 100%) !important;
  padding: 25px 30px !important;
  border-radius: 16px !important;
  border-left: 5px solid var(--career-accent) !important;
  margin-bottom: 20px !important;
  box-shadow: 0 4px 15px rgba(0,0,0,0.08) !important;
  transition: all 0.3s ease !important;
}

.benefit-item:hover {
  transform: translateX(8px) !important;
  box-shadow: 0 8px 25px rgba(153,217,72,0.15) !important;
}

.benefit-item i {
  color: var(--career-accent) !important;
  font-size: 20px !important;
  margin-right: 15px !important;
}

.page-single-sidebar {
  position: sticky !important;
  top: 100px !important;
}

/* Apply Forms */
/* #career-apply-form,
#career-detail-apply-form {
  background: #fff !important;
  padding: 40px !important;
  border-radius: 20px !important;
  box-shadow: var(--career-card-shadow) !important;
} */

#career-apply-form h3,
#career-detail-apply-form h3 {
  font-size: 24px !important;
  font-weight: 600 !important;
  color: var(--career-primary) !important;
  margin-bottom: 30px !important;
  text-align: center !important;
}

#career-apply-form .form-control,
#career-detail-apply-form .form-control {
  border: 2px solid #e9ecef !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  font-size: 16px !important;
  transition: all 0.3s ease !important;
  margin-bottom: 20px !important;
  background: #fafbfc !important;
}

#career-apply-form .form-control:focus,
#career-detail-apply-form .form-control:focus {
  border-color: var(--career-accent) !important;
  box-shadow: 0 0 0 0.25rem rgba(153,217,72,0.15) !important;
  background: #fff !important;
}

#career-apply-form button[type="submit"],
#career-detail-apply-form button[type="submit"] {
  width: 100% !important;
  background: linear-gradient(135deg, var(--career-primary), #333) !important;
  color: #fff !important;
  border: none !important;
  padding: 18px !important;
  border-radius: 50px !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

#career-apply-form button[type="submit"]:hover,
#career-detail-apply-form button[type="submit"]:hover {
  background: linear-gradient(135deg, var(--career-accent), #7bc736) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 30px rgba(153,217,72,0.4) !important;
}

.position-confirmation {
  background: linear-gradient(135deg, var(--career-accent), #7bc736) !important;
  color: var(--career-primary) !important;
  padding: 20px !important;
  border-radius: 16px !important;
  text-align: center !important;
  margin-bottom: 30px !important;
  font-weight: 500 !important;
}

/* Responsive */
@media (max-width: 1200px) {
  .jobs-simple-list {
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)) !important;
    gap: 25px !important;
  }
}

@media (max-width: 991px) {
  .career-hero {
    text-align: center !important;
  }
  
  .job-header {
    flex-direction: column !important;
    text-align: center !important;
    padding: 30px 25px !important;
  }
  
  .job-buttons {
    flex-direction: column !important;
  }
  
  .page-single-sidebar {
    position: static !important;
    margin-top: 50px !important;
  }
}

@media (max-width: 768px) {
  .jobs-simple-list {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  
  .job-simple-card {
    padding: 30px 25px !important;
  }
}

@media (max-width: 480px) {
  .job-buttons {
    gap: 12px !important;
  }
}

/* Loading Skeleton */
@keyframes loading {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

.job-skeleton {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%) !important;
  background-size: 200% 100% !important;
  animation: loading 1.5s infinite !important;
  border-radius: 12px !important;
}
