/* ImmigrationCafe Jobs — design tokens. Native system fonts, no external calls. */
.icjb{--icjb-ink:#10233F;--icjb-paper:#FAF7F1;--icjb-card:#FFFFFF;--icjb-line:#E7E1D6;--icjb-muted:#6B7280;--icjb-amber:#F5A623;--icjb-amber-ink:#5C3A00;--icjb-blue:#2563EB;--icjb-gray:#64748B;--icjb-pink:#E8598A;--icjb-green:#16A34A;--icjb-green-bg:#E7F7ED;--icjb-blue-bg:#E8EFFD;--icjb-radius:12px;--icjb-font-display:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;--icjb-font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;--icjb-font-data:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-family:var(--icjb-font-body);background:var(--icjb-paper);color:var(--icjb-ink)}
.icjb *{box-sizing:border-box}
.icjb a{color:inherit;text-decoration:none}
.icjb-inner{max-width:480px;margin:0 auto}
.icjb-header{display:flex;align-items:center;justify-content:center;padding:14px 18px;background:var(--icjb-card);border-bottom:1px solid var(--icjb-line);position:sticky;top:0;z-index:10}
.icjb-header-inner{width:100%;max-width:480px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.icjb-logo{font-family:var(--icjb-font-display);font-weight:800;font-size:17px;letter-spacing:-.02em}
.icjb-logo span{color:var(--icjb-amber)}
.icjb-search-toggle{width:36px;height:36px;border-radius:50%;border:1px solid var(--icjb-line);background:var(--icjb-paper);color:var(--icjb-ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;padding:0}
.icjb-search-toggle svg{width:17px;height:17px}
.icjb-search-toggle[aria-expanded="true"]{background:var(--icjb-ink);color:#fff;border-color:var(--icjb-ink)}
.icjb-search-drawer{background:var(--icjb-card);border-bottom:1px solid var(--icjb-line);padding:12px 18px}
.icjb-search-form{display:flex;gap:8px;max-width:480px;margin:0 auto}
.icjb-search-form input,.icjb-search-form select{flex:1;min-width:0;padding:9px 10px;border:1px solid var(--icjb-line);border-radius:8px;font-size:13px;font-family:var(--icjb-font-body);background:var(--icjb-paper);color:var(--icjb-ink)}
.icjb-search-form button{padding:9px 14px;border:none;border-radius:8px;background:var(--icjb-ink);color:#fff;font-weight:700;font-size:13px;cursor:pointer;flex-shrink:0}
.icjb-search-form button:hover{background:#0b1a30}
.icjb-results-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.icjb-results-bar h2{margin:0}
.icjb-clear-search{font-size:12px;font-weight:700;color:var(--icjb-blue);white-space:nowrap;flex-shrink:0}
.icjb-clear-search:hover{text-decoration:underline}
.icjb-hero{padding:22px 18px 6px}
.icjb-hero h1{font-family:var(--icjb-font-display);font-weight:800;font-size:20px;line-height:1.25;letter-spacing:-.01em;margin:0 0 8px}
.icjb-hero p{font-size:13.5px;color:var(--icjb-muted);margin:0;line-height:1.5}
.icjb-section{padding:18px 18px 2px;scroll-margin-top:70px}
.icjb-section h2{font-family:var(--icjb-font-display);font-weight:800;font-size:14px;letter-spacing:-.01em;margin:0 0 10px}
.icjb-empty{font-size:13px;color:var(--icjb-muted)}
.icjb-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.icjb-cat-card{display:flex;align-items:center;gap:10px;background:var(--icjb-card);border:1px solid var(--icjb-line);border-left:3px solid var(--icjb-blue);border-radius:9px;padding:9px 8px;transition:box-shadow .15s ease,transform .15s ease}
.icjb-cat-card:hover{box-shadow:0 4px 14px rgba(16,35,63,.1);transform:translateY(-1px)}
.icjb-cat-card:active{transform:translateY(0) scale(.98)}
.icjb-cat-card.icjb-collar-blue{border-left-color:var(--icjb-blue)}
.icjb-cat-card.icjb-collar-gray{border-left-color:var(--icjb-gray)}
.icjb-cat-card.icjb-collar-pink{border-left-color:var(--icjb-pink)}
.icjb-cat-icon{width:30px;height:30px;flex-shrink:0;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--icjb-blue-bg);color:var(--icjb-blue)}
.icjb-cat-icon svg{width:16px;height:16px}
.icjb-collar-gray .icjb-cat-icon{background:#EEF1F5;color:var(--icjb-gray)}
.icjb-collar-pink .icjb-cat-icon{background:#FCE8EF;color:var(--icjb-pink)}
.icjb-cat-text{min-width:0}
.icjb-cat-label{display:block;font-size:11.5px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.icjb-cat-sub{display:block;font-size:9.5px;color:var(--icjb-muted)}
.icjb-job-feed{display:flex;flex-direction:column;gap:10px;padding-bottom:6px}
.icjb-ticket{display:flex;background:var(--icjb-card);border:1px solid var(--icjb-line);border-radius:var(--icjb-radius);overflow:hidden;box-shadow:0 1px 2px rgba(16,35,63,.04);transition:box-shadow .15s ease,transform .15s ease}
.icjb-ticket:hover{box-shadow:0 4px 14px rgba(16,35,63,.09);transform:translateY(-1px)}
.icjb-ticket-main{flex:1;min-width:0;padding:13px 14px}
.icjb-ticket-title{font-size:14px;font-weight:700;margin-bottom:3px;line-height:1.3}
.icjb-ticket-company{font-size:11.5px;color:var(--icjb-muted);margin-bottom:9px}
.icjb-badge-row{display:flex;flex-wrap:wrap;gap:6px}
.icjb-badge{font-family:var(--icjb-font-data);font-size:10.5px;font-weight:600;padding:4px 8px;border-radius:5px;white-space:nowrap}
.icjb-badge-salary{background:var(--icjb-amber);color:var(--icjb-amber-ink)}
.icjb-badge-visa{background:var(--icjb-green-bg);color:var(--icjb-green)}
.icjb-badge-self{background:#F1F5F9;color:var(--icjb-gray)}
.icjb-badge-housing{background:var(--icjb-blue-bg);color:var(--icjb-blue)}
.icjb-ticket-stub{flex:0 0 78px;background:var(--icjb-paper);border-left:1.5px dashed var(--icjb-line);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:11px 6px;text-align:center}
.icjb-ticket-expiry{font-size:8.5px;color:var(--icjb-muted);line-height:1.4}
.icjb-ticket-apply{font-family:var(--icjb-font-display);font-weight:800;font-size:10.5px}
.icjb-carousel-wrap{position:relative}
.icjb-company-strip{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scroll-behavior:smooth;scrollbar-width:none}
.icjb-company-strip::-webkit-scrollbar{display:none}
.icjb-company-chip{flex:0 0 auto;width:88px;background:var(--icjb-card);border:1px solid var(--icjb-line);border-radius:10px;padding:10px 6px;text-align:center}
.icjb-company-avatar{width:30px;height:30px;margin:0 auto 5px;border-radius:7px;background:var(--icjb-ink);color:#fff;font-family:var(--icjb-font-display);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.icjb-company-logo{width:30px;height:30px;margin:0 auto 5px;border-radius:7px;object-fit:contain;background:#fff;border:1px solid var(--icjb-line);padding:3px;display:block}
.icjb-company-name{font-size:10.5px;font-weight:700;line-height:1.25;margin-bottom:2px}
.icjb-company-count{font-size:9px;color:var(--icjb-green);font-weight:600}
.icjb-carousel-btn{display:none;position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:1px solid var(--icjb-line);background:var(--icjb-card);box-shadow:0 2px 6px rgba(16,35,63,.12);align-items:center;justify-content:center;cursor:pointer}
.icjb-carousel-btn svg{width:14px;height:14px}
.icjb-carousel-prev{left:-14px}
.icjb-carousel-next{right:-14px}
.icjb-topbar{background:var(--icjb-paper);border-bottom:1px solid var(--icjb-line);padding:14px 18px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.icjb-topbar-category{font-size:12px;color:var(--icjb-muted);text-transform:uppercase;letter-spacing:.04em;width:100%}
.icjb-badge-type{background:#DCFCE7;color:#15803D}
.icjb-detail-grid{display:block;padding:20px 18px;width:100%}
.icjb-detail-main{font-size:14px;line-height:1.75;width:100%}
.icjb-detail-main p{margin:0 0 14px}
.icjb-detail-sidebar{width:100%;margin-top:24px}
.icjb-overview-card{background:var(--icjb-paper);border:1px solid var(--icjb-line);border-radius:var(--icjb-radius);padding:18px}
.icjb-overview-heading{font-family:var(--icjb-font-display);font-weight:800;font-size:14px;margin:0 0 16px}
.icjb-overview-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.icjb-overview-icon{width:34px;height:34px;flex-shrink:0;border-radius:8px;background:var(--icjb-blue-bg);color:var(--icjb-blue);display:flex;align-items:center;justify-content:center}
.icjb-overview-icon svg{width:17px;height:17px}
.icjb-overview-logo{width:100%;height:100%;object-fit:contain;border-radius:6px}
.icjb-overview-label{display:block;font-size:11.5px;color:var(--icjb-muted);margin-bottom:2px}
.icjb-overview-value{display:block;font-size:13.5px;font-weight:700;color:var(--icjb-ink)}
.icjb-whatsapp-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:#25D366;color:#fff;font-weight:700;font-size:14px;padding:12px;border-radius:9px;width:100%;margin-top:4px}
.icjb-whatsapp-btn svg{width:18px;height:18px}
.icjb a:focus-visible,.icjb button:focus-visible{outline:2px solid var(--icjb-amber);outline-offset:2px}
@media(min-width:640px){.icjb-inner,.icjb-header-inner,.icjb-search-form{max-width:680px}.icjb-hero h1{font-size:24px}.icjb-cat-grid{grid-template-columns:repeat(4,1fr);gap:10px}}
@media(min-width:1024px){
  .icjb-inner,.icjb-header-inner,.icjb-search-form{max-width:1140px}
  .icjb-header{padding:18px 32px}
  .icjb-search-drawer{padding:16px 32px}
  .icjb-topbar{padding:18px 32px}
  .icjb-detail-grid{display:grid;grid-template-columns:1fr 340px;gap:32px;padding:32px}
  .icjb-detail-sidebar{margin-top:0}
  .icjb-overview-card{position:sticky;top:20px}
  .icjb-section{padding:32px 32px 4px}
  .icjb-hero{padding:40px 32px 12px}
  .icjb-hero h1{font-size:32px;max-width:720px}
  .icjb-hero p{font-size:15px;max-width:600px}
  .icjb-section h2{font-size:18px;margin-bottom:16px}
  .icjb-cat-grid{grid-template-columns:repeat(6,1fr);gap:12px}
  .icjb-job-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
  .icjb-ticket{flex-direction:column}
  .icjb-ticket-stub{flex:none;flex-direction:row;justify-content:space-between;border-left:none;border-top:1.5px dashed var(--icjb-line);width:100%}
  .icjb-company-chip{width:108px;padding:14px 8px}
  .icjb-company-avatar,.icjb-company-logo{width:36px;height:36px}
  .icjb-carousel-btn{display:flex}
  .icjb-carousel-wrap{padding:0 6px}
}
@media(prefers-reduced-motion:reduce){.icjb-ticket,.icjb-company-strip{transition:none;scroll-behavior:auto}}
/* Hide the theme's automatic featured-image display on single job pages
   only (WordPress adds body.single-icjb_job automatically). Covers the
   class names most common WP themes use for the post thumbnail. If your
   theme uses a different class, tell me the theme name and I'll target
   it precisely instead of this best-effort list. */
body.single-icjb_job .post-thumbnail,
body.single-icjb_job .entry-thumbnail,
body.single-icjb_job .wp-post-image,
body.single-icjb_job img.attachment-post-thumbnail,
body.single-icjb_job .featured-image{display:none!important}
