/* Upload: the shared mascot banner and a focused submission workspace. */
.ev-wrap.ev-upload { max-width:1120px; }
.ev-wrap .ev-upload__head.ev-slim-hero::after { background-image:url("../images/upload-mascot.webp"); }
.ev-upload__layout { display:grid; grid-template-columns:minmax(0,1fr) 304px; align-items:start; gap:24px; }
.ev-upload__composer { min-width:0; }
.ev-upload .ev-upload__form,
.ev-upload__welcome {
  margin:0; padding:28px; border:1px solid #30353e; border-radius:18px;
  background:linear-gradient(145deg,#171b20,#111419 80%);
}
.ev-upload .ev-upload__form { max-width:none; display:grid; gap:22px; }
.ev-upload__form-head { padding-bottom:20px; border-bottom:1px solid #2c3139; }
.ev-upload__form-head .ev-eyebrow { margin:0 0 7px; color:#f77480; font-size:10px; line-height:1.4; letter-spacing:.13em; }
.ev-upload__form-head h2 { margin:0 0 7px; font-size:24px; line-height:1.2; }
.ev-upload__form-head > p:last-child { margin:0; color:#adb4bf; font-size:13px; line-height:1.5; }
.ev-upload .ev-form__row--2 { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.ev-upload .ev-field > label,
.ev-upload .ev-field > legend { margin-bottom:9px; font-size:13px; color:#edf0f3; }
.ev-upload .ev-field input[type="text"],
.ev-upload .ev-field input[type="url"],
.ev-upload .ev-field textarea {
  width:100%; min-height:48px; padding:12px 14px; border:1px solid #353b46; border-radius:10px;
  background:#0e1217; color:#f6f7f9; font-size:14px; transition:border-color .15s,box-shadow .15s;
}
.ev-upload .ev-field textarea { min-height:112px; line-height:1.5; }
.ev-upload .ev-field input:focus-visible,
.ev-upload .ev-field textarea:focus-visible {
  outline:2px solid #f77480; outline-offset:2px; border-color:#f77480;
}
.ev-upload .ev-field.has-error input,
.ev-upload .ev-field.has-error textarea { border-color:var(--ev-error,#f87171); }
.ev-upload .ev-field__hint { margin-top:8px; color:#a5adba; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.ev-upload .ev-field__error { line-height:1.45; overflow-wrap:anywhere; }
.ev-upload__ownership { margin-top:2px; }
.ev-upload .ev-choices__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ev-upload .ev-choices__grid .ev-choice {
  width:100%; min-height:60px; margin:0; padding:12px 14px; border-radius:10px;
  display:flex; align-items:center; gap:10px; color:#c7cdd6; background:#10141a; border-color:#353b46;
}
.ev-upload .ev-choices__grid .ev-choice:only-child { grid-column:1 / -1; }
.ev-upload .ev-choices__grid .ev-choice:has(input:checked) { color:#fff; background:rgba(225,38,53,.09); border-color:#dd4756; }
.ev-upload .ev-choice input { flex-shrink:0; accent-color:#e12635; width:18px; height:18px; }
.ev-upload .ev-choice span { min-width:0; overflow-wrap:anywhere; line-height:1.45; }
.ev-upload .ev-upload__permission { padding:16px; border:1px solid #2c3139; border-radius:10px; background:#101419; }
.ev-upload .ev-upload__permission > .ev-choice {
  display:flex; align-items:flex-start; gap:11px; margin:0; min-height:0; padding:0;
  color:#bec5cf; background:transparent; border:0; border-radius:0; font-size:12px; font-weight:400;
}
.ev-upload__permission .ev-choice input { margin-top:2px; }
.ev-upload .ev-upload__publish { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-top:4px; }
.ev-upload__publish > .ev-btn { min-height:48px; padding:0 24px; border-radius:10px; font-size:14px; gap:9px; }
.ev-upload__publish > span { font-size:11px; line-height:1.5; color:#a5adba; }
.ev-upload__guide { overflow:hidden; border:1px solid #30353e; border-radius:18px; background:#13171d; }
.ev-upload__guide-top { padding:25px 23px 22px; border-bottom:1px solid #2c3139; background:radial-gradient(circle at 100% 0,rgba(225,38,53,.12),transparent 75%); }
.ev-upload__free { display:inline-block; margin-bottom:14px; padding:5px 9px; border:1px solid #64333b; border-radius:6px; color:#ff9aa4; background:rgba(225,38,53,.08); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.ev-upload__guide-top h2 { margin:0 0 10px; color:#f6f7f9; font-size:22px; line-height:1.2; }
.ev-upload__guide-top p { margin:0; color:#b4bcc8; font-size:13px; line-height:1.6; }
.ev-upload__steps { display:grid; gap:24px; margin:0; padding:25px 23px; list-style:none; }
.ev-upload__steps li { display:flex; align-items:flex-start; gap:13px; }
.ev-upload__step { flex:none; display:grid; place-items:center; width:32px; height:32px; border:1px solid #3c424d; border-radius:9px; background:#1d222a; color:#ff8d98; font-size:11px; font-weight:800; }
.ev-upload__steps h3 { margin:1px 0 6px; color:#edf0f3; font-size:13px; line-height:1.4; }
.ev-upload__steps p { margin:0; color:#aeb7c5; font-size:12px; line-height:1.6; }
.ev-upload__link-note { margin:0 23px 23px; padding:17px 0 0; border-top:1px solid #2c3139; }
.ev-upload__providers { display:flex; flex-wrap:wrap; gap:7px; }
.ev-upload__providers > span { padding:5px 8px; border:1px solid #343b46; border-radius:5px; color:#d2d8e1; background:#1a1f27; font-size:10px; font-weight:700; }
.ev-upload__link-note p { margin:10px 0 0; color:#aeb7c5; font-size:11px; line-height:1.6; }
.ev-upload__welcome { display:grid; gap:18px; }
.ev-upload__welcome .ev-eyebrow { margin:0; color:#f77480; font-size:10px; letter-spacing:.12em; }
.ev-upload__welcome h2 { margin:0; font-size:25px; line-height:1.2; }
.ev-upload__welcome > p:not(.ev-eyebrow) { margin:0; color:#b4bcc8; font-size:14px; line-height:1.6; }
.ev-upload__welcome .ev-form__actions { gap:12px; }
@media (max-width:900px) {
  .ev-upload__layout { grid-template-columns:minmax(0,1fr); gap:20px; }
  .ev-upload__guide { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); }
  .ev-upload__guide-top { border-bottom:0; }
  .ev-upload__steps { gap:17px; }
  .ev-upload__link-note { grid-column:1 / -1; }
}
@media (max-width:560px) {
  .ev-upload .ev-upload__form,
  .ev-upload__welcome { padding:20px 16px; border-radius:14px; }
  .ev-upload .ev-upload__form { gap:20px; }
  .ev-upload .ev-form__row--2,
  .ev-upload .ev-choices__grid { grid-template-columns:minmax(0,1fr); }
  .ev-upload__form-head h2 { font-size:22px; }
  .ev-upload .ev-upload__publish { flex-direction:column; align-items:stretch; gap:10px; }
  .ev-upload__publish > .ev-btn { width:100%; }
  .ev-upload__publish > span { text-align:center; }
  .ev-upload__guide { display:block; border-radius:14px; }
  .ev-upload__guide-top { padding:22px 20px 0; }
  .ev-upload__steps { padding:23px 20px; }
  .ev-upload__link-note { margin:0 20px 20px; }
}
@media (prefers-reduced-motion:reduce) {
  .ev-upload .ev-field input,
  .ev-upload .ev-field textarea { transition:none; }
}
