:root{
  --bg:#EDF0F4; --surface:#FFFFFF; --surface-2:#F6F8FA; --line:#DCE1E8; --line-soft:#E9EDF2;
  --text:#18212C; --muted:#5A6573; --faint:#8A94A1;
  --navy:#0E2A47; --navy-2:#173B61; --orange:#F0661A; --orange-soft:#FFF1E8; --orange-ink:#B5470C;
  --green:#14794A; --green-soft:#E6F4EC; --blue:#1D5FA8; --blue-soft:#E8F0FA; --violet:#6B3FB0; --violet-soft:#F1EBFA;
  --like:#0A66C2; --shadow:0 0 0 1px var(--line-soft), 0 1px 2px rgba(14,42,71,.06);
  --font:"Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0D1520; --surface:#16212E; --surface-2:#1C2938; --line:#2A394A; --line-soft:#223142;
    --text:#E7EDF4; --muted:#A3B0BF; --faint:#7C8A9A;
    --navy:#0B1D31; --navy-2:#1E4670; --orange:#FF7A33; --orange-soft:#3A2416; --orange-ink:#FFB386;
    --green:#5ACB8C; --green-soft:#16302A; --blue:#7DB4F0; --blue-soft:#172C44; --violet:#BFA0F2; --violet-soft:#2A2140;
    --like:#5BA7F2; --shadow:0 0 0 1px var(--line-soft);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0D1520; --surface:#16212E; --surface-2:#1C2938; --line:#2A394A; --line-soft:#223142;
  --text:#E7EDF4; --muted:#A3B0BF; --faint:#7C8A9A;
  --navy:#0B1D31; --navy-2:#1E4670; --orange:#FF7A33; --orange-soft:#3A2416; --orange-ink:#FFB386;
  --green:#5ACB8C; --green-soft:#16302A; --blue:#7DB4F0; --blue-soft:#172C44; --violet:#BFA0F2; --violet-soft:#2A2140;
  --like:#5BA7F2; --shadow:0 0 0 1px var(--line-soft);
  color-scheme:dark;
}
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 72px)}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}
input,textarea,select{font:inherit;color:inherit}
a{color:inherit}
:focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-radius:6px}
img{max-width:100%}

/* ---------- top bar ---------- */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}
.top-in{max-width:1180px;margin:0 auto;height:60px;display:flex;align-items:center;gap:14px;padding:0 16px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
.mark{width:36px;height:36px;border-radius:9px;background:var(--navy);display:grid;place-items:center;position:relative;overflow:hidden}
.mark span{color:#fff;font-weight:800;font-size:14px;letter-spacing:-.02em}
.mark::after{content:"";position:absolute;right:-6px;bottom:-6px;width:16px;height:16px;border-radius:50%;background:var(--orange)}
.brand b{font-size:16px;letter-spacing:-.01em;white-space:nowrap}
.search{flex:1;max-width:340px;position:relative}
.search input{width:100%;height:38px;border-radius:8px;border:1px solid transparent;background:var(--surface-2);padding:0 12px 0 36px;outline:none}
.search input:focus{border-color:var(--navy-2);background:var(--surface)}
.search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--faint)}
.nav{margin-left:auto;display:flex;align-items:stretch;height:100%}
.nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:76px;padding:0 6px;color:var(--muted);font-size:12px;font-weight:600;border-bottom:2px solid transparent}
.nav button:hover{color:var(--text)}
.nav button.on{color:var(--text);border-bottom-color:var(--text)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 16px;border-radius:999px;font-weight:700;font-size:14px;white-space:nowrap}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{filter:brightness(.95)}
.btn-ghost{border:1px solid var(--line);background:var(--surface)}
.btn-ghost:hover{background:var(--surface-2)}
.btn-outline{border:1.5px solid var(--navy-2);color:var(--navy-2)}
:root[data-theme="dark"] .btn-outline{border-color:var(--blue);color:var(--blue)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .btn-outline{border-color:var(--blue);color:var(--blue)}}
.top .cta{margin-left:10px}

/* ---------- layout ---------- */
.wrap{max-width:1180px;margin:0 auto;padding:22px 16px 90px;display:grid;grid-template-columns:232px minmax(0,1fr) 300px;gap:22px;align-items:start}
.card{background:var(--surface);border-radius:10px;box-shadow:var(--shadow)}
.rail{position:sticky;top:calc(env(safe-area-inset-top,0px) + 82px);display:flex;flex-direction:column;gap:12px}

/* left */
.profile{overflow:hidden}
.cover{height:58px;background:var(--navy);position:relative;overflow:hidden}
.cover::before{content:"";position:absolute;inset:0;background:
  repeating-linear-gradient(115deg, transparent 0 18px, rgba(255,255,255,.05) 18px 19px)}
