/**
 * Seller 관리자 — DS (`.div-block` 스코프)
 * 텍스트·링크 강조: --m3-primary (버건디) / 버튼 UI: --btn-solid-* (차콜·그레이) / 파괴·경고: --btn-danger-*
 * 공통: 상품목록·라방목록 등 셀러 화면에서 재사용
 * 로드: seller/layouts/layout.ejs (Bootstrap 다음)
 */
.div-block {
    /* 링크·칩·포커스 강조 (버튼과 분리) */
    --m3-primary: #8b3a42;
    --m3-on-primary: #ffffff;
    --m3-primary-hover: #722f36;
    --m3-outline: #6c757d;
    --m3-on-surface: #212529;
    --m3-surface-0: #ffffff;
    --m3-surface-1: #f4f6f8;
    --m3-surface-2: #e8eaed;
    --m3-border: #dee2e6;
    --m3-info-bg: #e8f0fe;
    --m3-info-text: #0b57d0;
    --m3-info-border: #c9ddff;
    --m3-error: #b3261e;
    --m3-error-container: #f9dedc;
    --m3-success: #1d6e2a;
    --m3-success-container: #e8f5e9;
    --m3-warning-container: #fff4e0;
    --m3-warning-on: #5c3d00;
    /* 버튼: 어두운 솔리드 / 그레이 보조 / 삭제·경고만 적색 */
    --btn-solid-bg: #343a40;
    --btn-solid-hover-bg: #23272b;
    --btn-muted-bg: #e9ecef;
    --btn-muted-hover-bg: #dee2e6;
    --btn-muted-text: #343a40;
    --btn-danger-bg: #c62828;
    --btn-danger-hover-bg: #b71c1c;
}

/* 기본 텍스트 링크 (<a>) — .btn, .section-header-cross-link 등 더 구체적인 선택자가 우선 */
.div-block a {
    color: rgb(69, 69, 69);
}

.div-block a:hover {
    color: rgb(52, 52, 52);
}

/* 본문 기본(링크 아님) — `.div-block a` 와 동일 톤 rgb(69,69,69), Bootstrap text-success 녹색 대체용 */
.div-block .ds-text-body-neutral {
    color: rgb(69, 69, 69);
}

/* 주문내역 품목 행(PC): orderListNew 에서 기존 .text-success 에 묶여 있던 셀 구분선 */
.div-block.order-list-tables table tbody td.ds-text-body-neutral {
    border-bottom: 1px solid #7d7d7d;
    padding: 3px;
    vertical-align: middle;
}

/* 페이지 본문 여백 (Comfortable 그리드; webflow .div-block 100vh 무효화) */
.div-block.main-container {
    padding: 16px 20px 24px;
    box-sizing: border-box;
    height: auto;
    min-height: 0;
}

@media (max-width: 1024px) {
    .div-block.main-container {
        padding: 12px 16px 20px;
    }
}

/* 주문목록(orderListNew): webflow .div-block 100vh 방지 + 주문관리 패널 M3 정렬 */
.div-block.order-list-page {
    height: auto;
    min-height: 0;
    box-sizing: border-box;
    text-align: start;
}

/* -------------------------------------------------------------------------
 * 셀러 로그인 (/view/seller/login) — layout + .div-block, M3 / DS 톤
 * ------------------------------------------------------------------------- */
body:has(.div-block.seller-login-page) .pc-container > .container.pc_header,
body.seller-login-body .pc-container > .container.pc_header {
    display: none !important;
}

.div-block.seller-login-page {
    width: 100%;
    max-width: 100%;
    min-height: calc(100vh - 32px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 24px 16px 32px;
    box-sizing: border-box;
    margin: 0 auto;
    text-align: start;
    background: linear-gradient(165deg, var(--m3-surface-1) 0%, #eef0f3 45%, var(--m3-surface-2) 100%);
}

.div-block.seller-login-page .seller-login-card {
    width: 100%;
    max-width: 400px;
    background: var(--m3-surface-0);
    border: 1px solid var(--m3-border);
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(29, 27, 32, 0.12);
    padding: 28px 24px 20px;
    box-sizing: border-box;
}

.div-block.seller-login-page .seller-login-header {
    text-align: center;
    margin-bottom: 22px;
}

.div-block.seller-login-page .seller-login-heading {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.35;
    letter-spacing: 0.01em;
    color: #1d1b20;
}

.div-block.seller-login-page .seller-login-lead {
    margin: 6px 0 0;
    font-size: 0.8125rem;
    line-height: 1.4;
    color: #625b71;
    font-weight: 400;
}

.div-block.seller-login-page .seller-login-label {
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: #49454f;
    margin-bottom: 6px;
}

.div-block.seller-login-page .form-control {
    border-radius: 12px;
    border: 1px solid var(--m3-border);
    padding: 10px 14px;
    font-size: 0.9375rem;
    line-height: 1.4;
    color: var(--m3-on-surface);
    background-color: var(--m3-surface-0);
    box-shadow: none;
}

.div-block.seller-login-page .form-control::placeholder {
    color: #79747e;
    opacity: 1;
}

.div-block.seller-login-page .form-control:focus {
    border-color: var(--m3-primary);
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.2);
    outline: none;
}

.div-block.seller-login-page .seller-login-submit {
    width: 100%;
    margin-top: 4px;
    padding: 12px 16px;
    font-size: 0.9375rem;
    font-weight: 500;
}

.div-block.seller-login-page .seller-login-footer {
    text-align: center;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid var(--m3-border);
}

.div-block.seller-login-page .seller-login-footer a {
    font-size: 0.8125rem;
    color: #625b71;
    text-decoration: none;
    transition: color 0.15s ease;
}

.div-block.seller-login-page .seller-login-footer a:hover {
    color: var(--m3-primary);
    text-decoration: underline;
}

.div-block.seller-login-page .seller-login-footer .seller-login-footer-sep {
    color: var(--m3-border);
    margin: 0 10px;
    user-select: none;
}

@media (max-width: 576px) {
    .div-block.seller-login-page {
        padding: 16px 12px 24px;
        min-height: calc(100vh - 24px);
    }

    .div-block.seller-login-page .seller-login-card {
        padding: 22px 18px 16px;
    }
}

/* 주문관리 패널: orderListNew 에서 .main-container.container 안에 두어 검색 카드와 동일한 container 너비 */
.div-block.order-list-page .btn-status-change {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    padding: 12px 0 20px;
    margin: 0;
    background: transparent;
    border-bottom: none;
}

/* 주문목록 카드 — 주문금액·매출·건수 한 줄 (내용 너비만큼만, M3 칩 톤) */
.div-block.order-list-page .order-page-total-summary-wrap {
    display: block;
    width: fit-content;
    max-width: 100%;
    margin: 0;
    padding: 0 0 10px;
    box-sizing: border-box;
    text-align: start;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.div-block.order-list-page .order-page-total-summary {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 8px 10px;
    width: fit-content;
    max-width: 100%;
    padding: 10px 14px;
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.08);
    box-sizing: border-box;
    text-align: start;
}

.div-block.order-list-page .order-page-total-summary__heading {
    flex-shrink: 0;
    margin: 0;
    margin-right: 2px;
    padding-right: 10px;
    border-right: 1px solid #dee2e6;
}

.div-block.order-list-page .order-page-total-summary__sub {
    flex-shrink: 0;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.2;
    color: #625b71;
    letter-spacing: 0.02em;
}

.div-block.order-list-page .order-page-total-summary__stat {
    display: inline-flex;
    flex-direction: row;
    align-items: baseline;
    gap: 0;
    flex-shrink: 0;
    white-space: nowrap;
}

.div-block.order-list-page .order-page-total-summary__stat--amount .order-page-total-summary__figure {
    font-size: 1.125rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: var(--m3-on-surface);
    line-height: 1.2;
}

.div-block.order-list-page .order-page-total-summary__stat--secondary .order-page-total-summary__figure {
    font-size: 1.125rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: var(--m3-on-surface);
    line-height: 1.2;
}

.div-block.order-list-page .order-page-total-summary__suffix {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #49454f;
    margin-left: 2px;
}

.div-block.order-list-page .order-page-total-summary__sep {
    flex-shrink: 0;
    width: 1px;
    height: 1.125rem;
    margin: 0 2px;
    background: #cac4d0;
    align-self: center;
}

@media (max-width: 576px) {
    .div-block.order-list-page .order-page-total-summary {
        gap: 6px 8px;
        padding: 8px 12px;
    }

    .div-block.order-list-page .order-page-total-summary__heading {
        padding-right: 8px;
    }

    .div-block.order-list-page .order-page-total-summary__stat--amount .order-page-total-summary__figure,
    .div-block.order-list-page .order-page-total-summary__stat--secondary .order-page-total-summary__figure {
        font-size: 1.0625rem;
    }

    .div-block.order-list-page .order-page-total-summary__sub {
        font-size: 0.6875rem;
    }
}

/* 모바일: 주문관리 접기 바 (orderListNew — order-panel 과 톤 맞춤) */
.div-block.order-list-page .mobile-panel-toggle.order-mobile-panel-bar {
    display: none;
}

@media (max-width: 768px) {
    .div-block.order-list-page .mobile-panel-toggle.order-mobile-panel-bar {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        padding: 12px 14px;
        box-sizing: border-box;
        cursor: pointer;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
        background: linear-gradient(180deg, #ffffff 0%, var(--m3-surface-1) 100%);
        border: 1px solid #dee2e6;
        box-shadow: 0 1px 2px rgba(29, 27, 32, 0.06);
    }

    .div-block.order-list-page .btn-status-change:not(.collapsed) .order-mobile-panel-bar {
        border-radius: 5px 5px 0 0;
        border-bottom: none;
    }

    .div-block.order-list-page .btn-status-change.collapsed .order-mobile-panel-bar {
        border-radius: 5px;
        border-bottom: 1px solid #dee2e6;
    }

    .div-block.order-list-page .order-mobile-panel-bar-title {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 10px;
        min-width: 0;
        flex: 1;
    }

    .div-block.order-list-page .order-mobile-panel-bar-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px;
        height: 36px;
        border-radius: 10px;
        background: #eaddff;
        color: var(--m3-primary);
        font-size: 1rem;
        flex-shrink: 0;
    }

    .div-block.order-list-page .order-mobile-panel-bar-label {
        font-size: 0.9375rem;
        font-weight: 600;
        color: var(--m3-on-surface);
        letter-spacing: 0.01em;
    }

    .div-block.order-list-page .order-mobile-panel-chevron {
        font-size: 0.65rem;
        color: var(--m3-outline);
        margin-left: auto;
        transition: transform 0.2s ease;
    }

    .div-block.order-list-page .btn-status-change.collapsed .order-mobile-panel-chevron {
        transform: rotate(-90deg);
    }

    .div-block.order-list-page .btn-status-change:not(.collapsed) .order-panel-content {
        border-radius: 0 0 5px 5px;
        border-top: 1px solid #dee2e6;
    }
}

.div-block.order-list-page .order-panel-content {
    padding: 0;
    background: var(--m3-surface-1);
    border: 1px solid #dee2e6;
    border-radius: 5px;
    overflow: hidden;
}

.div-block.order-list-page .order-panel-header {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px 16px;
    margin: 0;
    padding: 14px 16px;
    width: 100%;
    box-sizing: border-box;
    border-bottom: 1px solid #dee2e6;
    background: #fff;
}

/* 정산·일괄: 사용자 그룹 헤더(order-panel-header) 바로 아래 */
.div-block.order-list-page .order-panel-settlement {
    display: none;
    flex-direction: column;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    border-bottom: 1px solid var(--m3-border);
    background: linear-gradient(180deg, rgba(139, 58, 66, 0.07) 0%, var(--m3-surface-1) 55%, #f8f9fa 100%);
}

.div-block.order-list-page .order-panel-settlement.is-active {
    display: flex;
}

.div-block.order-list-page .order-panel-settlement-inner {
    padding: 12px 16px 14px;
    width: 100%;
    box-sizing: border-box;
}

.div-block.order-list-page .order-panel-settlement-head {
    margin-bottom: 10px;
}

.div-block.order-list-page .order-panel-settlement-label {
    letter-spacing: 0.06em;
}

.div-block.order-list-page .order-panel-settlement-actions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    width: 100%;
}

.div-block.order-list-page .order-panel-settlement-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    width: auto !important;
}

.div-block.order-list-page .order-panel-settlement-buttons .action-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    font-size: 0.8125rem;
    white-space: nowrap;
}

.div-block.order-list-page .order-panel-settlement-progress {
    display: none;
    align-items: center;
    margin: 0;
    flex-shrink: 0;
    padding: 6px 10px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #dee2e6;
}

.div-block.order-list-page .panel-title-section {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 16px;
    flex: 1 1 auto;
    min-width: 0;
}

.div-block.order-list-page .order-panel-title {
    margin: 0;
    flex-shrink: 0;
}

.div-block.order-list-page .order-panel-actions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.div-block.order-list-page .order-panel-actions .action-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    white-space: nowrap;
}

.div-block.order-list-page .order-panel-actions .action-button i {
    margin-right: 6px;
}

.div-block.order-list-page .order-panel-invoice {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    flex-shrink: 0;
}

.div-block.order-list-page .order-panel-invoice .action-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    white-space: nowrap;
}

.div-block.order-list-page .order-panel-invoice .action-button i {
    margin-right: 6px;
}

.div-block.order-list-page .order-panel-tabs-wrap,
.div-block.order-list-tables .order-panel-tabs-wrap {
    padding: 12px 12px 8px !important;
    background: #fff;
}

.div-block.order-list-page .order-status-tabs,
.div-block.order-list-tables .order-status-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 0;
}

.div-block.order-list-page .order-status-tabs .btn,
.div-block.order-list-tables .order-status-tabs .btn {
    flex: 1 1 auto;
    min-width: 100px;
    max-width: 100%;
    position: relative;
    min-height: 52px;
    padding: 8px 12px;
    margin: 0;
    border: 1px solid #dee2e6;
    border-radius: 5px;
    background: #fff;
    color: var(--m3-on-surface);
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.35;
    width: auto;
    border-right: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6;
    box-shadow: none;
}

.div-block.order-list-page .order-status-tabs .btn:hover,
.div-block.order-list-tables .order-status-tabs .btn:hover {
    background: var(--m3-surface-2);
    border-color: #cac4d0;
}

.div-block.order-list-page .order-status-tabs .btn.active,
.div-block.order-list-tables .order-status-tabs .btn.active {
    font-weight: 600;
    color: #ffffff;
    background: var(--btn-solid-bg);
    border-color: var(--btn-solid-bg);
    border-bottom-color: var(--btn-solid-bg);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

.div-block.order-list-page .order-status-tabs .count,
.div-block.order-list-tables .order-status-tabs .count {
    margin-left: 4px;
    font-size: 0.75rem;
    color: #49454f;
}

/* 주문상태 변경: 정산·일괄 아래, 상태 탭(order-panel-tabs-wrap) 위 */
.div-block.order-list-page .order-panel-status-toolbar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0;
    padding: 12px 16px 14px;
    width: 100%;
    box-sizing: border-box;
    border-top: none;
    border-bottom: 1px solid #dee2e6;
    background: #fff;
}

.div-block.order-list-page .order-panel-status-toolbar-inner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    width: 100%;
}

.div-block.order-list-page .order-panel-status-label {
    flex-shrink: 0;
    margin: 0;
}

.div-block.order-list-page .order-panel-status-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    width: auto !important;
}

.div-block.order-list-page .order-panel-status-buttons .btn {
    border: 1px solid #dee2e6;
    background: #fff;
    color: #49454f;
    padding: 6px 12px;
    font-size: 0.8125rem;
    border-radius: 5px;
}

.div-block.order-list-page .order-panel-status-buttons .btn:hover {
    background: var(--m3-surface-2);
    border-color: #cac4d0;
}

/* 스크롤 시 상단 고정 — 주문상태 변경 (orderListNew.ejs #orderStatusStickyToolbar)
 * 본문 밖 fixed 요소라 M3 토큰을 이 블록에 두고, 액션 버튼은 .action-button.secondary 톤에 맞춤 */
.order-status-sticky-toolbar {
    --m3-primary: #8b3a42;
    --m3-on-primary: #ffffff;
    --m3-primary-hover: #722f36;
    --m3-outline: #6c757d;
    --m3-on-surface: #212529;
    --m3-surface-1: #f4f6f8;
    --m3-surface-2: #e8eaed;
    --m3-border: #dee2e6;
    --m3-info-bg: #e8f0fe;
    --m3-info-text: #0b57d0;
    --m3-info-border: #c9ddff;
    --btn-solid-bg: #343a40;
    --btn-solid-hover-bg: #23272b;
    --btn-muted-bg: #e9ecef;
    --btn-muted-hover-bg: #dee2e6;
    --btn-muted-text: #343a40;
    --btn-danger-bg: #c62828;
    --btn-danger-hover-bg: #b71c1c;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 1030;
    padding: calc(6px + env(safe-area-inset-top, 0px)) 16px 8px;
    margin: 0;
    box-sizing: border-box;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 246, 248, 0.96) 100%);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid #dee2e6;
    box-shadow: 0 2px 10px rgba(41, 37, 36, 0.08);
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.order-status-sticky-toolbar.order-status-sticky-toolbar--visible {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
}

@media (prefers-reduced-motion: reduce) {
    .order-status-sticky-toolbar {
        transition: none;
    }
}

.order-status-sticky-toolbar-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    max-width: min(1200px, 100%);
    margin: 0 auto;
    padding: 0 8px;
    box-sizing: border-box;
}

.order-status-sticky-label {
    flex-shrink: 0;
    margin: 0;
    text-align: center;
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--m3-outline);
}

.order-status-sticky-toolbar .order-status-sticky-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.order-status-sticky-toolbar .order-status-sticky-buttons .btn {
    border: none;
    margin: 0;
    white-space: nowrap;
    padding: 6px 14px;
    font-size: 0.8125rem;
    line-height: 1.25;
    font-weight: 500;
    letter-spacing: 0.01em;
    border-radius: 5px;
    color: #4a4458;
    background: var(--m3-surface-2);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
    transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.order-status-sticky-toolbar .order-status-sticky-buttons .btn:hover {
    background: #dfd8e6;
    color: #342d40;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.14);
}

.order-status-sticky-toolbar .order-status-sticky-buttons .btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(139, 58, 66, 0.45);
}

@media (max-width: 480px) {
    .order-status-sticky-toolbar {
        padding-left: 10px;
        padding-right: 10px;
    }

    .order-status-sticky-toolbar .order-status-sticky-buttons {
        gap: 5px;
    }

    .order-status-sticky-toolbar .order-status-sticky-buttons .btn {
        padding: 5px 10px;
        font-size: 0.75rem;
    }
}

@media (max-width: 1024px) {
    .div-block.order-list-page .order-panel-header {
        flex-direction: column;
        align-items: stretch;
    }

    .div-block.order-list-page .order-panel-invoice {
        width: 100%;
        justify-content: flex-start;
    }

    .div-block.order-list-page .order-status-tabs .btn,
    .div-block.order-list-tables .order-status-tabs .btn {
        flex: 1 1 calc(50% - 4px);
        min-width: 120px;
    }
}

/* 주문목록 — listType1·2·3 테이블 영역 (orderListNew.ejs) */
.div-block.order-list-tables {
    height: auto;
    min-height: 0;
    box-sizing: border-box;
    text-align: start;
    padding: 0 4px 24px;
    max-width: 100%;
}

.div-block.order-list-tables .order-list-table-wrap {
    margin-bottom: 16px;
    border: 1px solid #dee2e6;
    border-radius: 5px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.06);
}

/* 상태 탭 줄(order-list-tabs-card)만 — 외곽 테두리·그림자 없음 */
.div-block.order-list-tables .order-list-table-wrap.order-list-tabs-card {
    border: none;
    box-shadow: none;
    border-radius: 0;
    background: transparent;
    overflow: visible;
}

.div-block.order-list-tables .order-list-table {
    margin-bottom: 0 !important;
}

.div-block.order-list-tables .order-list-table thead th,
.div-block.order-list-tables .order-list-table thead.small th {
    vertical-align: middle;
    font-weight: 600;
    font-size: 0.6875rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #49454f;
    background: linear-gradient(180deg, var(--m3-surface-1) 0%, #e8eaed 100%);
    border-bottom: 2px solid #dee2e6;
    white-space: nowrap;
}

.div-block.order-list-tables .order-list-table tbody th,
.div-block.order-list-tables .order-list-table tbody td {
    vertical-align: middle;
    font-size: 0.8125rem;
    border-color: #e8e0ee;
}

.div-block.order-list-tables .order-list-table tbody tr:hover {
    background: rgba(139, 58, 66, 0.04);
}

.div-block.order-list-tables .item_table {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    overflow: hidden;
    font-size: 0.8125rem;
}

.div-block.order-list-tables .item_table td {
    padding: 6px 8px;
    border-color: #efe9f4;
}

.div-block.order-list-tables .action-button.order-list-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 10px;
    font-size: 0.75rem;
    line-height: 1.25;
    font-weight: 500;
    border-radius: 5px;
    margin-top: 4px;
    margin-right: 4px;
    white-space: nowrap;
}

.div-block.order-list-tables .action-button.order-list-action--fee {
    min-width: 118px;
    min-height: 32px;
    margin-top: 6px;
}

.div-block.order-list-tables .action-button.order-list-action--icon {
    padding: 4px 8px;
    min-width: auto;
    margin-top: 0;
    margin-left: 4px;
}

.div-block.order-list-tables .action-button.order-list-action:disabled,
.div-block.order-list-tables .action-button.order-list-action[disabled] {
    opacity: 0.55;
    cursor: not-allowed;
    pointer-events: none;
}

.div-block.order-list-tables .order-list-product-card {
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 5px;
    padding: 14px 16px;
    margin-bottom: 12px;
    box-shadow: 0 1px 4px rgba(29, 27, 32, 0.06);
}

.div-block.order-list-tables .order-list-product-card .order-list-product-title {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--m3-on-surface);
    margin-bottom: 4px;
}

