/* ============================================================
   Villa Plumbing Field Portal — Lily Service Intake
   Class prefix: .lsi-*
   ============================================================ */

.lsi-root { font-family: Barlow, sans-serif; color:#141310; }

.lsi-typebar {
  background:#f4f8fa; border:1px solid #d8e2e9; border-radius:10px;
  padding: 10px 12px; margin-bottom: 12px;
}
.lsi-typebar-label {
  display:block; font-size: 12px; letter-spacing:.04em;
  text-transform: uppercase; font-weight: 700;
  color: #34495e; margin-bottom: 6px;
}
.lsi-type-chips {
  display:flex; gap: 6px; flex-wrap: wrap;
}
.lsi-type-chip {
  background:#fff; border:1px solid #c5d2db; border-radius:999px;
  padding: 6px 14px; cursor:pointer; font-weight:600; color:#34495e;
}
.lsi-type-chip:hover { background:#f0f5f8; }
.lsi-type-chip.on {
  background:#141310; color:#fff; border-color:#141310;
}
.lsi-help {
  font-size: 12px; color:#6b8189; margin: 6px 0 0 0; font-style: italic;
}

/* Emergency banner */
.lsi-emergency-banner {
  background:#fbe1de; color:#7a1f1a; border:1px solid #f3c2bc;
  border-radius:10px; padding:10px 14px; font-weight:700;
  margin-bottom: 10px;
}

/* Form rows */
.lsi-form { display:flex; flex-direction:column; gap: 10px; }
.lsi-row label {
  display:block; font-size: 12px; letter-spacing:.04em;
  text-transform: uppercase; font-weight: 700;
  color:#6b8189; margin-bottom: 4px;
}
.lsi-row input[type="text"],
.lsi-row input[type="tel"],
.lsi-row input[type="date"],
.lsi-row input[type="time"],
.lsi-row textarea,
.lsi-row select {
  width: 100%; box-sizing: border-box;
  padding: 8px 10px; border:1px solid #c5d2db; border-radius:8px;
  font-size: 14px; font-family: Barlow, sans-serif; color:#141310;
  background:#fff;
}
.lsi-row input:focus, .lsi-row textarea:focus, .lsi-row select:focus {
  outline: none; border-color:#141310;
  box-shadow: 0 0 0 2px rgba(20,19,16,.15);
}
.lsi-row-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }

.lsi-actions {
  display:flex; gap: 8px; justify-content: flex-end;
  margin-top: 10px;
}
.lsi-btn {
  background:#fff; border:1px solid #c5d2db; border-radius:8px;
  padding: 8px 16px; cursor:pointer; font-weight:600; color:#141310;
}
.lsi-btn:hover { background:#f0f5f8; }
.lsi-btn-primary { background:#141310; color:#fff; border-color:#141310; }
.lsi-btn-primary:hover { background:#1c3550; }
.lsi-btn-danger  { background:#a3322a; color:#fff; border-color:#a3322a; }
.lsi-btn-danger:hover { background:#8a2a23; }

/* Toast (also defined inline as a fallback) */
.lsi-toast { z-index: 11800; }
