/* =========================================================
   JOBSHUB FINAL VISUAL CONSISTENCY PATCH
   Shared last-load overrides. Keep this file loaded last.
   ========================================================= */

html, body { max-width:100%; overflow-x:hidden; }

/* ---------------- HOME: remove old navy/purple gradients ---------------- */
html:not([data-theme="light"]) .hero-section,
html:not([data-theme="light"]) .stats,
html:not([data-theme="light"]) #categoriesSection,
html:not([data-theme="light"]) #letestjobsSection,
html:not([data-theme="light"]) .about-section,
html:not([data-theme="light"]) .team-section,
html:not([data-theme="light"]) .companies-section,
html:not([data-theme="light"]) .testimonials-section,
html:not([data-theme="light"]) .faq-section {
  background: linear-gradient(135deg,#0b1f16 0%,#0d2419 48%,#103822 100%) !important;
}

html:not([data-theme="light"]) body {
  background:#0b1f16 !important;
}

html:not([data-theme="light"]) .header {
  background:rgba(13,36,25,.94) !important;
}

/* Home buttons / Top Search Jobs */
.btn-primary,
.NewJobs,
.samlltags .btn,
#searchBtn,
#categoriesSection .btn,
.job-actions .btn,
.cta-btn {
  background:linear-gradient(135deg,#16a34a,#15803d) !important;
  color:#fff !important;
  border-color:#16a34a !important;
}

.btn-primary:hover,
.NewJobs:hover,
.samlltags .btn:hover,
#searchBtn:hover,
#categoriesSection .btn:hover,
.job-actions .btn:hover,
.cta-btn:hover {
  background:linear-gradient(135deg,#22c55e,#16a34a) !important;
  color:#fff !important;
}

.samlltags strong { color:#16a34a !important; }

/* ---------------- Shared footer ---------------- */
.footer {
  width:100% !important;
  padding:46px 18px 18px !important;
  overflow:hidden !important;
  background:#07140e !important;
}
.footer-container {
  width:min(1240px,100%) !important;
  margin:0 auto !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:start !important;
}
.footer-col,
.footer-newsletter { min-width:0 !important; width:auto !important; max-width:none !important; }
.footer-col { text-align:center !important; }
.footer-col p { overflow-wrap:anywhere; }
.footer-col ul { padding:0 !important; margin:0 !important; }
.footer-col ul li { list-style:none; margin-bottom:8px; }
.footer-col ul li a { display:inline-flex !important; align-items:center; justify-content:center; gap:4px; max-width:100%; overflow-wrap:anywhere; }
.footer-logo { justify-content:center !important; white-space:nowrap; }
.footer-newsletter { text-align:center !important; }
.footer-newsletter p { margin:0 auto !important; }

/* Keep Subscribe exactly as a compact input + Join control. */
.newsletter-box {
  display:flex !important;
  flex-direction:row !important;
  align-items:stretch !important;
  flex-wrap:nowrap !important;
  width:100% !important;
  max-width:360px !important;
  margin:10px auto 0 !important;
  gap:0 !important;
}
.newsletter-box input {
  flex:1 1 auto !important;
  min-width:0 !important;
  width:auto !important;
  height:42px !important;
  padding:10px 12px !important;
  border:1px solid #16a34a55 !important;
  border-right:0 !important;
  border-radius:7px 0 0 7px !important;
  background:#fff !important;
  color:#0f1a14 !important;
}
.newsletter-box button {
  flex:0 0 70px !important;
  width:70px !important;
  height:42px !important;
  padding:10px 12px !important;
  border-radius:0 7px 7px 0 !important;
  background:#16a34a !important;
  color:#fff !important;
}
[data-theme="light"] .newsletter-box input { background:#fff !important; color:#0f1a14 !important; }

.footer-bottom { margin-top:28px !important; }
.footer-availability { text-align:center; }

/* ---------------- Floating WhatsApp / Back-to-top ---------------- */
.floating.whatsapp,
.floating.top-btn {
  width:50px !important;
  height:50px !important;
  border:2px solid #16a34a !important;
  background:#16a34a !important;
  color:#fff !important;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 22px rgba(22,163,74,.28) !important;
}
.floating.whatsapp i,
.floating.top-btn i { color:#fff !important; }
.floating.whatsapp:hover,
.floating.top-btn:hover { background:#22c55e !important; color:#fff !important; transform:scale(1.04) !important; }

/* ---------------- Carousel arrows ---------------- */
.carousel-btn,
.carousel-btn.carousel-prev,
.carousel-btn.carousel-next {
  background:#16a34a !important;
  color:#fff !important;
  border:2px solid #22c55e !important;
  box-shadow:0 6px 16px rgba(22,163,74,.25) !important;
}
.carousel-btn i,
.carousel-btn svg { color:#fff !important; fill:#fff !important; }
.carousel-btn:hover { background:#22c55e !important; color:#fff !important; }

/* ---------------- Admin job management: equal flex cards ---------------- */
#Job-updates .job-list,
.job-list {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
  gap:20px !important;
  margin:20px 0 4px !important;
  width:100% !important;
}
#Job-updates .job-admin-card,
.job-list .job-admin-card {
  box-sizing:border-box !important;
  flex:1 1 calc(33.333% - 14px) !important;
  width:auto !important;
  max-width:calc(33.333% - 14px) !important;
  min-width:300px !important;
  margin:0 !important;
  min-height:280px !important;
  transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease !important;
  transform:none !important;
}
#Job-updates .job-admin-card:hover,
.job-list .job-admin-card:hover {
  transform:none !important;
  box-shadow:0 10px 24px rgba(22,163,74,.14) !important;
}
#Job-updates .job-admin-top { min-width:0; }
#Job-updates .job-admin-title { overflow-wrap:anywhere; }
#Job-updates .job-badges { display:flex; flex-wrap:wrap; gap:6px; }
#Job-updates .job-badge { margin:0 !important; max-width:100%; overflow-wrap:anywhere; }
#Job-updates .job-admin-footer { margin-top:auto; }

/* Admin boxes/cards should not jump on hover. */
.admin-box:hover,
.overview-card:hover,
.dashboard-card:hover,
.dashboard-empty-card:hover,
.chart-card:hover { transform:none !important; }

/* Admin theme-safe dark surfaces */
html:not([data-theme="light"]) .admin-box,
html:not([data-theme="light"]) .job-admin-card,
html:not([data-theme="light"]) .dashboard-empty-card,
html:not([data-theme="light"]) .overview-card,
html:not([data-theme="light"]) .chart-card {
  background:#0d2419 !important;
  border-color:rgba(74,222,128,.22) !important;
}

/* Admin action buttons remain green with white icons/text. */
.admin-panel .btn,
.admin-panel button,
.job-actions button,
.admin-box button {
  color:#fff !important;
}
.admin-panel .btn-primary,
.admin-panel .btn-success,
.admin-panel .job-actions button {
  background:#16a34a !important;
  border-color:#16a34a !important;
}
.admin-panel .btn-primary:hover,
.admin-panel .btn-success:hover,
.admin-panel .job-actions button:hover {
  background:#22c55e !important;
}

@media (max-width:1100px) {
  .footer-container { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  #Job-updates .job-admin-card,
  .job-list .job-admin-card { flex-basis:calc(50% - 10px) !important; max-width:calc(50% - 10px) !important; }
}
@media (max-width:700px) {
  .footer { padding:38px 14px 18px !important; }
  .footer-container { grid-template-columns:1fr !important; gap:22px !important; }
  .footer-col,.footer-newsletter { width:100% !important; }
  #Job-updates .job-admin-card,
  .job-list .job-admin-card { flex-basis:100% !important; max-width:100% !important; min-width:0 !important; }
  .floating.whatsapp { bottom:82px !important; right:14px !important; }
  .floating.top-btn { bottom:20px !important; right:14px !important; }
}

/* Light theme footer surfaces */
[data-theme="light"] .footer {
  background:#eef6f0 !important;
  color:#0f1a14 !important;
}
[data-theme="light"] .footer-col p,
[data-theme="light"] .footer-newsletter p,
[data-theme="light"] .footer-col ul li a,
[data-theme="light"] .footer-bottom {
  color:#33443a !important;
}
[data-theme="light"] .footer-col h3,
[data-theme="light"] .footer-bottom p { color:#0f1a14 !important; }

/* FINAL POLISH — floating controls must stay beside the page, never below the footer. */
.floating.whatsapp,
.floating.top-btn,
#themeToggleBtn.theme-toggle-btn {
  position: fixed !important;
  z-index: 10050 !important;
}

.floating.whatsapp,
.floating.top-btn {
  width: 50px !important;
  height: 50px !important;
  right: 20px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #16a34a !important;
  border: 2px solid #22c55e !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(22,163,74,.28) !important;
}

.floating.whatsapp { bottom: 82px !important; }
.floating.top-btn { bottom: 20px !important; }
.floating.whatsapp i,
.floating.top-btn i { color: #fff !important; }

.floating.whatsapp:hover,
.floating.top-btn:hover {
  background: #22c55e !important;
  color: #fff !important;
  transform: scale(1.04) !important;
}

@media (max-width: 700px) {
  .floating.whatsapp { right: 14px !important; bottom: 78px !important; }
  .floating.top-btn { right: 14px !important; bottom: 18px !important; }
}
