/* Start flow additional styles — extends site.css */
.start-page { padding: 32px 0 80px; max-width: 600px; }
.start-card { background: var(--paper); border: 1px solid var(--rule); padding: 32px; margin-top: 24px; }
.done-card { text-align: center; }
.done-mark { font-size: 48px; color: var(--evidence); margin-bottom: 16px; }

.step-bar { height: 4px; background: var(--fog); margin-bottom: 24px; }
.step-bar-inner { height: 4px; background: var(--evidence); transition: width 0.3s; width: 0; }
.step-bar-inner.p1 { width: 16.666%; }
.step-bar-inner.p2 { width: 33.333%; }
.step-bar-inner.p3 { width: 50%; }
.step-bar-inner.p4 { width: 66.666%; }
.step-bar-inner.p5 { width: 83.333%; }
.step-bar-inner.p6 { width: 100%; }
.step-label { color: var(--evidence); font-size: 13px; font-weight: 500; margin: 0 0 8px; }
.step-hint { color: var(--grey); font-size: 15px; line-height: 24px; margin: 0 0 16px; }

.form-label { display: block; font-size: 15px; font-weight: 500; margin: 16px 0 6px; }
.form-input, .form-textarea {
  width: 100%;
  border: 1px solid var(--ink);
  background: var(--paper);
  color: var(--ink);
  padding: 10px 12px;
  font: inherit;
  font-size: 16px;
  border-radius: 0;
  -webkit-appearance: none;
}
.form-textarea { resize: vertical; min-height: 80px; }
.form-input:focus, .form-textarea:focus { outline: 2px solid var(--evidence); outline-offset: 1px; }
input[type="file"].form-input { padding: 8px; }

.choice-grid { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 16px; }
.choice-btn {
  border: 1px solid var(--ink);
  background: var(--paper);
  color: var(--ink);
  padding: 10px 16px;
  font: inherit;
  font-size: 15px;
  cursor: pointer;
  border-radius: 0;
  flex-shrink: 0;
  min-height: 44px;
}
.choice-btn.chosen { background: var(--ink); color: var(--paper); }
.choice-btn:hover:not(.chosen) { background: var(--fog); }

.step-nav { display: flex; gap: 16px; align-items: center; margin-top: 24px; flex-wrap: wrap; }
.btn-back { background: transparent; border: none; color: var(--evidence); font: inherit; font-size: 15px; cursor: pointer; padding: 0; }

.start-btn { width: 100%; margin-top: 16px; padding: 16px; font-size: 16px; min-height: 52px; }
.consent-list { margin: 16px 0; padding-inline-start: 24px; color: var(--grey); font-size: 15px; line-height: 26px; }
.consent-links { font-size: 14px; color: var(--grey); margin-bottom: 16px; }
.consent-links a { color: var(--evidence); }

.start-error { color: var(--conflict); font-size: 15px; margin-top: 12px; font-weight: 500; }
.case-id-label { font-family: "Inter", monospace; font-size: 13px; color: var(--grey); }
.pilot-note { color: var(--grey); font-size: 14px; border-top: 1px solid var(--rule); padding-top: 16px; margin: 24px 0 16px; }

#upload-status { font-size: 14px; color: var(--evidence); margin-top: 8px; min-height: 20px; }

@media (max-width: 768px) {
  .start-page { padding: 16px 0 64px; }
  .start-card { padding: 24px 16px; }
  .choice-btn { font-size: 14px; padding: 10px 12px; }
}
