.ticket-form{background:var(--raise); border:1px solid var(--line); border-radius:5px;
  padding:clamp(18px,3vw,26px); margin:22px 0 10px; display:flex; flex-direction:column; gap:17px; max-width:none}
.field{display:flex; flex-direction:column; gap:6px}
.row{display:grid; grid-template-columns:1fr 1fr; gap:17px}
@media (max-width:560px){ .row{grid-template-columns:1fr} }
label{font-size:14px; font-weight:600; color:var(--ink)}
.opt{font-weight:400; color:var(--ink-3); font-size:12.5px; letter-spacing:.02em}
input,select,textarea{
  font-family:inherit; font-size:15.5px; color:var(--ink); background:var(--ground);
  border:1px solid var(--line-2); border-radius:4px; padding:10px 12px; width:100%;
}
textarea{resize:vertical; min-height:120px; line-height:1.6}
input:focus,select:focus,textarea:focus{outline:2px solid var(--irid-a); outline-offset:1px; border-color:var(--irid-a)}
input[aria-invalid="true"],textarea[aria-invalid="true"],select[aria-invalid="true"]{border-color:#B4453C}
.hint{font-size:13px; color:var(--ink-3); margin:0; max-width:60ch}
.hp{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}
button[type=submit]{
  align-self:flex-start; font-family:inherit; font-size:15.5px; font-weight:600;
  color:var(--ground); background:var(--ink); border:0; border-radius:4px;
  padding:11px 22px; cursor:pointer;
}
button[type=submit]:hover{background:var(--irid-a)}
button[type=submit]:focus-visible{outline:2px solid var(--irid-a); outline-offset:3px}
button[type=submit][disabled]{opacity:.55; cursor:default}
.form-note{font-size:14.5px; margin:0; min-height:1.2em}
.form-note.ok{color:var(--irid-a); font-weight:600}
.form-note.bad{color:#B4453C; font-weight:600}
.ticket-done{background:var(--raise); border:1px solid var(--irid-a); border-radius:5px;
  padding:clamp(18px,3vw,26px); margin:22px 0 10px}
.ticket-done h3{margin:0 0 8px; font-size:17px}
.ticket-done .ref{font-variant-numeric:tabular-nums; font-weight:600; letter-spacing:.04em}
