/* Shared Get Job Today card component — User + public surfaces. */
.gjt-job-card {
  display: grid;
  gap: var(--sp-3, 12px);
  min-width: 0;
  padding: var(--sp-4, 16px);
  background: var(--surface, Canvas);
  color: var(--text, CanvasText);
  border: 1px solid var(--border, color-mix(in srgb, CanvasText 16%, transparent));
  border-radius: var(--idsa-radius-lg, 14px);
  box-shadow: 0 2px 12px rgba(15, 23, 42, .06);
}

.gjt-job-card__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--sp-3, 12px);
  flex-wrap: wrap;
}

.gjt-job-card__title-wrap {
  min-width: 0;
  flex: 1 1 14rem;
}

.gjt-job-card__title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 800;
  line-height: 1.35;
}

.gjt-job-card__title-link {
  color: var(--text, CanvasText);
  text-decoration: none;
}

.gjt-job-card__title-link:hover {
  color: var(--link, LinkText);
  text-decoration: underline;
}

.gjt-job-card__employer {
  margin-top: var(--sp-1, 4px);
  color: var(--link, LinkText);
  font-size: .9375rem;
  font-weight: 700;
}

.gjt-job-card__status,
.gjt-job-card__fact {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: var(--sp-1, 4px) var(--sp-2, 8px);
  border: 1px solid var(--border, color-mix(in srgb, CanvasText 16%, transparent));
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.2;
}

.gjt-job-card__status {
  background: color-mix(in srgb, var(--muted, CanvasText) 10%, var(--surface, Canvas) 90%);
}

.gjt-job-card__status--submitted {
  background: color-mix(in srgb, var(--warning, CanvasText) 10%, var(--surface, Canvas) 90%);
  border-color: color-mix(in srgb, var(--warning, CanvasText) 35%, var(--border, CanvasText) 65%);
}

.gjt-job-card__status--approved {
  background: color-mix(in srgb, var(--primary, LinkText) 10%, var(--surface, Canvas) 90%);
  border-color: color-mix(in srgb, var(--primary, LinkText) 35%, var(--border, CanvasText) 65%);
  color: var(--primary, LinkText);
}

.gjt-job-card__status--live {
  background: color-mix(in srgb, var(--success, CanvasText) 10%, var(--surface, Canvas) 90%);
  border-color: color-mix(in srgb, var(--success, CanvasText) 35%, var(--border, CanvasText) 65%);
}

.gjt-job-card__status--closed {
  background: color-mix(in srgb, var(--danger, CanvasText) 10%, var(--surface, Canvas) 90%);
  border-color: color-mix(in srgb, var(--danger, CanvasText) 35%, var(--border, CanvasText) 65%);
}

.gjt-job-card__facts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2, 8px);
}

.gjt-job-card__fact {
  background: color-mix(in srgb, var(--bg, Canvas) 70%, var(--surface, Canvas) 30%);
  color: var(--text, CanvasText);
  font-weight: 600;
}

.gjt-job-card__fact--salary {
  background: color-mix(in srgb, var(--success, CanvasText) 8%, var(--surface, Canvas) 92%);
}

.gjt-job-card__summary,
.gjt-job-card__admin-note {
  padding: var(--sp-3, 12px);
  border: 1px solid var(--border, color-mix(in srgb, CanvasText 16%, transparent));
  border-radius: var(--idsa-radius-sm, 10px);
  line-height: 1.6;
}

.gjt-job-card__summary {
  background: color-mix(in srgb, var(--bg, Canvas) 70%, var(--surface, Canvas) 30%);
  color: var(--text, CanvasText);
}

.gjt-job-card__admin-note {
  background: color-mix(in srgb, var(--primary, LinkText) 7%, var(--surface, Canvas) 93%);
}

.gjt-job-card__admin-label {
  display: block;
  margin-bottom: var(--sp-1, 4px);
  color: var(--text, CanvasText);
}

.gjt-job-card__footer {
  padding-top: var(--sp-3, 12px);
  border-top: 1px solid var(--border, color-mix(in srgb, CanvasText 16%, transparent));
}

.gjt-job-card__privacy {
  color: var(--muted, GrayText);
  font-size: .875rem;
  line-height: 1.5;
}

.gjt-job-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2, 8px);
  margin-top: var(--sp-3, 12px);
}

.gjt-job-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding-inline: var(--sp-4, 16px);
  border: 1px solid var(--border, color-mix(in srgb, CanvasText 16%, transparent));
  border-radius: var(--idsa-radius-sm, 10px);
  background: var(--surface, Canvas);
  color: var(--text, CanvasText);
  text-decoration: none;
  font-size: .875rem;
  font-weight: 700;
}

.gjt-job-card__button:hover {
  border-color: var(--primary, LinkText);
  color: var(--primary, LinkText);
}

.gjt-job-card__button--primary {
  background: var(--primary, LinkText);
  border-color: var(--primary, LinkText);
  color: var(--primaryText, Canvas);
}

@media (max-width: 640px) {
  .gjt-job-card__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .gjt-job-card__button {
    width: 100%;
  }
}