.div-block.order-list-tables .order-list-product-card .order-list-product-meta {
    font-size: 0.8125rem;
    color: #49454f;
}

.div-block.order-list-tables .order-list-product-card .order-list-product-price {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--m3-primary);
}

.div-block.order-list-tables .order-list-product-card .order-list-product-footer {
    border-top: 1px solid #dee2e6;
    padding-top: 12px;
    margin-top: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.div-block.order-list-tables .mobile-order-card .action-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.div-block.order-list-tables #userOrderBuyerPaging {
    background: var(--m3-surface-1);
    border-color: #dee2e6 !important;
}

.div-block.order-list-tables .order-list-table tbody th img,
.div-block.order-list-tables .order-list-table tbody td img {
    max-width: 72px;
    max-height: 72px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid #dee2e6;
    vertical-align: middle;
}

.div-block.order-list-tables .mobile-order-card {
    border: 1px solid #dee2e6;
    border-radius: 5px;
    box-shadow: 0 1px 4px rgba(29, 27, 32, 0.06);
}

.div-block .ds-headline {
    font-size: 1.5rem;
    line-height: 1.3;
    font-weight: 600;
    color: var(--m3-on-surface);
    letter-spacing: 0;
}

.div-block .ds-title {
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--m3-on-surface);
    letter-spacing: 0.01em;
}

.div-block .ds-body {
    font-size: 0.9rem;
    line-height: 1.5;
    font-weight: 400;
    color: var(--m3-on-surface);
}

.div-block .ds-label {
    font-size: 0.8125rem;
    line-height: 1.35;
    font-weight: 500;
    color: #49454f;
    letter-spacing: 0.01em;
}

.div-block .ds-caption {
    font-size: 0.75rem;
    line-height: 1.35;
    font-weight: 400;
    color: #625b71;
    letter-spacing: 0.01em;
}

/* M3 title-medium — 모달 제목 등 (클래스 없이도 .div-block 안에서 통일) */
.div-block .modal-title {
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--m3-on-surface);
    letter-spacing: 0.01em;
}

.div-block .modal-body .text-muted,
.div-block .modal-body p.text-muted {
    font-size: 0.75rem;
    line-height: 1.35;
    color: #625b71;
}

.div-block .search-section .form-label {
    font-size: 0.8125rem;
    line-height: 1.35;
    font-weight: 500;
    color: #49454f;
    letter-spacing: 0.01em;
}

.div-block .labang-title {
    margin: 0;
}

.div-block .section-header {
    align-items: flex-start;
    gap: 16px;
    flex-wrap: wrap;
}

/* 페이지 제목 옆 교차 이동 링크 (주문목록 ↔ 상품목록) */
.div-block .section-header-headline-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    row-gap: 8px;
}

.div-block .section-header-cross-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 14px;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.01em;
    color: var(--m3-primary);
    text-decoration: none;
    white-space: nowrap;
    border: 1px solid rgba(139, 58, 66, 0.28);
    border-radius: 9999px;
    background: rgba(139, 58, 66, 0.06);
    transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.div-block .section-header-cross-link:hover {
    background: rgba(139, 58, 66, 0.12);
    border-color: var(--m3-primary);
    color: var(--m3-primary-hover);
    text-decoration: none;
}

.div-block .section-header-cross-link:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(139, 58, 66, 0.45);
}

/* 상품목록 ↔ 주문목록: 상단 가운데 정렬 세그먼트 + 우측 실시간 현황 */
.div-block .section-header--labang-tool-nav {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    width: 100%;
}

.div-block .section-header--labang-tool-nav .section-header-tool-row {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    box-sizing: border-box;
}

.div-block .section-header--labang-tool-nav .section-header-segment {
    justify-self: center;
    grid-column: 2;
}

.div-block .section-header--labang-tool-nav .section-header-tool-row__trail {
    grid-column: 3;
    justify-self: end;
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    min-width: 0;
}

.div-block .section-header--labang-tool-nav .section-header-tool-row__lead {
    grid-column: 1;
}

.div-block .section-header-labang-line {
    width: 100%;
}

.div-block .section-header-labang-line .labang-name {
    margin: 0;
}

/* 상품↔주문 세그먼트 — 비선택 옅은 그레이 / 선택 프라이머리 톤 */
.div-block .ds-segmented-control {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    padding: 4px;
    border-radius: 5px;
    background: #f0eef3;
    border: 1px solid #e0dce5;
    gap: 4px;
    box-sizing: border-box;
}

.div-block .ds-segmented-control__segment {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 20px;
    min-height: 40px;
    border-radius: 5px;
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-decoration: none;
    color: #5f5c67;
    background: #e8e6ee;
    border: none;
    cursor: pointer;
    transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
    white-space: nowrap;
    box-sizing: border-box;
}

.div-block button.ds-segmented-control__segment {
    font: inherit;
    margin: 0;
    appearance: none;
    -webkit-appearance: none;
}

.div-block .ds-segmented-control__segment:hover:not(.is-active) {
    background: #dedbe5;
    color: #45424d;
}

.div-block .ds-segmented-control__segment.is-active {
    background: var(--btn-solid-bg);
    color: #ffffff;
    box-shadow: 0 1px 2px rgba(80, 40, 45, 0.22);
}

.div-block .ds-segmented-control__segment.is-active:hover {
    background: var(--btn-solid-hover-bg);
    color: #ffffff;
}

.div-block .ds-segmented-control__segment:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(139, 58, 66, 0.35);
}

.div-block .ds-segmented-control__segment.is-active:focus-visible {
    box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(139, 58, 66, 0.45), 0 1px 2px rgba(80, 40, 45, 0.22);
}

@media (max-width: 1024px) {
    .div-block .section-header--labang-tool-nav .section-header-tool-row {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }

    .div-block .section-header--labang-tool-nav .section-header-tool-row__trail {
        width: 100%;
        max-width: 100%;
        justify-content: center;
    }

    .div-block .section-header--labang-tool-nav .section-header-tool-row__trail .section-header-right--collapsible {
        width: 100% !important;
        max-width: 100%;
    }
}

/* 라이브 일정 목록: 날짜 열 축소 · 관리 버튼 한 줄 */
.div-block.live-schedule-list-page .section-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}

.div-block.live-schedule-list-page .live-schedule-table {
    table-layout: fixed;
    width: 100%;
}

.div-block.live-schedule-list-page .live-schedule-col-no {
    width: 5.5%;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.div-block.live-schedule-list-page .live-schedule-col-live {
    width: 12%;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.div-block.live-schedule-list-page .live-schedule-table tbody .live-schedule-col-live,
.div-block.live-schedule-list-page .live-schedule-table tbody .live-schedule-col-reg {
    font-size: 0.8125rem;
}

.div-block.live-schedule-list-page .live-schedule-col-title {
    width: auto;
    min-width: 0;
}

.div-block.live-schedule-list-page .live-schedule-col-title .js-schedule-title {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: bottom;
}

.div-block.live-schedule-list-page .live-schedule-col-display {
    width: 7%;
    white-space: nowrap;
}

.div-block.live-schedule-list-page .live-schedule-col-reg {
    width: 11%;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.div-block.live-schedule-list-page .live-schedule-actions-col,
.div-block.live-schedule-list-page .live-schedule-actions-cell {
    width: 15%;
    white-space: nowrap;
    vertical-align: middle;
}

.div-block.live-schedule-list-page .live-schedule-actions {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
}

.div-block.live-schedule-list-page .live-schedule-actions .action-button {
    padding: 5px 10px;
    font-size: 0.75rem;
    line-height: 1.25;
    flex-shrink: 0;
    margin: 0;
}

.div-block.live-schedule-list-page .live-schedule-search-btn {
    padding: 8px 14px;
    font-size: 0.8125rem;
}

.div-block.live-schedule-list-page .section-header-right .action-button {
    padding: 10px 18px;
}

.div-block.live-schedule-list-page .live-schedule-mobile-actions {
    flex-wrap: nowrap;
}

.div-block.live-schedule-list-page .live-schedule-mobile-actions .action-button {
    padding: 8px 12px;
    font-size: 0.8125rem;
    flex: 1;
    min-width: 0;
}

/* 라이브 일정 목록: PC 테이블 / 모바일 카드 전환 (모바일 스택은 table-responsive 밖) */
.div-block.live-schedule-list-page .container {
    max-width: 1200px;
}

.div-block.live-schedule-list-page .display-y {
    color: #198754;
}

.div-block.live-schedule-list-page .display-n {
    color: #6c757d;
}

.div-block.live-schedule-list-page .live-schedule-list-pc-view {
    display: block;
    width: 100%;
    margin: 0;
    -webkit-overflow-scrolling: touch;
}

.div-block.live-schedule-list-page .live-schedule-list-mobile-view {
    display: none;
}

.div-block.live-schedule-list-page .live-schedule-mobile-stack {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    min-width: 0;
}

.div-block.live-schedule-list-page .live-schedule-list-mobile-view .mobile-card {
    margin: 0;
    padding: 14px 16px;
    box-sizing: border-box;
}

.div-block.live-schedule-list-page .live-schedule-list-mobile-view .mobile-card .title {
    font-weight: 600;
    font-size: 1rem;
    margin-bottom: 10px;
    line-height: 1.35;
}

.div-block.live-schedule-list-page .live-schedule-list-mobile-view .mobile-card .info-row {
    font-size: 0.875rem;
    margin-bottom: 8px;
    line-height: 1.45;
}

.div-block.live-schedule-list-page .live-schedule-list-mobile-view .mobile-card .buttons {
    margin-top: 12px;
    display: flex;
    gap: 8px;
}

@media (max-width: 768px) {
    .div-block.live-schedule-list-page .live-schedule-list-pc-view {
        display: none !important;
    }

    .div-block.live-schedule-list-page .live-schedule-list-mobile-view {
        display: block;
        width: 100%;
    }

    .div-block.live-schedule-list-page .search-container {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
    }

    .div-block.live-schedule-list-page .search-container input[type="date"],
    .div-block.live-schedule-list-page .search-container select,
    .div-block.live-schedule-list-page .search-container input[type="text"] {
        max-width: 100%;
        flex: 1 1 auto;
        min-width: 0;
        margin-left: 0 !important;
    }
}

/* 라이브 일정 등록·수정 폼 */
.div-block.live-schedule-form-page {
    max-width: 100%;
    padding: 10px;
    box-sizing: border-box;
}

.div-block.live-schedule-form-page .section-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.div-block.live-schedule-form-page .container {
    max-width: 1200px;
}

.div-block.live-schedule-form-page .live-schedule-form-card {
    margin-bottom: 24px;
}

.div-block.live-schedule-form-page .live-schedule-form-card-body {
    padding: 1.25rem 1.5rem;
}

.div-block.live-schedule-form-page .live-schedule-form-card .card-header {
    padding: 14px 18px;
}

.div-block.live-schedule-form-page .form-label {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #49454f;
    margin-bottom: 6px;
}

.div-block.live-schedule-form-page .form-control,
.div-block.live-schedule-form-page .form-select {
    border-radius: 8px;
    border: 1px solid #cac4d0;
    font-size: 0.9375rem;
    color: var(--m3-on-surface);
    background-color: #ffffff;
}

.div-block.live-schedule-form-page .form-control:focus,
.div-block.live-schedule-form-page .form-select:focus {
    border-color: var(--m3-primary);
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.2);
    background-color: #ffffff;
}

.div-block.live-schedule-form-page textarea.live-schedule-caption {
    min-height: 140px;
    resize: vertical;
}

.div-block.live-schedule-form-page .live-schedule-form-hint {
    font-size: 0.75rem;
    color: #625b71;
    margin-top: 6px;
}

.div-block.live-schedule-form-page .live-schedule-image-preview-wrap {
    margin-top: 10px;
}

.div-block.live-schedule-form-page .live-schedule-image-preview {
    display: block;
    max-width: 100%;
    max-height: 220px;
    object-fit: contain;
    border-radius: 12px;
    border: 1px solid #dee2e6;
    background: var(--m3-surface-1);
}

.div-block.live-schedule-form-page .live-schedule-remove-img-btn {
    padding: 6px 12px;
    font-size: 0.8125rem;
}

.div-block.live-schedule-form-page .live-schedule-display-radios {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px 20px;
    padding: 10px 14px;
    background: var(--m3-surface-1);
    border: 1px solid #dee2e6;
    border-radius: 12px;
}

.div-block.live-schedule-form-page .live-schedule-form-check .form-check-label {
    font-size: 0.9375rem;
    color: var(--m3-on-surface);
    cursor: pointer;
}

.div-block.live-schedule-form-page .live-schedule-form-check .form-check-input {
    width: 1.1em;
    height: 1.1em;
    margin-top: 0.15em;
    border-color: #79747e;
    cursor: pointer;
}

.div-block.live-schedule-form-page .live-schedule-form-check .form-check-input:checked {
    background-color: var(--m3-primary);
    border-color: var(--m3-primary);
}

.div-block.live-schedule-form-page .live-schedule-form-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid #dee2e6;
}

.div-block.live-schedule-form-page .live-schedule-form-actions .action-button {
    padding: 10px 22px;
}

.div-block.live-schedule-form-page .section-header-right .action-button {
    padding: 10px 18px;
}

/* 라방 목록 헤더: 라방만들기 — btnUpload 제거로 primary 차콜(DS), 기존 업로드 버튼과 동일 크기 */
.div-block .labang-list-create-btn.btn.btn-primary {
    min-width: 108px;
    height: 40px;
}

/* 라방 목록: 목록 없음 — 중앙 안내 + 라방만들기 (list.ejs #labangListEmptyState) */
.div-block .labang-list-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 240px;
    padding: 40px 20px 44px;
    box-sizing: border-box;
    width: 100%;
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
    background: linear-gradient(180deg, var(--m3-surface-0) 0%, var(--m3-surface-1) 100%);
    border: 1px solid var(--m3-border);
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.08);
}

.div-block .labang-list-empty-title {
    margin: 0 0 16px;
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.45;
    letter-spacing: 0.01em;
    color: #1d1b20;
}

.div-block .labang-list-empty-hint {
    margin: 0 0 16px;
    font-size: 0.875rem;
    line-height: 1.5;
    color: #625b71;
}

.div-block .labang-list-empty-actions {
    margin-top: 4px;
}

.div-block .labang-list-empty-create-btn.action-button.primary {
    padding: 12px 24px;
    font-size: 0.9375rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 576px) {
    .div-block .labang-list-empty-state {
        min-height: 200px;
        padding: 28px 16px 36px;
    }

    .div-block .labang-list-empty-title {
        font-size: 1rem;
    }
}

/* 라방 등록·수정 폼 (views/seller/labang/create.ejs) */
.div-block.labang-create-page {
    max-width: 100%;
    box-sizing: border-box;
    text-align: left;
}

.div-block.labang-create-page .labang-create-form-card,
.div-block.labang-create-page .labang-create-form-card-body,
.div-block.labang-create-page .w-form {
    text-align: left;
}

.div-block.labang-create-page .section-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    text-align: left;
}

.div-block.labang-create-page .section-header-left {
    text-align: left;
}

.div-block.labang-create-page .labang-create-page__title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.3;
    font-weight: 600;
    color: var(--m3-on-surface);
}

.div-block.labang-create-page .labang-create-form-card {
    border: 1px solid var(--m3-border);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.12);
    overflow: hidden;
}

.div-block.labang-create-page .labang-create-form-card-body {
    padding: 1.25rem 1.5rem;
    box-sizing: border-box;
}

.div-block.labang-create-page .w-list-unstyled {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.div-block.labang-create-page .list-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    margin-bottom: 14px;
}

/* 라벨 좌측 · 체크박스 우측 한 줄 (모바일에서도 동일 — .text-block-2 width:100% 미디어쿼리 예외 필요) */
.div-block.labang-create-page .list-item.list-item--checkbox-row {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px 12px;
}

/* 라벨이 가로로 늘어나지 않게 — PC 넓은 화면에서 체크박스가 멀리 밀리지 않음 */
.div-block.labang-create-page .list-item.list-item--checkbox-row .text-block-2 {
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    max-width: none;
    margin-bottom: 0;
    align-self: center;
}

.div-block.labang-create-page .list-item.list-item--checkbox-row .labang-create-checkbox-field {
    flex: 0 0 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

/* 저요: 제목은 좌측, 체크박스·정보성 텍스트는 나란히(텍스트는 체크박스 바로 오른쪽) */
.div-block.labang-create-page .list-item#itsme_use_yn_row .labang-create-checkbox-field--itsme-hint,
.div-block.labang-create-page .list-item#itsme_pure_use_yn_row .labang-create-checkbox-field--itsme-hint {
    flex: 1 1 auto;
    min-width: 0;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    gap: 0 8px;
}

.div-block.labang-create-page .list-item#itsme_use_yn_row .labang-create-itsme-hint,
.div-block.labang-create-page .list-item#itsme_pure_use_yn_row .labang-create-itsme-hint {
    flex: 1 1 12rem;
    min-width: 0;
    line-height: 1.4;
    font-size: 0.8125rem;
}

.div-block.labang-create-page .list-item.list-item--checkbox-row .labang-create-check-label {
    margin-top: 0;
}

.div-block.labang-create-page .labang-create-field-row--checkbox-only {
    width: auto;
    align-self: flex-start;
}

/* jjsite `.text-field { margin: 10px }` — 라벨 텍스트 좌측과 input 테두리 좌측 정렬 */
.div-block.labang-create-page .text-field {
    margin: 0;
}

/* jjsite `.text-block-2 { margin-left: 20px; margin-top: 22px; width: 25% }` 덮어쓰기 — 라방제목·배송비 등 라벨 좌측 일치 */
.div-block.labang-create-page .list-item .text-block-2 {
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.01em;
    color: var(--m3-on-surface);
    margin: 0 0 8px;
    padding: 0;
    text-align: left;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    display: block;
}

.div-block.labang-create-page .list-item > .w-input:not(.labang-create-input--compact):not(.labang-create-input--amount),
.div-block.labang-create-page .list-item > .w-select:not(.labang-create-select--service-type):not(.labang-create-select--payment-type),
.div-block.labang-create-page .list-item > .form-control:not(.labang-create-date-input) {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    align-self: stretch;
}

/* 구매자 취소 가능 개수 등 짧은 숫자 입력 */
.div-block.labang-create-page .list-item > .labang-create-input--compact {
    width: auto;
    max-width: 7rem;
    min-width: 4.5rem;
    align-self: flex-start;
}

/* 무료배송 구매금액 등 금액(자릿수) 입력 — 콤팩트이나 한두 자리 더 넓게 */
.div-block.labang-create-page .list-item > .labang-create-input--amount {
    width: auto;
    max-width: 12rem;
    min-width: 8rem;
    align-self: flex-start;
}

/* 서비스 유형: 2옵션만 있어 가로 폭 제한 */
.div-block.labang-create-page .list-item > .labang-create-select--service-type {
    width: auto;
    max-width: 12rem;
    min-width: 10rem;
    align-self: flex-start;
}

/* 결제 방식: 옵션 문구 길이 고려해 서비스 유형보다 약간 넓게, 풀폭은 아님 */
.div-block.labang-create-page .list-item > .labang-create-select--payment-type {
    width: auto;
    max-width: 18rem;
    min-width: 12rem;
    align-self: flex-start;
}

.div-block.labang-create-page .labang-create-field-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 8px 12px;
    max-width: 100%;
    align-self: stretch;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 시작·종료일 행: 라방제목 등 풀폭 input과 왼쪽 끝(테두리) 정렬 */
.div-block.labang-create-page .labang-create-datetime-row {
    align-self: stretch;
    align-items: center;
}

.div-block.labang-create-page .labang-create-datetime-row .labang-create-date-input {
    margin: 0;
    flex: 0 0 auto;
    align-self: center;
}

/* 날짜 필드·시간 select·「시」 접미사 세로 가운데 정렬 (webflow .w-select margin-bottom 등 제거) */
.div-block.labang-create-page .labang-create-datetime-row .labang-create-date-input,
.div-block.labang-create-page .labang-create-datetime-row .labang-create-hour-select,
.div-block.labang-create-page .labang-create-datetime-row .labang-create-suffix {
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
}

.div-block.labang-create-page .labang-create-datetime-row .labang-create-hour-select {
    align-self: center;
    height: 44px;
    box-sizing: border-box;
    line-height: normal;
}

.div-block.labang-create-page input[type="date"].labang-create-date-input {
    min-height: 44px;
    height: 44px;
    box-sizing: border-box;
    line-height: normal;
}

/* WebKit: 날짜 필드 내부 여백으로 인한 시각적 들쭉날쭉 보정 */
.div-block.labang-create-page input[type="date"].labang-create-date-input::-webkit-datetime-edit,
.div-block.labang-create-page input[type="date"].labang-create-date-input::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
}

.div-block.labang-create-page input[type="date"].labang-create-date-input::-webkit-calendar-picker-indicator {
    margin-left: 4px;
    cursor: pointer;
}

.div-block.labang-create-page .labang-create-field-row--shipping {
    text-align: left;
    gap: 16px 24px;
}

.div-block.labang-create-page .labang-create-field-row--shipping > div {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.div-block.labang-create-page .labang-create-date-input {
    display: inline-block;
    width: auto;
    min-width: 10rem;
}

.div-block.labang-create-page .labang-create-hour-select {
    width: auto;
    min-width: 5.25rem;
}

.div-block.labang-create-page .labang-create-suffix {
    align-self: center;
    font-size: 0.875rem;
    color: var(--m3-on-surface);
}

/* jjsite-8a9369.webflow.css `.select-field { margin-left: 24px; margin-top: 12px }` 보정 — text/date input과 좌측 정렬 */
.div-block.labang-create-page .select-field {
    margin: 0;
}

.div-block.labang-create-page .w-input,
.div-block.labang-create-page .w-select,
.div-block.labang-create-page .form-control {
    min-height: 44px;
    border: 1px solid #cac4d0;
    border-radius: 5px;
    background: #ffffff;
    color: var(--m3-on-surface);
    padding: 0 12px;
    font-size: 0.9375rem;
    text-align: left;
    /* webflow `.w-input, .w-select { margin-bottom: 10px }` — list-item 간격으로 대체 */
    margin: 0;
}

.div-block.labang-create-page .w-input:focus,
.div-block.labang-create-page .w-select:focus,
.div-block.labang-create-page .form-control:focus {
    border-color: var(--m3-primary);
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.2);
    outline: none;
}

