.wizard-header { position: relative; }
.wizard-header-right { display:flex; align-items:center; gap:15px; color:var(--text-soft); font-size:.73rem; }
.wizard-header-right a { color:var(--green); font-weight:800; }

.create-page { min-height:calc(100vh - 77px); padding:50px 0 80px; }
.create-layout { display:grid; grid-template-columns:330px minmax(0,760px); gap:55px; align-items:start; justify-content:center; }

.wizard-intro h1 { margin:10px 0; font-family:"Manrope"; font-size:2rem; line-height:1.08; letter-spacing:-.05em; }
.wizard-intro p { color:var(--text-soft); font-size:.82rem; line-height:1.7; margin:0; }

.wizard-steps { margin-top:38px; display:flex; flex-direction:column; gap:5px; }
.wizard-step { display:flex; align-items:center; gap:13px; padding:12px 10px; border:0; border-radius:12px; background:transparent; color:var(--text-soft); text-align:left; }
.wizard-step.active { background:var(--green-soft); color:var(--text); }
.wizard-step.done .step-circle { background:var(--green); color:white; }
.step-circle { width:30px; height:30px; flex:0 0 auto; display:grid; place-items:center; border:1px solid var(--border); border-radius:50%; font-size:.7rem; font-weight:800; }
.wizard-step.active .step-circle { background:var(--green); color:white; border-color:var(--green); }
.wizard-step strong,.wizard-step small { display:block; }
.wizard-step strong { font-size:.77rem; }
.wizard-step small { margin-top:2px; font-size:.64rem; color:var(--text-soft); }

.wizard-tip { display:flex; gap:11px; margin-top:35px; padding:15px; border:1px solid var(--border); border-radius:14px; background:var(--surface); }
.wizard-tip > i { color:var(--orange); padding-top:2px; }
.wizard-tip strong { font-size:.72rem; }
.wizard-tip p { margin:3px 0 0; color:var(--text-soft); font-size:.65rem; line-height:1.55; }

.create-card { padding:38px 42px; background:var(--surface); border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow); }
.form-step { display:none; }
.form-step.active { display:block; }
.form-heading { margin-bottom:30px; }
.step-kicker { color:var(--green); font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.form-heading h2 { margin:6px 0 7px; font-family:"Manrope"; font-size:1.8rem; letter-spacing:-.045em; }
.form-heading p { margin:0; color:var(--text-soft); font-size:.78rem; line-height:1.65; }

.field { margin-bottom:25px; }
.field > label,.label-row label { display:block; margin-bottom:8px; color:var(--text); font-size:.75rem; font-weight:800; }
.field label span { color:var(--orange); }
.field input[type="text"],.field input[type="date"],.field input[type="number"],.field textarea {
  width:100%; border:1px solid var(--border); border-radius:11px; outline:0; background:var(--bg); color:var(--text); padding:13px 14px; font-size:.8rem; transition:border .15s,box-shadow .15s;
}
.field textarea { resize:vertical; min-height:100px; line-height:1.6; }
.field input:focus,.field textarea:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(22,163,74,.08); }
.field-hint,.field-bottom { color:var(--text-soft); font-size:.63rem; }
.field-bottom { display:flex; justify-content:space-between; margin-top:5px; }
.field-error { display:block; min-height:15px; margin-top:5px; color:#dc4b2c; font-size:.63rem; }

.category-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
.category-choice { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; min-height:85px; border:1px solid var(--border); border-radius:12px; background:var(--bg); color:var(--text-soft); font-size:.7rem; font-weight:700; }
.category-choice i { font-size:1.05rem; }
.category-choice.selected { border-color:var(--green); background:var(--green-soft); color:var(--green); }

.input-with-icon { position:relative; }
.input-with-icon i { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--text-soft); font-size:.78rem; }
.input-with-icon input { padding-left:38px !important; }

