/* P-078 Offert: quote list in the deal dialog and the quote editor. Colours and spacing come from tokens.css. */
.modal .box:has(.q-wide){width:min(900px,100%)}
.q-head{display:flex;align-items:center;gap:var(--s-2)}.q-head .btn{margin-left:auto}
.person.q-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;cursor:pointer}
.person.q-row:hover,.person.q-row:focus-visible{border-color:var(--acc-line);background:var(--hover);outline:0}
.q-form{margin-top:var(--s-3)}
.q-ls{display:grid;gap:var(--s-2)}
.q-line{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-2);align-items:start;border:1px solid var(--line);border-radius:8px;padding:var(--s-3);background:var(--surface)}
.q-line .q-desc{grid-column:1/-1}
.q-f{display:block;min-width:0}.q-f span{display:block;font-size:var(--fs-sm);color:var(--muted);margin-bottom:2px}
.q-f input,.q-f select{width:100%}
.q-sum b{display:block;line-height:34px}
.q-rm{align-self:end;justify-self:start}
.q-line.ro{grid-template-columns:minmax(0,1fr) auto}.q-line.ro .q-desc{grid-column:auto}
.q-add{display:flex;gap:var(--s-2);flex-wrap:wrap;align-items:center}
.q-totals{display:grid;gap:var(--s-3);margin-top:var(--s-3)}
.q-tot{display:grid;gap:2px;border:1px solid var(--line);border-radius:8px;padding:var(--s-3);background:var(--surface)}
.q-tr{display:flex;justify-content:space-between;gap:var(--s-3)}
.q-gross{border-top:1px solid var(--line);margin-top:var(--s-1);padding-top:var(--s-2)}
.q-warn{background:var(--red-soft);color:var(--ink);border:1px solid var(--red);border-radius:8px;padding:var(--s-3);margin:var(--s-3) 0}
.q-text{white-space:pre-wrap}
.q-missing{margin:var(--s-2) 0;padding-left:var(--s-5)}
.q-foot{flex-wrap:wrap}.q-del{margin-right:auto}
@media (max-width:640px){.q-line{grid-template-columns:repeat(2,minmax(0,1fr))}.q-del{margin-right:0}
  .q-form input,.q-form select,.q-form .btn,.q-line .btn,.q-foot .btn{height:var(--tap)}}
