/* Port lane W6 (docs/SPEC-port-2026-09-23.md). This lane owns this file alone;
   app.css stays untouched while the port runs. Tokens only from app.css/themes.css. */

/* --- job header (jobHeader): the off-site/on-site quote tag, dropped off
   the owner/PO subtitle line so that line can read "<plumber>'s job · PO
   1234" cleanly (SPEC-top-stack-2026-09-23 §4) --------------------------- */
.nu-jobtitle-kind {
  margin-top: var(--space-1);
  font-size: var(--text-micro);
  font-weight: var(--w-bold);
  letter-spacing: var(--track-wide);
  text-transform: uppercase;
  color: var(--tone-plan-ink);
}

/* --- the overdue Get-there hero: "I'm here" (primary) stacked over a
   demoted "Move it" (SPEC-top-stack-2026-09-23 §4) — two buttons never
   compete for hero, so Move it is deliberately smaller and outlined, never
   filled. `.job-hero-ghost` is its own class rather than the shared
   `.button.ghost` text-button.js already uses, so this stays scoped to
   this file and never ripples into another lane's screen. ------------------ */
.job-hero-stack {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.job-hero-ghost {
  width: 100%;
  min-height: var(--tap-comfortable);
  background: transparent;
  border: 1.5px solid var(--line-strong);
  color: var(--ink);
  font-weight: var(--w-semi);
}

/* --- "Move it": a plain date + time, open to anyone --------------------- */
.job-hero-moveit {
  padding: var(--space-2);
}
.job-hero-moveit-row {
  display: flex;
  gap: var(--space-2);
  margin: var(--space-2) 0;
}
.job-hero-moveit-row input {
  flex: 1 1 0;
  min-width: 0;
  min-height: var(--tap-min);
}

/* --- the Get-there hero's own reach note, and the STOP/call-only line
   under the heading rung's text box and the bill-send card (W1 reach.js) - */
.job-hero-reach-note {
  padding: 0 var(--space-1);
}

/* --- "Join this job" (migration 463, core.join_job) — a plain card, never
   competing with whichever stage's own hero sits right under it ---------- */
.job-join-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  flex-wrap: wrap;
}

/* --- the header's "Practice · leave" tag (W2, 45bf7099) is now tappable
   (see app.js hookPracticeTag) — say so with the cursor; the tag's own
   colour and label are shell-header.js's, untouched here. --------------- */
.brand-practice-tag {
  cursor: pointer;
}
