/*
Theme Name: ViecLamVN
Description: Job board theme for vieclamgialai.com
Version: 4.0
*/
:root {
  --red:#E63946;--red2:#C1121F;--gold:#F4A522;--navy:#0F172A;--navy2:#1E2A3E;
  --green:#059669;--blue:#2563EB;--purple:#7C3AED;
  --bg:#F8FAFC;--surface:#fff;--surface2:#F1F5F9;--nav-bg:#0F172A;
  --tx:#0F172A;--tx2:#475569;--tx3:#94A3B8;--border:#E2E8F0;
  --r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-full:999px;
  --shadow:0 1px 3px rgba(0,0,0,.08);--shadow-lg:0 10px 25px rgba(0,0,0,.08);
}
[data-theme="dark"]{
  --bg:#0A0F1E;--surface:#111827;--surface2:#1C2333;--nav-bg:#070D1A;
  --tx:#F1F5F9;--tx2:#94A3B8;--tx3:#475569;--border:#1E2A3E;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Be Vietnam Pro',sans-serif;font-size:15px;line-height:1.65;color:var(--tx);background:var(--bg)}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
/* Buttons */
.btn{display:inline-flex;align-items:center;gap:7px;padding:9px 20px;border-radius:var(--r-full);font-family:inherit;font-size:.875rem;font-weight:700;border:none;cursor:pointer;transition:all .18s;text-decoration:none}
.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red2)}
.btn-gold{background:var(--gold);color:#1a1a1a}
.btn-outline{background:transparent;color:var(--tx);border:1.5px solid var(--border)}.btn-outline:hover{border-color:var(--red);color:var(--red)}
.btn-ghost{background:transparent;color:var(--tx2)}.btn-ghost:hover{background:var(--surface2)}
.btn-sm{padding:6px 14px;font-size:.8rem}
.btn-lg{padding:12px 26px;font-size:.95rem}
.btn-block{width:100%;justify-content:center}
/* Forms */
.fg{margin-bottom:14px}
.flabel,.flbl{display:block;font-size:.83rem;font-weight:600;margin-bottom:5px;color:var(--tx)}
.flabel em,.flbl em{color:var(--red);font-style:normal}
.fc{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:inherit;font-size:.875rem;color:var(--tx);background:var(--surface);outline:none;transition:border-color .15s}
.fc:focus{border-color:var(--red)}
.fc::placeholder{color:var(--tx3)}
select.fc{-webkit-appearance:none;appearance:none}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
/* Badges */
.badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--r-full);font-size:.72rem;font-weight:600}
.b-full{background:rgba(16,185,129,.12);color:#059669}
.b-part{background:rgba(59,130,246,.12);color:#2563EB}
.b-remote{background:rgba(139,92,246,.12);color:#7C3AED}
.b-free{background:rgba(245,158,11,.12);color:#D97706}
.b-intern{background:rgba(236,72,153,.12);color:#BE185D}
/* Notices */
.notice{padding:10px 14px;border-radius:var(--r-sm);font-size:.86rem;margin-bottom:14px;border-left:3px solid transparent}
.notice-ok{background:rgba(16,185,129,.1);color:#065F46;border-color:var(--green)}
.notice-warn{background:rgba(245,158,11,.1);color:#92400E;border-color:var(--gold)}
.notice-err{background:rgba(230,57,70,.08);color:#C1121F;border-color:var(--red)}
.notice-info{background:rgba(59,130,246,.08);color:#1e40af;border-color:var(--blue)}
/* Job card */
.job-card{background:var(--surface);border-radius:var(--r-lg);border:1.5px solid var(--border);padding:16px 18px;display:grid;grid-template-columns:52px 1fr auto;gap:13px;align-items:center;transition:all .18s;position:relative;text-decoration:none;color:inherit;margin-bottom:11px}
.job-card:hover{border-color:var(--red);box-shadow:0 4px 18px rgba(230,57,70,.12);transform:translateY(-2px)}
.co-logo{width:52px;height:52px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.05rem;font-weight:900;color:#fff;overflow:hidden;flex-shrink:0;border:1px solid var(--border)}
.co-logo img{width:100%;height:100%;object-fit:cover}
.jc-body{min-width:0}
.jc-title{font-size:.95rem;font-weight:700;color:var(--tx);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.job-card:hover .jc-title{color:var(--red)}
.jc-co{font-size:.78rem;color:var(--tx3);margin-bottom:6px}
.jc-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.jc-loc{display:flex;align-items:center;gap:3px;font-size:.74rem;color:var(--tx2)}
.jc-loc .dashicons{font-size:12px!important;width:12px!important;height:12px!important;color:var(--red)}
.jc-actions{display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:108px}
.jc-salary{font-size:.9rem;font-weight:700;color:var(--red);white-space:nowrap}
.jc-dead{font-size:.7rem;color:var(--tx3)}
.jc-save-btn{background:none;border:none;padding:3px;color:var(--tx3);font-size:1rem;cursor:pointer;transition:color .15s;line-height:1}
.jc-save-btn:hover,.jc-save-btn.saved{color:var(--red)}
/* Archive */
.page-header{background:var(--navy);padding:26px 0}
.page-header h1{font-family:'Playfair Display',serif;color:#fff;font-size:1.6rem}
.breadcrumb{display:flex;gap:7px;align-items:center;font-size:.82rem;color:rgba(255,255,255,.5);margin-bottom:7px}
.breadcrumb a{color:rgba(255,255,255,.65)}.breadcrumb a:hover{color:#fff}
.main-grid{display:grid;grid-template-columns:230px 1fr;gap:22px;padding:28px 0}
.filter-box{background:var(--surface);border-radius:var(--r-md);border:1px solid var(--border);padding:16px;margin-bottom:14px}
.filter-box-title{font-size:.84rem;font-weight:700;margin-bottom:10px;color:var(--tx)}
.filter-opt{display:flex;align-items:center;gap:7px;padding:4px 0;cursor:pointer}
.filter-opt input{accent-color:var(--red);width:14px;height:14px;cursor:pointer;flex-shrink:0}
.filter-lbl{font-size:.83rem;color:var(--tx2);cursor:pointer;flex:1}
.f-count{background:var(--surface2);color:var(--tx3);padding:1px 7px;border-radius:var(--r-full);font-size:.7rem;margin-left:auto}
.filter-reset{background:none;border:none;color:var(--red);font-size:.78rem;cursor:pointer;margin-top:6px;padding:0}
.listings-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.listings-count{font-size:.84rem;color:var(--tx2)}
.sort-sel{padding:6px 10px;border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:inherit;font-size:.82rem;background:var(--surface);color:var(--tx);cursor:pointer}
.pagination{margin-top:22px;display:flex;justify-content:center}
.pagination ul{display:flex;gap:5px;list-style:none}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-sm);border:1.5px solid var(--border);font-size:.84rem;font-weight:600;color:var(--tx2);transition:all .15s}
.pagination .page-numbers.current,.pagination .page-numbers:hover{background:var(--red);border-color:var(--red);color:#fff}
.empty-state{text-align:center;padding:56px 24px;color:var(--tx3)}
.es-icon{font-size:3rem;margin-bottom:14px}
.es-title{font-size:1.1rem;font-weight:700;color:var(--tx);margin-bottom:7px}
/* Single job */
.jd-wrap{display:grid;grid-template-columns:1fr 300px;gap:22px;padding:28px 0}
.jd-header{background:var(--surface);border-radius:var(--r-xl);border:1.5px solid var(--border);padding:24px;margin-bottom:16px;position:relative}
.jd-header.is-vip{border-color:var(--gold)}
.jd-header-inner{display:flex;gap:18px;align-items:flex-start}
.jd-logo{width:70px;height:70px;border-radius:var(--r-md);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:900;color:#fff}
.jd-logo img{width:100%;height:100%;object-fit:cover}
.jd-title{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:900;margin-bottom:5px;color:var(--tx)}
.jd-co{font-size:.9rem;color:var(--tx2);margin-bottom:12px}
.jd-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.jd-pill{background:var(--surface2);border-radius:var(--r-sm);padding:7px 12px;display:flex;align-items:center;gap:7px}
.jd-pill-ico .dashicons{font-size:14px!important;width:14px!important;height:14px!important;color:var(--red)}
.jd-pill-lbl{font-size:.72rem;color:var(--tx3)}
.jd-pill-val{font-size:.84rem;font-weight:600;color:var(--tx)}
.jd-cta{display:flex;gap:10px;flex-wrap:wrap}
.jc-save{background:none;border:1.5px solid var(--border);padding:8px 14px;border-radius:var(--r-full);color:var(--tx2);cursor:pointer;transition:all .15s;font-family:inherit;font-size:.84rem;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.jc-save:hover,.jc-save.saved{border-color:var(--red);color:var(--red)}
.content-card{background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--border);padding:22px;margin-bottom:14px}
.content-card-title{font-size:1rem;font-weight:800;margin-bottom:14px;color:var(--tx)}
.post-body{font-size:.9rem;line-height:1.8;color:var(--tx2)}
.post-body ul,.post-body ol{margin:10px 0 10px 20px}
.tag-chip{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--r-full);border:1.5px solid var(--border);font-size:.78rem;font-weight:600;color:var(--tx2);transition:all .15s;margin:3px}
.tag-chip:hover{border-color:var(--red);color:var(--red)}
.apply-card{background:var(--surface);border-radius:var(--r-xl);border:1.5px solid var(--border);padding:20px;margin-bottom:14px;position:sticky;top:82px}
.apply-salary{font-size:1.4rem;font-weight:800;color:var(--red);margin-bottom:4px}
.apply-deadline{font-size:.78rem;color:var(--tx3);margin-bottom:14px}
.apply-divider{height:1px;background:var(--border);margin:14px 0}
.apply-meta{font-size:.78rem;color:var(--tx3);line-height:1.8}
.co-card{background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--border);padding:18px}
.co-card-logo{width:56px;height:56px;border-radius:var(--r-md);margin-bottom:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:900;color:#fff}
.co-card-name{font-size:.92rem;font-weight:700;margin-bottom:8px;color:var(--tx)}
.co-meta-list{display:flex;flex-direction:column;gap:6px}
.co-meta-item{display:flex;align-items:center;gap:7px;font-size:.8rem;color:var(--tx2)}
.co-meta-item .dashicons{font-size:13px!important;width:13px!important;height:13px!important;color:var(--red)}
/* Modals */
.modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);z-index:9998;align-items:center;justify-content:center;padding:20px}
.modal-bg.open{display:flex}
.modal-box{background:var(--surface);border-radius:var(--r-xl);padding:28px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.modal-close{position:absolute;top:14px;right:14px;background:var(--surface2);border:none;width:30px;height:30px;border-radius:var(--r-sm);font-size:1.1rem;cursor:pointer;color:var(--tx3);display:flex;align-items:center;justify-content:center;line-height:1}
.modal-title{font-size:1.1rem;font-weight:800;margin-bottom:4px;color:var(--tx)}
.modal-subtitle{font-size:.84rem;color:var(--tx3);margin-bottom:18px}
.upload-area{border:2px dashed var(--border);border-radius:var(--r-md);padding:20px;text-align:center;cursor:pointer;transition:all .15s;position:relative}
.upload-area:hover{border-color:var(--red);background:rgba(230,57,70,.02)}
.upload-area input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:0}
.upload-ico{font-size:1.6rem;margin-bottom:7px}
.upload-txt{font-size:.8rem;color:var(--tx3)}
.upload-txt strong{color:var(--red)}
/* Pricing */
.pricing-hero{background:var(--navy);padding:40px 0;text-align:center}
.pricing-hero h1{font-family:'Playfair Display',serif;color:#fff;font-size:2rem;margin-bottom:7px}
.pricing-hero p{color:rgba(255,255,255,.55);font-size:.9rem}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:14px}
.pkg-card{background:var(--surface);border-radius:var(--r-xl);border:1.5px solid var(--border);padding:24px;position:relative;overflow:hidden;transition:all .18s}
.pkg-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.pkg-card.hot{border-color:var(--red)}
.pkg-card.hot::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--red),var(--gold))}
.pkg-hot-tag{position:absolute;top:14px;right:14px;background:var(--red);color:#fff;padding:2px 10px;border-radius:var(--r-full);font-size:.68rem;font-weight:800}
.pkg-icon{font-size:1.8rem;margin-bottom:10px}
.pkg-name{font-size:1rem;font-weight:800;color:var(--tx);margin-bottom:4px}
.pkg-desc{font-size:.8rem;color:var(--tx3);margin-bottom:16px;line-height:1.6}
.pkg-price{font-size:2rem;font-weight:900;color:var(--tx);line-height:1}
.pkg-card.hot .pkg-price{color:var(--red)}
.pkg-period{font-size:.76rem;color:var(--tx3);margin-top:3px;margin-bottom:16px}
.pkg-sep{height:1px;background:var(--border);margin-bottom:14px}
.pkg-feats{margin-bottom:20px}
.pkg-feat{display:flex;align-items:center;gap:7px;font-size:.82rem;color:var(--tx2);margin-bottom:7px}
.pkg-feat .ok{color:var(--green)}.pkg-feat .no{color:var(--tx3)}
/* Footer */
.site-footer{background:var(--navy);padding:40px 0 0;margin-top:auto}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px}
.f-brand .site-logo{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:900;color:#fff;display:block;margin-bottom:9px}
.f-brand .site-logo em{color:var(--red);font-style:normal}
.f-brand p{font-size:.82rem;color:rgba(255,255,255,.4);line-height:1.7;margin-bottom:14px}
.f-socials{display:flex;gap:8px}
.f-social{width:34px;height:34px;background:rgba(255,255,255,.07);border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);font-size:.82rem;font-weight:700;transition:all .15s}
.f-social:hover{background:var(--red);color:#fff}
.f-col h4{font-size:.82rem;font-weight:700;color:rgba(255,255,255,.35);text-transform:uppercase;letter-spacing:.8px;margin-bottom:12px}
.f-links{display:flex;flex-direction:column;gap:7px}
.f-links a{font-size:.82rem;color:rgba(255,255,255,.5);transition:color .15s}.f-links a:hover{color:#fff}
.footer-bot{border-top:1px solid rgba(255,255,255,.06);padding:16px 0;display:flex;align-items:center;justify-content:space-between;font-size:.78rem;color:rgba(255,255,255,.3)}
/* Auth */
.auth-pg{min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;background:var(--navy);padding:40px 20px}
.auth-box{background:var(--surface);border-radius:var(--r-xl);border:1px solid var(--border);padding:34px;width:100%;max-width:460px;box-shadow:0 24px 64px rgba(0,0,0,.35)}
/* Dashboard form sections */
.form-section{background:var(--surface);border-radius:var(--r-lg);padding:22px 24px;border:1px solid var(--border);margin-bottom:16px}
.fs-title{font-size:.92rem;font-weight:800;margin-bottom:18px;padding-bottom:11px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:9px;color:var(--tx)}
.fs-num{width:24px;height:24px;background:var(--red);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;flex-shrink:0}
.radio-group{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.radio-opt{display:flex;align-items:center;gap:9px;padding:10px 13px;border-radius:var(--r-sm);border:1.5px solid var(--border);cursor:pointer;transition:all .15s}
.radio-opt:hover{border-color:var(--red)}
.radio-opt input{accent-color:var(--red);flex-shrink:0}
.radio-lbl{font-size:.84rem;font-weight:500;cursor:pointer}
.dash-title{font-size:1.15rem;font-weight:800;margin-bottom:18px;display:flex;align-items:center;gap:8px;color:var(--tx)}
.dash-title .dashicons{font-size:20px!important;width:20px!important;height:20px!important;color:var(--red)}
/* Responsive */
@media(max-width:1024px){
  .main-grid,.jd-wrap{grid-template-columns:1fr}
  .filter-sidebar{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
  .pricing-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .form-row{grid-template-columns:1fr}
  .job-card{grid-template-columns:44px 1fr}
  .jc-actions{display:none}
  .footer-grid{grid-template-columns:1fr}
  .radio-group{grid-template-columns:1fr}
}

/* ── Job card extras ── */
.job-card.expired { opacity:.68; }
.jc-time { margin-left:auto; font-size:.7rem; color:var(--tx3); white-space:nowrap; }
.jc-loc { display:flex; align-items:center; gap:3px; font-size:.74rem; color:var(--tx2); }
.jc-loc .dashicons { font-size:12px!important; width:12px!important; height:12px!important; color:var(--red); }

/* ================================================================
   VIP JOB CARD — Premium design
   ================================================================ */

/* Base VIP card */
.job-card.vip {
  border: 1.5px solid transparent;
  background:
    linear-gradient(var(--surface), var(--surface)) padding-box,
    linear-gradient(135deg, #F59E0B 0%, #FBBF24 40%, #F97316 100%) border-box;
  box-shadow:
    0 0 0 1px rgba(245,158,11,.15),
    0 4px 20px rgba(245,158,11,.18),
    0 1px 4px rgba(0,0,0,.06);
  position: relative;
  overflow: hidden;
}
.job-card.vip::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg,
    rgba(251,191,36,.07) 0%,
    rgba(249,115,22,.04) 50%,
    transparent 100%);
  pointer-events: none;
}
.job-card.vip:hover {
  box-shadow:
    0 0 0 1px rgba(245,158,11,.3),
    0 8px 30px rgba(245,158,11,.25),
    0 2px 8px rgba(0,0,0,.08);
  transform: translateY(-3px);
}
[data-theme="dark"] .job-card.vip {
  background:
    linear-gradient(#111827, #111827) padding-box,
    linear-gradient(135deg, #F59E0B, #F97316) border-box;
  box-shadow:
    0 0 0 1px rgba(245,158,11,.2),
    0 4px 20px rgba(245,158,11,.12);
}
[data-theme="dark"] .job-card.vip::before {
  background: linear-gradient(135deg, rgba(251,191,36,.08) 0%, transparent 60%);
}

/* VIP ribbon — top-right corner */
.jc-vip-ribbon {
  position: absolute;
  top: 0; right: 0;
  background: linear-gradient(135deg, #F59E0B 0%, #F97316 100%);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .5px;
  text-transform: uppercase;
  padding: 5px 12px 5px 16px;
  border-radius: 0 0 0 14px;
  display: flex;
  align-items: center;
  gap: 4px;
  box-shadow: -2px 2px 8px rgba(245,158,11,.35);
  line-height: 1;
  z-index: 2;
}
.jc-vip-ribbon svg {
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.2));
}

/* VIP logo ring */
.co-logo-vip {
  box-shadow:
    0 0 0 2px var(--surface),
    0 0 0 4px #F59E0B,
    0 2px 8px rgba(245,158,11,.3);
}

/* VIP salary — gold */
.jc-salary-vip {
  color: #D97706 !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
}
[data-theme="dark"] .jc-salary-vip { color: #FBBF24 !important; }

/* Non-VIP card: keep clean */
.job-card:not(.vip) {
  border: 1.5px solid var(--border);
}

/* ── Job card extras (shared) ── */
.jc-title-row { display:flex; align-items:center; gap:7px; margin-bottom:2px; }
.jc-title-row .jc-title { flex:1; min-width:0; }
.jc-time { margin-left:auto; font-size:.7rem; color:var(--tx3); white-space:nowrap; }
.jc-loc { display:flex; align-items:center; gap:3px; font-size:.74rem; color:var(--tx2); }
.jc-loc svg { color:var(--red); flex-shrink:0; }
.job-card.expired { opacity:.68; }

/* Single job header VIP */
.jd-header.is-vip {
  border: 1.5px solid transparent;
  background:
    linear-gradient(var(--surface), var(--surface)) padding-box,
    linear-gradient(135deg, #F59E0B, #F97316) border-box;
  box-shadow: 0 4px 20px rgba(245,158,11,.15);
}
.jd-header.is-vip::after {
  content: '⭐ Tin VIP';
  position: absolute;
  top: 14px; right: 14px;
  background: linear-gradient(135deg, #F59E0B, #F97316);
  color: #fff;
  padding: 4px 13px;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .4px;
  box-shadow: 0 2px 8px rgba(245,158,11,.4);
}
/* Hide old vip-tag on cards (replaced by ribbon) */
.job-card .vip-tag { display: none !important; }

/* ── Front-page VIP cards ── */
.vl-job.vip {
  border: 1.5px solid transparent !important;
  background-image:
    linear-gradient(var(--surface), var(--surface)),
    linear-gradient(135deg, #F59E0B 0%, #FBBF24 40%, #F97316 100%) !important;
  background-origin: padding-box, border-box !important;
  background-clip: padding-box, border-box !important;
  box-shadow:
    0 0 0 1px rgba(245,158,11,.12),
    0 4px 18px rgba(245,158,11,.15) !important;
  position: relative;
  overflow: hidden;
}
.vl-job.vip::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(251,191,36,.06) 0%, transparent 60%);
  pointer-events: none;
}
.vl-job.vip:hover {
  box-shadow:
    0 0 0 1px rgba(245,158,11,.25),
    0 8px 28px rgba(245,158,11,.22) !important;
  transform: translateY(-3px) !important;
}
/* Front-page VIP ribbon */
.vl-vip-ribbon-fp {
  position: absolute;
  top: 0; right: 0;
  background: linear-gradient(135deg, #F59E0B, #F97316);
  color: #fff;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .5px;
  text-transform: uppercase;
  padding: 4px 11px 4px 14px;
  border-radius: 0 14px 0 12px;
  display: flex;
  align-items: center;
  gap: 4px;
  box-shadow: -2px 2px 6px rgba(245,158,11,.3);
  line-height: 1;
  z-index: 2;
}
/* Hide old absolute vl-vip-tag */
.vl-vip-tag { display: none !important; }
.vl-vip-badge-fp { display: none !important; }

/* ================================================================
   DARK MODE — comprehensive overrides
   ================================================================ */
[data-theme="dark"] body { background:var(--bg); color:var(--tx); }

/* Cards & surfaces */
[data-theme="dark"] .job-card         { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .content-card     { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .filter-box       { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .jd-sidebar > div { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .vl-sec           { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .vl-co            { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .vl-job           { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .auth-box         { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .dash-card        { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .rp-box           { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .emp-card         { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .cv-card          { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .ep-job           { background:var(--surface); border-color:var(--border); }
[data-theme="dark"] .emp-panel        { background:var(--surface); }
[data-theme="dark"] .emp-panel-head   { background:var(--surface); border-color:var(--border); }

/* Form inputs */
[data-theme="dark"] .fc,
[data-theme="dark"] .vl-inp,
[data-theme="dark"] .rp-inp,
[data-theme="dark"] .sx-fc,
[data-theme="dark"] .auth-inp,
[data-theme="dark"] select,
[data-theme="dark"] textarea,
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="url"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"] {
  background:var(--surface2);
  border-color:var(--border);
  color:var(--tx);
}
[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder { color:var(--tx3); }

/* Page header (dark navy) */
[data-theme="dark"] .page-header { background:var(--nav-bg); }

/* Text colors */
[data-theme="dark"] .jc-title,
[data-theme="dark"] .jc-co,
[data-theme="dark"] .ep-name,
[data-theme="dark"] .cv-name,
[data-theme="dark"] .cand-count strong,
[data-theme="dark"] .emp-card-name { color:var(--tx); }

[data-theme="dark"] .jc-co,
[data-theme="dark"] .jc-time,
[data-theme="dark"] .jc-dead,
[data-theme="dark"] .ep-desc,
[data-theme="dark"] .cv-apps,
[data-theme="dark"] .emp-card-industry { color:var(--tx3); }

/* Badges & tags */
[data-theme="dark"] .emp-tag,
[data-theme="dark"] .cv-tag,
[data-theme="dark"] .ptag,
[data-theme="dark"] .ep-meta-tag,
[data-theme="dark"] .emp-jobs-badge { border-color:var(--border); }

/* Badge text on dark backgrounds */
[data-theme="dark"] .badge.b-full   { background:rgba(16,185,129,.2);  color:#6EE7B7; }
[data-theme="dark"] .badge.b-part   { background:rgba(59,130,246,.2);  color:#93C5FD; }
[data-theme="dark"] .badge.b-remote { background:rgba(139,92,246,.2);  color:#C4B5FD; }
[data-theme="dark"] .badge.b-free   { background:rgba(245,158,11,.2);  color:#FCD34D; }
[data-theme="dark"] .badge.b-intern { background:rgba(20,184,166,.2);  color:#99F6E4; }

/* Dashboard */
[data-theme="dark"] .dash-stat  { background:var(--surface2); }
[data-theme="dark"] .dash-tab   { border-color:var(--border); }
[data-theme="dark"] .dash-tab-a { background:var(--surface); }
[data-theme="dark"] .sx         { background:var(--surface); border-color:var(--border); }

/* VIP card dark */
[data-theme="dark"] .job-card.vip {
  background: linear-gradient(var(--surface), var(--surface)) padding-box,
              linear-gradient(135deg,#F59E0B,#F97316) border-box;
}

/* Scrollbar */
[data-theme="dark"] ::-webkit-scrollbar { width:8px; background:var(--surface2); }
[data-theme="dark"] ::-webkit-scrollbar-thumb { background:var(--border); border-radius:4px; }

/* Links */
[data-theme="dark"] a { color:inherit; }
[data-theme="dark"] .filter-lbl { color:var(--tx2); }

/* Sections with bg */
[data-theme="dark"] .vl-section-alt { background:var(--surface); }
[data-theme="dark"] .vl-section-dark { background:var(--navy); }
[data-theme="dark"] .footer-bot { border-color:var(--border); color:var(--tx3); }
[data-theme="dark"] .site-footer { background:var(--nav-bg); }
@media only screen and (max-width: 768px) {
	.logo{width:100% !important;}
	.footer-grid{grid-template-columns:1fr 1fr !important;}
}
