/* React-reference proportions with native WooCommerce functionality preserved. */
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account){--dg-customer-shadow:0 8px 24px -16px rgba(45,25,80,.14)}
body:is(.woocommerce-checkout,.woocommerce-account) .dg-content{max-width:1152px}
body.woocommerce-cart .dg-content{max-width:1024px}
body.woocommerce-account .dg-page-shell>.dg-content{max-width:1152px}
body.woocommerce-account.dg-auth-screen .dg-page-shell>.dg-content{max-width:448px}
body.woocommerce-account.dg-auth-screen.dg-auth-with-register .dg-page-shell>.dg-content{max-width:960px}
body:is(.woocommerce-checkout,.woocommerce-cart) .dg-page-shell>.dg-content{width:calc(100% - 40px);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
body.woocommerce-checkout .dg-page-shell>.dg-content{max-width:1152px}
body.woocommerce-cart .dg-page-shell>.dg-content{max-width:1024px}
body:is(.woocommerce-checkout,.woocommerce-cart) .dg-content>.dg-editable-page{width:100%;max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
body:is(.woocommerce-checkout,.woocommerce-cart) .dg-editable-page>.dg-page-hero{max-width:none;padding:0;margin:0 0 24px;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:left}
body:is(.woocommerce-checkout,.woocommerce-cart) .dg-page-content{min-width:0;max-width:none}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .dg-page-hero{margin-bottom:24px}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .dg-page-hero h1{font-family:Inter,"Hind Siliguri",sans-serif;font-size:36px;font-weight:600;line-height:1.2}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .woocommerce :is(h2,h3){font-family:Inter,"Hind Siliguri",sans-serif;font-weight:600;line-height:1.4}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .woocommerce :is(input.input-text,textarea,select){font-family:inherit;min-height:44px;padding:10px 14px;border:1px solid var(--dg-border);border-radius:12px;background:#fff;color:var(--dg-ink);max-width:100%}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .woocommerce :is(a.button,button.button,input.button){min-height:44px;border-radius:12px;border:1px solid transparent;padding:12px 20px;background:linear-gradient(135deg,var(--dg-primary),var(--dg-lavender));color:#fff;font-family:inherit;font-weight:500;line-height:1.4;white-space:normal;text-align:center}
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .woocommerce :is(a,button,input,textarea,select):focus-visible{outline:2px solid var(--dg-primary);outline-offset:3px}
.dg-cart-intro,.dg-checkout-progress{color:var(--dg-muted);font-size:14px}
.dg-cart-intro a,.dg-checkout-progress a{color:var(--dg-primary)}
.dg-cart-intro a{display:inline-block;margin-left:8px}
.dg-checkout-progress{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px}
/* Account navigation is horizontal like the approved reference, not a sidebar. */
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation{float:none;width:100%;padding:0 0 12px;margin:0 0 32px;border:0;border-bottom:1px solid var(--dg-border);border-radius:0;background:transparent}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation li{margin:0}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation a{display:flex;align-items:center;min-height:44px;padding:8px 14px;border-radius:12px;font-size:14px;font-weight:500;color:var(--dg-muted)}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation .is-active a,.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation a:hover{background:#f0eaff;color:var(--dg-ink)}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content{float:none;width:100%;padding:0;border:0;border-radius:0;background:transparent;min-width:0}
.woocommerce-account .woocommerce-MyAccount-content :is(form,.woocommerce-customer-details address,.woocommerce-OrderUpdate){border:1px solid var(--dg-border);border-radius:16px;padding:24px;background:#fff;box-shadow:var(--dg-customer-shadow)}
.woocommerce-account .woocommerce-MyAccount-content h2{font-size:20px;margin-top:28px}
.woocommerce-account .woocommerce-MyAccount-content h3{font-size:18px}
.woocommerce-account .dg-account-order{padding:16px;margin:12px 0;border:1px solid var(--dg-border);border-radius:16px;background:#fff;box-shadow:var(--dg-customer-shadow)}
.woocommerce-account .dg-account-order>a{font-family:Inter,"Hind Siliguri",sans-serif;font-size:16px;font-weight:600}
.woocommerce-account .dg-account-order .amount{color:var(--dg-primary);font-variant-numeric:tabular-nums}
.woocommerce-account .dg-customer-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}
.woocommerce-account .dg-customer-stat{min-width:0;padding:20px;border:1px solid var(--dg-border);border-radius:16px;background:#fff}
.woocommerce-account .dg-customer-stat>span{display:block;font-size:12px;color:var(--dg-muted)}
.woocommerce-account .dg-customer-stat>strong{display:block;margin-top:6px;font-family:Inter,"Hind Siliguri",sans-serif;font-size:24px;font-weight:600;line-height:1.4;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.woocommerce-account .dg-customer-profile{padding:24px;border:1px solid var(--dg-border);border-radius:16px;background:#fff;box-shadow:var(--dg-customer-shadow)}
.woocommerce-account .dg-customer-profile>header{display:flex;align-items:center;gap:12px}
.woocommerce-account .dg-customer-avatar{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:16px;background:#f0eaff;color:var(--dg-primary)}
.woocommerce-account .dg-customer-profile>header h2{margin:0;font-size:18px}
.woocommerce-account .dg-customer-profile>header p{margin:3px 0 0;font-size:14px;color:var(--dg-muted)}
.woocommerce-account .dg-customer-profile dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0;font-size:14px}
.woocommerce-account .dg-customer-profile dl>div{min-width:0}
.woocommerce-account .dg-customer-profile dt{color:var(--dg-muted)}
.woocommerce-account .dg-customer-profile dd{margin:4px 0 0;overflow-wrap:anywhere}
.woocommerce-account .dg-profile-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;font-size:14px}
.woocommerce-account .dg-profile-actions>a:not(.button){color:var(--dg-primary);padding-block:12px}
.woocommerce-account .woocommerce table.shop_table{background:#fff;border-color:var(--dg-border);border-radius:16px;font-size:14px}
.woocommerce-account .woocommerce table.shop_table :is(td,th){padding:14px;vertical-align:middle}
.woocommerce-account .woocommerce-MyAccount-content :is(p,td,dd,address){overflow-wrap:anywhere}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-OrderUpdates{padding:0;list-style:none}
/* Login / registration use the native forms and existing settings. */
body.dg-auth-screen .dg-content{max-width:448px}
body.dg-auth-screen.dg-auth-with-register .dg-content{max-width:960px}
.dg-auth-screen .woocommerce :is(form.login,form.register,form.lost_reset_password){margin-top:20px;padding:24px;border-radius:16px;border:1px solid var(--dg-border);background:#fff;box-shadow:var(--dg-customer-shadow)}
.dg-auth-screen .woocommerce form :is(input.input-text,.password-input){width:100%}
/* Keep WooCommerce's native toggle and accessible name; enlarge its hit area. */
.woocommerce .password-input{position:relative;display:block;width:100%}
.woocommerce .password-input input.input-text{width:100%;padding-right:52px}
.woocommerce .password-input button.show-password-input{position:absolute;inset:50% 2px auto auto;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;margin:0;background:transparent;border:0;box-shadow:none}
.woocommerce .password-input button.show-password-input:focus-visible{outline:2px solid var(--dg-primary);outline-offset:-3px;border-radius:10px}
.dg-auth-screen .woocommerce form .form-row{padding:0;margin:0 0 16px}
.dg-auth-screen .woocommerce form.lost_reset_password .form-row{float:none;width:100%;clear:both}
.dg-auth-screen .woocommerce form label{font-size:14px;font-weight:500;margin-bottom:6px}
.dg-auth-screen .woocommerce form :is(button.woocommerce-button,button.woocommerce-Button){width:100%;min-height:48px;font-size:16px}
.dg-auth-screen .woocommerce .woocommerce-form-login__rememberme{display:block;margin-bottom:12px}
.dg-auth-screen .woocommerce .lost_password{font-size:14px;color:var(--dg-primary)}
.dg-auth-screen .woocommerce .col2-set{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.dg-auth-screen .woocommerce .col2-set :is(.col-1,.col-2){width:100%;float:none;min-width:0}
/* Classic checkout DOM and AJAX fragments are left unchanged. */
.woocommerce-checkout .woocommerce form.checkout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;align-items:start}
.woocommerce-checkout .woocommerce form.checkout #customer_details{grid-column:1;grid-row:1 / span 3;width:100%}
.woocommerce-checkout .woocommerce form.checkout #customer_details :is(.col-1,.col-2){float:none;width:100%}
.woocommerce-checkout .woocommerce form.checkout #order_review_heading{grid-column:2;margin:0;font-size:18px}
.woocommerce-checkout .woocommerce form.checkout #order_review{grid-column:2;position:sticky;top:112px;min-width:0}
.woocommerce-checkout .woocommerce form.checkout>.woocommerce-NoticeGroup{grid-column:1 / -1}
.woocommerce-checkout .woocommerce :is(.woocommerce-billing-fields,.woocommerce-additional-fields,.woocommerce-checkout-review-order){padding:24px;border-radius:16px;border-color:var(--dg-border);background:#fff;box-shadow:var(--dg-customer-shadow)}
.woocommerce-checkout .woocommerce .woocommerce-billing-fields h3{margin-top:0;font-size:18px}
.woocommerce-checkout .woocommerce .form-row label{font-size:14px;font-weight:500}
.woocommerce-checkout .woocommerce #payment{border-radius:12px;background:#faf9ff}
.woocommerce-checkout .woocommerce #payment ul.payment_methods{padding:16px}
.woocommerce-checkout .woocommerce #payment ul.payment_methods li{margin-bottom:8px;overflow-wrap:anywhere}
.woocommerce-checkout .woocommerce #payment .payment_methods label{display:inline-block;padding-block:10px;min-height:44px;font-size:14px;font-weight:500}
.woocommerce-checkout .woocommerce #payment .place-order{padding:16px}
.woocommerce-checkout .woocommerce #place_order{width:100%;min-height:48px;font-size:16px;margin:12px 0 0}
.woocommerce-checkout .woocommerce table.shop_table{border:0;border-collapse:collapse;font-size:14px;margin-bottom:20px}
.woocommerce-checkout .woocommerce table.shop_table :is(th,td){padding:12px 0;overflow-wrap:anywhere}
.woocommerce-checkout .woocommerce table.shop_table th{font-weight:500}
.woocommerce-checkout .woocommerce table.shop_table td.product-total{color:var(--dg-primary);text-align:right;font-variant-numeric:tabular-nums}
/* Keep the accessible Woo cart table; apply the reference card/summary language. */
.woocommerce-cart .woocommerce-cart-form{min-width:0}
.woocommerce-cart .woocommerce table.shop_table{background:#fff;border:1px solid var(--dg-border);border-radius:16px;font-size:14px;box-shadow:var(--dg-customer-shadow)}
.woocommerce-cart .woocommerce table.shop_table :is(th,td){padding:14px;overflow-wrap:anywhere}
.woocommerce-cart .woocommerce table.shop_table .product-name a{font-family:Inter,"Hind Siliguri",sans-serif;font-weight:600;font-size:16px}
.woocommerce-cart .woocommerce table.shop_table .product-thumbnail img{width:56px;max-width:56px;border-radius:12px}
.woocommerce-cart .woocommerce table.shop_table .product-subtotal{color:var(--dg-primary);font-variant-numeric:tabular-nums}
.woocommerce-cart .woocommerce table.shop_table a.remove{display:inline-grid;place-items:center;min-width:44px;min-height:44px;border-radius:50%}
.woocommerce-cart .woocommerce .quantity .qty{min-height:44px;width:70px}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals{float:none;width:100%;padding:24px;border:1px solid var(--dg-border);border-radius:16px;background:#fff;box-shadow:var(--dg-customer-shadow)}
.woocommerce-cart .woocommerce .cart_totals h2{font-size:18px;margin-top:0}
.woocommerce-cart .woocommerce .cart_totals table{box-shadow:none;border:0}
.woocommerce-cart .woocommerce .wc-proceed-to-checkout a.checkout-button{min-height:48px;font-size:16px;margin-bottom:0}
@media(min-width:1024px){
 .woocommerce-cart .dg-page-content>.woocommerce{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:20px}
 .woocommerce-cart .dg-page-content>.woocommerce>*{grid-column:1 / -1}
 .woocommerce-cart .dg-page-content>.woocommerce>.woocommerce-cart-form{grid-column:1}
 .woocommerce-cart .dg-page-content>.woocommerce>.cart-collaterals{grid-column:2;min-width:0;position:sticky;top:112px}
 .woocommerce-cart .woocommerce .cart-collaterals .cross-sells{width:100%;float:none}
}
@media(max-width:1023px){
 .woocommerce-checkout .woocommerce form.checkout{display:block}
 .woocommerce-checkout .woocommerce form.checkout #order_review{position:static}
 .woocommerce-checkout .woocommerce form.checkout #order_review_heading{margin:24px 0 16px}
}
@media(max-width:639px){
 body:is(.woocommerce-checkout,.woocommerce-cart) .dg-page-shell>.dg-content{width:calc(100% - 28px);padding:0}
 .woocommerce-account .dg-customer-stats{grid-template-columns:1fr}
 .woocommerce-account .dg-customer-stat,.woocommerce-account .dg-customer-profile{padding:16px}
 .woocommerce-account .dg-customer-profile dl{grid-template-columns:1fr}
 body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .dg-page-hero h1{font-size:30px}
 .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation{margin-bottom:24px}
 .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul{gap:4px}
 .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation a{padding:8px 10px}
 .dg-auth-screen .woocommerce .col2-set{grid-template-columns:1fr;gap:16px}
 .dg-auth-screen .woocommerce :is(form.login,form.register,form.lost_reset_password){padding:20px}
 .woocommerce-checkout .woocommerce :is(.woocommerce-billing-fields,.woocommerce-additional-fields,.woocommerce-checkout-review-order),.woocommerce-cart .woocommerce .cart-collaterals .cart_totals,.woocommerce-account .woocommerce-MyAccount-content form{padding:16px}
 body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .woocommerce :is(input.input-text,textarea,select){font-size:16px}
 .woocommerce-checkout .woocommerce form .form-row-first,.woocommerce-checkout .woocommerce form .form-row-last{width:100%;float:none}
 .woocommerce-cart .woocommerce table.shop_table :is(th,td){padding:10px}
 .woocommerce-account .woocommerce table.shop_table :is(td,th){padding:12px}
}
