.public-listing {
  --listing-ink: #132119;
  --listing-lime: #dbff78;
  background: var(--bg);
}

.public-listing .wrap {
  width: min(1200px, 100%);
  padding-top: 0;
}

.listing-nav {
  display: flex;
  align-items: center;
  gap: 14px;
  justify-content: space-between;
  padding: 12px 0;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}

.listing-nav a { color: var(--fg); }
.listing-nav a span { margin-right: 5px; }
.listing-copy {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--card);
  color: var(--fg);
  font: inherit;
  cursor: pointer;
}

.listing-copy:hover { background: var(--surface); }
.listing-nav a:hover,
.listing-alert-link:hover { text-decoration: underline; }

.listing-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 24px;
  background: radial-gradient(ellipse at 88% 20%, #2c4527, transparent 62%), var(--listing-ink);
  color: #f6faed;
}

.listing-radar {
  position: absolute;
  z-index: -1;
  inset: -74px -38px auto auto;
  width: min(45%, 480px);
  color: #657e54;
  opacity: .8;
  pointer-events: none;
}

.listing-hero-content {
  padding: clamp(26px, 5.1vw, 66px);
  padding-bottom: clamp(30px, 4vw, 50px);
}

.listing-status,
.listing-label {
  margin: 0;
  font: 700 11px/1.4 ui-monospace, Consolas, monospace;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.listing-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #5a7148;
  border-radius: 99px;
  padding: 7px 12px;
  background: #263a24;
  color: var(--listing-lime);
}

.listing-status::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.listing-status-closed { color: #ffda9e; border-color: #776948; }

.listing-hero h1 {
  max-width: 14ch;
  margin: 20px 0;
  font-size: clamp(34px, 6vw, 76px);
  line-height: 1.02;
  font-weight: 750;
  letter-spacing: -.065em;
  overflow-wrap: anywhere;
}

.listing-company {
  display: flex;
  align-items: center;
  gap: 12px;
  overflow-wrap: anywhere;
}

.listing-initial {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface);
  color: var(--fg);
  font-weight: 700;
}

.listing-company .listing-initial {
  width: 46px;
  height: 46px;
  border: 0;
  background: var(--listing-lime);
  color: var(--listing-ink);
  font-size: 20px;
}

.listing-company strong { display: block; font-size: 15px; }
.listing-company div span,
.listing-hero-copy { color: #c4d1b9; font-size: 13px; }
.listing-hero-copy { max-width: 46ch; font-size: 15px; }

.listing-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 136px), 1fr));
  margin: 0;
  padding: 0 clamp(12px, 3.4vw, 42px);
  border-top: 1px solid #465c3c;
  background: #142118da;
  list-style: none;
}

.listing-strip li { padding: 16px clamp(10px, 1.8vw, 24px); overflow-wrap: anywhere; }
.listing-strip li + li { border-left: 1px solid #465c3c; }
.listing-strip span { display: block; color: #c4d1b9; font-size: 11px; }
.listing-strip strong { display: block; margin-top: 2px; font-size: 13px; }

.listing-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 320px);
  align-items: start;
  gap: 20px;
  margin-top: 20px;
}

@media (min-width: 701px) and (min-height: 520px) {
  .listing-rail { position: sticky; top: 82px; }
}

@media (min-width: 701px) and (max-width: 920px) {
  .listing-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .listing-strip li:nth-child(3n + 1) { border-left: 0; }
  .listing-strip li:nth-child(n + 4) { border-top: 1px solid #465c3c; }
}
.listing-panel {
  min-width: 0;
  padding: clamp(21px, 3.2vw, 38px);
  border: 1px solid var(--border);
  border-radius: 20px;
  background: var(--card);
}

.listing-section-head { margin-bottom: 22px; }
.listing-label { color: var(--muted); }
.listing-label + h2 { margin-top: 8px; }
.listing-section-head h2,
.listing-alert h2 { font-size: clamp(23px, 3vw, 32px); line-height: 1.15; letter-spacing: -.045em; }
.listing-section-head .section-kicker,
.listing-apply .section-kicker { margin-top: 7px; font-size: 13px; line-height: 1.65; }

.job-description { color: var(--fg); font-size: 15px; line-height: 1.78; overflow-wrap: anywhere; }
.job-description p { margin: 0 0 14px; }
.job-description p:last-child { margin-bottom: 0; }
.job-description h2, .job-description h3 { margin: 22px 0 8px; color: var(--fg); font-size: 15px; }
.job-description ul, .job-description ol { padding-left: 20px; }
.job-description li + li { margin-top: 6px; }
.listing-notice {
  padding: 13px 16px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--surface);
  color: var(--muted);
  font-size: 13px;
}

