/* Native WooCommerce cart and checkout, using the existing DENYA design. */
body.denya-shop-site.woocommerce-cart #main-content,
body.denya-shop-site.woocommerce-checkout #main-content,
body.denya-shop-site.woocommerce-account #main-content { overflow: visible; background: #f3f7fa; }
body.denya-shop-site.woocommerce-cart #main-content > .container,
body.denya-shop-site.woocommerce-checkout #main-content > .container,
body.denya-shop-site.woocommerce-account #main-content > .container { width: min(92%, 1180px); max-width: 1180px; padding: 42px 0 64px; }
body.denya-shop-site.woocommerce-cart #left-area,
body.denya-shop-site.woocommerce-checkout #left-area,
body.denya-shop-site.woocommerce-account #left-area { float: none; width: 100%; padding-right: 0; }
body.denya-shop-site.woocommerce-cart #sidebar,
body.denya-shop-site.woocommerce-checkout #sidebar,
body.denya-shop-site.woocommerce-account #sidebar,
body.denya-shop-site.woocommerce-cart #main-content > .container::before,
body.denya-shop-site.woocommerce-checkout #main-content > .container::before,
body.denya-shop-site.woocommerce-account #main-content > .container::before { display: none; }
.denya-checkout-intro { padding: 24px 28px; margin: 0 0 28px; border: 1px solid #d7e4ec; border-left: 5px solid #0b70b7; border-radius: 14px; background: #fff; }
.denya-checkout-intro h2 { margin: 0 0 10px; padding: 0; font-size: clamp(22px, 3vw, 30px); }
.denya-checkout-intro p { margin: 0; color: #516b7c; line-height: 1.7; }
.denya-checkout-intro .denya-shop-eyebrow { margin-bottom: 10px; color: #0b70b7; }
.denya-order-spec { flex: 1 0 100%; min-width: 0; padding: 22px; margin: 0 0 22px; border: 1px solid #d7e4ec; border-radius: 14px; background: #f2f7fa; }
.denya-order-spec legend { padding: 0 7px; color: #06385f; font-size: 20px; font-weight: 700; }
.denya-order-spec > p { line-height: 1.6; color: #516b7c; margin-bottom: 18px; }
.denya-order-spec label { display: block; margin: 16px 0 7px; font-weight: 650; color: #102f45; }
.denya-order-spec input,
.denya-order-spec select,
.denya-order-spec textarea { display: block; width: 100%; min-height: 46px; padding: 12px; border: 1px solid #a6bac8; border-radius: 8px; background: #fff; color: #102f45; font: inherit; }
.denya-order-spec textarea { resize: vertical; }
.denya-order-spec [hidden] { display: none !important; }
.denya-order-spec { scroll-margin-top: 110px; }
.denya-erp-product-details { margin: 0 0 22px; padding: 18px 22px; border: 1px solid #d7e4ec; border-radius: 12px; background: #f2f7fa; }
.denya-erp-product-details dl { margin: 0; }
.denya-erp-product-details dl > div { display: grid; grid-template-columns: minmax(110px, 1fr) minmax(0, 2fr); gap: 12px; margin-bottom: 10px; }
.denya-erp-product-details dt { font-weight: 650; color: #102f45; }
.denya-erp-product-details dd { margin: 0; overflow-wrap: anywhere; }
.denya-erp-product-details p { margin: 12px 0 0; color: #516b7c; line-height: 1.6; }
.denya-shop-product-choices { margin: 0 24px 20px; padding: 16px; border: 1px solid #d7e4ec; border-radius: 10px; background: #f3f7fa; }
body.denya-shop-review-mode.woocommerce ul.products { align-items: start; }
body.denya-shop-review-mode.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link { flex: 0 1 auto; }
body.denya-shop-review-mode.woocommerce ul.products li.product .price { margin-right: 24px; margin-left: 24px; }
body.denya-shop-review-mode .denya-shop-loop-actions { grid-template-columns: 1fr; }
.denya-shop-product-choices p { margin: 0 0 10px; color: #102f45; font-weight: 700; }
body.denya-shop-site .woocommerce .denya-shop-product-choices ul,
body.denya-shop-site.woocommerce .denya-shop-product-choices ul { display: grid; gap: 8px; padding: 0; margin: 0; list-style: none; }
body.denya-shop-site .denya-shop-product-choices li { padding: 0; margin: 0; }
body.denya-shop-site .denya-shop-product-choices a { display: block; padding: 10px 12px; border: 1px solid #ccdde9; border-radius: 7px; background: #fff; color: #06385f; font-size: 14px; line-height: 1.45; font-weight: 600; }
body.denya-shop-site .denya-shop-product-choices a:hover,
body.denya-shop-site .denya-shop-product-choices a:focus-visible { border-color: #0b70b7; background: #e8f3fa; }
body.denya-shop-site .woocommerce form .form-row input.input-text,
body.denya-shop-site .woocommerce form .form-row textarea { min-height: 46px; padding: 12px 14px; background: #fff; border: 1px solid #a6bac8; border-radius: 8px; color: #102f45; font-size: 16px; }
body.denya-shop-site .woocommerce form .form-row label { font-weight: 600; color: #102f45; line-height: 1.6; padding-bottom: 6px; }
body.denya-shop-site .woocommerce .select2-container .select2-selection--single { min-height: 46px; border: 1px solid #a6bac8; border-radius: 8px; background: #fff; }
body.denya-shop-site .woocommerce .select2-selection--single .select2-selection__rendered { padding: 8px 14px; color: #102f45; }
body.denya-shop-site .woocommerce .select2-selection--single .select2-selection__arrow { height: 44px; }
body.denya-shop-site .woocommerce .button,
body.denya-shop-site .woocommerce button.button,
body.denya-shop-site .woocommerce a.button,
body.denya-shop-site .single_add_to_cart_button { min-height: 46px; padding: 13px 22px !important; border: 0 !important; border-radius: 9px !important; background: #06385f !important; color: #fff !important; font-family: inherit; font-size: 16px !important; font-weight: 700; line-height: 1.45 !important; text-align: center; }
body.denya-shop-site .woocommerce .button:hover,
body.denya-shop-site .single_add_to_cart_button:hover { background: #0b70b7 !important; }
body.denya-shop-site .woocommerce .button::after,
body.denya-shop-site .single_add_to_cart_button::after { display: none !important; }
body.denya-shop-site .woocommerce .button:disabled { opacity: .55; }
body.denya-shop-site .woocommerce table.shop_table { background: #fff; border: 1px solid #d7e4ec; border-radius: 12px; border-collapse: separate; font-size: 15px; }
body.denya-shop-site .woocommerce table.shop_table th { color: #102f45; font-weight: 700; }
body.denya-shop-site .woocommerce table.shop_table td { border-color: #e5edf3; padding: 15px 12px; vertical-align: top; }
body.denya-shop-site .woocommerce table.shop_table .product-name a { color: #06385f; font-weight: 650; }
body.denya-shop-site .woocommerce .quantity input.qty { width: 88px; min-height: 46px; border: 1px solid #a6bac8; border-radius: 8px; background: #fff !important; color: #102f45 !important; font-size: 16px; }
body.denya-shop-site .woocommerce td.product-name dl.variation { margin-top: 10px; font-size: 14px; line-height: 1.5; }
body.denya-shop-site .woocommerce .cart-collaterals .cart_totals { padding: 24px; background: #fff; border: 1px solid #d7e4ec; border-radius: 12px; }
body.denya-shop-site .woocommerce .cart-collaterals .cart_totals h2 { margin: 0 0 18px; font-size: 24px; }
body.denya-shop-site .woocommerce #customer_details { margin-bottom: 32px; }
body.denya-shop-site .woocommerce #customer_details h3,
body.denya-shop-site .woocommerce #order_review_heading { margin-bottom: 18px; font-size: 25px; }
body.denya-shop-site .woocommerce-checkout #payment { background: #e7f0f6; border: 1px solid #ccdde9; border-radius: 12px; }
body.denya-shop-site .woocommerce-checkout #payment div.payment_box { background: #fff; color: #102f45; line-height: 1.7; }
body.denya-shop-site .woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #fff; }
body.denya-shop-site .woocommerce #place_order { float: none; display: block; width: 100%; margin-top: 20px; }
body.denya-shop-site .woocommerce-privacy-policy-text { color: #516b7c; font-size: 14px; line-height: 1.7; }
body.denya-shop-site .woocommerce-notices-wrapper .woocommerce-message,
body.denya-shop-site .woocommerce .woocommerce-info { background: #e8f3fa !important; color: #06385f !important; border-color: #0b70b7 !important; border-radius: 8px; }
body.denya-shop-site .woocommerce .woocommerce-error { background: #fff2f1 !important; color: #7b241c !important; border-color: #a63b30 !important; border-radius: 8px; }
body.denya-shop-site .woocommerce .woocommerce-error a,
body.denya-shop-site .woocommerce .woocommerce-info a,
body.denya-shop-site .woocommerce .woocommerce-message a:not(.button) { color: inherit !important; text-decoration: underline; }
.denya-price-pending { color: #516b7c; font-size: 15px; line-height: 1.5; }
body.denya-shop-review-mode .stock { display: none !important; }
body.denya-shop-site.woocommerce-order-received .woocommerce-order { padding: 28px; border-radius: 16px; border: 1px solid #d7e4ec; background: #fff; }
body.denya-shop-site .woocommerce ul.order_details { display: flex; flex-wrap: wrap; gap: 20px; padding: 22px 0; margin: 18px 0; }
body.denya-shop-site .woocommerce ul.order_details li { float: none; margin: 0; padding-right: 20px; line-height: 1.7; overflow-wrap: anywhere; }
body.denya-shop-site .woocommerce ul.order_details li strong { font-size: 15px; }
body.denya-shop-site .woocommerce-customer-details address { padding: 18px; line-height: 1.8; border-color: #d7e4ec; }
@media (max-width: 767px) {
 .denya-checkout-intro, .denya-order-spec { padding: 18px; }
 body.denya-shop-site .woocommerce .col2-set .col-1, body.denya-shop-site .woocommerce .col2-set .col-2 { float: none; width: 100%; }
 body.denya-shop-site .woocommerce .form-row-first, body.denya-shop-site .woocommerce .form-row-last { float: none; width: 100%; }
 body.denya-shop-site .woocommerce .cart-collaterals .cart_totals { width: 100%; padding: 18px; }
 body.denya-shop-site .woocommerce table.shop_table_responsive tr td { overflow-wrap: anywhere; }
 body.denya-shop-site .woocommerce table.shop_table_responsive td.product-name { text-align: left !important; }
 body.denya-shop-site .woocommerce table.shop_table_responsive td.product-name::before { float: none; display: block; margin-bottom: 8px; }
 body.denya-shop-site .woocommerce #payment .place-order { padding: 18px; }
 body.denya-shop-site.woocommerce-order-received .woocommerce-order { padding: 18px; }
 body.denya-shop-site .woocommerce ul.order_details { display: grid; grid-template-columns: 1fr; }
 body.denya-shop-site .woocommerce ul.order_details li { border: 0; }
}