.funding-input-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.money-input { display:flex; align-items:center; height:46px; padding:0 13px; border:1px solid var(--border); border-radius:11px; background:var(--bg); }
.money-input:focus-within { border-color:var(--green); box-shadow:0 0 0 3px rgba(22,163,74,.08); }
.money-input > span { color:var(--text-soft); font-weight:700; font-size:.85rem; }
.money-input input { height:100%; padding:0 8px !important; border:0 !important; background:transparent !important; box-shadow:none !important; }
.label-row { display:flex; align-items:center; justify-content:space-between; }
.add-breakdown { border:0; background:transparent; color:var(--green); font-size:.68rem; font-weight:800; }
.breakdown-editor { display:flex; flex-direction:column; gap:8px; }
.breakdown-input-row { display:grid; grid-template-columns:1fr 145px 35px; gap:8px; align-items:center; }
.breakdown-input-row input { min-width:0; }
.remove-breakdown { width:35px; height:35px; border:0; border-radius:9px; background:var(--surface-2); color:var(--text-soft); }
.remove-breakdown:hover { color:#dc4b2c; }
.breakdown-total { display:flex; justify-content:space-between; margin-top:12px; padding-top:12px; border-top:1px solid var(--border); color:var(--text-soft); font-size:.7rem; }
.breakdown-total strong { color:var(--text); }

.notice { display:flex; gap:10px; padding:14px; border-radius:12px; background:var(--orange-soft); color:var(--text-soft); }
.notice i { color:var(--orange); }
.notice p { margin:0; font-size:.65rem; line-height:1.6; }

.upload-box { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:190px; padding:25px; border:1px dashed #b8c8bc; border-radius:14px; background:var(--bg); text-align:center; }
.upload-box.dragover { border-color:var(--green); background:var(--green-soft); }
.upload-icon { width:48px; height:48px; display:grid; place-items:center; margin-bottom:10px; border-radius:14px; background:var(--green-soft); color:var(--green); }
.upload-box strong { font-size:.76rem; }
.upload-box > span { margin:3px 0 13px; color:var(--text-soft); font-size:.62rem; }
.image-preview { position:relative; overflow:hidden; border-radius:14px; }
.image-preview img { width:100%; max-height:260px; object-fit:cover; }
.image-preview button { position:absolute; top:10px; right:10px; width:32px; height:32px; border:0; border-radius:50%; background:rgba(0,0,0,.65); color:white; }

.review-card { display:grid; grid-template-columns:180px 1fr; overflow:hidden; border:1px solid var(--border); border-radius:15px; background:var(--bg); }
.review-cover { min-height:180px; display:grid; place-items:center; background:linear-gradient(135deg,#126333,#f97316); color:white; font-size:2.5rem; }
.review-cover img { width:100%; height:100%; object-fit:cover; }
.review-info { padding:22px; }
.review-info h3 { margin:7px 0; font-family:"Manrope"; font-size:1.15rem; line-height:1.25; }
.review-info p { margin:0 0 17px; color:var(--text-soft); font-size:.72rem; line-height:1.6; }
.review-target { display:flex; justify-content:space-between; padding-top:12px; border-top:1px solid var(--border); font-size:.68rem; color:var(--text-soft); }
.review-target strong { color:var(--green); font-size:.85rem; }
.review-section { margin-top:25px; padding-top:22px; border-top:1px solid var(--border); }
.review-label { color:var(--text-soft); font-size:.64rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.review-section p { margin:8px 0 0; color:var(--text-soft); font-size:.76rem; line-height:1.7; white-space:pre-line; }
.review-breakdown-row { display:flex; justify-content:space-between; padding:8px 0; font-size:.7rem; border-bottom:1px solid var(--border); }

.publish-notice { display:flex; gap:12px; margin-top:28px; padding:15px; border-radius:13px; background:var(--green-soft); }
.publish-notice > i { color:var(--green); font-size:1.1rem; }
.publish-notice strong { font-size:.72rem; }
.publish-notice p { margin:3px 0 0; color:var(--text-soft); font-size:.65rem; line-height:1.55; }
.agreement { display:flex; align-items:flex-start; gap:9px; margin-top:20px; color:var(--text-soft); font-size:.68rem; line-height:1.5; cursor:pointer; }
.agreement input { margin-top:2px; accent-color:var(--green); }

.form-actions { display:flex; justify-content:space-between; gap:12px; margin-top:35px; padding-top:22px; border-top:1px solid var(--border); }
.form-actions .btn { min-width:115px; }
.form-actions #backButton { visibility:hidden; }
.form-actions #backButton.visible { visibility:visible; }

.mobile-progress { display:none; }

@media (max-width:900px) {
  .create-layout { grid-template-columns:1fr; gap:25px; }
  .wizard-sidebar { display:none; }
  .mobile-progress { display:block; margin-bottom:25px; }
  .mobile-progress > div:first-child { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }
  #mobileStepLabel { color:var(--text-soft); font-size:.65rem; }
  #mobileStepTitle { font-size:.7rem; }
  .mobile-progress-track { height:5px; overflow:hidden; border-radius:99px; background:var(--surface-2); }
  .mobile-progress-track span { display:block; width:25%; height:100%; border-radius:inherit; background:var(--green); transition:width .2s; }
}
@media (max-width:600px) {
  .wizard-header-right > span { display:none; }
  .wizard-header-right .icon-btn { margin-left:0; }
  .create-page { padding:20px 0 50px; }
  .create-card { padding:25px 18px; border-radius:18px; }
  .form-heading h2 { font-size:1.55rem; }
  .category-grid { grid-template-columns:repeat(2,1fr); }
  .funding-input-grid { grid-template-columns:1fr; gap:0; }
  .breakdown-input-row { grid-template-columns:1fr 105px 35px; }
  .review-card { grid-template-columns:1fr; }
  .review-cover { min-height:150px; }
  .form-actions .btn { flex:1; }
}
