/* Shared workspace and lead-generation presentation. Inline styles are blocked by CSP. */

.action-tags {
  display:flex;
  flex-wrap:wrap;
  gap:0.25rem;
}

.booking-check {
  width:3.5rem;
  height:3.5rem;
  border-radius:50%;
  background:#e5f8f3;
  color:var(--ok);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.75rem;
  margin:0 auto 1.25rem;
}

.booking-confirmation {
  max-width:540px;
  width:100%;
  text-align:center;
  padding:3rem 2rem;
  border-radius:12px;
}

.booking-confirmation-lede {
  margin:0 0 1.5rem;
}

.booking-confirmation-title {
  font-size:1.85rem;
  margin:0 0 0.5rem;
  color:var(--ink);
}

.booking-description {
  font-size:0.92rem;
  color:#4a5568;
  line-height:1.5;
  border-top:1px solid var(--line);
  padding-top:1rem;
}

.booking-eyebrow {
  font-size:0.88rem;
  font-weight:600;
  color:var(--mist);
  text-transform:uppercase;
  letter-spacing:0.05em;
  margin-bottom:0.5rem;
}

.booking-form-title {
  font-size:1.2rem;
  margin:0 0 1.25rem;
}

.booking-meta {
  display:grid;
  gap:0.6rem;
  color:#4a5568;
  font-size:0.95rem;
  margin-bottom:1.5rem;
}

.booking-slot-select {
  font-size:0.95rem;
  padding:0.6rem;
}

.booking-summary {
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:8px;
  padding:1.25rem;
  text-align:left;
  margin-bottom:2rem;
}

.booking-summary-detail {
  font-size:0.9rem;
  color:#4a5568;
}

.booking-summary-host {
  font-size:0.9rem;
  color:#4a5568;
  margin-top:0.25rem;
}

.booking-summary-label {
  font-size:0.82rem;
  font-weight:600;
  color:var(--mist);
  text-transform:uppercase;
  margin-bottom:0.25rem;
}

.booking-summary-time {
  font-size:1.15rem;
  font-weight:700;
  color:var(--ink);
  margin-bottom:0.5rem;
}

.booking-timezone {
  font-size:0.78rem;
  color:var(--mist);
  margin-top:2rem;
  border-top:1px solid var(--line);
  padding-top:1rem;
}

.booking-title {
  font-size:1.65rem;
  line-height:1.25;
  margin:0 0 1rem;
  color:var(--ink);
}

.booking-wrapper {
  background:#f4f7fb;
  justify-content:center;
  align-items:center;
  padding:2rem 1rem;
}

.border-aqua {
  border-color:var(--aqua);
}

.border-signal {
  border-color:var(--signal);
}

.button-cta {
  padding:0.75rem 2rem;
  font-size:1.05rem;
}

.button-filter {
  font-size:0.85rem;
  padding:0.4rem 0.8rem;
}

.button-sm {
  padding:0.3rem 0.6rem;
  font-size:0.82rem;
  display:inline-block;
}

.button-submit {
  width:100%;
  padding:0.75rem 1rem;
  font-size:1rem;
}

.button-xs {
  font-size:0.82rem;
  padding:0.25rem 0.6rem;
}

.calendar-pill {
  font-size:0.75rem;
  border-color:var(--aqua);
}

.cms-calendar-description {
  font-size:0.85rem;
  margin:0.4rem 0 0;
}

.cms-cta-description {
  color:var(--mist);
  margin:0.5rem 0 1.5rem;
}

.cms-embed-description {
  color:var(--mist);
  font-size:0.88rem;
  margin:0.3rem 0 0;
}

.cms-form-footnote {
  text-align:center;
  font-size:0.75rem;
  color:var(--mist);
  margin:0.75rem 0 0;
}

.cms-story-container {
  max-width:48rem;
}

.code-editor {
  font-family:monospace;
  font-size:0.85rem;
}

.compact-note {
  color:var(--mist);
  font-size:0.78rem;
  margin-top:0.2rem;
}

.configuration-list {
  list-style:none;
  padding:0;
  margin:0;
  font-size:0.88rem;
  display:grid;
  gap:0.5rem;
}

.editor-help {
  font-size:0.85rem;
  color:var(--mist);
  margin-top:0;
}

.embed-code {
  font-family:ui-monospace,monospace;
  font-size:0.8rem;
  background:var(--paper);
}

.empty-state {
  text-align:center;
  padding:2.5rem 1rem;
}

.flash-warning {
  background:#fff3cd;
  color:#856404;
  border:1px solid #ffeeba;
}

.font-medium {
  font-weight:500;
}

.inline-items {
  display:flex;
  align-items:center;
  gap:0.5rem;
}

.json-help {
  font-size:0.75rem;
  color:var(--mist);
  margin:0 0 0.4rem;
}

.lead-form-footer {
  text-align:center;
  font-size:0.75rem;
  color:var(--mist);
  margin-top:1rem;
}

/* Spam trap on public forms, including lead forms. Hidden from people and
   assistive technology; still submitted, so bots that autofill every field
   trip it. */
