.wd-sidebar { width:300px; }

.wd-sidebar .tree-structure, .wd-sidebar .sidebar-list { margin:10px 0; }

/* 인증 입력 */
.auth-row { display:flex; flex-wrap:wrap; align-items:flex-start; gap:10px; margin-top:20px; }
.auth-row input { width:300px; padding:12px 15px; font-size:16px; border:1px solid #ccc; border-radius:6px; background:#fff; box-sizing:border-box; }
.auth-row input#mall-id { color:#1f6eff; font-weight:700; }
.auth-row button { padding:12px 25px; background:#333; color:white; }
.auth-row button:hover { background:#555; }

.pw-wrapper { position:relative; }
.password-tooltip { position:absolute; top:-45px; left:0; background:#fffbcc; color:#333; font-size:14px; padding:8px 12px; border:1px solid #e6c200; border-radius:5px; z-index:10; display:none; }
.auth-success-box { margin-top:10px; font-weight:bold; color:#1a8f2e; background:#dfffe0; padding:4px 8px; border-radius:5px; font-size:13px; display:none; position:absolute; top:4px; left:225px; }
.auth-error-text { color:red; margin:10px 0 20px; font-size:14px; }

/* 안내 영역 */
.auth-guide-box { background:#fff; border:1px solid #e2e8f0; margin:30px 0; padding:25px 30px; border-radius:8px; font-size:15px; }
.auth-guide-box .guide-row { display:flex; justify-content:space-between; gap:30px; margin-bottom:40px; }
.auth-guide-box .guide-label { width:140px; margin-top:5px; font-weight:600; color:#333; font-size:16px; flex-shrink:0; text-align:left; }
.auth-guide-box .guide-value { flex:1; font-size:15px; line-height:1.7; text-align:left; }
.auth-guide-box .guide-value .-mColor { font-size:17px; font-weight:700; }
.auth-guide-box .guide-value button { margin-bottom:15px; }
.auth-guide-box .sub { font-size:14px; color:#888; margin-left:4px; }
.auth-guide-box .info { padding-left:20px; margin:0; text-align:left; }
.auth-guide-box .info li { margin-bottom:2px; list-style:disc; color:#333; font-size:14px; text-align:left; }

/* 결제 수단 안내 */
.auth-row.payment-line { display:none !important; align-items:center; gap:20px; margin-top:20px; }
.payment-label { writing-mode:vertical-rl; font-size:13px; white-space:nowrap; line-height:1.2; color:#333; }
.payment-options { display:flex; gap:40px; align-items:center; }
.payment-options label { display:flex; align-items:center; font-size:14px; gap:6px; white-space:nowrap; }

/* CSV 업로드 레이아웃 */
.upload-row { display:flex; align-items:center; gap:12px; margin:20px 0; }
.upload-row input[type="file"] { display:block; width:100%; max-width:280px; padding:8px 15px; border-radius:6px; background:#f9f9f9; border:1px solid #ccc; font-size:14px; margin:0; }
.upload-row button { padding:11px 25px; font-size:14px; font-weight:600; background:#111; border-radius:6px; cursor:pointer; text-align:center; border:none; color:#fff; }
.upload-row button:hover { background:#333; }

.preloaded-buttons, #csv-download-buttons { display:flex; flex-direction:column; gap:8px; align-items:flex-start; }
.preloaded-buttons button, #csv-download-buttons button { background:#111; color:white; border:none; padding:10px 16px; border-radius:6px; font-size:14px; font-weight:500; cursor:pointer; transition:all 0.2s ease; }
.preloaded-buttons button:hover, #csv-download-buttons button:hover { background:#333; }

.csv-flex-wrap { display:flex; gap:30px; align-items:stretch; }
.csv-card { background:#f9f9f9; border:1px solid #ddd; border-radius:10px; padding:20px; box-shadow:0 2px 4px rgba(0,0,0,0.04); flex:1; display:flex; flex-direction:column; justify-content:space-between; }