.div-block.labang-create-page .labang-create-check-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    margin-top: 4px;
    font-size: 0.9375rem;
    color: var(--m3-on-surface);
    cursor: pointer;
}

.div-block.labang-create-page .labang-create-check-label input[type="checkbox"] {
    margin: 0;
}

.div-block.labang-create-page .labang-create-form-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--m3-border);
}

.div-block.labang-create-page .labang-create-form-actions .btn {
    min-width: 108px;
    min-height: 40px;
}

@media (max-width: 768px) {
    .div-block.labang-create-page .list-item:not(.list-item--checkbox-row) .text-block-2 {
        width: 100%;
    }

    /* 체크박스 행: 라벨 full-width 금지 → 라벨 옆에 체크박스 유지 */
    .div-block.labang-create-page .list-item.list-item--checkbox-row .text-block-2 {
        width: auto;
        max-width: calc(100% - 3rem);
    }

    .div-block.labang-create-page .labang-create-field-row--shipping {
        flex-direction: column;
        align-items: stretch;
    }
}

/* 구매후기 관리 목록 */
.div-block.seller-review-list-page {
    height: auto;
    min-height: 0;
    box-sizing: border-box;
    text-align: start;
}

.div-block.seller-review-list-page .seller-review-list-container {
    max-width: 1200px;
}

.div-block.seller-review-list-page .seller-review-search-section {
    text-align: left;
}

.div-block.seller-review-list-page .seller-review-search-heading {
    margin-top: 0;
}

.div-block.seller-review-list-page .seller-review-search-section .form-label {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #49454f;
}

.div-block.seller-review-list-page .seller-review-search-section .form-control,
.div-block.seller-review-list-page .seller-review-search-section .form-select {
    border-radius: 8px;
    border: 1px solid var(--m3-border);
    font-size: 0.9375rem;
    min-height: 38px;
    box-sizing: border-box;
}

.div-block.seller-review-list-page .seller-review-search-section .form-control:focus,
.div-block.seller-review-list-page .seller-review-search-section .form-select:focus {
    border-color: var(--m3-primary);
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.2);
    outline: none;
}

/* PC 테이블만 가로 스크롤 — 모바일 카드는 table-responsive 밖 */
.div-block.seller-review-list-page .seller-review-list-pc-view {
    display: block;
    width: 100%;
    margin: 0;
    -webkit-overflow-scrolling: touch;
}

/* 기본: PC 표 표시, 모바일 스택 숨김 (순서 중요: 미디어쿼리가 덮어쓰도록) */
.div-block.seller-review-list-page .seller-review-list-mobile-view {
    display: none;
}

@media (max-width: 768px) {
    .div-block.seller-review-list-page .seller-review-list-pc-view {
        display: none !important;
    }

    .div-block.seller-review-list-page .seller-review-list-mobile-view {
        display: block;
        width: 100%;
    }

    .div-block.seller-review-list-page .seller-review-search-grid .seller-review-search-btn {
        margin-top: 4px;
    }
}

.div-block.seller-review-list-page .seller-review-mobile-stack {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    min-width: 0;
}

.div-block.seller-review-list-page .seller-review-mobile-card {
    margin: 0;
    padding: 14px 16px;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    background: var(--m3-surface-0);
    border: 1px solid var(--m3-border);
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.08);
}

.div-block.seller-review-list-page .seller-review-mobile-card--empty {
    text-align: center;
    padding: 28px 16px;
}

.div-block.seller-review-list-page .seller-review-mobile-empty {
    font-size: 0.9375rem;
    color: #625b71;
}

.div-block.seller-review-list-page .seller-review-mobile-card__head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 12px;
    min-width: 0;
}

.div-block.seller-review-list-page .seller-review-mobile-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.02em;
    border-radius: 9999px;
    flex-shrink: 0;
}

.div-block.seller-review-list-page .seller-review-mobile-badge.seller-review-approval--y {
    color: var(--m3-success);
    background: var(--m3-success-container);
    border: 1px solid rgba(29, 110, 42, 0.25);
}

.div-block.seller-review-list-page .seller-review-mobile-badge.seller-review-approval--n {
    color: var(--m3-error);
    background: var(--m3-error-container);
    border: 1px solid rgba(179, 38, 30, 0.22);
}

.div-block.seller-review-list-page .seller-review-mobile-card__title {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.4;
    color: var(--m3-on-surface);
    word-break: break-word;
}

.div-block.seller-review-list-page .seller-review-mobile-dl {
    margin: 0 0 14px;
    padding: 0;
}

.div-block.seller-review-list-page .seller-review-mobile-dl__row {
    display: grid;
    grid-template-columns: 4.5rem 1fr;
    gap: 8px 12px;
    margin: 0 0 8px;
    font-size: 0.8125rem;
    line-height: 1.45;
    align-items: start;
}

.div-block.seller-review-list-page .seller-review-mobile-dl__row:last-child {
    margin-bottom: 0;
}

.div-block.seller-review-list-page .seller-review-mobile-dl dt {
    margin: 0;
    font-weight: 600;
    color: #49454f;
}

.div-block.seller-review-list-page .seller-review-mobile-dl dd {
    margin: 0;
    color: var(--m3-on-surface);
    word-break: break-word;
}

.div-block.seller-review-list-page .seller-review-mobile-actions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.div-block.seller-review-list-page .seller-review-mobile-actions .action-button {
    flex: 1 1 calc(50% - 4px);
    min-width: 0;
    justify-content: center;
}

@media (max-width: 380px) {
    .div-block.seller-review-list-page .seller-review-mobile-actions {
        flex-direction: column;
    }

    .div-block.seller-review-list-page .seller-review-mobile-actions .action-button {
        flex: 1 1 auto;
        width: 100%;
    }
}

.div-block.seller-review-list-page .seller-review-approval--y {
    color: var(--m3-success);
    font-weight: 600;
}

.div-block.seller-review-list-page .seller-review-approval--n {
    color: var(--m3-error);
    font-weight: 600;
}

.div-block.seller-review-list-page .seller-review-search-btn {
    padding: 8px 14px;
    font-size: 0.8125rem;
    min-height: 38px;
    box-sizing: border-box;
}

.div-block.seller-review-list-page .seller-review-table {
    table-layout: fixed;
    width: 100%;
}

.div-block.seller-review-list-page .seller-review-table thead th {
    vertical-align: middle;
    font-weight: 600;
    font-size: 0.6875rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #49454f;
    background: linear-gradient(180deg, var(--m3-surface-1) 0%, #e8eaed 100%);
    border-bottom: 2px solid #dee2e6;
    white-space: nowrap;
}

.div-block.seller-review-list-page .seller-review-table tbody tr:hover {
    background: rgba(139, 58, 66, 0.04);
}

.div-block.seller-review-list-page .seller-review-search-submit {
    width: 100%;
}

@media (min-width: 576px) {
    .div-block.seller-review-list-page .seller-review-search-submit {
        width: auto;
        min-width: 120px;
    }
}

.div-block.seller-review-list-page .seller-review-col-no {
    width: 5.5%;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.div-block.seller-review-list-page .seller-review-col-approval {
    width: 6.5%;
    white-space: nowrap;
}

.div-block.seller-review-list-page .seller-review-col-author {
    width: 12%;
    min-width: 0;
}

.div-block.seller-review-list-page .seller-review-author {
    display: flex;
    flex-direction: column;
    gap: 2px;
    line-height: 1.35;
}

.div-block.seller-review-list-page .seller-review-author__name {
    font-weight: 600;
    color: var(--ds-text-primary, #212529);
    word-break: break-all;
}

.div-block.seller-review-list-page .seller-review-author__phone {
    font-size: 0.8125rem;
    color: var(--ds-text-muted, #6c757d);
    font-variant-numeric: tabular-nums;
    word-break: break-all;
}

.div-block.seller-review-list-page .seller-review-col-product {
    width: 14%;
    min-width: 0;
}

.div-block.seller-review-list-page .seller-review-product-text {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.div-block.seller-review-list-page .seller-review-col-content {
    width: 36%;
    min-width: 0;
    word-break: break-word;
}

.div-block.seller-review-list-page .seller-review-col-reg {
    width: 11%;
    white-space: nowrap;
    font-size: 0.8125rem;
    font-variant-numeric: tabular-nums;
}

.div-block.seller-review-list-page .seller-review-table tbody .seller-review-col-reg {
    font-size: 0.8125rem;
}

.div-block.seller-review-list-page .seller-review-actions-col,
.div-block.seller-review-list-page .seller-review-actions-cell {
    width: 17%;
    white-space: nowrap;
    vertical-align: middle;
}

.div-block.seller-review-list-page .seller-review-actions {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
}

.div-block.seller-review-list-page .seller-review-actions .action-button {
    padding: 5px 8px;
    font-size: 0.75rem;
    line-height: 1.25;
    flex-shrink: 0;
    margin: 0;
}

.div-block.seller-review-list-page .seller-review-list-mobile-view .seller-review-mobile-actions .action-button {
    padding: 8px 10px;
    font-size: 0.8125rem;
}

/* 우측 컬럼(실시간 현황): 가로 공간이 남을 때 오른쪽 끝 정렬 */
.div-block .section-header > .section-header-right--collapsible,
.div-block .section-header--labang-tool-nav .section-header-tool-row__trail .section-header-right--collapsible {
    margin-left: auto;
}

/* 상품목록 헤더 우측: 결제표·실시간 사용자 (localStorage: sellerProductList.sectionHeaderRightOpen) */
.div-block .section-header-right-head {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    width: 100%;
}

.div-block .section-header-right-head .ds-title {
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--m3-on-surface);
}

.div-block .section-header-right--collapsible.is-open .section-header-right-head {
    margin-bottom: 4px;
}

.div-block .section-header-right--collapsible:not(.is-open) #sectionHeaderRightPanel {
    display: none !important;
}

/* 상단 기능: 검색 카드와 동일 — .table-card + .card-header (마크업은 list.ejs #topMenuContainer) */
.div-block .top-menu-container.card {
    padding: 0;
    margin-bottom: 0;
}

.div-block #topMenuContainer .card-header .ds-title {
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--m3-on-surface);
}

.div-block .top-menu-container:not(.is-open) #topMenuPanel {
    display: none !important;
}

/* 주문목록: 상단 검색·요약 카드 접기 (localStorage: sellerOrderList.orderSearchSummaryOpen) */
.div-block.order-list-page .order-list-top-card.card {
    padding: 0;
    margin-bottom: 0;
}

.div-block.order-list-page .order-list-top-card .card-header .ds-title {
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--m3-on-surface);
}

.div-block.order-list-page .order-list-top-card:not(.is-open) #orderListTopPanel {
    display: none !important;
}

.div-block .product-list-page-sections {
    margin-top: 16px;
}

.div-block .product-list-page-sections .container {
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
}

/* 상단 툴바: 기능별 그룹 — 전체 한 줄(가로 스크롤로 유지) */
.div-block .button-group {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 10px;
    justify-content: flex-start;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
    scrollbar-width: thin;
}

.div-block .toolbar-group {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px 10px;
    flex: 0 0 auto;
    padding: 8px 12px;
    background: var(--m3-surface-1);
    border: 1px solid #dee2e6;
    border-radius: 12px;
}

/* 툴바 구역 제목: label-small + overline */
.div-block .toolbar-group-title {
    margin: 0;
    padding: 0;
    flex-shrink: 0;
    line-height: 1.2;
    white-space: nowrap;
}

.div-block .toolbar-group-title.ds-label {
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #49454f;
}

.div-block .toolbar-group-buttons {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 8px;
    align-items: center;
    min-width: 0;
}

.div-block .toolbar-group-buttons .comment-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.div-block .toolbar-group-buttons > .action-button,
.div-block .toolbar-group-buttons > span {
    flex-shrink: 0;
}

.div-block .toolbar-group-buttons > span .action-button {
    white-space: nowrap;
}

/* 댓글·AI: 제목 행(모바일에서만 토글 버튼 표시) */
.div-block .toolbar-group--comment .toolbar-group-comment-head {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    flex-shrink: 0;
}

/* 상품 등록·가져오기: 제목 행 + 접기(상태는 localStorage 유지) */
.div-block .toolbar-group--product {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
}

.div-block .toolbar-group--product .toolbar-group-product-head {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    flex-shrink: 0;
    width: 100%;
}

.div-block .toolbar-group--product .toolbar-group-title {
    margin-bottom: 0;
}

.div-block .toolbar-group--product:not(.is-open) .toolbar-group-buttons {
    display: none !important;
}

.div-block .toolbar-group--product.is-open .toolbar-group-buttons {
    display: flex !important;
    margin-top: 10px;
}

/* 댓글·AI 토글: 데스크톱에서는 숨김, 모바일만 표시 (스타일은 .ds-section-collapse-toggle) */
.div-block .toolbar-group--comment .toolbar-group-comment-head .ds-section-collapse-toggle {
    display: none;
}

/* 모바일·패드: 그룹별 세로 스택 — 라벨 위 · 버튼 아래(가독성) */
@media (max-width: 1024px) {
    .div-block #toolbarGroupVideo {
        display: none !important;
    }

    .div-block .toolbar-group--comment .toolbar-group-comment-head .ds-section-collapse-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    /* 댓글·AI: 기본 접힘, 토글로 펼침 */
    .div-block #toolbarGroupComment:not(.is-open) .toolbar-group-buttons {
        display: none !important;
    }

    .div-block #toolbarGroupComment.is-open .toolbar-group-buttons {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        margin-top: 10px;
    }

    .div-block .button-group {
        flex-direction: column;
        align-items: stretch;
        overflow-x: visible;
        overflow-y: visible;
        padding-bottom: 0;
        gap: 12px;
    }

    .div-block .toolbar-group {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        flex: 1 1 auto;
        padding: 12px 14px;
    }

    .div-block .toolbar-group-title {
        margin-bottom: 8px;
        white-space: normal;
    }

    .div-block .toolbar-group--comment .toolbar-group-comment-head .toolbar-group-title {
        margin-bottom: 0;
    }

    .div-block .toolbar-group-buttons {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    .div-block .toolbar-group-buttons .comment-status {
        flex-wrap: wrap;
        margin-bottom: 4px;
    }

    .div-block .toolbar-group-buttons > .action-button,
    .div-block .toolbar-group-buttons > span > .action-button {
        width: 100%;
        box-sizing: border-box;
    }

    .div-block .toolbar-group-buttons > span {
        display: block;
        width: 100%;
    }
}

.div-block .truncate-title {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--m3-on-surface);
    margin: 0;
}

/* 액션 버튼: M3 filled / tonal / outlined 느낌 */
.div-block .action-button {
    border: none;
    /* border-radius: 999px; */
    border-radius: 5px;
    font-size: 0.875rem;
    line-height: 1.25;
    font-weight: 500;
    letter-spacing: 0.01em;
    transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

.div-block .action-button:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(52, 58, 64, 0.4);
}

.div-block .action-button.primary {
    background: var(--btn-solid-bg);
    color: #ffffff;
}

.div-block .action-button.primary:hover {
    background: var(--btn-solid-hover-bg);
}

.div-block .action-button.secondary {
    background: var(--btn-muted-bg);
    color: var(--btn-muted-text);
    box-shadow: none;
    border: 1px solid #ced4da;
}

.div-block .action-button.secondary:hover {
    background: var(--btn-muted-hover-bg);
    color: #212529;
    border-color: #adb5bd;
}

.div-block .action-button.info {
    background: var(--btn-muted-bg);
    color: var(--btn-muted-text);
    border: 1px solid #ced4da;
    box-shadow: none;
}

.div-block .action-button.info:hover {
    background: var(--btn-muted-hover-bg);
    color: #212529;
}

.div-block .action-button.ivs-path-selected {
    background: var(--btn-muted-hover-bg);
    color: var(--btn-muted-text);
    border: 1px solid #adb5bd;
}

.div-block .action-button--warning {
    background: var(--btn-muted-bg);
    color: var(--btn-muted-text);
    border: 1px solid #ced4da;
    box-shadow: none;
}

.div-block .action-button--warning:hover {
    background: var(--btn-muted-hover-bg);
}

.div-block .action-button--success {
    background: var(--btn-muted-bg);
    color: var(--btn-muted-text);
    border: 1px solid #ced4da;
    box-shadow: none;
}

.div-block .action-button--success:hover {
    background: var(--btn-muted-hover-bg);
}

.div-block .action-button--success-strong {
    background: var(--btn-solid-bg);
    color: #fff;
}

.div-block .action-button--success-strong:hover {
    background: var(--btn-solid-hover-bg);
}

.div-block .action-button--danger {
    background: var(--btn-danger-bg);
    color: #ffffff;
    border: 1px solid var(--btn-danger-bg);
    box-shadow: none;
}

.div-block .action-button--danger:hover {
    background: var(--btn-danger-hover-bg);
    border-color: var(--btn-danger-hover-bg);
}

@media (hover: hover) {
    .div-block .action-button:hover {
        transform: none;
        box-shadow: 0 2px 6px rgba(29, 27, 32, 0.18);
    }
}

.div-block .mobile-card {
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.1);
}

.div-block .mobile-card .options {
    background: var(--m3-surface-1);
    border-radius: 12px;
}

.div-block .mobile-card .label {
    color: #49454f;
}

/* 라방 목록 — 모바일 카드(정보 스택 + 액션 2열 그리드) */
.div-block .labang-mobile-card .info-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    margin-bottom: 10px;
    font-size: 0.875rem;
}

.div-block .labang-mobile-card .info-row .label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #49454f;
    line-height: 1.2;
}

.div-block .labang-mobile-card .info-row .value {
    width: 100%;
    text-align: left;
    font-weight: 500;
    color: #1d1b20;
    line-height: 1.45;
    word-break: keep-all;
    overflow-wrap: break-word;
}

.div-block .labang-mobile-card .buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
}

.div-block .labang-mobile-card .labang-mobile-card__action-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

/* 상품·주문 2열, 라방통계는 한 줄 전체 */
.div-block .labang-mobile-card .labang-mobile-card__action-grid > .btn:nth-child(3) {
    grid-column: 1 / -1;
}

.div-block .labang-mobile-card .labang-mobile-card__action-grid > .btn {
    flex: none;
    min-width: 0;
    min-height: 40px;
    padding: 8px 10px;
    font-size: 0.8125rem;
    font-weight: 500;
    justify-content: center;
    white-space: nowrap;
}

.div-block .labang-mobile-card .buttons .labang-list-action-btn .material-symbols-outlined {
    flex-shrink: 0;
    font-size: 1.125rem;
}

.div-block .labang-mobile-card .buttons > .d-flex {
    width: 100%;
    flex-wrap: wrap;
    gap: 8px;
}

.div-block .search-section {
    margin: 10px;
    background: var(--m3-surface-1);
    border: 1px solid #dee2e6;
    border-radius: 12px;
}

.div-block .search-action-groups {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 10px;
}

.div-block .search-action-group {
    margin: 10px;
    background: var(--m3-surface-1);
    border: 1px solid #dee2e6;
    border-radius: 10px;
    padding: 10px;
    box-sizing: border-box;
}

.div-block .search-action-group-title {
    margin: 0 0 8px;
    color: #49454f;
}

.div-block .search-action-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.div-block .search-action-buttons .btn {
    margin: 0;
}

.div-block .search-action-buttons--stacked {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
}

.div-block .search-action-button-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.div-block .search-action-buttons--excel {
    gap: 12px;
}

.div-block .excel-group-label {
    min-width: 86px;
    display: inline-flex;
    align-items: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: #625b71;
}

.div-block .search-action-button-row--excel-download,
.div-block .search-action-button-row--excel-upload {
    align-items: center;
}

.div-block .excel-download-icon-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0.34rem 0.72rem;
}

/* 양식 다운로드(개별·콤마) — 상품목록 엑셀 다운로드와 동일 톤 */
.div-block .excel-download-icon-btn--excel {
    background-color: #217346;
    border: 1px solid #1a5c38;
    color: #ffffff;
    font-weight: 500;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

.div-block .excel-download-icon-btn--excel:hover {
    background-color: #1a5c38;
    border-color: #154a2d;
    color: #ffffff;
}

.div-block .excel-download-icon-btn--excel:focus-visible {
    box-shadow: 0 0 0 0.2rem rgba(33, 115, 70, 0.35);
}

.div-block .excel-download-icon-btn--excel .fa-file-excel {
    font-size: 1rem;
    line-height: 1;
    color: inherit;
}

@media (max-width: 1024px) {
    .div-block .search-action-groups {
        grid-template-columns: 1fr;
    }

    .div-block .excel-group-label {
        min-width: 100%;
    }
}

.div-block .search-section .form-control:focus,
.div-block .search-section .form-select:focus {
    border-color: var(--m3-primary);
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.2);
}

.div-block .card-header {
    background: var(--m3-surface-1);
    border-bottom: 1px solid #dee2e6;
    color: var(--m3-on-surface);
}

.div-block .card-header h5.ds-title {
    margin-bottom: 0;
}

/*
 * 공통: 섹션 접기·펼치기 토글 (검색 및 관리 / 상품등록·가져오기 / 댓글·AI 제목행)
 * 테두리 없는 아이콘형 — 동일 클래스로만 스타일 유지
 */
.div-block .btn.ds-section-collapse-toggle {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #6c757d;
    padding: 0.25rem 0.5rem;
    line-height: 1;
    transition: color 0.2s ease, background-color 0.2s ease;
}

.div-block .btn.ds-section-collapse-toggle:hover {
    color: var(--m3-primary);
    background: rgba(139, 58, 66, 0.08) !important;
}

.div-block .btn.ds-section-collapse-toggle:focus-visible {
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.25);
}

