/* ============================================================================
PROJECT: reparation-electromenager.ma
PROJET: reparation-electromenager.ma
PATH: assets/css/home/forms.css
PURPOSE: Homepage lead form styles (modal + form chips + messages).
VERSION: v1.2 – Version bump to avoid same-version conflicts; no CSS change.
UPDATED: 2026-02-07 (Africa/Casablanca)
AUTHOR: System
HISTORY:
  - v1.2 – 2026-02-07 – Version bump to avoid same-version conflicts; no CSS change.
  - v1.1 – 2026-02-07 – Align to homepage IDs/classes and add message states + chips.
  - v1.0 – 2026-02-07 – Initial home forms CSS: modal, form blocks, states.
NOTES:
  - Depends on tokens in assets/css/home/base.css.
============================================================================ */

/* Modal backdrop */
#modalBackdrop{
  position:fixed;
  inset:0;
  z-index:1000;
  display:none;
  background:rgba(2,6,23,.55);
  padding:18px;
}
#modalBackdrop.is-open{display:block}

.modal{
  width:min(760px,100%);
  margin:72px auto 24px;
  background:#fff;
  border-radius:22px;
  box-shadow:var(--shadow);
  border:1px solid var(--border);
  overflow:hidden;
}

.modal-head{
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  padding:14px 16px;
  border-bottom:1px solid var(--border);
  background:#fff;
}
.modal-head h3{
  margin:0;
  font-size:1.1rem;
  font-weight:1000;
}
.modal-head p{
  margin:.25rem 0 0;
  color:var(--muted);
  font-size:.95rem;
}

#closeModal{
  min-width:var(--tap);
  min-height:var(--tap);
  border-radius:14px;
  border:1px solid var(--border);
  background:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-weight:1000;
}
#closeModal:hover{background:#f8fafc;border-color:#cbd5e1}

.modal-body{padding:16px}

/* Form */
.form{
  display:grid;
  gap:12px;
}
.row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
@media (max-width: 980px){
  .row{grid-template-columns:1fr}
}

.field label{
  display:block;
  font-weight:1000;
  margin-bottom:6px;
}
.field input,
.field select,
.field textarea{
  width:100%;
  min-height:var(--tap);
  padding:.65rem .85rem;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
}
.field textarea{min-height:120px;resize:vertical}

.field input:focus,
.field select:focus,
.field textarea:focus{
  outline:none;
  border-color:rgba(34,197,94,.55);
  box-shadow:var(--focus);
}

.help{
  color:var(--muted);
  font-size:.9rem;
}

/* Quick chips */
#symptoms{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:6px;
}
.qchip{
  border:1px solid var(--border);
  border-radius:999px;
  padding:.32rem .65rem;
  background:#fff;
  color:var(--muted);
  font-weight:1000;
  font-size:.85rem;
  cursor:pointer;
  user-select:none;
  transition:background .18s ease, border-color .18s ease, transform .08s ease;
}
.qchip:hover{background:#f8fafc;border-color:#cbd5e1}
.qchip:active{transform:translateY(1px)}

/* Messages */
#formMsg{
  border:1px solid var(--border);
  border-radius:16px;
  background:#fff;
  padding:12px 14px;
  color:var(--muted);
  display:none;
}
#formMsg.is-ok{display:block;border-color:rgba(22,163,74,.28);background:rgba(22,163,74,.06);color:#14532d}
#formMsg.is-bad{display:block;border-color:rgba(239,68,68,.30);background:rgba(239,68,68,.08);color:#7f1d1d}

/* Actions */
.form-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.form-actions .btn{flex:1 1 220px}

/* Select2 fix (if enabled) */
.select2-container .select2-selection--single{
  height:var(--tap);
  border:1px solid var(--border);
  border-radius:14px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:var(--tap);
  padding-left:.85rem;
}
.select2-container--default .select2-selection--single .select2-selection__arrow{
  height:var(--tap);
  right:10px;
}
.select2-container--default .select2-selection--single:focus{
  box-shadow:var(--focus);
}
