.rfq { display: grid; gap: 20px; }
.rfq fieldset { border: 1px solid var(--line, #2c3136); border-radius: var(--radius, 6px); padding: 18px; margin: 0; display: grid; gap: 14px; background: var(--bg-2, #171a1d); }
.rfq legend { font-weight: 700; padding: 0 6px; }
.rfq label { display: grid; gap: 6px; font-size: 14px; color: var(--muted, #9aa3ab); }
.rfq input[type=text], .rfq input[type=tel], .rfq input[type=email], .rfq textarea {
  width: 100%; padding: 11px 12px; border-radius: var(--radius, 6px); border: 1px solid var(--line, #2c3136);
  background: var(--bg, #0f1113); color: var(--text, #e9ecef); font: inherit; font-size: 16px;
}
.rfq input:focus, .rfq textarea:focus { border-color: var(--accent, #f08a24); outline: none; }
.rfq__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.rfq__drop { position: relative; border: 2px dashed var(--line, #2c3136); border-radius: var(--radius, 6px); padding: 28px 16px; text-align: center; cursor: pointer; }
.rfq__drop.is-over, .rfq__drop:focus-within { border-color: var(--accent, #f08a24); }
.rfq__drop input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.rfq__drop-text { color: var(--text, #e9ecef); }
.rfq__files { list-style: none; margin: 0; padding: 0; font-size: 14px; }
.rfq__files li { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid var(--line, #2c3136); }
.rfq__files .bad { color: var(--err, #e5534b); }
.rfq__check { display: flex !important; gap: 10px; align-items: flex-start; }
.rfq__hint { margin: 0; font-size: 13px; color: var(--muted, #9aa3ab); }
.rfq__hp { position: absolute; left: -9999px; height: 0; overflow: hidden; }
.rfq__status { border-radius: var(--radius, 6px); padding: 12px 16px; background: var(--bg-3, #202428); }
.rfq__status ul { margin: 0; padding-left: 1.2em; }
.rfq__status--ok { border-left: 3px solid var(--ok, #4caf7a); }
.rfq__status--err { border-left: 3px solid var(--err, #e5534b); }
.rfq__progress { height: 4px; background: var(--line, #2c3136); border-radius: 2px; margin-top: 8px; overflow: hidden; }
.rfq__progress span { display: block; height: 100%; width: 0; background: var(--accent, #f08a24); transition: width .2s; }
.rfq__submit[disabled] { opacity: .6; cursor: progress; }
.rfq abbr { color: var(--accent, #f08a24); text-decoration: none; }