.div-block .table-card,
.div-block #search-header.table-card,
.div-block #topMenuContainer.table-card,
.div-block #product-list-card.product-list-table-card {
    border: 1px solid #dee2e6;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.12);
    background: #ffffff;
}

/*
 * 레이아웃(header.ejs) 전역 .card-body { padding: 0 !important; } 때문에
 * table-card 본문(검색 폼·테이블·row)이 카드 가장자리에 붙는 문제 보정.
 * 본문을 벽에서 띄우는 공통 여백 — 플러시가 필요하면 .p-0 또는 .card-body--flush
 */
.div-block .table-card > .card-body {
    padding: 1rem 1.25rem !important;
    box-sizing: border-box;
}

.div-block .table-card > .card-body.p-0,
.div-block .table-card > .card-body.card-body--flush {
    padding: 0 !important;
}

/* 회원 목록: 검색 영역 — 카드 없음, 소제목 + 폼 행 */
.div-block .seller-member-search-section {
    text-align: left;
}

.div-block .seller-member-search-heading {
    margin-top: 0;
    text-align: left;
    width: 100%;
}

.div-block .seller-member-search-section .form-label {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #49454f;
}

/* 회원 목록: 테이블 영역(제목은 페이지 상단 section-header h2와 중복 방지로 별도 카드 없음) */
.div-block .seller-member-table-responsive {
    border: 1px solid #dee2e6;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.08);
}

.div-block .seller-member-list-table-section .pagination {
    margin-top: 1.25rem;
}

/* 상품목록: 제목·엑셀 행 — 배경 없음, 아래 테이블 박스와 간격 */
.div-block .product-list-table-heading {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    text-align: left;
    margin: 0 0 14px 0;
    padding: 0;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.div-block .product-list-table-heading .product-list-header-actions {
    flex-shrink: 0;
}

/* 상품목록 엑셀 다운로드 — MS Excel 톤 녹색 + 파일 아이콘 */
.div-block .product-list-table-heading .btn-product-list-excel-download {
    background-color: #217346;
    border: 1px solid #1a5c38;
    color: #ffffff;
    font-weight: 500;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

.div-block .product-list-table-heading .btn-product-list-excel-download:hover {
    background-color: #1a5c38;
    border-color: #154a2d;
    color: #ffffff;
}

.div-block .product-list-table-heading .btn-product-list-excel-download:focus-visible {
    box-shadow: 0 0 0 0.2rem rgba(33, 115, 70, 0.35);
}

/* 주문목록 툴바·상품별 판매현황 모달 등 — 엑셀다운로드 (상품목록 .btn-product-list-excel-download 와 동일 MS Excel 녹색) */
.div-block .action-button.action-button--excel {
    background-color: #217346;
    border: 1px solid #1a5c38;
    color: #ffffff;
    font-weight: 500;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

.div-block .action-button.action-button--excel:hover {
    background-color: #1a5c38;
    border-color: #154a2d;
    color: #ffffff;
}

.div-block .action-button.action-button--excel:focus-visible {
    box-shadow: 0 0 0 0.2rem rgba(33, 115, 70, 0.35);
}

.div-block #product-list-card .pc-view,
.div-block #product-list-card .mobile-view {
    padding: 0;
    box-sizing: border-box;
}

/* 상품목록: 카드 외곽만 라운드 — thead에 별도 라운드를 주면 안쪽에 테이블이 또 박스로 들어간 것처럼 보임 */
.div-block #product-list-card .pc-view .table > thead > tr > th:first-child,
.div-block #product-list-card .pc-view .table > thead > tr > th:last-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

/* 상품명 셀 내 UP/DOWN 액션 버튼 정렬 보정 (PC 깨짐 방지) */
.div-block .up-action-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-start;
}

.div-block .up-action-row .up-action-btn {
    margin-left: 0 !important;
    white-space: nowrap;
    padding: 0.35rem 0.72rem;
    font-size: 0.82rem;
    line-height: 1.2;
}

@media (min-width: 1025px) {
    .div-block .pc-view .up-action-row {
        flex-wrap: nowrap;
    }

    .div-block .pc-view .up-action-row .up-action-btn {
        flex: 1 1 auto;
        min-width: 84px;
        text-align: center;
        padding: 0.34rem 0.42rem;
        font-size: 0.78rem;
    }
}

.div-block .btn:not(.btn-close) {
    /* border-radius: 999px; */
    border-radius: 5px;
    font-weight: 500;
    letter-spacing: 0.01em;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.div-block .btn:focus-visible {
    box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.28);
}

.div-block .btn.btn-primary {
    background-color: var(--btn-solid-bg);
    border-color: var(--btn-solid-bg);
    color: #ffffff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.div-block .btn.btn-primary:hover,
.div-block .btn.btn-primary:active {
    background-color: var(--btn-solid-hover-bg);
    border-color: var(--btn-solid-hover-bg);
}

.div-block .btn.btn-outline-primary,
.div-block .btn.btn-outline-secondary,
.div-block .btn.btn-outline-info {
    background-color: #fff;
    border-color: #adb5bd;
    color: var(--btn-muted-text);
}

.div-block .btn.btn-outline-primary:hover,
.div-block .btn.btn-outline-secondary:hover,
.div-block .btn.btn-outline-info:hover,
.div-block .btn-group .btn.active {
    background-color: var(--btn-muted-bg);
    border-color: #6c757d;
    color: #212529;
}

.div-block .btn.btn-outline-success {
    background-color: #fff;
    border-color: #adb5bd;
    color: var(--btn-muted-text);
}

.div-block .btn.btn-outline-success:hover {
    background-color: var(--btn-muted-bg);
    border-color: #6c757d;
    color: #212529;
}

.div-block .btn.btn-secondary {
    background-color: var(--btn-muted-bg);
    border-color: #ced4da;
    color: var(--btn-muted-text);
}

.div-block .btn.btn-secondary:hover {
    background-color: var(--btn-muted-hover-bg);
    border-color: #adb5bd;
    color: #212529;
}

.div-block .btn.btn-danger {
    background-color: var(--btn-danger-bg);
    border-color: var(--btn-danger-bg);
    color: #ffffff;
}

.div-block .btn.btn-danger:hover {
    background-color: var(--btn-danger-hover-bg);
    border-color: var(--btn-danger-hover-bg);
    color: #ffffff;
}

.div-block .btn.btn-success {
    background-color: var(--btn-muted-bg);
    border-color: #ced4da;
    color: var(--btn-muted-text);
}

.div-block .btn.btn-success:hover {
    background-color: var(--btn-muted-hover-bg);
    border-color: #adb5bd;
    color: #212529;
}

.div-block .btn.btn-info {
    background-color: var(--btn-muted-bg);
    border-color: #ced4da;
    color: var(--btn-muted-text);
}

.div-block .btn.btn-info:hover {
    background-color: var(--btn-muted-hover-bg);
    border-color: #adb5bd;
    color: #212529;
}

/* 상품 행 UP 판매·UP 품절: 기본 green/yellow 대신 차콜 / 그레이 */
.div-block .up-action-btn.btn-success {
    background-color: var(--btn-solid-bg);
    border-color: var(--btn-solid-bg);
    color: #ffffff;
}

.div-block .up-action-btn.btn-success:hover {
    background-color: var(--btn-solid-hover-bg);
    border-color: var(--btn-solid-hover-bg);
    color: #ffffff;
}

.div-block .up-action-btn.btn-warning {
    background-color: var(--btn-muted-bg);
    border-color: #ced4da;
    color: var(--btn-muted-text);
}

.div-block .up-action-btn.btn-warning:hover {
    background-color: var(--btn-muted-hover-bg);
    border-color: #adb5bd;
    color: #212529;
}

.div-block .btn.btn-sm {
    padding: 0.28rem 0.72rem;
    font-size: 0.78rem;
}

/* 필터 토글형 btn-group-sm: 세그먼트가 아닌 개별 5px 라운드 + 간격 */
.div-block .btn-group.btn-group-sm,
.option-help-panel__filter-tabs.btn-group.btn-group-sm {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    vertical-align: middle;
}

.div-block .btn-group.btn-group-sm > .btn,
.option-help-panel__filter-tabs.btn-group.btn-group-sm > .btn {
    border-radius: 5px;
    margin-left: 0 !important;
    padding: 0.28rem 0.82rem;
}

.div-block .btn.btnUpload {
    width: auto;
    min-width: 108px;
    height: 40px;
    background-color: var(--m3-primary);
    border-color: var(--m3-primary);
}

.div-block .btn.btnUpload:hover {
    background-color: var(--m3-primary-hover);
    border-color: var(--m3-primary-hover);
}

.div-block .pc-view .table {
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
}

.div-block .pc-view .table > thead > tr > th {
    background: #f4f6f8;
    color: #1d1b20 !important;
    font-weight: 600;
    font-size: 0.75rem;
    letter-spacing: 0.02em;
    text-transform: none;
    padding: 13px 10px;
    border: none;
    border-bottom: 1px solid #d0cddd;
    text-align: center;
    vertical-align: middle;
}

.div-block .pc-view .table > thead > tr > th:first-child {
    border-top-left-radius: 5px;
}

.div-block .pc-view .table > thead > tr > th:last-child {
    border-top-right-radius: 5px;
}

/* 클래스로 헤더 셀 지정 시(라방 목록 등) */
.div-block .table-th {
    background: #f4f6f8;
    color: #1d1b20 !important;
    font-weight: 600;
    padding: 13px 10px;
    border: none;
    text-align: center;
    height: 48px;
    border-bottom: 1px solid #d0cddd;
}

.div-block .pc-view .table > :not(caption) > * > * {
    border-bottom: 1px solid var(--m3-border);
    vertical-align: middle;
    font-size: 0.9rem;
    color: #1d1b20;
    background-clip: padding-box;
}

.div-block .pc-view .table > tbody > tr:nth-child(even) > td {
    background-color: #f8f9fa;
}

.div-block .pc-view .table > tbody > tr:hover > td {
    background-color: #eef1f3;
    transition: background-color 0.18s ease;
}

.div-block .pc-view .table > tbody > tr > td {
    padding: 12px 10px;
}

.div-block .pc-view .table a {
    color: rgb(69, 69, 69);
    font-weight: 500;
    text-decoration: none;
}

.div-block .pc-view .table a:hover {
    color: rgb(52, 52, 52);
    text-decoration: underline;
}

.div-block .pc-view .col_labang_time {
    line-height: 1.35;
    color: #49454f;
}

.div-block .popup-counter {
    font-size: 0.875rem;
    color: #625b71;
    font-weight: 400;
}

.div-block .preview-target {
    font-size: 1rem;
    color: #6f5800;
}

.div-block .preview-target-count {
    font-size: 1.125rem;
    color: #b3261e;
}

.div-block .preview-warning-text,
.div-block .link-check-text {
    font-size: 0.75rem;
}

.div-block .ai-insight-title {
    font-size: 1rem;
    line-height: 1.35;
    font-weight: 600;
    color: #1d1b20;
}

.div-block .stats-summary-value {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.2;
}

.div-block .stats-summary-label {
    font-size: 0.85rem;
    line-height: 1.35;
    font-weight: 500;
    opacity: 0.9;
}

/* 상단 결제/채팅 요약 카드 */
.div-block .ds-summary-table-wrap {
    margin: 0 auto;
    border-collapse: collapse;
    background: #ffffff;
    border-radius: 5px;
    border: 1px solid #dee2e6;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.1);
    overflow: hidden;
}

.div-block .ds-summary-table-wrap thead th {
    background: #f4f6f8 !important;
    color: #1d1b20 !important;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 12px 16px;
    border: none;
}

.div-block .ds-summary-chip {
    display: inline-block;
    background: #ffffff;
    border-radius: 5px;
    border: 1px solid #dee2e6;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.1);
    padding: 12px 20px;
}

.div-block .ds-summary-chip .ds-summary-icon {
    color: #8b3a42;
    margin-right: 10px;
    font-size: 1.125rem;
}

.div-block .ds-summary-chip .ds-summary-label {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1d1b20;
}

.div-block .ds-summary-chip .ds-summary-value {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1d1b20;
    margin-left: 10px;
}

.div-block .ds-summary-chip .ds-summary-unit {
    font-size: 0.9375rem;
    color: #49454f;
    margin-left: 5px;
}

/* -------------------------------------------------------------------------
 * 상품별 판매현황 모달 (orderListNew #productSalesSummaryModal)
 * 본문 .div-block 밖에 있어 토큰·쉘 스타일을 이 블록에 둠 (M3 / 주문목록 톤)
 * ------------------------------------------------------------------------- */
#productSalesSummaryModal.product-sales-summary-modal {
    --pssm-primary: #8b3a42;
    --pssm-on-surface: #1d1b20;
    --pssm-surface-1: #f4f6f8;
    --pssm-surface-2: #e8eaed;
    --pssm-border: #dee2e6;
    --pssm-muted: #625b71;
}

#productSalesSummaryModal .product-sales-summary-modal-dialog {
    max-width: min(1140px, calc(100vw - 1.5rem));
}

/* scrollable 다이얼로그: 본문이 길어져도 푸터가 모달 안에 남도록 (입금매칭·창고와 동일) */
#productSalesSummaryModal .product-sales-summary-modal-dialog.modal-dialog-scrollable {
    max-height: calc(100vh - 2rem);
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
}

#productSalesSummaryModal .product-sales-summary-modal-dialog.modal-dialog-scrollable .product-sales-summary-modal-content {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    max-height: 100%;
    height: auto;
}

#productSalesSummaryModal .product-sales-summary-modal-content {
    border: 1px solid var(--pssm-border);
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(29, 27, 32, 0.16);
    background: #ffffff;
}

/* webflow `.div-block { height: 100vh }` 등이 모달에 걸릴 때 본문이 뷰포트만큼만 잡히고 푸터가 밀리는 문제 방지 */
#productSalesSummaryModal .product-sales-summary-modal-block {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
    height: auto;
    max-height: 100%;
    box-sizing: border-box;
}

#productSalesSummaryModal .product-sales-summary-modal-header {
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px 14px;
    border-bottom: 1px solid var(--pssm-border);
    background: linear-gradient(180deg, #ffffff 0%, var(--pssm-surface-1) 100%);
}

#productSalesSummaryModal .product-sales-summary-modal-header .modal-title {
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--pssm-on-surface);
    letter-spacing: 0.01em;
}

#productSalesSummaryModal .product-sales-summary-modal-close {
    flex-shrink: 0;
    opacity: 0.72;
}

#productSalesSummaryModal .product-sales-summary-modal-close:hover {
    opacity: 1;
}

#productSalesSummaryModal .product-sales-summary-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 16px 20px 20px;
    background: #ffffff;
}

/* 상단(안내·탭·검색) 고정, 하단 푸터는 형제 — 가운데만 표 높이 채움 + 스크롤 */
#productSalesSummaryModal .product-sales-summary-body-stack {
    flex-shrink: 0;
}

#productSalesSummaryModal .product-sales-summary-body-fill {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

#productSalesSummaryModal .product-sales-summary-lead {
    margin-bottom: 12px;
    font-size: 0.8125rem;
    line-height: 1.45;
    color: var(--pssm-muted);
}

#productSalesSummaryModal .product-sales-summary-tabs {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    list-style: none;
    margin: 0 0 16px 0;
    padding: 8px;
    background: var(--pssm-surface-2);
    border: 1px solid var(--pssm-border);
    border-radius: 5px;
}

#productSalesSummaryModal .product-sales-summary-tabs .nav-item {
    margin: 0;
}

#productSalesSummaryModal .product-sales-summary-tabs .nav-link {
    border: none;
    border-radius: 5px;
    padding: 8px 14px;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 0.01em;
    color: #4a4458;
    background: transparent;
    margin: 0;
    transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

#productSalesSummaryModal .product-sales-summary-tabs .nav-link:hover {
    background: rgba(255, 255, 255, 0.75);
    color: var(--pssm-on-surface);
}

#productSalesSummaryModal .product-sales-summary-tabs .nav-link.active {
    background: #ffffff;
    color: var(--pssm-primary);
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.1);
}

#productSalesSummaryModal .product-sales-summary-loading {
    display: none;
    flex: 1 1 auto;
    min-height: 0;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 28px 16px;
    font-size: 0.875rem;
    color: var(--pssm-muted);
}

#productSalesSummaryModal .product-sales-summary-loading.is-visible {
    display: flex;
}

#productSalesSummaryModal .product-sales-summary-table-wrap {
    display: none;
    flex: 1 1 auto;
    min-height: 0;
    border: 1px solid var(--pssm-border);
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
}

#productSalesSummaryModal .product-sales-summary-table-wrap.is-visible {
    display: flex;
    flex-direction: column;
}

#productSalesSummaryModal .product-sales-summary-table-responsive {
    margin: 0;
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/* layout.ejs 전역 `table { left:50%; transform: translate(-50%,0); }` — 넓은 표는 왼쪽 열이 화면밖으로 밀림(모바일·가로스크롤) */
#productSalesSummaryModal .product-sales-summary-table {
    position: static;
    left: auto;
    top: auto;
    transform: none;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.8125rem;
}

#productSalesSummaryModal .product-sales-summary-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--pssm-surface-1);
    color: #49454f;
    font-weight: 600;
    letter-spacing: 0.02em;
    border-bottom: 1px solid var(--pssm-border);
    vertical-align: middle;
    padding: 10px 10px;
    box-shadow: 0 1px 0 var(--pssm-border);
}

#productSalesSummaryModal .product-sales-summary-table tbody td {
    border-bottom: 1px solid #f2ecf9;
    vertical-align: middle;
    padding: 10px 10px;
    color: var(--pssm-on-surface);
}

#productSalesSummaryModal .product-sales-summary-table tbody tr:last-child td {
    border-bottom: none;
}

#productSalesSummaryModal .product-sales-summary-table tbody tr:hover td {
    background: rgba(139, 58, 66, 0.04);
}

#productSalesSummaryModal .product-sales-summary-table .product-sales-sort-icon {
    display: inline-block;
    margin-left: 4px;
    cursor: pointer;
    font-weight: 700;
    color: var(--pssm-primary);
    user-select: none;
    vertical-align: baseline;
}

#productSalesSummaryModal .product-sales-summary-table .product-sales-sort-icon:hover {
    color: #722f36;
}

#productSalesSummaryModal .product-sales-summary-thumb {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--pssm-border);
    vertical-align: middle;
}

#productSalesSummaryModal td.product-sales-summary-empty {
    padding: 28px 16px;
    font-size: 0.875rem;
}

#productSalesSummaryModal .product-sales-summary-modal-footer {
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 20px 16px;
    border-top: 1px solid var(--pssm-border);
    background: var(--pssm-surface-1);
}

#productSalesSummaryModal .product-sales-summary-modal-footer .action-button i {
    margin-right: 6px;
}

@media (max-width: 576px) {
    #productSalesSummaryModal .product-sales-summary-modal-body {
        padding: 12px 14px 16px;
        min-width: 0; /* flex+scrollable 모달 하위에서 가로 스크롤 허용 */
    }

    #productSalesSummaryModal .product-sales-summary-tabs .nav-link {
        padding: 7px 10px;
        font-size: 0.75rem;
    }

    /* 모바일: 래퍼는 자르지 않고, .table-responsive 한 곳에서 가로/세로 스크롤 */
    #productSalesSummaryModal .product-sales-summary-table-wrap {
        min-width: 0;
    }

    #productSalesSummaryModal .product-sales-summary-table-wrap.is-visible {
        overflow: hidden;
    }

    #productSalesSummaryModal .product-sales-summary-table-responsive {
        min-width: 0;
        max-width: 100%;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x pan-y;
    }

    #productSalesSummaryModal .product-sales-summary-table {
        min-width: 1000px;
        width: max-content;
    }
}

/* -------------------------------------------------------------------------
 * 입금매칭 · 창고에 주문하기 모달 (orderListNew) — 상품별 판매현황과 동일 톤
 * ------------------------------------------------------------------------- */
#depositMatchModal.deposit-match-modal,
#warehouseOrderModal.warehouse-order-modal {
    --omd-primary: #8b3a42;
    --omd-on-surface: #1d1b20;
    --omd-surface-1: #f4f6f8;
    --omd-surface-2: #e8eaed;
    --omd-border: #dee2e6;
    --omd-muted: #625b71;
}

#depositMatchModal .deposit-match-modal-dialog {
    max-width: min(1200px, calc(100vw - 1.5rem));
}

#warehouseOrderModal .warehouse-order-modal-dialog {
    max-width: min(1140px, calc(100vw - 1.5rem));
}

#depositMatchModal .deposit-match-modal-dialog.modal-dialog-scrollable,
#warehouseOrderModal .warehouse-order-modal-dialog.modal-dialog-scrollable {
    max-height: calc(100vh - 2rem);
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
}

#depositMatchModal .deposit-match-modal-content,
#warehouseOrderModal .warehouse-order-modal-content {
    border: 1px solid var(--omd-border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(29, 27, 32, 0.16);
    background: #ffffff;
}

/* scrollable 다이얼로그: 짧은 본문일 때도 푸터를 모달 하단에 고정 (상품별 판매현황 .product-sales-summary-modal-block 과 동일 패턴) */
#depositMatchModal .deposit-match-modal-dialog.modal-dialog-scrollable .deposit-match-modal-content,
#warehouseOrderModal .warehouse-order-modal-dialog.modal-dialog-scrollable .warehouse-order-modal-content {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    max-height: 100%;
    height: auto;
}

/* webflow `.div-block { height: 100vh }` 가 모달 래퍼에도 적용되어 본문이 뷰포트 높이로 고정되고 스크롤이 동작하지 않음 */
#warehouseOrderModal .warehouse-order-modal-block {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    max-height: 100%;
    width: 100%;
    box-sizing: border-box;
}

#depositMatchModal .deposit-match-modal-block {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    max-height: 100%;
    width: 100%;
    box-sizing: border-box;
}

#depositMatchModal .deposit-match-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

