.bulk-panel{margin:24px 0}.bulk-panel[hidden]{display:none}.bulk-download-field{justify-content:flex-end}.bulk-download-field .button{margin-top:8px}.bulk-file-field input{padding:16px;border:1px dashed #b7d1bf;border-radius:10px;width:100%;background:#f8fcf9}.bulk-status{font-size:13px;color:#576d5b;margin:14px 0 0;line-height:1.6}.bulk-status.is-error{color:#ac3d30}.bulk-subtitle{font-size:18px;margin:18px 0 12px}.bulk-optional{font-size:12px;color:#8a988d;font-weight:400}.bulk-review-heading{margin-top:25px;display:flex;justify-content:space-between;gap:10px;align-items:center}.bulk-review-heading .bulk-subtitle{margin:0}.bulk-review-heading>span{font-size:12px;color:#647466}.bulk-rows{display:grid;gap:14px;margin:18px 0 22px}.bulk-row{border:1px solid #dae8dc;border-radius:13px;padding:18px;background:#fff}.bulk-row.problem{border-color:#e9b3a7;background:#fffaf9}.bulk-row-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}.bulk-row-head strong{font-size:15px}.bulk-tag{font-size:11px;padding:5px 8px;border-radius:30px;background:#f1f5f1;color:#56735c}.bulk-row.problem .bulk-tag{background:#fff0eb;color:#ac4a32}.bulk-row-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.bulk-row-grid .field.address{grid-column:span 2}.bulk-row-grid .field.product{grid-column:span 2}.bulk-row-grid .field.memo{grid-column:span 2}.bulk-row-grid input,.bulk-row-grid select{min-width:0;width:100%}.bulk-row-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:9px;margin-top:12px}.bulk-row-issues{font-size:12px;line-height:1.7;color:#a94735}.bulk-row-issues.is-ok{color:#2e6b46}.bulk-action-buttons{display:flex;gap:8px;flex-wrap:wrap}.bulk-mini{font-size:12px;border:1px solid #cddfd0;border-radius:8px;background:#fff;padding:8px 12px;color:#285b40;cursor:pointer}.bulk-mini:focus-visible{outline:2px solid #285b40;outline-offset:2px}.bulk-mini:disabled{opacity:.5;cursor:default}.bulk-accept{margin:22px 0}.bulk-price-note{color:#697d6d;font-size:12px}.bulk-review-warning{padding:13px;background:#fff8e9;border-radius:8px;font-size:12px;margin:12px 0}.bulk-total-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eaf0ea;font-size:13px}.bulk-total-row b{white-space:nowrap}.bulk-panel .bank-info{margin-top:18px}.bulk-panel .form-error{margin:15px 0}.bulk-panel .summary-total{margin-top:16px}.bulk-panel .check-label small{font-weight:400}.bulk-panel .field strong{color:#ae4a3c}
@media(max-width:780px){.bulk-row-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bulk-row-grid .field.address,.bulk-row-grid .field.product,.bulk-row-grid .field.memo{grid-column:span 2}}
@media(max-width:520px){.bulk-row{padding:13px}.bulk-row-grid{grid-template-columns:1fr}.bulk-row-grid .field.address,.bulk-row-grid .field.product,.bulk-row-grid .field.memo{grid-column:span 1}.bulk-row-actions{align-items:stretch}.bulk-action-buttons{width:100%}.bulk-mini{flex:1}.bulk-subtitle{font-size:16px}}

/* 계약코드: 기본 접힘, 모바일도 같은 접근성 있는 details/summary 사용 */
.bulk-contract-details{margin:14px 0 18px;border:1px solid #d9e8dc;border-radius:12px;background:#fbfdfb;overflow:hidden}
.bulk-contract-details summary{display:flex;align-items:center;gap:9px;min-height:50px;padding:13px 16px;cursor:pointer;font-weight:650;color:#315a3c;list-style:none}
.bulk-contract-details summary::-webkit-details-marker{display:none}
.bulk-contract-details summary::after{content:'＋';margin-left:auto;font-size:18px;font-weight:400}
.bulk-contract-details[open] summary::after{content:'−'}
.bulk-contract-hint{font-size:12px;color:#77887c;font-weight:400}
.bulk-contract-content{border-top:1px solid #e3ece4;padding:15px 16px 17px}
.bulk-contract-content .field{display:flex;flex-direction:column;gap:6px}
.bulk-contract-content input{max-width:490px;width:100%}
.bulk-download-area{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.bulk-download-area .button{min-height:44px}
@media(max-width:520px){.bulk-download-area .button{width:100%}.bulk-contract-details summary{flex-wrap:wrap}.bulk-contract-hint{font-size:11px}}

/* v9.4.6 최종 배송지: 고객이 모든 수령인·주소·상품을 재확인할 수 있는 목록 */
.bulk-destinations-review{margin:22px 0 12px;padding:18px;border:1px solid #d9e6dc;border-radius:12px;background:#f9fcfa;min-width:0}
.bulk-destinations-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.bulk-destinations-heading h3{margin:0;font-size:17px}
.bulk-destinations-heading p{margin:0;font-size:12px;color:#546d5a}
.bulk-destinations-review>.field-help{margin:10px 0;font-size:12px;line-height:1.6}
.bulk-destinations-list{display:grid;gap:8px;max-height:620px;overflow-y:auto;overscroll-behavior:contain;min-width:0;padding:2px 4px 2px 0}
.bulk-destinations-list:focus-visible{outline:2px solid #31714b;outline-offset:2px}
.bulk-destination{min-width:0;background:#fff;border:1px solid #e1e9e1;border-radius:9px;padding:12px 14px;overflow-wrap:anywhere}
.bulk-destination-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.bulk-destination-person{font-size:14px}
.bulk-destination-phone{font-size:12px;color:#546a59}
.bulk-destination-address{margin:7px 0 4px;line-height:1.6;font-size:14px;white-space:pre-wrap}
.bulk-destination-product{margin:0;font-size:12px;color:#315e42}
.bulk-destination-memo{margin:6px 0 0;font-size:12px;color:#596960}
@media(max-width:520px){.bulk-destinations-review{padding:12px}.bulk-destination{padding:11px}.bulk-destinations-list{max-height:55vh}.bulk-destination-head{flex-direction:column;gap:2px}}