.listing-notice a,
.listing-story .job-description a { color: var(--fg); text-decoration: underline; }

.listing-skills { margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--border); }
.listing-skills h3 { margin: 0 0 10px; font-size: 14px; }
.listing-skills ul { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; padding: 0; list-style: none; }
.listing-skills li {
  min-width: 0;
  padding: 5px 11px;
  border: 1px solid var(--border);
  border-radius: 99px;
  background: var(--surface);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.listing-rail .listing-panel { padding: 23px; }
.listing-apply { border-top: 4px solid #a7cc43; }
.listing-apply h2 { font-size: 21px; line-height: 1.2; }
.listing-primary { width: 100%; margin-top: 17px; justify-content: space-between; }
.listing-account,
.listing-app { display: block; text-align: center; font-size: 12px; font-weight: 650; }
.listing-account { margin-top: 13px; text-decoration: underline; text-underline-offset: 3px; }
.listing-app { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--border); color: var(--muted); }
.listing-app:hover { color: var(--fg); }

.listing-proof,
.listing-related,
.listing-alert { margin-top: 24px; }

.proof-item { min-width: 0; padding: 16px; border: 1px solid var(--border); border-radius: 13px; background: color-mix(in srgb, var(--surface) 88%, transparent); }
.proof-num { display: block; font-size: 27px; line-height: 1; font-weight: 850; letter-spacing: -.045em; }
.proof-label { display: block; margin-top: 8px; font-size: 11px; line-height: 1.5; }
.listing-proof .proof-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 10px; }
.listing-proof .section-btn { width: auto; }

.listing-related { padding: 10px 0; }
.listing-related .similar-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 275px), 1fr)); gap: 10px; }
.listing-related .listing-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.listing-related .job-row { min-width: 0; padding: 12px; background: var(--card); }
.listing-related .job-row:hover { background: var(--surface); }
.listing-related .row-copy { overflow-wrap: anywhere; }
.listing-related .row-title,
.listing-related .row-meta { white-space: normal; }

.listing-alert {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: clamp(22px, 4vw, 42px);
  border-radius: 20px;
  background: var(--listing-ink);
  color: #f6faed;
}

.listing-alert p { margin: 8px 0 0; color: #c4d1b9; }
.listing-alert .listing-label { margin: 0; color: var(--listing-lime); }
.listing-alert .btn,
.listing-hero-actions .btn { gap: 8px; }
.listing-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 22px; }
.listing-alert-link { font-size: 13px; font-weight: 650; }

@media (max-width: 700px) {
  .public-listing .header-app-btn { display: none; }
  .public-listing { padding-bottom: calc(66px + env(safe-area-inset-bottom)); }
  .listing-copy { min-height: 44px; }
  .listing-nav { padding: 9px 0; }
  .listing-radar { inset: -38px -90px auto auto; width: 300px; opacity: .35; }
  .listing-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .listing-strip li:nth-child(odd) { border-left: 0; }
  .listing-strip li:nth-child(n + 3) { border-top: 1px solid #465c3c; }
  .listing-strip li:only-child { grid-column: 1 / -1; }
  .listing-layout { grid-template-columns: minmax(0, 1fr); gap: 14px; margin-top: 14px; }
  .listing-alert { align-items: flex-start; flex-direction: column; }
  .listing-alert .btn { width: 100%; }
  .listing-dock { padding-bottom: calc(9px + env(safe-area-inset-bottom)); }
  .listing-dock a { justify-content: space-between; }
}
