/* ── Submit a Cocktail ──────────────────────────────────────────────── */

.dlb-submit-wrap { max-width: 700px; margin: 0 auto; }

.dlb-submit-header { text-align: center; margin-bottom: 24px; }
.dlb-submit-header h3 { font-family: 'Barlow Condensed', sans-serif; font-size: 22px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: #fff; margin: 0 0 8px; }
.dlb-submit-header p { color: #8fa3b8; font-size: 14px; margin: 0; line-height: 1.5; }

/* Photo upload */
.dlb-submit-photo-wrap { text-align: center; margin-bottom: 20px; }
.dlb-submit-photo-preview {
    width: 160px; height: 160px; border-radius: 12px;
    background: #112236; border: 2px dashed rgba(255,255,255,.12);
    display: inline-flex; align-items: center; justify-content: center;
    overflow: hidden; cursor: pointer; transition: border-color .2s;
}
.dlb-submit-photo-preview:hover { border-color: #1E73BE; }
.dlb-submit-photo-preview img { width: 100%; height: 100%; object-fit: cover; }
.dlb-submit-photo-placeholder { color: #5c7a96; font-size: 14px; text-align: center; line-height: 1.6; }
.dlb-submit-photo-btn {
    display: inline-block; margin-top: 8px; padding: 6px 16px;
    background: #112236; border: 1px solid rgba(255,255,255,.12);
    border-radius: 6px; color: #8fa3b8; font-size: 13px; cursor: pointer;
    transition: background .2s, color .2s;
}
.dlb-submit-photo-btn:hover { background: #1a3450; color: #fff; }
.dlb-submit-photo-hint { display: block; font-size: 12px; color: #5c7a96; margin-top: 4px; }

/* Fields */
.dlb-submit-field { margin-bottom: 16px; }
.dlb-submit-field label {
    display: block; font-family: 'Barlow Condensed', sans-serif;
    font-size: 13px; font-weight: 700; letter-spacing: .06em;
    text-transform: uppercase; color: #8fa3b8; margin-bottom: 6px;
}
.dlb-submit-field label .required { color: #e74c3c; }
.dlb-submit-field input[type="text"],
.dlb-submit-field textarea,
.dlb-submit-field select {
    width: 100%; padding: 10px 14px;
    background: #0d1d2e; border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px; color: #e8edf2; font-size: 14px;
    font-family: inherit; transition: border-color .2s;
    box-sizing: border-box;
}
.dlb-submit-field input:focus,
.dlb-submit-field textarea:focus,
.dlb-submit-field select:focus { border-color: #1E73BE; outline: none; }
.dlb-submit-field select { appearance: auto; }

.dlb-submit-row { display: flex; gap: 12px; }
.dlb-submit-half { flex: 1; }

/* Ingredients rows */
.dlb-submit-ingredients { display: flex; flex-direction: column; gap: 8px; }
.dlb-submit-ing-row {
    display: flex; gap: 8px; align-items: center;
}
.dlb-submit-ing-amount { width: 70px !important; flex: 0 0 70px; }
.dlb-submit-ing-unit { width: 70px !important; flex: 0 0 70px; }
.dlb-submit-ing-name { flex: 1; }
.dlb-submit-ing-row input {
    padding: 8px 10px;
    background: #0d1d2e; border: 1px solid rgba(255,255,255,.1);
    border-radius: 6px; color: #e8edf2; font-size: 13px;
    font-family: inherit; transition: border-color .2s;
    box-sizing: border-box;
}
.dlb-submit-ing-row input:focus { border-color: #1E73BE; outline: none; }
.dlb-submit-ing-remove,
.dlb-submit-step-remove {
    background: none; border: none; color: #5c7a96; cursor: pointer;
    font-size: 16px; padding: 4px 8px; transition: color .2s;
    flex-shrink: 0;
}
.dlb-submit-ing-remove:hover,
.dlb-submit-step-remove:hover { color: #e74c3c; }

.dlb-submit-add-ing,
.dlb-submit-add-step {
    background: none; border: 1px dashed rgba(255,255,255,.12);
    border-radius: 6px; color: #1E73BE; padding: 8px 16px;
    cursor: pointer; font-size: 13px; margin-top: 8px;
    transition: border-color .2s, background .2s;
}
.dlb-submit-add-ing:hover,
.dlb-submit-add-step:hover { background: rgba(30,115,190,.06); border-color: #1E73BE; }

/* Instruction steps */
.dlb-submit-instructions { display: flex; flex-direction: column; gap: 8px; }
.dlb-submit-step-row { display: flex; gap: 8px; align-items: flex-start; }
.dlb-submit-step-num {
    width: 28px; height: 28px; flex-shrink: 0;
    background: #1E73BE; border-radius: 50%; color: #fff;
    font-size: 13px; font-weight: 700;
    display: flex; align-items: center; justify-content: center;
    margin-top: 4px;
}
.dlb-submit-step-text {
    flex: 1; padding: 8px 10px;
    background: #0d1d2e; border: 1px solid rgba(255,255,255,.1);
    border-radius: 6px; color: #e8edf2; font-size: 13px;
    font-family: inherit; resize: vertical; transition: border-color .2s;
    box-sizing: border-box;
}
.dlb-submit-step-text:focus { border-color: #1E73BE; outline: none; }

/* Submit button */
.dlb-submit-actions { text-align: center; margin-top: 24px; }
.dlb-submit-btn {
    display: inline-block; padding: 14px 40px;
    background: linear-gradient(135deg, #1E73BE 0%, #1EBEB9 100%);
    border: none; border-radius: 10px; color: #fff;
    font-family: 'Barlow Condensed', sans-serif; font-size: 16px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    cursor: pointer; transition: transform .15s, box-shadow .15s;
}
.dlb-submit-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 16px rgba(30,115,190,.4); }
.dlb-submit-btn:disabled { opacity: .5; cursor: not-allowed; transform: none; }
.dlb-submit-note { font-size: 12px; color: #5c7a96; margin-top: 8px; }

/* Success message */
.dlb-submit-success {
    background: rgba(0,163,42,.1); border: 1px solid rgba(0,163,42,.3);
    border-radius: 10px; padding: 20px; text-align: center; margin-bottom: 20px;
}
.dlb-submit-success h4 { color: #00a32a; font-size: 18px; margin: 0 0 6px; }
.dlb-submit-success p { color: #8fa3b8; font-size: 14px; margin: 0; }

/* My Submissions list */
.dlb-submit-history { margin-top: 32px; border-top: 1px solid rgba(255,255,255,.06); padding-top: 24px; }
.dlb-submit-history h3 {
    font-family: 'Barlow Condensed', sans-serif; font-size: 16px;
    font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
    color: #fff; margin: 0 0 12px;
}
.dlb-submit-empty { color: #5c7a96; font-size: 14px; }
.dlb-submit-list { display: flex; flex-direction: column; gap: 10px; }
.dlb-submit-item {
    display: flex; gap: 12px; align-items: center;
    background: #112236; border-radius: 10px; padding: 12px;
    border: 1px solid rgba(255,255,255,.06);
}
.dlb-submit-item-thumb {
    width: 56px; height: 56px; border-radius: 8px;
    object-fit: cover; flex-shrink: 0;
}
.dlb-submit-no-photo {
    background: #0d1d2e; display: flex; align-items: center; justify-content: center;
    font-size: 24px;
}
.dlb-submit-item-info { flex: 1; min-width: 0; }
.dlb-submit-item-name { font-weight: 600; color: #e8edf2; font-size: 14px; margin-bottom: 4px; }
.dlb-submit-item-meta { font-size: 12px; color: #5c7a96; display: flex; gap: 8px; align-items: center; }
.dlb-submit-status-badge {
    padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 600;
    text-transform: uppercase; letter-spacing: .04em;
}
.dlb-submit-status-pending .dlb-submit-status-badge { background: rgba(255,193,7,.15); color: #ffc107; }
.dlb-submit-status-approved .dlb-submit-status-badge { background: rgba(0,163,42,.15); color: #00a32a; }
.dlb-submit-status-rejected .dlb-submit-status-badge { background: rgba(214,54,56,.15); color: #d63638; }
.dlb-submit-admin-note { font-size: 12px; color: #e74c3c; margin-top: 4px; }

/* Responsive */
@media (max-width: 600px) {
    .dlb-submit-row { flex-direction: column; gap: 0; }
    .dlb-submit-ing-row { flex-wrap: wrap; }
    .dlb-submit-ing-amount, .dlb-submit-ing-unit { width: calc(50% - 4px) !important; flex: 0 0 calc(50% - 4px); }
    .dlb-submit-ing-name { width: 100%; flex: 1 1 100%; }
}