/* 상품담기모드: 본문 스크롤 (입금매칭·창고와 동일 — webflow `.div-block` 높이로 푸터 밀림·스크롤 불가 방지) */
#productPackingModeModal .product-packing-mode-modal-dialog.modal-dialog-scrollable {
    max-height: calc(100vh - 2rem);
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
}

#productPackingModeModal .product-packing-mode-modal-dialog.modal-dialog-scrollable .product-packing-mode-modal-content {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    max-height: 100%;
    height: auto;
}

#productPackingModeModal .product-packing-mode-modal-block {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    max-height: 100%;
    width: 100%;
    box-sizing: border-box;
}

#productPackingModeModal .product-packing-mode-modal-footer {
    flex-shrink: 0;
}

#productPackingModeModal .product-packing-mode-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 768px) {
    #productPackingModeModal .product-packing-mode-modal-dialog.modal-dialog-scrollable {
        max-height: 100dvh;
        margin: 0;
    }

    #productPackingModeModal .product-packing-mode-modal-dialog.modal-dialog-scrollable .product-packing-mode-modal-content {
        min-height: 0;
        max-height: 100dvh;
    }
}

#depositMatchModal .deposit-match-modal-header,
#warehouseOrderModal .warehouse-order-modal-header,
#productPackingModeModal .product-packing-mode-modal-header {
    flex-shrink: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px 14px;
    border-bottom: 1px solid var(--omd-border);
    background: linear-gradient(180deg, #ffffff 0%, var(--omd-surface-1) 100%);
}

#depositMatchModal .deposit-match-modal-header .modal-title,
#warehouseOrderModal .warehouse-order-modal-header .modal-title,
#productPackingModeModal .product-packing-mode-modal-header .modal-title {
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--omd-on-surface);
    letter-spacing: 0.01em;
}

#depositMatchModal .deposit-match-modal-close,
#warehouseOrderModal .warehouse-order-modal-close,
#productPackingModeModal .product-packing-mode-modal-close {
    flex-shrink: 0;
    margin: 0;
    opacity: 0.72;
}

#depositMatchModal .deposit-match-modal-close:hover,
#warehouseOrderModal .warehouse-order-modal-close:hover,
#productPackingModeModal .product-packing-mode-modal-close:hover {
    opacity: 1;
}

#depositMatchModal .deposit-match-modal-refresh {
    font-size: 0.8125rem;
    padding: 6px 12px;
    box-shadow: none;
}

#depositMatchModal .deposit-match-modal-body,
#warehouseOrderModal .warehouse-order-modal-body,
#productPackingModeModal .product-packing-mode-modal-body {
    padding: 16px 20px 20px;
    background: #ffffff;
}

#warehouseOrderModal .warehouse-order-modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

#depositMatchModal .deposit-match-loading {
    padding: 28px 16px;
    font-size: 0.875rem;
    color: var(--omd-muted);
}

#depositMatchModal .deposit-match-error {
    border-radius: 10px;
    font-size: 0.875rem;
}

#depositMatchModal .deposit-match-section-title {
    font-size: 0.9375rem;
    line-height: 1.35;
    font-weight: 600;
    color: #49454f;
    margin: 0 0 10px 0;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--omd-border);
}

#depositMatchModal .deposit-match-subhead {
    color: var(--omd-on-surface);
    font-weight: 600;
}

#depositMatchModal .deposit-match-table-scroll {
    /* max-height: 360px; */
    overflow: auto;
    border: 1px solid var(--omd-border);
    border-radius: 12px;
    background: #fff;
}

#depositMatchModal .deposit-match-table-scroll--recommend {
    /* max-height: min(42vh, 360px); */
}

#depositMatchModal .deposit-match-table-scroll--all {
    /* max-height: min(52vh, 480px); */
}

/* 구매자 카드 목록: 입금 테이블용 table-scroll 미적용 (orderListNew .deposit-match-buyer-list) */
#depositMatchModal .deposit-match-buyer-list.deposit-match-table-scroll {
    max-height: none;
    min-height: 0;
}

#depositMatchModal .deposit-match-data-table {
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.8125rem;
}

#depositMatchModal .deposit-match-data-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--omd-surface-1);
    color: #49454f;
    font-weight: 600;
    letter-spacing: 0.02em;
    border-bottom: 1px solid var(--omd-border);
    vertical-align: middle;
    padding: 10px 8px;
    box-shadow: 0 1px 0 var(--omd-border);
}

#depositMatchModal .deposit-match-data-table tbody td {
    border-bottom: 1px solid #f2ecf9;
    vertical-align: middle;
    padding: 8px 8px;
    color: var(--omd-on-surface);
}

#depositMatchModal .deposit-match-data-table tbody tr:last-child td {
    border-bottom: none;
}

#depositMatchModal .deposit-match-data-table tbody tr:hover td {
    background: rgba(139, 58, 66, 0.04);
}

/* 입금 내역 전용: 헤더 톤·열 너비 (일시·입금자 축소, 삭제 확대) */
#depositMatchModal .deposit-match-data-table--inbound {
    table-layout: fixed;
    width: 100%;
}

#depositMatchModal .deposit-match-data-table--inbound thead th {
    font-size: 0.75rem;
    line-height: 1.3;
    padding: 8px 6px;
    color: #4a4458;
    letter-spacing: 0.03em;
    font-weight: 600;
    background: linear-gradient(180deg, #fafbfc 0%, var(--omd-surface-1) 100%);
    box-shadow: 0 1px 0 var(--omd-border);
}

#depositMatchModal .deposit-match-data-table--inbound .deposit-match-col-select {
    width: 32px;
    max-width: 32px;
    padding-left: 4px;
    padding-right: 4px;
    text-align: center;
    vertical-align: middle;
}

#depositMatchModal .deposit-match-data-table--inbound .deposit-match-col-datetime {
    width: 28%;
    min-width: 10.75rem;
    max-width: none;
}

#depositMatchModal .deposit-match-data-table--inbound .deposit-match-col-depositor {
    width: 16%;
    max-width: 6rem;
}

#depositMatchModal .deposit-match-data-table--inbound .deposit-match-col-amount {
    width: 12%;
    max-width: 5.75rem;
}

#depositMatchModal .deposit-match-data-table--inbound .deposit-match-col-remove {
    width: 4.75rem;
    min-width: 4.75rem;
    max-width: 4.75rem;
    padding-left: 6px;
    padding-right: 6px;
}

#depositMatchModal .deposit-match-data-table--inbound tbody td.deposit-match-col-datetime {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: clip;
}

#depositMatchModal .deposit-match-data-table--inbound tbody td.deposit-match-col-depositor {
    max-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#depositMatchModal .deposit-match-data-table--inbound tbody td.deposit-match-col-amount {
    max-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#depositMatchModal .deposit-match-modal-footer,
#warehouseOrderModal .warehouse-order-modal-footer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 20px 16px;
    border-top: 1px solid var(--omd-border);
    background: var(--omd-surface-1);
    flex-shrink: 0;
    margin-top: auto;
}

#depositMatchModal .deposit-match-modal-footer .action-button:disabled,
#depositMatchModal .deposit-match-modal-footer .action-button[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

#warehouseOrderModal .warehouse-order-modal-lead {
    font-size: 0.8125rem;
    line-height: 1.45;
    color: var(--omd-muted);
}

#warehouseOrderModal .warehouse-order-section-title {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #49454f;
}

#warehouseOrderModal .warehouse-order-refresh {
    font-size: 0.8125rem;
    padding: 6px 12px;
    box-shadow: none;
}

#warehouseOrderModal .warehouse-order-loading {
    text-align: center;
    padding: 24px 16px;
    font-size: 0.875rem;
    color: var(--omd-muted);
}

/* overflow:hidden 이면 넓은 테이블이 잘리기만 하고 가로 스크롤이 생기지 않음 — 가로 스크롤 허용 */
#warehouseOrderModal .wo-table-wrap {
    border-radius: 12px;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    min-width: 0;
    border: 1px solid var(--omd-border);
    background: #fff;
}

#warehouseOrderModal #warehouseOrderTableWrap,
#warehouseOrderModal #warehouseOrderHistoryWrap {
    min-width: 0;
    max-width: 100%;
}

#warehouseOrderModal .wo-table-wrap table {
    margin-bottom: 0;
}

#warehouseOrderModal .warehouse-order-data-table thead th,
#warehouseOrderModal .warehouse-order-main-table thead th {
    vertical-align: middle;
    font-weight: 600;
    font-size: 0.75rem;
    letter-spacing: 0.02em;
    color: #49454f;
    background: var(--omd-surface-1);
    border-bottom: 1px solid var(--omd-border);
    white-space: nowrap;
}

#warehouseOrderModal .warehouse-order-data-table tbody td,
#warehouseOrderModal .warehouse-order-main-table tbody td {
    vertical-align: middle;
    font-size: 0.8125rem;
    color: var(--omd-on-surface);
    border-bottom: 1px solid #f2ecf9;
}

#warehouseOrderModal .warehouse-order-data-table tbody tr:nth-child(even) td,
#warehouseOrderModal .warehouse-order-main-table tbody tr:nth-child(even) td {
    background: rgba(244, 246, 248, 0.65);
}

#warehouseOrderModal .warehouse-order-data-table tbody tr:hover td,
#warehouseOrderModal .warehouse-order-main-table tbody tr:hover td {
    background: rgba(139, 58, 66, 0.05);
}

#warehouseOrderModal .wo-history-detail-panel {
    border: 1px solid var(--omd-border);
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

#warehouseOrderModal .wo-history-detail-panel .wo-detail-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 14px;
    border-bottom: 1px solid var(--omd-border);
    background: var(--omd-surface-1);
}

#warehouseOrderModal .wo-history-detail-panel .wo-detail-head strong {
    color: var(--omd-on-surface);
    font-size: 0.9375rem;
    font-weight: 600;
}

#warehouseOrderModal .wo-detail-head-close {
    flex-shrink: 0;
    opacity: 0.72;
    padding: 0.25rem;
}

#warehouseOrderModal .wo-detail-head-close:hover {
    opacity: 1;
}

#warehouseOrderModal .wo-history-detail-panel .wo-detail-body {
    max-height: min(42vh, 360px);
    overflow: auto;
    padding: 0;
}

#warehouseOrderModal .wo-history-detail-panel table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--omd-surface-1);
    border-bottom: 1px solid var(--omd-border);
}

#warehouseOrderModal .warehouse-order-modal-footer .action-button i {
    margin-right: 6px;
}

@media (max-width: 576px) {
    #depositMatchModal .deposit-match-modal-body,
    #warehouseOrderModal .warehouse-order-modal-body,
    #productPackingModeModal .product-packing-mode-modal-body {
        padding: 12px 14px 16px;
    }

    #depositMatchModal .deposit-match-modal-header,
    #warehouseOrderModal .warehouse-order-modal-header,
    #productPackingModeModal .product-packing-mode-modal-header {
        padding: 12px 14px;
        flex-wrap: wrap;
    }

    #depositMatchModal .deposit-match-modal-header-actions {
        width: 100%;
        justify-content: flex-end;
    }

    #optionChangeModal .option-change-modal-body {
        padding: 12px 14px 16px;
    }

    #optionChangeModal .option-change-modal-header {
        padding: 12px 14px;
    }
}

/* -------------------------------------------------------------------------
 * 옵션 변경 모달 (orderListNew #optionChangeModal) — 입금매칭·창고 주문과 동일 톤
 * ------------------------------------------------------------------------- */
#optionChangeModal.option-change-modal {
    --ocm-on-surface: #1d1b20;
    --ocm-surface-1: #f4f6f8;
    --ocm-border: #dee2e6;
    --ocm-muted: #625b71;
    --ocm-label: #49454f;
}

#optionChangeModal .option-change-modal-dialog {
    max-width: min(520px, calc(100vw - 1.5rem));
}

#optionChangeModal .option-change-modal-content {
    border: 1px solid var(--ocm-border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(29, 27, 32, 0.16);
    background: #ffffff;
}

#optionChangeModal .option-change-modal-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px 14px;
    border-bottom: 1px solid var(--ocm-border);
    background: linear-gradient(180deg, #ffffff 0%, var(--ocm-surface-1) 100%);
}

#optionChangeModal .option-change-modal-header .modal-title {
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--ocm-on-surface);
    letter-spacing: 0.01em;
}

#optionChangeModal .option-change-modal-close {
    flex-shrink: 0;
    opacity: 0.72;
}

#optionChangeModal .option-change-modal-close:hover {
    opacity: 1;
}

#optionChangeModal .option-change-modal-body {
    padding: 16px 20px 20px;
    background: #ffffff;
}

#optionChangeModal .option-change-line {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.5;
    color: var(--ocm-on-surface);
}

#optionChangeModal .option-change-k {
    display: inline-block;
    margin-right: 6px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--ocm-label);
}

#optionChangeModal .option-change-v {
    font-weight: 500;
    color: var(--ocm-on-surface);
    word-break: break-word;
}

#optionChangeModal .option-change-sep {
    display: inline-block;
    margin: 0 8px;
    color: #938f99;
    font-weight: 400;
}

#optionChangeModal .option-change-unit {
    margin-left: 2px;
    font-weight: 500;
    color: var(--ocm-on-surface);
}

#optionChangeModal .option-change-hint {
    font-weight: 400;
    color: var(--ocm-muted);
    font-size: 0.75rem;
}

#optionChangeModal .option-change-select {
    border-radius: 8px;
    border: 1px solid var(--ocm-border);
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
}

#optionChangeModal .option-change-stock-msg {
    font-size: 0.8125rem;
    line-height: 1.45;
    color: var(--ocm-muted);
    min-height: 1.25em;
}

#optionChangeModal .option-change-error {
    font-size: 0.875rem;
    line-height: 1.45;
    color: #b3261e;
    padding: 8px 10px;
    border-radius: 8px;
    background: #f9dedc;
    border: 1px solid rgba(179, 38, 30, 0.22);
}

#optionChangeModal .option-change-modal-footer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 20px 16px;
    border-top: 1px solid var(--ocm-border);
    background: var(--ocm-surface-1);
}

#optionChangeModal .option-change-modal-footer .action-button:disabled,
#optionChangeModal .option-change-modal-footer .action-button[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

/* -------------------------------------------------------------------------
 * 회원 목록 — 주문내역 모달 (seller/member/list.ejs #orderHistoryModal)
 * ------------------------------------------------------------------------- */
#orderHistoryModal.member-order-history-modal {
    --mohm-primary: #8b3a42;
    --mohm-on-surface: #1d1b20;
    --mohm-surface-1: #f4f6f8;
    --mohm-border: #dee2e6;
    --mohm-muted: #625b71;
}

#orderHistoryModal .member-order-history-modal-dialog {
    max-width: min(1140px, calc(100vw - 1.5rem));
}

#orderHistoryModal .member-order-history-modal-content {
    border: 1px solid var(--mohm-border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(29, 27, 32, 0.16);
    background: #ffffff;
}

#orderHistoryModal .member-order-history-modal-block {
    width: 100%;
    min-height: 0;
    box-sizing: border-box;
}

#orderHistoryModal .member-order-history-modal-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 20px 14px;
    border-bottom: 1px solid var(--mohm-border);
    background: linear-gradient(180deg, #ffffff 0%, var(--mohm-surface-1) 100%);
}

#orderHistoryModal .member-order-history-modal-header .modal-title {
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--mohm-on-surface);
    letter-spacing: 0.01em;
}

#orderHistoryModal .member-order-history-modal-close {
    flex-shrink: 0;
    opacity: 0.72;
}

#orderHistoryModal .member-order-history-modal-close:hover {
    opacity: 1;
}

#orderHistoryModal .member-order-history-modal-body {
    padding: 16px 20px 20px;
    background: #ffffff;
}

#orderHistoryModal .member-order-history-section-label {
    display: block;
    margin: 0 0 12px 0;
}

#orderHistoryModal .member-order-history-labang-title {
    margin: 0 0 12px 0;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
    color: var(--mohm-on-surface);
}

#orderHistoryModal .member-order-history-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

#orderHistoryModal .member-order-history-toolbar .action-button i {
    margin-right: 6px;
}

#orderHistoryModal .action-button.w-100 {
    display: inline-flex;
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
}

#orderHistoryModal .member-order-history-table-wrap {
    border: 1px solid var(--mohm-border);
    border-radius: 12px;
    overflow: auto;
    max-height: min(52vh, 480px);
    background: #fff;
    margin-bottom: 12px;
}

#orderHistoryModal .member-order-history-table {
    font-size: 0.8125rem;
    border-collapse: separate;
    border-spacing: 0;
}

#orderHistoryModal .member-order-history-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--mohm-surface-1);
    color: #49454f;
    font-weight: 600;
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border-bottom: 1px solid var(--mohm-border);
    padding: 10px 12px;
    vertical-align: middle;
    white-space: nowrap;
}

#orderHistoryModal .member-order-history-table tbody td {
    padding: 10px 12px;
    vertical-align: middle;
    border-bottom: 1px solid #f2ecf9;
    color: var(--mohm-on-surface);
}

#orderHistoryModal .member-order-history-table tbody tr:last-child td {
    border-bottom: none;
}

#orderHistoryModal .member-order-history-table tbody tr:hover td {
    background: rgba(139, 58, 66, 0.04);
}

#orderHistoryModal .order-mobile-card {
    background: #ffffff;
    border: 1px solid var(--mohm-border);
    border-radius: 12px;
    padding: 14px 16px;
    margin-bottom: 12px;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.08);
}

#orderHistoryModal .order-mobile-card .card-header {
    font-size: 0.9375rem;
    font-weight: 600;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--mohm-border);
    color: var(--mohm-on-surface);
}

#orderHistoryModal .order-mobile-card .card-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
    font-size: 0.8125rem;
}

#orderHistoryModal .order-mobile-card .card-label {
    color: #625b71;
    font-weight: 500;
    flex-shrink: 0;
}

#orderHistoryModal .order-mobile-card .card-value {
    color: var(--mohm-on-surface);
    text-align: right;
    word-break: break-word;
}

#orderHistoryModal .order-mobile-card .card-actions {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--mohm-border);
}

#orderHistoryModal .member-order-history-empty {
    color: var(--mohm-muted);
}

#orderHistoryModal .member-order-history-empty .text-muted {
    color: var(--mohm-muted) !important;
}

#orderHistoryModal .member-order-history-modal-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 20px 16px;
    border-top: 1px solid var(--mohm-border);
    background: var(--mohm-surface-1);
}

@media (max-width: 576px) {
    #orderHistoryModal .member-order-history-modal-body {
        padding: 12px 14px 16px;
    }
}

/* .div-block 밖에 두는 Bootstrap 모달 버튼 */
.modal .btn:not(.btn-close),
.modal a.btn {
    border-radius: 5px !important;
}

/* 플래시 상품등록 전체화면 오버레이 (list.ejs include, 본문 .main-container 위) */
#flashProductCreateOverlay.div-block.product-create-overlay {
    position: fixed;
    inset: 0;
    z-index: 1100;
    box-sizing: border-box;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* webflow `.div-block { height: 100vh }` 무효화 — iOS Safari에서 100vh·주소창과 어긋나 하단이 가려짐 */
    height: auto;
    min-height: 100vh;
    min-height: 100dvh;
    max-height: 100dvh;
    max-height: 100svh;
    padding: 16px;
    /* 패널 안쪽(.row)만 스크롤 — 전체 오버레이 스크롤로 헤더·닫기가 밀려나가지 않도록 */
    overflow-x: hidden;
    overflow-y: hidden;
    background: rgba(29, 27, 32, 0.45);
    backdrop-filter: blur(2px);
}

/*
 * 옵션 자동생성(#option_help)·사이즈 선택(#size_list)
 * 플래시 상품등록 오버레이(z-index:1100)보다 위에 보여야 함 (공통 include: sizeOptionModals.ejs)
 */
#option_help.option-help-panel,
#size_list.option-help-panel {
    --ohp-primary: #8b3a42;
    --ohp-on-primary: #ffffff;
    --ohp-primary-hover: #722f36;
    --ohp-outline: #79747e;
    --ohp-on-surface: #1d1b20;
    --ohp-surface: #ffffff;
    --ohp-surface-1: #f4f6f8;
    --ohp-surface-2: #e8eaed;
    --ohp-border: #dee2e6;
    --ohp-muted: #49454f;
    position: fixed;
    left: 50%;
    z-index: 1150 !important;
    width: calc(100% - 32px);
    max-width: 520px;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    font-family: inherit;
}

#option_help.option-help-panel {
    top: 50%;
    transform: translate(-50%, -50%);
}

#size_list.option-help-panel {
    top: 30%;
    transform: translate(-50%, -50%);
}

@media (max-width: 576px) {
    #option_help.option-help-panel,
    #size_list.option-help-panel {
        width: calc(100% - 24px);
        max-width: none;
    }
}

.option-help-panel__surface {
    background: var(--ohp-surface);
    border: 1px solid var(--ohp-border);
    border-radius: 16px;
    box-shadow: 0 4px 24px rgba(29, 27, 32, 0.2);
    overflow: hidden;
    max-height: min(90vh, 720px);
    display: flex;
    flex-direction: column;
}

.option-help-panel__header {
    flex-shrink: 0;
    padding: 16px 20px 12px;
    border-bottom: 1px solid var(--ohp-border);
    background: var(--ohp-surface);
}

.option-help-panel__title {
    margin: 0;
    font-size: 1.125rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--ohp-on-surface);
    letter-spacing: 0.01em;
    text-align: center;
}

