/* 전체 화면 카드 레이아웃: 양 사이드 간격 없음 */
.rw-wrap { display:block; padding:0; box-sizing:border-box; width:100%; }
.rw-form { width:100%; max-width:none; margin:0; background:#fff; padding:20px; border-radius:0; border-top:1px solid #eee; box-shadow:none; font-family:'Noto Sans KR',sans-serif; box-sizing:border-box; }

/* rows */
.rw-row { margin-bottom:14px; padding-left:20px; padding-right:20px; box-sizing:border-box; }
.rw-label { display:block; margin-bottom:6px; font-weight:600; color:#333; }

/* inputs */
.rw-select, .rw-title, .rw-tags, .rw-form input[type="text"], .rw-form textarea {
    width:100%;
    padding:10px 12px;
    border-radius:8px;
    border:1px solid #e7e7e7;
    font-size:15px;
    box-sizing:border-box;
}
.rw-title { font-size:16px; font-weight:600; background:#fafafa; }

/* image controls: dashed wide box */
.rw-image-controls { display:block; }
.rw-image-box {
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:28px;
    border:2px dashed #cfcfcf;
    border-radius:8px;
    background:#fafafa;
    color:#666;
    font-size:15px;
    cursor:pointer;
    text-align:center;
    box-sizing:border-box;
    min-height:80px;
}

/* drag state */
.rw-image-row.rw-dragover .rw-image-box {
    border-color:#00C73C;
    background:#f7fff7;
}

/* hint text */
.rw-hint { display:block; margin-top:8px; color:#888; font-size:13px; }

/* preview - 가로 슬라이딩 */
.rw-preview-container { display:flex; gap:10px; overflow-x:auto; margin-top:10px; padding:10px 0; box-sizing:border-box; }
.rw-preview-card { position:relative; width:150px; min-height:100px; border:1px solid #eee; border-radius:8px; overflow:hidden; background:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.rw-preview-card img { max-width:100%; height:auto; display:block; object-fit:cover; }
.rw-remove { position:absolute; top:6px; right:6px; width:28px; height:28px; border-radius:50%; border:none; background:rgba(0,0,0,0.6); color:#fff; font-weight:700; line-height:28px; text-align:center; cursor:pointer; }

/* card progress */
.rw-progress { position:absolute; left:6px; right:6px; bottom:6px; height:8px; background:rgba(255,255,255,0.6); border-radius:6px; overflow:hidden; }
.rw-progress-bar { width:0%; height:100%; background:#2d8659; transition:width .15s linear; }

/* overall progress */
.rw-overall-progress { margin-top:10px; width:100%; background:#eee; border-radius:6px; height:18px; overflow:hidden; box-sizing:border-box; padding-left:20px; padding-right:20px; }
.rw-overall-bar { width:0%; height:100%; background:#00C73C; position:relative; transition:width .2s ease; }
.rw-overall-percent { position:absolute; left:50%; top:0; transform:translateX(-50%); color:#fff; font-weight:700; line-height:18px; font-size:12px; }

/* actions: 버튼 반반 확장 */
.rw-actions { display:flex; gap:12px; padding-left:20px; padding-right:20px; box-sizing:border-box; }
.rw-actions .rw-btn { flex:1; padding:12px; border-radius:8px; }
.rw-btn { border:1px solid #e6e6e6; background:#fff; cursor:pointer; }
.rw-btn-cancel { background:#f6f6f6; color:#333; border:1px solid #eee; }
.rw-btn-primary { background:#00C73C; color:#fff; border:none; }

/* message */
.rw-msg { margin-top:12px; font-weight:600; color:#d63636; padding-left:20px; padding-right:20px; }

/* failed */
.rw-failed { opacity:0.6; border-color:#ffb3b3; }

/* 반응형 */
@media (max-width:760px){
    .rw-preview-card { width:110px; }
    .rw-form { padding:14px; }
    .rw-row { padding-left:12px; padding-right:12px; }
    .rw-image-box { padding:18px; min-height:64px; }
}
