/* submit.css */

.submit-page-wrap {
  max-width: 1440px;
  margin: 0 auto;
  padding: 58px 58px 96px;
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 96px;
  align-items: start;
}

.submit-intro { font-size: 18px; color: var(--text-secondary); margin-bottom: 40px; line-height: 1.7; max-width: 520px; }

.steps { display: flex; align-items: center; gap: 0; margin-bottom: 40px; }
.step { display: flex; align-items: center; gap: 10px; font-size: 14px; color: var(--text-tertiary); }
.step.active { color: var(--text); }
.step.done { color: var(--green-accent); }
.step-num {
  width: 28px; height: 28px;
  border-radius: 50%;
  border: 1px solid var(--border-strong);
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 500; flex-shrink: 0;
}
.step.active .step-num { background: var(--green); color: #fff; border-color: var(--green); }
.step.done .step-num { background: var(--green-light); color: var(--green); border-color: rgba(42,74,53,0.2); }
.step-line { flex: 1; height: 0.5px; background: var(--border); margin: 0 12px; max-width: 48px; }

.scrape-title { font-size: 17px; font-weight: 500; margin-bottom: 6px; }
.scrape-sub { font-size: 14px; color: var(--text-secondary); margin-bottom: 20px; }
.scrape-row { display: flex; gap: 10px; }
.scrape-row .field-input { flex: 1; background: #fff; }

.location-error {
  background: var(--red-light);
  border: 0.5px solid rgba(122,32,32,0.2);
  border-radius: var(--radius-lg);
  padding: 20px 24px;
  margin-bottom: 20px;
  font-size: 15px;
  color: var(--red);
  line-height: 1.6;
}

.scrape-success {
  background: var(--green-light);
  border: 0.5px solid rgba(42,74,53,0.2);
  border-radius: var(--radius-lg);
  padding: 16px 20px;
  margin-bottom: 20px;
  font-size: 14px;
  color: var(--green);
}

.form-block-title {
  font-size: 17px;
  font-weight: 500;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 0.5px solid var(--border);
}

.genre-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; }
.genre-check { display: flex; align-items: center; gap: 8px; cursor: pointer; font-size: 15px; }
.genre-check input { accent-color: var(--green); cursor: pointer; width: 16px; height: 16px; }

.rel-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.rel-option {
  border: 0.5px solid var(--border-strong);
  border-radius: var(--radius);
  padding: 12px 16px;
  cursor: pointer;
  transition: all 0.15s;
  text-align: center;
}
.rel-option:hover { background: rgba(26,26,24,0.03); }
.rel-option.selected { border-color: var(--green); background: var(--green-light); }
.rel-option input { display: none; }
.rel-label { font-size: 14px; font-weight: 500; display: block; margin-bottom: 2px; }
.rel-sub { font-size: 12px; color: var(--text-tertiary); }
.rel-option.selected .rel-sub { color: var(--green); }

.submit-row { display: flex; align-items: center; gap: 16px; margin-top: 8px; }

.success-state { text-align: center; padding: 80px 40px; }
.success-icon { font-size: 48px; margin-bottom: 24px; }
.success-title { font-family: var(--font-serif); font-size: 38px; font-weight: 400; margin-bottom: 16px; }
.success-body { font-size: 18px; color: var(--text-secondary); line-height: 1.7; max-width: 440px; margin: 0 auto 32px; }

.submit-info-side { position: sticky; top: 100px; }
.info-steps { display: flex; flex-direction: column; gap: 16px; }
.info-step { display: flex; gap: 14px; align-items: flex-start; font-size: 14px; color: var(--text-secondary); line-height: 1.6; }

.coverage-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.coverage-item { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--text-secondary); }

.guidelines { display: flex; flex-direction: column; gap: 10px; }
.guideline { font-size: 14px; color: var(--text-secondary); display: flex; gap: 8px; line-height: 1.5; }
.guideline::before { content: '—'; color: var(--text-tertiary); flex-shrink: 0; }

@media (max-width: 1024px) {
  .submit-page-wrap { grid-template-columns: 1fr; gap: 48px; }
  .submit-info-side { position: static; }
}
@media (max-width: 768px) {
  .submit-page-wrap { padding: 38px 24px 64px; }
  .genre-grid { grid-template-columns: repeat(2, 1fr); }
  .rel-grid { grid-template-columns: 1fr; }
}
