/* WooCommerce */
.woocommerce-message, .woocommerce-Message { margin: 20px 0px; padding: 10px 10px; border-top: 2px solid #eeeeee; border-bottom: 2px solid #eeeeee; background-color: #fafafa; text-align: center; }
.woocommerce-message a, .woocommerce-Message a { display: inline-block; margin-left: 10px; padding: 4px 10px; border-radius: 3px; border: 1px solid var( --color-button-blue ); background-color: var( --color-button-blue ); color: #ffffff; transition: all 0.3s ease; }
.woocommerce-message a:hover, .woocommerce-Message a:hover { border-color: var( --color-button-blue-hover ); background-color: var( --color-button-blue-hover ); }

/* Product add-to-cart confirmation */
.jb-cart-modal { width: calc(100% - 32px); max-width: 440px; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: auto; border: 1px solid #dbe2ea; border-radius: 12px; background: #ffffff; color: #1e2938; box-shadow: 0 20px 60px rgba(15, 23, 42, 0.2); }
.jb-cart-modal::backdrop { background: rgba(15, 23, 42, 0.48); }
.jb-cart-modal-content { position: relative; padding: 32px; text-align: center; }
.jb-cart-modal-close { position: absolute; top: 12px; right: 12px; display: grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 0; border-radius: 6px; background: transparent; color: #64748b; font-size: 26px; line-height: 1; }
.jb-cart-modal-close:hover { border: 0; background: #f1f5f9; color: #1e2938; }
.jb-cart-modal-check { display: grid; place-items: center; width: 42px; height: 42px; margin: 0 auto 14px; border-radius: 50%; background: #e8f1ff; color: #215db5; font-size: 23px; font-weight: 700; }
.jb-cart-modal h2 { margin: 0 0 22px; font: 700 20px/1.4 "Noto Sans KR", "Malgun Gothic", sans-serif; }
.jb-cart-modal-product { display: flex; align-items: center; gap: 14px; min-height: 76px; margin-bottom: 24px; padding: 12px; border: 1px solid #e5e9ef; border-radius: 8px; background: #f8fafc; text-align: left; }
.jb-cart-modal-image { width: 56px; height: 56px; flex: 0 0 56px; border-radius: 4px; object-fit: cover; }
.jb-cart-modal-image[hidden] { display: none; }
.jb-cart-modal-product-info { min-width: 0; }
.jb-cart-modal-product-name { display: block; color: #1e2938; font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.jb-cart-modal-product-quantity { display: block; margin-top: 3px; color: #64748b; font-size: 13px; }
.jb-cart-modal-actions { display: flex; gap: 10px; }
.jb-cart-modal-actions a, .jb-cart-modal-actions button { display: inline-flex; flex: 1 1 0; align-items: center; justify-content: center; min-height: 46px; height: auto; padding: 10px 12px; border-radius: 6px; font: 700 14px/1.4 "Noto Sans KR", "Malgun Gothic", sans-serif; text-align: center; }
.jb-cart-modal-cart { border: 1px solid #215db5; background: #215db5; color: #ffffff; }
.jb-cart-modal-cart:hover { border-color: #184b96; background: #184b96; color: #ffffff; }
.jb-cart-modal-continue { border: 1px solid #cbd5e1; background: #ffffff; color: #334155; }
.jb-cart-modal-continue:hover { border-color: #94a3b8; background: #f8fafc; color: #1e2938; }
.jb-cart-modal :is(a, button):focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
.product .summary .jb-cart-inline-error { margin: 14px 0 0; padding: 12px 14px; border-left: 3px solid #dc2626; border-radius: 0 4px 4px 0; background: #fff7f7; color: #991b1b; font-size: 14px; line-height: 1.5; }
.product .summary .jb-cart-inline-error[hidden] { display: none; }
.product .summary .jb-cart-inline-error a { color: #991b1b; font-weight: 700; text-decoration: underline; }
@media ( max-width: 480px ) { .jb-cart-modal-content { padding: 28px 20px 20px; } .jb-cart-modal-actions { flex-direction: column; } }

/* WooCommerce - Shop */
.woocommerce h1.page-title { border-bottom: 1px solid #dadada; padding-bottom: 20px; text-align: center; font-size: 1.75rem; font-weight: 500; }
@media ( max-width: 767px ) { .woocommerce h1.page-title { font-size: 1.5rem; } }
.woocommerce-result-count { display: none; }
/* .woocommerce-ordering { display: none; } */
.woocommerce-ordering select { margin: 10px 0px 20px 0px; padding: 10px 10px; border: 1px solid #dadada; }
.woocommerce ul.products:before { display: table; content: " "; }
.woocommerce ul.products:after { display: table; content: " "; clear: both; }
.woocommerce ul.products { margin: 0px -10px; padding: 0px; list-style-type: none; }
.woocommerce ul.products li.product { float: left; width: 33.33333333%; padding: 0px 10px; }
.woocommerce ul.products li.product img { width: 100%; }
.woocommerce .related ul.products li.product { width: 25%; }
.woocommerce ul.products li.product h2.woocommerce-loop-product__title { display: block; margin: 10px 0px; padding: 0px 2px; text-align: center; font-size: 16px; font-family: "Noto Sans KR", sans-serif; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.woocommerce ul.products a { color: #333333; }
.woocommerce ul.products a:hover { color: #222222; }
.woocommerce ul.products li.product .price { display: block; margin: -10px 0px 20px 0px; padding: 0px 2px; font-size: 16px; font-family: "Noto Sans KR", sans-serif; font-weight: 500; text-align: center; }
.woocommerce ul.products li.product .price del { margin-right: 5px; color: #666666; }
.woocommerce ul.products li.product .price ins { text-decoration: none; }
.woocommerce ul.products li.product .button { display: none; }
.sale { position: relative; }
li.sale span.onsale { position: absolute; top: 0px; right: 10px; z-index: 9999; display: block; width: 80px; padding: 2px 0px; text-align: center; background-color: #F44336; background-color: rgba(244,67,54,0.9); color: #ffffff; font-family: "Noto Sans KR", sans-serif; font-weight: 500; font-size: 0px; }
li.sale span.onsale:before { content: "SALE"; font-size: 20px; }
div.sale span.onsale { display: none; }
li.outofstock { position: relative; }
li.outofstock:before { content: "판매 중지"; position: absolute; top: 0px; left: 10px; padding: 6px 12px; background-color: #ef5350; color: #ffffff; font-family: "Noto Sans KR", sans-serif; font-size: 16px; }
@media ( max-width: 767px ) {
  .woocommerce ul.products li.product { width: 100%; }
  .woocommerce .related ul.products li.product { width: 100%; }
  .woocommerce ul.products li.product h2.woocommerce-loop-product__title { font-size: 16px; }
}

/* Shop archive */
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-categories { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 20px; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-categories a { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 7px 15px; border: 1px solid #d8e2ee; border-radius: 999px; background: #fff; color: #334155; font-size: 13px; font-weight: 600; line-height: 1.5; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-categories a:hover { border-color: #215db5; background: #f2f7ff; color: #215db5; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-categories a.is-current { border-color: #215db5; background: #215db5; color: #fff; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-categories a:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
@media ( max-width: 600px ) {
  body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-categories { gap: 7px; margin-bottom: 18px; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-categories a { min-height: 36px; padding: 6px 12px; }
}
body:is(.post-type-archive-product, .tax-product_cat, .home) h1.page-title { margin: 0 0 20px; padding-bottom: 18px; color: inherit; font-size: 18px; font-weight: 500; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 20px; margin: 0 0 20px; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-toolbar .woocommerce-result-count { display: block; margin: 0; color: #64748b; font-size: 13px; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-toolbar .woocommerce-ordering { margin: 0; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-toolbar .woocommerce-ordering select { min-height: 40px; margin: 0; padding: 8px 34px 8px 12px; border: 1px solid #cbd5e1; border-radius: 6px; background-color: #fff; color: #334155; }
body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-toolbar .woocommerce-ordering select:focus-visible { outline: 2px solid #215db5; outline-offset: 2px; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 20px; margin: 0; padding: 0; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products::before,
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products::after { display: none; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product { display: flex; float: none; flex-direction: column; width: auto; min-width: 0; margin: 0; padding: 0; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product a.woocommerce-LoopProduct-link { color: #1e293b; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product > a.woocommerce-LoopProduct-link { display: block; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .jb-shop-product-info > a.woocommerce-LoopProduct-link { display: flex; flex: 1; flex-direction: column; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product a.woocommerce-LoopProduct-link:focus-visible { outline: 2px solid #215db5; outline-offset: -3px; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; transition: opacity 0.2s ease; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product a.woocommerce-LoopProduct-link:hover img { opacity: 0.9; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .jb-shop-product-info { display: flex; flex: 1; flex-direction: column; min-width: 0; padding: 14px 16px 16px; border: 1px solid #dadada; border-top: 0; border-radius: 0 0 8px 8px; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .jb-shop-product-type { display: inline-block; width: max-content; max-width: 100%; margin: 0 auto 8px; padding: 3px 10px; border: 1px solid #d5e3f5; border-radius: 999px; background: #eef4fc; color: #215db5; font-size: 11px; font-weight: 600; line-height: 1.4; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .jb-shop-product-type:hover { border-color: #b7d1f1; background: #dfeafb; color: #184b96; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .jb-shop-product-type:focus-visible { outline: 2px solid #215db5; outline-offset: 2px; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product h2.woocommerce-loop-product__title { margin: 0 0 8px; padding: 0; color: #1e293b; font-size: 15px; font-weight: 600; line-height: 1.5; text-align: center; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product a.woocommerce-LoopProduct-link:hover h2.woocommerce-loop-product__title { color: #215db5; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .price { margin: auto 0 0; padding: 0; color: #1e293b; font-size: 16px; font-weight: 700; line-height: 1.5; text-align: center; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .price del { color: #64748b; font-size: 13px; font-weight: 400; }
body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product.outofstock::before { top: 12px; left: 12px; font-size: 13px; }
@media ( max-width: 900px ) {
  body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media ( max-width: 600px ) {
  body:is(.post-type-archive-product, .tax-product_cat, .home) h1.page-title { margin-bottom: 18px; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-toolbar { margin-bottom: 16px; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products { gap: 14px; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .jb-shop-product-info { padding: 12px; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .jb-shop-product-type { padding: 2px 8px; font-size: 10px; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product h2.woocommerce-loop-product__title { font-size: 13px; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products li.product .price { font-size: 14px; }
}
@media ( max-width: 380px ) {
  body:is(.post-type-archive-product, .tax-product_cat, .home) .jb-shop-toolbar .woocommerce-result-count { width: 100%; }
  body:is(.post-type-archive-product, .tax-product_cat, .home) ul.products { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}

/* WooCommerce - Product */
  body.single-product div.product { display: grid; grid-template-columns: minmax(0, 44fr) minmax(0, 56fr); column-gap: 40px; align-items: stretch; }
  body.single-product div.product > .woocommerce-tabs { grid-column: 1 / -1; }
  .product .woocommerce-product-gallery--with-images { float: none; width: 100%; min-width: 0; }
  .product .woocommerce-product-gallery--with-images figure { margin: 0px; }
  .product .summary { float: none; width: 100%; min-width: 0; margin: 0; padding: 28px; border: 1px solid #dbe2ea; border-radius: 8px; background: #ffffff; }
  .product .summary h1.product_title { margin: 0; font-weight: 700; font-size: 1.75rem; font-family: "Noto Sans KR", "Malgun Gothic", sans-serif; }
  .product .summary p.price { font-size: 18px; }
  .product .summary p.price del { margin-right: 5px; color: #666666; }
  .product .summary p.price ins { text-decoration: none; }
  .product.product-type-simple .summary form.cart { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 12px; align-items: stretch; margin: 24px 0 0; }
  .product.product-type-simple .summary .quantity { float: none; margin: 0; }
  .product .summary .quantity .screen-reader-text { display: none; }
  .product.product-type-simple .summary .quantity input.input-text { width: 72px; height: 48px; padding: 0 8px; border: 1px solid #cbd5e1; border-radius: 6px; text-align: center; }
  .product.product-type-simple .summary .single_add_to_cart_button { display: inline-flex; align-items: center; justify-content: center; width: 100%; height: 48px; padding: 0 18px; border: 1px solid #215db5; border-radius: 6px; background: #215db5; color: #ffffff; font-size: 15px; font-weight: 700; }
  .product.product-type-simple .summary .single_add_to_cart_button:hover { border-color: #184b96; background: #184b96; }
  .product.product-type-simple .summary .quantity input.input-text:focus-visible, .product.product-type-simple .summary .single_add_to_cart_button:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
  .product .summary .product_meta { display: none; }
  .product .summary p.out-of-stock { display: inline-block; padding: 5px 10px; border: 1px solid #dadada; }
  .product .woocommerce-tabs:before { display: table; content: " "; clear: both; }
  .product .woocommerce-tabs .woocommerce-Tabs-panel { margin: 30px 0px; }
  .product .woocommerce-tabs #tab-description { max-width: 800px; margin: 30px auto; }
  .product .woocommerce-tabs ul.tabs { display: none; }
  .product #tab-description > h2:first-child:not([class]) { display: none; }
  .product section.related > h2 { border-bottom: 1px solid #dadada; padding-bottom: 20px; text-align: center; font-size: 22px; font-weight: 400; }
  @media ( max-width: 900px ) {
    body.single-product div.product { display: block; }
    .product .woocommerce-product-gallery--with-images { max-width: 700px; margin: 0 auto 24px; }
    .product .summary { max-width: 700px; margin: 0 auto; }
  }
  @media ( max-width: 767px ) {
    .product .woocommerce-product-gallery--with-images { float: none; width: 100%; margin-bottom: 24px; }
    .product .summary { float: none; width: 100%; padding: 20px; }
    .product .summary h1.product_title { margin: 0 0 20px; font-size: 1.5rem; }
    .product.product-type-simple .summary form.cart { grid-template-columns: 72px minmax(0, 1fr); }
  }

/* WooCommerce - Cart */
.woocommerce-cart h1.jb-content-title { margin-bottom: 32px; }
.woocommerce-cart .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-cart .jb-content > .woocommerce > .wc-empty-cart-message { width: 100%; max-width: 520px; margin: 48px auto 0; text-align: center; }
.woocommerce-cart .wc-empty-cart-message .cart-empty.woocommerce-info { margin: 0; padding: 0; border: 0; background: transparent; color: #1e293b; font-size: 20px; font-weight: 700; line-height: 1.5; }
.woocommerce-cart .jb-content > .woocommerce > p.return-to-shop { display: flex; grid-column: 1 / -1; justify-content: center; margin: 22px 0 64px; }
.woocommerce-cart p.return-to-shop a { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 10px 22px; border: 1px solid #215db5; border-radius: 6px; background: #215db5; color: #fff; font-size: 14px; font-weight: 700; line-height: 1.4; }
.woocommerce-cart p.return-to-shop a:hover { border-color: #184b96; background: #184b96; color: #fff; }
.woocommerce-cart .jb-content > .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 0 40px; align-items: start; }
.woocommerce-cart .jb-content > .woocommerce > .woocommerce-notices-wrapper,
.woocommerce-cart .jb-content > .woocommerce > .wc-empty-cart-message { grid-column: 1 / -1; }
.woocommerce-cart form.woocommerce-cart-form { min-width: 0; }
.woocommerce-cart form.woocommerce-cart-form table { width: 100%; border-collapse: collapse; }
.woocommerce-cart form.woocommerce-cart-form table th { padding: 12px 8px; border-top: 1px solid #dbe2ea; border-bottom: 1px solid #dbe2ea; background-color: #f8fafc; color: #475569; font-weight: 500; text-align: center; }
.woocommerce-cart form.woocommerce-cart-form table td { padding: 16px 8px; border-bottom: 1px solid #e2e8f0; text-align: center; }
.woocommerce-cart form.woocommerce-cart-form table td.product-remove { width: 36px; }
.woocommerce-cart form.woocommerce-cart-form table td.product-remove a { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 6px; color: #64748b; font-size: 22px; line-height: 1; }
.woocommerce-cart form.woocommerce-cart-form table td.product-remove a:hover { background: #fef2f2; color: #dc2626; }
.woocommerce-cart form.woocommerce-cart-form table td.product-thumbnail { width: 88px; }
.woocommerce-cart form.woocommerce-cart-form table td.product-thumbnail img { display: block; width: 72px; height: 72px; border: 1px solid #e2e8f0; border-radius: 6px; object-fit: cover; }
.woocommerce-cart form.woocommerce-cart-form table td.product-name { color: #1e293b; font-size: 15px; font-weight: 600; line-height: 1.5; text-align: left; }
.woocommerce-cart form.woocommerce-cart-form table td.product-name a { color: #1e293b; }
.woocommerce-cart form.woocommerce-cart-form table td.product-name a:hover { color: #215db5; }
.woocommerce-cart form.woocommerce-cart-form table td.product-price,
.woocommerce-cart form.woocommerce-cart-form table td.product-subtotal { white-space: nowrap; }
.woocommerce-cart form.woocommerce-cart-form table td.product-quantity { width: 80px; }
.woocommerce-cart form.woocommerce-cart-form table td.product-quantity label { display: none; }
.woocommerce-cart form.woocommerce-cart-form table td.product-quantity input { width: 64px; height: 38px; padding: 0 6px; border: 1px solid #cbd5e1; border-radius: 6px; text-align: center; }
.woocommerce-cart form.woocommerce-cart-form table td.actions { position: relative; padding: 16px 0 0; border-bottom: 0; background: none; text-align: right; }
.woocommerce-cart :is(.jb-cart-update-toast, .jb-cart-remove-toast) { display: flex; align-items: center; border: 1px solid #dbe2ea; border-radius: 8px; background: #ffffff; box-shadow: 0 8px 24px rgba(15, 23, 42, 0.14); color: #1e293b; font-size: 13px; line-height: 1.5; opacity: 0; transition: opacity 180ms ease, transform 180ms ease; }
.woocommerce-cart :is(.jb-cart-update-toast, .jb-cart-remove-toast).is-visible { opacity: 1; }
.woocommerce-cart .jb-cart-update-toast { position: absolute; right: calc(var(--jb-cart-update-button-width, 120px) + 10px); bottom: 0; z-index: 2; min-height: 38px; padding: 7px 10px; white-space: nowrap; pointer-events: none; transform: translateY(8px); }
.woocommerce-cart .jb-cart-update-toast.is-visible { transform: translateY(0); }
.woocommerce-cart .jb-cart-remove-toast { position: fixed; top: var(--jb-cart-remove-toast-top, 80px); bottom: auto; left: var(--jb-cart-remove-toast-right, calc(100vw - 24px)); z-index: 1000; gap: 10px; width: max-content; max-width: min(460px, calc(100vw - 32px)); padding: 10px 12px; word-break: keep-all; overflow-wrap: anywhere; transform: translate(-100%, 8px); }
.woocommerce-cart .jb-cart-remove-toast.is-visible { transform: translate(-100%, 0); }
.woocommerce-cart .jb-cart-remove-toast-message { min-width: 0; }
.woocommerce-cart .jb-cart-remove-undo { flex: none; color: #215db5; font-weight: 700; white-space: nowrap; text-decoration: underline; text-underline-offset: 2px; }
.woocommerce-cart .jb-cart-remove-undo:hover { color: #184b96; }
.woocommerce-cart .jb-cart-remove-undo:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
.woocommerce-cart .jb-cart-remove-close { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 32px; height: 32px; margin: -4px -6px -4px 0; padding: 0; border: 0; border-radius: 4px; background: transparent; color: #64748b; font: inherit; font-size: 22px; line-height: 1; cursor: pointer; }
.woocommerce-cart .jb-cart-remove-close:hover { background: #f1f5f9; color: #1e293b; }
.woocommerce-cart .jb-cart-remove-close:focus-visible { outline: 2px solid #215db5; outline-offset: 2px; }
.woocommerce-cart form.woocommerce-cart-form table td.actions button { min-height: 38px; height: auto; padding: 8px 14px; border: 1px solid #cbd5e1; background: #ffffff; color: #334155; }
.woocommerce-cart form.woocommerce-cart-form table td.actions button:hover:not(:disabled) { border-color: #94a3b8; background: #f8fafc; }
.woocommerce-cart form.woocommerce-cart-form table td.actions button:disabled { border-color: #e2e8f0; background: #f8fafc; color: #94a3b8; cursor: not-allowed; }
.woocommerce-cart .cart-collaterals { min-width: 0; }
.woocommerce-cart .cart-collaterals .cart_totals { width: 100%; padding: 24px; border: 1px solid #dbe2ea; border-radius: 8px; background: #ffffff; }
.woocommerce-cart .cart-collaterals h2 { margin: 0 0 18px; color: #1e293b; font-size: 18px; font-weight: 700; }
.woocommerce-cart .cart-collaterals table { width: 100%; border-collapse: collapse; }
.woocommerce-cart .cart-collaterals table th,
.woocommerce-cart .cart-collaterals table td { padding: 9px 0; border: 0; font-weight: 400; }
.woocommerce-cart .cart-collaterals table th { color: #64748b; text-align: left; }
.woocommerce-cart .cart-collaterals table td { color: #1e293b; text-align: right; }
.woocommerce-cart .cart-collaterals tr.cart-subtotal th,
.woocommerce-cart .cart-collaterals tr.cart-subtotal td { color: #64748b; font-size: 13px; }
.woocommerce-cart .cart-collaterals tr.order-total th,
.woocommerce-cart .cart-collaterals tr.order-total td { padding-top: 18px; border-top: 1px solid #e2e8f0; color: #1e293b; font-weight: 700; }
.woocommerce-cart .cart-collaterals tr.order-total td { font-size: 18px; }
.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout { margin: 20px 0 0; }
.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a { display: flex; align-items: center; justify-content: center; min-height: 50px; padding: 10px 16px; border: 1px solid #215db5; border-radius: 6px; background: #215db5; color: #ffffff; font-size: 15px; font-weight: 700; text-align: center; }
.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a:hover { border-color: #184b96; background: #184b96; }
.woocommerce-cart .jb-content > .woocommerce :is(a, button, input):focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
.woocommerce-cart form.woocommerce-cart-form table td .coupon { display: none; }
@media ( max-width: 1100px ) {
  .woocommerce-cart .jb-content > .woocommerce { grid-template-columns: minmax(0, 1fr); row-gap: 28px; max-width: 800px; margin: 0 auto; }
}
@media ( max-width: 767px ) {
  .woocommerce-cart h1.jb-content-title { margin-bottom: 16px; }
  .woocommerce-cart .jb-content > .woocommerce > .wc-empty-cart-message { margin-top: 32px; }
  .woocommerce-cart .wc-empty-cart-message .cart-empty.woocommerce-info { font-size: 18px; }
  .woocommerce-cart .jb-content > .woocommerce > p.return-to-shop { margin: 20px 0 48px; }
  .woocommerce-cart p.return-to-shop a { width: 100%; max-width: 320px; min-height: 48px; }
  .woocommerce-cart form.woocommerce-cart-form table,
  .woocommerce-cart form.woocommerce-cart-form table tbody { display: block; }
  .woocommerce-cart form.woocommerce-cart-form table thead { display: none; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 80px minmax(0, 1fr); grid-template-rows: minmax(72px, auto) auto; column-gap: 12px; row-gap: 12px; align-items: start; padding: 16px 0; border-bottom: 1px solid #e2e8f0; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td { display: block; min-width: 0; width: auto; padding: 0; border: 0; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-remove { grid-column: 3; grid-row: 1; align-self: center; justify-self: end; z-index: 1; text-align: right !important; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-thumbnail { grid-column: 1; grid-row: 1; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-thumbnail img { width: 72px; height: 72px; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-name { grid-column: 1 / -1; grid-row: 1; align-self: center; box-sizing: border-box; padding: 0 40px 0 84px; text-align: left !important; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-price { grid-column: 1; grid-row: 2; color: #475569; font-size: 13px; line-height: 1.5; text-align: left !important; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-quantity { grid-column: 2; grid-row: 2; text-align: center !important; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-subtotal { grid-column: 3; grid-row: 2; color: #1e293b; font-size: 14px; font-weight: 600; text-align: right !important; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-price::before,
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-quantity::before,
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-subtotal::before { display: block; float: none; content: attr(data-title); margin: 0 0 6px; color: #64748b; font-size: 12px; font-weight: 400; }
  .woocommerce-cart form.woocommerce-cart-form table tr.cart_item td.product-quantity .quantity { display: inline-block; vertical-align: top; }
  .woocommerce-cart form.woocommerce-cart-form table tr:last-child { display: block; }
  .woocommerce-cart form.woocommerce-cart-form table td.actions { display: block; padding-top: 16px; }
  .woocommerce-cart .jb-cart-update-toast { position: fixed; right: auto; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); left: 50%; z-index: 1000; justify-content: center; max-width: calc(100vw - 32px); padding: 10px 12px; transform: translate(-50%, 8px); }
  .woocommerce-cart .jb-cart-update-toast.is-visible { transform: translate(-50%, 0); }
  .woocommerce-cart .jb-cart-remove-toast { top: auto; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); left: 50%; gap: 12px; transform: translate(-50%, 8px); }
  .woocommerce-cart .jb-cart-remove-toast.is-visible { transform: translate(-50%, 0); }
  .woocommerce-cart form.woocommerce-cart-form table td.actions button { width: 100%; border-color: #215db5; background: #eef4ff; color: #215db5; font-weight: 700; }
  .woocommerce-cart form.woocommerce-cart-form table td.actions button:hover:not(:disabled) { border-color: #184b96; background: #e2edff; color: #184b96; }
  .woocommerce-cart form.woocommerce-cart-form table td.actions button:disabled { border-color: #dbe2ea; background: #ffffff; color: #94a3b8; font-weight: 500; }
  .woocommerce-cart .cart-collaterals .cart_totals { padding: 20px; }
}

/* WooCommerce - Checkout */
.woocommerce-checkout h1.jb-content-title { margin-bottom: 32px; }
.woocommerce-checkout #customer_details, .woocommerce-checkout h3#order_review_heading { display: none; }
.woocommerce-checkout .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-checkout form.checkout #order_review { display: grid; grid-template-columns: minmax(0, 1fr) 320px; grid-template-areas: "order-title payment-title" "order payment"; gap: 14px 40px; align-items: start; }
.woocommerce-checkout .jb-checkout-section-title { margin: 0; color: #1e293b; font-size: 18px; font-weight: 700; line-height: 1.5; }
.woocommerce-checkout .jb-checkout-order-title { grid-area: order-title; }
.woocommerce-checkout .jb-checkout-payment-title { grid-area: payment-title; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table { grid-area: order; width: 100%; min-width: 0; margin: 0; overflow: hidden; border: 1px solid #dbe2ea; border-collapse: separate; border-spacing: 0; border-radius: 8px; background: #ffffff; color: #1e293b; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table th, .woocommerce-checkout table.woocommerce-checkout-review-order-table td { padding: 14px 20px; border: 0; line-height: 1.6; vertical-align: middle; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th { border-bottom: 1px solid #dbe2ea; background: #f8fafc; color: #475569; font-weight: 500; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table thead .product-name { text-align: left; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table thead .product-total { text-align: right; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody td { border-bottom: 1px solid #e2e8f0; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody .product-name { font-weight: 600; text-align: left; word-break: keep-all; overflow-wrap: anywhere; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody .product-name a { color: #1e293b; font-weight: 600; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tbody .product-name a:hover { color: #215db5; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-quantity { float: right; margin-left: 12px; color: #64748b; font-size: 13px; font-weight: 500; white-space: nowrap; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-total { width: 160px; text-align: right; white-space: nowrap; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot th, .woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot td { padding-top: 9px; padding-bottom: 9px; color: #64748b; font-size: 13px; font-weight: 400; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot th { text-align: left; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot td { text-align: right; white-space: nowrap; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr:first-child th, .woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr:first-child td { padding-top: 18px; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total th, .woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total td { padding-top: 18px; padding-bottom: 20px; border-top: 1px solid #e2e8f0; color: #1e293b; font-size: 15px; font-weight: 700; }
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total td { font-size: 19px; }
.woocommerce-checkout #payment { grid-area: payment; min-width: 0; margin: 0; padding: 20px; border: 1px solid #dbe2ea; border-radius: 8px; background: #ffffff; color: #1e293b; }
.woocommerce-checkout #payment .wc_payment_methods { margin: 0; padding: 0; list-style: none; }
.woocommerce-checkout #payment .wc_payment_methods > li { position: relative; margin: 0; padding: 14px 14px 14px 42px; border: 1px solid #dbe2ea; border-radius: 7px; background: #ffffff; list-style: none; }
.woocommerce-checkout #payment .wc_payment_methods > li + li { margin-top: 10px; }
.woocommerce-checkout #payment .wc_payment_methods > li:has(> input:checked) { border-color: #215db5; background: #f4f8ff; }
.woocommerce-checkout #payment .wc_payment_methods > li:focus-within { border-color: #215db5; }
.woocommerce-checkout #payment .wc_payment_methods > li > input[type="radio"] { position: absolute; top: 18px; left: 14px; width: 16px; height: 16px; margin: 0; accent-color: #215db5; cursor: pointer; }
.woocommerce-checkout #payment .wc_payment_methods > li > label { display: block; color: #334155; font-size: 14px; font-weight: 600; line-height: 1.5; cursor: pointer; }
.woocommerce-checkout #payment .wc_payment_methods > li > label img { max-height: 24px; }
.woocommerce-checkout #payment .payment_box { margin: 10px 0 0 -28px; padding: 12px; border-radius: 5px; background: #eaf1fb; color: #475569; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.woocommerce-checkout #payment .payment_box p { margin: 0; }
.woocommerce-checkout #payment .payment_box p + p { margin-top: 8px; }
.woocommerce-checkout #payment .place-order { margin: 0; padding: 0; }
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper { margin-top: 20px; padding-top: 18px; border-top: 1px solid #e2e8f0; }
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper .form-row { margin: 0; }
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label.checkbox { display: block; color: #334155; font-size: 13px; line-height: 1.6; cursor: pointer; }
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] { width: 16px; height: 16px; margin: 0 8px 0 0; vertical-align: -3px; accent-color: #215db5; cursor: pointer; }
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper a { color: #215db5; text-decoration: underline; text-underline-offset: 2px; }
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper abbr.required { color: #dc2626; text-decoration: none; }
.woocommerce-checkout #payment .jb-checkout-terms-invalid label.checkbox { color: #b91c1c; }
.woocommerce-checkout #payment .jb-checkout-terms-error { margin: 8px 0 0; color: #b91c1c; font-size: 13px; line-height: 1.5; }
.woocommerce-checkout #payment #place_order { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px; height: auto; margin-top: 20px; padding: 10px 16px; border: 1px solid #215db5; border-radius: 6px; background: #215db5; color: #ffffff; font-size: 15px; font-weight: 700; text-align: center; }
.woocommerce-checkout #payment #place_order:hover { border-color: #184b96; background: #184b96; }
.woocommerce-checkout form.checkout :is(a, button, input, select, textarea):focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
.woocommerce-checkout ul.woocommerce-error { margin: 0 0 20px; padding: 12px 16px; border: 1px solid #fecaca; border-radius: 6px; background: #fff7f7; color: #991b1b; list-style: none; }
.woocommerce-checkout .woocommerce-form-coupon-toggle { margin: 0 0 20px; }
.woocommerce-checkout .checkout_coupon { margin: 0 0 24px; padding: 16px; border: 1px solid #dbe2ea; border-radius: 8px; }
.woocommerce-checkout .checkout_coupon p { margin: 0 0 10px; }
.woocommerce-checkout .checkout_coupon input { min-height: 40px; padding: 8px 10px; border: 1px solid #cbd5e1; border-radius: 6px; }
@media ( max-width: 1100px ) {
  .woocommerce-checkout form.checkout #order_review { grid-template-columns: minmax(0, 1fr); grid-template-areas: "order-title" "order" "payment-title" "payment"; gap: 14px; max-width: 800px; margin: 0 auto; }
  .woocommerce-checkout .jb-checkout-payment-title { margin-top: 18px; }
}
@media ( max-width: 767px ) {
  .woocommerce-checkout h1.jb-content-title { margin-bottom: 16px; }
  .woocommerce-checkout form.checkout #order_review { gap: 12px; }
  .woocommerce-checkout table.woocommerce-checkout-review-order-table th, .woocommerce-checkout table.woocommerce-checkout-review-order-table td { padding: 12px 14px; }
  .woocommerce-checkout table.woocommerce-checkout-review-order-table .product-quantity { float: none; margin-left: 5px; }
  .woocommerce-checkout table.woocommerce-checkout-review-order-table .product-total { width: 110px; }
  .woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total th, .woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot tr.order-total td { padding-top: 16px; padding-bottom: 16px; }
  .woocommerce-checkout #payment { padding: 16px; }
  .woocommerce-checkout .jb-checkout-payment-title { margin-top: 14px; }
}

/* WooCommerce - Order Received */
.woocommerce-order-received .woocommerce-order p.woocommerce-thankyou-order-received { font-size: 18px; }
.woocommerce-order-received .woocommerce-order h2 { font-size: 18px; }
.woocommerce-order-received .woocommerce-order table.woocommerce-table--order-downloads { width: 100%; }
.woocommerce-order-received .woocommerce-order table.woocommerce-table--order-downloads th { padding: 10px 0px; border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; background-color: #fafafa; }
.woocommerce-order-received .woocommerce-order table.woocommerce-table--order-downloads td { padding: 10px 0px; border-bottom: 1px solid #e0e0e0; text-align: center; }
.woocommerce-order-received .woocommerce-order table.woocommerce-table--order-details { width: 100%; border-collapse: collapse; }
.woocommerce-order-received .woocommerce-order table.woocommerce-table--order-details th { padding: 10px 0px; border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; background-color: #fafafa; }
.woocommerce-order-received .woocommerce-order table.woocommerce-table--order-details td { padding: 10px 0px; border-bottom: 1px solid #e0e0e0; text-align: center; }
.woocommerce-order-received .woocommerce-order p.order-again { display: none; }
.woocommerce-order-received .woocommerce-order table.order_details { width: 100%; border-collapse: collapse; border-top: 1px solid #e0e0e0; }
.woocommerce-order-received .woocommerce-order table.order_details th { padding: 10px 0px; border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; background-color: #fafafa; }
.woocommerce-order-received .woocommerce-order table.order_details td { padding: 10px 0px; border-bottom: 1px solid #e0e0e0; text-align: center; }
.woocommerce-order-received .woocommerce-order .woocommerce-customer-details { display: none; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) h1.jb-content-title { margin-bottom: 32px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-order { max-width: 1152px; margin: 0 auto; color: #1e293b; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-order > .woocommerce-thankyou-order-received,
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-order > .woocommerce-order-overview { display: none; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-intro { padding: 28px 30px; border: 1px solid #c9dcf8; border-radius: 10px; background: #f4f8ff; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-status { display: inline-flex; align-items: center; min-height: 26px; padding: 3px 10px; border-radius: 13px; background: #dceafd; color: #184b96; font-size: 12px; font-weight: 700; line-height: 1.4; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-intro h2 { margin: 14px 0 8px; color: #1e293b; font-size: 22px; font-weight: 700; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-intro p { max-width: 720px; margin: 0; color: #475569; font-size: 14px; line-height: 1.7; word-break: keep-all; overflow-wrap: anywhere; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-order-meta { display: flex; flex-wrap: wrap; gap: 4px 24px; margin-top: 22px; padding-top: 18px; border-top: 1px solid #dbe7f7; color: #64748b; font-size: 13px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-order-meta strong { margin-left: 6px; color: #334155; font-weight: 600; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-intro { border-color: #b7e6ce; background: #f1fbf5; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-status { background: #d8f3e3; color: #166534; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-order-meta { border-color: #d6eee0; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-intro { padding: 20px 30px 18px; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-intro h2 { margin: 10px 0 6px; font-size: 20px; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-order-meta { margin-top: 16px; padding-top: 14px; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .woocommerce-order-downloads { margin: 32px 0 0; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .woocommerce-order-details { margin-top: 32px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-card { margin-top: 24px; padding: 28px 30px 22px; border: 1px solid #dbe2ea; border-radius: 10px; background: #ffffff; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 20px; border-bottom: 1px solid #e2e8f0; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-head h2 { margin: 0; color: #1e293b; font-size: 18px; font-weight: 700; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-amount { display: flex; align-items: baseline; gap: 12px; white-space: nowrap; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-amount span { color: #64748b; font-size: 13px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-amount strong { color: #184b96; font-size: 23px; line-height: 1.3; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-details { margin: 0; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-details > div { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 20px; align-items: center; padding: 16px 0; border-bottom: 1px solid #edf0f4; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-details dt { color: #64748b; font-size: 13px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-details dd { min-width: 0; margin: 0; color: #1e293b; font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-details .jb-vbank-account { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-account span { font-size: 17px; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: .01em; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-copy-button { flex: none; height: 32px; padding: 0 10px; border: 1px solid #c9d9ef; border-radius: 5px; background: #f4f8ff; color: #215db5; font-size: 12px; font-weight: 700; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-copy-button:hover { border-color: #215db5; background: #e8f1ff; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-copy-button:focus-visible, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-actions a:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-copy-status { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-note { margin: 18px 0 0; color: #64748b; font-size: 13px; line-height: 1.6; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-order-details { margin-top: 32px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-order-details h2, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-order-downloads h2 { margin: 0 0 16px; color: #1e293b; font-size: 18px; font-weight: 700; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-downloads { width: 100%; margin: 0; overflow: hidden; border: 1px solid #dbe2ea; border-collapse: separate; border-spacing: 0; border-radius: 8px; background: #ffffff; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details th, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details td, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-downloads th, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-downloads td { padding: 14px 20px; border: 0; line-height: 1.6; vertical-align: middle; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details thead th, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-downloads thead th { border-bottom: 1px solid #dbe2ea; background: #f8fafc; color: #475569; font-weight: 500; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tbody td, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-downloads tbody td { border-bottom: 1px solid #e2e8f0; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details .product-name { color: #1e293b; font-weight: 600; text-align: left; word-break: keep-all; overflow-wrap: anywhere; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details .product-name a { color: #1e293b; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details .product-name a:hover { color: #215db5; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details .product-quantity { float: right; margin-left: 12px; color: #64748b; font-size: 13px; font-weight: 500; white-space: nowrap; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details .product-total { width: 170px; text-align: right; white-space: nowrap; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tfoot th, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tfoot td { padding-top: 12px; padding-bottom: 12px; background: #ffffff; color: #64748b; font-size: 13px; font-weight: 400; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tfoot th { text-align: left; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tfoot td { text-align: right; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tfoot tr:last-child th, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tfoot tr:last-child td { padding-top: 18px; padding-bottom: 18px; color: #1e293b; font-size: 15px; font-weight: 700; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details tfoot tr:last-child td { font-size: 18px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-actions a { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 10px 18px; border: 1px solid #215db5; border-radius: 6px; font-size: 14px; font-weight: 700; text-align: center; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-action-primary { background: #215db5; color: #ffffff; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-action-primary:hover { border-color: #184b96; background: #184b96; color: #ffffff; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-action-secondary { background: #ffffff; color: #215db5; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-action-secondary:hover { background: #f4f8ff; color: #184b96; }
.woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-customer-details, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .woocommerce-order p.order-again { display: none; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads { table-layout: fixed; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads .download-product { width: 36%; text-align: left; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads .download-remaining,
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads .download-expires { width: 15%; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads .download-file { width: 34%; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads td.download-product a { color: #1e293b; font-weight: 600; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads td.download-product a:hover { color: #215db5; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-control { display: flex; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-button { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 8px 14px; border: 1px solid #215db5; border-radius: 6px; background: #215db5; color: #ffffff; font-size: 13px; font-weight: 700; line-height: 1.4; white-space: nowrap; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-button:hover { border-color: #184b96; background: #184b96; color: #ffffff; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-button:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-name { min-width: 0; overflow: hidden; color: #64748b; font-size: 12px; line-height: 1.4; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .woocommerce-order-details h2 { color: #475569; font-size: 16px; font-weight: 600; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-details { border-color: #e2e8f0; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-details thead th { padding-top: 10px; padding-bottom: 10px; background: #fbfcfe; font-size: 13px; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-details tbody td { padding-top: 11px; padding-bottom: 11px; color: #475569; font-size: 13px; }
.woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-details .product-name { font-weight: 500; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details { margin-top: 32px; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details h2 { margin: 0 0 16px; color: #475569; font-size: 16px; font-weight: 600; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details dl { margin: 0; padding: 0 20px; border: 1px solid #e2e8f0; border-radius: 8px; background: #ffffff; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details dl > div { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 52px; padding: 12px 0; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details dl > div + div { border-top: 1px solid #e2e8f0; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details dt { color: #64748b; font-size: 13px; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details dd { margin: 0; color: #1e293b; font-size: 14px; font-weight: 600; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details a { display: inline-flex; align-items: center; justify-content: center; min-height: 36px; padding: 7px 12px; border: 1px solid #c9d9ef; border-radius: 6px; background: #f4f8ff; color: #215db5; font-size: 13px; font-weight: 700; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details a:hover { border-color: #215db5; background: #e8f1ff; color: #184b96; }
.woocommerce-order-received.jb-card-received .jb-card-payment-details a:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
@media ( max-width: 1023px ) {
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-control { flex-direction: column; align-items: flex-end; gap: 6px; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-name { max-width: 100%; text-align: right; white-space: normal; overflow-wrap: anywhere; }
}
@media ( max-width: 767px ) {
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) h1.jb-content-title { margin-bottom: 20px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-intro { padding: 22px 20px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-intro h2 { font-size: 20px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-card { padding: 22px 20px 18px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-head { display: block; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-amount { justify-content: space-between; margin-top: 16px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-payment-details > div { grid-template-columns: minmax(0, 1fr); gap: 4px; padding: 13px 0; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details th, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details td, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-downloads th, .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-downloads td { padding: 12px 14px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details .product-quantity { float: none; margin-left: 5px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) table.woocommerce-table--order-details .product-total { width: 110px; }
  .woocommerce-order-received:is(.jb-vbank-received, .jb-card-received) .jb-vbank-actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-intro { padding: 20px; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .woocommerce-order-downloads { margin-top: 28px; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads { display: block; overflow: visible; border: 0; background: transparent; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads thead { display: none; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody { display: grid; gap: 12px; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 12px; padding: 18px; border: 1px solid #dbe2ea; border-radius: 8px; background: #ffffff; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td { display: block; width: auto; padding: 0; border: 0; background: transparent; text-align: left !important; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-product { width: 100%; min-width: 0; grid-column: 1 / -1; padding-bottom: 12px; border-bottom: 1px solid #e2e8f0; font-size: 15px; font-weight: 600; word-break: keep-all; overflow-wrap: anywhere; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-product::before,
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-file::before { display: none; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-remaining,
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-expires { width: 100%; min-width: 0; color: #334155; font-size: 13px; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-remaining::before,
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-expires::before { display: block; float: none; margin-bottom: 4px; color: #64748b; font-size: 12px; font-weight: 400; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-remaining::before { content: '잔여 횟수'; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-expires::before { content: '만료일'; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) table.woocommerce-table--order-downloads tbody td.download-file { width: 100%; min-width: 0; grid-column: 1 / -1; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-control { align-items: stretch; gap: 10px; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-name { text-align: left; font-size: 13px; }
  .woocommerce-order-received:is(.jb-vbank-paid, .jb-card-received) .jb-vbank-download-button { width: 100%; min-height: 44px; }
}

/* My Account */
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce .woocommerce-MyAccount-content { float: none; width: 100%; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 24px; padding: 0; list-style: none; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul::before,
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul::after { display: none; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li { float: none; margin: 0; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard { display: none; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a { display: flex; align-items: center; min-height: 40px; padding: 9px 15px; border: 1px solid #dbe2ea; border-radius: 6px; background: #fff; color: #334155; font-weight: 500; line-height: 1.4; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:hover { border-color: #8daee0; background: #f3f7fd; color: #215db5; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a { border-color: #215db5; background: #215db5; color: #fff; font-weight: 700; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:focus-visible { outline: 2px solid #215db5; outline-offset: 2px; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-content { display: none; margin: 0 0 40px; }
.woocommerce-account.woocommerce-orders .woocommerce .woocommerce-MyAccount-content,
.woocommerce-account.woocommerce-downloads .woocommerce .woocommerce-MyAccount-content,
.woocommerce-account.woocommerce-view-order .woocommerce .woocommerce-MyAccount-content { display: block; }

/* My Account - Orders */
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders { width: 100%; margin: 0; border: 1px solid #dbe2ea; border-radius: 8px; border-collapse: separate; border-spacing: 0; table-layout: fixed; overflow: hidden; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders th,
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders td { box-sizing: border-box; padding: 15px 12px; border: 0; border-bottom: 1px solid #e2e8f0; background: #fff; color: #1e293b; font-weight: 400; line-height: 1.55; vertical-align: middle; text-align: left; overflow-wrap: anywhere; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders thead th { padding-top: 13px; padding-bottom: 13px; background: #f8fafc; color: #475569; font-weight: 600; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody tr:last-child th,
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody tr:last-child td { border-bottom: 0; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__header-order-number { width: 9%; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__header-order-products { width: 40%; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__header-order-date { width: 11%; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__header-order-status { width: 8%; padding-left: 4px; padding-right: 4px; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__header-order-total { width: 10%; text-align: right; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__header-order-actions { width: 22%; text-align: right; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-number a { color: #215db5; font-weight: 700; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-products { font-weight: 500; }
@media ( min-width: 768px ) { .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-status { padding-left: 4px; padding-right: 4px; } }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-products-more { color: #64748b; font-weight: 400; white-space: nowrap; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-date { color: #64748b; white-space: nowrap; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-total { font-weight: 700; text-align: right; white-space: nowrap; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions { text-align: right; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-status { display: inline-block; padding: 4px 7px; border-radius: 99px; background: #f1f5f9; color: #475569; font-size: 12px; font-weight: 700; line-height: 1.4; white-space: nowrap; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-status--completed,
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-status--processing { background: #e8f7ee; color: #17673d; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-status--pending,
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-status--on-hold,
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-status--awaiting-vbank { background: #fff5dd; color: #805300; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .jb-order-status--failed { background: #fef0f0; color: #aa2929; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; margin: 2px 0 2px 5px; padding: 5px 9px; border: 1px solid #cbd5e1; border-radius: 5px; background: #fff; color: #334155; font-size: 12px; font-weight: 600; line-height: 1.4; text-decoration: none; white-space: nowrap; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button:hover { border-color: #215db5; color: #215db5; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button.pay { border-color: #215db5; background: #215db5; color: #fff; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button.pay:hover { border-color: #174d9b; background: #174d9b; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button.cancel { border-color: #f1c5c5; color: #a52b2b; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button.cancel:hover { background: #fef2f2; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button:focus-visible { outline: 2px solid #215db5; outline-offset: 2px; }
.woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.iamport_refund_request { display: none; }
.woocommerce-account .woocommerce .woocommerce-pagination { margin: 20px 0 0; }
.woocommerce-account .woocommerce .woocommerce-pagination a { display: inline-flex; align-items: center; min-height: 38px; padding: 7px 13px; border: 1px solid #cbd5e1; border-radius: 5px; background: #fff; color: #215db5; font-weight: 600; }
.woocommerce-account .woocommerce .woocommerce-pagination a:hover { border-color: #215db5; background: #f3f7fd; }

@media ( max-width: 767px ) {
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation { overflow-x: auto; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul { flex-wrap: nowrap; gap: 6px; margin-bottom: 20px; padding-bottom: 3px; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li { flex: 0 0 auto; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a { min-height: 40px; padding: 8px 12px; white-space: nowrap; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders,
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody { display: block; width: 100%; border: 0; border-radius: 0; overflow: visible; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders thead { display: none; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 12px; margin-bottom: 12px; padding: 16px; border: 1px solid #dbe2ea; border-radius: 8px; background: #fff; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody tr:last-child { margin-bottom: 0; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody th,
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody td { display: block; min-width: 0; width: auto; padding: 0; border: 0; background: transparent; text-align: left !important; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-number { grid-column: 1; grid-row: 1; font-size: 15px; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-status { grid-column: 2; grid-row: 1; text-align: right !important; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-products { grid-column: 1 / -1; grid-row: 2; padding-bottom: 12px; border-bottom: 1px solid #e2e8f0; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-date { grid-column: 1; grid-row: 3; white-space: normal; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-total { grid-column: 2; grid-row: 3; text-align: right !important; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders tbody td::before { display: none !important; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-date::before,
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-total::before { display: block !important; float: none; margin-bottom: 3px; color: #64748b; content: attr(data-title); font-size: 12px; font-weight: 400; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders .woocommerce-orders-table__cell-order-actions { grid-column: 1 / -1; grid-row: 4; display: flex; flex-wrap: wrap; gap: 8px; padding-top: 12px; border-top: 1px solid #e2e8f0; text-align: left; }
  .woocommerce-account .woocommerce table.woocommerce-MyAccount-orders a.woocommerce-button { min-height: 42px; margin: 0; padding: 9px 13px; font-size: 13px; }
}

/* My Account - View Order */
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary { display: block; padding: 22px 24px; border: 1px solid #dbe2ea; border-radius: 8px; background: #f8fafc; color: #1e293b; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-head { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-head strong { font-size: 20px; font-weight: 700; line-height: 1.5; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-status { display: inline-block; padding: 4px 9px; border-radius: 99px; background: #f1f5f9; color: #475569; font-size: 12px; font-weight: 700; line-height: 1.4; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-status--completed,
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-status--processing { background: #e8f7ee; color: #17673d; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-status--pending,
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-status--on-hold,
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-status--awaiting-vbank { background: #fff5dd; color: #805300; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-status--failed { background: #fef0f0; color: #aa2929; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px; margin-top: 12px; color: #64748b; font-size: 13px; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-meta time { margin-left: 5px; color: #334155; font-weight: 600; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-meta a { color: #215db5; font-weight: 600; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-meta a:hover { text-decoration: underline; }
.woocommerce-view-order .woocommerce-MyAccount-content h2 { margin: 0 0 16px; color: #1e293b; font-size: 18px; font-weight: 700; }
.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-order-downloads,
.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-order-details { margin-top: 32px; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details { width: 100%; margin: 0; overflow: hidden; border: 1px solid #dbe2ea; border-collapse: separate; border-spacing: 0; border-radius: 8px; background: #fff; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads { table-layout: fixed; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads th,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details th,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details td { padding: 13px 18px; border: 0; line-height: 1.6; vertical-align: middle; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads thead th,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details thead th { border-bottom: 1px solid #dbe2ea; background: #f8fafc; color: #475569; font-weight: 600; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads tr:not(:last-child) td,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details tbody tr:not(:last-child) td { border-bottom: 1px solid #e2e8f0; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads .download-product { width: 36%; text-align: left; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads .download-remaining,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads .download-expires { width: 15%; text-align: center; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads .download-file { width: 34%; text-align: right; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-product { font-weight: 600; word-break: keep-all; overflow-wrap: anywhere; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-product a,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details td.product-name a { color: #1e293b; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-product a:hover,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details td.product-name a:hover { color: #215db5; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-control { display: flex; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-name { min-width: 0; overflow: hidden; color: #64748b; font-size: 12px; line-height: 1.4; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-button { display: inline-flex; flex: none; align-items: center; justify-content: center; min-height: 38px; padding: 8px 14px; border: 1px solid #215db5; border-radius: 6px; background: #215db5; color: #fff; font-size: 13px; font-weight: 700; line-height: 1.4; white-space: nowrap; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-button:hover { border-color: #184b96; background: #184b96; color: #fff; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-button:focus-visible,
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-meta a:focus-visible,
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment a:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details .product-name { color: #1e293b; font-weight: 600; text-align: left; word-break: keep-all; overflow-wrap: anywhere; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details .product-quantity { float: right; margin-left: 12px; color: #64748b; font-size: 13px; font-weight: 500; white-space: nowrap; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details .product-total { width: 170px; text-align: right; white-space: nowrap; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot th,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot td { padding-top: 13px; padding-bottom: 13px; border-top: 1px solid #e2e8f0; background: #fff; color: #64748b; font-size: 13px; font-weight: 400; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot th { text-align: left; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot td { text-align: right; }
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot tr:last-child td { color: #1e293b; font-size: 16px; font-weight: 700; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment { margin-top: 32px; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment dl { margin: 0; padding: 0 20px; border: 1px solid #dbe2ea; border-radius: 8px; background: #fff; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment dl > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 16px; align-items: center; min-height: 52px; padding: 12px 0; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment dl > div + div { border-top: 1px solid #e2e8f0; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment dt { color: #64748b; font-size: 13px; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment dd { min-width: 0; margin: 0; color: #1e293b; font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment a { display: inline-flex; align-items: center; min-height: 36px; padding: 7px 12px; border: 1px solid #c9d9ef; border-radius: 6px; background: #f4f8ff; color: #215db5; font-size: 13px; font-weight: 700; }
.woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment a:hover { border-color: #215db5; background: #e8f1ff; color: #184b96; }
.woocommerce-view-order .woocommerce-MyAccount-content p.order-again,
.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-customer-details { display: none; }

@media ( max-width: 1023px ) {
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-control { flex-direction: column; align-items: flex-end; gap: 6px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-name { max-width: 100%; text-align: right; white-space: normal; overflow-wrap: anywhere; }
}
@media ( max-width: 767px ) {
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary { padding: 20px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-head strong { font-size: 18px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-summary-meta { align-items: flex-start; flex-direction: column; gap: 10px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-order-downloads,
  .woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-order-details,
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment { margin-top: 28px; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads,
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads tbody { display: block; width: 100%; overflow: visible; border: 0; background: transparent; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads thead { display: none; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 12px; margin-bottom: 12px; padding: 18px; border: 1px solid #dbe2ea; border-radius: 8px; background: #fff; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads tr:last-child { margin-bottom: 0; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td { display: block; min-width: 0; width: auto; padding: 0; border: 0 !important; background: transparent; text-align: left !important; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td::before { display: none !important; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-product { grid-column: 1 / -1; width: 100%; padding-bottom: 12px; border-bottom: 1px solid #e2e8f0 !important; font-size: 15px; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-remaining,
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-expires { width: 100%; color: #334155; font-size: 13px; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-remaining::before,
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-expires::before { display: block !important; float: none; margin-bottom: 4px; color: #64748b; font-size: 12px; font-weight: 400; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-remaining::before { content: '잔여 횟수'; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-expires::before { content: '만료일'; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-downloads td.download-file { grid-column: 1 / -1; width: 100%; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-control { align-items: stretch; gap: 10px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-name { text-align: left; font-size: 13px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-vbank-download-button { width: 100%; min-height: 44px; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details th,
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details td { padding: 12px 14px; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details .product-quantity { float: none; margin-left: 5px; }
  .woocommerce-view-order .woocommerce-MyAccount-content table.woocommerce-table--order-details .product-total { width: 105px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment dl { padding: 0 16px; }
  .woocommerce-view-order .woocommerce-MyAccount-content .jb-view-order-payment dl > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
}

/* My Account - Downloads */
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads { width: 100%; margin: 0; overflow: hidden; border: 1px solid #dbe2ea; border-collapse: separate; border-spacing: 0; border-radius: 8px; table-layout: fixed; background: #fff; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads th,
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td { padding: 14px 16px; border: 0; line-height: 1.6; vertical-align: middle; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads thead th { border-bottom: 1px solid #dbe2ea; background: #f8fafc; color: #475569; font-weight: 600; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads tr:not(:last-child) td { border-bottom: 1px solid #e2e8f0; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads .download-product { width: 30%; text-align: left; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads .download-order { width: 17%; text-align: left; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads .download-remaining,
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads .download-expires { width: 12%; text-align: center; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads .download-file { width: 29%; text-align: right; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-product { color: #1e293b; font-weight: 600; word-break: keep-all; overflow-wrap: anywhere; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-product a { color: #1e293b; }
.woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-product a:hover { color: #215db5; }
.woocommerce-downloads .woocommerce .jb-account-download-order { display: flex; align-items: baseline; gap: 8px; }
.woocommerce-downloads .woocommerce .jb-account-download-order a,
.woocommerce-downloads .woocommerce .jb-account-download-order strong { color: #215db5; font-weight: 700; }
.woocommerce-downloads .woocommerce .jb-account-download-order time { color: #64748b; font-size: 12px; white-space: nowrap; }
.woocommerce-downloads .woocommerce .jb-vbank-download-control { display: flex; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0; }
.woocommerce-downloads .woocommerce .jb-vbank-download-name { min-width: 0; overflow: hidden; color: #64748b; font-size: 12px; line-height: 1.4; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
.woocommerce-downloads .woocommerce .jb-vbank-download-button { display: inline-flex; flex: none; align-items: center; justify-content: center; min-height: 38px; padding: 8px 14px; border: 1px solid #215db5; border-radius: 6px; background: #215db5; color: #fff; font-size: 13px; font-weight: 700; line-height: 1.4; white-space: nowrap; }
.woocommerce-downloads .woocommerce .jb-vbank-download-button:hover { border-color: #184b96; background: #184b96; color: #fff; }
.woocommerce-downloads .woocommerce .jb-vbank-download-button:focus-visible,
.woocommerce-downloads .woocommerce .jb-account-download-order a:focus-visible { outline: 2px solid #215db5; outline-offset: 3px; }
@media ( max-width: 1023px ) {
  .woocommerce-downloads .woocommerce .jb-vbank-download-control { flex-direction: column; align-items: flex-end; gap: 6px; }
  .woocommerce-downloads .woocommerce .jb-vbank-download-name { max-width: 100%; text-align: right; white-space: normal; overflow-wrap: anywhere; }
}
@media ( max-width: 900px ) {
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads,
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads tbody { display: block; width: 100%; overflow: visible; border: 0; background: transparent; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads thead { display: none; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 12px; margin-bottom: 12px; padding: 18px; border: 1px solid #dbe2ea; border-radius: 8px; background: #fff; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads tr:last-child { margin-bottom: 0; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td { display: block; min-width: 0; width: auto; padding: 0; border: 0 !important; background: transparent; text-align: left !important; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td::before { display: none !important; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-product { grid-column: 1 / -1; width: 100%; padding-bottom: 12px; border-bottom: 1px solid #e2e8f0 !important; font-size: 15px; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-order { grid-column: 1 / -1; width: 100%; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-remaining,
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-expires { width: 100%; color: #334155; font-size: 13px; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-order::before,
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-remaining::before,
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-expires::before { display: block !important; float: none; margin-bottom: 4px; color: #64748b; font-size: 12px; font-weight: 400; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-order::before { content: '주문 정보'; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-remaining::before { content: '잔여 횟수'; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-expires::before { content: '만료일'; }
  .woocommerce-downloads .woocommerce table.woocommerce-table--order-downloads td.download-file { grid-column: 1 / -1; width: 100%; }
  .woocommerce-downloads .woocommerce .jb-account-download-order { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; }
  .woocommerce-downloads .woocommerce .jb-vbank-download-control { align-items: stretch; gap: 10px; }
  .woocommerce-downloads .woocommerce .jb-vbank-download-name { text-align: left; font-size: 13px; }
  .woocommerce-downloads .woocommerce .jb-vbank-download-button { width: 100%; min-height: 44px; }
}

/* Product */
h2.jb-heading-product { margin: 56px 0 28px; padding: 0; border: 0; color: #1e2938; font-family: "Noto Sans KR", "Malgun Gothic", sans-serif; font-size: 22px; font-weight: 700; line-height: 1.45; letter-spacing: -0.02em; text-align: center; word-break: keep-all; overflow-wrap: anywhere; }
h2.jb-heading-product::after { content: ""; display: block; width: 40px; height: 2px; margin: 12px auto 0; background: #215db5; }
@media ( max-width: 767px ) { h2.jb-heading-product { margin: 42px 0 24px; font-size: 18px; } h2.jb-heading-product::after { width: 36px; margin-top: 10px; } }
.jb-product-description-wrap { font-family: "Noto Sans KR", sans-serif; font-weight: 500; font-size: 18px; color: #222222; }
p.jb-product-big-title { margin: 30px 0px 20px 0px; padding-bottom: 10px; border-bottom: 2px solid #dadada; text-align: center; font-family: "Noto Sans KR", sans-serif; font-size: 20px; font-weight: 500; color: #333333; }
@media ( max-width: 767px ) {
  .jb-product-description-wrap { font-size: 16px; }
  p.jb-product-big-title { font-size: 20px; }
}