.option-help-panel__body {
    flex: 1 1 auto;
    min-height: 0;
    padding: 16px 20px 8px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.option-help-panel__section {
    margin-bottom: 16px;
}

.option-help-panel__section:last-child {
    margin-bottom: 0;
}

.option-help-panel__label {
    display: block;
    margin-bottom: 8px;
    font-size: 0.8125rem;
    line-height: 1.35;
    font-weight: 500;
    color: var(--ohp-muted);
    letter-spacing: 0.01em;
}

.option-help-panel__filter-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.option-help-panel__filter-tabs .btn {
    border-radius: 5px;
    font-weight: 500;
    font-size: 0.78rem;
}

.option-help-panel__color-wrap {
    max-height: 140px;
    overflow-y: auto;
    padding: 2px 0;
}

.option-help-panel__color-row {
    width: auto;
    min-width: 0;
    flex: 0 1 auto;
    align-items: stretch;
}

.option-help-panel__color-row .form-control {
    min-width: 72px;
    max-width: 120px;
    border-radius: 0;
}

.option-help-panel__chip-wrap {
    width: 100%;
}

.option-help-panel__chip-wrap--scroll {
    max-height: 160px;
    overflow-y: auto;
    padding: 4px 2px;
    -webkit-overflow-scrolling: touch;
}

@media (max-width: 576px) {
    #size_list .option-help-panel__chip-wrap--scroll,
    #option_help .option-help-panel__chip-wrap--scroll {
        max-height: min(45vh, 280px);
    }
}

.option-help-panel__direct-input-wrap {
    border-radius: 0;
    padding: 4px 8px;
    background: var(--ohp-surface-1);
    border: 1px solid var(--ohp-border);
}

.option-help-panel__direct-input-wrap .form-control {
    min-width: 88px;
    max-width: 140px;
    border-radius: 0;
}

/* 옵션 자동생성: 직접입력 넓이 90% */
#option_help .option-help-panel__direct-input-wrap--wide {
    width: 90%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

#option_help .option-help-panel__direct-input-wrap--wide .form-control,
#option_help_size_input {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

/* 사이즈 칩 — 선택 시 M3 primary */
#option_help .size-option-btn,
#size_list .size-btn:not(.option-help-panel__direct-input-wrap) {
    border-radius: 5px;
    font-weight: 500;
    font-size: 0.78rem;
    border: 1px solid var(--ohp-outline);
    background: #fff;
    color: var(--ohp-on-surface);
    min-height: 34px;
    padding: 0.28rem 0.65rem;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

#option_help .size-option-btn:hover,
#size_list .size-btn:not(.option-help-panel__direct-input-wrap):hover {
    border-color: var(--ohp-primary);
    color: var(--ohp-primary);
    background: var(--ohp-surface-1);
}

#option_help .size-option-btn.active,
#size_list .size-btn.active:not(.option-help-panel__direct-input-wrap) {
    background: var(--ohp-primary) !important;
    border-color: var(--ohp-primary) !important;
    color: var(--ohp-on-primary) !important;
}

#option_help .option-help-size-filter-btn.active,
#size_list .option-help-size-filter-btn.active {
    background: var(--ohp-primary) !important;
    border-color: var(--ohp-primary) !important;
    color: var(--ohp-on-primary) !important;
}

#option_help .option-help-size-filter-btn:not(.active),
#size_list .option-help-size-filter-btn:not(.active) {
    background: #fff;
    color: var(--ohp-on-surface);
    border-color: var(--ohp-outline);
}

.option-help-panel__footer {
    flex-shrink: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 20px 16px;
    border-top: 1px solid var(--ohp-border);
    background: var(--ohp-surface-1);
}

.option-help-panel__footer--split {
    justify-content: flex-end;
}

.option-help-panel__footer .btn {
    border-radius: 5px;
    font-weight: 500;
    min-width: 88px;
}

#option_help .option-help-panel__footer .btn.btn-primary,
#size_list .option-help-panel__footer .btn.btn-primary {
    background-color: var(--ohp-primary);
    border-color: var(--ohp-primary);
    color: var(--ohp-on-primary);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

#option_help .option-help-panel__footer .btn.btn-primary:hover,
#size_list .option-help-panel__footer .btn.btn-primary:hover {
    background-color: var(--ohp-primary-hover);
    border-color: var(--ohp-primary-hover);
    color: var(--ohp-on-primary);
}

#option_help .option-help-panel__footer .btn.btn-secondary,
#size_list .option-help-panel__footer .btn.btn-secondary {
    background-color: var(--ohp-surface-2);
    border-color: var(--ohp-surface-2);
    color: #4a4458;
}

#option_help .option-help-panel__footer .btn.btn-secondary:hover,
#size_list .option-help-panel__footer .btn.btn-secondary:hover {
    background-color: #dfd8e6;
    border-color: #dfd8e6;
    color: #342d40;
}

#option_help .add-color-btn,
#option_help .remove-color-btn {
    border-radius: 5px;
    font-weight: 500;
}

#option_help .form-control-sm {
    border-radius: 0;
}

/* 패널 폭 고정 — .container 의 width:100% 를 덮어써 플렉스에서 실제 폭만 차지·가로 중앙 정렬 가능 */
#flashProductCreateOverlay .product-create-panel-shell {
    box-sizing: border-box;
    width: min(100%, 430px);
    max-width: 100%;
    /* 뷰포트 안에 카드 전체가 들어가도록 — 내용은 .product-create-card-body 내부 첫 .row 에서 스크롤 */
    max-height: min(calc(100dvh - 32px), calc(100svh - 32px));
    margin: 0 auto;
    flex-shrink: 1;
    align-self: center;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

/* Bootstrap .row > .col 이 카드 높이 제한을 끊지 않도록 flex 체인 연결 */
#flashProductCreateOverlay .product-create-panel-shell > .row {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    max-height: 100%;
}

#flashProductCreateOverlay .product-create-panel-shell > .row > [class*="col-"] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    max-height: 100%;
}

#flashProductCreateOverlay .product-create-card {
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    margin-left: auto;
    margin-right: auto;
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 16px;
    box-shadow: 0 4px 12px rgba(29, 27, 32, 0.12);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

#flashProductCreateOverlay .product-create-card-body {
    padding: 20px 20px 24px;
    text-align: left;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    gap: 0;
}

/* 상품등록 폼 본문만 세로 스크롤 (헤더·하단 버튼 행은 고정)
   주의: :first-of-type 은 태그명 기준이라 첫 div가 헤더면 .row 에 매칭되지 않음 → 헤더 바로 다음 .row */
#flashProductCreateOverlay .product-create-card-body > .product-create-header + .row {
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

#flashProductCreateOverlay .product-create-card-body > .product-create-header + .row > [class*="col-"] {
    min-height: 0;
}

#flashProductCreateOverlay .product-create-card-body > .product-create-header + .row ~ .row {
    flex-shrink: 0;
}

/* 상품등록 하단 액션: 한 줄(줄바꿈 시에만 다음 줄)로 정렬 */
#flashProductCreateOverlay .product-create-footer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0.75rem;
    justify-content: center;
    align-items: center;
}

/* 하단 버튼: 좁은 폭에서 글 두 줄 방지. display 에 !important 금지 — jQuery hide/show 가 동작해야 함 */
#flashProductCreateOverlay .product-create-footer-btn {
    white-space: nowrap;
    width: auto !important;
    max-width: 100%;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-left: 0.875rem;
    padding-right: 0.875rem;
}

#flashProductCreateOverlay .product-create-form-root {
    text-align: left;
}

#flashProductCreateOverlay .product-create-form-root .form-label,
#flashProductCreateOverlay .product-create-form-root label.form-label {
    display: block;
    width: 100%;
    text-align: left;
}

#flashProductCreateOverlay .product-create-form-root small {
    text-align: left;
}

#flashProductCreateOverlay .product-create-header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-bottom: 16px;
    padding: 0 0 12px;
    min-height: 55px;
    border-bottom: 1px solid #dee2e6;
}

#flashProductCreateOverlay .product-create-panel-title {
    flex: 1;
    min-width: 0;
    margin: 0;
    padding: 0 52px;
    text-align: center;
    box-sizing: border-box;
}

/* 상품등록 헤더 — X 닫기 (우상단 5px, 타이틀은 가운데) */
#flashProductCreateOverlay .product-create-header-close {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 20px;
    background: var(--m3-surface-2, #e8eaed);
    color: var(--m3-on-surface, #1d1b20);
    line-height: 1;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    transition: background 0.2s ease, color 0.2s ease;
}

#flashProductCreateOverlay .product-create-header-close:hover {
    background: rgba(139, 58, 66, 0.12);
    color: var(--m3-primary, #8b3a42);
}

#flashProductCreateOverlay .product-create-header-close:focus-visible {
    outline: 2px solid var(--m3-primary, #8b3a42);
    outline-offset: 2px;
}

#flashProductCreateOverlay .product-create-header-close-icon {
    display: block;
    flex-shrink: 0;
    pointer-events: none;
}

#flashProductCreateOverlay #dragAndDropArea,
#flashProductCreateOverlay #cameraInputArea {
    flex: 1;
    min-width: 0;
    height: 150px;
    border: 2px dashed var(--m3-outline, #79747e);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px 0;
    background: var(--m3-surface-1, #f4f6f8);
    transition: border-color 0.2s ease, background 0.2s ease;
    position: relative;
    cursor: pointer;
}

#flashProductCreateOverlay #dragAndDropArea.dragover,
#flashProductCreateOverlay #cameraInputArea.dragover {
    background: rgba(139, 58, 66, 0.08);
    border-color: var(--m3-primary, #8b3a42);
}

#flashProductCreateOverlay #dragAndDropAreaText,
#flashProductCreateOverlay #cameraInputText {
    color: #49454f;
    font-size: 0.9375rem;
    text-align: center;
    padding: 0 8px;
}

#flashProductCreateOverlay .product-create-upload-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
    align-items: stretch;
    justify-content: flex-start;
}

#flashProductCreateOverlay .product-create-toggles {
    display: flex;
    gap: 22px;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
}

#flashProductCreateOverlay .product-create-toggle-item {
    text-align: left;
    min-width: 0;
}

#flashProductCreateOverlay .product-create-toggle-control {
    padding-left: 2px;
}

#flashProductCreateOverlay .product-create-preview-img {
    display: none;
    width: 30%;
    height: auto;
}

/* PC: 상품등록 패널 — 가로·세로 가운데, 높이는 뷰포트 안(내부 스크롤) */
@media (min-width: 577px) {
    #flashProductCreateOverlay.div-block.product-create-overlay {
        justify-content: center;
        align-items: center;
        align-content: center;
        padding-top: max(16px, calc(env(safe-area-inset-top, 0px) + 12px));
        padding-bottom: max(16px, calc(env(safe-area-inset-bottom, 0px) + 12px));
        padding-left: 16px;
        padding-right: 16px;
    }

    #flashProductCreateOverlay .product-create-panel-shell {
        margin: 0 auto;
        max-height: min(
            calc(100dvh - max(32px, env(safe-area-inset-top, 0px) + env(safe-area-inset-bottom, 0px) + 32px)),
            calc(100svh - max(32px, env(safe-area-inset-top, 0px) + env(safe-area-inset-bottom, 0px) + 32px))
        );
    }

    /* PC: 드래그 영역 + 웹캠 촬영 영역 2열 50/50 정렬 */
    #flashProductCreateOverlay #dragAndDropArea,
    #flashProductCreateOverlay #cameraInputArea {
        flex: 1 1 0;
        min-width: 0;
        width: auto;
        max-width: none;
    }

    #flashProductCreateOverlay .product-create-upload-row {
        flex-wrap: nowrap;
    }

    /* PC: 유튜브 캡쳐 버튼 — 업로드 영역 위 가운데 */
    #flashProductCreateOverlay .product-create-youtube-capture-row {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 10px;
    }

    #flashProductCreateOverlay .product-create-youtube-capture-stack {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 4px;
        max-width: 100%;
    }

    #flashProductCreateOverlay .product-create-youtube-capture-btn {
        display: block;
        min-width: 160px;
    }

    #flashProductCreateOverlay .product-create-chrome-plugin-link {
        display: block;
        width: 100%;
        font-size: 10px;
        line-height: 1.25;
        font-weight: 400;
        color: #6b7280;
        text-align: center;
        text-decoration: underline;
        white-space: nowrap;
    }

    #flashProductCreateOverlay .product-create-chrome-plugin-link:hover {
        color: #374151;
    }
}

/* 모바일: 유튜브 캡쳐 버튼 숨김 */
@media (max-width: 576px) {
    #flashProductCreateOverlay .product-create-youtube-capture-row {
        display: none;
    }
}

/* ---------- PC 유튜브 라이브 — 화면 왼쪽 고정 (상품등록 모달은 가운데 유지) ---------- */
#productCreateYoutubePanel.product-create-youtube-panel {
    display: none;
    flex-direction: column;
    position: relative;
    aspect-ratio: 9 / 16;
    height: min(
        calc(100dvh - max(32px, env(safe-area-inset-top, 0px) + env(safe-area-inset-bottom, 0px) + 32px)),
        calc(100svh - max(32px, env(safe-area-inset-top, 0px) + env(safe-area-inset-bottom, 0px) + 32px))
    );
    max-height: min(90dvh, calc(100svh - 32px));
    width: auto;
    background: #000;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

@media (min-width: 577px) {
    #productCreateYoutubePanel.product-create-youtube-panel.is-open {
        position: fixed;
        left: max(16px, calc(env(safe-area-inset-left, 0px) + 12px));
        top: 50%;
        transform: translateY(-50%);
        z-index: 1101;
        display: flex;
    }
}

#productCreateYoutubePanel .product-create-youtube-panel-close {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 3;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    font-size: 22px;
    line-height: 32px;
    text-align: center;
    cursor: pointer;
}

#productCreateYoutubePanel .product-create-youtube-panel-close:hover {
    background: rgba(0, 0, 0, 0.75);
}

#productCreateYoutubePanel .product-create-youtube-media {
    position: relative;
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    height: 100%;
}

#productCreateYoutubePanel #productCreateYoutubeIframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
    pointer-events: none;
}

/* 투명 레이어: 마우스가 iframe(유튜브)로 전달되지 않게 — 호버 시 정지 UI 방지 */
#productCreateYoutubePanel .product-create-youtube-pointer-shield {
    position: absolute;
    inset: 0;
    z-index: 2;
    background: transparent;
    pointer-events: auto;
    cursor: default;
    touch-action: none;
}

@media (max-width: 576px) {
    #productCreateYoutubePanel.product-create-youtube-panel {
        display: none !important;
    }
}

/* ---------- 웹캠 캡처 서브모달 (PC) ---------- */
#webcamCaptureModal {
    position: fixed;
    inset: 0;
    z-index: 13000; /* flashProductCreateOverlay(보통 1050~12000대)보다 위 */
    background: rgba(15, 17, 21, 0.72);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 16px;
}
#webcamCaptureModal.is-open {
    display: flex;
}
#webcamCaptureModal .webcam-capture-card {
    background: #fff;
    border-radius: 16px;
    width: 100%;
    max-width: 720px;
    max-height: calc(100vh - 32px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(15, 17, 21, 0.28);
}
#webcamCaptureModal .webcam-capture-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid var(--m3-outline-variant, #e5e7eb);
}
#webcamCaptureModal .webcam-capture-header h3 {
    margin: 0;
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--m3-on-surface, #1c1b1f);
}
#webcamCaptureModal .webcam-capture-close {
    background: transparent;
    border: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    cursor: pointer;
    color: var(--m3-on-surface, #1c1b1f);
    font-size: 22px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
#webcamCaptureModal .webcam-capture-close:hover {
    background: rgba(15, 17, 21, 0.06);
}
#webcamCaptureModal .webcam-capture-stage {
    position: relative;
    background: #000;
    width: 100%;
    aspect-ratio: 4 / 3;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
#webcamCaptureModal #webcamVideo,
#webcamCaptureModal #webcamPreviewImg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #000;
    display: block;
}
/* 셀피/노트북 내장 웹캠 UX — 거울처럼 좌우 반전.
   캡처는 canvas 측에서도 동일하게 반전되어 미리보기와 일치(아래 JS 참조). */
#webcamCaptureModal #webcamVideo {
    transform: scaleX(-1);
}
#webcamCaptureModal .webcam-capture-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px 0;
}
#webcamCaptureModal .webcam-capture-toolbar select {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 12px;
    border: 1px solid var(--m3-outline, #79747e);
    border-radius: 8px;
    background: #fff;
    font-size: 0.875rem;
}
#webcamCaptureModal .webcam-capture-footer {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    padding: 16px 20px 20px;
    border-top: 1px solid var(--m3-outline-variant, #e5e7eb);
    margin-top: 12px;
}
#webcamCaptureModal .webcam-capture-footer .btn {
    min-width: 96px;
}
#webcamCaptureModal .webcam-capture-status {
    padding: 8px 20px 0;
    font-size: 0.8125rem;
    color: var(--m3-on-surface-variant, #49454f);
}
#webcamCaptureModal .webcam-capture-status.is-error {
    color: #b3261e;
}
#webcamCaptureModal .webcam-countdown {
    position: absolute;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 5;
    background: rgba(0, 0, 0, 0.25);
    color: #fff;
    font-size: clamp(96px, 28vw, 200px);
    font-weight: 800;
    line-height: 1;
    text-shadow: 0 4px 24px rgba(0, 0, 0, 0.55);
    user-select: none;
}
#webcamCaptureModal .webcam-countdown.is-active {
    display: flex;
}
#webcamCaptureModal .webcam-countdown.is-flash {
    background: rgba(255, 255, 255, 0.9);
    animation: webcamFlashFade 220ms ease-out forwards;
}
#webcamCaptureModal .webcam-countdown .webcam-countdown-num {
    animation: webcamCountdownPop 900ms ease-out forwards;
}
@keyframes webcamCountdownPop {
    0%   { transform: scale(0.6); opacity: 0; }
    20%  { transform: scale(1.15); opacity: 1; }
    70%  { transform: scale(1);    opacity: 1; }
    100% { transform: scale(0.85); opacity: 0; }
}
@keyframes webcamFlashFade {
    0%   { background: rgba(255, 255, 255, 0.95); }
    100% { background: rgba(255, 255, 255, 0);    }
}

@media (max-width: 576px) {
    #webcamCaptureModal .webcam-capture-stage {
        aspect-ratio: 3 / 4;
    }
    #webcamCaptureModal .webcam-capture-footer .btn {
        flex: 1 1 calc(50% - 4px);
        min-width: 0;
    }
}

@media (max-width: 576px) {
    /* 모바일: 드래그·클릭 + 카메라를 한 줄(가로)에 배치 */
    #flashProductCreateOverlay .product-create-upload-row {
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 8px;
    }

    #flashProductCreateOverlay #dragAndDropArea,
    #flashProductCreateOverlay #cameraInputArea {
        flex: 1 1 0;
        min-width: 0;
        width: auto;
        max-width: none;
        margin: 0;
    }

    #flashProductCreateOverlay #dragAndDropAreaText,
    #flashProductCreateOverlay #cameraInputText {
        font-size: 0.75rem;
        line-height: 1.3;
        padding: 0 4px;
    }

    #flashProductCreateOverlay .product-create-card-body {
        padding: 16px 14px 20px;
    }

    /* iOS Safari 하단 탭바 — safe-area + 여백(패널 max-height 가 남은 영역에 맞춰 줄어듦) */
    #flashProductCreateOverlay.div-block.product-create-overlay {
        padding: 12px;
        padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px) + 24px);
        justify-content: center;
    }

    #flashProductCreateOverlay .product-create-panel-shell {
        max-height: min(
            calc(100dvh - 48px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)),
            calc(100svh - 48px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px))
        );
    }

    #flashProductCreateOverlay .product-create-preview-img {
        width: 50%;
    }
}

/* 상품 리스트: 자주 쓰는 등록 액션 — 우하단 고정 아이콘만 (텍스트 없음) */
.div-block .product-list-fab {
    position: fixed;
    right: max(16px, env(safe-area-inset-right));
    bottom: max(16px, env(safe-area-inset-bottom));
    z-index: 1030;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    pointer-events: none;
}

.div-block .product-list-fab__btn {
    pointer-events: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    padding: 0;
    border: none;
    border-radius: 50%;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(29, 27, 32, 0.22);
    transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

.div-block .product-list-fab__btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(52, 58, 64, 0.4), 0 2px 8px rgba(29, 27, 32, 0.22);
}

.div-block .product-list-fab__btn--primary {
    background: var(--btn-solid-bg);
    color: #ffffff;
}

.div-block .product-list-fab__btn--primary:hover {
    background: var(--btn-solid-hover-bg);
}

.div-block .product-list-fab__btn--youtube {
    background: var(--btn-muted-bg);
    color: var(--btn-muted-text);
    border: 1px solid #ced4da;
}

.div-block .product-list-fab__btn--youtube:hover {
    background: var(--btn-muted-hover-bg);
    filter: none;
}

/* 상품 행 DOWN과 동일: 현재 UP 상품 노출 해제 */
.div-block .product-list-fab__btn--down {
    background: #6c757d;
    color: #ffffff;
    border: 1px solid #5a6268;
}

.div-block .product-list-fab__btn--down:hover {
    background: #5c636a;
    color: #ffffff;
}

@media (hover: hover) {
    .div-block .product-list-fab__btn:hover {
        transform: translateY(-1px);
    }
}

/* ========== 셀러 좌측 메뉴 (navbar-wrapper) — 흰 배경, 텍스트 rgb(66,66,66), 아이콘 연한 그레이 ========== */
.navbar-wrapper {
    --seller-nav-primary: #8b3a42;
    --seller-nav-on-primary: #ffffff;
    --seller-nav-primary-container: rgba(139, 58, 66, 0.12);
    --seller-nav-on-primary-container: rgb(66, 66, 66);
    --seller-nav-surface: #ffffff;
    --seller-nav-surface-container: #ffffff;
    --seller-nav-flyout-surface: #ffffff;
    --seller-nav-outline-variant: #e8e8e8;
    --seller-nav-on-surface: rgb(66, 66, 66);
    --seller-nav-on-surface-variant: #b3b3b3;
    --seller-nav-outline: rgba(0, 0, 0, 0.12);
    --seller-nav-state-hover: rgba(0, 0, 0, 0.05);
    /* 레일·플라이아웃 선택/호버: 연한 그레이 + 텍스트 rgb(66,66,66) */
    --seller-nav-rail-hover-bg: #eceff1;
    --seller-nav-rail-selected-bg: #e9ecef;
    --seller-nav-rail-accent-icon: #5c5c5c;
    --seller-nav-flyout-row-hover-bg: #eceff1;
    --seller-nav-flyout-row-active-bg: #dfe3e6;
    --seller-nav-flyout-title-bg: #eceff1;
    --seller-nav-flyout-title-text: rgb(66, 66, 66);
}