.honeypot-field {
  display: none;
}

.lead-form-header {
  text-align:center;
  margin-bottom:1.5rem;
}

.lead-form-title {
  font-size:1.75rem;
  margin-bottom:0.35rem;
}

.log-details {
  font-size:0.78rem;
  color:#4a5568;
}

.log-time {
  font-size:0.75rem;
  color:var(--mist);
  margin:0.2rem 0;
}

.m-0 {
  margin:0;
}

.mb-2 {
  margin-bottom:0.5rem;
}

.mb-4 {
  margin-bottom:1rem;
}

.mb-6 {
  margin-bottom:1.5rem;
}

.mb-8 {
  margin-bottom:2rem;
}

.mt-0 {
  margin-top:0;
}

.mt-3 {
  margin-top:0.75rem;
}

.mt-4 {
  margin-top:1rem;
}

.mt-5 {
  margin-top:1.25rem;
}

.mt-6 {
  margin-top:1.5rem;
}

.muted-note {
  color:var(--mist);
  font-size:0.75rem;
  margin-top:0.25rem;
}

.p-3 {
  padding:0.75rem;
}

.p-6 {
  padding:1.5rem;
}

.public-link {
  color:var(--signal);
  font-size:0.85rem;
  font-weight:500;
}

.recipe-button {
  width:100%;
  font-size:0.88rem;
  padding:0.45rem;
}

.recipe-card {
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:8px;
  padding:1.25rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.recipe-description {
  font-size:0.85rem;
  color:#4a5568;
  line-height:1.4;
  margin:0 0 1rem;
}

.recipe-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:0.5rem;
}

.share-link {
  font-size:0.85rem;
  background:var(--paper);
}

.spread-items {
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.status-info {
  background:#eaf0ff;
  color:var(--signal);
  border-color:#c4d7fe;
}

.status-negative {
  background:#fde8e8;
  color:var(--danger);
  border-color:#f8b4b4;
}

.status-positive {
  background:#e5f8f3;
  color:var(--ok);
  border-color:#b4edd9;
}

.status-warning {
  background:#fff3cd;
  color:#856404;
  border-color:#ffeeba;
}

.step-description {
  margin-top:0.5rem;
  font-size:0.85rem;
  color:#4a5568;
}

.step-number {
  width:1.5rem;
  height:1.5rem;
  border-radius:50%;
  background:var(--ink);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:0.75rem;
  font-weight:700;
}

.table-actions {
  text-align:right;
  white-space:nowrap;
}

.text-body {
  font-size:0.95rem;
}

.text-caption {
  color:var(--mist);
  font-size:0.82rem;
}

.text-center {
  text-align:center;
}

.text-detail {
  font-size:0.85rem;
}

.text-heading {
  font-size:1.05rem;
}

.text-help {
  font-size:0.85rem;
  color:var(--mist);
}

.text-meta {
  font-size:0.8rem;
  color:var(--mist);
}

.text-muted {
  color:var(--mist);
}

.text-right {
  text-align:right;
}

.text-signal {
  color:var(--signal);
}

.text-sm {
  font-size:0.82rem;
}

.text-xs {
  font-size:0.75rem;
}

.trigger-description {
  font-size:0.85rem;
  color:var(--mist);
  margin:0;
}

.trigger-eyebrow {
  font-size:0.8rem;
  font-weight:600;
  text-transform:uppercase;
  color:var(--signal);
  letter-spacing:0.05em;
}

.trigger-title {
  margin:0.25rem 0 0.5rem;
  font-size:1.15rem;
}

.validation-errors {
  margin:0.25rem 0 0;
  padding-left:1.25rem;
}

.w-full {
  width:100%;
}

.workflow-add-step {
  border-top:1px solid var(--line);
  margin-top:1.5rem;
  padding-top:1.25rem;
}

.workflow-add-title {
  font-size:1.05rem;
  margin-bottom:0.75rem;
}

.workflow-log {
  border-bottom:1px solid var(--line);
  padding-bottom:0.75rem;
}

.workflow-sequence {
  display:grid;
  gap:0.85rem;
  margin:1rem 0;
}

.workflow-step {
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:8px;
  padding:1rem;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
}

.workflow-trigger {
  background:var(--snow);
  border:1px solid var(--line);
  border-radius:8px;
  padding:1.25rem;
  margin-bottom:1rem;
  border-left:4px solid var(--signal);
}

.text-fine { font-size: 0.75rem; color: var(--mist); }

.inline-items, .spread-items, .recipe-heading { gap: 0.5rem; flex-wrap: wrap; }
.workflow-step { gap: 0.75rem; }
.step-number { flex-shrink: 0; }
.empty-state .lede { margin-inline: auto; }
.table-actions { overflow-wrap: normal; }
.data-table td { overflow-wrap: normal; }
[hidden] { display: none !important; }

.select-compact {
  font-size: 0.8125rem;
}

.mt-4 { margin-top: 1rem; }
.mt-3 { margin-top: 0.75rem; }
.board-count { font-size: 0.75rem; font-weight: normal; color: var(--mist); }
