/* Customer web — แบบฟอร์มแจ้งซ่อม */
.back-link{display:inline-flex;align-items:center;min-height:var(--tap);margin-bottom:var(--sp-2);font-weight:600;text-decoration:none}
.back-link:hover{text-decoration:underline}
.report-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--sp-4);align-items:start}

/* ชุดเครื่องที่ล็อกจาก QR */
.locked-equipment{position:sticky;top:var(--sp-4);padding:var(--sp-6);border-radius:var(--r-lg);background:linear-gradient(160deg,var(--navy-950),var(--navy-900));color:#fff}
.locked-kicker{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);font-size:var(--fs-sm);font-weight:600;color:#9ad9df}
.locked-equipment strong,.locked-equipment>span{display:block;overflow-wrap:anywhere}
.locked-equipment strong{font-size:var(--fs-lg);line-height:1.35}
.locked-equipment>span{margin-top:var(--sp-1);color:#cfe3ec}
.locked-note{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid rgba(255,255,255,.2);font-size:var(--fs-sm);color:#cfe3ec}

.report-card{min-height:560px}

/* Stepper */
.stepper{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);margin:0 0 var(--sp-8)}
.stepper li{display:flex;align-items:center;gap:var(--sp-2);padding-top:var(--sp-3);border-top:4px solid var(--line);color:var(--ink-hint);font-size:var(--fs-sm);font-weight:600}
.step-dot{flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e9eff2;color:var(--ink-muted);font-size:var(--fs-xs);font-weight:700}
.stepper li.is-done{border-color:var(--teal-700);color:var(--ink-muted)}
.stepper li.is-done .step-dot{background:var(--teal-700);color:#fff}
.stepper li.is-current{border-color:var(--teal-700);color:var(--teal-800)}
.stepper li.is-current .step-dot{background:var(--teal-700);color:#fff}

.form-step h1{font-size:var(--fs-2xl);margin:var(--sp-1) 0 var(--sp-2)}
.form-step h1:focus{outline:none}
.step-lead{margin-bottom:var(--sp-6);color:var(--ink-muted)}

.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}
.choice--urgent:has(input:checked){border-color:var(--urgent);background:var(--warn-bg)}
.choice--urgent input{accent-color:var(--urgent)}

/* รูปแนบ */
.photo-pick{gap:var(--sp-3);min-height:52px}
.sr-only:focus-visible+.photo-pick{outline:3px solid var(--focus);outline-offset:3px}
.photo-list{display:grid;gap:var(--sp-2);margin-top:var(--sp-3)}
.photo-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}
.photo-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.photo-item-size{flex:none;font-size:var(--fs-sm);color:var(--ink-muted)}
.photo-remove{flex:none;min-height:var(--tap);padding:0 var(--sp-3);border:0;border-radius:var(--r-sm);background:transparent;color:var(--danger);font:inherit;font-weight:600;cursor:pointer}
.photo-remove:hover{background:var(--danger-bg)}

/* Review */
.review-list{display:grid;gap:var(--sp-3);margin-bottom:var(--sp-5)}
.review-group{padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}
.review-group-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-2)}
.review-group-head h2{font-size:var(--fs-md)}
.review-item{padding:var(--sp-2) 0;border-top:1px solid var(--line)}
.review-item:first-of-type{border-top:0}
.review-item span{display:block;font-size:var(--fs-xs);color:var(--ink-muted)}
.review-item strong{display:block;font-weight:600;white-space:pre-wrap;overflow-wrap:anywhere}
.consent{margin-bottom:var(--sp-2)}
.turnstile-container{min-height:65px;margin:var(--sp-4) 0}
#submit-message{margin-bottom:var(--sp-3)}

.form-actions{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);margin-top:var(--sp-8);padding-top:var(--sp-5);border-top:1px solid var(--line)}
.form-step[data-step="1"] .form-actions{justify-content:flex-end}

@media (max-width:900px){
  .report-layout{grid-template-columns:1fr}
  .locked-equipment{position:static;padding:var(--sp-4) var(--sp-5)}
  .locked-note{display:none}
  .report-card{min-height:0}
}
@media (max-width:520px){
  .choice-grid{grid-template-columns:1fr}
  .stepper li{flex-direction:column;align-items:flex-start;gap:var(--sp-1)}
  .form-actions{flex-direction:column-reverse;align-items:stretch}
  .form-actions .btn{width:100%}
}