.cover::after{content:"";position:absolute;right:-30px;top:-40px;width:120px;height:120px;border-radius:50%;background:var(--orange);opacity:.9}
.p-body{padding:0 16px 16px;text-align:left}
.p-logo{width:64px;height:64px;border-radius:14px;margin-top:-30px;border:3px solid var(--surface);background:var(--navy);display:grid;place-items:center;position:relative;z-index:1}
.p-logo span{color:#fff;font-weight:800;font-size:22px}
.p-body h2{margin:10px 0 2px;font-size:17px;letter-spacing:-.01em}
.p-body p{margin:0;color:var(--muted);font-size:13px}
.stats{border-top:1px solid var(--line-soft);padding:12px 16px;display:grid;gap:6px;font-size:13px}
.stats div{display:flex;justify-content:space-between;color:var(--muted)}
.stats b{color:var(--blue)}
.filters{padding:14px 16px}
.filters h3{margin:0 0 10px;font-size:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{height:32px;padding:0 13px;border-radius:999px;border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--muted);background:var(--surface)}
.chip:hover{background:var(--surface-2)}
.chip[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff}
:root[data-theme="dark"] .chip[aria-pressed="true"]{color:#0D1520}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .chip[aria-pressed="true"]{color:#0D1520}}
.foot-links{font-size:12px;color:var(--faint);padding:4px 8px;display:flex;flex-wrap:wrap;gap:4px 12px}
.foot-links button{font-size:12px;color:var(--faint);font-weight:600}
.foot-links button:hover{color:var(--orange-ink);text-decoration:underline}

/* ---------- feed ---------- */
.feed{display:flex;flex-direction:column;gap:10px;min-width:0}
.compose{padding:14px 16px;display:flex;gap:12px;align-items:center}
.compose .fake{flex:1;height:46px;border-radius:999px;border:1px solid var(--line);display:flex;align-items:center;padding:0 18px;color:var(--muted);font-weight:600;font-size:14px;text-align:left}
.compose .fake:hover{background:var(--surface-2)}
.sortbar{display:flex;align-items:center;gap:8px;color:var(--faint);font-size:12px;padding:0 4px}
.sortbar hr{flex:1;border:0;border-top:1px solid var(--line);margin:0}
.sortbar b{color:var(--text)}

.post{padding:12px 0 4px;position:relative}
.p-head{display:flex;gap:10px;padding:0 16px;align-items:flex-start}
.av{width:48px;height:48px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-weight:800;font-size:17px;color:#fff;letter-spacing:-.02em}
.who{flex:1;min-width:0}
.who .n{font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px}
.who .n svg{color:var(--blue)}
.who .h{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.who .t{color:var(--faint);font-size:12px;display:flex;align-items:center;gap:4px}
.follow{color:var(--blue);font-weight:700;font-size:14px;padding:4px 8px;border-radius:6px;display:flex;align-items:center;gap:4px;flex-shrink:0}
.follow:hover{background:var(--blue-soft)}
.p-text{padding:10px 16px 0;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;font-size:14px;line-height:1.55}
.p-text.clamp{display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.more{display:block;margin:2px 16px 0 auto;color:var(--muted);font-size:14px;font-weight:600}
.more:hover{color:var(--blue);text-decoration:underline}
.tag{color:var(--blue);font-weight:600}
.meta{display:flex;flex-wrap:wrap;gap:6px;padding:12px 16px 0}
.pill{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:6px;font-size:12px;font-weight:700}
.pill.remote{background:var(--green-soft);color:var(--green)}
.pill.hybrid{background:var(--blue-soft);color:var(--blue)}
.pill.onsite{background:var(--violet-soft);color:var(--violet)}
.pill.exp{background:var(--surface-2);color:var(--muted)}

/* the locked fields */
.lock{display:inline;position:relative;cursor:pointer;border-radius:4px;padding:0 2px;margin:0 -2px;background:transparent;transition:background .15s}
.lock .blur{filter:blur(5px);-webkit-user-select:none;user-select:none;pointer-events:none}
.lock:hover,.lock:focus-visible{background:var(--orange-soft)}
.lock:hover .blur{filter:blur(4px)}
.lock .tip{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);white-space:nowrap;background:var(--navy);color:#fff;font-size:12px;font-weight:700;padding:5px 9px;border-radius:6px;opacity:0;pointer-events:none;transition:opacity .15s;display:flex;align-items:center;gap:5px;filter:none}
.lock:hover .tip,.lock:focus-visible .tip{opacity:1}
.unlock{margin:12px 16px 0;border:1px dashed var(--orange);background:var(--orange-soft);border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:10px;color:var(--orange-ink);font-size:13px;font-weight:600}
.unlock svg{flex-shrink:0}
.unlock span{flex:1}
.unlock button{color:var(--orange-ink);font-weight:800;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

.counts{display:flex;align-items:center;gap:6px;padding:10px 16px 8px;font-size:12px;color:var(--muted);min-height:20px}
.react-dot{width:18px;height:18px;border-radius:50%;background:var(--like);display:grid;place-items:center;color:#fff}
.actions{display:flex;border-top:1px solid var(--line-soft);margin:0 12px;padding:4px 0}
.act{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;height:44px;border-radius:6px;font-weight:700;font-size:14px;color:var(--muted)}
.act:hover{background:var(--surface-2);color:var(--text)}
.act.liked{color:var(--like)}
.act.liked svg{animation:pop .35s ease}
@keyframes pop{40%{transform:scale(1.3) rotate(-8deg)}100%{transform:none}}
.act.unlock-act{color:var(--orange-ink)}

.empty{padding:36px 24px;text-align:center}
.empty h3{margin:10px 0 6px;font-size:18px}
.empty p{margin:0 auto 16px;color:var(--muted);max-width:42ch}

.newpill{position:fixed;left:50%;top:calc(env(safe-area-inset-top,0px) + 74px);transform:translate(-50%,-20px);opacity:0;pointer-events:none;z-index:15;background:var(--like);color:#fff;font-weight:700;font-size:14px;height:38px;padding:0 16px;border-radius:999px;display:flex;align-items:center;gap:6px;box-shadow:0 6px 18px rgba(10,102,194,.35);transition:.25s}
.newpill.show{transform:translate(-50%,0);opacity:1;pointer-events:auto}

/* right rail: the day line */
.day{padding:16px}
.day-h{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.day-h h3{margin:0;font-size:15px}
.day-h small{color:var(--faint);font-size:12px}
.nextup{margin:12px 0 14px;padding:12px;border-radius:8px;background:var(--navy);color:#fff}
.nextup small{display:block;opacity:.75;font-size:12px}
.nextup strong{font-size:24px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.nextup em{font-style:normal;opacity:.75;font-size:12px;display:block}
.bar{position:relative;height:8px;border-radius:999px;background:var(--surface-2);margin:6px 0 4px;overflow:hidden}
.bar i{position:absolute;inset:0 auto 0 0;background:var(--orange);border-radius:999px}
.bar-l{display:flex;justify-content:space-between;color:var(--faint);font-size:11px;font-weight:600}
.slots{list-style:none;margin:14px 0 0;padding:0;max-height:300px;overflow:auto}
.slots li{display:grid;grid-template-columns:62px 14px 1fr;gap:8px;align-items:center;font-size:13px;padding:5px 0}
.slots .tm{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}
.slots .dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--line);background:var(--surface)}
.slots li.live .dot{background:var(--green);border-color:var(--green)}
.slots li.next .dot{border-color:var(--orange);background:var(--orange-soft)}
.slots .lb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.slots li.live .lb{color:var(--text)}
.premium{padding:16px;position:relative;overflow:hidden}
.premium h3{margin:0 0 6px;font-size:15px}
.premium p{margin:0 0 12px;color:var(--muted);font-size:13px}
.premium ul{margin:0 0 14px;padding:0;list-style:none;display:grid;gap:7px;font-size:13px}
.premium li{display:flex;gap:8px;align-items:flex-start}
.premium li svg{color:var(--green);flex-shrink:0;margin-top:2px}

/* bottom nav (mobile) */
.bnav{display:none}

/* ---------- admin sheet ---------- */
.scrim{position:fixed;inset:0;background:rgba(8,18,30,.55);z-index:40;display:none}
.scrim.open{display:block}
.sheet{position:fixed;z-index:41;inset:auto 0 0 0;margin:0 auto;max-width:900px;height:min(92vh,860px);height:min(92dvh,860px);background:var(--surface);border-radius:14px 14px 0 0;display:none;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0px)}
.sheet.open{display:flex}
@media (min-width:900px){.sheet{inset:4vh 0 auto 0;border-radius:14px;height:min(92vh,860px)}}
.sh-top{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line)}
.sh-top h2{margin:0;font-size:17px;flex:1}
.x{width:36px;height:36px;border-radius:50%;display:grid;place-items:center}
.x:hover{background:var(--surface-2)}
.tabs{display:flex;gap:4px;padding:0 14px;border-bottom:1px solid var(--line);overflow-x:auto}
.tabs button{height:44px;padding:0 12px;font-weight:700;font-size:14px;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap}
.tabs button.on{color:var(--text);border-bottom-color:var(--orange)}
.sh-body{flex:1;overflow:auto;padding:18px}
.pane{display:none}
.pane.on{display:block}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}
.field{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:700;flex:1;min-width:180px}
.field small{font-weight:500;color:var(--muted)}
.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:9px 11px;font-size:14px;font-weight:500;outline:none}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--navy-2)}
textarea{resize:vertical;line-height:1.5}
#raw{min-height:220px;font-size:13.5px}
.hint{font-size:13px;color:var(--muted);background:var(--surface-2);border-radius:8px;padding:10px 12px;margin:0 0 14px}
.hint code{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:0 4px;font-size:12px}
.plan{margin-top:16px;display:grid;gap:10px}
.plan-h{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.plan-h h3{margin:0;font-size:15px}
.pv{border:1px solid var(--line);border-radius:10px;overflow:hidden}
.pv-h{display:flex;gap:10px;align-items:center;padding:9px 12px;background:var(--surface-2);font-size:13px;font-weight:700}
.pv-h .av{width:28px;height:28px;font-size:11px}
.pv-h time{margin-left:auto;color:var(--orange-ink);font-variant-numeric:tabular-nums}
.pv-b{padding:10px 12px;white-space:pre-wrap;font-size:13px;max-height:160px;overflow:auto;overflow-wrap:anywhere}
.pv-b mark{background:var(--orange-soft);color:var(--orange-ink);border-radius:3px;padding:0 2px;text-decoration:line-through;text-decoration-thickness:1px}
.sched-list{display:grid;gap:8px}
.sl{display:grid;grid-template-columns:80px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.sl .tm{font-weight:800;font-variant-numeric:tabular-nums}
.sl .st{font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px;display:inline-block;margin-top:2px}
.sl .st.live{background:var(--green-soft);color:var(--green)}
.sl .st.up{background:var(--orange-soft);color:var(--orange-ink)}
.sl .tx{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sl .tx b{color:var(--text)}
.del{color:#C0392B;font-weight:700;font-size:13px;padding:6px 8px;border-radius:6px}
.del:hover{background:rgba(192,57,43,.1)}
.toggle{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}
.toggle input{width:18px;height:18px;accent-color:var(--orange)}
.sh-foot{border-top:1px solid var(--line);padding:12px 18px;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 84px);transform:translate(-50%,20px);background:var(--navy);color:#fff;padding:10px 16px;border-radius:8px;font-weight:700;font-size:14px;opacity:0;pointer-events:none;transition:.25s;z-index:60;max-width:90vw}
.toast.show{opacity:1;transform:translate(-50%,0)}

/* ---------- responsive ---------- */
@media (max-width:1080px){
  .wrap{grid-template-columns:220px minmax(0,1fr)}
  .right{display:none}
}
@media (max-width:760px){
  .wrap{grid-template-columns:minmax(0,1fr);padding:10px 0 96px;gap:8px}
  .left{display:none}
  .card{border-radius:0}
  .nav{display:none}
  .search{max-width:none}
  .brand b{display:none}
  .top .cta{margin-left:auto;height:34px;padding:0 14px}
  .compose{display:none}
  .mobile-filters{display:flex !important}
  .bnav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}
  .bnav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;height:58px;justify-content:center;font-size:11px;font-weight:700;color:var(--muted)}
  .bnav button.on{color:var(--text)}
  .sortbar{padding:0 12px}
}
.mobile-filters{display:none;gap:8px;overflow-x:auto;padding:10px 12px;background:var(--surface);border-bottom:1px solid var(--line-soft)}
.mobile-filters .chip{flex-shrink:0}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}

/* hide-unlock-strip: hide 'HR contact, company and city are hidden' strip */
.card.post .unlock{display:none !important;}

/* Load older jobs */
.qajf-more{display:block;width:100%;margin:6px 0 24px;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font:600 14px/1.2 var(--font);cursor:pointer}
.qajf-more:hover{border-color:var(--orange);color:var(--orange)}
.qajf-more:disabled{opacity:.6;cursor:wait}

/* hide-daily-counts: no Today's posts panel and no daily counts for visitors */
.card.day, .card.profile .stats{display:none !important;}

/* clickable links in posts */
.p-text a.lnk{color:#0A66C2;font-weight:600;text-decoration:none;word-break:break-all}
.p-text a.lnk:hover{text-decoration:underline}

/* copy: one line at a time (rule enforced in feed.js); hidden details stay unselectable */
.p-text{-webkit-user-select:text;user-select:text}
.act.copy-act.done{color:var(--green)}