.navbar-wrapper .navbar-brand.w-nav-brand h1,
.navbar-wrapper .navbar-brand-link h1 {
    color: rgb(66, 66, 66);
}

.navbar-wrapper .material-symbols-outlined {
    color: var(--seller-nav-on-surface-variant);
}

/* 링크·라벨 안 아이콘은 호버/활성 시 글자색과 맞춤 (header 쪽 color: inherit 유지) */
.navbar-wrapper .nav-link:hover .material-symbols-outlined,
.navbar-wrapper .nav-link.nav-link--active .material-symbols-outlined,
.navbar-wrapper .menu-header:hover .material-symbols-outlined,
.navbar-wrapper .mobile-menu-header:hover .material-symbols-outlined {
    color: inherit;
}

/* header.ejs 인라인의 #333 / 파랑 호버 등 — 레일 안에서만 덮음 */
.navbar-wrapper .pc-menu .nav-link {
    color: var(--seller-nav-on-surface);
}

.navbar-wrapper .pc-menu .nav-link:hover {
    color: var(--seller-nav-primary);
}

.navbar-wrapper .menu-divider {
    background-color: var(--seller-nav-outline);
}

.navbar-wrapper .hamburger-btn span {
    background-color: var(--seller-nav-on-surface-variant);
}

.navbar-wrapper .mobile-menu {
    background-color: var(--seller-nav-flyout-surface);
    box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
}

.navbar-wrapper .mobile-menu-list li:not(:last-child) {
    border-bottom-color: var(--seller-nav-outline-variant);
}

.navbar-wrapper .mobile-menu-list .nav-link {
    color: var(--seller-nav-on-surface);
}

.navbar-wrapper .mobile-menu-list .nav-link:hover {
    color: var(--seller-nav-primary);
}

.navbar-wrapper .mobile-menu-header:hover {
    color: rgb(66, 66, 66);
}

.navbar-wrapper .mobile-submenu .nav-link:hover {
    background-color: var(--seller-nav-flyout-row-hover-bg);
    color: rgb(66, 66, 66);
}

.navbar-wrapper .mobile-submenu .nav-link:hover .material-symbols-outlined {
    color: var(--seller-nav-rail-accent-icon);
}

@media (min-width: 769px) {
    .navbar-wrapper .pc-menu .nav-link {
        border-bottom-color: var(--seller-nav-outline-variant);
    }
}

.navbar-wrapper .menu-header {
    color: var(--seller-nav-on-surface);
    border-bottom-color: var(--seller-nav-outline-variant);
}

.navbar-wrapper .menu-header:hover {
    background-color: var(--seller-nav-state-hover);
}

.navbar-wrapper .mobile-menu-header {
    color: var(--seller-nav-on-surface);
    border-bottom-color: var(--seller-nav-outline-variant);
}

@media (min-width: 769px) {
    .pc_header .seller-nav-flyout {
        box-shadow: 6px 8px 28px rgba(0, 0, 0, 0.1);
    }

    /* header 인라인(.pc_header .navbar-brand h1)보다 구체성 높게 — 로고도 메뉴와 동일 rgb */
    .pc_header .navbar-wrapper .navbar-brand.w-nav-brand h1,
    .pc_header .navbar-wrapper .navbar-brand-link h1 {
        color: rgb(66, 66, 66);
    }

    /* 레일 1차 메뉴: 호버·열림 = 연한 그레이 배경, 텍스트·아이콘 동일 톤 (header 보라/버건디 덮음) */
    .pc_header .navbar-wrapper .pc-menu .menu-header:hover,
    .pc_header .navbar-wrapper .pc-menu .menu-item:hover .menu-header {
        background: var(--seller-nav-rail-hover-bg) !important;
        color: rgb(66, 66, 66) !important;
    }

    .pc_header .navbar-wrapper .pc-menu .menu-header:hover > .material-symbols-outlined:first-of-type,
    .pc_header .navbar-wrapper .pc-menu .menu-item:hover .menu-header > .material-symbols-outlined:first-of-type {
        color: var(--seller-nav-rail-accent-icon) !important;
    }

    .pc_header .navbar-wrapper .pc-menu .menu-item--has-active .menu-header {
        background: var(--seller-nav-rail-selected-bg) !important;
        color: rgb(66, 66, 66) !important;
    }

    .pc_header .navbar-wrapper .pc-menu .menu-item--has-active .menu-header > .material-symbols-outlined:first-of-type {
        color: var(--seller-nav-rail-accent-icon) !important;
    }

    /* 플라이아웃 상단 칩 */
    .pc_header .navbar-wrapper .seller-nav-flyout-title {
        background: var(--seller-nav-flyout-title-bg) !important;
        color: var(--seller-nav-flyout-title-text) !important;
    }

    /* 플라이아웃 2depth: 호버·현재 페이지 */
    .pc_header .navbar-wrapper .seller-nav-flyout-body .nav-link:hover {
        background: var(--seller-nav-flyout-row-hover-bg) !important;
        color: rgb(66, 66, 66) !important;
    }

    .pc_header .navbar-wrapper .seller-nav-flyout-body .nav-link.nav-link--active {
        background: var(--seller-nav-flyout-row-active-bg) !important;
        color: rgb(66, 66, 66) !important;
        font-weight: 600;
    }

    .pc_header .navbar-wrapper .seller-nav-flyout-body .nav-link .material-symbols-outlined {
        color: var(--seller-nav-on-surface-variant);
    }

    .pc_header .navbar-wrapper .seller-nav-flyout-body .nav-link:hover .material-symbols-outlined,
    .pc_header .navbar-wrapper .seller-nav-flyout-body .nav-link.nav-link--active .material-symbols-outlined {
        color: var(--seller-nav-rail-accent-icon) !important;
    }
}

/* -------------------------------------------------------------------------
 * 초성퀴즈 (views/seller/labang/chosungQuiz.ejs)
 * ------------------------------------------------------------------------- */
.div-block.chosung-quiz-page {
    text-align: start;
    max-width: 960px;
    margin: 0 auto;
    box-sizing: border-box;
}

.div-block.chosung-quiz-page .chosung-quiz-lead {
    margin: 0 0 1rem;
    font-size: 0.875rem;
    line-height: 1.55;
    color: #625b71;
    max-width: 72ch;
}

.div-block.chosung-quiz-page .chosung-quiz-lead strong {
    color: var(--m3-on-surface);
    font-weight: 600;
}

.div-block.chosung-quiz-page .chosung-quiz-connection {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 1.25rem;
    padding: 8px 14px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: #49454f;
    border-radius: 9999px;
    background: var(--m3-surface-1);
    border: 1px solid var(--m3-border);
}

.div-block.chosung-quiz-page .chosung-quiz-ws-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--m3-error);
    flex-shrink: 0;
}

.div-block.chosung-quiz-page .chosung-quiz-ws-dot.on {
    background: var(--m3-success);
    box-shadow: 0 0 0 2px rgba(29, 110, 42, 0.2);
}

.div-block.chosung-quiz-page .chosung-quiz-table {
    font-size: 0.875rem;
}

.div-block.chosung-quiz-page .chosung-quiz-table th.table-th,
.div-block.chosung-quiz-page .chosung-quiz-table th {
    font-weight: 600;
    color: #49454f;
    background: var(--m3-surface-1);
    border-color: var(--m3-border);
}

.div-block.chosung-quiz-page .chosung-quiz-table td {
    vertical-align: middle;
    border-color: var(--m3-border);
}

.div-block.chosung-quiz-page .chosung-quiz-table .chosung-quiz-col-idx {
    width: 3rem;
    text-align: center;
}

.div-block.chosung-quiz-page .chosung-quiz-table .chosung-quiz-col-act {
    width: 5.5rem;
    text-align: center;
}

.div-block.chosung-quiz-page .chosung-quiz-table .form-control {
    border-radius: 8px;
    border: 1px solid var(--m3-border);
    font-size: 0.875rem;
    max-width: 280px;
}

.div-block.chosung-quiz-page .chosung-quiz-table .form-control:focus {
    border-color: var(--m3-primary);
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.15);
    outline: none;
}

.div-block.chosung-quiz-page .chosung-quiz-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    margin-top: 1rem;
    margin-bottom: 1.25rem;
}

.div-block.chosung-quiz-page .chosung-quiz-toolbar .action-button {
    padding: 10px 18px;
    font-size: 0.875rem;
}

.div-block.chosung-quiz-page .chosung-quiz-row-remove.action-button {
    padding: 6px 12px;
    font-size: 0.8125rem;
}

.div-block.chosung-quiz-page .chosung-quiz-winners-section-header.section-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: 0.25rem;
    margin-bottom: 0.75rem;
}

.div-block.chosung-quiz-page .chosung-quiz-winners-title {
    font-size: 1.0625rem;
    margin: 0;
}

.div-block.chosung-quiz-page .chosung-quiz-winners-section-header .section-header-right .action-button {
    padding: 8px 14px;
    font-size: 0.8125rem;
}

.div-block.chosung-quiz-page .chosung-quiz-winner-list {
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: 320px;
    overflow-y: auto;
}

.div-block.chosung-quiz-page .chosung-quiz-winner-list li {
    padding: 10px 1.25rem;
    border-bottom: 1px solid var(--m3-border);
    font-size: 0.875rem;
    color: var(--m3-on-surface);
}

.div-block.chosung-quiz-page .chosung-quiz-winner-list li:last-child {
    border-bottom: none;
}

.div-block.chosung-quiz-page .chosung-quiz-winner-meta {
    color: #625b71;
    font-size: 0.8125rem;
    margin-top: 4px;
}

/* -------------------------------------------------------------------------
 * 셀러 계정 — 프로필·이미지 (/view/seller/account/my)
 * ------------------------------------------------------------------------- */
.div-block.seller-account-my-page {
    max-width: 920px;
    margin: 0 auto;
    text-align: start;
}

.div-block.seller-account-my-page__header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
    padding-bottom: 4px;
    border-bottom: 1px solid var(--m3-border);
}

.div-block.seller-account-my-page__title {
    margin: 0 0 4px 0;
    font-size: 1.375rem;
}

.div-block.seller-account-my-page__lead {
    margin: 0;
    max-width: 42rem;
}

.div-block.seller-account-my-page .seller-my-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.div-block.seller-account-my-page .seller-my-card {
    background: var(--m3-surface-0);
    border: 1px solid var(--m3-border);
    border-radius: 12px;
    padding: 18px 18px 20px;
    margin-bottom: 16px;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.06);
    box-sizing: border-box;
}

.div-block.seller-account-my-page .seller-my-card--muted {
    background: var(--m3-surface-1);
}

.div-block.seller-account-my-page .seller-my-card__head {
    margin-bottom: 14px;
}

.div-block.seller-account-my-page .seller-my-card__title {
    margin: 0 0 4px 0;
    font-size: 1.0625rem;
}

.div-block.seller-account-my-page .seller-my-card__caption {
    margin: 0;
}

.div-block.seller-account-my-page .seller-my-asset-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
}

@media (max-width: 640px) {
    .div-block.seller-account-my-page .seller-my-asset-grid {
        grid-template-columns: 1fr;
    }
}

.div-block.seller-account-my-page .seller-my-asset-tile {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
    padding: 12px;
    border-radius: 10px;
    border: 1px solid var(--m3-border);
    background: var(--m3-surface-1);
    box-sizing: border-box;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.div-block.seller-account-my-page .seller-my-asset-tile:focus-within {
    border-color: rgba(139, 58, 66, 0.45);
    box-shadow: 0 0 0 2px rgba(139, 58, 66, 0.12);
}

.div-block.seller-account-my-page .seller-my-asset-tile__meta {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.div-block.seller-account-my-page .seller-my-asset-tile__preview {
    position: relative;
    display: block;
    cursor: pointer;
    overflow: hidden;
    border-radius: 8px;
    background: var(--m3-surface-2);
    outline: none;
}

.div-block.seller-account-my-page .seller-my-asset-tile__preview--round {
    width: 132px;
    height: 132px;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 50%;
}

.div-block.seller-account-my-page .seller-my-asset-tile__preview--wide {
    aspect-ratio: 2.4 / 1;
    width: 100%;
}

.div-block.seller-account-my-page .seller-my-asset-tile__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.div-block.seller-account-my-page .seller-my-asset-tile__preview--round .seller-my-asset-tile__img {
    border-radius: 50%;
}

.div-block.seller-account-my-page .seller-my-file-input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    font-size: 0;
    z-index: 2;
}

.div-block.seller-account-my-page .seller-my-asset-tile__hover {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: rgba(29, 27, 32, 0.45);
    color: #fff;
    font-size: 0.8125rem;
    font-weight: 600;
    opacity: 0;
    transition: opacity 0.18s ease;
    pointer-events: none;
    z-index: 1;
}

.div-block.seller-account-my-page .seller-my-asset-tile__hover i {
    font-size: 1.125rem;
}

.div-block.seller-account-my-page .seller-my-asset-tile__preview:hover .seller-my-asset-tile__hover,
.div-block.seller-account-my-page .seller-my-asset-tile__preview:focus-within .seller-my-asset-tile__hover {
    opacity: 1;
}

.div-block.seller-account-my-page .seller-my-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
}

@media (max-width: 720px) {
    .div-block.seller-account-my-page .seller-my-field-grid {
        grid-template-columns: 1fr;
    }
}

.div-block.seller-account-my-page .seller-my-field--full {
    grid-column: 1 / -1;
}

.div-block.seller-account-my-page .seller-my-field .ds-label {
    display: block;
    margin-bottom: 6px;
}

.div-block.seller-account-my-page .form-control {
    border-radius: 10px;
    border: 1px solid var(--m3-border);
    padding: 10px 12px;
    font-size: 0.9375rem;
    line-height: 1.4;
    color: var(--m3-on-surface);
    background: var(--m3-surface-0);
    box-sizing: border-box;
    width: 100%;
}

.div-block.seller-account-my-page .form-control:focus {
    border-color: var(--m3-primary);
    box-shadow: 0 0 0 0.2rem rgba(139, 58, 66, 0.15);
    outline: none;
}

.div-block.seller-account-my-page .form-control::placeholder {
    color: #79747e;
    opacity: 1;
}

.div-block.seller-account-my-page textarea.form-control {
    min-height: 88px;
    resize: vertical;
}

.div-block.seller-account-my-page .seller-my-channel-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.div-block.seller-account-my-page .seller-my-channel-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    border: 1px solid var(--m3-border);
    background: var(--m3-surface-1);
    box-sizing: border-box;
}

.div-block.seller-account-my-page .seller-my-channel-row__main {
    flex: 1 1 200px;
    min-width: 0;
}

.div-block.seller-account-my-page .seller-my-channel-row--stack {
    align-items: center;
}

.div-block.seller-account-my-page .seller-my-channel-row--stack .seller-my-channel-row__main {
    flex-basis: min(100%, 520px);
    flex-grow: 1;
}

.div-block.seller-account-my-page .seller-my-radio-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    padding: 8px 12px;
    border-radius: 9999px;
    border: 1px solid var(--m3-border);
    background: var(--m3-surface-0);
    font-size: 0.8125rem;
    font-weight: 600;
    color: #49454f;
    cursor: pointer;
    user-select: none;
    margin-bottom: 2px;
}

.div-block.seller-account-my-page .seller-my-radio-pill input {
    accent-color: var(--m3-primary);
}

.div-block.seller-account-my-page .seller-my-input-trail {
    position: relative;
    display: flex;
    align-items: stretch;
    gap: 0;
}

.div-block.seller-account-my-page .seller-my-input-trail .form-control {
    border-radius: 10px 0 0 10px;
    flex: 1;
    min-width: 0;
}

.div-block.seller-account-my-page .seller-my-icon-toggle {
    flex-shrink: 0;
    width: 44px;
    border: 1px solid var(--m3-border);
    border-left: none;
    border-radius: 0 10px 10px 0;
    background: var(--m3-surface-1);
    color: #49454f;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease;
}

.div-block.seller-account-my-page .seller-my-icon-toggle:hover {
    background: var(--m3-surface-2);
}

.div-block.seller-account-my-page .seller-my-home-toggle-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.div-block.seller-account-my-page .seller-my-home-toggle-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 0;
    border-bottom: 1px solid var(--m3-border, #e8eaed);
}

.div-block.seller-account-my-page .seller-my-home-toggle-row:last-child {
    border-bottom: none;
}

.div-block.seller-account-my-page .seller-my-home-toggle-row__label {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.div-block.seller-account-my-page .seller-my-home-toggle.toggle-switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 28px;
    flex-shrink: 0;
}

.div-block.seller-account-my-page .seller-my-home-toggle.toggle-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.div-block.seller-account-my-page .seller-my-home-toggle .toggle-slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.25s ease;
    border-radius: 28px;
}

.div-block.seller-account-my-page .seller-my-home-toggle .toggle-slider:before {
    position: absolute;
    content: "";
    height: 22px;
    width: 22px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: 0.25s ease;
    border-radius: 50%;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
}

.div-block.seller-account-my-page .seller-my-home-toggle.toggle-switch input:checked + .toggle-slider {
    background-color: var(--m3-primary, #111111);
}

.div-block.seller-account-my-page .seller-my-home-toggle.toggle-switch input:checked + .toggle-slider:before {
    transform: translateX(22px);
}

.div-block.seller-account-my-page .seller-my-submit-bar {
    display: flex;
    justify-content: flex-end;
    padding: 8px 0 24px;
}

.div-block.seller-account-my-page .seller-my-submit-btn {
    min-width: 160px;
    padding: 12px 22px;
    font-weight: 600;
}

/* -------------------------------------------------------------------------
 * 주문목록 회원 목록·등록 모달 (orderListNew)
 * ------------------------------------------------------------------------- */
#orderMemberListModal.order-member-list-modal,
#orderMemberRegisterModal.order-member-register-modal {
    --omd-primary: #8b3a42;
    --omd-on-surface: #1d1b20;
    --omd-surface-1: #f4f6f8;
    --omd-surface-2: #e8eaed;
    --omd-border: #dee2e6;
    --omd-muted: #625b71;
}

#orderMemberListModal .order-member-list-modal-dialog {
    max-width: min(960px, calc(100vw - 1.5rem));
}

#orderMemberListModal .order-member-list-modal-dialog.modal-dialog-scrollable {
    max-height: calc(100vh - 2rem);
    height: auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    overflow: hidden;
}

#orderMemberListModal .order-member-list-modal-content,
#orderMemberRegisterModal .order-member-register-modal-content {
    border: 1px solid var(--omd-border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(29, 27, 32, 0.16);
    background: #ffffff;
}

#orderMemberListModal .order-member-list-modal-dialog.modal-dialog-scrollable .order-member-list-modal-content {
    display: flex;
    flex-direction: column;
    flex: 0 1 auto;
    min-height: 0;
    max-height: 100%;
    height: auto;
}

#orderMemberListModal .order-member-list-modal-block {
    display: flex;
    flex-direction: column;
    flex: 0 1 auto;
    min-height: 0;
    height: auto;
    max-height: 100%;
    width: 100%;
    box-sizing: border-box;
}

#orderMemberListModal .order-member-list-modal-dialog.modal-dialog-scrollable .order-member-list-modal-body {
    flex: 0 1 auto;
    overflow-y: visible;
}

#orderMemberListModal .order-member-list-modal-header,
#orderMemberRegisterModal .order-member-register-modal-header {
    border-bottom: 1px solid var(--omd-border);
    padding: 16px 20px;
}

#orderMemberListModal .order-member-list-modal-body,
#orderMemberRegisterModal .order-member-register-modal-body {
    padding: 16px 20px;
}

#orderMemberListModal .order-member-list-modal-footer,
#orderMemberRegisterModal .order-member-register-modal-footer {
    border-top: 1px solid var(--omd-border);
    padding: 12px 20px;
}

#orderMemberListModal .order-member-list-search {
    min-width: 220px;
    max-width: 360px;
    flex: 1 1 auto;
}

/* 회원 목록: PC 테이블 + 모바일 카드 (동일 데이터, 뷰만 전환) */
#orderMemberListModal .order-member-list-list-scroll {
    max-height: min(60vh, 520px);
    overflow: auto;
    border: 1px solid var(--omd-border);
    border-radius: 12px;
    background: #fff;
}

#orderMemberListModal .order-member-list-pc-wrap {
    display: block;
}

#orderMemberListModal .order-member-list-mobile-wrap {
    display: none;
    padding: 12px 12px 8px;
}

#orderMemberListModal .order-member-list-cards {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

#orderMemberListModal .order-member-list-card {
    border: 1px solid var(--omd-border);
    border-radius: 14px;
    padding: 0;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 1px 2px rgba(29, 27, 32, 0.06), 0 2px 8px rgba(29, 27, 32, 0.04);
}

#orderMemberListModal .order-member-list-card--blocked {
    border-color: #e9b8bc;
    background: linear-gradient(180deg, #fff8f8 0%, #ffffff 48%);
    box-shadow: 0 1px 2px rgba(139, 58, 66, 0.08);
}

#orderMemberListModal .order-member-list-card-head {
    padding: 14px 16px 12px;
    margin: 0;
    border-bottom: 1px solid var(--omd-surface-2);
    background: linear-gradient(180deg, var(--omd-surface-1) 0%, #fafbfc 100%);
}

#orderMemberListModal .order-member-list-card-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}

#orderMemberListModal .order-member-list-card-name {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.3;
    letter-spacing: -0.01em;
    color: var(--omd-on-surface);
    flex: 1;
    min-width: 0;
    word-break: break-word;
}

#orderMemberListModal .order-member-list-card-status {
    flex-shrink: 0;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 4px 8px;
    border-radius: 999px;
    background: #fde8ea;
    color: #8b3a42;
    border: 1px solid rgba(139, 58, 66, 0.2);
}

