.field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 18px; }
.field span { font-family: var(--mono); font-size: 0.72rem; font-weight: 700;
    letter-spacing: 0.06em; text-transform: uppercase; color: var(--mut); }
.field input[type="text"], .field textarea {
    font-family: var(--body); font-size: 0.98rem; color: var(--cream); background: var(--bg-2);
    border: var(--bd); border-radius: 12px 9px 13px 10px; padding: 12px 14px; resize: vertical;
}
.field input[type="text"]:focus, .field textarea:focus { outline: 2px solid var(--sienna); }
.field input[type="file"] { font-family: var(--body); font-size: 0.85rem; color: var(--cream-2); }

.crop-frame { position: relative; width: 100%; aspect-ratio: 6 / 1; overflow: hidden;
    border: var(--bd); border-radius: 10px; margin-top: 10px; background: #000;
    cursor: grab; touch-action: none; }
.crop-frame.dragging { cursor: grabbing; }
.crop-frame img { position: absolute; top: 0; left: 0; max-width: none; max-height: none;
    user-select: none; -webkit-user-drag: none; pointer-events: none; }
.crop-hint { font-size: 0.76rem; color: var(--mut); margin-top: 6px; }

.author-note { color: var(--mut); margin-bottom: 14px; font-size: 0.72rem; }

.form-error { background: rgba(194, 118, 79, 0.18); border: 2px solid var(--sienna); color: var(--cream);
    border-radius: 10px; padding: 10px 14px; margin-bottom: 14px; font-size: 0.88rem; }

#submit-btn:disabled { opacity: 0.6; cursor: not-allowed; }