#orderMemberListModal .order-member-list-card-phone-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 0.875rem;
    line-height: 1.4;
}

#orderMemberListModal .order-member-list-card-chip {
    flex-shrink: 0;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--omd-muted);
    text-transform: uppercase;
    padding: 3px 8px;
    border-radius: 6px;
    background: rgba(98, 91, 113, 0.1);
}

#orderMemberListModal .order-member-list-card-phone {
    font-variant-numeric: tabular-nums;
    color: var(--omd-on-surface);
    font-weight: 500;
    word-break: break-all;
}

#orderMemberListModal .order-member-list-card-body {
    padding: 12px 16px 4px;
}

#orderMemberListModal .order-member-list-card-field {
    padding: 10px 0 12px;
    border-bottom: 1px solid var(--omd-surface-2);
}

#orderMemberListModal .order-member-list-card-field:last-of-type {
    border-bottom: none;
    padding-bottom: 8px;
}

#orderMemberListModal .order-member-list-card-label {
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--omd-muted);
    margin-bottom: 6px;
    line-height: 1.2;
}

#orderMemberListModal .order-member-list-card-value {
    font-size: 0.875rem;
    line-height: 1.5;
    color: var(--omd-on-surface);
    word-break: break-word;
    min-width: 0;
}

#orderMemberListModal .order-member-list-card-value--address {
    font-size: 0.8125rem;
    line-height: 1.55;
    color: #3c3844;
}

#orderMemberListModal .order-member-list-card-sub-label {
    display: block;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--omd-muted);
    margin-bottom: 4px;
}

#orderMemberListModal .order-member-list-card-sub {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px dashed var(--omd-border);
    font-size: 0.8125rem;
    line-height: 1.45;
    color: var(--omd-muted);
}

#orderMemberListModal .order-member-list-card-actions {
    margin: 0;
    padding: 12px 16px 14px;
    display: flex;
    justify-content: stretch;
    flex-wrap: wrap;
    gap: 8px;
    border-top: 1px solid var(--omd-surface-2);
    background: #fafbfc;
}

#orderMemberListModal .order-member-list-card-actions .order-member-list-proxy-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 auto;
    min-width: 0;
}

#orderMemberListModal .order-member-list-card-actions > .text-muted {
    align-self: center;
    width: 100%;
    text-align: center;
    padding: 6px 0;
}

@media (max-width: 767.98px) {
    #orderMemberListModal .order-member-list-pc-wrap {
        display: none !important;
    }

    #orderMemberListModal .order-member-list-mobile-wrap {
        display: block !important;
    }

    #orderMemberListModal .order-member-list-register-btn {
        margin-left: 0 !important;
    }
}

#orderMemberListModal .order-member-list-table {
    table-layout: fixed;
    width: 100%;
    min-width: 0;
}

#orderMemberListModal .order-member-list-table .order-member-list-col-name {
    width: 6.5rem;
    max-width: 6.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

#orderMemberListModal .order-member-list-table .order-member-list-col-phone {
    width: 9.5rem;
    min-width: 9.5rem;
    max-width: 9.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

#orderMemberListModal .order-member-list-table .order-member-list-col-nickname {
    width: 7.5rem;
    max-width: 7.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

#orderMemberListModal .order-member-list-table .order-member-list-col-address {
    width: auto;
    min-width: 8rem;
    white-space: normal;
    word-break: break-word;
    vertical-align: middle;
    font-size: 0.8125rem;
    line-height: 1.35;
}

#orderMemberListModal .order-member-list-table thead th.order-member-list-col-action,
#orderMemberListModal .order-member-list-table tbody td.order-member-list-col-action {
    width: 7rem;
    min-width: 7rem;
    max-width: 7rem;
    text-align: center;
    vertical-align: middle;
}

#orderMemberListModal .order-member-list-table thead th.order-member-list-col-action {
    background: var(--omd-surface-1);
}

#orderMemberListModal .order-member-list-table tbody td.order-member-list-col-action {
    background: #ffffff;
}

#orderMemberListModal .order-member-list-proxy-btn {
    font-size: 0.8125rem;
    font-weight: 500;
    padding: 0.35rem 0.6rem;
    white-space: nowrap;
    line-height: 1.2;
}

#orderMemberListModal .order-member-list-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--omd-surface-1);
}

#orderMemberListModal .order-member-list-scroll-sentinel {
    height: 1px;
    margin: 0;
    padding: 0;
}

#orderMemberRegisterModal .order-member-register-zip {
    max-width: 140px;
}

/* -------------------------------------------------------------------------
 * 주문목록 사용자 헤더 (회원 버튼) — LIGHTPAY 시 버튼 숨김은 d-none
 * ------------------------------------------------------------------------- */
.div-block.order-list-tables .order-list-table thead th.order-list-user-head {
    white-space: normal;
    min-width: 88px;
}

.div-block.order-list-tables .order-list-user-head-inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.div-block.order-list-tables .order-list-user-head-label {
    line-height: 1.2;
}

.div-block.order-list-tables .order-list-user-head-actions {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.div-block.order-list-tables .order-list-user-head-actions .order-list-check-all {
    width: 15px;
    height: 15px;
    margin: 0;
    flex-shrink: 0;
}

/* 구매자(사용자) 목록 — 회원 FAB (화면 우하단 고정, 사용자 탭에서만 표시) */
.order-member-list-fab {
    position: fixed;
    right: max(1rem, env(safe-area-inset-right, 0px));
    bottom: max(1.25rem, env(safe-area-inset-bottom, 0px));
    z-index: 1040;
    width: 3.25rem;
    height: 3.25rem;
    padding: 0;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 50%;
    background: #1d1b20;
    color: #fff;
    box-shadow: 0 4px 16px rgba(29, 27, 32, 0.28);
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.order-member-list-fab:hover {
    background: #000;
    box-shadow: 0 6px 20px rgba(29, 27, 32, 0.35);
    transform: scale(1.04);
}

.order-member-list-fab:focus-visible {
    outline: 2px solid #8b3a42;
    outline-offset: 3px;
}

.order-member-list-fab i {
    font-size: 1.25rem;
    line-height: 1;
}

/* -------------------------------------------------------------------------
 * 주문목록 회원 대리 주문 모달 (orderListNew)
 * ------------------------------------------------------------------------- */
#orderMemberProxyModal.order-member-proxy-modal {
    --omd-primary: #8b3a42;
    --omd-on-surface: #1d1b20;
    --omd-surface-1: #f4f6f8;
    --omd-border: #dee2e6;
    --omd-muted: #625b71;
}

#orderMemberProxyModal .order-member-proxy-modal-dialog {
    max-width: min(1100px, calc(100vw - 1.5rem));
}

#orderMemberProxyModal .order-member-proxy-modal-dialog.modal-dialog-scrollable {
    max-height: calc(100vh - 2rem);
}

#orderMemberProxyModal .order-member-proxy-modal-content {
    border: 1px solid var(--omd-border);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(29, 27, 32, 0.16);
    background: #ffffff;
}

#orderMemberProxyModal .order-member-proxy-modal-block {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: auto;
    max-height: 100%;
}

#orderMemberProxyModal .order-member-proxy-modal-header,
#orderMemberProxyModal .order-member-proxy-modal-footer {
    border-color: var(--omd-border);
    padding: 16px 20px;
}

#orderMemberProxyModal .order-member-proxy-modal-body {
    padding: 16px 20px;
}

#orderMemberProxyModal .order-member-proxy-summary {
    background: linear-gradient(180deg, var(--omd-surface-1) 0%, #ffffff 100%);
    border: 1px solid var(--omd-border);
    border-radius: 12px;
    padding: 14px 16px;
    box-shadow: 0 1px 2px rgba(29, 27, 32, 0.04);
    text-align: left;
}

#orderMemberProxyModal .order-member-proxy-product-toolbar {
    align-items: center;
    width: 100%;
    box-sizing: border-box;
}

#orderMemberProxyModal .order-member-proxy-product-search {
    min-width: 180px;
    max-width: 320px;
    flex: 1 1 auto;
    box-sizing: border-box;
}

#orderMemberProxyModal .order-member-proxy-product-scroll-sentinel {
    height: 1px;
    margin: 0;
    padding: 0;
    pointer-events: none;
}

#orderMemberProxyModal .order-member-proxy-coupon-select {
    min-width: 220px;
    max-width: 360px;
}

#orderMemberProxyModal .order-member-proxy-table-scroll {
    max-height: min(52vh, 480px);
    overflow: auto;
    border: 1px solid var(--omd-border);
    border-radius: 12px;
}

#orderMemberProxyModal .order-member-proxy-table {
    table-layout: fixed;
    width: 100%;
}

#orderMemberProxyModal .order-member-proxy-table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--omd-surface-1);
}

#orderMemberProxyModal .order-member-proxy-table th:nth-child(1),
#orderMemberProxyModal .order-member-proxy-table td:nth-child(1) {
    width: auto;
}

#orderMemberProxyModal .order-member-proxy-table th:nth-child(2),
#orderMemberProxyModal .order-member-proxy-table td:nth-child(2) {
    width: min(32%, 220px);
    min-width: 140px;
    max-width: 220px;
}

#orderMemberProxyModal .order-member-proxy-table th:nth-child(3),
#orderMemberProxyModal .order-member-proxy-table td:nth-child(3) {
    width: 88px;
}

#orderMemberProxyModal .order-member-proxy-table th:nth-child(4),
#orderMemberProxyModal .order-member-proxy-table td:nth-child(4) {
    width: 56px;
}

#orderMemberProxyModal .order-member-proxy-table th:nth-child(5),
#orderMemberProxyModal .order-member-proxy-table td:nth-child(5) {
    width: 140px;
    min-width: 130px;
}

#orderMemberProxyModal .order-member-proxy-table th:nth-child(6),
#orderMemberProxyModal .order-member-proxy-table td:nth-child(6) {
    width: 108px;
    min-width: 108px;
}

#orderMemberProxyModal .order-member-proxy-option-submit-wrap {
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.65rem;
    padding-top: 0.65rem;
    border-top: 1px solid var(--omd-border);
}

#orderMemberProxyModal .order-member-proxy-option-submit-wrap .order-member-proxy-row-submit {
    width: auto;
    min-width: min(100%, 12rem);
    max-width: 100%;
    align-self: center;
    padding: 0.4rem 0.75rem;
    font-size: 0.8125rem;
    line-height: 1.25;
    white-space: normal;
}

#orderMemberProxyModal .order-member-proxy-product-card-field--option .order-member-proxy-option-submit-wrap {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
}

#orderMemberProxyModal .order-member-proxy-table td.order-member-proxy-product-name {
    vertical-align: middle;
    font-weight: 600;
    word-break: break-word;
}

#orderMemberProxyModal .order-member-proxy-table td.order-member-proxy-option-cell {
    vertical-align: top;
}

#orderMemberProxyModal .order-member-proxy-option-picker {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    min-width: 0;
}

#orderMemberProxyModal .order-member-proxy-opt-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.5rem;
}

#orderMemberProxyModal .order-member-proxy-opt-row > .form-label {
    flex: 0 0 auto;
    width: 3.25rem;
    min-width: 3.25rem;
    margin: 0;
    font-size: 0.8125rem;
    line-height: 1.25;
    white-space: nowrap;
    text-align: left;
}

#orderMemberProxyModal .order-member-proxy-opt-row .form-select {
    flex: 1 1 auto;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

@media (max-width: 480px) {
    #orderMemberProxyModal .order-member-proxy-opt-row > .form-label {
        width: 2.75rem;
        min-width: 2.75rem;
    }
}

#orderMemberProxyModal .order-member-proxy-selected-lines {
    margin-top: 0.35rem;
    border-top: 1px solid var(--omd-border, #dee2e6);
    padding-top: 0.35rem;
}

#orderMemberProxyModal .order-member-proxy-option-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0;
    border-bottom: 1px solid #eee;
    font-size: 0.875rem;
}

#orderMemberProxyModal .order-member-proxy-option-item:last-child {
    border-bottom: none;
}

#orderMemberProxyModal .order-member-proxy-option-item-main {
    flex: 1 1 auto;
    min-width: 0;
}

#orderMemberProxyModal .order-member-proxy-option-item-name {
    font-weight: 500;
    word-break: break-word;
}

#orderMemberProxyModal .order-member-proxy-option-item-qty {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
}

#orderMemberProxyModal .order-member-proxy-qty-btn {
    padding: 0.2rem 0.45rem;
    font-size: 0.8125rem;
    line-height: 1.2;
    min-width: 2rem;
}

#orderMemberProxyModal .order-member-proxy-unit-count {
    width: 3.25rem;
    min-width: 3rem;
    text-align: center;
    padding: 0.2rem 0.25rem;
}

#orderMemberProxyModal .order-member-proxy-qty-dash {
    display: inline-block;
    padding-top: 0.25rem;
}

#orderMemberProxyModal .order-member-proxy-option-select,
#orderMemberProxyModal .omp-color-select,
#orderMemberProxyModal .omp-size-select {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

#orderMemberProxyModal .order-member-proxy-qty-input {
    width: 100%;
    max-width: none;
    min-width: 88px;
}

#orderMemberProxyModal .order-member-proxy-qty-stepper {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    width: 100%;
    max-width: 8.5rem;
}

#orderMemberProxyModal .order-member-proxy-qty-stepper-btn {
    flex: 0 0 auto;
    min-width: 1.85rem;
    padding: 0.2rem 0.45rem;
    font-size: 0.8125rem;
    line-height: 1.2;
}

#orderMemberProxyModal .order-member-proxy-qty-stepper-input {
    flex: 1 1 auto;
    width: 3rem;
    min-width: 2.25rem;
    max-width: 3.5rem;
    text-align: center;
    padding: 0.2rem 0.25rem;
}

#orderMemberProxyModal .order-member-proxy-product-card-qty .order-member-proxy-qty-stepper {
    width: 100%;
    max-width: 11rem;
}

#orderMemberProxyModal .order-member-proxy-line-total {
    white-space: nowrap;
    text-align: right;
}

#orderMemberProxyModal .order-member-proxy-total-amount {
    font-size: 1.05rem;
}

#orderMemberProxyModal .order-member-proxy-products-root {
    min-height: 0;
}

#orderMemberProxyModal .order-member-proxy-pc-wrap {
    display: block;
}

#orderMemberProxyModal .order-member-proxy-mobile-wrap {
    display: none;
}

#orderMemberProxyModal .order-member-proxy-products-cards {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 0 0 8px;
    width: 100%;
    box-sizing: border-box;
}

#orderMemberProxyModal .order-member-proxy-product-card {
    border: 1px solid var(--omd-border);
    border-radius: 12px;
    background: #ffffff;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(29, 27, 32, 0.06);
}

#orderMemberProxyModal .order-member-proxy-product-card-head {
    padding: 12px 14px;
    background: var(--omd-surface-1);
    border-bottom: 1px solid var(--omd-border);
}

#orderMemberProxyModal .order-member-proxy-product-card-head--with-thumb {
    display: flex;
    align-items: center;
    gap: 12px;
}

#orderMemberProxyModal .order-member-proxy-product-card-title {
    font-weight: 600;
    font-size: 0.95rem;
    line-height: 1.35;
    word-break: break-word;
    min-width: 0;
    flex: 1 1 auto;
}

#orderMemberProxyModal .order-member-proxy-product-name-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

#orderMemberProxyModal .order-member-proxy-product-name-text {
    min-width: 0;
    word-break: break-word;
    flex: 1 1 auto;
}

#orderMemberProxyModal .order-member-proxy-product-thumb {
    flex-shrink: 0;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--omd-border);
    background: #fff;
    display: block;
}

#orderMemberProxyModal .order-member-proxy-product-thumb--pc {
    width: 52px;
    height: 52px;
}

#orderMemberProxyModal .order-member-proxy-product-thumb--mobile {
    width: 72px;
    height: 72px;
}

@media (max-width: 480px) {
    #orderMemberProxyModal .order-member-proxy-product-thumb--mobile {
        width: 60px;
        height: 60px;
    }
}

#orderMemberProxyModal .order-member-proxy-product-card-body {
    padding: 12px 14px 14px;
}

#orderMemberProxyModal .order-member-proxy-product-card-field--option .order-member-proxy-product-card-value {
    margin-top: 4px;
}

#orderMemberProxyModal .order-member-proxy-product-card-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 12px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--omd-border);
}

#orderMemberProxyModal .order-member-proxy-product-card-stat {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

#orderMemberProxyModal .order-member-proxy-product-card-stat--total {
    grid-column: 1 / -1;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 10px;
    margin-top: 4px;
    border-top: 1px dashed var(--omd-border);
}

#orderMemberProxyModal .order-member-proxy-product-card-label {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: var(--omd-muted);
}

#orderMemberProxyModal .order-member-proxy-product-card-qty .order-member-proxy-qty-input {
    min-width: 0;
    width: 100%;
}

#orderMemberProxyModal .order-member-proxy-summary-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-align: left;
}

#orderMemberProxyModal .order-member-proxy-summary-card--blocked {
    /* 구매 제한 회원 강조용 살짝 분홍빛 배경은 컨테이너에서 처리 */
}

#orderMemberProxyModal .order-member-proxy-summary-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 8px;
    border-bottom: 1px dashed var(--omd-border);
}

#orderMemberProxyModal .order-member-proxy-summary-head-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    flex: 1 1 auto;
}

#orderMemberProxyModal .order-member-proxy-summary-name {
    font-size: 1.0625rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--omd-on-surface);
    word-break: break-word;
}

#orderMemberProxyModal .order-member-proxy-summary-subtitle {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
    font-size: 0.8125rem;
    color: var(--omd-muted);
    word-break: break-word;
}

#orderMemberProxyModal .order-member-proxy-summary-subtitle-label {
    flex-shrink: 0;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--omd-muted);
    background: #eef0f3;
    padding: 1px 6px;
    border-radius: 4px;
}

#orderMemberProxyModal .order-member-proxy-summary-subtitle-value {
    color: var(--omd-on-surface);
    font-weight: 500;
}

#orderMemberProxyModal .order-member-proxy-summary-badge {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 999px;
    line-height: 1.2;
    letter-spacing: 0.02em;
}

#orderMemberProxyModal .order-member-proxy-summary-badge--ok {
    background: #e6f4ea;
    color: #1e7e34;
    border: 1px solid rgba(30, 126, 52, 0.2);
}

#orderMemberProxyModal .order-member-proxy-summary-badge--blocked {
    background: #fde8ea;
    color: #8b3a42;
    border: 1px solid rgba(139, 58, 66, 0.25);
}

#orderMemberProxyModal .order-member-proxy-summary-fields {
    display: grid;
    grid-template-columns: 4rem 1fr;
    gap: 6px 12px;
    margin: 0;
    padding: 0;
}

#orderMemberProxyModal .order-member-proxy-summary-field {
    display: contents;
}

#orderMemberProxyModal .order-member-proxy-summary-field-label {
    grid-column: 1;
    margin: 0;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--omd-muted);
    letter-spacing: 0.02em;
    text-transform: none;
    align-self: start;
    padding-top: 2px;
}

#orderMemberProxyModal .order-member-proxy-summary-field-value {
    grid-column: 2;
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.45;
    color: var(--omd-on-surface);
    word-break: break-word;
}

#orderMemberProxyModal .order-member-proxy-summary-field-value--address {
    line-height: 1.5;
}

@media (max-width: 480px) {
    #orderMemberProxyModal .order-member-proxy-summary {
        padding: 12px 14px;
    }

    #orderMemberProxyModal .order-member-proxy-summary-head {
        flex-wrap: wrap;
    }

    #orderMemberProxyModal .order-member-proxy-summary-fields {
        grid-template-columns: 3.5rem 1fr;
        gap: 4px 10px;
    }
}

@media (max-width: 767.98px) {
    #orderMemberProxyModal .order-member-proxy-pc-wrap {
        display: none !important;
    }

    #orderMemberProxyModal .order-member-proxy-mobile-wrap {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    /* 카드만 라운드·테두리: 스크롤 영역 바깥 프레임 제거(이중 라운드 방지) */
    #orderMemberProxyModal .order-member-proxy-table-scroll {
        max-height: min(56vh, 420px);
        border: none;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        padding: 0;
        margin: 0;
        width: 100%;
        box-sizing: border-box;
    }

    #orderMemberProxyModal .order-member-proxy-modal-dialog {
        max-width: calc(100vw - 0.75rem);
        margin: 0.375rem auto;
    }

    #orderMemberProxyModal .order-member-proxy-modal-body {
        padding: 12px 14px;
    }

    #orderMemberProxyModal .order-member-proxy-toolbar {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    #orderMemberProxyModal .order-member-proxy-product-toolbar {
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    #orderMemberProxyModal .order-member-proxy-coupon-select,
    #orderMemberProxyModal .order-member-proxy-product-search {
        max-width: 100%;
        width: 100%;
        flex: 0 0 auto;
        margin-left: auto;
        margin-right: auto;
    }

    #orderMemberProxyModal .order-member-proxy-product-toolbar .order-member-proxy-product-search,
    #orderMemberProxyModal .order-member-proxy-product-toolbar .order-member-proxy-product-search-btn {
        align-self: stretch;
    }

    #orderMemberProxyModal .order-member-proxy-product-toolbar .order-member-proxy-product-search-btn {
        text-align: center;
    }

    #orderMemberProxyModal .order-member-proxy-total-bar {
        flex-direction: column;
        align-items: stretch;
        text-align: left;
    }

    #orderMemberProxyModal .order-member-proxy-total-amount {
        text-align: right;
        font-size: 1.15rem;
    }

    #orderMemberProxyModal .order-member-proxy-modal-footer {
        flex-direction: column-reverse;
        gap: 8px;
    }

    #orderMemberProxyModal .order-member-proxy-modal-footer .action-button {
        width: 100%;
    }

    #orderMemberProxyModal .order-member-proxy-product-card .order-member-proxy-option-item {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    #orderMemberProxyModal .order-member-proxy-product-card .order-member-proxy-option-item-qty {
        justify-content: flex-end;
    }
}
