@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap');

/* ============================================================
   WooSculpt Theme v3.0 — Modern High-Converting Redesign
   ============================================================ */

:root {
  --ws-purple: #6C47FF;
  --ws-purple-dark: #4F2FD9;
  --ws-purple-light: #8B6CFF;
  --ws-purple-soft: #F0ECFF;
  --ws-purple-border: #DDD5FF;
  --ws-purple-glow: rgba(108,71,255,0.15);
  --ws-success: #059669;
  --ws-success-bg: #ECFDF5;
  --ws-danger: #DC2626;
  --ws-bg: #F6F7FB;
  --ws-surface: #FFFFFF;
  --ws-surface-2: #F9FAFB;
  --ws-surface-3: #F3F4F6;
  --ws-text: #0D0F1A;
  --ws-text-2: #374151;
  --ws-muted: #6B7280;
  --ws-muted-light: #9CA3AF;
  --ws-border: #E5E7EB;
  --ws-border-dark: #D1D5DB;
  --ws-shadow-sm: 0 1px 3px rgba(0,0,0,0.06),0 1px 2px rgba(0,0,0,0.04);
  --ws-shadow: 0 4px 16px rgba(13,15,26,0.06),0 1px 4px rgba(13,15,26,0.04);
  --ws-shadow-md: 0 8px 24px rgba(13,15,26,0.08),0 2px 8px rgba(13,15,26,0.04);
  --ws-shadow-lg: 0 20px 48px rgba(13,15,26,0.10),0 4px 16px rgba(13,15,26,0.06);
  --ws-shadow-purple: 0 8px 24px rgba(108,71,255,0.24);
  --ws-radius-sm: 10px;
  --ws-radius: 16px;
  --ws-radius-lg: 22px;
  --ws-radius-xl: 28px;
  --ws-container: 1200px;
  --ws-header-h: 72px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ws-bg);color:var(--ws-text);font-family:'DM Sans',ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
h1,h2,h3,h4,h5{margin:0 0 12px;line-height:1.15;letter-spacing:-0.025em;color:var(--ws-text);font-family:'Sora',sans-serif}
h1{font-size:clamp(32px,4vw,48px);font-weight:800}
h2{font-size:clamp(22px,2.5vw,30px);font-weight:700}
h3{font-size:18px;font-weight:700}
h4{font-size:15px;font-weight:600}
p{margin:0 0 14px;color:var(--ws-muted)}

.ws-container{width:min(var(--ws-container),calc(100% - 40px));margin:0 auto}
.ws-page{padding:32px 0 80px}
.ws-card,.woocommerce-message,.woocommerce-error,.woocommerce-info{background:var(--ws-surface);border:1px solid var(--ws-border);border-radius:var(--ws-radius-lg);box-shadow:var(--ws-shadow)}
.ws-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--ws-purple-soft);border:1px solid var(--ws-purple-border);color:var(--ws-purple-dark);font-size:12px;font-weight:700;letter-spacing:0.03em;text-transform:uppercase}
.ws-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 20px;border-radius:var(--ws-radius-sm);font-size:14px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:all 0.18s ease;white-space:nowrap}
.ws-btn-primary{background:var(--ws-purple);color:#fff;box-shadow:var(--ws-shadow-purple)}
.ws-btn-primary:hover{background:var(--ws-purple-dark);transform:translateY(-1px);box-shadow:0 12px 32px rgba(108,71,255,0.32)}
.ws-btn-dark{background:var(--ws-text);color:#fff;box-shadow:var(--ws-shadow-sm)}
.ws-btn-dark:hover{background:#1a1d2e;transform:translateY(-1px)}
.ws-btn-light{background:var(--ws-surface);color:var(--ws-text-2);border-color:var(--ws-border);box-shadow:var(--ws-shadow-sm)}
.ws-btn-light:hover{border-color:var(--ws-purple);color:var(--ws-purple)}

/* HEADER */
.ws-site-header{background:rgba(255,255,255,0.92);border-bottom:1px solid var(--ws-border);position:sticky;top:0;z-index:100;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);height:var(--ws-header-h)}
.ws-header-inner{width:min(1240px,calc(100% - 40px));margin:0 auto;height:var(--ws-header-h);display:flex;align-items:center;justify-content:space-between;gap:20px}
.ws-brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ws-text)!important}
.ws-brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#8B6CFF 0%,#5530FF 100%);color:#fff;display:grid;place-items:center;font-family:'Sora',sans-serif;font-size:16px;font-weight:800;flex-shrink:0;box-shadow:0 4px 12px rgba(108,71,255,0.3)}
.ws-brand-name{font-family:'Sora',sans-serif;font-size:16px;font-weight:700;letter-spacing:-0.02em;color:var(--ws-text)!important}
.ws-nav{display:flex;align-items:center}
.ws-nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.ws-nav-list a{display:block;padding:8px 14px;border-radius:10px;font-size:14px;font-weight:500;color:var(--ws-text-2);transition:all 0.15s}
.ws-nav-list a:hover{background:var(--ws-surface-3);color:var(--ws-text)}
.ws-actions{display:flex;align-items:center;gap:8px}
.ws-icon-btn{width:40px;height:40px;border-radius:10px;background:var(--ws-surface);border:1px solid var(--ws-border);display:grid;place-items:center;cursor:pointer;transition:all 0.15s;position:relative}
.ws-icon-btn:hover{border-color:var(--ws-purple);background:var(--ws-purple-soft)}
.ws-icon-btn svg{width:18px;height:18px;fill:var(--ws-text-2)}
.ws-cart-count{position:absolute;top:-6px;right:-5px;min-width:18px;height:18px;padding:0 4px;background:#FF4F5E;border-radius:999px;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:800;border:2px solid #fff}
.ws-cart-count.is-empty{display:none}
.ws-header-cta{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 18px;border-radius:10px;background:var(--ws-purple);color:#fff;font-size:13px;font-weight:700;transition:all 0.18s;white-space:nowrap}
.ws-header-cta:hover{background:var(--ws-purple);box-shadow:var(--ws-shadow-purple)}
.ws-menu-toggle{display:none;width:40px;height:40px;border-radius:10px;border:1px solid var(--ws-border);background:var(--ws-surface);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.ws-menu-toggle span{display:block;width:18px;height:1.5px;background:var(--ws-text);border-radius:2px;transition:all 0.2s}

/* FOOTER */
.ws-site-footer{background:var(--ws-surface);border-top:1px solid var(--ws-border);padding:56px 0 24px}
.ws-footer-inner{width:min(1180px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:32px}
.ws-footer-brand .ws-brand{margin-bottom:12px}
.ws-footer-brand p{font-size:14px;max-width:320px;color:var(--ws-muted)}
.ws-footer-col{display:grid;align-content:start;gap:10px}
.ws-footer-col h3{font-size:11px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--ws-muted-light);margin-bottom:4px}
.ws-footer-col a{font-size:14px;color:var(--ws-text-2);transition:color 0.15s}
.ws-footer-col a:hover{color:var(--ws-purple)}
.ws-footer-bottom{width:min(1180px,calc(100% - 40px));margin:32px auto 0;padding-top:20px;border-top:1px solid var(--ws-border);display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--ws-muted-light)}

/* HERO */
.ws-hero{padding:64px 0 24px}
.ws-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.ws-hero-copy p{max-width:560px;font-size:17px}
.ws-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.ws-hero-visual{padding:16px}
.ws-hero-visual img{border-radius:20px}
.ws-section{padding:40px 0}
.ws-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ws-grid-3 .ws-card{padding:24px}

/* WOO GENERIC */
.woocommerce-message,.woocommerce-error,.woocommerce-info{padding:14px 18px;margin-bottom:18px}
.woocommerce .button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce #respond input#submit.alt,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--ws-purple)!important;color:#fff!important;border:none!important;border-radius:var(--ws-radius-sm)!important;padding:12px 20px!important;font-weight:600!important;font-size:14px!important;box-shadow:none!important;transition:all 0.18s ease!important}
.woocommerce .button:hover,.woocommerce button.button:hover{background:var(--ws-purple-dark)!important;transform:translateY(-1px)!important;box-shadow:var(--ws-shadow-purple)!important}
.woocommerce .button[disabled]{opacity:0.6!important}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{background:linear-gradient(135deg,var(--ws-purple) 0%,var(--ws-purple-dark) 100%)!important;color:#fff!important;border:none!important;border-radius:var(--ws-radius)!important;padding:16px 24px!important;font-weight:700!important;font-size:16px!important;box-shadow:var(--ws-shadow-purple)!important;transition:all 0.2s ease!important;text-align:center!important}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{transform:translateY(-2px)!important;box-shadow:0 16px 40px rgba(108,71,255,0.35)!important}
.woocommerce input[type=text],.woocommerce input[type=email],.woocommerce input[type=tel],.woocommerce input[type=password],.woocommerce select,.woocommerce textarea,.select2-container--default .select2-selection--single{min-height:48px!important;border:1.5px solid var(--ws-border-dark)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;padding:10px 14px!important;box-shadow:none!important;transition:border-color 0.15s,box-shadow 0.15s!important}
.woocommerce input:focus,.woocommerce select:focus,.woocommerce textarea:focus{outline:none!important;border-color:var(--ws-purple)!important;box-shadow:0 0 0 3px var(--ws-purple-glow)!important}
.woocommerce textarea{min-height:120px}
.woocommerce form .form-row label{font-size:13px;font-weight:600;color:var(--ws-text-2);margin-bottom:6px}
.woocommerce .quantity .qty{width:76px;height:44px;border:1.5px solid var(--ws-border-dark);border-radius:var(--ws-radius-sm);background:var(--ws-surface);text-align:center;font-weight:600}
.woocommerce table.shop_table{border:none!important;background:transparent!important}
.woocommerce .product .onsale{display:none!important}

/* PRODUCT PAGE */
.ws-breadcrumb{font-size:13px;color:var(--ws-muted);margin-bottom:24px}
.ws-breadcrumb a{color:var(--ws-purple)}
.ws-product-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:48px;align-items:start}
.ws-product-main{min-width:0}
.ws-plugin-icon{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#8B6CFF 0%,#5530FF 100%);color:#fff;display:grid;place-items:center;font-family:'Sora',sans-serif;font-size:20px;font-weight:800;flex-shrink:0;box-shadow:0 6px 16px rgba(108,71,255,0.3)}
.ws-product-title-row{display:flex;align-items:center;gap:16px;margin-bottom:12px}
.ws-product-title{font-size:clamp(32px,3.5vw,44px);font-weight:800;margin:0}
.ws-product-author,.ws-product-version{font-size:14px;color:var(--ws-muted)}
.ws-product-version{margin:12px 0 10px;font-weight:600}
.ws-product-short{font-size:16px;max-width:720px;margin-bottom:24px}
.ws-product-media{overflow:hidden;margin-bottom:32px}
.ws-product-media img{width:100%;height:auto;border-radius:var(--ws-radius-lg);background:var(--ws-surface-3)}
.ws-product-section h2{font-size:22px;margin-bottom:20px}
.ws-check-list{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.ws-check-list li{position:relative;padding-left:32px;color:var(--ws-text-2);line-height:1.55}
.ws-check-list li strong{color:var(--ws-text)}
.ws-check-list li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:999px;background:var(--ws-success-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23059669'%3E%3Cpath fill-rule='evenodd' d='M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z' clip-rule='evenodd'/%3E%3C/svg%3E") no-repeat center/12px}
.ws-product-sidebar{display:grid;gap:16px}
.ws-sidebar-card{padding:24px}
.ws-sidebar-card h3,.ws-sidebar-card h4{margin-bottom:8px}
.ws-sidebar-note{font-size:14px;margin-bottom:18px}
.ws-add-to-cart-wrap form.cart{display:grid;gap:12px}
.ws-add-to-cart-wrap .variations{width:100%;margin:0 0 8px;border-collapse:separate;border-spacing:0 10px}
.ws-add-to-cart-wrap .variations tr,.ws-add-to-cart-wrap .variations td,.ws-add-to-cart-wrap .variations th{display:block;padding:0;border:none;text-align:left}
.ws-add-to-cart-wrap .variations th{padding-bottom:6px}
.ws-add-to-cart-wrap .variations label{font-size:14px;font-weight:600}
.ws-add-to-cart-wrap .variations select,.ws-add-to-cart-wrap .value,.ws-add-to-cart-wrap .value select{width:100%!important;display:block}
.ws-add-to-cart-wrap .reset_variations{display:none!important}
.ws-add-to-cart-wrap .quantity{display:none!important}
.ws-add-to-cart-wrap .single_add_to_cart_button,.ws-add-to-cart-wrap button.button{width:100%}
.ws-add-to-cart-wrap .price,.woocommerce div.product p.price,.woocommerce div.product span.price{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:16px;font-weight:700;color:var(--ws-text);margin:6px 0 8px!important}
.ws-add-to-cart-wrap .price del,.woocommerce div.product p.price del,.woocommerce div.product span.price del{font-size:14px;color:var(--ws-muted);opacity:1}
.ws-add-to-cart-wrap .price ins,.woocommerce div.product p.price ins,.woocommerce div.product span.price ins{text-decoration:none}
.ws-rating-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:var(--ws-surface-2);border:1px solid var(--ws-border);font-size:13px;font-weight:600}
.ws-rating-pill span{color:var(--ws-muted);font-weight:500}
.ws-meta-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.ws-meta-cards-3{grid-template-columns:repeat(3,1fr)}
.ws-mini-card{padding:18px;min-height:88px;display:flex;flex-direction:column;justify-content:center}
.ws-mini-card strong{font-size:14px;margin-bottom:4px;display:block}
.ws-mini-card span{font-size:15px;color:var(--ws-muted)}
.ws-sidebar-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.ws-sidebar-list li{position:relative;padding-left:18px;font-size:14px;color:var(--ws-text-2)}
.ws-sidebar-list li::before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:999px;background:var(--ws-purple)}
.ws-sidebar-links a{color:var(--ws-purple)}
.ws-product-tabs{margin-top:36px;padding:0;overflow:hidden}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .woocommerce-tabs ul.tabs,.woocommerce div.product .woocommerce-tabs .panel{float:none!important;width:auto!important}
.woocommerce div.product .woocommerce-tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:4px;overflow:auto;padding:16px 20px 0!important;margin:0!important;border:none!important;background:transparent}
.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0!important;border:none!important;border-radius:10px 10px 0 0!important;background:var(--ws-surface-3)!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:10px 16px!important;font-size:14px!important;font-weight:600!important;color:var(--ws-text-2)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--ws-surface)!important;border:1px solid var(--ws-border)!important;border-bottom-color:var(--ws-surface)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ws-purple)!important}
.woocommerce div.product .woocommerce-tabs .panel{margin:0!important;padding:24px 26px 26px!important;background:var(--ws-surface)}
.single-product div.product>.images,.single-product div.product>.summary,.single-product .related,.single-product .up-sells{display:none!important}

/* ACCOUNT */
.ws-auth-wrap{display:grid;place-items:center;min-height:60vh}
.ws-auth-card{width:min(560px,100%);padding:32px}
.ws-auth-card .ws-brand-mark{margin-bottom:18px}
.ws-account-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}
.ws-account-nav,.ws-account-hero,.ws-account-content{padding:22px}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.woocommerce-MyAccount-navigation a{display:block;padding:10px 14px;border-radius:var(--ws-radius-sm);font-size:14px;color:var(--ws-text-2);transition:all 0.15s;font-weight:500}
.woocommerce-MyAccount-navigation .is-active a,.woocommerce-MyAccount-navigation a:hover{background:var(--ws-purple-soft);color:var(--ws-purple-dark)}
.ws-generic-page .ws-page-card{padding:26px}
.woocommerce-MyAccount-content p:last-child{margin-bottom:0}
.select2-container{width:100%!important}

/* ========================================
   CART PAGE — Complete Redesign
======================================== */
body.woocommerce-cart .ws-page{padding-top:32px}
body.woocommerce-cart .ws-cart-shell{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
body.woocommerce-cart .ws-cart-panel{background:var(--ws-surface);border:1px solid var(--ws-border);border-radius:var(--ws-radius-xl);padding:32px;box-shadow:var(--ws-shadow)}
body.woocommerce-cart .ws-cart-header{margin-bottom:24px}
body.woocommerce-cart .ws-cart-kicker{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 12px;border-radius:999px;background:var(--ws-purple-soft);color:var(--ws-purple-dark);font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:12px}
body.woocommerce-cart .ws-cart-kicker::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ws-purple);flex-shrink:0}
body.woocommerce-cart .ws-cart-header .ws-page-title{font-family:'Sora',sans-serif;font-size:clamp(28px,3vw,38px);font-weight:800;margin-bottom:8px;letter-spacing:-0.03em}
body.woocommerce-cart .ws-cart-header p{font-size:15px;max-width:560px;color:var(--ws-muted);margin:0}
body.woocommerce-cart .ws-cart-cols-header{display:grid;grid-template-columns:80px minmax(0,1fr) 120px 110px 120px;gap:16px;padding:0 0 12px;border-bottom:2px solid var(--ws-border);margin-bottom:4px}
body.woocommerce-cart .ws-cart-cols-header span{font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--ws-muted-light)}
body.woocommerce-cart .ws-cart-cols-header span:first-child{grid-column:1/3}
body.woocommerce-cart .ws-cart-lines{display:grid;gap:0}
body.woocommerce-cart .ws-cart-line{display:grid;grid-template-columns:80px minmax(0,1fr) 120px 110px 120px;gap:16px;align-items:center;padding:20px 0;border-bottom:1px solid var(--ws-border);transition:background 0.15s}
body.woocommerce-cart .ws-cart-line:last-child{border-bottom:none}
body.woocommerce-cart .ws-cart-line__media img{width:80px;height:80px;object-fit:cover;border-radius:14px;background:var(--ws-surface-3);border:1px solid var(--ws-border)}
body.woocommerce-cart .ws-cart-line__info{min-width:0}
body.woocommerce-cart .ws-cart-line__title-wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}
body.woocommerce-cart .ws-cart-line__info h3{margin:0;font-size:17px;line-height:1.28;font-weight:700;font-family:'Sora',sans-serif}
body.woocommerce-cart .ws-cart-line__info h3 a{color:var(--ws-text)!important}
body.woocommerce-cart .ws-cart-line__info h3 a:hover{color:var(--ws-purple)!important}
body.woocommerce-cart .ws-cart-line__info .variation{margin:0;color:var(--ws-muted);font-size:13px}
body.woocommerce-cart .ws-cart-remove{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:var(--ws-muted)!important;padding:4px 10px;border-radius:8px;border:1px solid var(--ws-border);background:transparent;transition:all 0.15s;white-space:nowrap;flex-shrink:0}
body.woocommerce-cart .ws-cart-remove:hover{color:#DC2626!important;border-color:#DC2626;background:#FFF5F5}
body.woocommerce-cart .ws-cart-line__meta{display:grid;gap:4px;text-align:left}
body.woocommerce-cart .ws-cart-line__meta span{font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:var(--ws-muted-light)}
body.woocommerce-cart .ws-cart-line__meta strong,body.woocommerce-cart .ws-cart-line__meta .amount,body.woocommerce-cart .ws-cart-line__meta bdi{font-size:17px;font-weight:700;color:var(--ws-text)!important;font-family:'Sora',sans-serif}
body.woocommerce-cart .ws-cart-qty .quantity{margin:0!important}
body.woocommerce-cart .ws-cart-qty .qty{width:80px!important;height:44px!important;border-radius:var(--ws-radius-sm)!important;border:1.5px solid var(--ws-border-dark)!important;background:var(--ws-surface)!important;text-align:center;font-weight:600;font-size:15px;transition:border-color 0.15s,box-shadow 0.15s}
body.woocommerce-cart .ws-cart-qty .qty:focus{border-color:var(--ws-purple)!important;box-shadow:0 0 0 3px var(--ws-purple-glow)!important;outline:none!important}
body.woocommerce-cart .ws-cart-actions-row{display:flex;align-items:center;justify-content:flex-end;padding-top:20px;margin-top:4px}
body.woocommerce-cart .ws-cart-update-btn{min-width:148px!important;height:44px!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface-3)!important;color:var(--ws-text-2)!important;border:1.5px solid var(--ws-border-dark)!important;font-weight:600!important;font-size:14px!important;transition:all 0.15s!important}
body.woocommerce-cart .ws-cart-update-btn:hover{border-color:var(--ws-purple)!important;color:var(--ws-purple)!important;background:var(--ws-purple-soft)!important;transform:none!important;box-shadow:none!important}
body.woocommerce-cart .ws-cart-panel--summary{padding:28px}
body.woocommerce-cart .ws-cart-panel--summary>span.ws-cart-kicker{display:block;margin-bottom:10px}
body.woocommerce-cart .ws-cart-panel--summary h2{font-family:'Sora',sans-serif;font-size:26px;font-weight:800;letter-spacing:-0.03em;margin-bottom:8px}
body.woocommerce-cart .ws-cart-panel--summary>p{font-size:14px;color:var(--ws-muted);margin-bottom:20px}
body.woocommerce-cart .ws-cart-benefits{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:10px}
body.woocommerce-cart .ws-cart-benefits li{position:relative;padding-left:28px;font-size:14px;color:var(--ws-text-2);line-height:1.5}
body.woocommerce-cart .ws-cart-benefits li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;background:var(--ws-success-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23059669'%3E%3Cpath fill-rule='evenodd' d='M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z' clip-rule='evenodd'/%3E%3C/svg%3E") no-repeat center/11px}
body.woocommerce-cart .ws-cart-totals-wrap .cart_totals{width:100%}
body.woocommerce-cart .ws-cart-totals-wrap .cart_totals h2{display:none}
body.woocommerce-cart .ws-cart-totals-wrap table{width:100%;margin:0 0 20px!important;border-collapse:collapse}
body.woocommerce-cart .ws-cart-totals-wrap table th,body.woocommerce-cart .ws-cart-totals-wrap table td{padding:12px 0!important;border:0!important;border-bottom:1px solid var(--ws-border)!important;background:transparent!important;color:var(--ws-text)!important;font-size:15px}
body.woocommerce-cart .ws-cart-totals-wrap table th{font-weight:600}
body.woocommerce-cart .ws-cart-totals-wrap table td{text-align:right}
body.woocommerce-cart .ws-cart-totals-wrap .order-total th,body.woocommerce-cart .ws-cart-totals-wrap .order-total td{font-size:22px!important;font-weight:800!important;border-bottom:none!important;padding-top:18px!important;font-family:'Sora',sans-serif}
body.woocommerce-cart .ws-cart-totals-wrap .amount,body.woocommerce-cart .ws-cart-totals-wrap bdi{color:var(--ws-text)!important}
body.woocommerce-cart .ws-cart-totals-wrap .wc-proceed-to-checkout{padding:0!important;margin:0!important}
body.woocommerce-cart .ws-cart-totals-wrap .wc-proceed-to-checkout .checkout-button{display:flex!important;align-items:center;justify-content:center;min-height:58px!important;width:100%!important;border-radius:var(--ws-radius)!important;margin:0!important;font-size:16px!important;font-weight:700!important;letter-spacing:-0.01em}
body.woocommerce-cart .woocommerce-message,body.woocommerce-cart .woocommerce-error,body.woocommerce-cart .woocommerce-info{border:1px solid var(--ws-border)!important;background:var(--ws-surface)!important;color:var(--ws-text)!important;border-radius:var(--ws-radius)!important;padding:16px 18px!important;box-shadow:none!important;margin-bottom:20px!important}
body.woocommerce-cart .woocommerce-message .button{margin-left:12px!important}

/* ========================================
   CHECKOUT PAGE — Complete Redesign
======================================== */
body.woocommerce-checkout .ws-page{padding-top:32px}
body.woocommerce-checkout .ws-checkout-shell{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:28px;align-items:start}
body.woocommerce-checkout .ws-checkout-main{display:grid;gap:20px;min-width:0}
body.woocommerce-checkout .ws-checkout-side{display:grid;gap:16px;position:sticky;top:calc(var(--ws-header-h) + 20px)}
body.woocommerce-checkout .ws-checkout-hero{padding-bottom:4px}
body.woocommerce-checkout .ws-checkout-badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 12px;border-radius:999px;background:var(--ws-purple-soft);color:var(--ws-purple-dark);font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;margin-bottom:12px}
body.woocommerce-checkout .ws-checkout-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ws-purple);flex-shrink:0;animation:ws-pulse 2s infinite}
@keyframes ws-pulse{0%,100%{opacity:1}50%{opacity:0.4}}
body.woocommerce-checkout .ws-checkout-hero h1{font-family:'Sora',sans-serif;font-size:clamp(30px,3.5vw,42px);font-weight:800;letter-spacing:-0.035em;margin-bottom:10px}
body.woocommerce-checkout .ws-checkout-hero p{font-size:16px;max-width:580px;color:var(--ws-muted);margin:0}
body.woocommerce-checkout .ws-checkout-license-box{background:var(--ws-surface);border:1px solid var(--ws-border);border-radius:var(--ws-radius-lg);padding:24px;box-shadow:var(--ws-shadow-sm)}
body.woocommerce-checkout .ws-checkout-license-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
body.woocommerce-checkout .ws-checkout-license-head small{display:block;margin-bottom:5px;color:var(--ws-muted-light);font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}
body.woocommerce-checkout .ws-checkout-license-head h2{margin:0;font-size:26px;font-weight:800;line-height:1.1;font-family:'Sora',sans-serif}
body.woocommerce-checkout .ws-checkout-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border-radius:999px;background:var(--ws-surface-3);color:var(--ws-muted);font-size:11px;font-weight:700;white-space:nowrap;letter-spacing:0.04em;text-transform:uppercase;flex-shrink:0}
body.woocommerce-checkout .ws-checkout-license-box p{margin:0;font-size:15px;color:var(--ws-muted)}
body.woocommerce-checkout .ws-checkout-benefits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.woocommerce-checkout .ws-checkout-benefit{background:var(--ws-surface);border:1px solid var(--ws-border);border-radius:var(--ws-radius);padding:18px 20px;box-shadow:var(--ws-shadow-sm);transition:border-color 0.15s,box-shadow 0.15s}
body.woocommerce-checkout .ws-checkout-benefit:hover{border-color:var(--ws-purple-border);box-shadow:0 4px 16px rgba(108,71,255,0.08)}
body.woocommerce-checkout .ws-checkout-benefit strong{display:block;margin-bottom:5px;color:var(--ws-text);font-size:14px;font-weight:700}
body.woocommerce-checkout .ws-checkout-benefit span{display:block;color:var(--ws-muted);font-size:13px;line-height:1.5}
body.woocommerce-checkout .ws-checkout-steps{background:var(--ws-surface);border:1px solid var(--ws-border);border-radius:var(--ws-radius-lg);padding:24px;box-shadow:var(--ws-shadow-sm);display:grid;gap:18px}
body.woocommerce-checkout .ws-checkout-step{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start}
body.woocommerce-checkout .ws-checkout-step span{width:44px;height:44px;border-radius:var(--ws-radius-sm);background:linear-gradient(135deg,var(--ws-purple-soft) 0%,#e8e0ff 100%);color:var(--ws-purple-dark);display:grid;place-items:center;font-family:'Sora',sans-serif;font-size:16px;font-weight:800;flex-shrink:0}
body.woocommerce-checkout .ws-checkout-step strong{display:block;margin:0 0 4px;font-size:15px;font-weight:700;color:var(--ws-text)}
body.woocommerce-checkout .ws-checkout-step p{margin:0;font-size:13px;line-height:1.5;color:var(--ws-muted)}
body.woocommerce-checkout .ws-checkout-card{background:var(--ws-surface);border:1px solid var(--ws-border);border-radius:var(--ws-radius-lg);box-shadow:var(--ws-shadow);overflow:hidden}
body.woocommerce-checkout .ws-checkout-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 24px 0;margin-bottom:16px}
body.woocommerce-checkout .ws-checkout-card-head h2{margin:0;font-size:18px;font-weight:700;font-family:'Sora',sans-serif}
body.woocommerce-checkout .ws-checkout-card-head span{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;background:var(--ws-surface-3);color:var(--ws-muted);font-size:11px;font-weight:700;white-space:nowrap;letter-spacing:0.04em;text-transform:uppercase}
body.woocommerce-checkout .ws-checkout-product-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:0 24px 16px;border-bottom:1px solid var(--ws-border)}
body.woocommerce-checkout .ws-checkout-product-row strong{display:block;font-size:15px;font-weight:700;color:var(--ws-text);line-height:1.3}
body.woocommerce-checkout .ws-checkout-product-row small{display:block;margin-top:3px;color:var(--ws-muted);font-size:12px}
body.woocommerce-checkout .ws-checkout-review{padding:0 24px 20px}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table{width:100%;border-collapse:collapse!important}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table thead{display:none!important}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table th,body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table td{padding:12px 0!important;border:0!important;border-bottom:1px solid var(--ws-border)!important;background:transparent!important;color:var(--ws-text)!important;font-size:14px!important}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table td{text-align:right}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table .order-total th,body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table .order-total td{font-size:20px!important;font-weight:800!important;border-bottom:none!important;padding-top:16px!important;font-family:'Sora',sans-serif}
body.woocommerce-checkout .ws-checkout-review .amount,body.woocommerce-checkout .ws-checkout-review bdi{color:var(--ws-text)!important}
body.woocommerce-checkout .ws-checkout-card--customer .ws-customer-fields{padding:0 24px 24px}
body.woocommerce-checkout #customer_details .col-1,body.woocommerce-checkout #customer_details .col-2{float:none!important;width:100%!important}
body.woocommerce-checkout .woocommerce-billing-fields,body.woocommerce-checkout .woocommerce-shipping-fields,body.woocommerce-checkout .woocommerce-additional-fields{background:transparent!important;border:none!important;padding:0!important;margin:0!important}
body.woocommerce-checkout .woocommerce-billing-fields h3,body.woocommerce-checkout .woocommerce-shipping-fields h3,body.woocommerce-checkout .woocommerce-additional-fields h3{display:none!important}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:14px}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide{grid-column:1/-1}
body.woocommerce-checkout form .form-row{float:none!important;width:100%!important;padding:0!important;margin:0!important}
body.woocommerce-checkout form .form-row label{display:block!important;margin:0 0 7px!important;color:var(--ws-text)!important;font-size:13px!important;font-weight:600!important}
body.woocommerce-checkout form .form-row .optional{color:var(--ws-muted)!important}
body.woocommerce-checkout input[type=text],body.woocommerce-checkout input[type=email],body.woocommerce-checkout input[type=tel],body.woocommerce-checkout input[type=password],body.woocommerce-checkout select,body.woocommerce-checkout textarea,body.woocommerce-checkout .select2-container--default .select2-selection--single{min-height:52px!important;border:1.5px solid var(--ws-border-dark)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;padding:12px 16px!important;color:var(--ws-text)!important;box-shadow:none!important;font-size:15px!important;transition:border-color 0.15s,box-shadow 0.15s!important}
body.woocommerce-checkout input::placeholder,body.woocommerce-checkout textarea::placeholder{color:var(--ws-muted-light)!important;opacity:1!important}
body.woocommerce-checkout input:focus,body.woocommerce-checkout select:focus,body.woocommerce-checkout textarea:focus{outline:none!important;border-color:var(--ws-purple)!important;box-shadow:0 0 0 3px var(--ws-purple-glow)!important}
body.woocommerce-checkout .select2-container{width:100%!important}
body.woocommerce-checkout .select2-container--default .select2-selection--single{display:flex!important;align-items:center}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:1.4!important;padding-left:0!important;color:var(--ws-text)!important}
body.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:100%!important;right:14px!important}
body.woocommerce-checkout .select2-dropdown{border:1.5px solid var(--ws-border-dark)!important;border-radius:var(--ws-radius-sm)!important;overflow:hidden}
body.woocommerce-checkout .select2-results__option--highlighted{background:var(--ws-purple-soft)!important;color:var(--ws-purple-dark)!important}
body.woocommerce-checkout .ws-checkout-card--payment .ws-payment-wrap{padding:0 24px}
body.woocommerce-checkout #payment{background:transparent!important;border:none!important;border-radius:0!important;padding:0!important;margin:0!important}
body.woocommerce-checkout #payment ul.payment_methods{padding:0!important;margin:0 0 16px!important;border:none!important;display:grid;gap:8px}
body.woocommerce-checkout #payment ul.payment_methods li{padding:14px 16px!important;border:1.5px solid var(--ws-border-dark)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;margin:0!important;color:var(--ws-text)!important;box-shadow:none!important;transition:border-color 0.15s!important}
body.woocommerce-checkout #payment ul.payment_methods li:hover{border-color:var(--ws-purple)!important}
body.woocommerce-checkout #payment ul.payment_methods li label{font-weight:600!important;color:var(--ws-text)!important;cursor:pointer}
body.woocommerce-checkout #payment div.payment_box{margin:10px 0 0!important;border:1px solid var(--ws-purple-border)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-purple-soft)!important;color:var(--ws-muted)!important;padding:14px 16px!important}
body.woocommerce-checkout #payment div.payment_box::before{display:none!important}
body.woocommerce-checkout #payment .place-order{padding:0!important;margin:0!important}
body.woocommerce-checkout #payment #place_order{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:58px!important;border-radius:var(--ws-radius)!important;background:linear-gradient(135deg,#7B52FF 0%,#5530FF 100%)!important;color:#fff!important;border:none!important;box-shadow:0 8px 24px rgba(108,71,255,0.3)!important;font-family:'Sora',sans-serif!important;font-weight:800!important;font-size:16px!important;letter-spacing:-0.01em!important;cursor:pointer!important;transition:all 0.2s ease!important;float:none!important}
body.woocommerce-checkout #payment #place_order:hover{transform:translateY(-2px)!important;box-shadow:0 16px 40px rgba(108,71,255,0.4)!important}
body.woocommerce-checkout .ws-payment-bottom{padding:14px 24px 22px}
body.woocommerce-checkout .ws-checkout-note{margin-top:14px;text-align:center;color:var(--ws-success);font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px}
body.woocommerce-checkout .ws-checkout-trust-row{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:12px;padding-top:14px;border-top:1px solid var(--ws-border)}
body.woocommerce-checkout .ws-trust-item{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--ws-muted-light)}
body.woocommerce-checkout .woocommerce-privacy-policy-text,body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{color:var(--ws-muted)!important;font-size:12px!important;line-height:1.55!important;margin-top:8px!important;padding:0 24px!important;text-align:center}
body.woocommerce-checkout .woocommerce-privacy-policy-text a,body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,body.woocommerce-checkout .showcoupon{color:var(--ws-purple)!important}
body.woocommerce-checkout .woocommerce-error,body.woocommerce-checkout .woocommerce-info,body.woocommerce-checkout .woocommerce-message{border:1px solid var(--ws-border)!important;background:var(--ws-surface)!important;color:var(--ws-text)!important;border-radius:var(--ws-radius)!important;box-shadow:none!important;padding:16px 18px!important;margin-bottom:16px!important}
body.woocommerce-checkout a{color:var(--ws-purple)}

/* header overrides on cart/checkout */
body.woocommerce-cart .ws-site-header .ws-nav-list a,body.woocommerce-checkout .ws-site-header .ws-nav-list a{color:var(--ws-text-2)!important}
body.woocommerce-cart .ws-site-header .ws-brand,body.woocommerce-checkout .ws-site-header .ws-brand,body.woocommerce-cart .ws-site-header .ws-brand-name,body.woocommerce-checkout .ws-site-header .ws-brand-name{color:var(--ws-text)!important}
body.woocommerce-cart .ws-site-header .ws-header-cta,body.woocommerce-checkout .ws-site-header .ws-header-cta{background:var(--ws-text)!important;color:#fff!important}

/* ========================================
   RESPONSIVE
======================================== */
@media (max-width:1080px){
  .ws-hero-grid,.ws-grid-3,.ws-product-grid,.ws-footer-inner{grid-template-columns:1fr}
  body.woocommerce-cart .ws-cart-shell,body.woocommerce-checkout .ws-checkout-shell{grid-template-columns:1fr;gap:20px}
  body.woocommerce-checkout .ws-checkout-side{position:static;top:auto}
  body.woocommerce-cart .ws-cart-cols-header{display:none}
  .ws-account-grid{grid-template-columns:1fr}
  .ws-product-sidebar{order:2}
  .ws-product-main{order:1}
  .ws-nav{display:none}
  .ws-menu-toggle{display:flex}
  .ws-site-header.is-open .ws-nav{display:block;position:absolute;top:var(--ws-header-h);left:16px;right:16px;background:var(--ws-surface);border:1px solid var(--ws-border);border-radius:var(--ws-radius);box-shadow:var(--ws-shadow-lg);padding:8px;z-index:99}
  .ws-site-header.is-open .ws-nav-list{flex-direction:column;align-items:stretch}
  .ws-site-header.is-open .ws-nav-list a{padding:12px 14px}
}
@media (max-width:767px){
  body{font-size:14px}
  .ws-container,.ws-header-inner,.ws-footer-inner,.ws-footer-bottom{width:calc(100% - 24px)}
  .ws-page{padding:20px 0 56px}
  .ws-header-cta{display:none}
  .ws-hero{padding-top:36px}
  .ws-grid-3,.ws-meta-cards,.ws-meta-cards-3{grid-template-columns:1fr}
  body.woocommerce-cart .ws-cart-panel{padding:20px}
  body.woocommerce-cart .ws-cart-line{grid-template-columns:72px minmax(0,1fr);gap:12px}
  body.woocommerce-cart .ws-cart-line__media img{width:72px;height:72px}
  body.woocommerce-cart .ws-cart-line__info{grid-column:2}
  body.woocommerce-cart .ws-cart-line__meta{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));padding-left:84px}
  body.woocommerce-cart .ws-cart-line__meta--qty{grid-template-columns:1fr}
  body.woocommerce-cart .ws-cart-line__title-wrap{display:grid;gap:8px}
  body.woocommerce-cart .ws-cart-actions-row{justify-content:stretch}
  body.woocommerce-cart .ws-cart-update-btn{width:100%!important}
  body.woocommerce-checkout .ws-checkout-card-head,body.woocommerce-checkout .ws-checkout-product-row{padding-left:18px;padding-right:18px}
  body.woocommerce-checkout .ws-checkout-review{padding-left:18px;padding-right:18px}
  body.woocommerce-checkout .ws-checkout-card--customer .ws-customer-fields{padding:0 18px 18px}
  body.woocommerce-checkout .ws-checkout-card--payment .ws-payment-wrap{padding:0 18px}
  body.woocommerce-checkout .ws-payment-bottom{padding:12px 18px 18px}
  body.woocommerce-checkout .ws-checkout-benefits-grid,body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}
  body.woocommerce-checkout .ws-checkout-license-head,body.woocommerce-checkout .ws-checkout-card-head{display:grid;gap:8px}
  .ws-footer-inner{grid-template-columns:1fr 1fr;gap:28px}
  .ws-footer-brand{grid-column:1/-1}
}
@media (max-width:480px){
  .ws-footer-inner{grid-template-columns:1fr}
  body.woocommerce-cart .ws-cart-line__meta{padding-left:0;grid-template-columns:1fr 1fr}
}

/* v3.0.1: Customer details moved to the left checkout column */
body.woocommerce-checkout .ws-checkout-card--customer-main .ws-customer-fields{padding:0 24px 24px}
body.woocommerce-checkout .ws-checkout-main .ws-checkout-card--customer{box-shadow:var(--ws-shadow)}
@media (max-width:767px){
  body.woocommerce-checkout .ws-checkout-card--customer-main .ws-customer-fields{padding:0 18px 18px}
}


/* v3.0.2: checkout fields reduced to email, full name, country and address */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr!important}


/* v3.0.3: make all checkout customer fields full width */
body.woocommerce-checkout .ws-checkout-card--customer .form-row,
body.woocommerce-checkout .ws-checkout-card--customer .form-row-first,
body.woocommerce-checkout .ws-checkout-card--customer .form-row-last,
body.woocommerce-checkout .ws-checkout-card--customer .form-row-wide{width:100%!important;max-width:100%!important;grid-column:1 / -1!important}
body.woocommerce-checkout .ws-checkout-card--customer input[type=text],
body.woocommerce-checkout .ws-checkout-card--customer input[type=email],
body.woocommerce-checkout .ws-checkout-card--customer input[type=tel],
body.woocommerce-checkout .ws-checkout-card--customer input[type=password],
body.woocommerce-checkout .ws-checkout-card--customer select,
body.woocommerce-checkout .ws-checkout-card--customer textarea,
body.woocommerce-checkout .ws-checkout-card--customer .input-text,
body.woocommerce-checkout .ws-checkout-card--customer .select2-container,
body.woocommerce-checkout .ws-checkout-card--customer .select2-container--default .select2-selection--single{width:100%!important;max-width:100%!important}


/* v3.0.4: checkout cleanup */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon{display:none!important}

/* Align order summary rows from the left */
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table td{
  text-align:left!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table td:last-child{
  text-align:right!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table tfoot th{
  padding-left:0!important;
}

/* Remove payment method bullet/dot */
body.woocommerce-checkout #payment ul.payment_methods,
body.woocommerce-checkout #payment ul.payment_methods li{
  list-style:none!important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  margin-left:0!important;
  padding-left:0!important;
}
body.woocommerce-checkout #payment ul.payment_methods li::marker{content:""!important}
body.woocommerce-checkout #payment ul.payment_methods li:before{
  display:none!important;
  content:none!important;
}


/* v3.0.5: cleaner add-to-cart notice and cart summary heading */
.woocommerce-message{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  border:1px solid var(--ws-border)!important;
  border-left:4px solid var(--ws-purple)!important;
  background:var(--ws-surface)!important;
  color:var(--ws-text)!important;
  border-radius:var(--ws-radius)!important;
  padding:14px 16px!important;
  box-shadow:var(--ws-shadow-sm)!important;
}
.woocommerce-message::before{
  color:var(--ws-success)!important;
  top:auto!important;
}
.woocommerce-message .button{
  order:2!important;
  margin:0!important;
  min-height:40px!important;
  padding:10px 16px!important;
  border-radius:var(--ws-radius-sm)!important;
  background:var(--ws-purple)!important;
  color:#fff!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.woocommerce-message .button:hover{
  background:var(--ws-purple-dark)!important;
  transform:none!important;
  box-shadow:var(--ws-shadow-purple)!important;
}
body.single-product .woocommerce-message{
  max-width:100%!important;
  margin:0 0 22px!important;
}

/* ── Cart added toast (product page) ──────────────────────── */
body.single-product .woocommerce-notices-wrapper {
  position: fixed !important;
  bottom: 24px !important;
  right: 24px !important;
  left: auto !important;
  top: auto !important;
  z-index: 99999 !important;
  max-width: 360px !important;
  width: calc(100vw - 48px) !important;
  pointer-events: none !important;
}
body.single-product .woocommerce-notices-wrapper .woocommerce-message,
body.single-product .woocommerce-notices-wrapper .woocommerce-error,
body.single-product .woocommerce-notices-wrapper .woocommerce-info {
  pointer-events: all !important;
  background: #0f172a !important;
  color: #f8fafc !important;
  border: none !important;
  border-radius: 14px !important;
  padding: 14px 18px !important;
  margin: 0 !important;
  box-shadow: 0 8px 32px rgba(15,23,42,.28), 0 2px 8px rgba(15,23,42,.16) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  animation: ws-toast-in 0.3s cubic-bezier(0.34,1.56,0.64,1) forwards !important;
}
body.single-product .woocommerce-notices-wrapper .woocommerce-message::before {
  content: '✓' !important;
  width: 22px !important;
  height: 22px !important;
  background: #22c55e !important;
  color: #fff !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
  padding: 0 !important;
}
body.single-product .woocommerce-notices-wrapper .woocommerce-message .button,
body.single-product .woocommerce-notices-wrapper .woocommerce-message a {
  color: #a5b4fc !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
  font-size: 13px !important;
  white-space: nowrap !important;
}
body.single-product .woocommerce-notices-wrapper .woocommerce-message .button:hover,
body.single-product .woocommerce-notices-wrapper .woocommerce-message a:hover {
  color: #fff !important;
  background: transparent !important;
}
@keyframes ws-toast-in {
  from { opacity: 0; transform: translateY(16px) scale(0.96); }
  to   { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes ws-toast-out {
  from { opacity: 1; transform: translateY(0) scale(1); }
  to   { opacity: 0; transform: translateY(8px) scale(0.97); }
}
.ws-toast-hiding {
  animation: ws-toast-out 0.25s ease forwards !important;
}
@media (max-width: 480px) {
  body.single-product .woocommerce-notices-wrapper {
    bottom: 16px !important;
    right: 16px !important;
    width: calc(100vw - 32px) !important;
    max-width: none !important;
  }
}

body.woocommerce-cart .ws-cart-panel--summary>span.ws-cart-kicker{
  display:inline-flex!important;
  width:auto!important;
  max-width:max-content!important;
  padding:0 14px!important;
}
body.woocommerce-cart .ws-cart-panel--summary h2{
  font-size:30px!important;
  margin:12px 0 8px!important;
}
body.woocommerce-cart .ws-cart-panel--summary>p{
  font-size:15px!important;
  line-height:1.55!important;
}


/* v3.0.6: cleaner cart row and custom order received page */
body.woocommerce-cart .ws-cart-line__meta span{
  display:none!important;
}
@media (max-width:767px){
  body.woocommerce-cart .ws-cart-line__meta span{
    display:block!important;
  }
}
body.woocommerce-cart .ws-cart-line{
  grid-template-columns:96px minmax(260px,1fr) 140px 130px 140px!important;
  align-items:center!important;
}
body.woocommerce-cart .ws-cart-line__title-wrap{
  align-items:center!important;
}
body.woocommerce-cart .ws-cart-remove{
  margin-left:auto!important;
}
body.woocommerce-cart .ws-cart-line__meta strong,
body.woocommerce-cart .ws-cart-line__meta .amount,
body.woocommerce-cart .ws-cart-line__meta bdi{
  font-size:22px!important;
}
body.woocommerce-cart .ws-cart-line__meta--price strong,
body.woocommerce-cart .ws-cart-line__meta--subtotal strong{
  white-space:nowrap!important;
}
body.woocommerce-cart .ws-cart-qty .qty{
  font-size:18px!important;
}

/* Order received */
body.woocommerce-order-received .ws-generic-page .ws-page-card,
body.woocommerce-order-received .ws-page-card{
  padding:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
}
body.woocommerce-order-received .ws-thankyou-page{
  display:grid;
  gap:18px;
  max-width:980px;
}
body.woocommerce-order-received .ws-thankyou-card{
  background:var(--ws-surface);
  border:1px solid var(--ws-border);
  border-radius:var(--ws-radius-xl);
  padding:28px;
  box-shadow:var(--ws-shadow);
}
body.woocommerce-order-received .ws-thankyou-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:30px;
  padding:0 14px;
  border-radius:999px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:14px;
}
body.woocommerce-order-received .ws-thankyou-badge:before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--ws-success);
}
body.woocommerce-order-received .ws-thankyou-hero h1{
  font-size:clamp(32px,4vw,48px);
  margin-bottom:10px;
}
body.woocommerce-order-received .ws-thankyou-hero p{
  font-size:16px;
  max-width:620px;
}
body.woocommerce-order-received .ws-thankyou-meta{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  margin-top:24px;
}
body.woocommerce-order-received .ws-thankyou-meta div{
  background:var(--ws-surface-2);
  border:1px solid var(--ws-border);
  border-radius:var(--ws-radius);
  padding:14px;
  min-width:0;
}
body.woocommerce-order-received .ws-thankyou-meta span{
  display:block;
  color:var(--ws-muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:5px;
}
body.woocommerce-order-received .ws-thankyou-meta strong{
  display:block;
  color:var(--ws-text);
  font-size:14px;
  overflow-wrap:anywhere;
}
body.woocommerce-order-received .ws-thankyou-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}
body.woocommerce-order-received .ws-thankyou-section-head h2{
  margin:0;
  font-size:28px;
}
body.woocommerce-order-received .ws-thankyou-section-head span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:var(--ws-surface-3);
  color:var(--ws-muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
}
body.woocommerce-order-received .ws-thankyou-items{
  display:grid;
  gap:0;
  border-top:1px solid var(--ws-border);
  border-bottom:1px solid var(--ws-border);
}
body.woocommerce-order-received .ws-thankyou-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:16px 0;
}
body.woocommerce-order-received .ws-thankyou-item strong{
  display:block;
  font-size:16px;
}
body.woocommerce-order-received .ws-thankyou-item span{
  display:block;
  color:var(--ws-muted);
  font-size:13px;
  margin-top:3px;
}
body.woocommerce-order-received .ws-thankyou-item>div:last-child{
  font-weight:800;
  font-size:17px;
  color:var(--ws-text);
}
body.woocommerce-order-received .ws-thankyou-totals{
  display:grid;
  gap:10px;
  margin-top:18px;
}
body.woocommerce-order-received .ws-thankyou-totals div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  color:var(--ws-text);
}
body.woocommerce-order-received .ws-thankyou-totals span{
  font-weight:700;
}
body.woocommerce-order-received .ws-thankyou-totals strong{
  font-weight:800;
}
body.woocommerce-order-received .ws-thankyou-totals .order_total{
  padding-top:12px;
  border-top:1px solid var(--ws-border);
}
body.woocommerce-order-received .ws-thankyou-totals .order_total span,
body.woocommerce-order-received .ws-thankyou-totals .order_total strong{
  font-size:22px;
}
body.woocommerce-order-received .ws-thankyou-address{
  display:grid;
  gap:6px;
  color:var(--ws-muted);
}
body.woocommerce-order-received .ws-thankyou-address strong{
  color:var(--ws-text);
  font-size:16px;
}
body.woocommerce-order-received .ws-thankyou-address a{
  color:var(--ws-purple);
}
body.woocommerce-order-received .woocommerce-table,
body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details{
  display:none!important;
}
@media (max-width:900px){
  body.woocommerce-order-received .ws-thankyou-meta{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:767px){
  body.woocommerce-cart .ws-cart-line{
    grid-template-columns:72px minmax(0,1fr)!important;
  }
  body.woocommerce-order-received .ws-thankyou-card{
    padding:20px;
  }
  body.woocommerce-order-received .ws-thankyou-meta{
    grid-template-columns:1fr;
  }
  body.woocommerce-order-received .ws-thankyou-section-head{
    display:grid;
  }
}


/* v3.0.7: center thankyou page and keep meta/totals on one line */
body.woocommerce-order-received .ws-generic-page .ws-container,
body.woocommerce-order-received .ws-container{
  max-width:1100px!important;
  margin:0 auto!important;
}
body.woocommerce-order-received .ws-page-title{
  max-width:980px;
  margin:0 auto 18px!important;
}
body.woocommerce-order-received .ws-thankyou-page{
  max-width:980px;
  margin:0 auto!important;
}
body.woocommerce-order-received .ws-thankyou-meta{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
body.woocommerce-order-received .ws-thankyou-meta strong,
body.woocommerce-order-received .ws-thankyou-item > div:last-child,
body.woocommerce-order-received .ws-thankyou-totals strong,
body.woocommerce-order-received .ws-thankyou-totals span,
body.woocommerce-order-received .ws-thankyou-address a,
body.woocommerce-order-received .ws-thankyou-address span,
body.woocommerce-order-received .ws-thankyou-address strong,
body.woocommerce-order-received .ws-thankyou-payment-note,
body.woocommerce-order-received .ws-thankyou-payment-note *{
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.woocommerce-order-received .ws-thankyou-meta strong{
  overflow:hidden;
  text-overflow:ellipsis;
}
body.woocommerce-order-received .ws-thankyou-item > div:last-child,
body.woocommerce-order-received .ws-thankyou-totals strong{
  display:inline-block;
}
body.woocommerce-order-received .ws-thankyou-item > div:last-child .amount,
body.woocommerce-order-received .ws-thankyou-item > div:last-child bdi,
body.woocommerce-order-received .ws-thankyou-totals strong .amount,
body.woocommerce-order-received .ws-thankyou-totals strong bdi,
body.woocommerce-order-received .ws-thankyou-meta strong .amount,
body.woocommerce-order-received .ws-thankyou-meta strong bdi,
body.woocommerce-order-received .ws-thankyou-meta .woocommerce-Price-amount,
body.woocommerce-order-received .ws-thankyou-totals .woocommerce-Price-amount,
body.woocommerce-order-received .ws-thankyou-item .woocommerce-Price-amount{
  white-space:nowrap!important;
  display:inline!important;
}
@media (max-width:1050px){
  body.woocommerce-order-received .ws-thankyou-meta{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:767px){
  body.woocommerce-order-received .ws-page-title{
    max-width:none;
    margin:0 0 16px!important;
  }
  body.woocommerce-order-received .ws-thankyou-page{
    max-width:none;
  }
  body.woocommerce-order-received .ws-thankyou-meta{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-order-received .ws-thankyou-meta strong{
    text-overflow:clip;
  }
}


/* v3.0.8: force order received prices to stay on one line */
body.woocommerce-order-received .ws-thankyou-meta strong,
body.woocommerce-order-received .ws-thankyou-item > div:last-child,
body.woocommerce-order-received .ws-thankyou-totals strong{
  display:block!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}


/* v3.0.9: remove duplicated payment note card from order received page */
body.woocommerce-order-received .ws-thankyou-payment-note{
  display:none!important;
}


/* v3.1.0: restore missing cart price/subtotal values */
body.woocommerce-cart .ws-cart-line{
  grid-template-columns:96px minmax(260px,1fr) 150px 130px 150px!important;
  column-gap:28px!important;
}
body.woocommerce-cart .ws-cart-line__meta{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-width:0!important;
  opacity:1!important;
  visibility:visible!important;
}
body.woocommerce-cart .ws-cart-line__meta span{
  display:none!important;
}
body.woocommerce-cart .ws-cart-line__meta strong,
body.woocommerce-cart .ws-cart-line__meta .amount,
body.woocommerce-cart .ws-cart-line__meta bdi{
  display:inline-flex!important;
  align-items:center!important;
  white-space:nowrap!important;
  opacity:1!important;
  visibility:visible!important;
  color:var(--ws-text)!important;
  font-size:22px!important;
  font-weight:800!important;
  line-height:1.1!important;
}
body.woocommerce-cart .ws-cart-line__meta--price,
body.woocommerce-cart .ws-cart-line__meta--subtotal{
  min-height:48px!important;
}
body.woocommerce-cart .ws-cart-line__meta--qty{
  justify-content:center!important;
}
body.woocommerce-cart .ws-cart-cols-header{
  grid-template-columns:96px minmax(260px,1fr) 150px 130px 150px!important;
  column-gap:28px!important;
}
body.woocommerce-cart .ws-cart-cols-header span:first-child{
  grid-column:1 / 3!important;
}
@media (max-width:767px){
  body.woocommerce-cart .ws-cart-line{
    grid-template-columns:72px minmax(0,1fr)!important;
  }
  body.woocommerce-cart .ws-cart-line__meta{
    display:grid!important;
  }
  body.woocommerce-cart .ws-cart-line__meta span{
    display:block!important;
  }
}


/* v3.1.1: tighten cart layout and left-align summary totals */
body.woocommerce-cart .ws-cart-shell > *{min-width:0!important;}
body.woocommerce-cart .ws-cart-shell{grid-template-columns:minmax(0,1fr) 340px!important;gap:20px!important;align-items:start!important;}
body.woocommerce-cart .ws-cart-panel{padding:28px!important;min-width:0!important;overflow:hidden!important;}
body.woocommerce-cart .ws-cart-cols-header,
body.woocommerce-cart .ws-cart-line{
  grid-template-columns:84px minmax(200px,1fr) 100px 120px 110px!important;
  column-gap:16px!important;
}
body.woocommerce-cart .ws-cart-cols-header span,
body.woocommerce-cart .ws-cart-line__meta,
body.woocommerce-cart .ws-cart-line__info,
body.woocommerce-cart .ws-cart-line__title-wrap,
body.woocommerce-cart .ws-cart-line__title-wrap h3{min-width:0!important;}
body.woocommerce-cart .ws-cart-line__media img{width:84px!important;height:84px!important;}
body.woocommerce-cart .ws-cart-line__title-wrap{gap:10px!important;}
body.woocommerce-cart .ws-cart-line__info h3{font-size:16px!important;line-height:1.25!important;}
body.woocommerce-cart .ws-cart-line__meta strong,
body.woocommerce-cart .ws-cart-line__meta .amount,
body.woocommerce-cart .ws-cart-line__meta bdi{font-size:18px!important;}
body.woocommerce-cart .ws-cart-line__meta--qty{justify-content:center!important;}
body.woocommerce-cart .ws-cart-qty .qty{width:96px!important;height:48px!important;font-size:16px!important;}
body.woocommerce-cart .ws-cart-totals-wrap table th{text-align:left!important;padding-right:18px!important;vertical-align:middle!important;}
body.woocommerce-cart .ws-cart-totals-wrap table td{text-align:right!important;vertical-align:middle!important;}
body.woocommerce-cart .ws-cart-totals-wrap .order-total th,
body.woocommerce-cart .ws-cart-totals-wrap .order-total td{padding-top:22px!important;}
@media (max-width: 1400px){
  body.woocommerce-cart .ws-cart-shell{grid-template-columns:minmax(0,1fr) 320px!important;}
  body.woocommerce-cart .ws-cart-cols-header,
  body.woocommerce-cart .ws-cart-line{
    grid-template-columns:76px minmax(180px,1fr) 90px 110px 100px!important;
    column-gap:14px!important;
  }
  body.woocommerce-cart .ws-cart-line__media img{width:76px!important;height:76px!important;}
  body.woocommerce-cart .ws-cart-line__meta strong,
  body.woocommerce-cart .ws-cart-line__meta .amount,
  body.woocommerce-cart .ws-cart-line__meta bdi{font-size:16px!important;}
}
@media (max-width: 1200px){
  body.woocommerce-cart .ws-cart-shell{grid-template-columns:1fr!important;gap:20px!important;}
}


/* v3.1.3: mobile cart item styled more like order summary */
@media (max-width: 767px){
  body.woocommerce-cart .ws-cart-cols-header{
    display:none!important;
  }
  body.woocommerce-cart .ws-cart-lines{
    margin-top:8px!important;
    border-top:1px solid var(--ws-border)!important;
  }
  body.woocommerce-cart .ws-cart-line{
    grid-template-columns:72px minmax(0,1fr)!important;
    column-gap:16px!important;
    row-gap:0!important;
    align-items:start!important;
    padding:22px 0!important;
    border-top:none!important;
  }
  body.woocommerce-cart .ws-cart-line__media{
    grid-column:1!important;
    grid-row:1!important;
  }
  body.woocommerce-cart .ws-cart-line__media img{
    width:72px!important;
    height:72px!important;
  }
  body.woocommerce-cart .ws-cart-line__info{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    padding-bottom:12px!important;
  }
  body.woocommerce-cart .ws-cart-line__title-wrap{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:10px!important;
    margin-bottom:0!important;
  }
  body.woocommerce-cart .ws-cart-line__info h3,
  body.woocommerce-cart .ws-cart-line__info h3 a{
    font-size:16px!important;
    line-height:1.28!important;
    margin:0!important;
  }
  body.woocommerce-cart .ws-cart-remove{
    margin-left:0!important;
  }
  body.woocommerce-cart .ws-cart-line__meta{
    grid-column:1 / -1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:14px 0!important;
    border-top:1px solid var(--ws-border)!important;
    min-width:0!important;
  }
  body.woocommerce-cart .ws-cart-line__meta span{
    display:block!important;
    font-size:12px!important;
    letter-spacing:.06em!important;
    text-transform:none!important;
    color:var(--ws-text)!important;
    font-weight:700!important;
  }
  body.woocommerce-cart .ws-cart-line__meta strong,
  body.woocommerce-cart .ws-cart-line__meta .amount,
  body.woocommerce-cart .ws-cart-line__meta bdi{
    font-size:18px!important;
    line-height:1.2!important;
    justify-content:flex-end!important;
    text-align:right!important;
    white-space:nowrap!important;
    margin:0!important;
  }
  body.woocommerce-cart .ws-cart-line__meta--qty{
    align-items:center!important;
  }
  body.woocommerce-cart .ws-cart-line__meta--qty .ws-cart-qty{
    margin-left:auto!important;
  }
  body.woocommerce-cart .ws-cart-qty .qty{
    width:88px!important;
    height:46px!important;
    font-size:16px!important;
  }
  body.woocommerce-cart .ws-cart-actions-row{
    justify-content:stretch!important;
    padding-top:18px!important;
    border-top:1px solid var(--ws-border)!important;
  }
  body.woocommerce-cart .ws-cart-update-btn{
    width:100%!important;
    min-width:0!important;
  }
}
@media (max-width: 420px){
  body.woocommerce-cart .ws-cart-panel{padding:20px!important;}
  body.woocommerce-cart .ws-cart-line__meta strong,
  body.woocommerce-cart .ws-cart-line__meta .amount,
  body.woocommerce-cart .ws-cart-line__meta bdi{font-size:17px!important;}
}


/* v3.1.4: My Account layout/forms cleanup */
body.woocommerce-account .ws-page{
  padding-top:28px;
}
body.woocommerce-account .ws-account-grid{
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:24px!important;
  align-items:start!important;
}
body.woocommerce-account .ws-account-nav,
body.woocommerce-account .ws-account-hero,
body.woocommerce-account .ws-account-content{
  background:var(--ws-surface)!important;
  border:1px solid var(--ws-border)!important;
  border-radius:var(--ws-radius-xl)!important;
  box-shadow:var(--ws-shadow)!important;
}
body.woocommerce-account .ws-account-content{
  padding:28px!important;
  overflow:hidden!important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  width:100%!important;
  max-width:100%!important;
  float:none!important;
}

/* Orders table/card cleanup */
body.woocommerce-account table.shop_table,
body.woocommerce-account .woocommerce-orders-table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  margin:0!important;
}
body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td,
body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td{
  padding:16px 14px!important;
  border-bottom:1px solid var(--ws-border)!important;
  text-align:left!important;
  vertical-align:middle!important;
  white-space:nowrap!important;
}
body.woocommerce-account table.shop_table th,
body.woocommerce-account .woocommerce-orders-table th{
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:var(--ws-muted)!important;
}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions{
  text-align:right!important;
}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button,
body.woocommerce-account table.shop_table .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:10px 18px!important;
  border-radius:12px!important;
  margin:0!important;
}

/* Downloads empty message cleanup */
body.woocommerce-account .woocommerce-info{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:var(--ws-radius-lg)!important;
  box-shadow:var(--ws-shadow-sm)!important;
}

/* Account details form: make every section full width and clean */
body.woocommerce-account form.woocommerce-EditAccountForm,
body.woocommerce-account .woocommerce-EditAccountForm{
  width:100%!important;
  max-width:760px!important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row,
body.woocommerce-account .woocommerce-EditAccountForm .form-row-first,
body.woocommerce-account .woocommerce-EditAccountForm .form-row-last,
body.woocommerce-account .woocommerce-EditAccountForm .form-row-wide{
  display:block!important;
  float:none!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 18px!important;
  padding:0!important;
  clear:both!important;
}
body.woocommerce-account .woocommerce-EditAccountForm label{
  display:block!important;
  width:100%!important;
  margin:0 0 8px!important;
  font-size:14px!important;
  font-weight:700!important;
  color:var(--ws-text)!important;
}
body.woocommerce-account .woocommerce-EditAccountForm input[type=text],
body.woocommerce-account .woocommerce-EditAccountForm input[type=email],
body.woocommerce-account .woocommerce-EditAccountForm input[type=password]{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:54px!important;
  border:1.5px solid var(--ws-border-dark)!important;
  border-radius:var(--ws-radius-sm)!important;
  padding:12px 16px!important;
  background:var(--ws-surface)!important;
  color:var(--ws-text)!important;
  font-size:15px!important;
}
body.woocommerce-account .woocommerce-EditAccountForm em{
  display:block!important;
  margin:8px 0 0!important;
  color:var(--ws-muted)!important;
  line-height:1.45!important;
}

/* Replace ugly default fieldset border */
body.woocommerce-account .woocommerce-EditAccountForm fieldset{
  display:grid!important;
  gap:0!important;
  width:100%!important;
  max-width:100%!important;
  margin:26px 0 20px!important;
  padding:22px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:var(--ws-radius-lg)!important;
  background:var(--ws-surface-2)!important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset legend{
  padding:0 10px!important;
  color:var(--ws-text)!important;
  font-size:16px!important;
  font-weight:800!important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset .form-row{
  margin-bottom:16px!important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset .form-row:last-child{
  margin-bottom:0!important;
}
body.woocommerce-account .woocommerce-EditAccountForm button[type=submit]{
  min-height:52px!important;
  padding:0 24px!important;
  border-radius:var(--ws-radius-sm)!important;
}

/* Address/account default forms */
body.woocommerce-account .woocommerce-address-fields .form-row,
body.woocommerce-account .woocommerce-address-fields .form-row-first,
body.woocommerce-account .woocommerce-address-fields .form-row-last,
body.woocommerce-account .woocommerce-address-fields .form-row-wide{
  float:none!important;
  width:100%!important;
  max-width:760px!important;
  display:block!important;
}
body.woocommerce-account .woocommerce-address-fields input,
body.woocommerce-account .woocommerce-address-fields select,
body.woocommerce-account .woocommerce-address-fields .select2-container{
  width:100%!important;
  max-width:760px!important;
}

@media (max-width:1080px){
  body.woocommerce-account .ws-account-grid{
    grid-template-columns:1fr!important;
  }
}
@media (max-width:767px){
  body.woocommerce-account .ws-account-content{
    padding:20px!important;
  }
  body.woocommerce-account .ws-account-hero h1{
    font-size:clamp(30px,10vw,44px)!important;
  }
  body.woocommerce-account table.shop_table,
  body.woocommerce-account .woocommerce-orders-table{
    display:block!important;
    overflow-x:auto!important;
    white-space:nowrap!important;
  }
  body.woocommerce-account .woocommerce-info{
    display:grid!important;
    justify-content:stretch!important;
  }
  body.woocommerce-account .woocommerce-info .button{
    width:100%!important;
    margin:0!important;
  }
}


/* v3.1.5: My Account spacing + remove password toggle artifacts */
body.woocommerce-account .ws-account-grid{
  gap:28px!important;
}
body.woocommerce-account .ws-account-hero{
  margin-bottom:28px!important;
}
body.woocommerce-account .ws-account-content,
body.woocommerce-account .woocommerce-MyAccount-content{
  display:block!important;
}
body.woocommerce-account .woocommerce-MyAccount-content > * + *{
  margin-top:24px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content p{
  margin-bottom:18px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content p:last-child{
  margin-bottom:0!important;
}

/* Keep account dashboard sections visually separated */
body.woocommerce-account .woocommerce-MyAccount-content > p,
body.woocommerce-account .woocommerce-MyAccount-content > form,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content > table,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-orders-table,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-Addresses{
  margin-top:0!important;
}

/* Hide WooCommerce password show/hide artifacts inside password fields */
body.woocommerce-account .woocommerce-EditAccountForm .password-input .show-password-input,
body.woocommerce-account .woocommerce-EditAccountForm .password-input button,
body.woocommerce-account .woocommerce-EditAccountForm .show-password-input,
body.woocommerce-account .woocommerce-EditAccountForm .woocommerce-password-strength,
body.woocommerce-account .woocommerce-EditAccountForm .woocommerce-password-hint{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}
body.woocommerce-account .woocommerce-EditAccountForm .password-input{
  display:block!important;
  width:100%!important;
  position:relative!important;
}
body.woocommerce-account .woocommerce-EditAccountForm .password-input input{
  width:100%!important;
  padding-right:16px!important;
}

/* Clean password change fieldset spacing */
body.woocommerce-account .woocommerce-EditAccountForm fieldset{
  margin-top:30px!important;
  margin-bottom:24px!important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset .form-row{
  margin-bottom:18px!important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset label{
  margin-bottom:10px!important;
}

/* Add comfortable space between hero and inner cards on account pages */
body.woocommerce-account .ws-account-content{
  margin-top:0!important;
}
@media (max-width:1080px){
  body.woocommerce-account .ws-account-hero{
    margin-bottom:22px!important;
  }
  body.woocommerce-account .ws-account-grid{
    gap:22px!important;
  }
}


/* v3.1.6: reduce My Account heading sizes */
body.woocommerce-account .ws-page-title{
  font-size:clamp(34px,4.2vw,58px)!important;
  line-height:1.05!important;
}
body.woocommerce-account .ws-account-hero h1{
  font-size:clamp(32px,4vw,56px)!important;
  line-height:1.08!important;
  max-width:100%!important;
}
@media (max-width:767px){
  body.woocommerce-account .ws-page-title{
    font-size:clamp(30px,9vw,42px)!important;
  }
  body.woocommerce-account .ws-account-hero h1{
    font-size:clamp(28px,8vw,40px)!important;
  }
}


/* v3.1.7: fix My Account order view button spacing */
body.woocommerce-account .woocommerce-MyAccount-content .order-again{
  display:block!important;
  clear:both!important;
  margin:26px 0 34px!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .order-again .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:0 24px!important;
  border-radius:14px!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .order-again + .woocommerce-customer-details,
body.woocommerce-account .woocommerce-MyAccount-content .order-again + section,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details{
  margin-top:28px!important;
  clear:both!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details{
  margin-bottom:24px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details{
  margin-bottom:18px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details address{
  line-height:1.7!important;
}


/* v3.1.8: account order-view cleanup */

/* Make account hero title clearly smaller */
body.woocommerce-account .ws-account-hero h1{
  font-size:clamp(28px,3vw,46px)!important;
  line-height:1.08!important;
  letter-spacing:-0.035em!important;
}
body.woocommerce-account .ws-page-title{
  font-size:clamp(30px,3.4vw,50px)!important;
  line-height:1.05!important;
}

/* On order-view pages, remove the huge duplicated Order # title */
body.woocommerce-account.woocommerce-view-order .ws-page-title,
body.woocommerce-account .woocommerce-MyAccount-content > h2:first-child{
  font-size:clamp(26px,2.5vw,38px)!important;
  line-height:1.08!important;
  margin:0 0 20px!important;
}

/* Clean order-view intro line */
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content > p:first-child{
  margin:0 0 22px!important;
  color:var(--ws-muted)!important;
  font-size:15px!important;
  line-height:1.6!important;
}

/* Ensure order details table has clear space before actions */
body.woocommerce-account.woocommerce-view-order .woocommerce-order-details,
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-order-details{
  margin-bottom:30px!important;
  padding-bottom:0!important;
}

/* Fix Order again button position on view-order page */
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content p.order-again,
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content .order-again{
  display:flex!important;
  justify-content:flex-start!important;
  align-items:center!important;
  position:static!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  margin:28px 0 38px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  line-height:1!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content p.order-again .button,
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content .order-again .button,
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content a.order-again,
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content .button.order-again{
  position:static!important;
  float:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:0 22px!important;
  margin:0!important;
  border-radius:12px!important;
  line-height:1!important;
  white-space:nowrap!important;
}

/* Billing address must start after the button, never behind it */
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details,
body.woocommerce-account.woocommerce-view-order .woocommerce-MyAccount-content .woocommerce-customer-details{
  clear:both!important;
  margin-top:34px!important;
  padding-top:4px!important;
  display:block!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-customer-details h2,
body.woocommerce-account.woocommerce-view-order .woocommerce-column__title{
  margin-top:0!important;
  margin-bottom:16px!important;
}

/* Keep order-view table readable */
body.woocommerce-account.woocommerce-view-order .woocommerce-table--order-details th,
body.woocommerce-account.woocommerce-view-order .woocommerce-table--order-details td{
  white-space:normal!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-table--order-details tfoot th{
  width:45%!important;
}
body.woocommerce-account.woocommerce-view-order .woocommerce-table--order-details tfoot td{
  width:55%!important;
}

@media (max-width:767px){
  body.woocommerce-account .ws-account-hero h1{
    font-size:clamp(26px,7vw,34px)!important;
  }
  body.woocommerce-account .ws-page-title{
    font-size:clamp(28px,8vw,38px)!important;
  }
}


/* v3.1.9: stronger View Order spacing for Order again button */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details + .order-again,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details + .order-again,
body.woocommerce-account .woocommerce-MyAccount-content p.order-again,
body.woocommerce-account .woocommerce-MyAccount-content .order-again{
  display:block!important;
  width:100%!important;
  clear:both!important;
  float:none!important;
  position:relative!important;
  margin:34px 0 44px!important;
  padding:22px 0 0!important;
  border-top:1px solid var(--ws-border)!important;
  line-height:1!important;
  z-index:2!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .order-again .button,
body.woocommerce-account .woocommerce-MyAccount-content p.order-again .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  padding:0 26px!important;
  margin:0!important;
  border-radius:14px!important;
  float:none!important;
  position:relative!important;
  z-index:3!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .order-again + .woocommerce-customer-details,
body.woocommerce-account .woocommerce-MyAccount-content p.order-again + .woocommerce-customer-details,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details{
  display:block!important;
  clear:both!important;
  margin-top:40px!important;
  padding-top:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details{
  margin-bottom:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details tfoot tr:last-child th,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-table--order-details tfoot tr:last-child td{
  border-bottom:0!important;
}


/* v3.2.0: stronger account heading sizes */
body.woocommerce-account main.ws-page > .ws-container > h1.ws-page-title,
body.woocommerce-account h1.ws-page-title,
body.woocommerce-account .ws-page-title{
  font-size:42px!important;
  line-height:1.05!important;
  letter-spacing:-0.04em!important;
  margin-bottom:22px!important;
}
body.woocommerce-account .ws-account-hero h1,
body.woocommerce-account .ws-account-hero .ws-page-title,
body.woocommerce-account .ws-account-hero h1.ws-page-title{
  font-size:40px!important;
  line-height:1.08!important;
  letter-spacing:-0.04em!important;
  max-width:100%!important;
}
body.woocommerce-account .ws-account-hero{
  padding:28px!important;
}

/* Custom View Order template */
body.woocommerce-account .ws-view-order{
  display:grid;
  gap:22px;
}
body.woocommerce-account .ws-view-order-intro{
  color:var(--ws-muted);
  font-size:15px;
}
body.woocommerce-account .ws-view-order-badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:12px;
}
body.woocommerce-account .ws-view-order-intro mark{
  background:transparent!important;
  color:var(--ws-text)!important;
  font-weight:700;
  padding:0!important;
}
body.woocommerce-account .ws-view-order-card{
  background:var(--ws-surface);
  border:1px solid var(--ws-border);
  border-radius:var(--ws-radius-lg);
  padding:26px;
  box-shadow:var(--ws-shadow-sm);
}
body.woocommerce-account .ws-view-order-card h2{
  font-size:26px!important;
  line-height:1.12!important;
  margin:0 0 18px!important;
}
body.woocommerce-account .ws-view-order-table{
  display:grid;
  border-top:1px solid var(--ws-border);
}
body.woocommerce-account .ws-view-order-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:24px;
  align-items:center;
  padding:16px 0;
  border-bottom:1px solid var(--ws-border);
}
body.woocommerce-account .ws-view-order-row > span:first-child{
  min-width:0;
}
body.woocommerce-account .ws-view-order-row > span:last-child{
  text-align:left;
  white-space:nowrap;
}
body.woocommerce-account .ws-view-order-head span{
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ws-muted);
}
body.woocommerce-account .ws-view-order-total-row > span:first-child{
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ws-muted);
}
body.woocommerce-account .ws-view-order-total-row.order_total > span{
  font-size:20px!important;
  font-weight:800!important;
  color:var(--ws-text)!important;
}
body.woocommerce-account .ws-view-order-actions{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding-top:22px;
  margin-top:0;
}
body.woocommerce-account .ws-view-order-again{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:0 24px!important;
  border-radius:14px!important;
  margin:0!important;
}
body.woocommerce-account .ws-view-order-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
body.woocommerce-account .ws-view-order-card-head h2{
  margin:0!important;
}
body.woocommerce-account .ws-view-order-card-head span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  background:var(--ws-surface-3);
  color:var(--ws-muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
}
body.woocommerce-account .ws-view-order-billing address{
  font-style:normal!important;
  line-height:1.8!important;
  color:var(--ws-muted)!important;
}
body.woocommerce-account .ws-view-order-billing address strong,
body.woocommerce-account .ws-view-order-billing address b{
  color:var(--ws-text)!important;
}
body.woocommerce-account .ws-view-order-billing address a{
  color:var(--ws-purple)!important;
}

/* Hide old Woo blocks in case WooCommerce outputs them from hooks */
body.woocommerce-account .ws-view-order + .woocommerce-order-details,
body.woocommerce-account .ws-view-order + .woocommerce-customer-details{
  display:none!important;
}

@media (max-width:767px){
  body.woocommerce-account main.ws-page > .ws-container > h1.ws-page-title,
  body.woocommerce-account h1.ws-page-title,
  body.woocommerce-account .ws-page-title{
    font-size:34px!important;
  }
  body.woocommerce-account .ws-account-hero h1,
  body.woocommerce-account .ws-account-hero .ws-page-title,
  body.woocommerce-account .ws-account-hero h1.ws-page-title{
    font-size:30px!important;
  }
  body.woocommerce-account .ws-view-order-card{
    padding:20px;
  }
  body.woocommerce-account .ws-view-order-row{
    grid-template-columns:1fr;
    gap:6px;
  }
  body.woocommerce-account .ws-view-order-row > span:last-child{
    text-align:left;
  }
  body.woocommerce-account .ws-view-order-card-head{
    display:grid;
  }
}


/* v3.2.1: My Account mobile responsive fix */
@media (max-width: 767px){

  body.woocommerce-account .ws-page{
    padding-top:18px!important;
  }

  body.woocommerce-account .ws-container{
    width:calc(100% - 24px)!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  body.woocommerce-account .ws-page-title{
    font-size:32px!important;
    line-height:1.05!important;
    margin:0 0 16px!important;
  }

  body.woocommerce-account .ws-account-grid{
    display:block!important;
    width:100%!important;
  }

  body.woocommerce-account .ws-account-nav{
    width:100%!important;
    padding:12px!important;
    margin:0 0 18px!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li{
    margin:0!important;
    width:100%!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    padding:10px 8px!important;
    border-radius:12px!important;
    font-size:14px!important;
    text-align:center!important;
    line-height:1.2!important;
  }

  body.woocommerce-account .ws-account-hero{
    padding:22px!important;
    margin:0 0 18px!important;
    border-radius:22px!important;
  }

  body.woocommerce-account .ws-account-hero .ws-pill{
    margin-bottom:10px!important;
  }

  body.woocommerce-account .ws-account-hero h1{
    font-size:30px!important;
    line-height:1.08!important;
    letter-spacing:-0.04em!important;
    margin-bottom:12px!important;
  }

  body.woocommerce-account .ws-account-hero p{
    font-size:15px!important;
    line-height:1.55!important;
    margin:0!important;
  }

  body.woocommerce-account .ws-account-content{
    padding:18px!important;
    border-radius:22px!important;
    overflow:hidden!important;
  }

  /* Orders table as mobile cards */
  body.woocommerce-account .woocommerce-orders-table{
    display:block!important;
    width:100%!important;
    overflow:visible!important;
    white-space:normal!important;
  }

  body.woocommerce-account .woocommerce-orders-table thead{
    display:none!important;
  }

  body.woocommerce-account .woocommerce-orders-table tbody,
  body.woocommerce-account .woocommerce-orders-table tr,
  body.woocommerce-account .woocommerce-orders-table td{
    display:block!important;
    width:100%!important;
  }

  body.woocommerce-account .woocommerce-orders-table tr{
    padding:16px!important;
    margin:0 0 14px!important;
    border:1px solid var(--ws-border)!important;
    border-radius:18px!important;
    background:var(--ws-surface-2)!important;
  }

  body.woocommerce-account .woocommerce-orders-table td{
    border:0!important;
    padding:8px 0!important;
    white-space:normal!important;
    text-align:left!important;
    font-size:15px!important;
  }

  body.woocommerce-account .woocommerce-orders-table td:before{
    content:attr(data-title);
    display:block;
    margin-bottom:4px;
    color:var(--ws-muted)!important;
    font-size:11px!important;
    font-weight:800!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }

  body.woocommerce-account .woocommerce-orders-table__cell-order-actions{
    padding-top:14px!important;
  }

  body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button{
    width:100%!important;
    min-height:48px!important;
    margin:0!important;
    border-radius:14px!important;
  }

  /* Downloads empty message */
  body.woocommerce-account .woocommerce-info{
    display:grid!important;
    gap:12px!important;
    padding:16px!important;
    font-size:15px!important;
  }

  body.woocommerce-account .woocommerce-info .button{
    width:100%!important;
    min-height:48px!important;
    margin:0!important;
  }

  /* Account details form mobile */
  body.woocommerce-account .woocommerce-EditAccountForm,
  body.woocommerce-account form.woocommerce-EditAccountForm{
    max-width:100%!important;
  }

  body.woocommerce-account .woocommerce-EditAccountForm fieldset{
    padding:18px!important;
    border-radius:18px!important;
  }

  body.woocommerce-account .woocommerce-EditAccountForm button[type=submit]{
    width:100%!important;
  }
}

@media (max-width: 420px){
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-account .ws-account-hero h1{
    font-size:28px!important;
  }
}


/* v3.2.2: cart update button fix */
body.woocommerce-cart .ws-cart-update-btn:not(:disabled),
body.woocommerce-cart button[name="update_cart"]:not(:disabled){
  opacity:1!important;
  cursor:pointer!important;
  background:var(--ws-purple)!important;
  color:#fff!important;
  border-color:var(--ws-purple)!important;
}
body.woocommerce-cart .ws-cart-update-btn:disabled,
body.woocommerce-cart button[name="update_cart"]:disabled{
  opacity:.55!important;
  cursor:not-allowed!important;
}


/* v3.2.3: Support page */
.ws-support-page .ws-container{
  display:grid;
  gap:42px;
}
.ws-support-hero{
  padding:44px;
}
.ws-support-hero h1{
  font-size:clamp(38px,5vw,64px);
  line-height:1.04;
  margin-bottom:14px;
}
.ws-support-hero p{
  max-width:720px;
  font-size:18px;
  line-height:1.6;
}
.ws-support-hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:26px;
}
.ws-support-section{
  display:grid;
  gap:22px;
}
.ws-support-section-head h2{
  font-size:clamp(28px,3vw,42px);
  margin-bottom:8px;
}
.ws-support-section-head p{
  max-width:680px;
  font-size:16px;
}
.ws-support-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.ws-support-card{
  padding:24px;
}
.ws-support-card-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:14px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-weight:800;
  margin-bottom:18px;
}
.ws-support-card h3{
  font-size:20px;
  margin-bottom:10px;
}
.ws-support-card ul{
  list-style:none;
  padding:0;
  margin:18px 0 0;
  display:grid;
  gap:9px;
}
.ws-support-card li{
  position:relative;
  padding-left:22px;
  color:var(--ws-text-2);
  font-size:14px;
}
.ws-support-card li:before{
  content:"";
  position:absolute;
  left:0;
  top:.65em;
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--ws-purple);
}
.ws-support-checklist{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:28px;
  padding:28px;
}
.ws-support-note{
  background:var(--ws-purple-soft);
  border:1px solid var(--ws-purple-border);
  border-radius:var(--ws-radius-lg);
  padding:22px;
}
.ws-support-note p{
  margin:0;
}
.ws-support-compat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.ws-support-mini-card{
  padding:22px;
}
.ws-support-mini-card strong{
  display:block;
  font-size:18px;
  margin-bottom:8px;
}
.ws-support-mini-card span{
  color:var(--ws-muted);
}
.ws-support-faq{
  display:grid;
  gap:12px;
}
.ws-support-faq details{
  padding:0;
  overflow:hidden;
}
.ws-support-faq summary{
  cursor:pointer;
  padding:20px 22px;
  font-weight:800;
  color:var(--ws-text);
  list-style:none;
}
.ws-support-faq summary::-webkit-details-marker{
  display:none;
}
.ws-support-faq summary:after{
  content:"+";
  float:right;
  color:var(--ws-purple);
  font-weight:800;
}
.ws-support-faq details[open] summary:after{
  content:"−";
}
.ws-support-faq details p{
  padding:0 22px 22px;
  margin:0;
}
.ws-support-contact{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:28px;
  align-items:center;
  padding:34px;
}
.ws-support-contact h2{
  font-size:clamp(28px,3vw,42px);
}
.ws-support-contact-card{
  background:var(--ws-surface-2);
  border:1px solid var(--ws-border);
  border-radius:var(--ws-radius-lg);
  padding:22px;
}
.ws-support-contact-card .ws-btn{
  width:100%;
  margin-top:8px;
}

@media (max-width:1080px){
  .ws-support-grid,
  .ws-support-checklist,
  .ws-support-contact{
    grid-template-columns:1fr;
  }
  .ws-support-compat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:767px){
  .ws-support-page .ws-container{
    gap:30px;
  }
  .ws-support-hero,
  .ws-support-checklist,
  .ws-support-contact{
    padding:22px;
  }
  .ws-support-hero h1{
    font-size:36px;
  }
  .ws-support-hero p{
    font-size:16px;
  }
  .ws-support-hero-actions .ws-btn{
    width:100%;
  }
  .ws-support-compat-grid{
    grid-template-columns:1fr;
  }
}


/* v3.2.6: My Account login/register page */
body.woocommerce-account:not(.logged-in) .ws-page-card{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.woocommerce-account:not(.logged-in) .ws-page-card > .ws-page-title{
  display:none!important;
}
.ws-auth-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 520px;
  gap:26px;
  align-items:start;
}
.ws-auth-hero,
.ws-auth-card{
  background:var(--ws-surface);
  border:1px solid var(--ws-border);
  border-radius:var(--ws-radius-xl);
  box-shadow:var(--ws-shadow);
}
.ws-auth-hero{
  padding:42px;
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ws-auth-hero h1{
  font-size:clamp(38px,4.8vw,64px);
  line-height:1.04;
  margin:14px 0;
}
.ws-auth-hero p{
  max-width:640px;
  font-size:17px;
  line-height:1.6;
}
.ws-auth-card{
  padding:26px;
}
.ws-auth-switch{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:6px;
  border-radius:18px;
  background:var(--ws-surface-2);
  border:1px solid var(--ws-border);
  margin-bottom:24px;
}
.ws-auth-tab{
  min-height:48px;
  border:0;
  border-radius:14px;
  background:transparent;
  color:var(--ws-muted);
  font-weight:800;
  font-size:15px;
  cursor:pointer;
}
.ws-auth-tab.is-active{
  background:var(--ws-purple);
  color:#fff;
  box-shadow:var(--ws-shadow-purple);
}
.ws-auth-panel{
  display:none;
}
.ws-auth-panel.is-active{
  display:block;
}
.ws-auth-head{
  margin-bottom:20px;
}
.ws-auth-head h2{
  font-size:30px;
  line-height:1.1;
  margin:0 0 8px;
}
.ws-auth-head p{
  margin:0;
  color:var(--ws-muted);
}
.ws-auth-form .form-row,
.ws-auth-form .form-row-wide{
  display:block!important;
  width:100%!important;
  float:none!important;
  padding:0!important;
  margin:0 0 16px!important;
}
.ws-auth-form label{
  display:block!important;
  margin:0 0 8px!important;
  color:var(--ws-text)!important;
  font-size:14px!important;
  font-weight:700!important;
}
.ws-auth-form input[type=text],
.ws-auth-form input[type=email],
.ws-auth-form input[type=password]{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:56px!important;
  border:1.5px solid var(--ws-border-dark)!important;
  border-radius:var(--ws-radius-sm)!important;
  background:var(--ws-surface)!important;
  padding:13px 16px!important;
  color:var(--ws-text)!important;
  font-size:16px!important;
  box-shadow:none!important;
}
.ws-auth-form input:focus{
  outline:none!important;
  border-color:var(--ws-purple)!important;
  box-shadow:0 0 0 3px var(--ws-purple-glow)!important;
}
.ws-auth-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:2px 0 18px;
}
.ws-auth-row label{
  display:inline-flex!important;
  align-items:center;
  gap:9px;
  margin:0!important;
  color:var(--ws-text-2)!important;
}
.ws-auth-row input[type=checkbox]{
  width:18px!important;
  height:18px!important;
  margin:0!important;
}
.ws-auth-link{
  color:var(--ws-purple)!important;
  font-weight:700;
  white-space:nowrap;
}
.ws-auth-submit{
  margin:0!important;
}
.ws-auth-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:56px!important;
  border-radius:var(--ws-radius)!important;
  font-size:16px!important;
  font-weight:800!important;
}
.ws-auth-auto-password{
  padding:14px 16px;
  border-radius:14px;
  background:var(--ws-purple-soft);
  color:var(--ws-muted);
  margin:0 0 16px;
}
.ws-auth-form .password-input .show-password-input,
.ws-auth-form .show-password-input,
.ws-auth-form .password-input button{
  display:none!important;
  visibility:hidden!important;
}
.ws-auth-form .password-input{
  display:block!important;
  width:100%!important;
}
.ws-auth-form .password-input input{
  padding-right:16px!important;
}

@media (max-width:1080px){
  .ws-auth-shell{
    grid-template-columns:1fr;
  }
  .ws-auth-hero{
    min-height:0;
  }
}
@media (max-width:767px){
  .ws-auth-hero,
  .ws-auth-card{
    padding:22px;
    border-radius:22px;
  }
  .ws-auth-hero h1{
    font-size:34px;
  }
  .ws-auth-row{
    display:grid;
    gap:12px;
  }
  .ws-auth-link{
    white-space:normal;
  }
}


/* v3.2.7: balance my account auth layout */
.ws-auth-shell{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:34px !important;
  align-items:stretch !important;
}
.ws-auth-hero,
.ws-auth-card{
  height:100%;
}
.ws-auth-hero{
  padding:34px !important;
  min-height:unset !important;
  justify-content:space-between !important;
}
.ws-auth-hero-copy{
  margin-top:22px;
}
.ws-auth-hero h1{
  font-size:clamp(28px,3vw,38px) !important;
  line-height:1.08 !important;
  max-width:520px;
  margin:0 0 10px !important;
}
.ws-auth-hero p{
  font-size:17px !important;
  line-height:1.65 !important;
  margin:0 !important;
  max-width:540px;
}
.ws-auth-showcase{
  position:relative;
  min-height:345px;
  border-radius:28px;
  padding:24px;
  background:
    radial-gradient(circle at top left, rgba(123,61,255,.22), transparent 42%),
    radial-gradient(circle at bottom right, rgba(103,21,206,.18), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(247,244,255,.96));
  border:1px solid rgba(123,61,255,.14);
  overflow:hidden;
}
.ws-auth-showcase:before{
  content:'';
  position:absolute;
  inset:auto -40px -55px auto;
  width:180px;
  height:180px;
  border-radius:999px;
  background:rgba(123,61,255,.08);
  filter:blur(2px);
}
.ws-auth-showcase-main{
  position:relative;
  z-index:1;
  width:min(100%, 470px);
  background:rgba(255,255,255,.94);
  border:1px solid rgba(123,61,255,.14);
  border-radius:24px;
  padding:18px;
  box-shadow:0 18px 50px rgba(14,18,32,.08);
}
.ws-auth-showcase-top{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:16px;
  color:var(--ws-text-2);
  font-size:14px;
  font-weight:700;
}
.ws-auth-showcase-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:linear-gradient(135deg, #7B3DFF, #6715ce);
  box-shadow:0 0 0 6px rgba(123,61,255,.12);
}
.ws-auth-showcase-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.ws-auth-mini-card{
  min-height:102px;
  border-radius:18px;
  border:1px solid var(--ws-border);
  background:#fff;
  padding:16px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.ws-auth-mini-card strong{
  display:block;
  font-size:16px;
  line-height:1.2;
}
.ws-auth-mini-card span{
  display:block;
  font-size:13px;
  color:var(--ws-muted);
  line-height:1.45;
}
.ws-auth-floating{
  position:absolute;
  z-index:2;
  background:#fff;
  border:1px solid rgba(123,61,255,.12);
  border-radius:18px;
  box-shadow:0 20px 44px rgba(15,23,42,.10);
}
.ws-auth-floating-one{
  right:24px;
  top:26px;
  max-width:220px;
  padding:14px 16px;
}
.ws-auth-floating-one strong,
.ws-auth-floating-two strong{
  display:block;
  font-size:14px;
  line-height:1.35;
}
.ws-auth-floating-kicker,
.ws-auth-floating-two span:last-child{
  display:block;
  font-size:12px;
  color:var(--ws-muted);
  line-height:1.45;
}
.ws-auth-floating-two{
  left:26px;
  bottom:24px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  max-width:255px;
  padding:14px 16px;
}
.ws-auth-check{
  width:28px;
  height:28px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-weight:800;
  background:linear-gradient(135deg, #7B3DFF, #6715ce);
  flex:0 0 28px;
}
@media (max-width:1080px){
  .ws-auth-shell{
    grid-template-columns:1fr !important;
  }
  .ws-auth-showcase{
    min-height:300px;
  }
}
@media (max-width:767px){
  .ws-auth-hero,
  .ws-auth-card{
    height:auto;
  }
  .ws-auth-showcase{
    min-height:260px;
    padding:18px;
    border-radius:22px;
  }
  .ws-auth-showcase-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .ws-auth-mini-card{
    min-height:92px;
    padding:12px;
    border-radius:16px;
  }
  .ws-auth-floating-one{
    right:16px;
    top:16px;
    max-width:170px;
  }
  .ws-auth-floating-two{
    left:16px;
    right:16px;
    bottom:16px;
    max-width:none;
  }
  .ws-auth-hero h1{
    font-size:28px !important;
  }
}
@media (max-width:520px){
  .ws-auth-showcase-grid{
    grid-template-columns:1fr;
  }
  .ws-auth-showcase{
    min-height:unset;
    padding-bottom:92px;
  }
  .ws-auth-floating-one{
    position:relative;
    inset:auto;
    max-width:none;
    margin:14px 0 0;
  }
  .ws-auth-floating-two{
    position:relative;
    inset:auto;
    margin-top:12px;
  }
}


/* v3.2.8: clean auth hero spacing and remove overlapping cards */
.ws-auth-hero-pill{
  display:inline-flex;
  margin-bottom:18px;
}
.ws-auth-showcase{
  min-height:unset !important;
  padding:26px !important;
}
.ws-auth-showcase-main-clean{
  width:100% !important;
  max-width:none !important;
  padding:22px !important;
}
.ws-auth-showcase-grid-clean{
  margin-bottom:16px;
}
.ws-auth-showcase-note{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:16px 18px;
  border:1px solid rgba(123,61,255,.12);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.ws-auth-showcase-note strong{
  display:block;
  font-size:15px;
  line-height:1.35;
  margin-bottom:4px;
}
.ws-auth-showcase-note span:last-child{
  display:block;
  font-size:13px;
  line-height:1.5;
  color:var(--ws-muted);
}
.ws-auth-hero-copy{
  margin-top:26px !important;
}
.ws-auth-hero h1{
  margin-top:0 !important;
}
.ws-auth-floating,
.ws-auth-floating-one,
.ws-auth-floating-two{
  display:none !important;
}
@media (max-width:767px){
  .ws-auth-hero-pill{
    margin-bottom:14px;
  }
  .ws-auth-showcase{
    padding:18px !important;
  }
  .ws-auth-showcase-main-clean{
    padding:16px !important;
  }
  .ws-auth-showcase-note{
    padding:14px 14px;
  }
}


/* v3.2.9: remove auth hero bottom copy spacing */
.ws-auth-hero{align-content:start;}
.ws-auth-hero-copy{display:none !important;}


/* v3.3.0: Built-in documentation/about/contact/legal pages */
.ws-info-page .ws-container{
  display:grid;
  gap:36px;
}
.ws-info-hero{
  padding:42px;
}
.ws-info-hero h1{
  max-width:900px;
  font-size:clamp(36px,4.8vw,62px);
  line-height:1.05;
  margin:12px 0;
}
.ws-info-hero p{
  max-width:760px;
  font-size:17px;
  line-height:1.65;
}
.ws-info-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.ws-info-layout{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.ws-info-sidebar{
  position:sticky;
  top:96px;
  display:grid;
  gap:8px;
  padding:20px;
}
.ws-info-sidebar strong{
  margin-bottom:8px;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--ws-muted);
}
.ws-info-sidebar a{
  display:flex;
  min-height:40px;
  align-items:center;
  padding:8px 12px;
  border-radius:12px;
  color:var(--ws-text-2);
  font-weight:700;
}
.ws-info-sidebar a:hover{
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
}
.ws-info-content{
  display:grid;
  gap:18px;
}
.ws-info-card{
  padding:28px;
}
.ws-info-card h2{
  font-size:clamp(24px,2.6vw,36px);
  line-height:1.12;
  margin:8px 0 12px;
}
.ws-info-card p{
  font-size:16px;
  line-height:1.65;
}
.ws-info-card ol,
.ws-info-card ul:not(.ws-check-list){
  margin:16px 0 0;
  padding-left:22px;
  color:var(--ws-text-2);
  line-height:1.8;
}
.ws-step{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:14px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-weight:800;
}
.ws-faq-list{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.ws-faq-list details{
  border:1px solid var(--ws-border);
  border-radius:16px;
  padding:0;
  background:var(--ws-surface-2);
  overflow:hidden;
}
.ws-faq-list summary{
  cursor:pointer;
  padding:16px 18px;
  font-weight:800;
}
.ws-faq-list p{
  padding:0 18px 18px;
  margin:0;
}
.ws-info-grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.ws-mini-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:20px;
}
.ws-mini-stats div{
  background:var(--ws-surface-2);
  border:1px solid var(--ws-border);
  border-radius:16px;
  padding:16px;
}
.ws-mini-stats strong{
  display:block;
  margin-bottom:6px;
}
.ws-mini-stats span{
  color:var(--ws-muted);
  font-size:14px;
  line-height:1.5;
}
.ws-legal-content{
  max-width:980px;
}

@media (max-width:1080px){
  .ws-info-layout,
  .ws-info-grid-2{
    grid-template-columns:1fr;
  }
  .ws-info-sidebar{
    position:static;
  }
  .ws-mini-stats{
    grid-template-columns:1fr;
  }
}
@media (max-width:767px){
  .ws-info-page .ws-container{
    gap:26px;
  }
  .ws-info-hero,
  .ws-info-card{
    padding:22px;
  }
  .ws-info-hero h1{
    font-size:34px;
  }
  .ws-info-actions .ws-btn{
    width:100%;
  }
}


/* v3.3.1: Product + documentation changelog */
.ws-product-changelog{
  margin-top:42px;
}
.ws-changelog-list{
  display:grid;
  gap:16px;
  margin-top:22px;
}
.ws-changelog-item{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:24px;
  align-items:start;
  padding:24px;
}
.ws-changelog-version strong{
  display:block;
  font-size:24px;
  line-height:1;
  color:var(--ws-text);
  margin-bottom:8px;
}
.ws-changelog-version span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.ws-changelog-item h3{
  font-size:20px;
  margin:0 0 12px;
}
.ws-changelog-item ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:9px;
}
.ws-changelog-item li{
  position:relative;
  padding-left:22px;
  color:var(--ws-text-2);
  line-height:1.55;
}
.ws-changelog-item li:before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--ws-purple);
}

.ws-docs-changelog-list{
  display:grid;
  gap:16px;
  margin-top:22px;
}
.ws-docs-changelog-item{
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:22px;
  padding:18px;
  border:1px solid var(--ws-border);
  border-radius:18px;
  background:var(--ws-surface-2);
}
.ws-docs-changelog-item > strong{
  color:var(--ws-purple-dark);
  font-size:18px;
}
.ws-docs-changelog-item h3{
  margin:0 0 10px;
  font-size:18px;
}
.ws-docs-changelog-item ul{
  margin:0;
  padding-left:18px;
  line-height:1.7;
  color:var(--ws-text-2);
}

@media (max-width:767px){
  .ws-changelog-item,
  .ws-docs-changelog-item{
    grid-template-columns:1fr;
    gap:14px;
    padding:18px;
  }
}


/* v3.3.2: Dedicated changelog page */
.ws-changelog-page-list{
  display:grid;
  gap:18px;
}
.ws-changelog-release{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:26px;
  align-items:start;
  padding:28px;
}
.ws-changelog-release-version strong{
  display:block;
  font-size:28px;
  line-height:1;
  margin-bottom:10px;
  color:var(--ws-text);
}
.ws-changelog-release-version span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 11px;
  border-radius:999px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-size:11px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.ws-changelog-release-content h2{
  font-size:26px;
  line-height:1.15;
  margin:0 0 14px;
}
.ws-changelog-release-content ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}
.ws-changelog-release-content li{
  position:relative;
  padding-left:24px;
  color:var(--ws-text-2);
  line-height:1.6;
}
.ws-changelog-release-content li:before{
  content:"";
  position:absolute;
  left:0;
  top:.66em;
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--ws-purple);
}
@media (max-width:767px){
  .ws-changelog-release{
    grid-template-columns:1fr;
    gap:16px;
    padding:22px;
  }
}


/* v3.3.3: product tabs cleanup + remove product-page changelog */
.single-product .ws-product-changelog,
body.single-product .ws-product-changelog{
  display:none!important;
}

/* Remove weird bullets/dots around WooCommerce tabs */
body.single-product .woocommerce-tabs ul.tabs,
body.single-product .woocommerce-tabs ul.tabs li,
body.single-product .woocommerce-tabs .tabs,
body.single-product .woocommerce-tabs .tabs li{
  list-style:none!important;
}
body.single-product .woocommerce-tabs ul.tabs{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin:0 0 28px!important;
  padding:0!important;
  border:0!important;
}
body.single-product .woocommerce-tabs ul.tabs:before,
body.single-product .woocommerce-tabs ul.tabs:after,
body.single-product .woocommerce-tabs ul.tabs li:before,
body.single-product .woocommerce-tabs ul.tabs li:after{
  display:none!important;
  content:none!important;
  border:0!important;
  box-shadow:none!important;
}
body.single-product .woocommerce-tabs ul.tabs li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.single-product .woocommerce-tabs ul.tabs li a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  padding:0 18px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:14px!important;
  background:var(--ws-surface)!important;
  color:var(--ws-text-2)!important;
  font-size:15px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.single-product .woocommerce-tabs ul.tabs li.active a,
body.single-product .woocommerce-tabs ul.tabs li a:hover{
  border-color:var(--ws-purple-border)!important;
  background:var(--ws-purple-soft)!important;
  color:var(--ws-purple-dark)!important;
}
body.single-product .woocommerce-tabs .panel{
  margin:0!important;
  padding:0!important;
}
body.single-product .woocommerce-tabs .panel h2{
  font-size:clamp(28px,3vw,44px)!important;
  line-height:1.1!important;
  margin:0 0 22px!important;
}
body.single-product .woocommerce-tabs table.shop_attributes{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  margin:0!important;
}
body.single-product .woocommerce-tabs table.shop_attributes th,
body.single-product .woocommerce-tabs table.shop_attributes td{
  padding:16px 0!important;
  border:0!important;
  border-bottom:1px solid var(--ws-border)!important;
  background:transparent!important;
  color:var(--ws-text)!important;
}
body.single-product .woocommerce-tabs table.shop_attributes th{
  width:150px!important;
  font-size:15px!important;
  font-weight:800!important;
}
body.single-product .woocommerce-tabs table.shop_attributes td{
  color:var(--ws-muted)!important;
  font-size:16px!important;
}
body.single-product .woocommerce-tabs table.shop_attributes p{
  padding:0!important;
  margin:0!important;
}

/* If browser/theme cache still loads old bullets, force marker hidden */
body.single-product .woocommerce-tabs li::marker{
  content:""!important;
  font-size:0!important;
}

@media (max-width:767px){
  body.single-product .woocommerce-tabs ul.tabs{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body.single-product .woocommerce-tabs ul.tabs li a{
    width:100%!important;
  }
}


/* v3.3.4: full-width reviews tab */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #tab-reviews,
body.single-product .woocommerce-tabs #reviews #comments,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper,
body.single-product .woocommerce-tabs #reviews #review_form,
body.single-product .woocommerce-tabs #reviews .comment-respond,
body.single-product .woocommerce-tabs #reviews form#commentform{
  width:100%!important;
  max-width:100%!important;
}

body.single-product .woocommerce-tabs #reviews{
  display:block!important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  margin-bottom:28px!important;
}

body.single-product .woocommerce-tabs #reviews .comment-reply-title,
body.single-product .woocommerce-tabs #reviews #reply-title{
  display:block!important;
  font-size:22px!important;
  line-height:1.25!important;
  font-weight:800!important;
  color:var(--ws-text)!important;
  margin:0 0 18px!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
  width:100%!important;
  max-width:100%!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form p,
body.single-product .woocommerce-tabs #reviews .comment-form-rating,
body.single-product .woocommerce-tabs #reviews .comment-form-comment,
body.single-product .woocommerce-tabs #reviews .form-submit{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs #reviews label{
  display:block!important;
  margin:0 0 8px!important;
  color:var(--ws-text)!important;
  font-size:14px!important;
  font-weight:800!important;
}

body.single-product .woocommerce-tabs #reviews textarea,
body.single-product .woocommerce-tabs #reviews input[type=text],
body.single-product .woocommerce-tabs #reviews input[type=email]{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:56px!important;
  border:1.5px solid var(--ws-border-dark)!important;
  border-radius:var(--ws-radius-sm)!important;
  background:var(--ws-surface)!important;
  padding:14px 16px!important;
  color:var(--ws-text)!important;
  font-size:16px!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs #reviews textarea{
  min-height:220px!important;
  resize:vertical!important;
}

body.single-product .woocommerce-tabs #reviews textarea:focus,
body.single-product .woocommerce-tabs #reviews input:focus{
  outline:none!important;
  border-color:var(--ws-purple)!important;
  box-shadow:0 0 0 3px var(--ws-purple-glow)!important;
}

body.single-product .woocommerce-tabs #reviews .stars{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:8px 0 0!important;
  width:100%!important;
}

body.single-product .woocommerce-tabs #reviews .stars a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:var(--ws-surface-2)!important;
  border:1px solid var(--ws-border)!important;
  color:var(--ws-muted)!important;
  font-size:13px!important;
  font-weight:800!important;
  text-indent:0!important;
  width:auto!important;
  height:auto!important;
  overflow:visible!important;
}

body.single-product .woocommerce-tabs #reviews .stars a:hover,
body.single-product .woocommerce-tabs #reviews .stars.selected a{
  background:var(--ws-purple-soft)!important;
  border-color:var(--ws-purple-border)!important;
  color:var(--ws-purple-dark)!important;
}

body.single-product .woocommerce-tabs #reviews .form-submit input[type=submit],
body.single-product .woocommerce-tabs #reviews .form-submit .submit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:0 26px!important;
  border-radius:14px!important;
  background:var(--ws-purple)!important;
  color:#fff!important;
  border:none!important;
  font-size:16px!important;
  font-weight:800!important;
  cursor:pointer!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs #reviews .form-submit input[type=submit]:hover,
body.single-product .woocommerce-tabs #reviews .form-submit .submit:hover{
  background:var(--ws-purple-dark)!important;
  box-shadow:var(--ws-shadow-purple)!important;
}

@media (max-width:767px){
  body.single-product .woocommerce-tabs #reviews textarea{
    min-height:180px!important;
  }
  body.single-product .woocommerce-tabs #reviews .form-submit input[type=submit],
  body.single-product .woocommerce-tabs #reviews .form-submit .submit{
    width:100%!important;
  }
}


/* v3.3.9: remove product breadcrumb/marketplace path */
body.single-product .woocommerce-breadcrumb,
body.single-product .ws-breadcrumb,
body.single-product .ws-breadcrumbs,
body.single-product nav.breadcrumb,
body.single-product nav.breadcrumbs,
body.single-product .breadcrumb,
body.single-product .breadcrumbs{
  display:none!important;
}

/* v3.3.9: review list stars + smaller rating selector */
body.single-product .woocommerce-tabs #reviews .star-rating{
  position:relative!important;
  display:inline-block!important;
  width:auto!important;
  height:auto!important;
  font-size:20px!important;
  line-height:1!important;
  letter-spacing:3px!important;
  color:transparent!important;
  vertical-align:middle!important;
  overflow:visible!important;
}
body.single-product .woocommerce-tabs #reviews .star-rating::before{
  content:"★★★★★"!important;
  display:block!important;
  color:#E5E7EB!important;
}
body.single-product .woocommerce-tabs #reviews .star-rating > span{
  position:absolute!important;
  top:0!important;
  left:0!important;
  height:100%!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-indent:-9999px!important;
  display:block!important;
}
body.single-product .woocommerce-tabs #reviews .star-rating > span::before{
  content:"★★★★★"!important;
  position:absolute!important;
  top:0!important;
  left:0!important;
  text-indent:0!important;
  color:#F59E0B!important;
  text-shadow:0 0 12px rgba(245,158,11,.20)!important;
}
body.single-product .woocommerce-tabs #reviews .star-rating .screen-reader-text,
body.single-product .woocommerce-tabs #reviews .woocommerce-review__dash{
  display:none!important;
}
body.single-product .woocommerce-tabs #reviews .comment-text{
  border:1px solid var(--ws-border)!important;
  border-radius:22px!important;
  padding:18px 20px!important;
  background:#fff!important;
}
body.single-product .woocommerce-tabs #reviews .comment-form-rating{
  padding:16px 18px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:20px!important;
  background:linear-gradient(180deg, rgba(123,61,255,.035), rgba(123,61,255,.015))!important;
  box-shadow:0 8px 20px rgba(17,24,39,.04)!important;
}
body.single-product .woocommerce-tabs #reviews .stars{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  width:auto!important;
  max-width:100%!important;
  padding:0!important;
  margin:8px 0 0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.single-product .woocommerce-tabs #reviews .stars a{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:52px!important;
  min-width:52px!important;
  height:52px!important;
  min-height:52px!important;
  padding:0!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#ffffff,#fcfcff)!important;
  border:1px solid rgba(123,61,255,.12)!important;
  box-shadow:0 6px 16px rgba(17,24,39,.04)!important;
  color:transparent!important;
  font-size:0!important;
  line-height:1!important;
  text-indent:0!important;
  overflow:hidden!important;
  text-decoration:none!important;
  outline:none!important;
}
body.single-product .woocommerce-tabs #reviews .stars a::before{
  content:"★"!important;
  font-size:28px!important;
  line-height:1!important;
  color:#D1D5DB!important;
  text-shadow:none!important;
  transition:transform .18s ease, color .18s ease, text-shadow .18s ease!important;
}
body.single-product .woocommerce-tabs #reviews .stars a::after{
  content:none!important;
  display:none!important;
}
body.single-product .woocommerce-tabs #reviews .stars a:hover,
body.single-product .woocommerce-tabs #reviews .stars a.ws-filled,
body.single-product .woocommerce-tabs #reviews .stars a.active,
body.single-product .woocommerce-tabs #reviews .stars.selected a.ws-filled{
  background:linear-gradient(180deg,#fffdf5,#fff8df)!important;
  border-color:rgba(245,158,11,.45)!important;
  box-shadow:0 10px 20px rgba(245,158,11,.12)!important;
}
body.single-product .woocommerce-tabs #reviews .stars a:hover::before,
body.single-product .woocommerce-tabs #reviews .stars a.ws-filled::before,
body.single-product .woocommerce-tabs #reviews .stars a.active::before,
body.single-product .woocommerce-tabs #reviews .stars.selected a.ws-filled::before{
  color:#F59E0B!important;
  text-shadow:0 0 12px rgba(245,158,11,.22)!important;
  transform:scale(1.04)!important;
}
body.single-product .woocommerce-tabs #reviews .stars a:focus,
body.single-product .woocommerce-tabs #reviews .stars a:focus-visible{
  outline:none!important;
}
@media (max-width:767px){
  body.single-product .woocommerce-tabs #reviews .stars a{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
  }
  body.single-product .woocommerce-tabs #reviews .stars a::before{
    font-size:24px!important;
  }
}


/* v3.4.0: support tickets and contact form */
.ws-ticket-form{
  display:grid;
  gap:16px;
  margin-top:22px;
}
.ws-ticket-form p{
  margin:0!important;
}
.ws-ticket-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.ws-ticket-form label{
  display:block;
  margin:0 0 8px;
  color:var(--ws-text);
  font-size:14px;
  font-weight:800;
}
.ws-ticket-form input,
.ws-ticket-form textarea{
  display:block;
  width:100%;
  border:1.5px solid var(--ws-border-dark);
  border-radius:var(--ws-radius-sm);
  background:var(--ws-surface);
  color:var(--ws-text);
  padding:14px 16px;
  font-size:16px;
  box-shadow:none;
}
.ws-ticket-form input{
  min-height:56px;
}
.ws-ticket-form textarea{
  min-height:180px;
  resize:vertical;
}
.ws-ticket-form input:focus,
.ws-ticket-form textarea:focus{
  outline:none;
  border-color:var(--ws-purple);
  box-shadow:0 0 0 3px var(--ws-purple-glow);
}
.ws-ticket-submit{
  justify-self:start;
  min-height:54px;
}
.ws-account-tickets{
  display:grid;
  gap:22px;
}
.ws-account-ticket-card{
  padding:28px;
}
.ws-account-ticket-card h2{
  font-size:clamp(26px,3vw,38px);
  line-height:1.12;
  margin:10px 0 10px;
}
.ws-ticket-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.ws-ticket-head h2{
  margin:0;
}
.ws-ticket-head span{
  display:inline-flex;
  min-height:30px;
  align-items:center;
  padding:0 12px;
  border-radius:999px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.ws-ticket-list{
  display:grid;
  gap:12px;
}
.ws-ticket-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px;
  border:1px solid var(--ws-border);
  border-radius:18px;
  background:var(--ws-surface-2);
}
.ws-ticket-item strong{
  display:block;
  color:var(--ws-text);
  margin-bottom:4px;
}
.ws-ticket-item span{
  color:var(--ws-muted);
  font-size:14px;
}
.ws-ticket-status{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:#ecfdf5;
  color:#047857;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.ws-ticket-empty{
  padding:18px;
  border:1px solid var(--ws-border);
  border-radius:18px;
  background:var(--ws-surface-2);
  color:var(--ws-muted);
}
.ws-contact-form-section{
  max-width:980px;
}
.ws-ticket-message{
  margin:18px 0 0!important;
}
@media (max-width:767px){
  .ws-ticket-form-grid{
    grid-template-columns:1fr;
  }
  .ws-account-ticket-card{
    padding:22px;
  }
  .ws-ticket-item,
  .ws-ticket-head{
    display:grid;
  }
  .ws-ticket-submit{
    width:100%;
  }
}


/* v3.4.1: simple contact page layout */
.ws-contact-simple-page .ws-container{
  max-width:1180px;
  gap:24px;
}
.ws-contact-simple-hero{
  padding:34px;
}
.ws-contact-simple-hero h1{
  font-size:clamp(36px,4vw,56px);
  max-width:760px;
}
.ws-contact-simple-hero p{
  max-width:720px;
}
.ws-contact-simple-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:24px;
  align-items:start;
}
.ws-contact-main{
  min-width:0;
}
.ws-contact-sidebar{
  display:grid;
  gap:18px;
  position:sticky;
  top:96px;
}
.ws-contact-form-section{
  max-width:none!important;
}
.ws-contact-form-section h2{
  font-size:clamp(30px,3vw,44px);
}
.ws-contact-side-card{
  padding:24px;
}
.ws-contact-side-card h2{
  font-size:24px;
  line-height:1.15;
  margin:0 0 10px;
}
.ws-contact-side-card .ws-pill + h2{
  margin-top:12px;
}
.ws-contact-side-card p{
  font-size:15px;
  line-height:1.65;
}
.ws-contact-side-card .ws-btn{
  width:100%;
  margin-top:8px;
}
.ws-contact-side-card .ws-check-list{
  margin-top:14px;
}
.ws-contact-side-card .ws-check-list li{
  font-size:14px;
}
@media (max-width:1080px){
  .ws-contact-simple-layout{
    grid-template-columns:1fr;
  }
  .ws-contact-sidebar{
    position:static;
    grid-template-columns:1fr 1fr;
  }
  .ws-contact-sidebar .ws-contact-side-card:last-child{
    grid-column:1 / -1;
  }
}
@media (max-width:767px){
  .ws-contact-simple-hero,
  .ws-contact-form-section,
  .ws-contact-side-card{
    padding:22px;
  }
  .ws-contact-sidebar{
    grid-template-columns:1fr;
  }
  .ws-contact-sidebar .ws-contact-side-card:last-child{
    grid-column:auto;
  }
}


/* v3.4.2: Contact Form 7 styling + endpoint page safety */
.ws-cf7-wrap{
  margin-top:22px;
}
.ws-cf7-wrap form{
  display:grid;
  gap:16px;
}
.ws-cf7-wrap p{
  margin:0!important;
}
.ws-cf7-wrap label{
  display:block;
  margin:0 0 8px;
  color:var(--ws-text);
  font-size:14px;
  font-weight:800;
}
.ws-cf7-wrap input[type="text"],
.ws-cf7-wrap input[type="email"],
.ws-cf7-wrap input[type="tel"],
.ws-cf7-wrap input[type="url"],
.ws-cf7-wrap input[type="number"],
.ws-cf7-wrap select,
.ws-cf7-wrap textarea{
  display:block;
  width:100%;
  border:1.5px solid var(--ws-border-dark);
  border-radius:var(--ws-radius-sm);
  background:var(--ws-surface);
  color:var(--ws-text);
  padding:14px 16px;
  font-size:16px;
  box-shadow:none;
}
.ws-cf7-wrap input{
  min-height:56px;
}
.ws-cf7-wrap textarea{
  min-height:180px;
  resize:vertical;
}
.ws-cf7-wrap input:focus,
.ws-cf7-wrap select:focus,
.ws-cf7-wrap textarea:focus{
  outline:none;
  border-color:var(--ws-purple);
  box-shadow:0 0 0 3px var(--ws-purple-glow);
}
.ws-cf7-wrap input[type="submit"],
.ws-cf7-wrap button[type="submit"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 24px;
  border-radius:var(--ws-radius-sm);
  background:var(--ws-purple);
  color:#fff;
  border:0;
  font-weight:800;
  cursor:pointer;
}
.ws-cf7-wrap input[type="submit"]:hover,
.ws-cf7-wrap button[type="submit"]:hover{
  background:var(--ws-purple-dark);
}
.ws-cf7-wrap .wpcf7-not-valid-tip{
  margin-top:7px;
  font-size:13px;
  font-weight:700;
}
.ws-cf7-wrap .wpcf7-response-output{
  margin:16px 0 0!important;
  padding:14px 16px!important;
  border-radius:14px!important;
}
@media (max-width:767px){
  .ws-cf7-wrap input[type="submit"],
  .ws-cf7-wrap button[type="submit"]{
    width:100%;
  }
}


/* v3.4.3: safe support tickets route page */
.ws-support-tickets-page .ws-container{
  display:grid;
  gap:24px;
}
.ws-support-ticket-login{
  padding:30px;
}
.ws-support-ticket-login h2{
  font-size:clamp(28px,3vw,42px);
  margin:0 0 10px;
}
.ws-support-ticket-login .ws-btn{
  margin-top:16px;
}
@media (max-width:767px){
  .ws-support-ticket-login{
    padding:22px;
  }
}


/* v3.4.7: remove large white title boxes from content pages */
.ws-info-page .ws-info-hero,
.ws-contact-simple-page .ws-contact-simple-hero,
.ws-docs-page .ws-info-hero,
.ws-about-page .ws-info-hero,
.ws-contact-page .ws-info-hero,
.ws-legal-page .ws-info-hero,
.ws-changelog-page .ws-info-hero,
.ws-support-page .ws-support-hero{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:28px 0 18px!important;
}

.ws-info-page .ws-info-hero h1,
.ws-contact-simple-page .ws-contact-simple-hero h1,
.ws-docs-page .ws-info-hero h1,
.ws-about-page .ws-info-hero h1,
.ws-contact-page .ws-info-hero h1,
.ws-legal-page .ws-info-hero h1,
.ws-changelog-page .ws-info-hero h1,
.ws-support-page .ws-support-hero h1{
  margin-top:14px!important;
  margin-bottom:14px!important;
}

.ws-info-page .ws-info-hero p,
.ws-contact-simple-page .ws-contact-simple-hero p,
.ws-docs-page .ws-info-hero p,
.ws-about-page .ws-info-hero p,
.ws-contact-page .ws-info-hero p,
.ws-legal-page .ws-info-hero p,
.ws-changelog-page .ws-info-hero p,
.ws-support-page .ws-support-hero p{
  max-width:820px!important;
}

.ws-info-actions,
.ws-support-hero-actions{
  margin-top:24px!important;
}

/* Keep actual content sections/cards white, only remove the title hero box */
.ws-info-page .ws-info-card,
.ws-info-page .ws-card:not(.ws-info-hero):not(.ws-support-hero),
.ws-support-page .ws-card:not(.ws-support-hero){
  border-radius:var(--ws-radius-xl);
}

/* tighter top spacing because the hero no longer has a large card */
.ws-info-page .ws-container,
.ws-contact-simple-page .ws-container,
.ws-support-page .ws-container{
  gap:24px!important;
}

@media (max-width:767px){
  .ws-info-page .ws-info-hero,
  .ws-contact-simple-page .ws-contact-simple-hero,
  .ws-docs-page .ws-info-hero,
  .ws-about-page .ws-info-hero,
  .ws-contact-page .ws-info-hero,
  .ws-legal-page .ws-info-hero,
  .ws-changelog-page .ws-info-hero,
  .ws-support-page .ws-support-hero{
    padding:20px 0 10px!important;
  }

  .ws-info-page .ws-info-hero h1,
  .ws-contact-simple-page .ws-contact-simple-hero h1,
  .ws-docs-page .ws-info-hero h1,
  .ws-about-page .ws-info-hero h1,
  .ws-contact-page .ws-info-hero h1,
  .ws-legal-page .ws-info-hero h1,
  .ws-changelog-page .ws-info-hero h1,
  .ws-support-page .ws-support-hero h1{
    font-size:34px!important;
  }
}


/* v3.4.8: product stat cards redesign + live reviews */
body.single-product .ws-product-stats-live{
  gap:18px!important;
}

body.single-product .ws-product-stats-live .ws-product-stat-card{
  position:relative;
  overflow:hidden;
  display:grid!important;
  align-content:start!important;
  gap:6px!important;
  min-height:150px!important;
  padding:24px!important;
  border-radius:26px!important;
  border:1px solid rgba(123,61,255,.12)!important;
  background:
    radial-gradient(circle at top right, rgba(123,61,255,.12), transparent 38%),
    linear-gradient(180deg, #ffffff, #fbfbff)!important;
  box-shadow:0 18px 42px rgba(15,23,42,.08)!important;
  color:var(--ws-text)!important;
  text-decoration:none!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
}

body.single-product .ws-product-stats-live .ws-product-stat-card:hover{
  transform:translateY(-3px);
  border-color:rgba(123,61,255,.28)!important;
  box-shadow:0 24px 52px rgba(15,23,42,.12)!important;
}

body.single-product .ws-product-stats-live .ws-product-stat-card strong{
  display:block!important;
  padding-right:54px!important;
  color:var(--ws-text)!important;
  font-size:17px!important;
  line-height:1.2!important;
  font-weight:850!important;
}

body.single-product .ws-product-stats-live .ws-stat-main{
  display:block!important;
  margin-top:12px!important;
  color:var(--ws-text)!important;
  font-size:34px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:-.04em!important;
}

body.single-product .ws-product-stats-live small{
  display:block!important;
  margin-top:2px!important;
  color:var(--ws-muted)!important;
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:700!important;
}

body.single-product .ws-product-stats-live .ws-stat-icon{
  position:absolute;
  right:18px;
  top:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:16px;
  background:linear-gradient(180deg, #fff7db, #fff1bd);
  color:#F59E0B;
  font-size:22px;
  font-weight:900;
  box-shadow:0 12px 24px rgba(245,158,11,.16);
}

body.single-product .ws-product-stats-live .ws-stat-icon-purple{
  background:linear-gradient(180deg, rgba(123,61,255,.14), rgba(123,61,255,.07));
  color:var(--ws-purple);
  box-shadow:0 12px 24px rgba(123,61,255,.13);
}

body.single-product .ws-product-reviews-card{
  cursor:pointer;
}

@media (max-width:767px){
  body.single-product .ws-product-stats-live .ws-product-stat-card{
    min-height:128px!important;
    padding:20px!important;
  }
  body.single-product .ws-product-stats-live .ws-stat-main{
    font-size:30px!important;
  }
}


/* v3.4.9: product stats sizing fix */
body.single-product .ws-product-stats-live{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}

body.single-product .ws-product-stats-live .ws-product-stat-card{
  min-height:122px!important;
  padding:18px!important;
  border-radius:22px!important;
  align-content:start!important;
  gap:4px!important;
  background:
    radial-gradient(circle at top right, rgba(123,61,255,.08), transparent 34%),
    linear-gradient(180deg, #ffffff, #fcfcff)!important;
}

body.single-product .ws-product-stats-live .ws-product-stat-card strong{
  max-width:calc(100% - 44px)!important;
  padding-right:0!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:visible!important;
  letter-spacing:0!important;
}

body.single-product .ws-product-stats-live .ws-stat-main{
  margin-top:12px!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.035em!important;
}

body.single-product .ws-product-stats-live small{
  margin-top:4px!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:700!important;
  color:var(--ws-muted)!important;
}

body.single-product .ws-product-stats-live .ws-stat-icon{
  right:16px!important;
  top:16px!important;
  width:34px!important;
  height:34px!important;
  border-radius:13px!important;
  font-size:18px!important;
  box-shadow:0 8px 18px rgba(245,158,11,.12)!important;
}

body.single-product .ws-product-stats-live .ws-stat-icon-purple{
  box-shadow:0 8px 18px rgba(123,61,255,.10)!important;
}

/* prevent old mini-card styles from forcing huge text */
body.single-product .ws-product-stats-live .ws-mini-card span:not(.ws-stat-icon):not(.ws-stat-main){
  font-size:inherit!important;
  line-height:inherit!important;
}

@media (max-width:1180px){
  body.single-product .ws-product-stats-live{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.single-product .ws-product-stats-live .ws-product-stat-card{
    padding:16px!important;
  }
  body.single-product .ws-product-stats-live .ws-product-stat-card strong{
    font-size:14px!important;
  }
  body.single-product .ws-product-stats-live .ws-stat-main{
    font-size:25px!important;
  }
  body.single-product .ws-product-stats-live .ws-stat-icon{
    width:32px!important;
    height:32px!important;
    font-size:17px!important;
  }
}

@media (max-width:767px){
  body.single-product .ws-product-stats-live{
    grid-template-columns:1fr!important;
  }
  body.single-product .ws-product-stats-live .ws-product-stat-card{
    min-height:104px!important;
    padding:18px!important;
  }
  body.single-product .ws-product-stats-live .ws-stat-main{
    font-size:26px!important;
  }
}

/* v3.5.0: smaller product stat cards, inline icons */
body.single-product .ws-product-stats-live{
  gap:14px!important;
}
body.single-product .ws-product-stats-live .ws-product-stat-card{
  min-height:112px!important;
  padding:16px 18px!important;
  border-radius:24px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
}
body.single-product .ws-product-stats-live .ws-product-stat-head{
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0 0 12px!important;
}
body.single-product .ws-product-stats-live .ws-product-stat-card strong{
  max-width:none!important;
  padding-right:0!important;
  font-size:14px!important;
  line-height:1.15!important;
  font-weight:800!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
body.single-product .ws-product-stats-live .ws-stat-main{
  margin-top:0!important;
  font-size:24px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
}
body.single-product .ws-product-stats-live small{
  margin-top:8px!important;
  font-size:11px!important;
  line-height:1.35!important;
}
body.single-product .ws-product-stats-live .ws-stat-icon{
  position:static!important;
  flex:0 0 auto!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  border-radius:10px!important;
  font-size:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:none!important;
}
body.single-product .ws-product-stats-live .ws-product-reviews-card .ws-stat-icon{
  background:#fef3c7!important;
  color:#f59e0b!important;
}
body.single-product .ws-product-stats-live .ws-stat-icon-purple{
  background:rgba(123,61,255,.12)!important;
  color:#6f47ff!important;
}
@media (max-width: 1180px){
  body.single-product .ws-product-stats-live .ws-product-stat-card{
    min-height:106px!important;
    padding:14px 16px!important;
  }
  body.single-product .ws-product-stats-live .ws-product-stat-card strong{
    font-size:13px!important;
  }
  body.single-product .ws-product-stats-live .ws-stat-main{
    font-size:22px!important;
  }
}
@media (max-width: 767px){
  body.single-product .ws-product-stats-live .ws-product-stat-card strong{
    font-size:14px!important;
  }
  body.single-product .ws-product-stats-live .ws-stat-main{
    font-size:23px!important;
  }
}


/* v3.5.1: reviews-only tabs + Google-style review cards */
body.single-product .woocommerce-tabs ul.tabs{
  margin-bottom:30px!important;
}

body.single-product .woocommerce-tabs ul.tabs li.additional_information_tab,
body.single-product .woocommerce-tabs #tab-additional_information{
  display:none!important;
}

body.single-product .woocommerce-tabs ul.tabs li.reviews_tab a{
  min-width:150px!important;
}

body.single-product .woocommerce-tabs #reviews #comments h2{
  font-size:clamp(32px,4vw,54px)!important;
  line-height:1.08!important;
  margin:0 0 28px!important;
  letter-spacing:-.045em!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist{
  display:grid!important;
  gap:18px!important;
  margin:0 0 36px!important;
  padding:0!important;
  list-style:none!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li.review,
body.single-product .woocommerce-tabs #reviews ol.commentlist li.comment{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  gap:16px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  border:0!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li.review::marker,
body.single-product .woocommerce-tabs #reviews ol.commentlist li.comment::marker{
  content:""!important;
  font-size:0!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .avatar{
  width:58px!important;
  height:58px!important;
  border-radius:999px!important;
  object-fit:cover!important;
  margin:0!important;
  padding:0!important;
  border:3px solid #fff!important;
  box-shadow:0 10px 22px rgba(15,23,42,.12)!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .comment_container{
  display:contents!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .comment-text{
  grid-column:2!important;
  margin:0!important;
  padding:22px 24px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(15,23,42,.06)!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .comment-text:before{
  content:"";
  position:absolute;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .star-rating{
  display:block!important;
  margin:0 0 8px!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .meta{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0 0 18px!important;
  color:var(--ws-muted)!important;
  font-size:15px!important;
  line-height:1.4!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .woocommerce-review__author{
  color:var(--ws-text)!important;
  font-weight:850!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .woocommerce-review__verified{
  color:var(--ws-muted)!important;
  font-style:italic!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .woocommerce-review__published-date{
  color:var(--ws-muted)!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .description{
  margin:0!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .description p{
  margin:0!important;
  color:var(--ws-text-2)!important;
  font-size:16px!important;
  line-height:1.65!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  margin-top:34px!important;
  padding-top:28px!important;
  border-top:1px solid var(--ws-border)!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper #reply-title{
  font-size:clamp(26px,3vw,36px)!important;
  margin-bottom:20px!important;
}

@media (max-width:767px){
  body.single-product .woocommerce-tabs #reviews ol.commentlist li.review,
  body.single-product .woocommerce-tabs #reviews ol.commentlist li.comment{
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:12px!important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist .avatar{
    width:48px!important;
    height:48px!important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist .comment-text{
    padding:18px!important;
    border-radius:20px!important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist .meta{
    display:grid!important;
    gap:4px!important;
  }
}


/* v3.5.2: Reviews layout fix - keep add review easy to reach */
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,0.95fr)!important;
  gap:28px!important;
  align-items:start!important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  min-width:0!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  min-width:0!important;
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
  position:sticky!important;
  top:110px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper .comment-reply-title,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper #reply-title{
  display:block!important;
  font-size:clamp(26px,3vw,36px)!important;
  line-height:1.1!important;
  letter-spacing:-0.03em!important;
  margin:0 0 20px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form{
  display:block!important;
  background:#fff!important;
  border:1px solid var(--ws-border)!important;
  border-radius:28px!important;
  padding:24px!important;
  box-shadow:0 16px 38px rgba(15,23,42,.07)!important;
}

body.single-product .woocommerce-tabs #reviews #review_form p{
  margin:0 0 16px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form .comment-form-rating{
  background:#f7f4ff!important;
  border:1px solid #e7ddff!important;
  border-radius:22px!important;
  padding:18px!important;
  margin:0 0 18px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form .comment-form-comment textarea{
  min-height:220px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form .form-submit{
  margin-top:8px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form .submit{
  min-width:120px!important;
}

body.single-product .woocommerce-tabs #reviews #comments h2{
  margin-top:0!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist{
  max-height:960px!important;
  overflow:auto!important;
  padding-right:10px!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist::-webkit-scrollbar{
  width:10px!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist::-webkit-scrollbar-thumb{
  background:#d9d3eb!important;
  border-radius:999px!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .comment-text{
  border-radius:22px!important;
}

@media (max-width: 1100px){
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:1fr!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    position:static!important;
    order:-1!important;
    margin-bottom:28px!important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist{
    max-height:none!important;
    overflow:visible!important;
    padding-right:0!important;
  }
}

@media (max-width: 767px){
  body.single-product .woocommerce-tabs #reviews #review_form{
    padding:18px!important;
    border-radius:22px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form .comment-form-rating{
    padding:14px!important;
    border-radius:18px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form .comment-form-comment textarea{
    min-height:180px!important;
  }
}


/* v3.5.3: remove huge white product reviews wrapper */
body.single-product .ws-product-tabs.ws-card,
body.single-product .ws-product-tabs{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin-top:34px!important;
}

body.single-product .woocommerce-tabs{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs ul.tabs{
  margin:0 0 22px!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs #reviews #comments h2{
  max-width:720px!important;
  font-size:clamp(34px,4.2vw,58px)!important;
  margin-bottom:30px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form{
  background:#fff!important;
  border:1px solid var(--ws-border)!important;
  border-radius:28px!important;
  box-shadow:0 16px 38px rgba(15,23,42,.07)!important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist .comment-text{
  background:#fff!important;
  box-shadow:0 14px 34px rgba(15,23,42,.06)!important;
}

@media (max-width:767px){
  body.single-product .ws-product-tabs.ws-card,
  body.single-product .ws-product-tabs{
    margin-top:26px!important;
  }

  body.single-product .woocommerce-tabs #reviews #comments h2{
    font-size:34px!important;
  }
}


/* v3.5.4: remove remaining full-width white reviews panel */
body.single-product .ws-product-tabs,
body.single-product .ws-product-tabs.ws-card,
body.single-product .woocommerce-tabs,
body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce-tabs #tab-reviews,
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}

body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce-tabs #tab-reviews{
  padding:0!important;
  margin:0!important;
}

body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  padding:0!important;
  margin:0!important;
}

/* prevent old product-tab card rules from forcing a white rectangle */
body.single-product .ws-product-tabs:before,
body.single-product .ws-product-tabs:after,
body.single-product .woocommerce-tabs:before,
body.single-product .woocommerce-tabs:after,
body.single-product .woocommerce-tabs .panel:before,
body.single-product .woocommerce-tabs .panel:after{
  display:none!important;
  content:none!important;
}

/* keep only real inner cards white */
body.single-product .woocommerce-tabs #reviews ol.commentlist .comment-text,
body.single-product .woocommerce-tabs #reviews #review_form{
  background:#fff!important;
  border:1px solid var(--ws-border)!important;
  box-shadow:0 14px 34px rgba(15,23,42,.06)!important;
}

/* make the reviews section breathe on the page background */
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  max-width:none!important;
}

body.single-product .woocommerce-tabs #reviews #comments,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  background:transparent!important;
}


/* v3.5.8: smaller page titles + reviews title cap */
.ws-info-page .ws-info-hero h1,
.ws-contact-simple-page .ws-contact-simple-hero h1,
.ws-docs-page .ws-info-hero h1,
.ws-about-page .ws-info-hero h1,
.ws-contact-page .ws-info-hero h1,
.ws-legal-page .ws-info-hero h1,
.ws-changelog-page .ws-info-hero h1,
.ws-support-page .ws-support-hero h1{
  font-size:clamp(26px, 2.8vw, 30px)!important;
  line-height:1.14!important;
  letter-spacing:-0.02em!important;
}

body.single-product .woocommerce-tabs #reviews #comments h2{
  max-width:100%!important;
  font-size:clamp(26px, 2.8vw, 30px)!important;
  line-height:1.14!important;
  letter-spacing:-0.02em!important;
  margin-bottom:22px!important;
}

@media (max-width:767px){
  .ws-info-page .ws-info-hero h1,
  .ws-contact-simple-page .ws-contact-simple-hero h1,
  .ws-docs-page .ws-info-hero h1,
  .ws-about-page .ws-info-hero h1,
  .ws-contact-page .ws-info-hero h1,
  .ws-legal-page .ws-info-hero h1,
  .ws-changelog-page .ws-info-hero h1,
  .ws-support-page .ws-support-hero h1,
  body.single-product .woocommerce-tabs #reviews #comments h2{
    font-size:26px!important;
  }
}


/* v3.5.9: mobile reviews spacing cleanup */
@media (max-width:767px){
  body.single-product .woocommerce-tabs ul.tabs{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    margin:0 0 16px!important;
  }

  body.single-product .woocommerce-tabs ul.tabs li,
  body.single-product .woocommerce-tabs ul.tabs li a{
    width:auto!important;
    max-width:100%!important;
  }

  body.single-product .woocommerce-tabs ul.tabs li a{
    min-height:40px!important;
    padding:0 16px!important;
    font-size:14px!important;
    border-radius:14px!important;
  }

  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    order:-1!important;
    margin:0 0 18px!important;
    padding:0!important;
    top:auto!important;
    position:static!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper .comment-reply-title,
  body.single-product .woocommerce-tabs #reviews #review_form_wrapper #reply-title{
    font-size:26px!important;
    margin:0 0 14px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form{
    padding:16px!important;
    border-radius:20px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form p{
    margin:0 0 14px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form .comment-form-rating{
    padding:12px!important;
    border-radius:16px!important;
    margin:0 0 16px!important;
  }

  body.single-product .woocommerce-tabs #reviews label{
    margin-bottom:8px!important;
    font-size:14px!important;
  }

  body.single-product .woocommerce-tabs #reviews .stars{
    gap:8px!important;
    flex-wrap:wrap!important;
  }

  body.single-product .woocommerce-tabs #reviews .stars a{
    width:52px!important;
    height:52px!important;
    border-radius:16px!important;
  }

  body.single-product .woocommerce-tabs #reviews .stars a::before{
    font-size:26px!important;
  }

  body.single-product .woocommerce-tabs #reviews .comment-form-comment textarea{
    min-height:170px!important;
  }

  body.single-product .woocommerce-tabs #reviews .form-submit{
    margin-top:4px!important;
  }
}


/* v3.5.10: reviews tab chip cleanup on desktop + mobile */
body.single-product .woocommerce-tabs .wc-tabs,
body.single-product .woocommerce-tabs ul.tabs{
  display:inline-flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  width:auto!important;
  max-width:100%!important;
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  margin:0 0 22px!important;
  padding:0!important;
  overflow:visible!important;
}

body.single-product .woocommerce-tabs .wc-tabs-wrapper,
body.single-product .woocommerce-tabs .tabs,
body.single-product .woocommerce-tabs .tabs_wrapper{
  background:transparent!important;
}

body.single-product .woocommerce-tabs ul.tabs::before,
body.single-product .woocommerce-tabs ul.tabs::after,
body.single-product .woocommerce-tabs .wc-tabs::before,
body.single-product .woocommerce-tabs .wc-tabs::after{
  display:none!important;
  content:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce-tabs #tab-reviews,
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  margin-top:0!important;
}

@media (max-width:767px){
  body.single-product .woocommerce-tabs .wc-tabs,
  body.single-product .woocommerce-tabs ul.tabs{
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    margin:0 0 18px!important;
  }

  body.single-product .woocommerce-tabs ul.tabs li,
  body.single-product .woocommerce-tabs ul.tabs li a{
    width:auto!important;
    flex:0 0 auto!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    margin:0 0 20px!important;
  }
}


/* v3.5.11: remove single Reviews tab completely */
body.single-product .woocommerce-tabs ul.tabs,
body.single-product .woocommerce-tabs .wc-tabs,
body.single-product .wc-tabs-wrapper > ul.tabs,
body.single-product .woocommerce-tabs ul.wc-tabs{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs ul.tabs li,
body.single-product .woocommerce-tabs ul.tabs li.active,
body.single-product .woocommerce-tabs ul.tabs li a{
  display:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs,
body.single-product .wc-tabs-wrapper,
body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce-Tabs-panel,
body.single-product .woocommerce-Tabs-panel--reviews,
body.single-product #tab-reviews{
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  margin:0!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs::before,
body.single-product .woocommerce-tabs::after,
body.single-product .wc-tabs-wrapper::before,
body.single-product .wc-tabs-wrapper::after,
body.single-product .woocommerce-tabs .panel::before,
body.single-product .woocommerce-tabs .panel::after{
  display:none!important;
  content:none!important;
}

body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs #reviews #comments h2,
body.single-product #reviews .woocommerce-Reviews-title{
  font-size:30px!important;
  line-height:1.15!important;
  letter-spacing:-0.02em!important;
  margin:0 0 24px!important;
  max-width:100%!important;
}

@media (max-width:767px){
  body.single-product .woocommerce-tabs #reviews #comments h2,
  body.single-product #reviews .woocommerce-Reviews-title{
    font-size:26px!important;
    margin:0 0 18px!important;
  }
}


/* v3.5.12: corrected WooSculpt Upsell product info */
.ws-correct-info-grid,
.ws-feature-list-grid,
.ws-plugin-detail-grid{
  display:grid;
  gap:14px;
}

.ws-correct-info-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:20px;
}

.ws-correct-info-grid article,
.ws-feature-list-grid span,
.ws-plugin-detail-grid div{
  border:1px solid var(--ws-border);
  border-radius:18px;
  background:#fff;
  padding:18px;
}

.ws-correct-info-grid strong,
.ws-plugin-detail-grid strong{
  display:block;
  color:var(--ws-text);
  font-weight:850;
  margin-bottom:8px;
}

.ws-correct-info-grid p{
  margin:0;
  color:var(--ws-muted);
  line-height:1.6;
}

.ws-feature-list-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:20px;
}

.ws-feature-list-grid span{
  position:relative;
  padding-left:42px;
  color:var(--ws-text);
  font-weight:700;
}

.ws-feature-list-grid span:before{
  content:"✓";
  position:absolute;
  left:16px;
  top:17px;
  width:18px;
  height:18px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ecfdf5;
  color:#059669;
  font-size:12px;
  font-weight:900;
}

.ws-plugin-detail-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:20px;
}

.ws-plugin-detail-grid span{
  color:var(--ws-muted);
  font-weight:700;
}

.ws-changelog-list{
  display:grid;
  gap:18px;
}

.ws-changelog-item{
  border:1px solid var(--ws-border);
  border-radius:22px;
  background:#fff;
  padding:22px;
}

.ws-version-badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:var(--ws-purple-soft);
  color:var(--ws-purple-dark);
  font-weight:850;
  font-size:13px;
  margin-bottom:12px;
}

.ws-changelog-item h2{
  margin:0 0 12px;
}

.ws-changelog-item ul{
  margin:0;
  padding-left:18px;
  color:var(--ws-muted);
  line-height:1.8;
}

.ws-doc-product-summary .ws-doc-links{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:20px;
}

@media (max-width:900px){
  .ws-correct-info-grid,
  .ws-plugin-detail-grid{
    grid-template-columns:1fr;
  }

  .ws-feature-list-grid{
    grid-template-columns:1fr;
  }
}


/* v3.5.13: clean product selling block, remove duplicate-heavy info blocks */
body.single-product .ws-correct-product-info,
body.single-product .ws-main-features,
body.single-product .ws-compatibility-info{
  display:none!important;
}

body.single-product .ws-order-value-block{
  padding:26px!important;
}

body.single-product .ws-order-value-block h2{
  margin:10px 0 18px!important;
  font-size:clamp(24px,2.5vw,30px)!important;
}

body.single-product .ws-order-value-list{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}

body.single-product .ws-order-value-list article{
  display:grid;
  gap:4px;
  padding:16px 18px;
  border:1px solid var(--ws-border);
  border-radius:18px;
  background:#fff;
}

body.single-product .ws-order-value-list strong{
  position:relative;
  display:block;
  padding-left:26px;
  color:var(--ws-text);
  font-weight:850;
  font-size:15px;
  line-height:1.3;
}

body.single-product .ws-order-value-list strong:before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  width:18px;
  height:18px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ecfdf5;
  color:#059669;
  font-size:12px;
  font-weight:900;
}

body.single-product .ws-order-value-list p{
  margin:0;
  padding-left:26px;
  color:var(--ws-muted);
  font-size:14px;
  line-height:1.55;
}

@media (max-width:767px){
  body.single-product .ws-order-value-block{
    padding:20px!important;
  }

  body.single-product .ws-order-value-list article{
    padding:14px 15px;
  }
}





/* v3.5.16: image-led homepage redesign */
.ws-home-v2{
  overflow:hidden;
}

.ws-home-v2 .ws-container{
  max-width:1180px;
}

.ws-home-hero{
  position:relative;
  padding:54px 0 20px;
}

.ws-home-hero:before{
  content:"";
  position:absolute;
  right:-18vw;
  top:-120px;
  width:620px;
  height:620px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(123,61,255,.18), transparent 64%);
  pointer-events:none;
}

.ws-home-hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:40px;
  align-items:center;
}

.ws-home-hero-copy h1{
  max-width:560px;
  margin:14px 0 18px;
  font-size:clamp(34px,4vw,54px);
  line-height:1.02;
  letter-spacing:-0.055em;
  color:var(--ws-text);
}

.ws-home-hero-copy p{
  max-width:520px;
  margin:0;
  color:var(--ws-muted);
  font-size:17px;
  line-height:1.7;
}

.ws-home-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:24px;
}

.ws-home-trust{
  display:flex;
  gap:18px;
  flex-wrap:wrap;
  margin-top:26px;
  color:var(--ws-muted);
  font-size:13px;
  font-weight:750;
}

.ws-home-trust span{
  position:relative;
  padding-left:20px;
}

.ws-home-trust span:before{
  content:"✓";
  position:absolute;
  left:0;
  color:#059669;
  font-weight:900;
}

.ws-home-hero-visual{
  position:relative;
  border-radius:34px;
  overflow:hidden;
  transform:rotate(-1deg);
  filter:drop-shadow(0 34px 60px rgba(15,23,42,.16));
}

.ws-home-hero-visual img,
.ws-home-feature-visual img{
  display:block;
  width:100%;
  height:auto;
}

.ws-home-benefits{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:26px;
  margin-bottom:52px;
}

.ws-home-benefit-card{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:96px;
  padding:18px;
  border:1px solid var(--ws-border);
  border-radius:22px;
  background:rgba(255,255,255,.84);
  box-shadow:0 16px 36px rgba(15,23,42,.06);
  backdrop-filter:blur(10px);
}

.ws-home-benefit-icon{
  flex:0 0 48px;
  width:48px;
  height:48px;
  border-radius:16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg, rgba(123,61,255,.14), rgba(123,61,255,.05));
  color:var(--ws-purple);
  border:1px solid rgba(123,61,255,.12);
}

.ws-home-benefit-icon svg{
  width:22px;
  height:22px;
}

.ws-home-benefit-text strong,
.ws-home-benefit-text span{
  display:block;
}

.ws-home-benefit-text strong{
  color:var(--ws-text);
  font-size:15px;
  font-weight:850;
  line-height:1.2;
}

.ws-home-benefit-text span{
  margin-top:4px;
  color:var(--ws-muted);
  font-size:13px;
  font-weight:700;
  line-height:1.35;
}

.ws-home-feature{
  display:grid;
  grid-template-columns:minmax(360px,.9fr) minmax(0,1fr);
  gap:62px;
  align-items:center;
  margin-top:20px;
  margin-bottom:62px;
}

.ws-home-feature-visual{
  position:relative;
  border-radius:34px;
  overflow:hidden;
  filter:drop-shadow(0 28px 50px rgba(15,23,42,.12));
}

.ws-eyebrow{
  display:block;
  color:var(--ws-purple);
  font-size:13px;
  font-weight:850;
  margin-bottom:10px;
}

.ws-home-feature-copy h2,
.ws-home-proof h2,
.ws-home-cta h2{
  margin:0 0 20px;
  color:var(--ws-text);
  font-size:clamp(28px,3vw,40px);
  line-height:1.08;
  letter-spacing:-0.04em;
}

.ws-home-checks{
  display:grid;
  gap:16px;
}

.ws-home-checks p{
  position:relative;
  margin:0;
  padding-left:34px;
  color:var(--ws-muted);
  font-size:15px;
  line-height:1.6;
}

.ws-home-checks p:before{
  content:"✓";
  position:absolute;
  left:0;
  top:2px;
  width:22px;
  height:22px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ecfdf5;
  color:#059669;
  font-size:13px;
  font-weight:900;
}

.ws-home-checks strong{
  color:var(--ws-text);
}

.ws-home-proof{
  text-align:center;
  margin-bottom:52px;
}

.ws-home-proof h2{
  max-width:680px;
  margin-left:auto;
  margin-right:auto;
}

.ws-home-reviews{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
  margin-top:28px;
}

.ws-home-reviews article{
  text-align:left;
  padding:22px;
  border:1px solid var(--ws-border);
  border-radius:22px;
  background:rgba(255,255,255,.82);
  box-shadow:0 16px 36px rgba(15,23,42,.06);
}

.ws-review-head{
  display:flex;
  align-items:center;
  gap:12px;
}

.ws-review-head > span{
  width:42px;
  height:42px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,var(--ws-purple),#9b7cff);
  color:#fff;
  font-size:13px;
  font-weight:900;
}

.ws-review-head strong,
.ws-review-head small{
  display:block;
}

.ws-review-head small{
  color:var(--ws-muted);
  font-size:12px;
  margin-top:2px;
}

.ws-stars{
  margin-top:14px;
  color:#F59E0B;
  letter-spacing:.08em;
  font-size:14px;
}

.ws-home-reviews p{
  margin:12px 0 0;
  color:var(--ws-muted);
  font-size:14px;
  line-height:1.6;
}

.ws-home-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:56px;
  padding:30px;
  border-radius:26px;
  background:linear-gradient(135deg,#6f3cff,#a98cff);
  color:#fff;
  box-shadow:0 22px 46px rgba(123,61,255,.22);
}

.ws-home-cta .ws-pill{
  background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.24);
  color:#fff;
}

.ws-home-cta h2{
  color:#fff;
  margin-top:12px;
  margin-bottom:8px;
  max-width:660px;
}

.ws-home-cta p{
  margin:0;
  color:rgba(255,255,255,.84);
}

.ws-home-cta .ws-btn{
  flex:0 0 auto;
  color:var(--ws-text);
  background:#fff;
}

@media (max-width:980px){
  .ws-home-hero-grid,
  .ws-home-feature{
    grid-template-columns:1fr;
  }

  .ws-home-hero-visual{
    transform:none;
  }

  .ws-home-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ws-home-reviews{
    grid-template-columns:1fr;
  }

  .ws-home-cta{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media (max-width:640px){
  .ws-home-hero{
    padding-top:34px;
  }

  .ws-home-hero-copy h1{
    font-size:34px;
  }

  .ws-home-benefits{
    grid-template-columns:1fr;
    gap:12px;
  }

  .ws-home-benefit-card{
    min-height:unset;
    padding:16px;
  }

  .ws-home-feature{
    gap:28px;
  }

  .ws-home-feature-copy h2,
  .ws-home-proof h2,
  .ws-home-cta h2{
    font-size:30px;
  }
}


/* v3.5.18: high-resolution 1x1 homepage images */
.ws-home-hero-visual,
.ws-home-feature-visual{
  aspect-ratio:1/1;
  border-radius:34px;
  background:linear-gradient(135deg,#ffffff,#f3efff);
}

.ws-home-hero-visual img,
.ws-home-feature-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.ws-home-feature-visual{
  max-width:520px;
  margin-inline:auto;
}

@media (max-width:980px){
  .ws-home-hero-visual,
  .ws-home-feature-visual{
    max-width:620px;
    margin-inline:auto;
  }
}


/* v3.5.19: full theme style refresh inspired by premium WooSculpt mockup */

/* Global visual base */
body.ws-theme{
  background:
    radial-gradient(circle at 8% 11%, rgba(123,61,255,.08), transparent 25%),
    radial-gradient(circle at 94% 23%, rgba(123,61,255,.08), transparent 28%),
    linear-gradient(180deg,#fbfaff 0%,#f5f6fb 45%,#ffffff 100%)!important;
  color:#0d1020;
}

.ws-container{
  max-width:1180px;
}

/* Header */
.ws-site-header{
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 8px 28px rgba(15,23,42,.04);
}

.ws-header-inner{
  min-height:78px!important;
}

.ws-logo-mark{
  width:38px!important;
  height:38px!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#7B3DFF,#5b2be8)!important;
  box-shadow:0 12px 26px rgba(123,61,255,.24)!important;
  font-weight:900!important;
}

.ws-logo-text{
  font-weight:850!important;
  letter-spacing:-.03em!important;
}

.ws-main-nav a{
  font-size:14px!important;
  font-weight:650!important;
  color:#171827!important;
  opacity:.86;
  padding:10px 14px!important;
  border-radius:999px!important;
  transition:background .2s ease,color .2s ease,opacity .2s ease;
}

.ws-main-nav a:hover{
  opacity:1;
  color:#6f3cff!important;
  background:#f2edff!important;
}

.ws-header-actions{
  gap:10px!important;
}

.ws-header-icon,
.ws-header-cart,
.ws-header-account{
  width:44px!important;
  height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(15,23,42,.1)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#121827!important;
  box-shadow:0 10px 24px rgba(15,23,42,.05)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.ws-header-icon svg,
.ws-header-cart svg,
.ws-header-account svg{
  width:21px!important;
  height:21px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.ws-header-icon:hover,
.ws-header-account:hover{
  transform:translateY(-1px);
  border-color:rgba(123,61,255,.26)!important;
  color:#6f3cff!important;
  box-shadow:0 14px 30px rgba(123,61,255,.12)!important;
}

.ws-header-cart{
  width:auto!important;
  min-width:88px!important;
  padding:0 15px!important;
  gap:8px!important;
  background:linear-gradient(135deg,#7B3DFF,#5b2be8)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 14px 28px rgba(123,61,255,.26)!important;
}

.ws-header-cart:after{
  content:"Cart";
  font-size:14px;
  font-weight:800;
}

.ws-cart-count,
.ws-header-cart .count{
  background:#fff!important;
  color:#6f3cff!important;
  box-shadow:0 4px 12px rgba(15,23,42,.12)!important;
}

/* Buttons */
.ws-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
button,
input[type="submit"]{
  border-radius:20px!important;
  min-height:48px;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  box-shadow:0 14px 28px rgba(15,23,42,.08)!important;
}

.ws-btn-primary,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{
  background:linear-gradient(135deg,#7B3DFF,#5b2be8)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 16px 32px rgba(123,61,255,.26)!important;
}

.ws-btn-primary:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover{
  transform:translateY(-1px);
  box-shadow:0 20px 38px rgba(123,61,255,.32)!important;
}

.ws-btn-light{
  background:#fff!important;
  color:#111827!important;
  border:1px solid rgba(15,23,42,.12)!important;
}

.ws-pill,
.ws-eyebrow{
  color:#6f3cff!important;
  background:#f0eaff!important;
  border:1px solid #ded2ff!important;
  border-radius:999px!important;
  padding:7px 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  width:max-content;
  font-size:12px!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  font-weight:850!important;
}

/* Homepage: match premium design direction */
.ws-home-hero{
  padding:64px 0 24px!important;
}

.ws-home-hero-grid{
  grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr)!important;
  gap:54px!important;
}

.ws-home-hero-copy h1{
  font-size:clamp(38px,4.6vw,58px)!important;
  line-height:1.04!important;
  letter-spacing:-.055em!important;
  max-width:590px!important;
}

.ws-home-hero-copy h1::first-letter{
  letter-spacing:-.055em;
}

.ws-home-hero-copy p{
  font-size:16px!important;
  max-width:500px!important;
  line-height:1.75!important;
}

.ws-home-hero-copy p strong,
.ws-home-hero-copy h1 em{
  color:#6f3cff;
  font-style:normal;
}

.ws-home-actions{
  gap:14px!important;
  margin-top:28px!important;
}

.ws-home-actions .ws-btn:first-child:before{
  content:"";
  width:18px;
  height:18px;
  margin-right:8px;
  display:inline-block;
  vertical-align:-4px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 8V6.5A5 5 0 0 1 12 1.5a5 5 0 0 1 5 5V8h1.2A2.8 2.8 0 0 1 21 10.8v7.4a2.8 2.8 0 0 1-2.8 2.8H5.8A2.8 2.8 0 0 1 3 18.2v-7.4A2.8 2.8 0 0 1 5.8 8H7Zm2 0h6V6.5a3 3 0 0 0-6 0V8Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 8V6.5A5 5 0 0 1 12 1.5a5 5 0 0 1 5 5V8h1.2A2.8 2.8 0 0 1 21 10.8v7.4a2.8 2.8 0 0 1-2.8 2.8H5.8A2.8 2.8 0 0 1 3 18.2v-7.4A2.8 2.8 0 0 1 5.8 8H7Zm2 0h6V6.5a3 3 0 0 0-6 0V8Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

.ws-home-actions .ws-btn:last-child:before{
  content:"▶";
  width:22px;
  height:22px;
  margin-right:8px;
  border:1px solid rgba(15,23,42,.15);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:9px;
  color:#111827;
}

.ws-home-trust{
  margin-top:30px!important;
  gap:18px!important;
  font-size:12px!important;
}

.ws-home-trust span:before{
  width:22px;
  height:22px;
  border:1px solid rgba(123,61,255,.18);
  border-radius:7px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#6f3cff!important;
  box-shadow:0 8px 18px rgba(123,61,255,.08);
}

.ws-home-hero-visual{
  border-radius:30px!important;
  transform:rotate(-1deg)!important;
  box-shadow:0 30px 80px rgba(15,23,42,.14)!important;
  border:1px solid rgba(123,61,255,.12)!important;
  overflow:hidden!important;
}

.ws-home-hero-visual img{
  object-fit:cover!important;
}

/* Benefit cards */
.ws-home-benefits{
  padding:24px 34px!important;
  gap:0!important;
  background:rgba(255,255,255,.82)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:24px!important;
  box-shadow:0 18px 50px rgba(15,23,42,.08)!important;
}

.ws-home-benefit-card{
  flex-direction:column!important;
  justify-content:flex-start!important;
  text-align:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:10px 22px!important;
  min-height:154px!important;
  border-right:1px solid rgba(15,23,42,.08)!important;
}

.ws-home-benefit-card:last-child{
  border-right:0!important;
}

.ws-home-benefit-icon{
  width:62px!important;
  height:62px!important;
  flex-basis:62px!important;
  border-radius:22px!important;
  background:#f3efff!important;
  color:#6f3cff!important;
  box-shadow:0 14px 28px rgba(123,61,255,.08)!important;
}

.ws-home-benefit-icon svg{
  width:28px!important;
  height:28px!important;
}

.ws-home-benefit-text strong{
  margin-top:12px!important;
  font-size:16px!important;
  line-height:1.28!important;
}

.ws-home-benefit-text span{
  font-size:13px!important;
}

/* Mid feature / conversion sections */
.ws-home-feature{
  margin-top:54px!important;
  gap:70px!important;
}

.ws-home-feature-visual{
  border-radius:30px!important;
  box-shadow:0 28px 70px rgba(15,23,42,.11)!important;
  border:1px solid rgba(123,61,255,.1)!important;
}

.ws-home-feature-copy h2,
.ws-home-convert h2,
.ws-home-proof h2,
.ws-home-cta h2{
  font-size:clamp(30px,3vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
}

.ws-home-checks p{
  padding-left:34px!important;
  font-size:15px!important;
}

.ws-home-checks p:before,
.ws-home-convert li:before{
  background:#6f3cff!important;
  color:#fff!important;
}

/* Lower conversion section */
.ws-home-convert{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);
  gap:46px;
  align-items:center;
  margin:64px auto;
}

.ws-home-convert-copy p{
  color:var(--ws-muted);
  line-height:1.7;
  max-width:560px;
}

.ws-home-convert ul{
  list-style:none;
  padding:0;
  margin:22px 0 0;
  display:grid;
  gap:12px;
}

.ws-home-convert li{
  position:relative;
  padding-left:32px;
  color:#293044;
  font-weight:650;
  line-height:1.45;
}

.ws-home-convert li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  width:20px;
  height:20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
}

.ws-home-stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}

.ws-home-stats article{
  min-height:260px;
  padding:28px 24px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  background:rgba(255,255,255,.82);
  box-shadow:0 18px 48px rgba(15,23,42,.07);
  text-align:center;
}

.ws-stat-icon{
  width:64px;
  height:64px;
  border-radius:22px;
  margin:0 auto 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#f3efff;
  color:#6f3cff;
}

.ws-stat-icon svg{
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.ws-home-stats strong{
  display:block;
  color:#6f3cff;
  font-size:40px;
  line-height:1;
  letter-spacing:-.04em;
  margin-bottom:12px;
}

.ws-home-stats h3{
  font-size:18px!important;
  margin:0 0 10px!important;
}

.ws-home-stats p{
  color:var(--ws-muted);
  margin:0;
  font-size:14px;
  line-height:1.6;
}

/* Logo strip */
.ws-home-logo-strip{
  margin:0 auto 62px;
  padding:26px 30px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  background:rgba(255,255,255,.76);
  box-shadow:0 18px 48px rgba(15,23,42,.06);
  text-align:center;
}

.ws-home-logo-strip > span{
  display:block;
  color:#6f3cff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:22px;
}

.ws-home-logo-strip div{
  display:flex;
  align-items:center;
  justify-content:space-around;
  gap:26px;
  flex-wrap:wrap;
}

.ws-home-logo-strip strong{
  color:#8b82a6;
  font-size:20px;
  font-weight:850;
  letter-spacing:-.02em;
}

/* Home reviews */
.ws-home-reviews article{
  border-color:rgba(15,23,42,.08)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.84)!important;
}

.ws-review-head > span{
  background:linear-gradient(135deg,#7B3DFF,#5b2be8)!important;
}

/* CTA banner */
.ws-home-cta{
  background:linear-gradient(135deg,#6f3cff,#8b5cf6)!important;
  border-radius:26px!important;
  box-shadow:0 24px 60px rgba(123,61,255,.25)!important;
}

/* Product/cart/account page style alignment */
.ws-card,
body.woocommerce-cart .ws-cart-card,
body.woocommerce-checkout .ws-checkout-card,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-navigation{
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:24px!important;
  box-shadow:0 18px 48px rgba(15,23,42,.07)!important;
  background:rgba(255,255,255,.84)!important;
}

/* Inputs */
body.ws-theme input,
body.ws-theme textarea,
body.ws-theme select{
  border-radius:14px!important;
  border-color:rgba(15,23,42,.16)!important;
}

body.ws-theme input:focus,
body.ws-theme textarea:focus,
body.ws-theme select:focus{
  border-color:#7B3DFF!important;
  box-shadow:0 0 0 4px rgba(123,61,255,.10)!important;
  outline:0!important;
}

/* Responsive */
@media (max-width:980px){
  .ws-home-hero-grid,
  .ws-home-convert{
    grid-template-columns:1fr!important;
  }

  .ws-home-hero-visual{
    transform:none!important;
  }

  .ws-home-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
  }

  .ws-home-benefit-card:nth-child(2){
    border-right:0!important;
  }

  .ws-home-benefit-card:nth-child(1),
  .ws-home-benefit-card:nth-child(2){
    border-bottom:1px solid rgba(15,23,42,.08)!important;
  }
}

@media (max-width:720px){
  .ws-main-nav{
    background:#fff!important;
  }

  .ws-header-search{
    display:none!important;
  }

  .ws-header-cart{
    min-width:44px!important;
    padding:0!important;
  }

  .ws-header-cart:after{
    display:none!important;
  }

  .ws-home-hero-copy h1{
    font-size:34px!important;
  }

  .ws-home-benefits{
    grid-template-columns:1fr!important;
    padding:10px 18px!important;
  }

  .ws-home-benefit-card{
    flex-direction:row!important;
    text-align:left!important;
    border-right:0!important;
    border-bottom:1px solid rgba(15,23,42,.08)!important;
    min-height:92px!important;
  }

  .ws-home-benefit-card:last-child{
    border-bottom:0!important;
  }

  .ws-home-benefit-icon{
    width:50px!important;
    height:50px!important;
    flex-basis:50px!important;
    border-radius:16px!important;
  }

  .ws-home-stats{
    grid-template-columns:1fr!important;
  }
}


/* v3.5.20: spacing/style fixes */

/* My Account sidebar: remove excessive white space and make tabs compact */
body.woocommerce-account .woocommerce-MyAccount-navigation{
  padding:18px!important;
  border-radius:24px!important;
  align-self:start!important;
  height:auto!important;
  min-height:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  display:grid!important;
  gap:6px!important;
  margin:0!important;
  padding:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:flex!important;
  align-items:center!important;
  min-height:46px!important;
  padding:0 16px!important;
  border-radius:14px!important;
  color:#374151!important;
  font-size:15px!important;
  font-weight:700!important;
  text-decoration:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
  background:#f0eaff!important;
  color:#6f3cff!important;
}

/* Account layout: prevent huge floating cards */
body.woocommerce-account .woocommerce{
  align-items:start!important;
}

body.woocommerce-account .woocommerce-MyAccount-content{
  min-height:0!important;
}

/* Product reviews form: make Add a review card match sidebar card style */
body.single-product #review_form_wrapper,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  background:#fff!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:24px!important;
  box-shadow:0 18px 48px rgba(15,23,42,.07)!important;
  padding:24px!important;
}

body.single-product #review_form,
body.single-product .woocommerce-tabs #reviews #review_form{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper #reply-title,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper .comment-reply-title{
  font-size:30px!important;
  line-height:1.12!important;
  margin:0 0 20px!important;
  letter-spacing:-.03em!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form-rating{
  background:#f7f3ff!important;
  border:1px solid #dfd3ff!important;
  border-radius:20px!important;
  padding:18px!important;
  margin-bottom:22px!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form-comment textarea{
  border-radius:16px!important;
}

/* Homepage benefit icons: separate into individual cards, no shared white bar */
.ws-home-benefits{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}

.ws-home-benefit-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  min-height:190px!important;
  padding:26px 18px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.86)!important;
  box-shadow:0 18px 44px rgba(15,23,42,.07)!important;
}

.ws-home-benefit-card,
.ws-home-benefit-card:nth-child(1),
.ws-home-benefit-card:nth-child(2),
.ws-home-benefit-card:nth-child(3),
.ws-home-benefit-card:nth-child(4){
  border-right:1px solid rgba(15,23,42,.08)!important;
  border-bottom:1px solid rgba(15,23,42,.08)!important;
}

.ws-home-benefit-icon{
  margin:0 auto 14px!important;
}

.ws-home-benefit-text strong{
  margin-top:0!important;
}

.ws-home-benefit-text span{
  display:block!important;
  margin-top:4px!important;
}

/* Hero trust row: fix check icon overlap and spacing */
.ws-home-trust{
  display:flex!important;
  align-items:center!important;
  gap:14px 22px!important;
  flex-wrap:wrap!important;
  margin-top:28px!important;
}

.ws-home-trust span{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  padding-left:0!important;
  color:#6b7280!important;
  font-size:13px!important;
  font-weight:800!important;
  white-space:normal!important;
}

.ws-home-trust span:before{
  content:"✓"!important;
  position:static!important;
  flex:0 0 26px!important;
  width:26px!important;
  height:26px!important;
  border-radius:8px!important;
  background:#fff!important;
  border:1px solid rgba(123,61,255,.14)!important;
  color:#6f3cff!important;
  box-shadow:0 8px 18px rgba(123,61,255,.08)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:15px!important;
  font-weight:900!important;
}

/* Responsive */
@media (max-width:980px){
  .ws-home-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .ws-home-benefit-card{
    border:1px solid rgba(15,23,42,.08)!important;
  }
}

@media (max-width:720px){
  .ws-home-benefits{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .ws-home-benefit-card{
    flex-direction:row!important;
    justify-content:flex-start!important;
    text-align:left!important;
    min-height:auto!important;
    padding:18px!important;
  }

  .ws-home-benefit-icon{
    margin:0!important;
  }

  body.single-product #review_form_wrapper,
  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    padding:20px!important;
    border-radius:22px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper #reply-title,
  body.single-product .woocommerce-tabs #reviews #review_form_wrapper .comment-reply-title{
    font-size:26px!important;
  }

  body.single-product .woocommerce-tabs #reviews .comment-form-rating{
    padding:14px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation{
    padding:14px!important;
  }
}


/* v3.5.21: remove nested white box in My Account tabs */
body.woocommerce-account .ws-account-nav{
  padding:18px!important;
}

body.woocommerce-account .ws-account-nav > .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-navigation{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  border-radius:0!important;
  min-height:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  gap:8px!important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  min-height:52px!important;
  padding:0 18px!important;
  border-radius:16px!important;
}


/* v3.5.22: move product reviews into sidebar-sized flow */
body.single-product .ws-product-tabs{
  display:none!important;
}

body.single-product .ws-sidebar-reviews{
  display:grid;
  gap:14px;
}

body.single-product .ws-sidebar-reviews h3{
  margin:0!important;
  font-size:20px!important;
}

body.single-product .ws-sidebar-rating{
  display:grid;
  gap:6px;
  padding:14px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  background:#faf9ff;
}

body.single-product .ws-sidebar-stars{
  color:#F59E0B;
  font-size:18px;
  line-height:1;
  letter-spacing:.04em;
}

body.single-product .ws-sidebar-rating strong{
  color:var(--ws-text);
  font-size:26px;
  line-height:1;
  letter-spacing:-.03em;
}

body.single-product .ws-sidebar-rating span{
  color:var(--ws-muted);
  font-size:13px;
  font-weight:800;
}

body.single-product .ws-sidebar-review-link{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:14px;
  background:#f0eaff;
  border:1px solid #ded2ff;
  color:#6f3cff!important;
  font-weight:850;
  text-decoration:none!important;
}

/* Compact reviews area must respect product content/sidebar sizing */
body.single-product .ws-product-reviews-compact{
  grid-column:1 / -1;
  margin-top:26px;
  padding:26px!important;
  background:rgba(255,255,255,.84)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:24px!important;
  box-shadow:0 18px 48px rgba(15,23,42,.07)!important;
}

body.single-product .ws-product-reviews-compact #reviews{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(300px,360px);
  gap:28px;
  align-items:start;
}

body.single-product .ws-product-reviews-compact #comments{
  min-width:0;
}

body.single-product .ws-product-reviews-compact #review_form_wrapper{
  max-width:360px!important;
  width:100%!important;
  padding:20px!important;
}

body.single-product .ws-product-reviews-compact #review_form_wrapper #reply-title,
body.single-product .ws-product-reviews-compact #review_form_wrapper .comment-reply-title{
  font-size:26px!important;
  margin-bottom:16px!important;
}

body.single-product .ws-product-reviews-compact #reviews #comments h2{
  font-size:26px!important;
  margin-bottom:20px!important;
}

body.single-product .ws-product-reviews-compact .commentlist{
  display:grid!important;
  gap:16px!important;
}

body.single-product .ws-product-reviews-compact .comment-form-rating{
  padding:14px!important;
}

body.single-product .ws-product-reviews-compact .stars a{
  width:44px!important;
  height:44px!important;
  border-radius:14px!important;
}

body.single-product .ws-product-reviews-compact .stars a::before{
  font-size:22px!important;
}

body.single-product .ws-product-reviews-compact textarea{
  min-height:150px!important;
}

@media (max-width:980px){
  body.single-product .ws-product-reviews-compact #reviews{
    grid-template-columns:1fr!important;
  }

  body.single-product .ws-product-reviews-compact #review_form_wrapper{
    max-width:100%!important;
  }
}

@media (max-width:767px){
  body.single-product .ws-product-reviews-compact{
    padding:20px!important;
    margin-top:20px;
  }

  body.single-product .ws-product-reviews-compact #reviews #comments h2,
  body.single-product .ws-product-reviews-compact #review_form_wrapper #reply-title,
  body.single-product .ws-product-reviews-compact #review_form_wrapper .comment-reply-title{
    font-size:24px!important;
  }
}


/* v3.5.23: reviews stay left, only Add Review form goes sidebar */
body.single-product .ws-sidebar-reviews{
  display:none!important;
}

body.single-product .ws-product-reviews-compact{
  display:none!important;
}

body.single-product .ws-product-reviews-left{
  grid-column:1 / 2;
  margin-top:26px;
  padding:26px!important;
}

body.single-product .ws-product-reviews-left #reviews{
  display:block!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .ws-product-reviews-left #comments h2,
body.single-product .ws-product-reviews-left .woocommerce-Reviews-title{
  font-size:30px!important;
  line-height:1.15!important;
  margin:0 0 22px!important;
}

body.single-product .ws-product-reviews-left .commentlist{
  display:grid!important;
  gap:16px!important;
  margin:0!important;
  padding:0!important;
}

body.single-product .ws-product-reviews-left .commentlist li.review{
  margin:0!important;
}

body.single-product .ws-sidebar-review-form{
  display:grid;
  gap:16px;
}

body.single-product .ws-sidebar-review-form h3{
  margin:0!important;
  font-size:22px!important;
}

body.single-product .ws-sidebar-review-form .comment-reply-title,
body.single-product .ws-sidebar-review-form #reply-title{
  display:none!important;
}

body.single-product .ws-sidebar-review-form form{
  display:grid;
  gap:14px;
  margin:0!important;
}

body.single-product .ws-sidebar-review-form p{
  margin:0!important;
}

body.single-product .ws-sidebar-review-form label{
  display:block;
  margin:0 0 8px!important;
  font-size:13px!important;
  font-weight:850!important;
  color:var(--ws-text)!important;
}

body.single-product .ws-sidebar-review-form .comment-form-rating{
  padding:14px!important;
  border-radius:18px!important;
  background:#f7f3ff!important;
  border:1px solid #dfd3ff!important;
}

body.single-product .ws-sidebar-review-form .stars{
  display:flex!important;
  gap:8px!important;
  margin:0!important;
}

body.single-product .ws-sidebar-review-form .stars a{
  width:38px!important;
  height:38px!important;
  border-radius:12px!important;
}

body.single-product .ws-sidebar-review-form .stars a::before{
  font-size:20px!important;
}

body.single-product .ws-sidebar-review-form textarea{
  width:100%!important;
  min-height:140px!important;
  border-radius:14px!important;
}

body.single-product .ws-sidebar-review-form .form-submit input{
  width:100%!important;
  min-height:46px!important;
}

@media (max-width:980px){
  body.single-product .ws-product-reviews-left{
    grid-column:1 / -1;
  }
}


/* v3.5.24: restore reviews exactly like before */
body.single-product .ws-product-tabs{
  display:block!important;
}

body.single-product .ws-sidebar-reviews,
body.single-product .ws-sidebar-review-form,
body.single-product .ws-product-reviews-left,
body.single-product .ws-product-reviews-compact{
  display:none!important;
}

body.single-product .woocommerce-tabs,
body.single-product .wc-tabs-wrapper,
body.single-product .woocommerce-Tabs-panel,
body.single-product .woocommerce-Tabs-panel--reviews,
body.single-product #tab-reviews{
  display:block!important;
  visibility:visible!important;
}

body.single-product .woocommerce-tabs .panel{
  display:block!important;
}

body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display:block!important;
  visibility:visible!important;
}


/* v3.5.25: keep reviews left, move Add Review form to sidebar-sized column */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 360px!important;
  gap:28px!important;
  align-items:start!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  min-width:0!important;
  grid-column:1!important;
}

body.single-product .woocommerce-tabs #reviews #comments h2,
body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title{
  font-size:30px!important;
  line-height:1.15!important;
  margin:0 0 22px!important;
  letter-spacing:-.025em!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  grid-column:2!important;
  width:100%!important;
  max-width:360px!important;
  margin:0!important;
  padding:22px!important;
  position:sticky!important;
  top:96px!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:24px!important;
  box-shadow:0 18px 48px rgba(15,23,42,.07)!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper .comment-reply-title,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper #reply-title{
  display:block!important;
  font-size:24px!important;
  line-height:1.15!important;
  margin:0 0 16px!important;
  letter-spacing:-.025em!important;
}

body.single-product .woocommerce-tabs #reviews #review_form{
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs #reviews #review_form p{
  margin:0 0 14px!important;
}

body.single-product .woocommerce-tabs #reviews #review_form label{
  font-size:13px!important;
  font-weight:850!important;
  color:var(--ws-text)!important;
  margin:0 0 8px!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form-rating{
  padding:14px!important;
  border-radius:18px!important;
  background:#f7f3ff!important;
  border:1px solid #dfd3ff!important;
  box-shadow:none!important;
}

body.single-product .woocommerce-tabs #reviews .stars{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin:0!important;
}

body.single-product .woocommerce-tabs #reviews .stars a{
  width:40px!important;
  height:40px!important;
  border-radius:13px!important;
}

body.single-product .woocommerce-tabs #reviews .stars a::before{
  font-size:21px!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form-comment textarea{
  min-height:150px!important;
  width:100%!important;
  border-radius:14px!important;
}

body.single-product .woocommerce-tabs #reviews .form-submit{
  margin-top:4px!important;
}

body.single-product .woocommerce-tabs #reviews .form-submit input,
body.single-product .woocommerce-tabs #reviews .form-submit button{
  width:100%!important;
  min-height:46px!important;
  border-radius:14px!important;
}

body.single-product .woocommerce-tabs #reviews .commentlist{
  display:grid!important;
  gap:16px!important;
  margin:0!important;
  padding:0!important;
}

@media (max-width:980px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    grid-column:1!important;
    max-width:100%!important;
    position:static!important;
    top:auto!important;
  }
}

@media (max-width:767px){
  body.single-product .woocommerce-tabs #reviews #comments h2,
  body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title{
    font-size:26px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    padding:20px!important;
  }
}


/* v3.5.26: product reviews width alignment */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  grid-template-columns:minmax(0,720px) 360px!important;
  justify-content:center!important;
  gap:34px!important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  width:100%!important;
  max-width:720px!important;
  justify-self:end!important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  width:360px!important;
  max-width:360px!important;
  justify-self:start!important;
  padding:22px!important;
  border-radius:22px!important;
}

body.single-product .woocommerce-tabs #reviews .commentlist{
  width:100%!important;
}

body.single-product .woocommerce-tabs #reviews .commentlist .comment_container,
body.single-product .woocommerce-tabs #reviews .commentlist li.review{
  max-width:100%!important;
}

body.single-product .woocommerce-tabs #reviews .comment-text{
  width:100%!important;
}

/* keep the form visually same width as sidebar support cards */
body.single-product .ws-product-grid + .ws-product-tabs #review_form_wrapper,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  box-sizing:border-box!important;
}

@media (max-width:1180px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:minmax(0,1fr) 340px!important;
    gap:28px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    width:340px!important;
    max-width:340px!important;
  }
}

@media (max-width:980px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:1fr!important;
    justify-content:stretch!important;
  }

  body.single-product .woocommerce-tabs #reviews #comments{
    max-width:100%!important;
    justify-self:stretch!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    width:100%!important;
    max-width:100%!important;
    justify-self:stretch!important;
  }
}


/* v3.5.27: make Add a review card match sidebar cards better */
body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  padding:24px!important;
  margin:0!important;
  background:var(--ws-surface)!important;
  border:1px solid var(--ws-border)!important;
  border-radius:var(--ws-radius-lg)!important;
  box-shadow:var(--ws-shadow)!important;
}

body.single-product .woocommerce-tabs #reviews #review_form{
  width:100%!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form-rating{
  width:100%!important;
  box-sizing:border-box!important;
  padding:16px!important;
  margin:0 0 18px!important;
}

body.single-product .woocommerce-tabs #reviews .stars{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:8px!important;
  width:100%!important;
}

body.single-product .woocommerce-tabs #reviews .stars a{
  width:100%!important;
  max-width:44px!important;
  min-width:0!important;
  justify-self:start!important;
}

body.single-product .woocommerce-tabs #reviews .comment-form-comment textarea{
  width:100%!important;
  box-sizing:border-box!important;
}

body.single-product .woocommerce-tabs #reviews #review_form p.comment-form-comment,
body.single-product .woocommerce-tabs #reviews #review_form p.form-submit{
  margin-bottom:0!important;
}

@media (max-width:980px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    gap:16px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    width:100%!important;
    max-width:100%!important;
    padding:24px!important;
  }
}

@media (max-width:767px){
  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    padding:24px!important;
  }

  body.single-product .woocommerce-tabs #reviews .comment-form-rating{
    padding:14px!important;
  }

  body.single-product .woocommerce-tabs #reviews .stars a{
    max-width:40px!important;
    height:40px!important;
  }
}


/* v3.5.28: desktop fix for Add a review sidebar width */
@media (min-width: 981px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:minmax(0,680px) 340px!important;
    justify-content:space-between!important;
    gap:28px!important;
  }

  body.single-product .woocommerce-tabs #reviews #comments{
    max-width:680px!important;
    width:100%!important;
    justify-self:stretch!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    width:100%!important;
    max-width:340px!important;
    min-width:340px!important;
    justify-self:stretch!important;
    align-self:start!important;
    padding:22px!important;
  }
}

@media (min-width: 1201px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:minmax(0,700px) 340px!important;
  }

  body.single-product .woocommerce-tabs #reviews #comments{
    max-width:700px!important;
  }
}


/* v3.5.29: make Add a review card match the sidebar card width on desktop */
@media (min-width: 981px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:minmax(0,1fr) 400px!important;
    justify-content:space-between!important;
    align-items:start!important;
    gap:32px!important;
  }

  body.single-product .woocommerce-tabs #reviews #comments{
    width:100%!important;
    max-width:640px!important;
    justify-self:stretch!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    width:100%!important;
    max-width:400px!important;
    min-width:400px!important;
    justify-self:stretch!important;
    align-self:start!important;
    padding:24px!important;
    margin:0!important;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns:minmax(0,1fr) 360px!important;
    gap:24px!important;
  }

  body.single-product .woocommerce-tabs #reviews #comments{
    max-width:600px!important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    max-width:360px!important;
    min-width:360px!important;
  }
}


/* v3.5.30: mobile-only stat icon position fix */
@media (max-width: 767px){
  body.single-product .ws-product-stats-live,
  body.single-product .ws-meta-cards-3.ws-product-stats-live{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
  }

  body.single-product .ws-product-stats-live .ws-product-stat-card,
  body.single-product .ws-product-stats-live .ws-mini-card{
    position:relative!important;
    min-height:104px!important;
    padding:14px!important;
    display:block!important;
    text-align:left!important;
    overflow:hidden!important;
  }

  body.single-product .ws-product-stats-live .ws-product-stat-head{
    display:block!important;
    margin:0!important;
    padding:0!important;
  }

  body.single-product .ws-product-stats-live .ws-product-stat-head strong{
    display:block!important;
    max-width:calc(100% - 34px)!important;
    margin:0 0 18px!important;
    font-size:12px!important;
    line-height:1.2!important;
    color:var(--ws-text)!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body.single-product .ws-product-stats-live .ws-stat-icon{
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    left:auto!important;
    bottom:auto!important;
    width:26px!important;
    height:26px!important;
    min-width:26px!important;
    min-height:26px!important;
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:10px!important;
    font-size:14px!important;
    line-height:1!important;
    transform:none!important;
  }

  body.single-product .ws-product-stats-live .ws-stat-main{
    display:block!important;
    margin:0 0 6px!important;
    font-size:22px!important;
    line-height:1!important;
    letter-spacing:-0.04em!important;
    color:var(--ws-text)!important;
  }

  body.single-product .ws-product-stats-live small{
    display:block!important;
    margin:0!important;
    font-size:10px!important;
    line-height:1.25!important;
    color:var(--ws-muted)!important;
    font-weight:800!important;
  }
}

@media (max-width: 390px){
  body.single-product .ws-product-stats-live,
  body.single-product .ws-meta-cards-3.ws-product-stats-live{
    gap:8px!important;
  }

  body.single-product .ws-product-stats-live .ws-product-stat-card,
  body.single-product .ws-product-stats-live .ws-mini-card{
    padding:12px!important;
  }

  body.single-product .ws-product-stats-live .ws-stat-icon{
    top:10px!important;
    right:10px!important;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    min-height:24px!important;
  }

  body.single-product .ws-product-stats-live .ws-stat-main{
    font-size:20px!important;
  }
}


/* v3.5.31: smaller, cleaner homepage hero */
.ws-home-hero{
  padding:38px 0 14px!important;
}

.ws-home-hero-grid{
  grid-template-columns:minmax(0,.78fr) minmax(440px,.95fr)!important;
  gap:34px!important;
  align-items:center!important;
}

.ws-home-hero-copy h1{
  max-width:520px!important;
  font-size:clamp(34px,3.65vw,48px)!important;
  line-height:1.06!important;
  letter-spacing:-0.052em!important;
  margin:12px 0 16px!important;
}

.ws-home-hero-copy p{
  max-width:500px!important;
  font-size:15.5px!important;
  line-height:1.65!important;
}

.ws-home-actions{
  margin-top:22px!important;
}

.ws-home-actions .ws-btn{
  min-height:50px!important;
  padding-inline:22px!important;
}

.ws-home-trust{
  margin-top:22px!important;
  gap:12px 18px!important;
}

.ws-home-hero-visual{
  max-width:660px!important;
  justify-self:end!important;
  border-radius:26px!important;
  box-shadow:0 22px 58px rgba(15,23,42,.12)!important;
}

.ws-home-hero-visual img{
  max-height:560px!important;
  object-fit:cover!important;
}

.ws-home-benefits{
  margin-top:18px!important;
}

@media (max-width:980px){
  .ws-home-hero-grid{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .ws-home-hero-visual{
    max-width:620px!important;
    justify-self:center!important;
  }

  .ws-home-hero-copy h1{
    max-width:680px!important;
  }
}

@media (max-width:640px){
  .ws-home-hero{
    padding-top:26px!important;
  }

  .ws-home-hero-copy h1{
    font-size:32px!important;
  }

  .ws-home-hero-copy p{
    font-size:15px!important;
  }

  .ws-home-actions .ws-btn{
    width:100%!important;
  }
}



/* v3.5.32: hero visual smaller + trust badges on one line */
.ws-home-hero-grid{
  grid-template-columns:minmax(0,.82fr) minmax(420px,.88fr)!important;
  gap:28px!important;
}

.ws-home-hero-visual{
  max-width:590px!important;
  justify-self:end!important;
}

.ws-home-hero-visual img{
  max-height:500px!important;
  object-fit:cover!important;
}

.ws-home-trust{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  gap:10px 24px!important;
  overflow:visible!important;
}

.ws-home-trust span{
  flex:0 0 auto!important;
  font-size:14px!important;
}

@media (max-width: 1100px){
  .ws-home-hero-grid{
    grid-template-columns:minmax(0,.9fr) minmax(380px,.82fr)!important;
    gap:24px!important;
  }

  .ws-home-hero-visual{
    max-width:540px!important;
  }

  .ws-home-hero-visual img{
    max-height:460px!important;
  }

  .ws-home-trust{
    gap:8px 16px!important;
  }

  .ws-home-trust span{
    font-size:13.5px!important;
  }
}

@media (max-width: 980px){
  .ws-home-hero-grid{
    grid-template-columns:1fr!important;
  }

  .ws-home-hero-visual{
    max-width:620px!important;
    justify-self:center!important;
  }

  .ws-home-hero-visual img{
    max-height:none!important;
  }

  .ws-home-trust{
    flex-wrap:wrap!important;
    white-space:normal!important;
    gap:10px 14px!important;
  }
}


/* v3.5.33: smaller and easier-to-read hero title */
.ws-home-hero-copy h1{
  max-width: 500px !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
  font-weight: 800 !important;
  margin: 10px 0 14px !important;
}

@media (max-width: 980px){
  .ws-home-hero-copy h1{
    max-width: 100% !important;
    font-size: clamp(28px, 5.6vw, 38px) !important;
    line-height: 1.12 !important;
  }
}

@media (max-width: 640px){
  .ws-home-hero-copy h1{
    font-size: 28px !important;
    line-height: 1.14 !important;
    letter-spacing: -0.025em !important;
    margin: 8px 0 12px !important;
  }
}


/* v3.5.35: compact and cleaner homepage feature icon cards */
.home .ws-home-benefits{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(150px, 178px)) !important;
  justify-content:center !important;
  gap:16px !important;
  max-width:860px !important;
  margin:18px auto 0 !important;
}

.home .ws-home-benefit-card{
  min-height:148px !important;
  padding:16px 14px !important;
  border-radius:22px !important;
  box-shadow:0 14px 32px rgba(15,23,42,.06) !important;
}

.home .ws-home-benefit-icon{
  width:56px !important;
  height:56px !important;
  margin:0 auto 12px !important;
  border-radius:18px !important;
}

.home .ws-home-benefit-icon svg{
  width:22px !important;
  height:22px !important;
}

.home .ws-home-benefit-text strong{
  font-size:15px !important;
  line-height:1.18 !important;
  margin-bottom:2px !important;
}

.home .ws-home-benefit-text span{
  font-size:12px !important;
  line-height:1.3 !important;
  margin-top:2px !important;
}

@media (max-width: 980px){
  .home .ws-home-benefits{
    grid-template-columns:repeat(2, minmax(150px, 1fr)) !important;
    max-width:420px !important;
    gap:12px !important;
  }

  .home .ws-home-benefit-card{
    min-height:138px !important;
    padding:15px 12px !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-benefits{
    grid-template-columns:repeat(2, minmax(132px, 1fr)) !important;
    max-width:100% !important;
    gap:10px !important;
    margin-top:14px !important;
  }

  .home .ws-home-benefit-card{
    min-height:126px !important;
    padding:14px 10px !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    border-radius:18px !important;
  }

  .home .ws-home-benefit-icon{
    width:48px !important;
    height:48px !important;
    margin:0 auto 10px !important;
    border-radius:16px !important;
  }

  .home .ws-home-benefit-icon svg{
    width:20px !important;
    height:20px !important;
  }

  .home .ws-home-benefit-text strong{
    font-size:14px !important;
  }

  .home .ws-home-benefit-text span{
    font-size:11px !important;
  }
}


/* v3.5.36: stronger full-width homepage feature row */
.home .ws-home-benefits{
  width: min(var(--ws-container), calc(100% - 40px)) !important;
  max-width: none !important;
  margin: 24px auto 0 !important;
  padding: 14px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  background: linear-gradient(180deg, rgba(255,255,255,.82) 0%, rgba(247,244,255,.92) 100%) !important;
  border: 1px solid rgba(123, 61, 255, 0.10) !important;
  border-radius: 30px !important;
  box-shadow: 0 22px 48px rgba(15, 23, 42, .06) !important;
  overflow: hidden !important;
}

.home .ws-home-benefit-card,
.home .ws-home-benefit-card:nth-child(1),
.home .ws-home-benefit-card:nth-child(2),
.home .ws-home-benefit-card:nth-child(3),
.home .ws-home-benefit-card:nth-child(4){
  min-height: 148px !important;
  padding: 22px 16px !important;
  border-radius: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-right: 1px solid rgba(15, 23, 42, .06) !important;
  box-shadow: none !important;
}

.home .ws-home-benefit-card:last-child{
  border-right: 0 !important;
}

.home .ws-home-benefit-icon{
  width: 58px !important;
  height: 58px !important;
  margin: 0 auto 14px !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(123,61,255,.10), rgba(123,61,255,.06)) !important;
  border: 1px solid rgba(123,61,255,.10) !important;
}

.home .ws-home-benefit-icon svg{
  width: 22px !important;
  height: 22px !important;
}

.home .ws-home-benefit-text{
  text-align: center !important;
}

.home .ws-home-benefit-text strong{
  display: block !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  margin-bottom: 4px !important;
}

.home .ws-home-benefit-text span{
  display: block !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

@media (max-width: 980px){
  .home .ws-home-benefits{
    width: calc(100% - 24px) !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .home .ws-home-benefit-card,
  .home .ws-home-benefit-card:nth-child(1),
  .home .ws-home-benefit-card:nth-child(2),
  .home .ws-home-benefit-card:nth-child(3),
  .home .ws-home-benefit-card:nth-child(4){
    min-height: 132px !important;
    padding: 18px 12px !important;
    border-radius: 22px !important;
    border: 1px solid rgba(123, 61, 255, 0.10) !important;
    background: linear-gradient(180deg, rgba(255,255,255,.92) 0%, rgba(247,244,255,.90) 100%) !important;
    box-shadow: 0 12px 28px rgba(15,23,42,.05) !important;
  }

  .home .ws-home-benefit-card:nth-child(2n){
    border-right: 1px solid rgba(123, 61, 255, 0.10) !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-benefits{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 16px !important;
  }

  .home .ws-home-benefit-card,
  .home .ws-home-benefit-card:nth-child(1),
  .home .ws-home-benefit-card:nth-child(2),
  .home .ws-home-benefit-card:nth-child(3),
  .home .ws-home-benefit-card:nth-child(4){
    min-height: 120px !important;
    padding: 16px 10px !important;
    border-radius: 18px !important;
  }

  .home .ws-home-benefit-icon{
    width: 48px !important;
    height: 48px !important;
    margin-bottom: 10px !important;
    border-radius: 16px !important;
  }

  .home .ws-home-benefit-icon svg{
    width: 20px !important;
    height: 20px !important;
  }

  .home .ws-home-benefit-text strong{
    font-size: 14px !important;
  }

  .home .ws-home-benefit-text span{
    font-size: 11px !important;
  }
}


/* v3.5.37: cleaner homepage spacing and hero readability */
.home .ws-home-hero{
  padding:46px 0 18px!important;
}

.home .ws-home-hero-grid{
  gap:46px!important;
  align-items:center!important;
}

.home .ws-home-hero-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
}

.home .ws-home-pill{
  margin-bottom:16px!important;
}

.home .ws-home-hero-copy h1{
  max-width:560px!important;
  margin:0 0 18px!important;
  font-size:clamp(32px,3.2vw,44px)!important;
  line-height:1.12!important;
  letter-spacing:-0.035em!important;
  font-weight:850!important;
}

.home .ws-home-hero-copy p{
  max-width:560px!important;
  margin:0!important;
  font-size:16px!important;
  line-height:1.62!important;
}

.home .ws-home-actions{
  margin-top:26px!important;
  gap:14px!important;
}

.home .ws-home-actions .ws-btn{
  min-height:52px!important;
  padding:0 26px!important;
}

.home .ws-home-trust{
  margin-top:22px!important;
  gap:14px 22px!important;
  align-items:center!important;
}

.home .ws-home-trust span{
  font-size:13.5px!important;
  line-height:1.25!important;
}

.home .ws-home-trust span:before{
  width:28px!important;
  height:28px!important;
  flex-basis:28px!important;
}

.home .ws-home-hero-visual{
  max-width:560px!important;
}

.home .ws-home-hero-visual img{
  max-height:470px!important;
}

/* section rhythm */
.home .ws-home-benefits{
  margin-top:34px!important;
  margin-bottom:64px!important;
}

.home .ws-home-feature{
  margin-top:0!important;
  margin-bottom:72px!important;
}

.home .ws-home-proof{
  margin-top:0!important;
  margin-bottom:70px!important;
}

.home .ws-home-convert{
  margin-top:0!important;
  margin-bottom:70px!important;
}

.home .ws-home-logo-strip{
  margin-top:0!important;
  margin-bottom:70px!important;
}

.home .ws-home-cta{
  margin-top:0!important;
  margin-bottom:64px!important;
}

/* keep feature row clean and easy to recognize */
.home .ws-home-benefits{
  border-radius:28px!important;
}

.home .ws-home-benefit-card{
  min-height:136px!important;
  padding:20px 16px!important;
}

.home .ws-home-benefit-icon{
  width:52px!important;
  height:52px!important;
  margin-bottom:12px!important;
}

.home .ws-home-benefit-icon svg{
  width:21px!important;
  height:21px!important;
}

@media (max-width: 1100px){
  .home .ws-home-hero-grid{
    gap:34px!important;
  }

  .home .ws-home-hero-copy h1{
    max-width:520px!important;
    font-size:clamp(30px,3.4vw,40px)!important;
  }

  .home .ws-home-hero-visual{
    max-width:520px!important;
  }

  .home .ws-home-hero-visual img{
    max-height:440px!important;
  }

  .home .ws-home-trust{
    gap:12px 16px!important;
  }

  .home .ws-home-trust span{
    font-size:13px!important;
  }
}

@media (max-width: 980px){
  .home .ws-home-hero{
    padding-top:34px!important;
  }

  .home .ws-home-hero-grid{
    gap:28px!important;
  }

  .home .ws-home-hero-copy h1{
    max-width:100%!important;
    font-size:34px!important;
  }

  .home .ws-home-hero-copy p{
    max-width:100%!important;
  }

  .home .ws-home-hero-visual{
    max-width:600px!important;
  }

  .home .ws-home-benefits{
    margin-top:28px!important;
    margin-bottom:52px!important;
  }

  .home .ws-home-feature,
  .home .ws-home-proof,
  .home .ws-home-convert,
  .home .ws-home-logo-strip{
    margin-bottom:56px!important;
  }
}

@media (max-width: 640px){
  .home .ws-home-hero{
    padding-top:26px!important;
    padding-bottom:12px!important;
  }

  .home .ws-home-pill{
    margin-bottom:12px!important;
  }

  .home .ws-home-hero-copy h1{
    font-size:29px!important;
    line-height:1.13!important;
    margin-bottom:14px!important;
  }

  .home .ws-home-hero-copy p{
    font-size:15px!important;
    line-height:1.58!important;
  }

  .home .ws-home-actions{
    margin-top:20px!important;
    gap:10px!important;
  }

  .home .ws-home-trust{
    margin-top:18px!important;
    gap:10px!important;
  }

  .home .ws-home-benefits{
    margin-top:22px!important;
    margin-bottom:44px!important;
  }

  .home .ws-home-feature,
  .home .ws-home-proof,
  .home .ws-home-convert,
  .home .ws-home-logo-strip{
    margin-bottom:46px!important;
  }
}


/* v3.5.40: restore hero trust row and improve vertical spacing only */
.home .ws-home-hero-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
}

.home .ws-home-pill{
  margin-bottom:22px!important;
}

.home .ws-home-hero-copy h1{
  margin-top:0!important;
  margin-bottom:24px!important;
}

.home .ws-home-hero-copy p{
  margin-top:0!important;
  margin-bottom:0!important;
}

.home .ws-home-actions{
  margin-top:34px!important;
}

.home .ws-home-trust{
  margin-top:26px!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:18px 26px!important;
  white-space:nowrap!important;
}

.home .ws-home-trust span{
  font-size:14px!important;
  line-height:1.25!important;
}

@media (max-width: 980px){
  .home .ws-home-pill{
    margin-bottom:18px!important;
  }

  .home .ws-home-hero-copy h1{
    margin-bottom:20px!important;
  }

  .home .ws-home-actions{
    margin-top:28px!important;
  }

  .home .ws-home-trust{
    flex-wrap:wrap!important;
    white-space:normal!important;
    gap:12px 16px!important;
  }
}

@media (max-width: 640px){
  .home .ws-home-pill{
    margin-bottom:14px!important;
  }

  .home .ws-home-hero-copy h1{
    margin-bottom:16px!important;
  }

  .home .ws-home-actions{
    margin-top:24px!important;
  }

  .home .ws-home-trust{
    margin-top:20px!important;
  }
}


/* v3.5.41: add a little more space between hero buttons and trust row */
.home .ws-home-actions{
  margin-bottom: 0 !important;
}

.home .ws-home-trust{
  margin-top: 34px !important;
}

@media (max-width: 980px){
  .home .ws-home-trust{
    margin-top: 24px !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-trust{
    margin-top: 20px !important;
  }
}


/* v3.5.42: make home benefits row shorter and keep icons perfectly 1:1 */
.home .ws-home-benefits{
  margin-top: 20px !important;
  margin-bottom: 40px !important;
  padding: 22px 0 !important;
  min-height: 0 !important;
}

.home .ws-home-benefit-card,
.home .ws-home-benefit-card:nth-child(1),
.home .ws-home-benefit-card:nth-child(2),
.home .ws-home-benefit-card:nth-child(3),
.home .ws-home-benefit-card:nth-child(4){
  min-height: 0 !important;
  padding: 26px 22px !important;
  gap: 14px !important;
}

.home .ws-home-benefit-icon{
  width: 68px !important;
  height: 68px !important;
  min-width: 68px !important;
  min-height: 68px !important;
  aspect-ratio: 1 / 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 68px !important;
  padding: 0 !important;
}

.home .ws-home-benefit-icon svg{
  width: 26px !important;
  height: 26px !important;
  max-width: 26px !important;
  max-height: 26px !important;
  display: block !important;
}

.home .ws-home-benefit-text strong{
  margin-bottom: 6px !important;
}

@media (max-width: 980px){
  .home .ws-home-benefits{
    padding: 14px 0 !important;
    margin-bottom: 32px !important;
  }

  .home .ws-home-benefit-card,
  .home .ws-home-benefit-card:nth-child(1),
  .home .ws-home-benefit-card:nth-child(2),
  .home .ws-home-benefit-card:nth-child(3),
  .home .ws-home-benefit-card:nth-child(4){
    padding: 20px 18px !important;
    min-height: 0 !important;
  }

  .home .ws-home-benefit-icon{
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    min-height: 60px !important;
    flex-basis: 60px !important;
  }

  .home .ws-home-benefit-icon svg{
    width: 24px !important;
    height: 24px !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-benefits{
    padding: 10px 0 !important;
    margin-top: 16px !important;
    margin-bottom: 28px !important;
  }

  .home .ws-home-benefit-card,
  .home .ws-home-benefit-card:nth-child(1),
  .home .ws-home-benefit-card:nth-child(2),
  .home .ws-home-benefit-card:nth-child(3),
  .home .ws-home-benefit-card:nth-child(4){
    padding: 18px 16px !important;
    gap: 12px !important;
  }

  .home .ws-home-benefit-icon{
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    flex-basis: 56px !important;
  }

  .home .ws-home-benefit-icon svg{
    width: 22px !important;
    height: 22px !important;
  }
}


/* v3.5.43: make home benefits section truly compact */
.home .ws-home-benefits{
  width: min(var(--ws-container), calc(100% - 24px)) !important;
  margin: 14px auto 0 !important;
  padding: 6px 0 !important;
  border-radius: 24px !important;
  box-shadow: 0 14px 30px rgba(15, 23, 42, .05) !important;
}

.home .ws-home-benefit-card,
.home .ws-home-benefit-card:nth-child(1),
.home .ws-home-benefit-card:nth-child(2),
.home .ws-home-benefit-card:nth-child(3),
.home .ws-home-benefit-card:nth-child(4){
  min-height: 108px !important;
  padding: 14px 10px !important;
  gap: 8px !important;
}

.home .ws-home-benefit-icon{
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  aspect-ratio: 1 / 1 !important;
  flex: 0 0 46px !important;
  margin: 0 auto 8px !important;
  padding: 0 !important;
  border-radius: 14px !important;
}

.home .ws-home-benefit-icon svg{
  width: 20px !important;
  height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
}

.home .ws-home-benefit-text strong{
  font-size: 14px !important;
  line-height: 1.15 !important;
  margin-bottom: 2px !important;
}

.home .ws-home-benefit-text span{
  font-size: 11px !important;
  line-height: 1.25 !important;
}

@media (max-width: 980px){
  .home .ws-home-benefits{
    width: calc(100% - 20px) !important;
    gap: 8px !important;
    margin-top: 12px !important;
    padding: 0 !important;
  }

  .home .ws-home-benefit-card,
  .home .ws-home-benefit-card:nth-child(1),
  .home .ws-home-benefit-card:nth-child(2),
  .home .ws-home-benefit-card:nth-child(3),
  .home .ws-home-benefit-card:nth-child(4){
    min-height: 96px !important;
    padding: 14px 10px !important;
    border-radius: 18px !important;
  }

  .home .ws-home-benefit-icon{
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    flex-basis: 44px !important;
    border-radius: 14px !important;
    margin-bottom: 8px !important;
  }

  .home .ws-home-benefit-icon svg{
    width: 18px !important;
    height: 18px !important;
  }

  .home .ws-home-benefit-text strong{font-size:13px !important;}
  .home .ws-home-benefit-text span{font-size:11px !important;}
}

@media (max-width: 640px){
  .home .ws-home-benefits{
    width: calc(100% - 16px) !important;
    gap: 8px !important;
    margin-top: 12px !important;
  }

  .home .ws-home-benefit-card,
  .home .ws-home-benefit-card:nth-child(1),
  .home .ws-home-benefit-card:nth-child(2),
  .home .ws-home-benefit-card:nth-child(3),
  .home .ws-home-benefit-card:nth-child(4){
    min-height: 88px !important;
    padding: 12px 8px !important;
    gap: 6px !important;
    border-radius: 16px !important;
  }

  .home .ws-home-benefit-icon{
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    flex-basis: 40px !important;
    border-radius: 12px !important;
    margin-bottom: 6px !important;
  }

  .home .ws-home-benefit-icon svg{
    width: 16px !important;
    height: 16px !important;
  }

  .home .ws-home-benefit-text strong{
    font-size: 12px !important;
    line-height: 1.15 !important;
  }

  .home .ws-home-benefit-text span{
    font-size: 10px !important;
    line-height: 1.2 !important;
  }
}


/* v3.5.44: cleaner spacing between homepage sections */
.home main.ws-home-v2 > section{
  margin-bottom: 0 !important;
}

.home main.ws-home-v2 > .ws-home-hero{
  padding-bottom: 20px !important;
}

.home main.ws-home-v2 > .ws-home-benefits{
  margin-top: 26px !important;
}

.home main.ws-home-v2 > .ws-home-feature,
.home main.ws-home-v2 > .ws-home-proof,
.home main.ws-home-v2 > .ws-home-convert,
.home main.ws-home-v2 > .ws-home-logo-strip,
.home main.ws-home-v2 > .ws-home-cta{
  margin-top: 42px !important;
}

.home .ws-home-feature,
.home .ws-home-proof,
.home .ws-home-convert,
.home .ws-home-logo-strip,
.home .ws-home-cta{
  scroll-margin-top: 110px;
}

.home .ws-home-feature,
.home .ws-home-proof,
.home .ws-home-convert,
.home .ws-home-logo-strip,
.home .ws-home-cta{
  box-sizing: border-box !important;
}

@media (max-width: 1100px){
  .home main.ws-home-v2 > .ws-home-benefits{
    margin-top: 22px !important;
  }

  .home main.ws-home-v2 > .ws-home-feature,
  .home main.ws-home-v2 > .ws-home-proof,
  .home main.ws-home-v2 > .ws-home-convert,
  .home main.ws-home-v2 > .ws-home-logo-strip,
  .home main.ws-home-v2 > .ws-home-cta{
    margin-top: 34px !important;
  }
}

@media (max-width: 767px){
  .home main.ws-home-v2 > .ws-home-hero{
    padding-bottom: 14px !important;
  }

  .home main.ws-home-v2 > .ws-home-benefits{
    margin-top: 18px !important;
  }

  .home main.ws-home-v2 > .ws-home-feature,
  .home main.ws-home-v2 > .ws-home-proof,
  .home main.ws-home-v2 > .ws-home-convert,
  .home main.ws-home-v2 > .ws-home-logo-strip,
  .home main.ws-home-v2 > .ws-home-cta{
    margin-top: 26px !important;
  }
}


/* v3.5.45: original WooSculpt logo */
.ws-logo{
  display:inline-flex!important;
  align-items:center!important;
  gap:0!important;
  text-decoration:none!important;
}

.ws-logo img{
  display:block!important;
  width:160px!important;
  height:auto!important;
  max-height:42px!important;
}

.site-footer .ws-logo img,
.ws-footer .ws-logo img{
  width:148px!important;
  max-height:40px!important;
}

@media (max-width: 640px){
  .ws-logo img{
    width:138px!important;
    max-height:38px!important;
  }
}

/* v3.5.46: beautiful WooSculpt logo replacement */
.ws-brand.ws-logo{
  gap:0!important;
}

.ws-brand.ws-logo img,
.ws-auth-logo img{
  display:block;
  width:176px;
  height:auto;
  max-width:100%;
}

.ws-site-header .ws-logo img{
  width:174px;
}

.ws-site-footer .ws-logo img,
.ws-footer-brand .ws-logo img{
  width:164px;
}

.ws-auth-logo{
  display:inline-flex;
  margin:0 auto 18px;
}

@media (max-width: 640px){
  .ws-brand.ws-logo img,
  .ws-auth-logo img{
    width:156px;
  }

  .ws-site-footer .ws-logo img,
  .ws-footer-brand .ws-logo img{
    width:150px;
  }
}


/* v3.5.47: add breathing room between final CTA and footer */
.home .ws-home-cta{
  margin-bottom: 88px !important;
}

.home .ws-site-footer,
.home + .ws-site-footer{
  margin-top: 0 !important;
}

@media (max-width: 980px){
  .home .ws-home-cta{
    margin-bottom: 68px !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-cta{
    margin-bottom: 54px !important;
  }
}


/* v3.5.48: approved WooSculpt logo + favicon assets */
.ws-brand.ws-logo{
  display:inline-flex!important;
  align-items:center!important;
  text-decoration:none!important;
  gap:0!important;
  line-height:0!important;
}

.ws-brand.ws-logo img{
  display:block!important;
  width:184px!important;
  height:auto!important;
  max-height:44px!important;
  object-fit:contain!important;
}

.ws-site-footer .ws-brand.ws-logo img,
.ws-footer-brand .ws-brand.ws-logo img{
  width:172px!important;
  max-height:42px!important;
}

.ws-auth-logo{
  display:inline-flex!important;
  margin:0 auto 18px!important;
  line-height:0!important;
}

.ws-auth-logo img{
  width:190px!important;
  height:auto!important;
  display:block!important;
}

@media (max-width: 640px){
  .ws-brand.ws-logo img{
    width:158px!important;
    max-height:40px!important;
  }

  .ws-site-footer .ws-brand.ws-logo img,
  .ws-footer-brand .ws-brand.ws-logo img{
    width:150px!important;
  }

  .ws-auth-logo img{
    width:168px!important;
  }
}


/* v3.5.51: footer spacing + footer logo size fix */
.home .ws-home-cta,
.ws-home-cta{
  margin-bottom: 110px !important;
}

.ws-site-footer{
  padding-top: 72px !important;
}

.ws-footer-brand .ws-logo img,
.ws-site-footer .ws-logo img,
.ws-site-footer .ws-brand.ws-logo img{
  width: 190px !important;
  max-width: 190px !important;
  max-height: 54px !important;
  height: auto !important;
  object-fit: contain !important;
}

.ws-footer-brand .ws-logo{
  margin-bottom: 24px !important;
}

@media (max-width: 980px){
  .home .ws-home-cta,
  .ws-home-cta{
    margin-bottom: 84px !important;
  }

  .ws-site-footer{
    padding-top: 58px !important;
  }

  .ws-footer-brand .ws-logo img,
  .ws-site-footer .ws-logo img,
  .ws-site-footer .ws-brand.ws-logo img{
    width: 176px !important;
    max-width: 176px !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-cta,
  .ws-home-cta{
    margin-bottom: 66px !important;
  }

  .ws-site-footer{
    padding-top: 48px !important;
  }

  .ws-footer-brand .ws-logo img,
  .ws-site-footer .ws-logo img,
  .ws-site-footer .ws-brand.ws-logo img{
    width: 158px !important;
    max-width: 158px !important;
  }
}


/* v3.5.52: correct footer spacing - space belongs before footer, not inside footer */
.ws-site-footer{
  padding-top: 0 !important;
}

.home .ws-home-cta,
.ws-home-cta{
  margin-bottom: 96px !important;
}

/* fallback when footer follows homepage main directly */
main.ws-home-v2{
  padding-bottom: 96px !important;
}

main.ws-home-v2 .ws-home-cta{
  margin-bottom: 0 !important;
}

@media (max-width: 980px){
  .home .ws-home-cta,
  .ws-home-cta{
    margin-bottom: 72px !important;
  }

  main.ws-home-v2{
    padding-bottom: 72px !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-cta,
  .ws-home-cta{
    margin-bottom: 54px !important;
  }

  main.ws-home-v2{
    padding-bottom: 54px !important;
  }
}


/* v3.5.53: keep a clean small space inside footer before footer content */
.ws-site-footer{
  padding-top: 34px !important;
}

.ws-footer-inner{
  margin-top: 0 !important;
}

@media (max-width: 980px){
  .ws-site-footer{
    padding-top: 28px !important;
  }
}

@media (max-width: 640px){
  .ws-site-footer{
    padding-top: 22px !important;
  }
}


/* v3.5.54: mobile hero cleanup */
@media (max-width: 980px){
  .home .ws-home-hero{
    padding: 26px 0 8px !important;
  }

  .home .ws-home-hero-grid{
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    align-items: start !important;
  }

  .home .ws-home-hero-copy{
    max-width: 100% !important;
  }

  .home .ws-home-pill{
    margin-bottom: 12px !important;
  }

  .home .ws-home-hero-copy h1{
    max-width: 100% !important;
    margin: 0 0 14px !important;
    font-size: clamp(34px, 8.8vw, 50px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.045em !important;
  }

  .home .ws-home-hero-copy p{
    max-width: 100% !important;
    font-size: 15px !important;
    line-height: 1.62 !important;
    margin: 0 !important;
  }

  .home .ws-home-actions{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin-top: 22px !important;
  }

  .home .ws-home-actions .ws-btn{
    width: 100% !important;
    min-height: 58px !important;
    justify-content: center !important;
    padding: 0 18px !important;
    border-radius: 20px !important;
    font-size: 15px !important;
  }

  .home .ws-home-trust{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin-top: 18px !important;
    font-size: 14px !important;
  }

  .home .ws-home-trust span{
    padding-left: 42px !important;
    min-height: 32px !important;
    display: flex !important;
    align-items: center !important;
  }

  .home .ws-home-trust span:before{
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    color: var(--ws-purple) !important;
    box-shadow: 0 8px 18px rgba(123,61,255,.12) !important;
    content: "✓" !important;
  }

  .home .ws-home-hero-visual{
    max-width: 100% !important;
    margin: 4px auto 0 !important;
    border-radius: 24px !important;
    transform: none !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-hero{
    padding: 20px 0 4px !important;
  }

  .home .ws-home-pill{
    padding: 13px 18px !important;
    font-size: 12px !important;
  }

  .home .ws-home-hero-copy h1{
    font-size: 34px !important;
    line-height: 1.08 !important;
    margin-bottom: 14px !important;
  }

  .home .ws-home-hero-copy p{
    font-size: 14px !important;
    line-height: 1.58 !important;
  }

  .home .ws-home-actions{
    gap: 10px !important;
    margin-top: 20px !important;
  }

  .home .ws-home-actions .ws-btn{
    min-height: 56px !important;
    border-radius: 18px !important;
  }

  .home .ws-home-trust{
    gap: 10px !important;
    margin-top: 16px !important;
  }

  .home .ws-home-trust span{
    font-size: 13px !important;
    line-height: 1.35 !important;
    padding-left: 40px !important;
  }

  .home .ws-home-trust span:before{
    width: 26px !important;
    height: 26px !important;
    border-radius: 10px !important;
  }

  .home .ws-home-hero-visual{
    border-radius: 22px !important;
  }
}


/* v3.5.55: mobile hero centering + one-line trust row */
@media (max-width: 980px){
  .home .ws-home-hero-copy{
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .home .ws-home-pill{
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .home .ws-home-hero-copy h1,
  .home .ws-home-hero-copy p{
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .home .ws-home-actions{
    justify-items: center !important;
    align-items: center !important;
  }

  .home .ws-home-actions .ws-btn{
    max-width: 440px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .home .ws-home-trust{
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    white-space: nowrap !important;
    padding-bottom: 2px !important;
  }

  .home .ws-home-trust::-webkit-scrollbar{
    display: none !important;
  }

  .home .ws-home-trust span{
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    font-size: 12.5px !important;
    line-height: 1.2 !important;
    padding-left: 34px !important;
    min-height: 28px !important;
  }

  .home .ws-home-trust span:before{
    width: 24px !important;
    height: 24px !important;
    border-radius: 9px !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-hero-copy h1{
    max-width: 12ch !important;
  }

  .home .ws-home-hero-copy p{
    max-width: 32ch !important;
  }

  .home .ws-home-actions .ws-btn{
    max-width: 420px !important;
  }

  .home .ws-home-trust{
    gap: 8px !important;
    justify-content: flex-start !important;
  }

  .home .ws-home-trust span{
    font-size: 11.5px !important;
    padding-left: 32px !important;
  }

  .home .ws-home-trust span:before{
    width: 22px !important;
    height: 22px !important;
    border-radius: 8px !important;
  }
}


/* v3.5.56: rebuilt mobile hero - simple, centered, modern, no awkward line breaks */
@media (max-width: 980px){
  .home .ws-home-hero{
    padding: 26px 0 12px !important;
  }

  .home .ws-home-hero-grid{
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .home .ws-home-hero-copy{
    text-align: center !important;
    align-items: center !important;
    max-width: 720px !important;
    margin: 0 auto !important;
  }

  .home .ws-home-pill{
    margin: 0 auto 14px !important;
    padding: 10px 16px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .home .ws-home-hero-copy h1{
    max-width: 680px !important;
    margin: 0 auto 14px !important;
    font-size: clamp(30px, 6.4vw, 42px) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.04em !important;
    text-align: center !important;
  }

  .home .ws-home-hero-copy p{
    max-width: 560px !important;
    margin: 0 auto !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    text-align: center !important;
  }

  .home .ws-home-actions{
    width: 100% !important;
    max-width: 520px !important;
    margin: 22px auto 0 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  .home .ws-home-actions .ws-btn{
    width: 100% !important;
    min-height: 52px !important;
    padding: 0 14px !important;
    border-radius: 17px !important;
    justify-content: center !important;
    font-size: 14px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .home .ws-home-trust{
    width: 100% !important;
    max-width: 620px !important;
    margin: 16px auto 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    white-space: nowrap !important;
  }

  .home .ws-home-trust::-webkit-scrollbar{
    display: none !important;
  }

  .home .ws-home-trust span{
    position: relative !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 34px !important;
    padding: 8px 10px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.68) !important;
    border: 1px solid rgba(123,61,255,.12) !important;
    box-shadow: 0 8px 20px rgba(15,23,42,.04) !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    color: var(--ws-muted) !important;
    white-space: nowrap !important;
  }

  .home .ws-home-trust span:before{
    position: static !important;
    transform: none !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    border-radius: 7px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #fff !important;
    color: var(--ws-purple) !important;
    box-shadow: none !important;
    font-size: 12px !important;
    content: "✓" !important;
  }

  .home .ws-home-hero-visual{
    max-width: 620px !important;
    margin: 2px auto 0 !important;
    border-radius: 24px !important;
    transform: none !important;
  }
}

@media (max-width: 640px){
  .home .ws-home-hero{
    padding: 22px 0 8px !important;
  }

  .home .ws-home-hero-copy{
    padding: 0 4px !important;
  }

  .home .ws-home-pill{
    margin-bottom: 12px !important;
    font-size: 11px !important;
  }

  .home .ws-home-hero-copy h1{
    max-width: 390px !important;
    font-size: clamp(27px, 8.6vw, 36px) !important;
    line-height: 1.1 !important;
    margin-bottom: 12px !important;
  }

  .home .ws-home-hero-copy p{
    max-width: 360px !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  .home .ws-home-actions{
    max-width: 390px !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 20px !important;
  }

  .home .ws-home-actions .ws-btn{
    min-height: 54px !important;
    font-size: 14px !important;
    border-radius: 18px !important;
  }

  .home .ws-home-trust{
    max-width: 100% !important;
    justify-content: flex-start !important;
    gap: 7px !important;
    margin-top: 14px !important;
    padding: 0 2px 4px !important;
  }

  .home .ws-home-trust span{
    min-height: 30px !important;
    padding: 7px 8px !important;
    font-size: 10.5px !important;
    gap: 5px !important;
  }

  .home .ws-home-trust span:before{
    flex-basis: 16px !important;
    width: 16px !important;
    height: 16px !important;
    font-size: 11px !important;
    border-radius: 6px !important;
  }

  .home .ws-home-hero-visual{
    max-width: 390px !important;
    border-radius: 22px !important;
  }
}


/* v3.5.57: replace site logo with approved horizontal WooSculpt logo */
.ws-brand.ws-logo img{
  width: 188px !important;
  max-width: 188px !important;
  max-height: 48px !important;
  height: auto !important;
  object-fit: contain !important;
}

.ws-site-header .ws-brand.ws-logo img{
  width: 180px !important;
  max-width: 180px !important;
}

.ws-site-footer .ws-brand.ws-logo img,
.ws-footer-brand .ws-brand.ws-logo img{
  width: 198px !important;
  max-width: 198px !important;
  max-height: 56px !important;
}

.ws-auth-logo img{
  width: 198px !important;
  max-width: 198px !important;
  height: auto !important;
}

@media (max-width: 640px){
  .ws-site-header .ws-brand.ws-logo img{
    width: 158px !important;
    max-width: 158px !important;
  }

  .ws-site-footer .ws-brand.ws-logo img,
  .ws-footer-brand .ws-brand.ws-logo img,
  .ws-auth-logo img{
    width: 168px !important;
    max-width: 168px !important;
  }
}


/* v3.5.58: final renamed/replaced WooSculpt logo */
.ws-brand.ws-logo img,
.ws-logo img{
  content: url("../images/woosculpt-logo.png") !important;
  object-fit: contain !important;
}

.ws-site-header .ws-brand.ws-logo img{
  width: 178px !important;
  max-width: 178px !important;
  max-height: 46px !important;
}

.ws-site-footer .ws-brand.ws-logo img,
.ws-footer-brand .ws-brand.ws-logo img{
  width: 198px !important;
  max-width: 198px !important;
  max-height: 56px !important;
}

.ws-auth-logo img{
  width: 198px !important;
  max-width: 198px !important;
  height: auto !important;
}

@media (max-width: 640px){
  .ws-site-header .ws-brand.ws-logo img{
    width: 156px !important;
    max-width: 156px !important;
  }

  .ws-site-footer .ws-brand.ws-logo img,
  .ws-footer-brand .ws-brand.ws-logo img,
  .ws-auth-logo img{
    width: 168px !important;
    max-width: 168px !important;
  }
}


/* v3.5.59: exact uploaded WooSculpt logo replacement */
.ws-brand.ws-logo img,
.ws-logo img{
  content: url("../images/woosculpt-logo.png") !important;
  object-fit: contain !important;
}


/* v3.5.60: exact uploaded WooSculpt logo replacement with cache-busting filename */
.ws-brand.ws-logo img,
.ws-logo img{
  content: url("../images/woosculpt-logo-v3560.png") !important;
  object-fit: contain !important;
}

.ws-site-header .ws-brand.ws-logo img{
  width: 178px !important;
  max-width: 178px !important;
  max-height: 46px !important;
}

.ws-site-footer .ws-brand.ws-logo img,
.ws-footer-brand .ws-brand.ws-logo img{
  width: 198px !important;
  max-width: 198px !important;
  max-height: 56px !important;
}

.ws-auth-logo img{
  width: 198px !important;
  max-width: 198px !important;
  height: auto !important;
}

@media (max-width: 640px){
  .ws-site-header .ws-brand.ws-logo img{
    width: 156px !important;
    max-width: 156px !important;
  }

  .ws-site-footer .ws-brand.ws-logo img,
  .ws-footer-brand .ws-brand.ws-logo img,
  .ws-auth-logo img{
    width: 168px !important;
    max-width: 168px !important;
  }
}


/* v3.5.61: product page reviews match home page review card style */
body.single-product #reviews #comments ol.commentlist,
body.single-product #reviews ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product #reviews #comments ol.commentlist li.review,
body.single-product #reviews ol.commentlist li.review,
body.single-product .woocommerce-Reviews ol.commentlist li.review{
  position: relative !important;
  margin: 0 !important;
  padding: 22px !important;
  min-height: 250px !important;
  border: 1px solid rgba(15, 23, 42, .08) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.86) !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.06) !important;
  backdrop-filter: blur(10px) !important;
}

body.single-product #reviews #comments ol.commentlist li.review:before,
body.single-product #reviews ol.commentlist li.review:before,
body.single-product .woocommerce-Reviews ol.commentlist li.review:before{
  content: none !important;
}

body.single-product #reviews ol.commentlist li .comment_container,
body.single-product .woocommerce-Reviews ol.commentlist li .comment_container{
  display: block !important;
  position: relative !important;
  padding: 0 !important;
}

body.single-product #reviews ol.commentlist li img.avatar,
body.single-product .woocommerce-Reviews ol.commentlist li img.avatar{
  position: static !important;
  float: none !important;
  width: 54px !important;
  height: 54px !important;
  border-radius: 999px !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 12px 0 0 !important;
  box-shadow: none !important;
  object-fit: cover !important;
}

body.single-product #reviews ol.commentlist li .comment-text,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
}

body.single-product #reviews ol.commentlist li .comment-text .star-rating,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating{
  order: 2 !important;
  float: none !important;
  display: block !important;
  margin: 18px 0 0 !important;
  color: #F59E0B !important;
  font-size: 15px !important;
  letter-spacing: .08em !important;
}

body.single-product #reviews ol.commentlist li .comment-text .star-rating:before,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating:before{
  color: #F59E0B !important;
  opacity: 1 !important;
}

body.single-product #reviews ol.commentlist li .comment-text .star-rating span:before,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating span:before{
  color: #F59E0B !important;
}

body.single-product #reviews ol.commentlist li .comment-text .meta,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .meta{
  order: 1 !important;
  margin: -54px 0 0 66px !important;
  min-height: 54px !important;
  color: var(--ws-muted) !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

body.single-product #reviews ol.commentlist li .comment-text .meta strong,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .meta strong,
body.single-product #reviews ol.commentlist li .woocommerce-review__author,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__author{
  display: block !important;
  color: var(--ws-text) !important;
  font-size: 17px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  margin-bottom: 3px !important;
}

body.single-product #reviews ol.commentlist li .woocommerce-review__dash,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__dash{
  display: none !important;
}

body.single-product #reviews ol.commentlist li .woocommerce-review__published-date,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__published-date,
body.single-product #reviews ol.commentlist li .woocommerce-review__verified,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__verified{
  color: var(--ws-muted) !important;
  font-size: 13px !important;
}

body.single-product #reviews ol.commentlist li .description,
body.single-product .woocommerce-Reviews ol.commentlist li .description{
  order: 3 !important;
  margin: 24px 0 0 !important;
}

body.single-product #reviews ol.commentlist li .description p,
body.single-product .woocommerce-Reviews ol.commentlist li .description p{
  margin: 0 !important;
  color: var(--ws-muted) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

body.single-product #reviews .woocommerce-Reviews-title,
body.single-product .woocommerce-Reviews .woocommerce-Reviews-title{
  max-width: 760px !important;
  margin: 0 auto 8px !important;
  text-align: center !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
}

/* keep product review layout clean with sidebar form */
body.single-product #reviews.woocommerce-Reviews{
  align-items: start !important;
}

@media (max-width: 1100px){
  body.single-product #reviews #comments ol.commentlist,
  body.single-product #reviews ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px){
  body.single-product #reviews #comments ol.commentlist,
  body.single-product #reviews ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  body.single-product #reviews #comments ol.commentlist li.review,
  body.single-product #reviews ol.commentlist li.review,
  body.single-product .woocommerce-Reviews ol.commentlist li.review{
    min-height: auto !important;
    padding: 18px !important;
    border-radius: 20px !important;
  }

  body.single-product #reviews .woocommerce-Reviews-title,
  body.single-product .woocommerce-Reviews .woocommerce-Reviews-title{
    text-align: left !important;
    font-size: 28px !important;
  }
}


/* v3.5.62: product reviews use clean home-review card style with no nested white boxes */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews,
body.single-product #reviews,
body.single-product #reviews.woocommerce-Reviews{
  background: transparent !important;
}

body.single-product #reviews #comments,
body.single-product .woocommerce-Reviews #comments{
  min-width: 0 !important;
}

body.single-product #reviews #comments h2,
body.single-product #reviews .woocommerce-Reviews-title,
body.single-product .woocommerce-Reviews .woocommerce-Reviews-title{
  max-width: none !important;
  text-align: center !important;
  font-size: clamp(28px, 3.2vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.04em !important;
  margin: 0 0 24px !important;
}

body.single-product #reviews #comments ol.commentlist,
body.single-product #reviews ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100% !important;
  max-height: none !important;
  overflow: visible !important;
}

body.single-product #reviews #comments ol.commentlist li.review,
body.single-product #reviews ol.commentlist li.review,
body.single-product .woocommerce-Reviews ol.commentlist li.review{
  display: block !important;
  position: relative !important;
  margin: 0 !important;
  padding: 22px !important;
  min-height: 0 !important;
  background: rgba(255,255,255,.82) !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.06) !important;
  overflow: hidden !important;
}

body.single-product #reviews #comments ol.commentlist li.review::before,
body.single-product #reviews ol.commentlist li.review::before,
body.single-product .woocommerce-Reviews ol.commentlist li.review::before{
  content: none !important;
}

body.single-product #reviews ol.commentlist li .comment_container,
body.single-product .woocommerce-Reviews ol.commentlist li .comment_container{
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
}

body.single-product #reviews ol.commentlist li img.avatar,
body.single-product .woocommerce-Reviews ol.commentlist li img.avatar{
  float: left !important;
  position: static !important;
  width: 54px !important;
  height: 54px !important;
  margin: 0 12px 0 0 !important;
  border-radius: 999px !important;
  padding: 0 !important;
  border: 3px solid #fff !important;
  box-shadow: none !important;
  object-fit: cover !important;
}

body.single-product #reviews ol.commentlist li .comment-text,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text{
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
  overflow: visible !important;
}

body.single-product #reviews ol.commentlist li .comment-text .meta,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .meta{
  display: block !important;
  margin: 0 0 0 66px !important;
  min-height: 54px !important;
  color: var(--ws-muted) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

body.single-product #reviews ol.commentlist li .comment-text .meta strong,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .meta strong,
body.single-product #reviews ol.commentlist li .woocommerce-review__author,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__author{
  display: block !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  color: var(--ws-text) !important;
  margin-bottom: 2px !important;
}

body.single-product #reviews ol.commentlist li .woocommerce-review__dash,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__dash{
  display: none !important;
}

body.single-product #reviews ol.commentlist li .woocommerce-review__published-date,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__published-date,
body.single-product #reviews ol.commentlist li .woocommerce-review__verified,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__verified{
  font-size: 12px !important;
  color: var(--ws-muted) !important;
}

body.single-product #reviews ol.commentlist li .comment-text .star-rating,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating{
  float: none !important;
  display: block !important;
  margin: 14px 0 0 !important;
  color: #F59E0B !important;
  font-size: 14px !important;
  letter-spacing: .08em !important;
}

body.single-product #reviews ol.commentlist li .comment-text .star-rating::before,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating::before,
body.single-product #reviews ol.commentlist li .comment-text .star-rating span::before,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating span::before{
  color: #F59E0B !important;
}

body.single-product #reviews ol.commentlist li .description,
body.single-product .woocommerce-Reviews ol.commentlist li .description{
  margin: 12px 0 0 !important;
  padding: 0 !important;
}

body.single-product #reviews ol.commentlist li .description p,
body.single-product .woocommerce-Reviews ol.commentlist li .description p{
  margin: 0 !important;
  color: var(--ws-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

@media (max-width: 1100px){
  body.single-product #reviews #comments ol.commentlist,
  body.single-product #reviews ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px){
  body.single-product #reviews #comments h2,
  body.single-product #reviews .woocommerce-Reviews-title,
  body.single-product .woocommerce-Reviews .woocommerce-Reviews-title{
    text-align: left !important;
    font-size: 28px !important;
    margin-bottom: 18px !important;
  }

  body.single-product #reviews #comments ol.commentlist,
  body.single-product #reviews ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  body.single-product #reviews #comments ol.commentlist li.review,
  body.single-product #reviews ol.commentlist li.review,
  body.single-product .woocommerce-Reviews ol.commentlist li.review{
    padding: 18px !important;
  }
}


/* v3.5.63: final product reviews = same visual system as home reviews */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 34px !important;
  align-items: start !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  min-width: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

body.single-product .woocommerce-tabs #reviews #comments h2,
body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title{
  text-align: left !important;
  max-width: 100% !important;
  margin: 0 0 24px !important;
  font-size: 30px !important;
  line-height: 1.15 !important;
  letter-spacing: -0.03em !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  max-height: none !important;
  overflow: visible !important;
  width: 100% !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li.review,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li.review,
body.single-product .woocommerce-Reviews ol.commentlist li.review,
.woocommerce #reviews #comments ol.commentlist li{
  position: relative !important;
  display: block !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 22px !important;
  background: rgba(255,255,255,.84) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.06) !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li.review::before,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li.review::before,
body.single-product .woocommerce-Reviews ol.commentlist li.review::before,
.woocommerce #reviews #comments ol.commentlist li::before{
  content: none !important;
  display: none !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .comment_container,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .comment_container,
body.single-product .woocommerce-Reviews ol.commentlist li .comment_container,
.woocommerce #reviews #comments ol.commentlist li .comment_container{
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li img.avatar,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li img.avatar,
body.single-product .woocommerce-Reviews ol.commentlist li img.avatar,
.woocommerce #reviews #comments ol.commentlist li img.avatar{
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  float: none !important;
  width: 46px !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  box-shadow: none !important;
  background: transparent !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .comment-text,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .comment-text,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text,
.woocommerce #reviews #comments ol.commentlist li .comment-text{
  display: block !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 0 0 58px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .comment-text .meta,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .comment-text .meta,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .meta,
.woocommerce #reviews #comments ol.commentlist li .comment-text .meta{
  display: block !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ws-muted) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .woocommerce-review__author,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .woocommerce-review__author,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__author,
.woocommerce #reviews #comments ol.commentlist li .woocommerce-review__author{
  display: block !important;
  color: var(--ws-text) !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  margin: 0 0 3px !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .woocommerce-review__dash,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .woocommerce-review__dash,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__dash,
.woocommerce #reviews #comments ol.commentlist li .woocommerce-review__dash{
  display: none !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .woocommerce-review__verified,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .woocommerce-review__verified,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__verified,
.woocommerce #reviews #comments ol.commentlist li .woocommerce-review__verified{
  color: var(--ws-muted) !important;
  font-size: 12px !important;
  font-style: normal !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .woocommerce-review__published-date,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .woocommerce-review__published-date,
body.single-product .woocommerce-Reviews ol.commentlist li .woocommerce-review__published-date,
.woocommerce #reviews #comments ol.commentlist li .woocommerce-review__published-date{
  display: none !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .comment-text .star-rating,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .comment-text .star-rating,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating,
.woocommerce #reviews #comments ol.commentlist li .comment-text .star-rating{
  float: none !important;
  display: block !important;
  clear: both !important;
  margin: 14px 0 0 !important;
  color: #F59E0B !important;
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .comment-text .star-rating::before,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .comment-text .star-rating::before,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating::before,
.woocommerce #reviews #comments ol.commentlist li .comment-text .star-rating::before,
body.single-product .woocommerce-tabs #reviews ol.commentlist li .comment-text .star-rating span::before,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .comment-text .star-rating span::before,
body.single-product .woocommerce-Reviews ol.commentlist li .comment-text .star-rating span::before,
.woocommerce #reviews #comments ol.commentlist li .comment-text .star-rating span::before{
  color: #F59E0B !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .description,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .description,
body.single-product .woocommerce-Reviews ol.commentlist li .description,
.woocommerce #reviews #comments ol.commentlist li .description{
  clear: both !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li .description p,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li .description p,
body.single-product .woocommerce-Reviews ol.commentlist li .description p,
.woocommerce #reviews #comments ol.commentlist li .description p{
  margin: 0 !important;
  color: var(--ws-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

/* keep Add a review as sidebar card and remove extra nested white space from reviews only */
body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  grid-column: 2 !important;
  width: 360px !important;
  max-width: 360px !important;
  justify-self: start !important;
  position: sticky !important;
  top: 110px !important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  grid-column: 1 !important;
}

@media (max-width: 1100px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns: 1fr !important;
  }

  body.single-product .woocommerce-tabs #reviews #comments,
  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    grid-column: 1 !important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    width: 100% !important;
    max-width: 100% !important;
    position: static !important;
    order: 2 !important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist,
  body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px){
  body.single-product .woocommerce-tabs #reviews #comments h2,
  body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title{
    font-size: 26px !important;
    margin-bottom: 18px !important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist,
  body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist li.review,
  body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li.review,
  body.single-product .woocommerce-Reviews ol.commentlist li.review{
    padding: 18px !important;
    border-radius: 20px !important;
  }
}


/* v3.5.64: lock product reviews to left column and keep Add Review sidebar independent */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display: grid !important;
  grid-template-columns: minmax(0, 650px) minmax(300px, 340px) !important;
  justify-content: space-between !important;
  align-items: start !important;
  column-gap: 34px !important;
  row-gap: 28px !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  grid-column: 1 !important;
  width: 100% !important;
  max-width: 650px !important;
  min-width: 0 !important;
  justify-self: start !important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  grid-column: 2 !important;
  width: 100% !important;
  max-width: 340px !important;
  min-width: 0 !important;
  justify-self: end !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-tabs #reviews #review_form{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-tabs #reviews #review_form input,
body.single-product .woocommerce-tabs #reviews #review_form textarea,
body.single-product .woocommerce-tabs #reviews #review_form select,
body.single-product .woocommerce-tabs #reviews #review_form .comment-form-rating{
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  width: 100% !important;
  max-width: 650px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li.review,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li.review,
body.single-product .woocommerce-Reviews ol.commentlist li.review{
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 20px !important;
}

@media (max-width: 1180px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns: minmax(0, 1fr) 320px !important;
    column-gap: 26px !important;
  }

  body.single-product .woocommerce-tabs #reviews #comments{
    max-width: none !important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    max-width: 320px !important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist,
  body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    max-width: none !important;
  }
}

@media (max-width: 980px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  body.single-product .woocommerce-tabs #reviews #comments,
  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    justify-self: stretch !important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    position: static !important;
    top: auto !important;
  }
}

@media (max-width: 640px){
  body.single-product .woocommerce-tabs #reviews ol.commentlist,
  body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
}


/* v3.5.65: make Add Review card match product sidebar cards and stay inside sidebar row */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  grid-template-columns: minmax(0, 1fr) 300px !important;
  column-gap: 28px !important;
  justify-content: stretch !important;
  align-items: start !important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  grid-column: 1 !important;
  max-width: 100% !important;
  width: 100% !important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  grid-column: 2 !important;
  width: 300px !important;
  max-width: 300px !important;
  min-width: 300px !important;
  justify-self: stretch !important;
  align-self: start !important;
  margin: 0 !important;
  padding: 18px !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.06) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: sticky !important;
  top: 110px !important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper .comment-reply-title,
body.single-product .woocommerce-tabs #reviews #review_form_wrapper #reply-title{
  font-size: 22px !important;
  line-height: 1.12 !important;
  letter-spacing: -0.025em !important;
  margin: 0 0 16px !important;
}

body.single-product .woocommerce-tabs #reviews #review_form{
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-tabs #reviews #review_form p{
  margin: 0 0 14px !important;
}

body.single-product .woocommerce-tabs #reviews #review_form label{
  font-size: 12px !important;
  font-weight: 850 !important;
  margin: 0 0 8px !important;
}

body.single-product .woocommerce-tabs #reviews #review_form .comment-form-rating{
  width: 100% !important;
  max-width: 100% !important;
  padding: 14px !important;
  border-radius: 18px !important;
  background: #f7f3ff !important;
  border: 1px solid #dfd3ff !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .woocommerce-tabs #reviews #review_form .stars{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin: 0 !important;
}

body.single-product .woocommerce-tabs #reviews #review_form .stars a{
  width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
}

body.single-product .woocommerce-tabs #reviews #review_form .stars a::before{
  font-size: 18px !important;
}

body.single-product .woocommerce-tabs #reviews #review_form .comment-form-comment textarea{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 155px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

body.single-product .woocommerce-tabs #reviews #review_form .form-submit{
  margin: 0 !important;
}

body.single-product .woocommerce-tabs #reviews #review_form .submit,
body.single-product .woocommerce-tabs #reviews #review_form input[type="submit"]{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

@media (max-width: 1180px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns: minmax(0, 1fr) 300px !important;
    column-gap: 24px !important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    width: 300px !important;
    max-width: 300px !important;
    min-width: 300px !important;
  }
}

@media (max-width: 980px){
  body.single-product .woocommerce-tabs #reviews,
  body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
    grid-template-columns: 1fr !important;
  }

  body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    position: static !important;
    top: auto !important;
    order: 2 !important;
  }
}


/* v3.5.66: Add review is part of the product sidebar, not a separate far-away column */
body.single-product .ws-product-sidebar{
  display: grid !important;
  gap: 16px !important;
  align-content: start !important;
}

body.single-product #ws-sidebar-review-slot{
  display: block !important;
}

body.single-product #ws-sidebar-review-slot .ws-sidebar-review-slot-inner{
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  position: static !important;
  top: auto !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar #reply-title,
body.single-product #review_form_wrapper.ws-review-form-in-sidebar .comment-reply-title{
  display: none !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar #respond,
body.single-product #review_form_wrapper.ws-review-form-in-sidebar .comment-respond,
body.single-product #review_form_wrapper.ws-review-form-in-sidebar #review_form{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar p{
  margin: 0 0 14px !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar label{
  display: block !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  color: #111827 !important;
  margin: 0 0 8px !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar .comment-form-rating{
  width: 100% !important;
  padding: 14px !important;
  border-radius: 16px !important;
  background: #f7f3ff !important;
  border: 1px solid #dfd3ff !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar .stars{
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 7px !important;
  margin: 0 !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar .stars a{
  width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar .stars a::before{
  font-size: 18px !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar textarea,
body.single-product #review_form_wrapper.ws-review-form-in-sidebar input[type="text"],
body.single-product #review_form_wrapper.ws-review-form-in-sidebar input[type="email"]{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar textarea{
  min-height: 155px !important;
  border-radius: 14px !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar .form-submit{
  margin: 0 !important;
}

body.single-product #review_form_wrapper.ws-review-form-in-sidebar .submit,
body.single-product #review_form_wrapper.ws-review-form-in-sidebar input[type="submit"]{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display: block !important;
}

body.single-product .woocommerce-tabs #reviews #comments{
  width: 100% !important;
  max-width: 100% !important;
}

body.single-product .woocommerce-tabs #reviews #review_form_wrapper{
  position: static !important;
}

@media (max-width: 980px){
  body.single-product #ws-sidebar-review-slot{
    order: 99 !important;
  }
}


/* v3.5.67: remove duplicate Add Review slot and keep the real form inside sidebar */
body.single-product #ws-sidebar-review-slot{
  display: none !important;
}

body.single-product .ws-sidebar-review-card{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 24px !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.06) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .ws-sidebar-review-card h4{
  margin: 0 0 18px !important;
  font-size: 20px !important;
  line-height: 1.15 !important;
  letter-spacing: -0.025em !important;
}

body.single-product .ws-sidebar-review-card #review_form_wrapper,
body.single-product #review_form_wrapper.ws-review-form-in-sidebar{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  position: static !important;
  top: auto !important;
  overflow: visible !important;
}

body.single-product .ws-sidebar-review-card #review_form,
body.single-product .ws-sidebar-review-card #respond,
body.single-product .ws-sidebar-review-card .comment-respond{
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.single-product .ws-sidebar-review-card #reply-title,
body.single-product .ws-sidebar-review-card .comment-reply-title{
  display: none !important;
}

body.single-product .ws-sidebar-review-card p{
  margin: 0 0 14px !important;
}

body.single-product .ws-sidebar-review-card label{
  display: block !important;
  margin: 0 0 8px !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  color: var(--ws-text) !important;
}

body.single-product .ws-sidebar-review-card .comment-form-rating{
  width: 100% !important;
  max-width: 100% !important;
  padding: 14px !important;
  border-radius: 16px !important;
  background: #f7f3ff !important;
  border: 1px solid #dfd3ff !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .ws-sidebar-review-card .stars{
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 7px !important;
  margin: 0 !important;
}

body.single-product .ws-sidebar-review-card .stars a{
  width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
}

body.single-product .ws-sidebar-review-card .stars a::before{
  font-size: 18px !important;
}

body.single-product .ws-sidebar-review-card select{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  border-radius: 12px !important;
  box-sizing: border-box !important;
}

body.single-product .ws-sidebar-review-card textarea,
body.single-product .ws-sidebar-review-card input[type="text"],
body.single-product .ws-sidebar-review-card input[type="email"]{
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.single-product .ws-sidebar-review-card textarea{
  min-height: 155px !important;
  border-radius: 14px !important;
}

body.single-product .ws-sidebar-review-card .form-submit{
  margin: 0 !important;
}

body.single-product .ws-sidebar-review-card .submit,
body.single-product .ws-sidebar-review-card input[type="submit"]{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

/* Once moved, the review section only manages comments, so no empty form gap remains */
body.single-product .woocommerce-tabs #reviews #review_form_wrapper.ws-review-form-in-sidebar{
  display: block !important;
}


/* v3.5.68: reverse review form back to left reviews area, small like review card */
body.single-product .ws-sidebar-review-card,
body.single-product #ws-sidebar-review-slot{
  display: none !important;
}

body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body.single-product .woocommerce-tabs #reviews #comments,
body.single-product #reviews #comments.ws-reviews-left-inline{
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.single-product .woocommerce-tabs #reviews #comments h2,
body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title{
  text-align: left !important;
  margin: 0 0 18px !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
  letter-spacing: -0.03em !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card{
  width: calc(50% - 9px) !important;
  max-width: calc(50% - 9px) !important;
  min-width: 0 !important;
  margin: 0 0 18px !important;
  padding: 18px !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.84) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.06) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  position: static !important;
  top: auto !important;
  float: none !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card #reply-title,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-reply-title{
  display: block !important;
  margin: 0 0 14px !important;
  font-size: 18px !important;
  line-height: 1.15 !important;
  letter-spacing: -0.02em !important;
  color: var(--ws-text) !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card #review_form,
body.single-product #review_form_wrapper.ws-inline-review-card #respond,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-respond{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card p{
  margin: 0 0 12px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card label{
  display: block !important;
  margin: 0 0 7px !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  color: var(--ws-text) !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating{
  width: 100% !important;
  padding: 12px !important;
  border-radius: 16px !important;
  background: #f7f3ff !important;
  border: 1px solid #dfd3ff !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .stars{
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 6px !important;
  margin: 0 !important;
  font-size: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .stars span{
  display: flex !important;
  gap: 6px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .stars a{
  width: 28px !important;
  height: 28px !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-indent: -9999px !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid rgba(123,61,255,.10) !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .stars a::before{
  text-indent: 0 !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card select{
  width: 100% !important;
  min-height: 38px !important;
  border-radius: 12px !important;
  font-size: 13px !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card textarea{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 96px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card input[type="text"],
body.single-product #review_form_wrapper.ws-inline-review-card input[type="email"]{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 38px !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .form-submit{
  margin: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .submit,
body.single-product #review_form_wrapper.ws-inline-review-card input[type="submit"]{
  width: 100% !important;
  min-height: 40px !important;
  border-radius: 13px !important;
  font-size: 12px !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist li.review,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist li.review,
body.single-product .woocommerce-Reviews ol.commentlist li.review{
  min-height: 140px !important;
  padding: 18px !important;
}

@media (max-width: 767px){
  body.single-product #review_form_wrapper.ws-inline-review-card{
    width: 100% !important;
    max-width: 100% !important;
  }

  body.single-product .woocommerce-tabs #reviews ol.commentlist,
  body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
  body.single-product .woocommerce-Reviews ol.commentlist{
    grid-template-columns: 1fr !important;
  }
}


/* v3.5.69: compact full-width Add Review card in the left review area */
body.single-product #reviews #comments.ws-reviews-left-inline,
body.single-product .woocommerce-tabs #reviews #comments.ws-reviews-left-inline{
  width: 100% !important;
  max-width: 720px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card{
  width: 100% !important;
  max-width: 720px !important;
  min-width: 100% !important;
  min-height: 158px !important;
  margin: 0 0 18px !important;
  padding: 18px !important;
  display: block !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card #review_form,
body.single-product #review_form_wrapper.ws-inline-review-card #respond,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-respond,
body.single-product #review_form_wrapper.ws-inline-review-card form.comment-form{
  width: 100% !important;
  max-width: 100% !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form{
  display: grid !important;
  grid-template-columns: 200px minmax(0, 1fr) 132px !important;
  grid-template-areas:
    "rating review submit" !important;
  align-items: end !important;
  gap: 14px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form > *{
  min-width: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating{
  grid-area: rating !important;
  margin: 0 !important;
  align-self: stretch !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment{
  grid-area: review !important;
  margin: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .form-submit{
  grid-area: submit !important;
  margin: 0 !important;
  align-self: end !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-author,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-email,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-url,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-cookies-consent,
body.single-product #review_form_wrapper.ws-inline-review-card .logged-in-as,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-notes{
  grid-column: 1 / -1 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating{
  padding: 12px !important;
  min-height: 96px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating label,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment label{
  font-size: 11px !important;
  margin-bottom: 6px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating .stars{
  justify-content: flex-start !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment textarea{
  min-height: 96px !important;
  height: 96px !important;
  resize: vertical !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .submit,
body.single-product #review_form_wrapper.ws-inline-review-card input[type="submit"]{
  width: 100% !important;
  min-height: 46px !important;
  margin-top: 22px !important;
}

body.single-product #reviews #comments ol.commentlist,
body.single-product #reviews ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  width: 100% !important;
  max-width: 720px !important;
  margin-top: 0 !important;
}

@media (max-width: 860px){
  body.single-product #review_form_wrapper.ws-inline-review-card .comment-form{
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "rating"
      "review"
      "submit" !important;
  }

  body.single-product #review_form_wrapper.ws-inline-review-card .submit,
  body.single-product #review_form_wrapper.ws-inline-review-card input[type="submit"]{
    margin-top: 0 !important;
  }
}


/* v3.5.70: make Add Review card truly full-width and add spacing before review cards */
body.single-product #review_form_wrapper.ws-inline-review-card{
  width: 100% !important;
  max-width: 720px !important;
  min-width: 0 !important;
  grid-column: 1 / -1 !important;
  display: block !important;
  box-sizing: border-box !important;
  margin: 0 0 26px !important;
  padding: 22px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card #review_form,
body.single-product #review_form_wrapper.ws-inline-review-card #respond,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-respond,
body.single-product #review_form_wrapper.ws-inline-review-card form.comment-form{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form{
  display: block !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment,
body.single-product #review_form_wrapper.ws-inline-review-card .form-submit{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 14px !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating{
  min-height: auto !important;
  padding: 14px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating .stars,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating .stars span{
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment textarea{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 120px !important;
  height: 120px !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .form-submit{
  margin: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .submit,
body.single-product #review_form_wrapper.ws-inline-review-card input[type="submit"]{
  width: 100% !important;
  min-height: 48px !important;
  margin: 0 !important;
}

body.single-product #reviews #comments ol.commentlist,
body.single-product #reviews ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  width: 100% !important;
  max-width: 720px !important;
  margin-top: 0 !important;
}


/* v3.5.71: product Add Review must be full-width horizontal on desktop */
body.single-product .woocommerce-tabs #reviews,
body.single-product .woocommerce-tabs #reviews.woocommerce-Reviews{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.single-product .woocommerce-tabs #reviews #comments,
body.single-product #reviews #comments.ws-reviews-left-inline{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body.single-product .woocommerce-tabs #reviews #comments h2,
body.single-product .woocommerce-tabs #reviews .woocommerce-Reviews-title{
  max-width: 100% !important;
  margin-bottom: 22px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 34px !important;
  padding: 24px !important;
  border-radius: 24px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card #review_form,
body.single-product #review_form_wrapper.ws-inline-review-card #respond,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-respond,
body.single-product #review_form_wrapper.ws-inline-review-card form.comment-form{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form{
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(360px, 1fr) minmax(190px, 240px) !important;
  grid-template-areas:
    "rating review submit" !important;
  align-items: end !important;
  gap: 24px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form > *{
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating{
  grid-area: rating !important;
  margin: 0 !important;
  padding: 16px !important;
  min-height: 128px !important;
  align-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment{
  grid-area: review !important;
  margin: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .form-submit{
  grid-area: submit !important;
  margin: 0 !important;
  align-self: end !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-author,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-email,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-url,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-cookies-consent,
body.single-product #review_form_wrapper.ws-inline-review-card .logged-in-as,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-notes{
  grid-column: 1 / -1 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-rating label,
body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment label{
  margin: 0 0 12px !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .stars,
body.single-product #review_form_wrapper.ws-inline-review-card .stars span{
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  margin: 0 !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .stars a{
  width: 48px !important;
  height: 48px !important;
  border-radius: 14px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .stars a::before{
  font-size: 24px !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment textarea{
  width: 100% !important;
  max-width: 100% !important;
  min-height: 128px !important;
  height: 128px !important;
  resize: vertical !important;
  box-sizing: border-box !important;
}

body.single-product #review_form_wrapper.ws-inline-review-card .submit,
body.single-product #review_form_wrapper.ws-inline-review-card input[type="submit"]{
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  border-radius: 16px !important;
  font-size: 15px !important;
}

body.single-product .woocommerce-tabs #reviews ol.commentlist,
body.single-product .woocommerce-tabs #reviews #comments ol.commentlist,
body.single-product .woocommerce-Reviews ol.commentlist{
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 0 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
}

@media (max-width: 980px){
  body.single-product #review_form_wrapper.ws-inline-review-card .comment-form{
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "rating"
      "review"
      "submit" !important;
    gap: 16px !important;
  }

  body.single-product #review_form_wrapper.ws-inline-review-card .comment-form-comment textarea{
    height: 130px !important;
  }
}

@media (max-width: 640px){
  body.single-product #review_form_wrapper.ws-inline-review-card{
    padding: 18px !important;
    margin-bottom: 24px !important;
  }

  body.single-product #review_form_wrapper.ws-inline-review-card .stars,
  body.single-product #review_form_wrapper.ws-inline-review-card .stars span{
    gap: 8px !important;
  }

  body.single-product #review_form_wrapper.ws-inline-review-card .stars a{
    width: 38px !important;
    height: 38px !important;
  }

  body.single-product #review_form_wrapper.ws-inline-review-card .stars a::before{
    font-size: 19px !important;
  }
}


/* v3.5.72: rebuilt product reviews from zero. No old vertical/sidebar review form. */
body.single-product .ws-product-reviews-rebuilt,
body.single-product .woocommerce-tabs #reviews.ws-product-reviews-rebuilt{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.single-product .ws-product-reviews-left{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .ws-product-reviews-rebuilt .woocommerce-Reviews-title{
  margin: 0 0 26px !important;
  max-width: 100% !important;
  text-align: left !important;
  font-size: clamp(28px, 3.2vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.045em !important;
}

/* Fresh Add Review card */
body.single-product .ws-rebuilt-review-form-card{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 34px !important;
  padding: 28px !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.06) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .ws-rebuilt-review-form-card #review_form,
body.single-product .ws-rebuilt-review-form-card #respond,
body.single-product .ws-rebuilt-review-form-card .comment-respond,
body.single-product .ws-rebuilt-review-form-card form.comment-form{
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

body.single-product .ws-rebuilt-review-form-card .ws-review-form-title{
  margin: 0 0 22px !important;
  padding: 0 !important;
  font-size: clamp(24px, 2.4vw, 34px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  color: var(--ws-text) !important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form{
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(360px, 1fr) minmax(180px, 230px) !important;
  grid-template-areas:
    "fields fields fields"
    "main main submit" !important;
  gap: 18px 24px !important;
  align-items: end !important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form-author,
body.single-product .ws-rebuilt-review-form-card .comment-form-email{
  grid-row: 1 !important;
  margin: 0 !important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form-author{
  grid-column: 1 / 2 !important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form-email{
  grid-column: 2 / 3 !important;
}

body.single-product .ws-rebuilt-review-form-card .ws-review-form-grid{
  grid-area: main !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(360px, 1fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.single-product .ws-rebuilt-review-form-card .form-submit{
  grid-area: submit !important;
  margin: 0 !important;
  align-self: end !important;
}

body.single-product .ws-rebuilt-review-form-card .ws-review-field,
body.single-product .ws-rebuilt-review-form-card .comment-form-author,
body.single-product .ws-rebuilt-review-form-card .comment-form-email{
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.single-product .ws-rebuilt-review-form-card label{
  display: block !important;
  margin: 0 0 10px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  color: var(--ws-text) !important;
}

body.single-product .ws-rebuilt-review-form-card .ws-review-field-rating{
  padding: 16px !important;
  border-radius: 18px !important;
  background: #f7f3ff !important;
  border: 1px solid #dfd3ff !important;
  box-sizing: border-box !important;
}

body.single-product .ws-rebuilt-review-form-card #rating{
  display: block !important;
  width: 100% !important;
  min-height: 52px !important;
  border-radius: 14px !important;
  background: #fff !important;
  border: 1px solid rgba(15,23,42,.14) !important;
  color: var(--ws-text) !important;
  font-size: 14px !important;
  padding: 0 14px !important;
  box-sizing: border-box !important;
}

body.single-product .ws-rebuilt-review-form-card textarea{
  width: 100% !important;
  min-height: 132px !important;
  height: 132px !important;
  padding: 16px !important;
  border-radius: 16px !important;
  background: #fff !important;
  border: 1px solid rgba(15,23,42,.18) !important;
  color: var(--ws-text) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  resize: vertical !important;
  box-sizing: border-box !important;
}

body.single-product .ws-rebuilt-review-form-card input[type="text"],
body.single-product .ws-rebuilt-review-form-card input[type="email"]{
  width: 100% !important;
  min-height: 48px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

body.single-product .ws-rebuilt-review-form-card .submit,
body.single-product .ws-rebuilt-review-form-card input[type="submit"]{
  width: 100% !important;
  min-height: 58px !important;
  border-radius: 16px !important;
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  box-sizing: border-box !important;
}

/* Fresh review grid below the new form */
body.single-product .ws-rebuilt-review-list,
body.single-product .woocommerce-tabs #reviews .ws-rebuilt-review-list{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  list-style: none !important;
  overflow: visible !important;
}

body.single-product .ws-rebuilt-review-list li.review,
body.single-product .woocommerce-tabs #reviews .ws-rebuilt-review-list li.review{
  margin: 0 !important;
  padding: 22px !important;
  min-height: 160px !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.84) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 16px 36px rgba(15,23,42,.06) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

body.single-product .ws-rebuilt-review-list li.review::before{
  display: none !important;
  content: none !important;
}

body.single-product .ws-rebuilt-review-list .comment_container{
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .ws-rebuilt-review-list img.avatar{
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  float: none !important;
  width: 46px !important;
  height: 46px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 999px !important;
  border: 0 !important;
  object-fit: cover !important;
}

body.single-product .ws-rebuilt-review-list .comment-text{
  margin: 0 !important;
  padding: 0 0 0 58px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.single-product .ws-rebuilt-review-list .star-rating{
  float: none !important;
  margin: 0 0 6px !important;
  color: #F59E0B !important;
}

body.single-product .ws-rebuilt-review-list .star-rating::before,
body.single-product .ws-rebuilt-review-list .star-rating span::before{
  color: #F59E0B !important;
}

body.single-product .ws-rebuilt-review-list .meta{
  margin: 0 0 10px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  color: var(--ws-muted) !important;
}

body.single-product .ws-rebuilt-review-list .woocommerce-review__author{
  display: block !important;
  color: var(--ws-text) !important;
  font-size: 15px !important;
  font-weight: 850 !important;
}

body.single-product .ws-rebuilt-review-list .woocommerce-review__dash,
body.single-product .ws-rebuilt-review-list .woocommerce-review__published-date{
  display: none !important;
}

body.single-product .ws-rebuilt-review-list .description{
  margin: 10px 0 0 !important;
  padding: 0 !important;
}

body.single-product .ws-rebuilt-review-list .description p{
  margin: 0 !important;
  color: var(--ws-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

@media (max-width: 980px){
  body.single-product .ws-rebuilt-review-form-card .comment-form,
  body.single-product .ws-rebuilt-review-form-card .ws-review-form-grid{
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-areas: none !important;
    gap: 16px !important;
  }

  body.single-product .ws-rebuilt-review-form-card .comment-form-author,
  body.single-product .ws-rebuilt-review-form-card .comment-form-email,
  body.single-product .ws-rebuilt-review-form-card .ws-review-form-grid,
  body.single-product .ws-rebuilt-review-form-card .form-submit{
    grid-column: auto !important;
    grid-area: auto !important;
  }

  body.single-product .ws-rebuilt-review-list,
  body.single-product .woocommerce-tabs #reviews .ws-rebuilt-review-list{
    grid-template-columns: 1fr !important;
  }
}


/* v3.5.73: final rebuilt WooCommerce product reviews. Submit button below textarea. */
body.single-product #reviews.ws-rebuilt-product-reviews,
body.single-product .woocommerce-tabs #reviews.ws-rebuilt-product-reviews{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .ws-rebuilt-comments{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}

body.single-product .ws-rebuilt-product-reviews .woocommerce-Reviews-title{
  margin:0 0 24px!important;
  text-align:left!important;
  max-width:100%!important;
  font-size:clamp(28px,3vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
}

/* Rebuilt form card */
body.single-product .ws-rebuilt-review-form-card{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 34px!important;
  padding:28px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 18px 42px rgba(15,23,42,.06)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

body.single-product .ws-rebuilt-review-form-card #review_form,
body.single-product .ws-rebuilt-review-form-card #respond,
body.single-product .ws-rebuilt-review-form-card .comment-respond,
body.single-product .ws-rebuilt-review-form-card form.comment-form{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}

body.single-product .ws-rebuilt-form-title{
  margin:0 0 22px!important;
  padding:0!important;
  font-size:clamp(24px,2.4vw,34px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  color:var(--ws-text)!important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form{
  display:grid!important;
  grid-template-columns:minmax(260px,360px) minmax(360px,1fr)!important;
  grid-template-areas:
    "auth auth"
    "main main"
    "empty submit"!important;
  column-gap:24px!important;
  row-gap:14px!important;
  align-items:start!important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form-author,
body.single-product .ws-rebuilt-review-form-card .comment-form-email{
  margin:0!important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form-author{
  grid-column:1 / 2!important;
  grid-row:1!important;
}

body.single-product .ws-rebuilt-review-form-card .comment-form-email{
  grid-column:2 / 3!important;
  grid-row:1!important;
}

body.single-product .ws-rebuilt-review-main{
  grid-area:main!important;
  display:grid!important;
  grid-template-columns:minmax(260px,360px) minmax(360px,1fr)!important;
  gap:24px!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
}

body.single-product .ws-rebuilt-review-form-card .form-submit{
  grid-area:submit!important;
  width:100%!important;
  margin:0!important;
  align-self:start!important;
}

body.single-product .ws-rebuilt-review-form-card label{
  display:block!important;
  margin:0 0 10px!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:850!important;
  color:var(--ws-text)!important;
}

body.single-product .ws-rebuilt-rating-field{
  min-width:0!important;
  padding:16px!important;
  border-radius:18px!important;
  background:#f7f3ff!important;
  border:1px solid #dfd3ff!important;
  box-sizing:border-box!important;
}

body.single-product .ws-rebuilt-rating-field #rating{
  display:block!important;
  width:100%!important;
  min-height:52px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.14)!important;
  color:var(--ws-text)!important;
  font-size:14px!important;
  padding:0 14px!important;
  box-sizing:border-box!important;
}

body.single-product .ws-rebuilt-text-field{
  min-width:0!important;
}

body.single-product .ws-rebuilt-text-field textarea{
  width:100%!important;
  max-width:100%!important;
  min-height:132px!important;
  height:132px!important;
  padding:16px!important;
  border-radius:16px!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.18)!important;
  color:var(--ws-text)!important;
  font-size:14px!important;
  line-height:1.5!important;
  resize:vertical!important;
  box-sizing:border-box!important;
}

body.single-product .ws-rebuilt-review-form-card input[type="text"],
body.single-product .ws-rebuilt-review-form-card input[type="email"]{
  width:100%!important;
  min-height:48px!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
}

body.single-product .ws-rebuilt-review-form-card .ws-rebuilt-submit,
body.single-product .ws-rebuilt-review-form-card input[type="submit"]{
  width:100%!important;
  min-height:56px!important;
  border-radius:16px!important;
  margin:0!important;
  font-size:15px!important;
  font-weight:850!important;
  box-sizing:border-box!important;
}

/* Review cards below form */
body.single-product .ws-rebuilt-review-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  overflow:visible!important;
}

body.single-product .ws-rebuilt-review-list li.review{
  margin:0!important;
  padding:22px!important;
  min-height:160px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.84)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 16px 36px rgba(15,23,42,.06)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

body.single-product .ws-rebuilt-review-list li.review::before{
  display:none!important;
  content:none!important;
}

body.single-product .ws-rebuilt-review-list .comment_container{
  position:relative!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
}

body.single-product .ws-rebuilt-review-list img.avatar{
  position:absolute!important;
  top:0!important;
  left:0!important;
  float:none!important;
  width:46px!important;
  height:46px!important;
  padding:0!important;
  margin:0!important;
  border-radius:999px!important;
  border:0!important;
  object-fit:cover!important;
}

body.single-product .ws-rebuilt-review-list .comment-text{
  margin:0!important;
  padding:0 0 0 58px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.single-product .ws-rebuilt-review-list .star-rating{
  float:none!important;
  margin:0 0 6px!important;
  color:#F59E0B!important;
}

body.single-product .ws-rebuilt-review-list .star-rating::before,
body.single-product .ws-rebuilt-review-list .star-rating span::before{
  color:#F59E0B!important;
}

body.single-product .ws-rebuilt-review-list .meta{
  margin:0 0 10px!important;
  font-size:12px!important;
  line-height:1.35!important;
  color:var(--ws-muted)!important;
}

body.single-product .ws-rebuilt-review-list .woocommerce-review__author{
  display:block!important;
  color:var(--ws-text)!important;
  font-size:15px!important;
  font-weight:850!important;
}

body.single-product .ws-rebuilt-review-list .woocommerce-review__dash,
body.single-product .ws-rebuilt-review-list .woocommerce-review__published-date{
  display:none!important;
}

body.single-product .ws-rebuilt-review-list .description{
  margin:10px 0 0!important;
  padding:0!important;
}

body.single-product .ws-rebuilt-review-list .description p{
  margin:0!important;
  color:var(--ws-muted)!important;
  font-size:14px!important;
  line-height:1.6!important;
}

@media (max-width:980px){
  body.single-product .ws-rebuilt-review-form-card .comment-form,
  body.single-product .ws-rebuilt-review-main{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:none!important;
    gap:16px!important;
  }

  body.single-product .ws-rebuilt-review-form-card .comment-form-author,
  body.single-product .ws-rebuilt-review-form-card .comment-form-email,
  body.single-product .ws-rebuilt-review-main,
  body.single-product .ws-rebuilt-review-form-card .form-submit{
    grid-column:auto!important;
    grid-row:auto!important;
    grid-area:auto!important;
  }

  body.single-product .ws-rebuilt-review-list{
    grid-template-columns:1fr!important;
  }
}


/* v3.5.74: remove old Woo tabs feel and rebuild review section design */
body.single-product .woocommerce-tabs ul.tabs,
body.single-product .woocommerce-tabs ul.wc-tabs{
  display:none!important;
}

body.single-product #reviews.ws-reviews-v2,
body.single-product .woocommerce-tabs #reviews.ws-reviews-v2{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .ws-reviews-v2-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:24px!important;
  margin:0 0 26px!important;
}

body.single-product .ws-reviews-eyebrow{
  margin:0 0 8px!important;
  color:var(--ws-purple)!important;
  font-size:12px!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

body.single-product .ws-reviews-v2-head h2{
  margin:0!important;
  font-size:clamp(28px,3vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
  color:var(--ws-text)!important;
}

body.single-product .ws-review-score-v2{
  min-width:150px!important;
  padding:16px 18px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.86)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 16px 36px rgba(15,23,42,.06)!important;
}

body.single-product .ws-review-score-v2 strong{
  display:block!important;
  font-size:28px!important;
  line-height:1!important;
  color:var(--ws-text)!important;
}

body.single-product .ws-review-score-v2 .star-rating{
  margin-top:8px!important;
  color:#f59e0b!important;
}

body.single-product .ws-review-score-v2 .star-rating:before,
body.single-product .ws-review-score-v2 .star-rating span:before{
  color:#f59e0b!important;
}

/* New Add Review form card */
body.single-product .ws-review-form-card-v2{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 30px!important;
  padding:26px!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.9)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 18px 42px rgba(15,23,42,.06)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

body.single-product .ws-review-form-card-v2 #review_form,
body.single-product .ws-review-form-card-v2 #respond,
body.single-product .ws-review-form-card-v2 .comment-respond,
body.single-product .ws-review-form-card-v2 form.comment-form{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}

body.single-product .ws-review-form-title-v2{
  margin:0 0 20px!important;
  font-size:clamp(24px,2.2vw,32px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  color:var(--ws-text)!important;
}

body.single-product .ws-review-form-card-v2 .comment-form{
  display:grid!important;
  grid-template-columns:minmax(240px,330px) minmax(420px,1fr) minmax(180px,230px)!important;
  grid-template-areas:
    "auth auth auth"
    "main main submit"!important;
  gap:18px 22px!important;
  align-items:end!important;
}

body.single-product .ws-review-form-card-v2 .comment-form-author{
  grid-column:1 / 2!important;
  grid-row:1!important;
  margin:0!important;
}

body.single-product .ws-review-form-card-v2 .comment-form-email{
  grid-column:2 / 3!important;
  grid-row:1!important;
  margin:0!important;
}

body.single-product .ws-review-form-main{
  grid-area:main!important;
  display:grid!important;
  grid-template-columns:minmax(240px,330px) minmax(420px,1fr)!important;
  gap:22px!important;
  align-items:stretch!important;
}

body.single-product .ws-review-form-card-v2 .form-submit{
  grid-area:submit!important;
  margin:0!important;
  align-self:end!important;
}

body.single-product .ws-review-form-card-v2 label{
  display:block!important;
  margin:0 0 9px!important;
  color:var(--ws-text)!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.2!important;
}

body.single-product .ws-review-form-rating{
  padding:16px!important;
  border-radius:18px!important;
  background:#f7f3ff!important;
  border:1px solid #dfd3ff!important;
  box-sizing:border-box!important;
}

body.single-product .ws-review-form-card-v2 select,
body.single-product .ws-review-form-card-v2 input[type="text"],
body.single-product .ws-review-form-card-v2 input[type="email"]{
  width:100%!important;
  min-height:50px!important;
  border-radius:14px!important;
  box-sizing:border-box!important;
}

body.single-product .ws-review-form-card-v2 textarea{
  width:100%!important;
  min-height:128px!important;
  height:128px!important;
  padding:16px!important;
  border-radius:16px!important;
  resize:vertical!important;
  box-sizing:border-box!important;
}

body.single-product .ws-review-limit{
  display:block!important;
  margin-top:8px!important;
  color:var(--ws-muted)!important;
  font-size:12px!important;
}

body.single-product .ws-review-submit-v2,
body.single-product .ws-review-form-card-v2 input[type="submit"]{
  width:100%!important;
  min-height:56px!important;
  margin:0!important;
  border-radius:16px!important;
  font-size:15px!important;
  font-weight:850!important;
  box-sizing:border-box!important;
}

/* Review card grid: 4 per row on wide, 3 on normal desktop, 2 tablet, 1 mobile */
body.single-product .ws-review-grid-v2{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  width:100%!important;
  max-width:100%!important;
}

body.single-product .ws-review-card-v2{
  min-height:210px!important;
  padding:22px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.86)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 16px 36px rgba(15,23,42,.06)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

body.single-product .ws-review-card-v2.is-hidden{
  display:none!important;
}

body.single-product .ws-review-card-top-v2{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:16px!important;
}

body.single-product .ws-review-avatar-v2 img{
  width:46px!important;
  height:46px!important;
  border-radius:999px!important;
  object-fit:cover!important;
}

body.single-product .ws-review-card-top-v2 strong{
  display:block!important;
  color:var(--ws-text)!important;
  font-size:15px!important;
  font-weight:850!important;
  line-height:1.2!important;
}

body.single-product .ws-review-card-top-v2 span{
  display:block!important;
  margin-top:3px!important;
  color:var(--ws-muted)!important;
  font-size:12px!important;
  line-height:1.2!important;
}

body.single-product .ws-review-stars-v2{
  margin-bottom:14px!important;
}

body.single-product .ws-review-stars-v2 .star-rating{
  float:none!important;
  color:#f59e0b!important;
}

body.single-product .ws-review-stars-v2 .star-rating:before,
body.single-product .ws-review-stars-v2 .star-rating span:before{
  color:#f59e0b!important;
}

body.single-product .ws-review-card-v2 p{
  margin:0!important;
  color:var(--ws-muted)!important;
  font-size:14px!important;
  line-height:1.6!important;
}

body.single-product .ws-review-more-v2{
  display:flex!important;
  justify-content:center!important;
  margin-top:24px!important;
}

body.single-product .ws-review-more-v2 button{
  min-height:46px!important;
  padding:0 22px!important;
  border-radius:999px!important;
  border:1px solid rgba(123,61,255,.2)!important;
  background:#fff!important;
  color:var(--ws-purple)!important;
  font-weight:850!important;
  cursor:pointer!important;
}

@media (max-width:1400px){
  body.single-product .ws-review-grid-v2{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media (max-width:1100px){
  body.single-product .ws-review-form-card-v2 .comment-form,
  body.single-product .ws-review-form-main{
    grid-template-columns:1fr!important;
    grid-template-areas:none!important;
  }

  body.single-product .ws-review-form-card-v2 .comment-form-author,
  body.single-product .ws-review-form-card-v2 .comment-form-email,
  body.single-product .ws-review-form-main,
  body.single-product .ws-review-form-card-v2 .form-submit{
    grid-column:auto!important;
    grid-row:auto!important;
    grid-area:auto!important;
  }

  body.single-product .ws-review-grid-v2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width:700px){
  body.single-product .ws-reviews-v2-head{
    display:block!important;
  }

  body.single-product .ws-review-score-v2{
    margin-top:16px!important;
  }

  body.single-product .ws-review-grid-v2{
    grid-template-columns:1fr!important;
  }

  body.single-product .ws-review-form-card-v2{
    padding:20px!important;
  }
}


/* v3.5.75: replace visible Add Review form with CTA + popup modal */
html.ws-review-modal-open,
body.ws-review-modal-open{
  overflow: hidden !important;
}

body.single-product .ws-review-cta-card-v2{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 30px !important;
  padding: 24px !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.9) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.06) !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
}

body.single-product .ws-review-cta-card-v2 h3{
  margin: 0 0 6px !important;
  font-size: clamp(22px,2vw,30px) !important;
  line-height: 1.1 !important;
  letter-spacing: -.035em !important;
  color: var(--ws-text) !important;
}

body.single-product .ws-review-cta-card-v2 p{
  margin: 0 !important;
  color: var(--ws-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

body.single-product .ws-open-review-modal{
  flex: 0 0 auto !important;
  min-width: 180px !important;
  min-height: 52px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #7B3DFF, #5B22E8) !important;
  color: #fff !important;
  font-weight: 850 !important;
  font-size: 15px !important;
  cursor: pointer !important;
  box-shadow: 0 16px 32px rgba(91,34,232,.22) !important;
}

body.single-product .ws-review-modal{
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}

body.single-product .ws-review-modal.is-open{
  display: flex !important;
}

body.single-product .ws-review-modal-backdrop{
  position: absolute !important;
  inset: 0 !important;
  background: rgba(15,23,42,.48) !important;
  backdrop-filter: blur(8px) !important;
}

body.single-product .ws-review-modal-panel{
  position: relative !important;
  z-index: 2 !important;
  width: min(760px, 100%) !important;
  max-height: calc(100vh - 48px) !important;
  overflow: auto !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 28px 80px rgba(15,23,42,.28) !important;
}

body.single-product .ws-review-modal-close{
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  z-index: 4 !important;
  width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(15,23,42,.06) !important;
  color: var(--ws-text) !important;
  font-size: 24px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

body.single-product .ws-review-form-card-modal{
  margin: 0 !important;
  padding: 30px !important;
  border: 0 !important;
  border-radius: 28px !important;
  box-shadow: none !important;
  background: #fff !important;
}

/* Modal form is vertical and safe, so it cannot break the product page layout */
body.single-product .ws-review-form-card-modal .comment-form,
body.single-product .ws-review-form-card-modal .ws-review-form-main{
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-areas: none !important;
  gap: 16px !important;
}

body.single-product .ws-review-form-card-modal .comment-form-author,
body.single-product .ws-review-form-card-modal .comment-form-email,
body.single-product .ws-review-form-card-modal .ws-review-form-main,
body.single-product .ws-review-form-card-modal .form-submit{
  grid-column: auto !important;
  grid-row: auto !important;
  grid-area: auto !important;
  margin: 0 !important;
}

body.single-product .ws-review-form-card-modal textarea{
  min-height: 150px !important;
  height: 150px !important;
}

body.single-product .ws-review-form-card-modal .ws-review-submit-v2,
body.single-product .ws-review-form-card-modal input[type="submit"]{
  width: 100% !important;
  min-height: 52px !important;
}

/* Review cards remain the main visible section */
body.single-product .ws-review-grid-v2{
  margin-top: 0 !important;
}

@media (max-width:700px){
  body.single-product .ws-review-cta-card-v2{
    display: block !important;
    padding: 20px !important;
  }

  body.single-product .ws-open-review-modal{
    width: 100% !important;
    margin-top: 16px !important;
  }

  body.single-product .ws-review-modal{
    padding: 14px !important;
  }

  body.single-product .ws-review-form-card-modal{
    padding: 24px 18px 18px !important;
  }
}


/* v3.5.76: remove right-side rating card from product reviews */
body.single-product .ws-review-score-v2{
  display:none!important;
}

body.single-product .ws-reviews-v2-head{
  align-items:flex-start!important;
  justify-content:flex-start!important;
}

body.single-product .ws-reviews-v2-head > div:first-child{
  width:100%!important;
  max-width:100%!important;
}


/* v3.5.77: duplicate review warning inside popup/form, no wp-comments-post.php redirect */
body.single-product .ws-review-error-message{
  width:100%!important;
  margin:0 0 14px!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  background:#fff7ed!important;
  border:1px solid #fed7aa!important;
  color:#9a3412!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.45!important;
  box-sizing:border-box!important;
}


/* v3.5.78: desktop review modal gets a helpful right-side guidance panel, mobile unchanged */
body.single-product .ws-review-modal-panel{
  width:min(1180px,100%)!important;
}

body.single-product .ws-review-modal-content{
  display:grid!important;
  grid-template-columns:minmax(0, 520px) minmax(0, 1fr)!important;
  align-items:stretch!important;
}

body.single-product .ws-review-modal-main{
  min-width:0!important;
}

body.single-product .ws-review-modal-side{
  display:block!important;
  min-width:0!important;
  padding:30px 30px 30px 0!important;
  box-sizing:border-box!important;
}

body.single-product .ws-review-modal-side-inner{
  height:100%!important;
  min-height:100%!important;
  padding:30px!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#fbf9ff 0%,#f4efff 100%)!important;
  border:1px solid #e6dcff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:24px!important;
  box-sizing:border-box!important;
}

body.single-product .ws-review-side-eyebrow{
  margin:0 0 10px!important;
  color:var(--ws-purple)!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

body.single-product .ws-review-modal-side h3{
  margin:0 0 10px!important;
  color:var(--ws-text)!important;
  font-size:clamp(28px,2.2vw,38px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}

body.single-product .ws-review-side-intro{
  margin:0!important;
  color:var(--ws-muted)!important;
  font-size:15px!important;
  line-height:1.7!important;
}

body.single-product .ws-review-side-points{
  display:grid!important;
  gap:14px!important;
}

body.single-product .ws-review-side-point{
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:start!important;
  padding:16px!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(123,61,255,.12)!important;
}

body.single-product .ws-review-side-num{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:56px!important;
  height:56px!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#7B3DFF,#5B22E8)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1!important;
  box-shadow:0 16px 28px rgba(91,34,232,.18)!important;
}

body.single-product .ws-review-side-point strong{
  display:block!important;
  margin:0 0 6px!important;
  color:var(--ws-text)!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1.3!important;
}

body.single-product .ws-review-side-point p{
  margin:0!important;
  color:var(--ws-muted)!important;
  font-size:14px!important;
  line-height:1.65!important;
}

body.single-product .ws-review-side-example{
  margin-top:auto!important;
  padding:20px!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 16px 28px rgba(15,23,42,.05)!important;
}

body.single-product .ws-review-side-example span{
  display:block!important;
  margin:0 0 10px!important;
  color:var(--ws-purple)!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}

body.single-product .ws-review-side-example blockquote{
  margin:0!important;
  color:var(--ws-text)!important;
  font-size:17px!important;
  line-height:1.7!important;
  font-weight:600!important;
}

@media (max-width:900px){
  body.single-product .ws-review-modal-panel{
    width:min(760px,100%)!important;
  }

  body.single-product .ws-review-modal-content{
    display:block!important;
  }

  body.single-product .ws-review-modal-side{
    display:none!important;
  }
}


/* v3.5.79: compact desktop review modal, remove heavy right-side content */
@media (min-width:901px){
  body.single-product .ws-review-modal-panel{
    width:min(900px, calc(100vw - 40px))!important;
    max-height:calc(100vh - 48px)!important;
    border-radius:26px!important;
  }

  body.single-product .ws-review-modal-content{
    display:grid!important;
    grid-template-columns:360px minmax(0,1fr)!important;
    align-items:stretch!important;
  }

  body.single-product .ws-review-form-card-modal{
    padding:26px!important;
  }

  body.single-product .ws-review-modal-side{
    display:block!important;
    padding:22px 22px 22px 0!important;
  }

  body.single-product .ws-review-modal-side-inner{
    padding:22px!important;
    border-radius:24px!important;
    gap:16px!important;
  }

  body.single-product .ws-review-side-eyebrow{
    margin-bottom:8px!important;
    font-size:11px!important;
    letter-spacing:.13em!important;
  }

  body.single-product .ws-review-modal-side h3{
    font-size:26px!important;
    line-height:1.06!important;
    margin-bottom:8px!important;
  }

  body.single-product .ws-review-side-intro{
    font-size:14px!important;
    line-height:1.6!important;
  }

  body.single-product .ws-review-side-points{
    gap:10px!important;
  }

  body.single-product .ws-review-side-point{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:12px!important;
    padding:12px!important;
    border-radius:18px!important;
  }

  body.single-product .ws-review-side-num{
    width:42px!important;
    height:42px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }

  body.single-product .ws-review-side-point strong{
    font-size:14px!important;
    margin-bottom:4px!important;
  }

  body.single-product .ws-review-side-point p{
    font-size:12px!important;
    line-height:1.5!important;
  }

  body.single-product .ws-review-side-example{
    display:none!important;
  }
}

@media (max-width:900px){
  body.single-product .ws-review-modal-side{
    display:none!important;
  }
}


/* v3.5.80/81: remove unwanted product reviews/footer line and add spacing */
body.single-product .ws-site-footer{
  border-top:none!important;
  box-shadow:none!important;
}
body.single-product main.ws-page.ws-woocommerce-page{
  box-shadow:none!important;
}
body.single-product #reviews.ws-reviews-v2,
body.single-product .woocommerce-tabs #reviews.ws-reviews-v2{
  margin-bottom:24px!important;
}
body.single-product .ws-review-more-v2{
  margin-top:24px!important;
  margin-bottom:36px!important;
  padding-bottom:8px!important;
  border-bottom:none!important;
  box-shadow:none!important;
}

/* v3.5.82: mobile homepage hero compatibility fix */
@media (max-width:640px){
  html,body{overflow-x:hidden!important;}
  .home .ws-home-v2,
  .home .ws-home-hero,
  .home .ws-home-hero .ws-container,
  .home .ws-home-hero-grid{overflow-x:hidden!important;}
  .home .ws-home-hero .ws-container{padding-left:16px!important;padding-right:16px!important;}
  .home .ws-home-hero{padding:18px 0 8px!important;}
  .home .ws-home-hero-grid{grid-template-columns:1fr!important;gap:18px!important;width:100%!important;}
  .home .ws-home-hero-copy{width:100%!important;max-width:100%!important;padding:0!important;margin:0 auto!important;text-align:center!important;align-items:center!important;}
  .home .ws-home-hero-copy h1{width:100%!important;max-width:100%!important;margin:0 auto 12px!important;font-size:clamp(24px,6.8vw,34px)!important;line-height:1.08!important;letter-spacing:-.04em!important;text-align:center!important;overflow-wrap:break-word!important;word-break:normal!important;text-wrap:balance!important;}
  .home .ws-home-hero-copy p{width:100%!important;max-width:100%!important;margin:0 auto!important;font-size:14px!important;line-height:1.55!important;text-align:center!important;}
  .home .ws-home-actions{width:100%!important;max-width:100%!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:18px!important;}
  .home .ws-home-actions .ws-btn{width:100%!important;max-width:100%!important;min-height:54px!important;padding-left:16px!important;padding-right:16px!important;border-radius:18px!important;white-space:nowrap!important;}
  .home .ws-home-trust{width:100%!important;max-width:100%!important;margin:14px auto 0!important;padding:0!important;display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:8px!important;overflow:visible!important;white-space:normal!important;}
  .home .ws-home-trust span{flex:0 1 auto!important;min-height:30px!important;padding:7px 10px!important;font-size:11px!important;line-height:1.15!important;white-space:nowrap!important;}
  .home .ws-home-trust span:before{width:16px!important;height:16px!important;flex-basis:16px!important;border-radius:6px!important;font-size:11px!important;}
  .home .ws-home-hero-visual,
  .home .ws-home-hero-visual img{width:100%!important;max-width:100%!important;margin:2px auto 0!important;border-radius:20px!important;}
}

/* v3.5.83: hide login showcase panel on mobile */
@media (max-width:767px){
  body.woocommerce-account .ws-auth-hero{display:none!important;}
  body.woocommerce-account .ws-auth-shell{grid-template-columns:1fr!important;gap:0!important;align-items:start!important;}
  body.woocommerce-account .ws-auth-card{width:100%!important;max-width:100%!important;margin:0!important;}
}

/* v3.5.84/85: fix Privacy/Terms legal pages visibility on mobile */
@media (max-width:767px){
  body.page-template-page-privacy .ws-page,
  body.page-template-page-terms .ws-page,
  body.page-template-page-privacy-policy .ws-page,
  body.page-template-page-privacy main,
  body.page-template-page-terms main,
  body.page-template-page-privacy-policy main,
  body.privacy-policy .ws-page,
  body.privacy-policy main{
    display:block!important;visibility:visible!important;opacity:1!important;height:auto!important;min-height:auto!important;overflow:visible!important;padding:22px 0 56px!important;
  }
  body.page-template-page-privacy .ws-container,
  body.page-template-page-terms .ws-container,
  body.page-template-page-privacy-policy .ws-container,
  body.privacy-policy .ws-container{
    display:block!important;width:100%!important;max-width:100%!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important;
  }
  body.page-template-page-privacy .ws-info-hero,
  body.page-template-page-terms .ws-info-hero,
  body.page-template-page-privacy-policy .ws-info-hero,
  body.privacy-policy .ws-info-hero{
    display:block!important;visibility:visible!important;opacity:1!important;margin:0 0 20px!important;padding:0!important;
  }
  body.page-template-page-privacy .ws-info-hero h1,
  body.page-template-page-terms .ws-info-hero h1,
  body.page-template-page-privacy-policy .ws-info-hero h1,
  body.privacy-policy .ws-info-hero h1{
    display:block!important;visibility:visible!important;opacity:1!important;font-size:32px!important;line-height:1.08!important;letter-spacing:-.04em!important;margin:0 0 10px!important;color:var(--ws-text)!important;
  }
  body.page-template-page-privacy .ws-info-hero p,
  body.page-template-page-terms .ws-info-hero p,
  body.page-template-page-privacy-policy .ws-info-hero p,
  body.privacy-policy .ws-info-hero p{
    display:block!important;visibility:visible!important;opacity:1!important;font-size:14px!important;line-height:1.6!important;color:var(--ws-muted)!important;
  }
  body.page-template-page-privacy .ws-card,
  body.page-template-page-terms .ws-card,
  body.page-template-page-privacy-policy .ws-card,
  body.privacy-policy .ws-card,
  body.page-template-page-privacy .ws-info-card,
  body.page-template-page-terms .ws-info-card,
  body.page-template-page-privacy-policy .ws-info-card,
  body.privacy-policy .ws-info-card{
    display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;max-width:100%!important;height:auto!important;overflow:visible!important;padding:20px!important;box-sizing:border-box!important;
  }
}

/* v3.5.88: Changelog desktop text starts from the same line as version badge */
@media (min-width:768px){
  .ws-changelog-page .ws-changelog-item{display:block!important;}
  .ws-changelog-page .ws-version-badge{display:inline-flex!important;margin:0 0 18px!important;width:auto!important;max-width:100%!important;}
  .ws-changelog-page .ws-changelog-item h2{grid-column:auto!important;width:auto!important;margin:0 0 18px!important;text-align:left!important;justify-self:auto!important;}
  .ws-changelog-page .ws-changelog-item ul{grid-column:auto!important;width:auto!important;max-width:none!important;margin:0!important;padding-left:22px!important;text-align:left!important;justify-self:auto!important;}
}

/* v3.5.89: EDD-style My Account addresses, hide shipping address */
body.woocommerce-account .woocommerce-Address--shipping,
body.woocommerce-account .u-column2.woocommerce-Address,
body.woocommerce-account .ws-account-billing-only + .woocommerce-Address{
  display:none!important;
}
body.woocommerce-account .ws-account-billing-only{
  width:100%!important;
  max-width:100%!important;
}
body.woocommerce-account .ws-account-billing-only .woocommerce-Address-title{
  margin-bottom:12px!important;
}
body.woocommerce-account .ws-account-billing-only .woocommerce-Address-title h2{
  margin-bottom:10px!important;
}
body.woocommerce-account .ws-account-billing-only .edit{
  color:var(--ws-purple)!important;
  font-weight:800!important;
}


/* v3.5.90: EDD-style WooCommerce shop page */
body.post-type-archive-product .ws-site-footer,
body.tax-product_cat .ws-site-footer{
  margin-top:0!important;
}

.ws-shop-page{
  padding:48px 0 76px!important;
  background:
    radial-gradient(circle at 18% 8%, rgba(123,61,255,.12), transparent 28%),
    radial-gradient(circle at 82% 16%, rgba(103,21,206,.08), transparent 30%),
    linear-gradient(180deg,#fbfaff 0%,#fff 58%,#fbfaff 100%)!important;
}

.ws-shop-page .ws-container{
  max-width:1180px!important;
}

.ws-shop-hero{
  padding:42px!important;
  margin-bottom:24px!important;
  border-radius:30px!important;
  text-align:left!important;
}

.ws-shop-hero h1{
  max-width:760px!important;
  margin:16px 0 14px!important;
  font-size:clamp(42px,5vw,72px)!important;
  line-height:.98!important;
  letter-spacing:-.06em!important;
  color:var(--ws-text)!important;
}

.ws-shop-hero p{
  max-width:680px!important;
  margin:0!important;
  font-size:18px!important;
  line-height:1.7!important;
  color:var(--ws-muted)!important;
}

.ws-shop-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin:0 0 22px!important;
}

.ws-shop-count,
.ws-shop-count .woocommerce-result-count{
  margin:0!important;
  color:var(--ws-muted)!important;
  font-size:15px!important;
  font-weight:700!important;
}

.ws-shop-sorting form,
.ws-shop-sorting .woocommerce-ordering{
  margin:0!important;
}

.ws-shop-sorting select{
  min-height:48px!important;
  min-width:230px!important;
  padding:0 42px 0 16px!important;
  border-radius:16px!important;
  border:1px solid rgba(15,23,42,.12)!important;
  background:#fff!important;
  color:var(--ws-text)!important;
  font-weight:700!important;
  box-shadow:0 12px 26px rgba(15,23,42,.05)!important;
}

.ws-shop-page ul.products{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

.ws-shop-page ul.products:before,
.ws-shop-page ul.products:after{
  display:none!important;
  content:none!important;
}

.ws-shop-page ul.products li.product,
.ws-shop-product-card{
  width:auto!important;
  margin:0!important;
  float:none!important;
  padding:0!important;
  border-radius:28px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 18px 46px rgba(15,23,42,.07)!important;
}

.ws-shop-product-link{
  display:block!important;
  color:inherit!important;
  text-decoration:none!important;
}

.ws-shop-product-media{
  background:linear-gradient(135deg,#f8f6ff,#fff)!important;
  min-height:260px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:28px!important;
  border-bottom:1px solid rgba(15,23,42,.06)!important;
}

.ws-shop-product-media img{
  width:100%!important;
  max-width:320px!important;
  height:auto!important;
  max-height:260px!important;
  object-fit:contain!important;
  margin:0 auto!important;
  display:block!important;
}

.ws-shop-product-body{
  padding:24px!important;
}

.ws-shop-product-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:14px!important;
}

.ws-shop-product-badge,
.ws-shop-rating{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:850!important;
}

.ws-shop-product-badge{
  background:var(--ws-purple-soft)!important;
  color:var(--ws-purple-dark)!important;
}

.ws-shop-rating{
  background:#fff7ed!important;
  color:#f59e0b!important;
}

.ws-shop-product-card h2,
.ws-shop-page .woocommerce-loop-product__title{
  margin:0 0 10px!important;
  padding:0!important;
  color:var(--ws-text)!important;
  font-size:28px!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}

.ws-shop-product-desc{
  margin:0 0 18px!important;
  color:var(--ws-muted)!important;
  font-size:14px!important;
  line-height:1.65!important;
}

.ws-shop-product-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-bottom:20px!important;
}

.ws-shop-product-meta span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  background:#f8fafc!important;
  color:var(--ws-muted)!important;
  font-size:11px!important;
  font-weight:750!important;
}

.ws-shop-product-footer{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
}

.ws-shop-price{
  color:var(--ws-text)!important;
  font-size:18px!important;
  font-weight:850!important;
}

.ws-shop-price del{
  color:var(--ws-muted)!important;
  opacity:.55!important;
  font-size:14px!important;
  margin-right:6px!important;
}

.ws-shop-price ins{
  text-decoration:none!important;
}

.ws-shop-card-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:0 18px!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#7B3DFF,#5B22E8)!important;
  color:#fff!important;
  font-weight:850!important;
  white-space:nowrap!important;
  box-shadow:0 14px 30px rgba(91,34,232,.20)!important;
}

.ws-shop-page .added_to_cart,
.ws-shop-page li.product .button{
  display:none!important;
}

.ws-shop-cta{
  margin-top:34px!important;
  padding:34px!important;
  border-radius:30px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  background:linear-gradient(135deg,#7B3DFF,#5B22E8)!important;
  color:#fff!important;
}

.ws-shop-cta .ws-pill{
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.22)!important;
}

.ws-shop-cta h2{
  max-width:720px!important;
  margin:14px 0 10px!important;
  color:#fff!important;
  font-size:clamp(30px,3vw,46px)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
}

.ws-shop-cta p{
  margin:0!important;
  color:rgba(255,255,255,.82)!important;
  font-size:16px!important;
  line-height:1.65!important;
}

.ws-shop-cta .ws-btn{
  flex:0 0 auto!important;
  background:#fff!important;
  color:var(--ws-text)!important;
}

@media (max-width:980px){
  .ws-shop-page ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .ws-shop-cta{
    display:block!important;
  }

  .ws-shop-cta .ws-btn{
    margin-top:20px!important;
  }
}

@media (max-width:640px){
  .ws-shop-page{
    padding:28px 0 52px!important;
  }

  .ws-shop-hero{
    padding:24px!important;
    border-radius:24px!important;
  }

  .ws-shop-hero h1{
    font-size:34px!important;
  }

  .ws-shop-hero p{
    font-size:14px!important;
  }

  .ws-shop-toolbar{
    display:block!important;
  }

  .ws-shop-sorting{
    margin-top:12px!important;
  }

  .ws-shop-sorting select{
    width:100%!important;
    min-width:0!important;
  }

  .ws-shop-page ul.products{
    grid-template-columns:1fr!important;
  }

  .ws-shop-product-media{
    min-height:220px!important;
  }

  .ws-shop-product-card h2,
  .ws-shop-page .woocommerce-loop-product__title{
    font-size:26px!important;
  }

  .ws-shop-product-footer{
    display:block!important;
  }

  .ws-shop-card-button{
    width:100%!important;
    margin-top:14px!important;
  }
}


/* v3.5.91: no generic shop archive UX */
body.post-type-archive-product .ws-shop-page{
  display:none!important;
}


/* v3.5.93: hidden honeypot fields for spam protection */
.ws-hp-field{
  position:absolute!important;
  left:-10000px!important;
  top:auto!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}


/* v3.5.94: checkout loading feedback */
.ws-is-loading{
  pointer-events:none!important;
  opacity:.78!important;
  cursor:progress!important;
}


/* v3.5.97: checkout login popup modal */
body.woocommerce-checkout form.woocommerce-form-login.login{
  display:none!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle{
  width:min(100%, 1000px)!important;
  margin:0 0 28px!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:26px 30px!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::after{
  display:none!important;
  content:none!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:72px!important;
  min-width:300px!important;
  padding:0 28px!important;
  border:1px solid var(--ws-border-strong, rgba(123,82,255,.22))!important;
  border-radius:28px!important;
  background:var(--ws-purple-soft)!important;
  color:var(--ws-purple-dark)!important;
  font-family:'Sora',sans-serif!important;
  font-size:22px!important;
  font-weight:800!important;
  letter-spacing:-0.02em!important;
  text-decoration:none!important;
  box-shadow:none!important;
}

.ws-checkout-login-modal{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  display:none!important;
}
.ws-checkout-login-modal.is-open{
  display:block!important;
}
.ws-checkout-login-modal__backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(15,23,42,.34)!important;
  backdrop-filter:blur(4px)!important;
}
.ws-checkout-login-modal__dialog{
  position:relative!important;
  width:min(960px, calc(100vw - 28px))!important;
  max-height:min(90vh, 860px)!important;
  overflow:auto!important;
  margin:4vh auto 0!important;
  padding:38px 40px 34px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:32px!important;
  background:var(--ws-surface)!important;
  box-shadow:0 30px 80px rgba(15,23,42,.20)!important;
}
.ws-checkout-login-modal__close{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:52px!important;
  height:52px!important;
  border:none!important;
  border-radius:999px!important;
  background:#f5f2ff!important;
  color:var(--ws-text)!important;
  font-size:36px!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.ws-checkout-login-modal__header{
  margin:0 0 26px!important;
  padding-right:72px!important;
}
.ws-checkout-login-modal__eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  min-height:58px!important;
  padding:0 26px!important;
  border-radius:999px!important;
  background:var(--ws-purple-soft)!important;
  color:var(--ws-purple-dark)!important;
  font-size:18px!important;
  font-weight:800!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.ws-checkout-login-modal__header h3{
  margin:22px 0 14px!important;
  color:var(--ws-text)!important;
  font-family:'Sora',sans-serif!important;
  font-size:clamp(40px, 5vw, 72px)!important;
  line-height:0.98!important;
  letter-spacing:-0.05em!important;
}
.ws-checkout-login-modal__header p{
  margin:0!important;
  color:var(--ws-muted)!important;
  font-size:18px!important;
  line-height:1.55!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login{
  display:grid!important;
  grid-template-columns:repeat(2, minmax(0, 1fr))!important;
  gap:18px 28px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login > p:first-child{
  grid-column:1 / -1!important;
  margin:0 0 12px!important;
  padding:0!important;
  text-indent:0!important;
  color:var(--ws-muted)!important;
  font-size:18px!important;
  line-height:1.6!important;
  overflow:visible!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .form-row,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .form-row-first,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .form-row-last,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .form-row-wide{
  float:none!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .form-row-wide,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .lost_password,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .clear{
  grid-column:1 / -1!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login label{
  display:block!important;
  margin:0 0 12px!important;
  color:var(--ws-text)!important;
  font-family:'Sora',sans-serif!important;
  font-size:18px!important;
  font-weight:700!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="text"],
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="email"],
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="password"]{
  display:block!important;
  width:100%!important;
  min-height:76px!important;
  padding:0 24px!important;
  border:1.5px solid var(--ws-border-dark)!important;
  border-radius:28px!important;
  background:#fff!important;
  color:var(--ws-text)!important;
  font-size:20px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input:focus{
  outline:none!important;
  border-color:var(--ws-purple)!important;
  box-shadow:0 0 0 4px var(--ws-purple-glow)!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .password-input,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .show-password-input,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .password-input .show-password-input,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .password-input button{
  display:block!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .password-input{
  position:relative!important;
  width:100%!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .password-input .show-password-input,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .password-input button,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .show-password-input{
  display:none!important;
  visibility:hidden!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login p.form-row:not(.form-row-first):not(.form-row-last):not(.form-row-wide){
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  flex-wrap:wrap!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__rememberme{
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  color:var(--ws-text)!important;
  font-size:18px!important;
  font-weight:700!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__rememberme input{
  width:20px!important;
  height:20px!important;
  min-height:20px!important;
  margin:0!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__submit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:60px!important;
  padding:0 34px!important;
  border:none!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,#7B52FF 0%,#5530FF 100%)!important;
  color:#fff!important;
  font-family:'Sora',sans-serif!important;
  font-size:19px!important;
  font-weight:800!important;
  box-shadow:0 18px 30px rgba(108,71,255,.22)!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .lost_password{
  margin:0!important;
  padding:4px 0 0!important;
  position:static!important;
  left:auto!important;
  overflow:visible!important;
  clear:both!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .lost_password a{
  display:inline-block!important;
  color:var(--ws-purple)!important;
  font-size:16px!important;
  font-weight:700!important;
  text-decoration:none!important;
  white-space:normal!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .clear{
  display:none!important;
}
html.ws-checkout-login-open,
body.ws-checkout-login-open{
  overflow:hidden!important;
}
@media (max-width: 767px){
  body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin{
    width:100%!important;
    min-width:0!important;
    min-height:62px!important;
    font-size:19px!important;
  }
  .ws-checkout-login-modal__dialog{
    width:min(100vw - 14px, 960px)!important;
    margin:10px auto 0!important;
    padding:24px 20px 22px!important;
    border-radius:24px!important;
  }
  .ws-checkout-login-modal__header{
    padding-right:58px!important;
    margin-bottom:20px!important;
  }
  .ws-checkout-login-modal__eyebrow{
    min-height:46px!important;
    padding:0 18px!important;
    font-size:14px!important;
  }
  .ws-checkout-login-modal__header h3{
    margin:16px 0 10px!important;
    font-size:44px!important;
  }
  .ws-checkout-login-modal__header p,
  body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login > p:first-child{
    font-size:16px!important;
  }
  body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="text"],
  body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="email"],
  body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="password"]{
    min-height:62px!important;
    border-radius:20px!important;
    font-size:18px!important;
  }
  body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login p.form-row:not(.form-row-first):not(.form-row-last):not(.form-row-wide){
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__submit{
    width:100%!important;
  }
}


/* v3.5.98: compact checkout login strip + smaller login popup */
body.woocommerce-checkout .woocommerce-form-login-toggle{
  width:100%!important;
  max-width:calc(100% - 468px)!important;
  margin:0 0 18px 0!important;
  margin-right:auto!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
  min-height:88px!important;
  padding:18px 22px!important;
  border-radius:24px!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info *{
  box-sizing:border-box!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info .message,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
  font-size:17px!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin{
  min-height:58px!important;
  min-width:250px!important;
  padding:0 24px!important;
  border-radius:24px!important;
  font-size:18px!important;
  font-weight:800!important;
}

.ws-checkout-login-modal__dialog{
  width:min(680px, calc(100vw - 28px))!important;
  max-height:min(88vh, 760px)!important;
  margin:6vh auto 0!important;
  padding:26px 28px 24px!important;
  border-radius:28px!important;
}
.ws-checkout-login-modal__close{
  top:16px!important;
  right:16px!important;
  width:46px!important;
  height:46px!important;
  font-size:30px!important;
}
.ws-checkout-login-modal__header{
  margin:0 0 18px!important;
  padding-right:58px!important;
}
.ws-checkout-login-modal__eyebrow{
  min-height:42px!important;
  padding:0 16px!important;
  font-size:13px!important;
}
.ws-checkout-login-modal__header h3{
  margin:14px 0 8px!important;
  font-size:clamp(34px, 5vw, 46px)!important;
  line-height:1.02!important;
}
.ws-checkout-login-modal__header p{
  font-size:15px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login{
  grid-template-columns:1fr!important;
  gap:14px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login > p:first-child{
  margin:0 0 4px!important;
  font-size:15px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login label{
  margin:0 0 9px!important;
  font-size:16px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="text"],
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="email"],
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="password"]{
  min-height:58px!important;
  padding:0 18px!important;
  border-radius:20px!important;
  font-size:17px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login p.form-row:not(.form-row-first):not(.form-row-last):not(.form-row-wide){
  gap:12px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__rememberme{
  font-size:16px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__submit{
  min-height:54px!important;
  padding:0 28px!important;
  border-radius:18px!important;
  font-size:17px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .lost_password a{
  font-size:15px!important;
}

@media (max-width: 1100px){
  body.woocommerce-checkout .woocommerce-form-login-toggle{
    max-width:100%!important;
  }
}
@media (max-width: 767px){
  body.woocommerce-checkout .woocommerce-form-login-toggle{
    margin-bottom:14px!important;
  }
  body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
    min-height:auto!important;
    padding:16px 18px!important;
    border-radius:20px!important;
  }
  .ws-checkout-login-modal__dialog{
    width:min(100vw - 14px, 680px)!important;
    margin:10px auto 0!important;
    padding:22px 18px 20px!important;
    border-radius:22px!important;
  }
  .ws-checkout-login-modal__header h3{
    font-size:36px!important;
  }
}


/* v3.5.99: smaller checkout login strip, top-aligned summary, smaller popup */
@media (min-width: 1101px){
  body.woocommerce-checkout .woocommerce-form-login-toggle{
    max-width:calc(100% - 468px)!important;
    margin:0 0 12px 0!important;
  }
  body.woocommerce-checkout .ws-checkout-side{
    margin-top:-108px!important;
  }
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
  min-height:72px!important;
  padding:12px 18px!important;
  border-radius:22px!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info .message,
body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info > *{
  font-size:15px!important;
  font-weight:500!important;
  line-height:1.35!important;
}
body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin{
  min-height:46px!important;
  min-width:210px!important;
  padding:0 20px!important;
  border-radius:20px!important;
  font-size:15px!important;
  font-weight:600!important;
  letter-spacing:0!important;
}

.ws-checkout-login-modal__dialog{
  width:min(560px, calc(100vw - 28px))!important;
  max-height:min(84vh, 680px)!important;
  margin:7vh auto 0!important;
  padding:22px 24px 20px!important;
  border-radius:24px!important;
}
.ws-checkout-login-modal__close{
  top:14px!important;
  right:14px!important;
  width:42px!important;
  height:42px!important;
  font-size:28px!important;
}
.ws-checkout-login-modal__header{
  margin:0 0 14px!important;
  padding-right:52px!important;
}
.ws-checkout-login-modal__eyebrow{
  min-height:36px!important;
  padding:0 14px!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:0.08em!important;
}
.ws-checkout-login-modal__header h3{
  margin:12px 0 8px!important;
  font-size:clamp(26px, 3vw, 34px)!important;
  line-height:1.04!important;
  font-weight:700!important;
  letter-spacing:-0.02em!important;
}
.ws-checkout-login-modal__header p,
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login > p:first-child{
  font-size:14px!important;
  line-height:1.55!important;
  font-weight:400!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login{
  gap:12px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login label{
  margin:0 0 8px!important;
  font-size:14px!important;
  font-weight:600!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="text"],
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="email"],
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login input[type="password"]{
  min-height:52px!important;
  padding:0 16px!important;
  border-radius:18px!important;
  font-size:15px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login p.form-row:not(.form-row-first):not(.form-row-last):not(.form-row-wide){
  gap:10px!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__rememberme{
  font-size:15px!important;
  font-weight:600!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .woocommerce-form-login__submit{
  min-height:46px!important;
  padding:0 22px!important;
  border-radius:16px!important;
  font-size:15px!important;
  font-weight:600!important;
}
body.woocommerce-checkout #ws-checkout-login-modal form.woocommerce-form-login.login .lost_password a{
  font-size:14px!important;
  font-weight:600!important;
}
@media (max-width: 1100px){
  body.woocommerce-checkout .ws-checkout-side{
    margin-top:0!important;
  }
}
@media (max-width: 767px){
  body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info{
    min-height:auto!important;
    padding:12px 16px!important;
  }
  body.woocommerce-checkout .woocommerce-form-login-toggle .showlogin{
    min-height:42px!important;
    min-width:190px!important;
    font-size:14px!important;
  }
  .ws-checkout-login-modal__dialog{
    width:min(100vw - 14px, 560px)!important;
    margin:12px auto 0!important;
    padding:18px 16px 18px!important;
    border-radius:20px!important;
  }
  .ws-checkout-login-modal__header h3{
    font-size:28px!important;
  }
}


/* v3.5.100: license key + download dashboard styling */
.ws-license-panel{
  margin:22px 0!important;
  padding:24px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfaff 100%)!important;
  box-shadow:var(--ws-shadow)!important;
}
.ws-license-panel__head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:22px!important;
  margin-bottom:18px!important;
}
.ws-license-panel__head h2{
  margin:12px 0 8px!important;
  color:var(--ws-text)!important;
  font-family:'Sora',sans-serif!important;
  font-size:clamp(24px,2.4vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
.ws-license-panel__head p{
  margin:0!important;
  max-width:680px!important;
  color:var(--ws-muted)!important;
  font-size:15px!important;
  line-height:1.65!important;
}
.ws-license-download-btn{
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.ws-license-list{
  display:grid!important;
  gap:12px!important;
}
.ws-license-card{
  padding:18px!important;
  border:1px solid rgba(123,82,255,.16)!important;
  border-radius:22px!important;
  background:#fff!important;
}
.ws-license-card__meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-bottom:12px!important;
}
.ws-license-card__meta span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:26px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  background:var(--ws-purple-soft)!important;
  color:var(--ws-purple-dark)!important;
  font-size:11px!important;
  font-weight:800!important;
}
.ws-license-card label{
  display:block!important;
  margin:0 0 8px!important;
  color:var(--ws-muted)!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.ws-license-card code{
  display:block!important;
  width:100%!important;
  padding:14px 16px!important;
  border:1px solid var(--ws-border)!important;
  border-radius:16px!important;
  background:#f8fafc!important;
  color:var(--ws-text)!important;
  font-size:15px!important;
  font-weight:800!important;
  word-break:break-all!important;
  white-space:normal!important;
}
.ws-license-note{
  margin:14px 0 0!important;
  color:var(--ws-muted)!important;
  font-size:14px!important;
}
.ws-thankyou-page .wps-license-box{
  display:none!important;
}
@media (max-width:767px){
  .ws-license-panel{
    padding:18px!important;
    border-radius:22px!important;
  }
  .ws-license-panel__head{
    display:block!important;
  }
  .ws-license-download-btn{
    width:100%!important;
    margin-top:16px!important;
  }
}


/* v3.5.102: WooCommerce generated pages wrapper safety */
.ws-cart-page,
.ws-checkout-page,
.ws-account-page{
  background:
    radial-gradient(circle at 15% 0%, rgba(123,82,255,.12), transparent 26%),
    radial-gradient(circle at 85% 12%, rgba(123,82,255,.08), transparent 28%),
    linear-gradient(180deg,#fbfaff 0%,#fff 62%,#fbfaff 100%)!important;
}
.ws-cart-page .wc-block-cart,
.ws-checkout-page .wc-block-checkout,
.ws-account-page .woocommerce{
  max-width:1180px!important;
  margin:0 auto!important;
}


/* v3.5.103: logged-in checkout alignment + compact Woo notices */
@media (min-width:1101px){
  body.woocommerce-checkout.logged-in .ws-checkout-side,
  body.woocommerce-checkout:not(.logged-out) .ws-checkout-side{
    margin-top:0!important;
  }
}

/* Keep the checkout two-column design stable for logged-in users */
body.woocommerce-checkout.logged-in .ws-checkout-shell{
  align-items:start!important;
}
body.woocommerce-checkout.logged-in .ws-checkout-main,
body.woocommerce-checkout.logged-in .ws-checkout-side{
  padding-top:0!important;
}

/* Minimal WooCommerce notices instead of huge white blocks */
body.woocommerce-checkout .woocommerce-notices-wrapper{
  width:min(100%, 1180px)!important;
  margin:0 auto 18px!important;
  padding:0!important;
}
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-height:0!important;
  margin:0 0 12px!important;
  padding:12px 16px!important;
  border-radius:16px!important;
  border:1px solid rgba(15,23,42,.10)!important;
  background:#fff!important;
  box-shadow:0 12px 28px rgba(15,23,42,.06)!important;
  color:var(--ws-text)!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.45!important;
  list-style:none!important;
}
body.woocommerce-checkout .woocommerce-error{
  border-color:rgba(239,68,68,.22)!important;
  background:#fff7f7!important;
  color:#7f1d1d!important;
}
body.woocommerce-checkout .woocommerce-info{
  border-color:rgba(123,82,255,.18)!important;
  background:#fbfaff!important;
}
body.woocommerce-checkout .woocommerce-message{
  border-color:rgba(16,185,129,.22)!important;
  background:#f6fffb!important;
  color:#064e3b!important;
}
body.woocommerce-checkout .woocommerce-error::before,
body.woocommerce-checkout .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-message::before{
  display:none!important;
  content:none!important;
}
body.woocommerce-checkout .woocommerce-error li,
body.woocommerce-checkout .woocommerce-info li,
body.woocommerce-checkout .woocommerce-message li{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
body.woocommerce-checkout .woocommerce-error strong,
body.woocommerce-checkout .woocommerce-info strong,
body.woocommerce-checkout .woocommerce-message strong{
  font-weight:700!important;
}
body.woocommerce-checkout .woocommerce-error a,
body.woocommerce-checkout .woocommerce-info a,
body.woocommerce-checkout .woocommerce-message a{
  color:var(--ws-purple)!important;
  font-weight:700!important;
  text-decoration:none!important;
}
body.woocommerce-checkout .woocommerce-error a:hover,
body.woocommerce-checkout .woocommerce-info a:hover,
body.woocommerce-checkout .woocommerce-message a:hover{
  text-decoration:underline!important;
}

/* Checkout login strip should stay compact and never affect logged-in layout */
body.woocommerce-checkout.logged-in .woocommerce-form-login-toggle{
  display:none!important;
}

/* Mobile notice cleanup */
@media (max-width:767px){
  body.woocommerce-checkout .woocommerce-notices-wrapper{
    margin-bottom:14px!important;
  }
  body.woocommerce-checkout .woocommerce-error,
  body.woocommerce-checkout .woocommerce-info,
  body.woocommerce-checkout .woocommerce-message{
    padding:11px 13px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }
}


/* v3.5.104: masked license key + copy button */
.ws-license-key-row{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
}
.ws-license-key-row code{
  flex:1 1 auto!important;
  min-width:0!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  letter-spacing:.02em!important;
}
.ws-license-copy-btn{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 16px!important;
  border:1px solid rgba(123,82,255,.18)!important;
  border-radius:14px!important;
  background:var(--ws-purple-soft)!important;
  color:var(--ws-purple-dark)!important;
  font-family:'Sora',sans-serif!important;
  font-size:13px!important;
  font-weight:800!important;
  cursor:pointer!important;
  transition:all .18s ease!important;
}
.ws-license-copy-btn:hover,
.ws-license-copy-btn.is-copied{
  background:linear-gradient(135deg,#7B52FF 0%,#5530FF 100%)!important;
  color:#fff!important;
  border-color:transparent!important;
}
@media (max-width:520px){
  .ws-license-key-row{
    display:block!important;
  }
  .ws-license-copy-btn{
    width:100%!important;
    margin-top:10px!important;
  }
}


/* v3.5.105: License keys endpoint, no download UI */
.ws-license-panel__head{
  margin-bottom:18px!important;
}
.ws-license-empty{
  padding:22px!important;
  border:1px solid rgba(123,82,255,.14)!important;
  border-radius:22px!important;
  background:#fff!important;
}
.ws-license-empty strong{
  display:block!important;
  margin-bottom:8px!important;
  color:var(--ws-text)!important;
  font-size:18px!important;
}
.ws-license-empty p{
  margin:0 0 16px!important;
  color:var(--ws-muted)!important;
  font-size:15px!important;
  line-height:1.6!important;
}
.ws-license-card__meta span:first-child{
  background:linear-gradient(135deg,#7B52FF 0%,#5530FF 100%)!important;
  color:#fff!important;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message.woocommerce-Message--info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info:has(.woocommerce-Button[href*="shop"]),
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info:has(.woocommerce-Button[href*="product"]){
  display:none!important;
}


/* v3.5.106: license keys duplication/isolation polish */
.ws-license-panel--downloads + .ws-license-panel--downloads{
  display:none!important;
}
.ws-license-panel--downloads{
  margin-top:0!important;
}


/* ============================================================
   v3.5.107 — Lost / Reset password styling
   ============================================================ */
.ws-reset-shell{
  width:100%;
  padding:24px 0 8px;
}
.ws-reset-wrap{
  width:min(760px,100%);
  margin:0 auto;
}
.ws-reset-intro{
  margin-bottom:18px;
}
.ws-reset-intro h1{
  margin:12px 0 10px;
  font-size:clamp(28px,4vw,40px);
  font-weight:800;
}
.ws-reset-intro p{
  max-width:620px;
  margin:0;
  font-size:16px;
  color:var(--ws-muted);
}
.ws-reset-card{
  padding:26px;
  border-radius:24px;
}
.ws-reset-form{
  margin:0;
}
.ws-reset-field{
  margin:0 0 18px;
}
.ws-reset-field label{
  display:block;
  margin:0 0 8px;
  color:var(--ws-text);
  font-size:14px;
  font-weight:600;
}
.ws-reset-form .input-text{
  width:100%;
  height:56px;
  padding:0 18px;
  border-radius:16px;
  border:1px solid var(--ws-border-dark);
  background:var(--ws-surface);
  color:var(--ws-text);
  box-shadow:none;
  transition:border-color .18s ease, box-shadow .18s ease;
}
.ws-reset-form .input-text:focus{
  outline:none;
  border-color:var(--ws-purple);
  box-shadow:0 0 0 4px rgba(108,71,255,0.12);
}
.ws-reset-actions{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:8px;
  flex-wrap:wrap;
}
.ws-reset-back{
  color:var(--ws-purple-dark);
  font-size:14px;
  font-weight:600;
}
.woocommerce-lost-password .ws-reset-card,
.woocommerce-reset-password .ws-reset-card{
  overflow:hidden;
}
.woocommerce-account .ws-reset-shell .woocommerce-message,
.woocommerce-account .ws-reset-shell .woocommerce-error,
.woocommerce-account .ws-reset-shell .woocommerce-info{
  margin:0 0 16px;
  padding:14px 16px;
  border-radius:16px;
  box-shadow:none;
}
.woocommerce-account .ws-reset-shell .woocommerce-error{
  border-color:#FECACA;
  background:#FEF2F2;
}
.woocommerce-account .ws-reset-shell .woocommerce-message{
  border-color:#A7F3D0;
  background:#ECFDF5;
}
.woocommerce-account .ws-reset-shell .woocommerce-info{
  border-color:var(--ws-purple-border);
  background:var(--ws-purple-soft);
}
@media (max-width: 767px){
  .ws-reset-shell{
    padding:10px 0 0;
  }
  .ws-reset-card{
    padding:18px;
    border-radius:20px;
  }
  .ws-reset-intro p{
    font-size:15px;
  }
  .ws-reset-actions{
    align-items:stretch;
  }
  .ws-reset-actions .ws-btn{
    width:100%;
  }
}


/* ============================================================
   v3.5.108 — Product quick checkout button
   ============================================================ */
.ws-add-to-cart-wrap form.cart{
  display:block!important;
}
.ws-add-to-cart-wrap form.cart .single_add_to_cart_button{
  width:100%!important;
}
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button{
  width:100%!important;
  margin-top:12px!important;
  min-height:56px!important;
  border-radius:16px!important;
  border:1px solid rgba(108,71,255,.22)!important;
  background:#fff!important;
  color:var(--ws-purple-dark)!important;
  box-shadow:none!important;
  font-family:'Sora',sans-serif!important;
  font-size:15px!important;
  font-weight:800!important;
  transition:all .18s ease!important;
}
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button:hover{
  background:var(--ws-purple-soft)!important;
  border-color:var(--ws-purple-border)!important;
  transform:translateY(-1px)!important;
}
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button.ws-is-loading{
  pointer-events:none!important;
  opacity:.78!important;
  cursor:progress!important;
}
.ws-add-to-cart-wrap .variations_button{
  width:100%!important;
}
.ws-add-to-cart-wrap .woocommerce-variation-add-to-cart{
  width:100%!important;
}
@media (max-width:767px){
  .ws-add-to-cart-wrap form.cart .ws-quick-checkout-button{
    min-height:52px!important;
    margin-top:10px!important;
  }
}


/* ============================================================
   v3.5.109 — Quick checkout black CTA match add-to-cart size
   ============================================================ */
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button,
.ws-add-to-cart-wrap form.cart button.ws-quick-checkout-button,
.ws-add-to-cart-wrap form.cart .button.ws-quick-checkout-button{
  width:100%!important;
  height:56px!important;
  min-height:56px!important;
  margin-top:12px!important;
  padding:0 20px!important;
  border:1px solid #0D0F1A!important;
  border-radius:16px!important;
  background:#0D0F1A!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(13,15,26,.18)!important;
  font-family:'Sora',sans-serif!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:56px!important;
  text-align:center!important;
  letter-spacing:0!important;
}
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button:hover{
  background:#1a1d2e!important;
  border-color:#1a1d2e!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
  box-shadow:0 18px 36px rgba(13,15,26,.22)!important;
}
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button:focus{
  outline:none!important;
  box-shadow:0 0 0 4px rgba(13,15,26,.12), 0 14px 30px rgba(13,15,26,.18)!important;
}
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button.ws-is-loading{
  opacity:.82!important;
  pointer-events:none!important;
  cursor:progress!important;
}
@media (max-width:767px){
  .ws-add-to-cart-wrap form.cart .ws-quick-checkout-button,
  .ws-add-to-cart-wrap form.cart button.ws-quick-checkout-button,
  .ws-add-to-cart-wrap form.cart .button.ws-quick-checkout-button{
    height:52px!important;
    min-height:52px!important;
    line-height:52px!important;
    font-size:15px!important;
    margin-top:10px!important;
  }
}


/* ============================================================
   v3.5.110 — Exact same size/typography for product CTA buttons
   ============================================================ */
.ws-add-to-cart-wrap form.cart .single_add_to_cart_button,
.ws-add-to-cart-wrap form.cart button.single_add_to_cart_button,
.ws-add-to-cart-wrap form.cart .button.single_add_to_cart_button,
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button,
.ws-add-to-cart-wrap form.cart button.ws-quick-checkout-button,
.ws-add-to-cart-wrap form.cart .button.ws-quick-checkout-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:56px!important;
  min-height:56px!important;
  padding:0 20px!important;
  border-radius:16px!important;
  font-family:'Sora',sans-serif!important;
  font-size:14px!important;
  font-weight:600!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-transform:none!important;
  box-sizing:border-box!important;
}

.ws-add-to-cart-wrap form.cart .single_add_to_cart_button,
.ws-add-to-cart-wrap form.cart button.single_add_to_cart_button,
.ws-add-to-cart-wrap form.cart .button.single_add_to_cart_button{
  margin:0!important;
  border:1px solid var(--ws-purple)!important;
  background:var(--ws-purple)!important;
  color:#fff!important;
  box-shadow:var(--ws-shadow-purple)!important;
}

.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button,
.ws-add-to-cart-wrap form.cart button.ws-quick-checkout-button,
.ws-add-to-cart-wrap form.cart .button.ws-quick-checkout-button{
  margin:10px 0 0!important;
  border:1px solid #0D0F1A!important;
  background:#0D0F1A!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(13,15,26,.18)!important;
}

.ws-add-to-cart-wrap form.cart .single_add_to_cart_button:hover,
.ws-add-to-cart-wrap form.cart button.single_add_to_cart_button:hover,
.ws-add-to-cart-wrap form.cart .button.single_add_to_cart_button:hover{
  background:var(--ws-purple-dark)!important;
  border-color:var(--ws-purple-dark)!important;
  color:#fff!important;
}

.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button:hover,
.ws-add-to-cart-wrap form.cart button.ws-quick-checkout-button:hover,
.ws-add-to-cart-wrap form.cart .button.ws-quick-checkout-button:hover{
  background:#1a1d2e!important;
  border-color:#1a1d2e!important;
  color:#fff!important;
}

.ws-add-to-cart-wrap form.cart .single_add_to_cart_button.ws-is-loading,
.ws-add-to-cart-wrap form.cart .ws-quick-checkout-button.ws-is-loading{
  opacity:.82!important;
  pointer-events:none!important;
  cursor:progress!important;
}

@media (max-width:767px){
  .ws-add-to-cart-wrap form.cart .single_add_to_cart_button,
  .ws-add-to-cart-wrap form.cart button.single_add_to_cart_button,
  .ws-add-to-cart-wrap form.cart .button.single_add_to_cart_button,
  .ws-add-to-cart-wrap form.cart .ws-quick-checkout-button,
  .ws-add-to-cart-wrap form.cart button.ws-quick-checkout-button,
  .ws-add-to-cart-wrap form.cart .button.ws-quick-checkout-button{
    height:52px!important;
    min-height:52px!important;
    font-size:14px!important;
    font-weight:600!important;
    line-height:1.2!important;
  }
}


/* ============================================================
   v3.5.111 — Dashboard-only plugin ZIP download card
   ============================================================ */
.ws-plugin-download-card{
  margin:0 0 18px!important;
  padding:22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  border-radius:26px!important;
}
.ws-plugin-download-card h3{
  margin:12px 0 8px!important;
  font-size:clamp(22px,2.4vw,30px)!important;
  line-height:1.1!important;
}
.ws-plugin-download-card p{
  margin:0!important;
  max-width:680px!important;
  color:var(--ws-muted)!important;
  font-size:15px!important;
  line-height:1.6!important;
}
.ws-plugin-download-card__btn{
  flex:0 0 auto!important;
  height:50px!important;
  border-radius:16px!important;
  white-space:nowrap!important;
}
@media (max-width:767px){
  .ws-plugin-download-card{
    display:block!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  .ws-plugin-download-card__btn{
    width:100%!important;
    margin-top:16px!important;
  }
}


/* ============================================================
   v3.5.112/113 — Dashboard ZIP card polish + checkout privacy link
   ============================================================ */
.ws-plugin-download-card__version{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:14px!important;
  color:var(--ws-muted)!important;
  font-size:14px!important;
  line-height:1.4!important;
}
.ws-plugin-download-card__version strong{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:var(--ws-purple-soft)!important;
  color:var(--ws-purple-dark)!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
}
body.woocommerce-account .ws-account-hero{
  margin-bottom:24px!important;
}
body.woocommerce-account .ws-account-content{
  width:100%!important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text a,
body.woocommerce-checkout a.woocommerce-privacy-policy-link{
  position:relative!important;
  z-index:20!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  color:var(--ws-purple)!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text a:hover,
body.woocommerce-checkout a.woocommerce-privacy-policy-link:hover{
  text-decoration:underline!important;
}
@media (max-width:767px){
  .ws-plugin-download-card__version{
    display:grid!important;
    gap:8px!important;
  }
}


/* ============================================================
   v3.5.115 — Cart product image uses plugin icon only
   ============================================================ */
.ws-cart-line__media img.ws-cart-plugin-icon{
  width:86px!important;
  height:86px!important;
  object-fit:cover!important;
  border-radius:20px!important;
  display:block!important;
  box-shadow:0 14px 30px rgba(123,82,255,.16)!important;
}
.ws-cart-line__media a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
@media (max-width:767px){
  .ws-cart-line__media img.ws-cart-plugin-icon{
    width:68px!important;
    height:68px!important;
    border-radius:16px!important;
  }
}




/* ============================================================
   v3.5.118 — Keep WooPayments / Stripe fields original
   ============================================================ */
/* Keep the checkout Payment card styled, but do not restyle Stripe/WooPayments internal fields. */
body.woocommerce-checkout .payment_method_woocommerce_payments div.payment_box,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card div.payment_box,
body.woocommerce-checkout .payment_method_stripe div.payment_box{
  background:transparent!important;
  border:0!important;
  padding:0!important;
  margin:12px 0 0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

body.woocommerce-checkout .payment_method_woocommerce_payments div.payment_box::before,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card div.payment_box::before,
body.woocommerce-checkout .payment_method_stripe div.payment_box::before{
  display:none!important;
}

/* Restore gateway-rendered field layout. */
body.woocommerce-checkout .payment_method_woocommerce_payments .wcpay-upe-element,
body.woocommerce-checkout .payment_method_woocommerce_payments .wc-stripe-elements-field,
body.woocommerce-checkout .payment_method_woocommerce_payments .StripeElement,
body.woocommerce-checkout .payment_method_woocommerce_payments .__PrivateStripeElement,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card .wcpay-upe-element,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card .wc-stripe-elements-field,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card .StripeElement,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card .__PrivateStripeElement,
body.woocommerce-checkout .payment_method_stripe .wcpay-upe-element,
body.woocommerce-checkout .payment_method_stripe .wc-stripe-elements-field,
body.woocommerce-checkout .payment_method_stripe .StripeElement,
body.woocommerce-checkout .payment_method_stripe .__PrivateStripeElement{
  all:revert!important;
  box-sizing:border-box!important;
}

/* Do not force theme input styles onto payment iframe wrappers. */
body.woocommerce-checkout .payment_method_woocommerce_payments iframe,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card iframe,
body.woocommerce-checkout .payment_method_stripe iframe{
  all:revert!important;
}

/* Keep card brand icons natural size from gateway. */
body.woocommerce-checkout .payment_method_woocommerce_payments img,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card img,
body.woocommerce-checkout .payment_method_stripe img{
  all:revert!important;
}

/* Keep privacy and terms layout/click behavior. */
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  position:relative!important;
  z-index:5!important;
}


/* ============================================================
   v3.5.119 — Trusted checkout refresh
   ============================================================ */
body.woocommerce-checkout{
  background:#f6f7fb!important;
}
body.woocommerce-checkout .ws-page{
  padding-top:24px!important;
  padding-bottom:56px!important;
}
body.woocommerce-checkout .ws-checkout-shell--trust{
  grid-template-columns:minmax(0,1fr) 440px!important;
  gap:32px!important;
  align-items:start!important;
}
body.woocommerce-checkout .ws-checkout-hero{
  display:none!important;
}
body.woocommerce-checkout .ws-checkout-main,
body.woocommerce-checkout .ws-checkout-side{
  gap:20px!important;
}
body.woocommerce-checkout .ws-checkout-card{
  background:#fff!important;
  border:1px solid #e7e9f0!important;
  border-radius:22px!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body.woocommerce-checkout .ws-checkout-card-head{
  padding:24px 28px 18px!important;
  border-bottom:1px solid #eef1f6!important;
  align-items:center!important;
}
body.woocommerce-checkout .ws-checkout-card-head h2{
  margin:0!important;
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif!important;
  font-size:17px!important;
  font-weight:700!important;
  letter-spacing:-0.02em!important;
  color:#171923!important;
}
body.woocommerce-checkout .ws-checkout-card-head span{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  background:#f3f4f8!important;
  color:#6b7280!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:0.06em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .ws-checkout-card--customer .ws-customer-fields{
  padding:22px 28px 28px!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
}
body.woocommerce-checkout form .form-row label{
  margin:0 0 8px!important;
  color:#2b3040!important;
  font-size:13px!important;
  font-weight:600!important;
}
body.woocommerce-checkout input[type=text],
body.woocommerce-checkout input[type=email],
body.woocommerce-checkout input[type=tel],
body.woocommerce-checkout input[type=password],
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container--default .select2-selection--single{
  min-height:54px!important;
  background:#fff!important;
  border:1px solid #d7dbe5!important;
  border-radius:14px!important;
  padding:13px 16px!important;
  color:#111827!important;
  font-size:15px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout input::placeholder,
body.woocommerce-checkout textarea::placeholder{
  color:#9aa1af!important;
}
body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single{
  border-color:#7B52FF!important;
  box-shadow:0 0 0 4px rgba(123,82,255,0.10)!important;
}
body.woocommerce-checkout .select2-dropdown{
  border:1px solid #d7dbe5!important;
  border-radius:14px!important;
}
body.woocommerce-checkout .ws-checkout-product-row{
  padding:18px 28px 0!important;
}
body.woocommerce-checkout .ws-checkout-product-row strong{
  font-size:15px!important;
  font-weight:700!important;
  color:#111827!important;
}
body.woocommerce-checkout .ws-checkout-product-row small{
  color:#6b7280!important;
}
body.woocommerce-checkout .ws-checkout-review{
  padding:6px 28px 10px!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table{
  border:none!important;
  width:100%!important;
  border-collapse:collapse!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table thead{
  display:none!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table td{
  border-top:1px solid #eef1f6!important;
  padding:14px 0!important;
  font-size:15px!important;
  color:#111827!important;
  background:transparent!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table tbody tr:first-child td,
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table tbody tr:first-child th{
  border-top:none!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table tfoot th{
  font-weight:600!important;
}
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-checkout-review .woocommerce-checkout-review-order-table .order-total td{
  font-size:18px!important;
  font-weight:800!important;
}
body.woocommerce-checkout .ws-payment-intro{
  padding:18px 28px 0!important;
  color:#6b7280!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body.woocommerce-checkout .ws-checkout-card--payment .ws-payment-wrap{
  padding:16px 28px 0!important;
}
body.woocommerce-checkout #payment{
  background:transparent!important;
  border:none!important;
  padding:0!important;
  margin:0!important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
}
body.woocommerce-checkout #payment ul.payment_methods li{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.woocommerce-checkout #payment .wc_payment_method > label,
body.woocommerce-checkout #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout #payment .payment_method_woocommerce_payments_credit_card > label,
body.woocommerce-checkout #payment .payment_method_stripe > label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 0 10px!important;
  color:#111827!important;
  font-size:15px!important;
  font-weight:700!important;
}
body.woocommerce-checkout #payment .wc_payment_method > label img,
body.woocommerce-checkout #payment .payment_method_woocommerce_payments > label img,
body.woocommerce-checkout #payment .payment_method_woocommerce_payments_credit_card > label img,
body.woocommerce-checkout #payment .payment_method_stripe > label img{
  margin-left:auto!important;
}
body.woocommerce-checkout #payment div.payment_box{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  color:#111827!important;
}
body.woocommerce-checkout #payment .place-order{
  padding:0!important;
  margin:0!important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  padding:0!important;
  margin-top:14px!important;
  text-align:left!important;
  color:#6b7280!important;
  font-size:12px!important;
  line-height:1.6!important;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a{
  color:#5b43d6!important;
  font-weight:600!important;
}
body.woocommerce-checkout #payment #place_order{
  width:100%!important;
  min-height:54px!important;
  margin-top:14px!important;
  border:none!important;
  border-radius:14px!important;
  background:#161821!important;
  color:#fff!important;
  box-shadow:none!important;
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif!important;
  font-size:16px!important;
  font-weight:700!important;
  letter-spacing:-0.01em!important;
}
body.woocommerce-checkout #payment #place_order:hover{
  background:#11131a!important;
  transform:none!important;
  box-shadow:none!important;
}
body.woocommerce-checkout .ws-payment-bottom{
  padding:10px 28px 24px!important;
}
body.woocommerce-checkout .ws-checkout-note{
  margin-top:0!important;
  justify-content:flex-start!important;
  text-align:left!important;
  color:#111827!important;
  font-size:12px!important;
  font-weight:600!important;
}
body.woocommerce-checkout .ws-checkout-trust-row{
  justify-content:flex-start!important;
  gap:12px!important;
  margin-top:10px!important;
  padding-top:0!important;
  border-top:none!important;
}
body.woocommerce-checkout .ws-trust-item{
  font-size:12px!important;
  color:#6b7280!important;
}
@media (max-width: 1024px){
  body.woocommerce-checkout .ws-checkout-shell--trust{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-checkout .ws-checkout-side{
    position:static!important;
    top:auto!important;
  }
}
@media (max-width: 767px){
  body.woocommerce-checkout .ws-checkout-card-head,
  body.woocommerce-checkout .ws-checkout-card--customer .ws-customer-fields,
  body.woocommerce-checkout .ws-checkout-product-row,
  body.woocommerce-checkout .ws-checkout-review,
  body.woocommerce-checkout .ws-payment-intro,
  body.woocommerce-checkout .ws-checkout-card--payment .ws-payment-wrap,
  body.woocommerce-checkout .ws-payment-bottom{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.woocommerce-checkout .ws-checkout-card-head{
    padding-top:20px!important;
    padding-bottom:16px!important;
  }
}


/* ============================================================
   v3.5.120 — Split checkout conversion layout
   ============================================================ */
body.woocommerce-checkout .ws-page{
  padding-top:24px!important;
  padding-bottom:48px!important;
}
body.woocommerce-checkout .ws-checkout-shell--split{
  display:block!important;
  max-width:1360px!important;
  margin:0 auto!important;
}
body.woocommerce-checkout .ws-checkout-layout-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:0!important;
  background:#ffffff!important;
  border:1px solid #e8ebf1!important;
  border-radius:26px!important;
  box-shadow:0 12px 40px rgba(17,24,39,0.05)!important;
  overflow:hidden!important;
}
body.woocommerce-checkout .ws-checkout-panel{
  min-width:0!important;
}
body.woocommerce-checkout .ws-checkout-panel--left{
  padding:34px 34px 36px!important;
}
body.woocommerce-checkout .ws-checkout-panel--right{
  padding:34px 34px 30px!important;
  background:#fbfbfd!important;
  border-left:1px solid #eceff5!important;
}
body.woocommerce-checkout .ws-checkout-panel-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:22px!important;
}
body.woocommerce-checkout .ws-checkout-panel-head h2,
body.woocommerce-checkout .ws-checkout-panel-head h3{
  margin:0!important;
  color:#111827!important;
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif!important;
  font-size:28px!important;
  line-height:1.1!important;
  letter-spacing:-0.04em!important;
  font-weight:800!important;
}
body.woocommerce-checkout .ws-checkout-panel-head h3{
  font-size:22px!important;
}
body.woocommerce-checkout .ws-checkout-panel-head p{
  margin:8px 0 0!important;
  color:#6b7280!important;
  font-size:14px!important;
  line-height:1.6!important;
  max-width:440px!important;
}
body.woocommerce-checkout .ws-checkout-panel-head span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  background:#f1f3f8!important;
  color:#6b7280!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:0.06em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body.woocommerce-checkout .ws-customer-fields--split .woocommerce-billing-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
}
body.woocommerce-checkout form .form-row label{
  display:block!important;
  margin:0 0 8px!important;
  color:#2a3141!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.4!important;
}
body.woocommerce-checkout input[type=text],
body.woocommerce-checkout input[type=email],
body.woocommerce-checkout input[type=tel],
body.woocommerce-checkout input[type=password],
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container--default .select2-selection--single{
  min-height:56px!important;
  width:100%!important;
  background:#fff!important;
  border:1px solid #d9deea!important;
  border-radius:14px!important;
  padding:14px 16px!important;
  color:#111827!important;
  font-size:15px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout input::placeholder,
body.woocommerce-checkout textarea::placeholder{
  color:#9aa1af!important;
}
body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single{
  border-color:#7B52FF!important;
  box-shadow:0 0 0 4px rgba(123,82,255,0.10)!important;
}
body.woocommerce-checkout .select2-dropdown{
  border:1px solid #d9deea!important;
  border-radius:14px!important;
}
body.woocommerce-checkout .ws-checkout-product-row--split{
  margin-bottom:10px!important;
}
body.woocommerce-checkout .ws-checkout-product-meta strong{
  display:block!important;
  color:#111827!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.4!important;
}
body.woocommerce-checkout .ws-checkout-product-meta small{
  display:block!important;
  margin-top:4px!important;
  color:#6b7280!important;
  font-size:13px!important;
}
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table{
  border:none!important;
  width:100%!important;
  border-collapse:collapse!important;
  background:transparent!important;
}
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table thead{
  display:none!important;
}
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table td{
  border-top:1px solid #eceff5!important;
  padding:14px 0!important;
  font-size:15px!important;
  color:#111827!important;
  background:transparent!important;
}
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table tbody tr:first-child th,
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table tbody tr:first-child td{
  border-top:none!important;
}
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table tfoot th{
  font-weight:600!important;
}
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table .order-total td{
  font-size:18px!important;
  font-weight:800!important;
}
body.woocommerce-checkout .ws-checkout-panel-divider{
  height:1px!important;
  margin:18px 0 24px!important;
  background:#eceff5!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment{
  background:transparent!important;
  border:none!important;
  padding:0!important;
  margin:0!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment ul.payment_methods{
  margin:0!important;
  padding:0!important;
  border:none!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment ul.payment_methods li{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card > label,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe > label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 0 10px!important;
  color:#111827!important;
  font-size:15px!important;
  font-weight:700!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment .wc_payment_method > label img,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments > label img,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card > label img,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe > label img{
  margin-left:auto!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment div.payment_box{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  color:#111827!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment .place-order{
  margin-top:18px!important;
  padding:0!important;
}
body.woocommerce-checkout .ws-payment-wrap--split .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-payment-wrap--split .woocommerce-terms-and-conditions-wrapper{
  margin-top:14px!important;
  text-align:left!important;
  color:#6b7280!important;
  font-size:12px!important;
  line-height:1.7!important;
}
body.woocommerce-checkout .ws-payment-wrap--split .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-payment-wrap--split .woocommerce-terms-and-conditions-wrapper a{
  color:#5b43d6!important;
  font-weight:600!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment #place_order{
  width:100%!important;
  min-height:54px!important;
  margin-top:14px!important;
  border:none!important;
  border-radius:12px!important;
  background:#161821!important;
  color:#ffffff!important;
  box-shadow:none!important;
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif!important;
  font-size:16px!important;
  font-weight:700!important;
  letter-spacing:-0.01em!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment #place_order:hover{
  background:#11131a!important;
  transform:none!important;
  box-shadow:none!important;
}
body.woocommerce-checkout .ws-payment-bottom--split{
  padding-top:14px!important;
}
body.woocommerce-checkout .ws-checkout-note--split{
  justify-content:flex-start!important;
  text-align:left!important;
  color:#111827!important;
  font-size:12px!important;
  font-weight:600!important;
}
body.woocommerce-checkout .ws-checkout-trust-row--split{
  justify-content:flex-start!important;
  gap:12px!important;
  margin-top:10px!important;
  padding-top:0!important;
  border-top:none!important;
}
body.woocommerce-checkout .ws-trust-item{
  color:#6b7280!important;
  font-size:12px!important;
}
body.woocommerce-checkout .ws-checkout-layout-card #payment .saved-payment-methods,
body.woocommerce-checkout .ws-checkout-layout-card #payment .woocommerce-SavedPaymentMethods{
  margin-top:12px!important;
}
@media (max-width: 1180px){
  body.woocommerce-checkout .ws-checkout-layout-card{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-checkout .ws-checkout-panel--right{
    border-left:none!important;
    border-top:1px solid #eceff5!important;
  }
}
@media (max-width: 767px){
  body.woocommerce-checkout .ws-checkout-panel--left,
  body.woocommerce-checkout .ws-checkout-panel--right{
    padding:22px 18px 24px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel-head{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  body.woocommerce-checkout .ws-checkout-panel-head h2{
    font-size:24px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel-head h3{
    font-size:20px!important;
  }
}


/* ============================================================
   v3.5.121 — Inline returning customer + payment field height fix
   ============================================================ */
body.woocommerce-checkout .woocommerce-form-login-toggle,
body.woocommerce-checkout form.woocommerce-form.woocommerce-form-login.login{
  display:none!important;
}
body.woocommerce-checkout .ws-inline-returning-customer{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin:0 0 24px!important;
  padding:18px 20px!important;
  border:1px solid #e8ebf1!important;
  border-radius:18px!important;
  background:#ffffff!important;
  box-shadow:0 8px 24px rgba(17,24,39,0.04)!important;
}
body.woocommerce-checkout .ws-inline-returning-customer__text{
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  min-width:0!important;
}
body.woocommerce-checkout .ws-inline-returning-customer__text strong{
  color:#111827!important;
  font-size:18px!important;
  line-height:1.3!important;
  font-weight:700!important;
}
body.woocommerce-checkout .ws-inline-returning-customer__text span{
  color:#6b7280!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body.woocommerce-checkout .ws-inline-returning-customer__link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:0 22px!important;
  border-radius:999px!important;
  background:#f2edff!important;
  color:#5b43d6!important;
  text-decoration:none!important;
  font-size:15px!important;
  font-weight:700!important;
  white-space:nowrap!important;
}
body.woocommerce-checkout .ws-inline-returning-customer__link:hover{
  background:#ede6ff!important;
  color:#4c39b6!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments div.payment_box,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card div.payment_box,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe div.payment_box{
  overflow:visible!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .__PrivateStripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .__PrivateStripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .__PrivateStripeElement{
  display:block!important;
  width:100%!important;
  min-height:182px!important;
  height:auto!important;
  overflow:visible!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments iframe,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card iframe,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe iframe,
body.woocommerce-checkout .ws-payment-wrap--split #payment iframe[title="Secure payment input frame"]{
  display:block!important;
  width:100%!important;
  min-height:182px!important;
  height:182px!important;
  margin:0!important;
}
body.woocommerce-checkout .ws-payment-wrap--split #payment [data-payment-method-type="card"]{
  padding-bottom:12px!important;
}
@media (max-width: 767px){
  body.woocommerce-checkout .ws-inline-returning-customer{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  body.woocommerce-checkout .ws-inline-returning-customer__link{
    width:100%!important;
  }
}


/* ============================================================
   v3.5.122 — Compact theme checkout final pass
   ============================================================ */
body.woocommerce-checkout{
  background:
    radial-gradient(circle at 18% 10%, rgba(123,61,255,.10), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(103,21,206,.08), transparent 26%),
    #fbfaff!important;
}

body.woocommerce-checkout .ws-page{
  padding-top:14px!important;
  padding-bottom:34px!important;
}

body.woocommerce-checkout .ws-checkout-shell--split{
  max-width:1260px!important;
  padding-left:18px!important;
  padding-right:18px!important;
}

body.woocommerce-checkout .ws-checkout-layout-card{
  border:1px solid rgba(123,61,255,.14)!important;
  border-radius:24px!important;
  box-shadow:0 14px 42px rgba(103,21,206,.08)!important;
  background:#fff!important;
}

body.woocommerce-checkout .ws-checkout-panel--left,
body.woocommerce-checkout .ws-checkout-panel--right{
  padding:24px 26px 26px!important;
}

body.woocommerce-checkout .ws-checkout-panel--right{
  background:linear-gradient(180deg,#fff 0%,#fbf9ff 100%)!important;
  border-left:1px solid rgba(123,61,255,.12)!important;
}

body.woocommerce-checkout .ws-inline-returning-customer{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0 0 16px!important;
  padding:8px 10px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,rgba(123,61,255,.07),rgba(103,21,206,.04))!important;
  box-shadow:none!important;
}

body.woocommerce-checkout .ws-inline-returning-customer__text{
  gap:0!important;
}

body.woocommerce-checkout .ws-inline-returning-customer__text strong{
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:700!important;
  color:#151827!important;
}

body.woocommerce-checkout .ws-inline-returning-customer__text span{
  font-size:12px!important;
  line-height:1.35!important;
  color:#6b7280!important;
}

body.woocommerce-checkout .ws-inline-returning-customer__link{
  min-height:34px!important;
  height:34px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  background:#7B3DFF!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:700!important;
  box-shadow:0 8px 18px rgba(123,61,255,.18)!important;
}

body.woocommerce-checkout .ws-inline-returning-customer__link:hover{
  background:#6715ce!important;
  color:#fff!important;
}

body.woocommerce-checkout .ws-checkout-panel-head{
  margin-bottom:15px!important;
  gap:10px!important;
}

body.woocommerce-checkout .ws-checkout-panel-head h2,
body.woocommerce-checkout .ws-checkout-panel-head h3{
  font-size:23px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
}

body.woocommerce-checkout .ws-checkout-panel-head h3{
  font-size:20px!important;
}

body.woocommerce-checkout .ws-checkout-panel-head p{
  margin-top:5px!important;
  font-size:13px!important;
  line-height:1.45!important;
  max-width:360px!important;
}

body.woocommerce-checkout .ws-checkout-panel-head span{
  min-height:28px!important;
  padding:0 11px!important;
  background:#f0ebff!important;
  color:#6715ce!important;
  font-size:10px!important;
  letter-spacing:.055em!important;
}

body.woocommerce-checkout .ws-customer-fields--split .woocommerce-billing-fields__field-wrapper{
  gap:11px!important;
}

body.woocommerce-checkout form .form-row{
  margin-bottom:10px!important;
}

body.woocommerce-checkout form .form-row label{
  margin-bottom:5px!important;
  font-size:12px!important;
  line-height:1.3!important;
}

body.woocommerce-checkout input[type=text],
body.woocommerce-checkout input[type=email],
body.woocommerce-checkout input[type=tel],
body.woocommerce-checkout input[type=password],
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container--default .select2-selection--single{
  min-height:44px!important;
  height:44px!important;
  border-radius:13px!important;
  border:1px solid #ddd6fe!important;
  padding:10px 13px!important;
  font-size:13px!important;
}

body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single{
  border-color:#7B3DFF!important;
  box-shadow:0 0 0 3px rgba(123,61,255,.11)!important;
}

/* Order summary compact */
body.woocommerce-checkout .ws-checkout-product-row--split{
  margin-bottom:4px!important;
}

body.woocommerce-checkout .ws-checkout-product-meta strong{
  font-size:14px!important;
  line-height:1.3!important;
}

body.woocommerce-checkout .ws-checkout-product-meta small{
  margin-top:2px!important;
  font-size:12px!important;
}

body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table td{
  padding:10px 0!important;
  font-size:13px!important;
}

body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-checkout-review--split .woocommerce-checkout-review-order-table .order-total td{
  font-size:17px!important;
  color:#111827!important;
}

body.woocommerce-checkout .ws-checkout-panel-divider{
  margin:13px 0 17px!important;
  background:rgba(123,61,255,.12)!important;
}

/* Payment: no wrapper/gray border, only native field borders */
body.woocommerce-checkout .ws-payment-wrap--split #payment,
body.woocommerce-checkout .ws-payment-wrap--split #payment ul.payment_methods,
body.woocommerce-checkout .ws-payment-wrap--split #payment ul.payment_methods li,
body.woocommerce-checkout .ws-payment-wrap--split #payment div.payment_box,
body.woocommerce-checkout .payment_method_woocommerce_payments div.payment_box,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card div.payment_box,
body.woocommerce-checkout .payment_method_stripe div.payment_box{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

body.woocommerce-checkout .ws-payment-wrap--split #payment div.payment_box,
body.woocommerce-checkout .payment_method_woocommerce_payments div.payment_box,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card div.payment_box,
body.woocommerce-checkout .payment_method_stripe div.payment_box{
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
}

body.woocommerce-checkout .ws-payment-wrap--split #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card > label,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe > label{
  padding:0 0 8px!important;
  font-size:14px!important;
  font-weight:800!important;
  color:#151827!important;
}

body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments .__PrivateStripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card .__PrivateStripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe .__PrivateStripeElement{
  min-height:170px!important;
  overflow:visible!important;
}

body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments iframe,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_woocommerce_payments_credit_card iframe,
body.woocommerce-checkout .ws-payment-wrap--split #payment .payment_method_stripe iframe,
body.woocommerce-checkout .ws-payment-wrap--split #payment iframe[title="Secure payment input frame"]{
  min-height:170px!important;
  height:170px!important;
  border:0!important;
}

/* Privacy, terms, button */
body.woocommerce-checkout .ws-payment-wrap--split .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-payment-wrap--split .woocommerce-terms-and-conditions-wrapper{
  margin-top:10px!important;
  font-size:11.5px!important;
  line-height:1.45!important;
  color:#6b7280!important;
}

body.woocommerce-checkout .woocommerce-form__label-for-checkbox{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
}

body.woocommerce-checkout .woocommerce-form__label-for-checkbox input[type=checkbox]{
  flex:0 0 auto!important;
  margin-top:2px!important;
}

body.woocommerce-checkout .ws-payment-wrap--split #payment .place-order{
  margin-top:10px!important;
}

body.woocommerce-checkout .ws-payment-wrap--split #payment #place_order{
  min-height:48px!important;
  margin-top:10px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  box-shadow:0 12px 24px rgba(103,21,206,.18)!important;
}

body.woocommerce-checkout .ws-payment-wrap--split #payment #place_order:hover{
  background:linear-gradient(135deg,#7132f6 0%,#5d10bd 100%)!important;
}

body.woocommerce-checkout .ws-payment-bottom--split{
  padding-top:10px!important;
}

body.woocommerce-checkout .ws-checkout-note--split{
  justify-content:center!important;
  text-align:center!important;
  color:#16a36a!important;
  font-size:12px!important;
  font-weight:700!important;
  gap:7px!important;
}

body.woocommerce-checkout .ws-checkout-note--split svg{
  color:#16a36a!important;
}

body.woocommerce-checkout .ws-checkout-trust-row--split{
  justify-content:center!important;
  text-align:center!important;
  gap:14px!important;
  margin-top:8px!important;
  flex-wrap:wrap!important;
}

body.woocommerce-checkout .ws-trust-item{
  color:#8a93a6!important;
  font-size:11.5px!important;
  font-weight:600!important;
}

body.woocommerce-checkout .ws-trust-item svg{
  color:#9aa3b6!important;
}

@media (max-width:1180px){
  body.woocommerce-checkout .ws-checkout-panel--right{
    border-left:0!important;
    border-top:1px solid rgba(123,61,255,.12)!important;
  }
}

@media (max-width:767px){
  body.woocommerce-checkout .ws-page{
    padding-top:10px!important;
  }
  body.woocommerce-checkout .ws-checkout-shell--split{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel--left,
  body.woocommerce-checkout .ws-checkout-panel--right{
    padding:18px 15px 20px!important;
  }
  body.woocommerce-checkout .ws-inline-returning-customer{
    flex-direction:row!important;
    align-items:center!important;
  }
  body.woocommerce-checkout .ws-inline-returning-customer__text span{
    display:none!important;
  }
  body.woocommerce-checkout .ws-inline-returning-customer__link{
    width:auto!important;
  }
  body.woocommerce-checkout .ws-checkout-panel-head h2{
    font-size:21px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel-head h3{
    font-size:18px!important;
  }
}


/* ============================================================
   v3.5.123 — Payment left + beautiful summary right
   ============================================================ */
body.woocommerce-checkout{
  background:
    radial-gradient(circle at 18% 8%, rgba(123,61,255,.10), transparent 26%),
    radial-gradient(circle at 86% 18%, rgba(103,21,206,.08), transparent 24%),
    #fbfaff!important;
}

/* Hide WooCommerce default returning customer/login blocks.
   Customer will still see WooCommerce login/errors only when needed by WooCommerce. */
body.woocommerce-checkout .woocommerce-form-login-toggle,
body.woocommerce-checkout form.woocommerce-form.woocommerce-form-login.login,
body.woocommerce-checkout .ws-inline-returning-customer{
  display:none!important;
}

body.woocommerce-checkout .ws-checkout-shell--v35123{
  max-width:1260px!important;
  padding:14px 18px 34px!important;
}

body.woocommerce-checkout .ws-checkout-layout-card--v35123{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 410px!important;
  gap:0!important;
  background:#fff!important;
  border:1px solid rgba(123,61,255,.14)!important;
  border-radius:24px!important;
  box-shadow:0 14px 42px rgba(103,21,206,.08)!important;
  overflow:hidden!important;
}

body.woocommerce-checkout .ws-checkout-panel--flow{
  padding:24px 28px 26px!important;
  background:#fff!important;
}

body.woocommerce-checkout .ws-checkout-panel--summary-only{
  padding:22px!important;
  background:linear-gradient(180deg,#faf8ff 0%,#f6f1ff 100%)!important;
  border-left:1px solid rgba(123,61,255,.14)!important;
}

body.woocommerce-checkout .ws-order-summary-box{
  position:sticky!important;
  top:96px!important;
  background:#fff!important;
  border:1px solid rgba(123,61,255,.16)!important;
  border-radius:22px!important;
  padding:22px!important;
  box-shadow:0 18px 42px rgba(103,21,206,.10)!important;
}

body.woocommerce-checkout .ws-checkout-panel-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin-bottom:15px!important;
}

body.woocommerce-checkout .ws-checkout-panel-head h2,
body.woocommerce-checkout .ws-checkout-panel-head h3{
  margin:0!important;
  color:#111827!important;
  font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif!important;
  font-size:22px!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  font-weight:800!important;
}

body.woocommerce-checkout .ws-checkout-panel-head p{
  margin:5px 0 0!important;
  color:#6b7280!important;
  font-size:13px!important;
  line-height:1.45!important;
}

body.woocommerce-checkout .ws-checkout-panel-head span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:0 11px!important;
  border-radius:999px!important;
  background:#f0ebff!important;
  color:#6715ce!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

body.woocommerce-checkout .ws-checkout-left-divider{
  height:1px!important;
  margin:18px 0!important;
  background:rgba(123,61,255,.12)!important;
}

/* Payment section: remove wrapper/card/gray borders completely.
   Keep only the actual native gateway field borders. */
body.woocommerce-checkout .ws-payment-wrap--left,
body.woocommerce-checkout .ws-payment-wrap--left #payment,
body.woocommerce-checkout .ws-payment-wrap--left #payment ul.payment_methods,
body.woocommerce-checkout .ws-payment-wrap--left #payment ul.payment_methods li,
body.woocommerce-checkout .ws-payment-wrap--left #payment div.payment_box,
body.woocommerce-checkout .ws-payment-wrap--left .payment_box,
body.woocommerce-checkout .ws-payment-wrap--left fieldset,
body.woocommerce-checkout .ws-payment-wrap--left .wc-payment-form,
body.woocommerce-checkout .ws-payment-wrap--left [data-payment-method-type="card"],
body.woocommerce-checkout .payment_method_woocommerce_payments div.payment_box,
body.woocommerce-checkout .payment_method_woocommerce_payments_credit_card div.payment_box,
body.woocommerce-checkout .payment_method_stripe div.payment_box{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
}

body.woocommerce-checkout .ws-payment-wrap--left #payment div.payment_box::before,
body.woocommerce-checkout .ws-payment-wrap--left #payment div.payment_box::after{
  display:none!important;
}

body.woocommerce-checkout .ws-payment-wrap--left #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments_credit_card > label,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_stripe > label{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  padding:0 0 8px!important;
  color:#151827!important;
  font-size:14px!important;
  font-weight:800!important;
}

body.woocommerce-checkout .ws-payment-wrap--left #payment .wc_payment_method > label img{
  margin-left:0!important;
}

/* Keep iframe visible but do not add visual wrapper border around it */
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments .__PrivateStripeElement,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments_credit_card .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments_credit_card .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments_credit_card .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments_credit_card .__PrivateStripeElement,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_stripe .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_stripe .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_stripe .StripeElement,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_stripe .__PrivateStripeElement{
  display:block!important;
  width:100%!important;
  min-height:170px!important;
  height:auto!important;
  overflow:visible!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

body.woocommerce-checkout .ws-payment-wrap--left #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments iframe,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_woocommerce_payments_credit_card iframe,
body.woocommerce-checkout .ws-payment-wrap--left #payment .payment_method_stripe iframe{
  display:block!important;
  width:100%!important;
  min-height:170px!important;
  height:170px!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Privacy, terms and button are now under payment on the left */
body.woocommerce-checkout .ws-payment-wrap--left .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-payment-wrap--left .woocommerce-terms-and-conditions-wrapper{
  margin-top:10px!important;
  text-align:left!important;
  color:#6b7280!important;
  font-size:12px!important;
  line-height:1.45!important;
}

body.woocommerce-checkout .ws-payment-wrap--left .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-payment-wrap--left .woocommerce-terms-and-conditions-wrapper a{
  color:#6715ce!important;
  font-weight:700!important;
  text-decoration:none!important;
}

body.woocommerce-checkout .ws-payment-wrap--left #payment .place-order{
  margin-top:10px!important;
  padding:0!important;
}

body.woocommerce-checkout .ws-payment-wrap--left #payment #place_order{
  width:100%!important;
  min-height:48px!important;
  margin-top:10px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  box-shadow:0 12px 24px rgba(103,21,206,.18)!important;
}

body.woocommerce-checkout .ws-payment-wrap--left #payment #place_order:hover{
  background:linear-gradient(135deg,#7132f6 0%,#5d10bd 100%)!important;
}

/* Compact customer fields */
body.woocommerce-checkout .ws-customer-fields--split .woocommerce-billing-fields__field-wrapper{
  gap:11px!important;
}

body.woocommerce-checkout form .form-row{
  margin-bottom:10px!important;
}

body.woocommerce-checkout form .form-row label{
  margin-bottom:5px!important;
  font-size:12px!important;
  line-height:1.3!important;
  color:#374151!important;
}

body.woocommerce-checkout input[type=text],
body.woocommerce-checkout input[type=email],
body.woocommerce-checkout input[type=tel],
body.woocommerce-checkout input[type=password],
body.woocommerce-checkout select,
body.woocommerce-checkout textarea,
body.woocommerce-checkout .select2-container--default .select2-selection--single{
  min-height:44px!important;
  height:44px!important;
  border-radius:13px!important;
  border:1px solid #ddd6fe!important;
  padding:10px 13px!important;
  font-size:13px!important;
  background:#fff!important;
  color:#111827!important;
  box-shadow:none!important;
}

body.woocommerce-checkout input:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single{
  border-color:#7B3DFF!important;
  box-shadow:0 0 0 3px rgba(123,61,255,.11)!important;
}

/* Beautiful right order summary only */
body.woocommerce-checkout .ws-checkout-panel-head--summary{
  margin-bottom:18px!important;
}

body.woocommerce-checkout .ws-checkout-panel-head--summary h2{
  font-size:23px!important;
}

body.woocommerce-checkout .ws-checkout-product-row--summary{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:0 0 14px!important;
  padding:13px!important;
  border-radius:17px!important;
  background:linear-gradient(135deg,#f5f0ff 0%,#ffffff 100%)!important;
  border:1px solid rgba(123,61,255,.12)!important;
}

body.woocommerce-checkout .ws-checkout-product-icon{
  width:42px!important;
  height:42px!important;
  border-radius:13px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
  box-shadow:0 10px 20px rgba(103,21,206,.18)!important;
}

body.woocommerce-checkout .ws-checkout-product-meta strong{
  display:block!important;
  font-size:13.5px!important;
  line-height:1.3!important;
  color:#111827!important;
}

body.woocommerce-checkout .ws-checkout-product-meta small{
  display:block!important;
  margin-top:2px!important;
  font-size:12px!important;
  color:#6b7280!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table{
  width:100%!important;
  border-collapse:collapse!important;
  background:transparent!important;
  border:0!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table thead{
  display:none!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table td{
  padding:11px 0!important;
  border-top:1px solid rgba(123,61,255,.12)!important;
  font-size:13px!important;
  color:#111827!important;
  background:transparent!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table tbody tr:first-child th,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table tbody tr:first-child td{
  border-top:0!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table tfoot th{
  font-weight:700!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table .order-total td{
  padding-top:16px!important;
  font-size:18px!important;
  font-weight:900!important;
  color:#111827!important;
}

body.woocommerce-checkout .ws-payment-bottom--summary{
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(123,61,255,.12)!important;
}

body.woocommerce-checkout .ws-checkout-note--summary{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  gap:7px!important;
  color:#16a36a!important;
  font-size:12px!important;
  font-weight:800!important;
}

body.woocommerce-checkout .ws-checkout-note--summary svg{
  color:#16a36a!important;
}

body.woocommerce-checkout .ws-checkout-trust-row--summary{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:9px!important;
}

body.woocommerce-checkout .ws-checkout-trust-row--summary .ws-trust-item{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  color:#8a93a6!important;
  font-size:11.5px!important;
  font-weight:600!important;
}

body.woocommerce-checkout .ws-checkout-trust-row--summary .ws-trust-item svg{
  color:#9aa3b6!important;
}

/* Checkout must not recolor footer links/menus */
body.woocommerce-checkout .ws-site-footer,
body.woocommerce-checkout .ws-site-footer *,
body.woocommerce-checkout footer,
body.woocommerce-checkout footer *{
  color:inherit;
}

body.woocommerce-checkout .ws-site-footer a,
body.woocommerce-checkout footer a{
  color:#4b5563!important;
  text-decoration:none!important;
}

body.woocommerce-checkout .ws-site-footer a:hover,
body.woocommerce-checkout footer a:hover{
  color:#6715ce!important;
}

body.woocommerce-checkout .ws-site-footer h1,
body.woocommerce-checkout .ws-site-footer h2,
body.woocommerce-checkout .ws-site-footer h3,
body.woocommerce-checkout .ws-site-footer h4,
body.woocommerce-checkout footer h1,
body.woocommerce-checkout footer h2,
body.woocommerce-checkout footer h3,
body.woocommerce-checkout footer h4{
  color:#9aa3b6!important;
}

@media (max-width:1180px){
  body.woocommerce-checkout .ws-checkout-layout-card--v35123{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-checkout .ws-checkout-panel--summary-only{
    border-left:0!important;
    border-top:1px solid rgba(123,61,255,.14)!important;
  }
  body.woocommerce-checkout .ws-order-summary-box{
    position:relative!important;
    top:auto!important;
  }
}

@media (max-width:767px){
  body.woocommerce-checkout .ws-checkout-shell--v35123{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel--flow,
  body.woocommerce-checkout .ws-checkout-panel--summary-only{
    padding:18px 15px 20px!important;
  }
  body.woocommerce-checkout .ws-order-summary-box{
    padding:18px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel-head{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  body.woocommerce-checkout .ws-checkout-panel-head h2{
    font-size:20px!important;
  }
  body.woocommerce-checkout .ws-payment-wrap--left #payment iframe[title="Secure payment input frame"]{
    min-height:178px!important;
    height:178px!important;
  }
}


/* ============================================================
   v3.5.124 — True 50/50 checkout block
   ============================================================ */
body.woocommerce-checkout .ws-checkout-shell--v35124{
  max-width:1260px!important;
  padding:14px 18px 34px!important;
}

body.woocommerce-checkout .ws-checkout-layout-card--v35124{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:0!important;
  background:#fff!important;
  border:1px solid rgba(123,61,255,.14)!important;
  border-radius:24px!important;
  box-shadow:0 14px 42px rgba(103,21,206,.08)!important;
  overflow:hidden!important;
}

body.woocommerce-checkout .ws-checkout-panel--left-v35124{
  padding:24px 28px 28px!important;
  background:#fff!important;
}

body.woocommerce-checkout .ws-checkout-panel--summary-only{
  padding:24px 28px 28px!important;
  background:linear-gradient(180deg,#fbf9ff 0%,#f7f3ff 100%)!important;
  border-left:1px solid rgba(123,61,255,.14)!important;
}

body.woocommerce-checkout .ws-order-summary-box--v35124{
  position:sticky!important;
  top:96px!important;
  background:#fff!important;
  border:1px solid rgba(123,61,255,.16)!important;
  border-radius:22px!important;
  padding:22px!important;
  box-shadow:0 18px 42px rgba(103,21,206,.10)!important;
}

/* Payment methods only above customer details */
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment ul.payment_methods,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment ul.payment_methods li,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment div.payment_box,
body.woocommerce-checkout .ws-payment-methods-only--v35124 .payment_box,
body.woocommerce-checkout .ws-payment-methods-only--v35124 fieldset,
body.woocommerce-checkout .ws-payment-methods-only--v35124 .wc-payment-form,
body.woocommerce-checkout .ws-payment-methods-only--v35124 [data-payment-method-type="card"]{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
}

body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment div.payment_box::before,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment div.payment_box::after{
  display:none!important;
}

body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wc_payment_method > label{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  padding:0 0 8px!important;
  color:#151827!important;
  font-size:14px!important;
  font-weight:800!important;
}

body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wc_payment_method > label img{
  margin-left:0!important;
}

/* Secure iframe visible with no fake outer card border */
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .StripeElement,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .__PrivateStripeElement{
  display:block!important;
  width:100%!important;
  min-height:170px!important;
  height:auto!important;
  overflow:visible!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe{
  display:block!important;
  width:100%!important;
  min-height:170px!important;
  height:170px!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

body.woocommerce-checkout .ws-checkout-left-divider{
  height:1px!important;
  margin:18px 0!important;
  background:rgba(123,61,255,.12)!important;
}

/* Place order area restored under customer details on the same left side */
body.woocommerce-checkout .ws-place-order-only--v35124{
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(123,61,255,.12)!important;
}

body.woocommerce-checkout .ws-place-order-only--v35124 .place-order{
  margin:0!important;
  padding:0!important;
}

body.woocommerce-checkout .ws-place-order-only--v35124 .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-place-order-only--v35124 .woocommerce-terms-and-conditions-wrapper{
  margin-top:10px!important;
  text-align:left!important;
  color:#6b7280!important;
  font-size:12px!important;
  line-height:1.45!important;
}

body.woocommerce-checkout .ws-place-order-only--v35124 .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-place-order-only--v35124 .woocommerce-terms-and-conditions-wrapper a{
  color:#6715ce!important;
  font-weight:700!important;
  text-decoration:none!important;
}

body.woocommerce-checkout .ws-place-order-only--v35124 #place_order{
  width:100%!important;
  min-height:48px!important;
  margin-top:10px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  box-shadow:0 12px 24px rgba(103,21,206,.18)!important;
}

/* Keep checkout footer unaffected */
body.woocommerce-checkout .ws-site-footer a,
body.woocommerce-checkout footer a{
  color:#4b5563!important;
  text-decoration:none!important;
}
body.woocommerce-checkout .ws-site-footer a:hover,
body.woocommerce-checkout footer a:hover{
  color:#6715ce!important;
}

/* Beautiful right order summary only */
body.woocommerce-checkout .ws-checkout-product-row--summary{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:0 0 14px!important;
  padding:13px!important;
  border-radius:17px!important;
  background:linear-gradient(135deg,#f5f0ff 0%,#ffffff 100%)!important;
  border:1px solid rgba(123,61,255,.12)!important;
}

body.woocommerce-checkout .ws-checkout-product-icon{
  width:42px!important;
  height:42px!important;
  border-radius:13px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table td{
  padding:11px 0!important;
  border-top:1px solid rgba(123,61,255,.12)!important;
  font-size:13px!important;
  color:#111827!important;
  background:transparent!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table .order-total td{
  padding-top:16px!important;
  font-size:18px!important;
  font-weight:900!important;
}

body.woocommerce-checkout .ws-payment-bottom--summary{
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(123,61,255,.12)!important;
}

body.woocommerce-checkout .ws-checkout-note--summary{
  justify-content:center!important;
  text-align:center!important;
  color:#16a36a!important;
  font-size:12px!important;
  font-weight:800!important;
}

body.woocommerce-checkout .ws-checkout-trust-row--summary{
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:9px!important;
}

@media (max-width:1180px){
  body.woocommerce-checkout .ws-checkout-layout-card--v35124{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-checkout .ws-checkout-panel--summary-only{
    border-left:0!important;
    border-top:1px solid rgba(123,61,255,.14)!important;
  }
  body.woocommerce-checkout .ws-order-summary-box--v35124{
    position:relative!important;
    top:auto!important;
  }
}

@media (max-width:767px){
  body.woocommerce-checkout .ws-checkout-shell--v35124{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel--left-v35124,
  body.woocommerce-checkout .ws-checkout-panel--summary-only{
    padding:18px 15px 20px!important;
  }
  body.woocommerce-checkout .ws-order-summary-box--v35124{
    padding:18px!important;
  }
}


/* ============================================================
   v3.5.125 — Place order belongs to right order summary only
   ============================================================ */
/* Hide any old duplicated left-side place-order area from previous cached/older markup */
body.woocommerce-checkout .ws-checkout-panel--left-v35124 > .ws-place-order-only,
body.woocommerce-checkout .ws-checkout-panel--left-v35124 .ws-place-order-only--v35124,
body.woocommerce-checkout .ws-checkout-panel--left-v35124 .place-order{
  display:none!important;
}

/* Right-side checkout action */
body.woocommerce-checkout .ws-place-order-only--v35125{
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(123,61,255,.12)!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 .place-order{
  margin:0!important;
  padding:0!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-terms-and-conditions-wrapper{
  margin-top:10px!important;
  text-align:left!important;
  color:#6b7280!important;
  font-size:12px!important;
  line-height:1.45!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-terms-and-conditions-wrapper a{
  color:#6715ce!important;
  font-weight:700!important;
  text-decoration:none!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-form__label-for-checkbox{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-form__label-for-checkbox input[type=checkbox]{
  flex:0 0 auto!important;
  margin-top:2px!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 #place_order{
  width:100%!important;
  min-height:48px!important;
  margin-top:12px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  box-shadow:0 12px 24px rgba(103,21,206,.18)!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 #place_order:hover{
  background:linear-gradient(135deg,#7132f6 0%,#5d10bd 100%)!important;
}

/* Left side now only contains payment fields + customer details */
body.woocommerce-checkout .ws-checkout-panel--left-v35124{
  display:block!important;
}

/* Remove old v3.5.124 left-button spacing if it exists */
body.woocommerce-checkout .ws-place-order-only--v35124{
  display:none!important;
}

/* ============================================================
   v3.5.126 — Full right summary, after-button trust, compact checkout
   ============================================================ */
body.woocommerce-checkout .ws-checkout-shell--v35124{
  max-width:1180px!important;
  padding:8px 14px 18px!important;
}

body.woocommerce-checkout .ws-checkout-layout-card--v35124{
  min-height:auto!important;
  border-radius:22px!important;
}

body.woocommerce-checkout .ws-checkout-panel--left-v35124,
body.woocommerce-checkout .ws-checkout-panel--summary-only{
  padding:20px 24px 22px!important;
}

body.woocommerce-checkout .ws-checkout-panel--summary-only{
  display:flex!important;
  align-items:stretch!important;
}

body.woocommerce-checkout .ws-order-summary-box--v35124{
  position:relative!important;
  top:auto!important;
  width:100%!important;
  min-height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  box-shadow:none!important;
}

body.woocommerce-checkout .ws-checkout-panel-head{
  margin-bottom:14px!important;
}

body.woocommerce-checkout .ws-checkout-panel-head h2{
  font-size:24px!important;
  line-height:1.05!important;
  margin:0 0 5px!important;
}

body.woocommerce-checkout .ws-checkout-panel-head p{
  font-size:13px!important;
  line-height:1.35!important;
  margin:0!important;
}

body.woocommerce-checkout .ws-checkout-panel-head > span{
  padding:8px 13px!important;
  font-size:10px!important;
  letter-spacing:.08em!important;
}

body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .StripeElement,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .__PrivateStripeElement{
  min-height:132px!important;
  height:132px!important;
}

body.woocommerce-checkout .ws-checkout-left-divider{
  margin:12px 0!important;
}

body.woocommerce-checkout .ws-customer-fields .form-row,
body.woocommerce-checkout .ws-customer-fields--split .form-row,
body.woocommerce-checkout form.checkout .form-row{
  margin-bottom:11px!important;
}

body.woocommerce-checkout form.checkout .form-row label{
  margin-bottom:6px!important;
  font-size:12px!important;
  line-height:1.2!important;
}

body.woocommerce-checkout form.checkout input.input-text,
body.woocommerce-checkout form.checkout textarea,
body.woocommerce-checkout form.checkout select,
body.woocommerce-checkout form.checkout .select2-container .select2-selection--single{
  min-height:44px!important;
  height:44px!important;
  padding:10px 14px!important;
  border-radius:13px!important;
  font-size:14px!important;
}

body.woocommerce-checkout .ws-checkout-product-row--summary{
  margin-bottom:12px!important;
  padding:12px!important;
  border-radius:16px!important;
}

body.woocommerce-checkout .ws-checkout-product-icon{
  width:39px!important;
  height:39px!important;
  border-radius:12px!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table td{
  padding:9px 0!important;
  font-size:13px!important;
}

body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-checkout-review--summary .woocommerce-checkout-review-order-table .order-total td{
  padding-top:12px!important;
  font-size:20px!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125{
  margin-top:12px!important;
  padding-top:12px!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-place-order-only--v35125 .woocommerce-terms-and-conditions-wrapper{
  margin-top:8px!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}

body.woocommerce-checkout .ws-place-order-only--v35125 #place_order{
  min-height:46px!important;
  margin-top:10px!important;
  border-radius:13px!important;
}

body.woocommerce-checkout .ws-payment-bottom--after-button{
  margin-top:10px!important;
  padding-top:0!important;
  border-top:0!important;
}

body.woocommerce-checkout .ws-payment-bottom--after-button .ws-checkout-note--summary{
  font-size:12px!important;
  margin-bottom:7px!important;
}

body.woocommerce-checkout .ws-payment-bottom--after-button .ws-checkout-trust-row--summary{
  margin-top:0!important;
  gap:10px!important;
}

@media (min-width:1181px){
  body.woocommerce-checkout .ws-checkout-layout-card--v35124{
    max-height:calc(100vh - 80px)!important;
  }
  body.woocommerce-checkout .ws-site-footer{
    display:none!important;
  }
}

@media (max-width:767px){
  body.woocommerce-checkout .ws-checkout-shell--v35124{
    padding:10px!important;
  }
  body.woocommerce-checkout .ws-checkout-panel--left-v35124,
  body.woocommerce-checkout .ws-checkout-panel--summary-only{
    padding:16px 14px 18px!important;
  }
}


/* ============================================================
   v3.5.127 — Trust row below button + payment fields full visibility
   ============================================================ */
/* Do not clip the full checkout content on desktop. */
@media (min-width:1181px){
  body.woocommerce-checkout .ws-checkout-layout-card--v35124{
    max-height:none!important;
    overflow:visible!important;
  }
}

/* Keep summary content in normal top-to-bottom order and ensure after-button trust stays below the button. */
body.woocommerce-checkout .ws-checkout-panel--summary-only{
  align-items:flex-start!important;
}
body.woocommerce-checkout .ws-order-summary-box--v35124{
  justify-content:flex-start!important;
  align-items:stretch!important;
}
body.woocommerce-checkout .ws-order-summary-box--v35124 > *{
  width:100%!important;
}
body.woocommerce-checkout .ws-place-order-only--v35125{
  order:20!important;
}
body.woocommerce-checkout .ws-payment-bottom--after-button{
  order:21!important;
  display:block!important;
  width:100%!important;
  clear:both!important;
  margin-top:12px!important;
}
body.woocommerce-checkout .ws-payment-bottom--after-button .ws-checkout-note--summary,
body.woocommerce-checkout .ws-payment-bottom--after-button .ws-checkout-trust-row--summary{
  justify-content:center!important;
  text-align:center!important;
}

/* Make WooPayments / Stripe card fields tall enough so all rows are visible. */
body.woocommerce-checkout .ws-payment-methods-only--v35124,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .payment_method_woocommerce_payments,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .payment_method_woocommerce_payments_credit_card,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .payment_method_stripe,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .payment_box,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment fieldset,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment [data-payment-method-type="card"]{
  overflow:visible!important;
}
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .StripeElement,
body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .__PrivateStripeElement{
  min-height:188px!important;
  height:188px!important;
  overflow:visible!important;
}

/* Keep compact but safer spacing. */
body.woocommerce-checkout .ws-checkout-shell--v35124{
  padding:10px 14px 20px!important;
}
body.woocommerce-checkout .ws-checkout-panel--left-v35124,
body.woocommerce-checkout .ws-checkout-panel--summary-only{
  padding:22px 24px 24px!important;
}

@media (max-width:767px){
  body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe[title="Secure payment input frame"],
  body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment iframe,
  body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wcpay-upe-element,
  body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .wc-stripe-elements-field,
  body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .StripeElement,
  body.woocommerce-checkout .ws-payment-methods-only--v35124 #payment .__PrivateStripeElement{
    min-height:198px!important;
    height:198px!important;
  }
}


/* ============================================================
   v3.5.128 — My Account payment methods flat app design
   ============================================================ */
/* Apply only inside My Account payment methods / add payment method screens */
body.woocommerce-account.woocommerce-payment-methods .woocommerce-MyAccount-content,
body.woocommerce-account.woocommerce-add-payment-method .woocommerce-MyAccount-content{
  background:#ffffff!important;
}

body.woocommerce-account.woocommerce-payment-methods .woocommerce-MyAccount-content > h2,
body.woocommerce-account.woocommerce-add-payment-method .woocommerce-MyAccount-content > h2,
body.woocommerce-account.woocommerce-payment-methods .woocommerce-MyAccount-content > h3,
body.woocommerce-account.woocommerce-add-payment-method .woocommerce-MyAccount-content > h3{
  margin:0 0 16px!important;
}

body.woocommerce-account.woocommerce-payment-methods .woocommerce-MyAccount-content form#add_payment_method,
body.woocommerce-account.woocommerce-add-payment-method .woocommerce-MyAccount-content form#add_payment_method,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-MyAccount-paymentMethods{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
}

/* Remove gray bordered wrapper and make it flat */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method [data-payment-method-type="card"]{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method{
  display:grid!important;
  gap:18px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment{
  padding:0!important;
  margin:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods{
  display:block!important;
  margin:0!important;
  padding:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method > label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments > label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card > label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe > label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 0 10px!important;
  color:#111827!important;
  font-size:15px!important;
  font-weight:700!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method > label img,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments > label img,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card > label img,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe > label img{
  margin-left:auto!important;
}

/* Native gateway rows look like flat app inputs */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-elements-field,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .__PrivateStripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe[title="Secure payment input frame"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe{
  display:block!important;
  width:100%!important;
  min-height:190px!important;
  height:190px!important;
  overflow:visible!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe div.payment_box{
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box p,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box .form-row,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box fieldset{
  margin-left:0!important;
  margin-right:0!important;
}

/* Saved methods list / info rows */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethods li,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-PaymentMethod,
body.woocommerce-account .woocommerce-MyAccount-content .payment-method,
body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods,
body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods tr,
body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods td,
body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods th{
  background:transparent!important;
  box-shadow:none!important;
}

body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0 12px!important;
  border:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods thead th,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods thead th{
  border:0!important;
  color:#6b7280!important;
  font-size:12px!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  font-weight:700!important;
  padding:0 14px 2px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods tbody tr,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods tbody tr{
  background:#f8f9fc!important;
  border:1px solid #eceff5!important;
  border-radius:16px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods tbody td,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods tbody td{
  padding:16px 14px!important;
  border-top:0!important;
  border-bottom:0!important;
  color:#111827!important;
  font-size:14px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods tbody td:first-child,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods tbody td:first-child{
  border-top-left-radius:16px!important;
  border-bottom-left-radius:16px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods tbody td:last-child,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods tbody td:last-child{
  border-top-right-radius:16px!important;
  border-bottom-right-radius:16px!important;
}

/* Add payment method button flat app style */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .form-row,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .place-order{
  margin:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #place_order,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method button[type="submit"],
body.woocommerce-account .woocommerce-MyAccount-content .add-payment-method,
body.woocommerce-account .woocommerce-MyAccount-content .button.add-payment-method,
body.woocommerce-account .woocommerce-MyAccount-content a.button.add-payment-method,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button.button.add-payment-method{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:54px!important;
  padding:0 28px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  text-decoration:none!important;
  box-shadow:0 12px 24px rgba(103,21,206,.18)!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #place_order:hover,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method button[type="submit"]:hover,
body.woocommerce-account .woocommerce-MyAccount-content .add-payment-method:hover,
body.woocommerce-account .woocommerce-MyAccount-content .button.add-payment-method:hover,
body.woocommerce-account .woocommerce-MyAccount-content a.button.add-payment-method:hover,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button.button.add-payment-method:hover{
  background:linear-gradient(135deg,#7132f6 0%,#5d10bd 100%)!important;
  color:#fff!important;
}

/* App-like responsive spacing */
@media (max-width: 767px){
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-elements-field,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .__PrivateStripeElement,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe[title="Secure payment input frame"],
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe{
    min-height:206px!important;
    height:206px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods,
  body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods{
    border-spacing:0 10px!important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods tbody td,
  body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods tbody td{
    padding:14px 12px!important;
  }
}


/* ============================================================
   v3.5.129 — Rebuilt checkout action area to keep trust text below button
   ============================================================ */
body.woocommerce-checkout .ws-place-order-only--v35129{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  clear:both!important;
}
body.woocommerce-checkout .ws-place-order-content--v35129,
body.woocommerce-checkout .ws-place-order-content--v35129 > *{
  width:100%!important;
  max-width:100%!important;
}
body.woocommerce-checkout .ws-place-order-content--v35129 .place-order,
body.woocommerce-checkout .ws-place-order-content--v35129 #payment .place-order,
body.woocommerce-checkout .ws-place-order-content--v35129 .form-row.place-order{
  display:block!important;
  width:100%!important;
  float:none!important;
  clear:both!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout .ws-place-order-content--v35129 .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-place-order-content--v35129 .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .ws-place-order-content--v35129 .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout .ws-place-order-content--v35129 .form-row,
body.woocommerce-checkout .ws-place-order-content--v35129 p{
  float:none!important;
  clear:both!important;
  width:100%!important;
}
body.woocommerce-checkout .ws-place-order-content--v35129 #place_order,
body.woocommerce-checkout .ws-place-order-content--v35129 button[type="submit"]{
  display:block!important;
  width:100%!important;
  float:none!important;
  clear:both!important;
}
body.woocommerce-checkout .ws-payment-bottom--after-button-v35129{
  display:block!important;
  position:relative!important;
  width:100%!important;
  margin-top:12px!important;
  padding-top:0!important;
  border-top:0!important;
  float:none!important;
  clear:both!important;
}
body.woocommerce-checkout .ws-payment-bottom--after-button-v35129 .ws-checkout-note--summary,
body.woocommerce-checkout .ws-payment-bottom--after-button-v35129 .ws-checkout-trust-row--summary{
  width:100%!important;
  float:none!important;
  clear:both!important;
  justify-content:center!important;
  text-align:center!important;
}
body.woocommerce-checkout .ws-payment-bottom--after-button-v35129 .ws-checkout-note--summary{
  margin-bottom:8px!important;
}


/* ============================================================
   v3.5.130 — My Account compact layout + payment methods cleanup
   ============================================================ */
/* Make My Account blocks smaller so the full screen fits better on desktop */
body.woocommerce-account .ws-account-hero{
  margin-bottom:16px!important;
  padding:16px 20px!important;
  border-radius:22px!important;
}
body.woocommerce-account .ws-account-hero .ws-pill{
  min-height:36px!important;
  padding:0 14px!important;
  font-size:12px!important;
}
body.woocommerce-account .ws-account-hero h1,
body.woocommerce-account .ws-account-hero .ws-page-title,
body.woocommerce-account .ws-account-hero h1.ws-page-title{
  font-size:28px!important;
  line-height:1.06!important;
  margin:10px 0 8px!important;
  letter-spacing:-.035em!important;
}
body.woocommerce-account .ws-account-hero p{
  font-size:14px!important;
  line-height:1.45!important;
  margin:0!important;
}
body.woocommerce-account .ws-account-grid{
  grid-template-columns:230px minmax(0,1fr)!important;
  gap:16px!important;
}
body.woocommerce-account .ws-account-nav,
body.woocommerce-account .ws-account-content{
  padding:16px!important;
  border-radius:22px!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  gap:6px!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:14px!important;
  font-size:14px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content > * + *{
  margin-top:12px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
body.woocommerce-account .woocommerce-MyAccount-content > h3:first-child{
  font-size:22px!important;
  line-height:1.12!important;
  margin:0 0 12px!important;
}

/* Payment methods page: remove black bullet + radio dot and flatten wrapper */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment ul,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment li,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li{
  list-style:none!important;
  padding-left:0!important;
  margin-left:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input[type="radio"][name="payment_method"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method > input[type="radio"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods input[type="radio"]{
  display:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method label::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method > label::before{
  display:none!important;
  content:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method > label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments > label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card > label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe > label{
  gap:8px!important;
  padding:0 0 8px!important;
}

/* Remove visible gray boxes/borders around the add-payment-method area as much as possible */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-credit-card-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-elements-field,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .__PrivateStripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method [data-payment-method-type="card"]{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Keep the card area compact */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method{
  gap:12px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe[title="Secure payment input frame"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-elements-field,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .__PrivateStripeElement{
  min-height:166px!important;
  height:166px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .form-row,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .place-order{
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #place_order,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method button[type="submit"]{
  min-height:50px!important;
  padding:0 24px!important;
  border-radius:14px!important;
}

/* Compact tables/cards inside account */
body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods{
  border-spacing:0 10px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-MyAccount-paymentMethods tbody td,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table.shop_table_responsive.my_account_payment_methods tbody td{
  padding:13px 12px!important;
}

@media (max-width: 767px){
  body.woocommerce-account .ws-account-hero{
    padding:14px 16px!important;
  }
  body.woocommerce-account .ws-account-hero h1,
  body.woocommerce-account .ws-account-hero .ws-page-title,
  body.woocommerce-account .ws-account-hero h1.ws-page-title{
    font-size:24px!important;
  }
  body.woocommerce-account .ws-account-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  body.woocommerce-account .ws-account-nav,
  body.woocommerce-account .ws-account-content{
    padding:14px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe[title="Secure payment input frame"],
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-elements-field,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement,
  body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .__PrivateStripeElement{
    min-height:182px!important;
    height:182px!important;
  }
}


/* ============================================================
   v3.5.131 — Force remove payment dot and gray payment box border
   ============================================================ */
/* Remove any bullet / marker / radio UI near "Card" on My Account payment methods */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li.wc_payment_method,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods li,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods li.wc_payment_method{
  list-style:none!important;
  list-style-type:none!important;
  padding-left:0!important;
  margin-left:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li::marker,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods li::marker,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li.wc_payment_method::marker,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods li.wc_payment_method::marker{
  content:""!important;
  color:transparent!important;
  font-size:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input[name="payment_method"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input[type="radio"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method > input,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods input,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods > li > input{
  position:absolute!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
}

/* Remove the exact WooCommerce Payments gray bordered payment box */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox.woocommerce-PaymentBox--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox.woocommerce-PaymentBox--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe .payment_box{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::after{
  display:none!important;
  content:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Also flatten any fieldset/container that may still draw the border */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-credit-card-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-payment-fields,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method [data-payment-method-type="card"]{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* Keep the payment methods area compact */
body.woocommerce-account .ws-account-hero{
  margin-bottom:14px!important;
}
body.woocommerce-account .ws-account-grid{
  gap:14px!important;
}
body.woocommerce-account .ws-account-nav,
body.woocommerce-account .ws-account-content{
  padding:14px!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a{
  min-height:40px!important;
  font-size:13px!important;
}


/* ============================================================
   v3.5.132 — WooPayments / Stripe Express Checkout support
   Product page + Cart + Checkout
   ============================================================ */
.ws-express-checkout-slot{
  width:100%!important;
  max-width:100%!important;
  margin:0 0 14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  clear:both!important;
}
.ws-express-checkout-slot:empty{
  display:none!important;
}

/* Show known WooPayments / Stripe express checkout wrappers if injected by hooks. */
.ws-express-checkout-slot .wcpay-express-checkout-wrapper,
.ws-express-checkout-slot #wcpay-express-checkout-wrapper,
.ws-express-checkout-slot .wcpay-express-checkout,
.ws-express-checkout-slot #wcpay-express-checkout-element,
.ws-express-checkout-slot .wc-stripe-payment-request-wrapper,
.ws-express-checkout-slot #wc-stripe-payment-request-wrapper,
.ws-express-checkout-slot .wc-stripe-payment-request-button,
.ws-express-checkout-slot #wc-stripe-payment-request-button,
.ws-express-checkout-slot .woocommerce-payments-express-checkout,
.ws-express-checkout-slot .express-payment-methods,
.ws-express-checkout-slot .payment-request-button{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:100%!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  clear:both!important;
}

/* Product placement: above normal license/add-to-cart form */
body.single-product .ws-express-checkout-slot--product{
  margin:0 0 12px!important;
}
body.single-product .ws-express-checkout-slot--product .wc-stripe-payment-request-button-separator,
body.single-product .ws-express-checkout-slot--product .wcpay-express-checkout-separator,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-button-separator,
body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-separator{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:10px 0!important;
  color:#8a93a6!important;
  font-size:12px!important;
  font-weight:700!important;
  text-align:center!important;
}

/* Cart placement: above order summary totals, compact and clean. */
body.woocommerce-cart .ws-express-checkout-slot--cart{
  margin:14px 0 10px!important;
}
body.woocommerce-cart .ws-express-checkout-slot--cart .checkout-button,
body.woocommerce-cart .ws-express-checkout-slot--cart .wc-proceed-to-checkout .checkout-button{
  display:none!important;
}
body.woocommerce-cart .ws-express-checkout-slot--cart .wc-proceed-to-checkout{
  padding:0!important;
  margin:0!important;
}
body.woocommerce-cart .ws-express-checkout-slot--cart .wc-stripe-payment-request-button-separator,
body.woocommerce-cart .ws-express-checkout-slot--cart .wcpay-express-checkout-separator{
  margin:10px 0!important;
  color:#8a93a6!important;
  font-size:12px!important;
  font-weight:700!important;
}

/* Checkout placement: above card fields, styled as part of Payment column. */
body.woocommerce-checkout .ws-express-checkout-slot--checkout{
  margin:0 0 14px!important;
  padding:0 0 14px!important;
  border-bottom:1px solid rgba(123,61,255,.10)!important;
}
body.woocommerce-checkout .ws-express-checkout-slot--checkout .wc-stripe-payment-request-button-separator,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .wcpay-express-checkout-separator{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  margin:10px 0 0!important;
  color:#8a93a6!important;
  font-size:12px!important;
  font-weight:700!important;
}

/* General express wallet button iframe/container sizing. */
body.single-product .wcpay-express-checkout-wrapper iframe,
body.woocommerce-cart .wcpay-express-checkout-wrapper iframe,
body.woocommerce-checkout .wcpay-express-checkout-wrapper iframe,
body.single-product #wcpay-express-checkout-element iframe,
body.woocommerce-cart #wcpay-express-checkout-element iframe,
body.woocommerce-checkout #wcpay-express-checkout-element iframe,
body.single-product #wc-stripe-payment-request-button iframe,
body.woocommerce-cart #wc-stripe-payment-request-button iframe,
body.woocommerce-checkout #wc-stripe-payment-request-button iframe{
  display:block!important;
  width:100%!important;
  min-height:44px!important;
  height:44px!important;
  border:0!important;
}

/* Prevent custom cards from clipping wallet buttons. */
body.single-product .ws-sidebar-card,
body.single-product .ws-add-to-cart-wrap,
body.woocommerce-cart .ws-cart-panel,
body.woocommerce-cart .ws-cart-totals-wrap,
body.woocommerce-checkout .ws-checkout-panel,
body.woocommerce-checkout .ws-payment-methods-only{
  overflow:visible!important;
}

@media (max-width:767px){
  .ws-express-checkout-slot{
    margin-bottom:12px!important;
  }
}


/* ============================================================
   v3.5.133 — Express checkout wallet button visibility fix
   ============================================================ */
/* Make wallet buttons render fully on product / cart / checkout. */
body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-wrapper,
body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-wrapper,
body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-element,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-wrapper,
body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-wrapper,
body.woocommerce-cart .ws-express-checkout-slot--cart .wcpay-express-checkout-wrapper,
body.woocommerce-cart .ws-express-checkout-slot--cart #wcpay-express-checkout-wrapper,
body.woocommerce-cart .ws-express-checkout-slot--cart #wcpay-express-checkout-element,
body.woocommerce-cart .ws-express-checkout-slot--cart .wc-stripe-payment-request-wrapper,
body.woocommerce-cart .ws-express-checkout-slot--cart #wc-stripe-payment-request-wrapper,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .wcpay-express-checkout-wrapper,
body.woocommerce-checkout .ws-express-checkout-slot--checkout #wcpay-express-checkout-wrapper,
body.woocommerce-checkout .ws-express-checkout-slot--checkout #wcpay-express-checkout-element,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .wc-stripe-payment-request-wrapper,
body.woocommerce-checkout .ws-express-checkout-slot--checkout #wc-stripe-payment-request-wrapper{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:58px!important;
  height:auto!important;
  margin:10px 0 0!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  box-shadow:none!important;
}

body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout,
body.single-product .ws-add-to-cart-wrap .woocommerce-payments-express-checkout,
body.single-product .ws-add-to-cart-wrap .payment-request-button,
body.woocommerce-cart .ws-express-checkout-slot--cart .wcpay-express-checkout,
body.woocommerce-cart .ws-express-checkout-slot--cart .woocommerce-payments-express-checkout,
body.woocommerce-cart .ws-express-checkout-slot--cart .payment-request-button,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .wcpay-express-checkout,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .woocommerce-payments-express-checkout,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .payment-request-button{
  width:100%!important;
  max-width:100%!important;
  min-height:58px!important;
  height:auto!important;
  overflow:visible!important;
}

body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-wrapper iframe,
body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-element iframe,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-wrapper iframe,
body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-button iframe,
body.woocommerce-cart .ws-express-checkout-slot--cart .wcpay-express-checkout-wrapper iframe,
body.woocommerce-cart .ws-express-checkout-slot--cart #wcpay-express-checkout-element iframe,
body.woocommerce-cart .ws-express-checkout-slot--cart .wc-stripe-payment-request-wrapper iframe,
body.woocommerce-cart .ws-express-checkout-slot--cart #wc-stripe-payment-request-button iframe,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .wcpay-express-checkout-wrapper iframe,
body.woocommerce-checkout .ws-express-checkout-slot--checkout #wcpay-express-checkout-element iframe,
body.woocommerce-checkout .ws-express-checkout-slot--checkout .wc-stripe-payment-request-wrapper iframe,
body.woocommerce-checkout .ws-express-checkout-slot--checkout #wc-stripe-payment-request-button iframe{
  display:block!important;
  width:100%!important;
  min-height:58px!important;
  height:58px!important;
  max-height:none!important;
  border:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
  background:transparent!important;
}

/* Keep spacing clean under the normal Quick checkout button on product page. */
body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-separator,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-button-separator{
  margin:12px 0 10px!important;
}

/* If a gateway injects inline styles that clip the wallet button, override them. */
body.single-product .ws-add-to-cart-wrap [style*="height"],
body.woocommerce-cart .ws-express-checkout-slot--cart [style*="height"],
body.woocommerce-checkout .ws-express-checkout-slot--checkout [style*="height"]{
  max-height:none!important;
}

@media (max-width:767px){
  body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-wrapper,
  body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-wrapper,
  body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-element,
  body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-wrapper,
  body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-wrapper,
  body.woocommerce-cart .ws-express-checkout-slot--cart .wcpay-express-checkout-wrapper,
  body.woocommerce-cart .ws-express-checkout-slot--cart #wcpay-express-checkout-wrapper,
  body.woocommerce-cart .ws-express-checkout-slot--cart #wcpay-express-checkout-element,
  body.woocommerce-cart .ws-express-checkout-slot--cart .wc-stripe-payment-request-wrapper,
  body.woocommerce-cart .ws-express-checkout-slot--cart #wc-stripe-payment-request-wrapper,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout .wcpay-express-checkout-wrapper,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout #wcpay-express-checkout-wrapper,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout #wcpay-express-checkout-element,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout .wc-stripe-payment-request-wrapper,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout #wc-stripe-payment-request-wrapper{
    min-height:54px!important;
  }
  body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-wrapper iframe,
  body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-element iframe,
  body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-wrapper iframe,
  body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-button iframe,
  body.woocommerce-cart .ws-express-checkout-slot--cart .wcpay-express-checkout-wrapper iframe,
  body.woocommerce-cart .ws-express-checkout-slot--cart #wcpay-express-checkout-element iframe,
  body.woocommerce-cart .ws-express-checkout-slot--cart .wc-stripe-payment-request-wrapper iframe,
  body.woocommerce-cart .ws-express-checkout-slot--cart #wc-stripe-payment-request-button iframe,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout .wcpay-express-checkout-wrapper iframe,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout #wcpay-express-checkout-element iframe,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout .wc-stripe-payment-request-wrapper iframe,
  body.woocommerce-checkout .ws-express-checkout-slot--checkout #wc-stripe-payment-request-button iframe{
    min-height:54px!important;
    height:54px!important;
  }
}


/* ============================================================
   v3.5.135 — Revert wallet style, add small space after GPay
   ============================================================ */
/* Based on v3.5.133 wallet style. Do not force Google Pay to match custom button radius/width. */
body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-wrapper,
body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-wrapper,
body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-element,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-wrapper,
body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-wrapper,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-button,
body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-button{
  margin-bottom:14px!important;
}
body.single-product .ws-express-checkout-slot--product,
body.single-product .ws-add-to-cart-wrap .wcpay-express-checkout-wrapper:last-child,
body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-wrapper:last-child,
body.single-product .ws-add-to-cart-wrap #wcpay-express-checkout-element:last-child,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-wrapper:last-child,
body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-wrapper:last-child,
body.single-product .ws-add-to-cart-wrap .wc-stripe-payment-request-button:last-child,
body.single-product .ws-add-to-cart-wrap #wc-stripe-payment-request-button:last-child{
  padding-bottom:14px!important;
}


/* ============================================================
   v3.5.136 — My Account payment method exact cleanup
   ============================================================ */
/* Remove the weird dot/radio completely on My Account > Add payment method */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.wc_payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.wc_payment_methods li,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method{
  list-style:none!important;
  list-style-type:none!important;
  margin-left:0!important;
  padding-left:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.wc_payment_methods::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.wc_payment_methods::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.wc_payment_methods li::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.wc_payment_methods li::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method label::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method label::after{
  display:none!important;
  content:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li::marker,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method::marker{
  content:""!important;
  color:transparent!important;
  font-size:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input[name="payment_method"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input[type="radio"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method > input,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_methods > li > input{
  appearance:none!important;
  -webkit-appearance:none!important;
  -moz-appearance:none!important;
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  visibility:hidden!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  pointer-events:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method li.wc_payment_method > label{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0 0 12px!important;
  margin:0!important;
}

/* Remove the gray bordered payment box and keep a clean flat checkout-like look */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-payment-fields,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-credit-card-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method [data-payment-method-type="card"]{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox > *,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox--woocommerce_payments > *,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box > *,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box > *,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method [data-payment-method-type="card"] > *{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox--woocommerce_payments::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox--woocommerce_payments::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box::after{
  display:none!important;
  content:none!important;
}

/* Keep card fields clean and close to checkout styling */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-elements-field,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .__PrivateStripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe[title="Secure payment input frame"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}


/* ============================================================
   v3.5.137 — Rebuild My Account add-payment-method styling
   Exact WooPayments DOM targeting
   ============================================================ */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-Payment,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentMethods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentMethod,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentMethod--woocommerce_payments{
  background:transparent!important;
  box-shadow:none!important;
}

/* Remove the dot / bullet / marker for the exact WooPayments list item */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods{
  list-style:none!important;
  list-style-type:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li.woocommerce-PaymentMethod,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li.woocommerce-PaymentMethod--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li.payment_method_woocommerce_payments{
  list-style:none!important;
  list-style-type:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li::marker,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li.woocommerce-PaymentMethod::marker,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li.woocommerce-PaymentMethod--woocommerce_payments::marker,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li.payment_method_woocommerce_payments::marker{
  content:''!important;
  font-size:0!important;
  color:transparent!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li label::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li label::after{
  display:none!important;
  content:none!important;
}

/* Hide radio completely */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input#payment_method_woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input[name='payment_method'],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method input.input-radio,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li > input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

/* Clean heading row */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.woocommerce-PaymentMethods.payment_methods.methods > li > label{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  padding:0 0 12px!important;
  margin:0!important;
  font-size:18px!important;
  font-weight:700!important;
  color:#0f172a!important;
}

/* Rebuild payment box with no outer gray border */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox.woocommerce-PaymentBox--woocommerce_payments.payment_box.payment_method_woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox.woocommerce-PaymentBox--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box.payment_method_woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box{
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox.woocommerce-PaymentBox--woocommerce_payments.payment_box.payment_method_woocommerce_payments::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.woocommerce-PaymentBox.woocommerce-PaymentBox--woocommerce_payments.payment_box.payment_method_woocommerce_payments::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .woocommerce-PaymentBox::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box::after{
  display:none!important;
  content:none!important;
}

/* Keep only the card field inputs visible like checkout */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-credit-card-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method [data-payment-method-type='card']{
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
}

/* Make button sit cleanly below */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .form-row,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .place-order{
  margin-top:16px!important;
}

/* ============================================================
   v3.5.138 — Recreated My Account Add Payment Method block
   Removes default li marker dot and WooPayments fieldset gray border at source.
   ============================================================ */
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method-form--rebuilt,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method-form--rebuilt *{
  box-sizing:border-box!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method-form--rebuilt,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-shell{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-head{
  margin:0 0 18px!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-head .ws-add-payment-kicker{
  display:inline-flex!important;
  align-items:center!important;
  min-height:26px!important;
  padding:0 11px!important;
  border-radius:999px!important;
  background:#f1eaff!important;
  color:#6715ce!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  margin:0 0 10px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-head h2{
  margin:0 0 7px!important;
  color:#111827!important;
  font-size:24px!important;
  line-height:1.18!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-head p{
  margin:0!important;
  color:#667085!important;
  font-size:15px!important;
  line-height:1.55!important;
  max-width:720px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-methods,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-methods.methods,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-methods.payment_methods{
  display:block!important;
  list-style:none!important;
  list-style-type:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method.woocommerce-PaymentMethod,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method.wc_payment_method{
  display:block!important;
  list-style:none!important;
  list-style-type:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method::before,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method::after,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method::marker,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-methods::before,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-methods::after{
  display:none!important;
  content:none!important;
  color:transparent!important;
  font-size:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method > input.input-radio,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-method > input[name='payment_method']{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  min-height:42px!important;
  margin:0 0 12px!important;
  padding:0!important;
  color:#111827!important;
  font-size:17px!important;
  line-height:1.2!important;
  font-weight:800!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-label::before,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-label::after{
  display:none!important;
  content:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-check{
  width:20px!important;
  height:20px!important;
  flex:0 0 20px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:#6f35f5!important;
  box-shadow:inset 0 0 0 5px #ffffff, 0 0 0 1px #6f35f5!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-title{
  display:inline-flex!important;
  align-items:center!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-label img,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-label svg{
  margin-left:auto!important;
  max-height:24px!important;
  width:auto!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box.woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box.payment_method_woocommerce_payments{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box::before,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box::after,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box > fieldset::before,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box > fieldset::after{
  display:none!important;
  content:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box fieldset,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .wc-credit-card-form,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .wcpay-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box [data-payment-method-type='card']{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  min-width:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .wcpay-upe-element,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .wc-stripe-elements-field,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .StripeElement,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .__PrivateStripeElement,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box iframe[title='Secure payment input frame'],
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box iframe{
  display:block!important;
  width:100%!important;
  min-height:190px!important;
  height:190px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box p{
  margin:14px 0 0!important;
  color:#667085!important;
  font-size:14px!important;
  line-height:1.55!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-action{
  margin:20px 0 0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-submit,
body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-action #place_order{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:0 28px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#6715ce 100%)!important;
  color:#ffffff!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:0 14px 28px rgba(103,21,206,.20)!important;
}
@media (max-width:767px){
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-head h2{
    font-size:21px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .wcpay-upe-element,
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .wc-stripe-elements-field,
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .StripeElement,
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box .__PrivateStripeElement,
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box iframe[title='Secure payment input frame'],
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-box iframe{
    min-height:205px!important;
    height:205px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-submit,
  body.woocommerce-account .woocommerce-MyAccount-content .ws-add-payment-action #place_order{
    width:100%!important;
  }
}

/* ============================================================
   v3.5.139 — Account-only WooPayments card border hard fix
   Scope is intentionally limited to My Account > Add payment method.
   Checkout page and checkout payment fields are not targeted here.
   ============================================================ */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt #payment,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .woocommerce-PaymentBox,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset[style],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form > fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form > fieldset[style],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt [data-payment-method-type='card'],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt [data-payment-method-type='card'] fieldset{
  border:0!important;
  border-width:0!important;
  border-style:none!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset[style],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form > fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form > fieldset[style]{
  margin:0!important;
  padding:0!important;
  min-width:0!important;
  min-inline-size:0!important;
  width:100%!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset legend,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form fieldset legend{
  display:none!important;
  border:0!important;
  padding:0!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .payment_box::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .woocommerce-PaymentBox::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .woocommerce-PaymentBox::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset::after{
  display:none!important;
  content:none!important;
  border:0!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .ws-add-payment-submit{
  margin-top:22px!important;
}

/* WooSculpt v3.5.140 - My Account add-payment WooPayments fieldset hard border removal (checkout-safe) */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .ws-add-payment-box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .woocommerce-PaymentBox--woocommerce_payments,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .payment_method_woocommerce_payments.ws-add-payment-box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form > fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset.wc-payment-form[style]{
  border:0!important;
  border-width:0!important;
  border-style:none!important;
  border-color:transparent!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  min-width:0!important;
  min-inline-size:0!important;
}

/* ============================================================
   v3.5.141 — Safe My Account add-payment recovery + border fix
   - Restores normal WooPayments/Stripe rendering
   - Removes only the outer fieldset/payment-box border
   - Scoped only to My Account > Add payment method
   - Does not target checkout
   ============================================================ */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .woocommerce-PaymentBox.woocommerce-PaymentBox--woocommerce_payments.payment_box.payment_method_woocommerce_payments.ws-add-payment-box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .ws-add-payment-box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset[style].wc-payment-form{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:100%!important;
  border:none!important;
  border-width:0!important;
  border-style:none!important;
  border-color:transparent!important;
  outline:none!important;
  box-shadow:none!important;
  background:transparent!important;
  margin:0!important;
  min-width:0!important;
  min-inline-size:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-form fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt fieldset[style].wc-payment-form{
  padding:0!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-element.StripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .wcpay-upe-element,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .StripeElement{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  max-width:100%!important;
  min-height:190px!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method.ws-add-payment-method-form--rebuilt .ws-add-payment-box iframe[title='Secure payment input frame']{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  min-width:100%!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}


/* ============================================================
   v3.5.142 — Beautiful Add Payment Method UI
   - Removes gray border from card container (all methods)
   - Removes radio bullet/dot next to "Card"
   - Adds premium white card with soft purple shadow
   - Styled Stripe/WooPayments iframe container with rounded border
   - Beautiful "Add payment method" button with gradient + lift hover
   - SSL security badge below form
   - Scoped only to My Account > Add Payment Method
   - Does NOT affect checkout
   ============================================================ */

/* 1. Kill every border/shadow/bg on the outer containers */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #payment,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li.wc_payment_method,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method fieldset,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method fieldset.wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-payment-form,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-form{
  border:none!important;
  border-width:0!important;
  border-style:none!important;
  border-color:transparent!important;
  outline:none!important;
  box-shadow:none!important;
  background:transparent!important;
}

/* 2. Kill pseudo-element lines/dots */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method div.payment_box::after,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method fieldset::before,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method fieldset::after{
  display:none!important;
  border:none!important;
  background:none!important;
  content:none!important;
}

/* 3. Hide the radio bullet dot */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li input[type="radio"]{
  display:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
  position:absolute!important;
  pointer-events:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method ul.payment_methods li::marker{
  content:""!important;
  display:none!important;
}

/* 4. Premium card wrapper around the entire form */
body.woocommerce-account.woocommerce-add-payment-method .woocommerce-MyAccount-content form#add_payment_method{
  background:#ffffff!important;
  border-radius:20px!important;
  padding:32px 36px 36px!important;
  box-shadow:0 2px 4px rgba(109,75,220,0.04),0 8px 24px rgba(109,75,220,0.09),0 32px 64px rgba(109,75,220,0.06)!important;
  border:1px solid rgba(109,75,220,0.09)!important;
  max-width:660px!important;
  gap:0!important;
}

/* 5. "Card" section label — clean pill style */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method>label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments>label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card>label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe>label{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:5px 14px 5px 12px!important;
  background:#f3f0ff!important;
  border-radius:30px!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  color:#6d28d9!important;
  margin-bottom:20px!important;
  cursor:default!important;
  width:auto!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc_payment_method>label img,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments>label img,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe>label img{
  margin-left:0!important;
  height:16px!important;
  width:auto!important;
}

/* 6. WooPayments / Stripe iframe element — beautiful rounded container */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wc-stripe-elements-field,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .__PrivateStripeElement,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe[title="Secure payment input frame"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method iframe{
  display:block!important;
  width:100%!important;
  min-height:200px!important;
  height:200px!important;
  overflow:visible!important;
  border:1.5px solid #e5e7eb!important;
  border-radius:14px!important;
  background:#fafafa!important;
  padding:4px!important;
  box-shadow:0 1px 3px rgba(0,0,0,0.04)!important;
  transition:border-color .18s ease,box-shadow .18s ease!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .wcpay-upe-element:focus-within,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .StripeElement--focus{
  border-color:#7c3aed!important;
  box-shadow:0 0 0 3px rgba(124,58,237,.10)!important;
}

/* 7. Payment box wrapper — no margin, clean */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_woocommerce_payments_credit_card div.payment_box,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_method_stripe div.payment_box{
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:none!important;
}

/* 8. Terms/consent text below the iframe */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box p{
  font-size:12px!important;
  color:#9ca3af!important;
  line-height:1.6!important;
  margin-top:16px!important;
  padding-top:14px!important;
  border-top:1px solid #f3f4f6!important;
  background:transparent!important;
}

/* 9. Country / billing fields */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box .form-row,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box fieldset .form-row{
  margin-left:0!important;
  margin-right:0!important;
  margin-bottom:14px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box label,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box fieldset label{
  display:block!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  color:#9ca3af!important;
  margin-bottom:6px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box input[type="text"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box input[type="tel"],
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box select{
  width:100%!important;
  height:46px!important;
  padding:0 14px!important;
  border:1.5px solid #e5e7eb!important;
  border-radius:10px!important;
  background:#fafafa!important;
  font-size:15px!important;
  color:#111827!important;
  box-shadow:none!important;
  outline:none!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  transition:border-color .18s ease,box-shadow .18s ease!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box input:focus,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method .payment_box select:focus{
  border-color:#7c3aed!important;
  background:#ffffff!important;
  box-shadow:0 0 0 3px rgba(124,58,237,.10)!important;
}

/* 10. "Add payment method" submit button — premium purple gradient */
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #place_order,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method button[type="submit"]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:54px!important;
  padding:0 32px!important;
  border:none!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#7B3DFF 0%,#5b21b6 100%)!important;
  color:#ffffff!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  text-decoration:none!important;
  cursor:pointer!important;
  box-shadow:0 4px 16px rgba(91,33,182,.35),0 1px 3px rgba(91,33,182,.2)!important;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease!important;
  margin-top:8px!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #place_order:hover,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method button[type="submit"]:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 8px 24px rgba(91,33,182,.45),0 2px 6px rgba(91,33,182,.25)!important;
  background:linear-gradient(135deg,#6d28d9 0%,#4c1d95 100%)!important;
}

body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method #place_order:active,
body.woocommerce-account .woocommerce-MyAccount-content form#add_payment_method button[type="submit"]:active{
  transform:translateY(0)!important;
  box-shadow:0 2px 8px rgba(91,33,182,.3)!important;
}

/* 11. SSL badge after form */
body.woocommerce-account.woocommerce-add-payment-method .woocommerce-MyAccount-content form#add_payment_method::after{
  content:"🔒  Secured with 256-bit SSL encryption"!important;
  display:block!important;
  margin-top:16px!important;
  font-size:11px!important;
  font-weight:500!important;
  color:#9ca3af!important;
  letter-spacing:.05em!important;
}

/* 12. Mobile */
@media(max-width:640px){
  body.woocommerce-account.woocommerce-add-payment-method .woocommerce-MyAccount-content form#add_payment_method{
    padding:22px 18px 26px!important;
    border-radius:16px!important;
  }
}


/* ============================================================
   v3.5.145 — Full My Account Modern Redesign
   - New sidebar nav with icons + hover/active states
   - Hero section elevated card with gradient accent
   - Content area with better spacing and typography
   - Modern table styling, address cards, form fields
   - All existing functionality preserved
   ============================================================ */

/* ── Page background ──────────────────────────────────────── */
body.woocommerce-account .ws-page {
  padding-top: 32px !important;
  padding-bottom: 48px !important;
}

/* ── Hero card ────────────────────────────────────────────── */
body.woocommerce-account .ws-account-hero {
  position: relative !important;
  overflow: hidden !important;
  padding: 28px 32px !important;
  margin-bottom: 24px !important;
  background: #ffffff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 22px !important;
  box-shadow: 0 2px 8px rgba(108,71,255,0.05), 0 1px 3px rgba(0,0,0,0.04) !important;
}
body.woocommerce-account .ws-account-hero::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important; right: 0 !important;
  width: 380px !important; height: 100% !important;
  background: radial-gradient(ellipse at top right, rgba(108,71,255,0.07) 0%, transparent 70%) !important;
  pointer-events: none !important;
}
body.woocommerce-account .ws-account-hero .ws-pill {
  font-size: 10px !important;
  padding: 4px 10px !important;
  margin-bottom: 10px !important;
  letter-spacing: .10em !important;
}
body.woocommerce-account .ws-account-hero h1,
body.woocommerce-account .ws-account-hero h1.ws-page-title {
  font-size: clamp(22px,2.4vw,32px) !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
  color: var(--ws-text) !important;
  margin: 0 0 6px !important;
  line-height: 1.1 !important;
}
body.woocommerce-account .ws-account-hero p {
  font-size: 14px !important;
  color: var(--ws-muted) !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}

/* ── Grid layout ──────────────────────────────────────────── */
body.woocommerce-account .ws-account-grid {
  grid-template-columns: 220px minmax(0,1fr) !important;
  gap: 20px !important;
  align-items: start !important;
}

/* ── Sidebar nav card ─────────────────────────────────────── */
body.woocommerce-account .ws-account-nav {
  padding: 12px !important;
  background: #ffffff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 22px !important;
  box-shadow: 0 2px 8px rgba(108,71,255,0.05) !important;
  position: sticky !important;
  top: 88px !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  gap: 2px !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ws-text-2) !important;
  transition: background .15s, color .15s !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background: var(--ws-surface-3) !important;
  color: var(--ws-text) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: var(--ws-purple-soft) !important;
  color: var(--ws-purple) !important;
  font-weight: 700 !important;
}

/* Nav icons via ::before on each link */
body.woocommerce-account .woocommerce-MyAccount-navigation a::before {
  content: "" !important;
  display: inline-block !important;
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  opacity: .55 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a::before,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover::before {
  opacity: 1 !important;
}
/* Dashboard */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C47FF' stroke-width='2'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E") !important;
}
/* Orders */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C47FF' stroke-width='2'%3E%3Cpath d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2'/%3E%3Crect x='9' y='3' width='6' height='4' rx='1'/%3E%3Cpath d='M9 12h6M9 16h4'/%3E%3C/svg%3E") !important;
}
/* Downloads / License keys */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C47FF' stroke-width='2'%3E%3Crect x='3' y='11' width='18' height='11' rx='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") !important;
}
/* Support tickets */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--support-tickets a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C47FF' stroke-width='2'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E") !important;
}
/* Addresses */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C47FF' stroke-width='2'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E") !important;
}
/* Payment methods */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--payment-methods a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C47FF' stroke-width='2'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E") !important;
}
/* Account details */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236C47FF' stroke-width='2'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c0-4 3.6-7 8-7s8 3 8 7'/%3E%3C/svg%3E") !important;
}
/* Logout */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DC2626' stroke-width='2'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E") !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: #DC2626 !important;
  margin-top: 4px !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
  background: #FEF2F2 !important;
  color: #DC2626 !important;
}

/* Thin divider above logout */
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
  border-top: 1px solid var(--ws-border) !important;
  padding-top: 6px !important;
  margin-top: 6px !important;
}

/* ── Content card ─────────────────────────────────────────── */
body.woocommerce-account .ws-account-content {
  padding: 28px 30px !important;
  background: #ffffff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 22px !important;
  box-shadow: 0 2px 8px rgba(108,71,255,0.05) !important;
  min-height: 300px !important;
}

/* Section headings inside content */
body.woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
body.woocommerce-account .woocommerce-MyAccount-content > h3:first-child {
  font-size: 20px !important;
  font-weight: 800 !important;
  letter-spacing: -.025em !important;
  color: var(--ws-text) !important;
  margin: 0 0 20px !important;
}

/* ── Orders table ─────────────────────────────────────────── */
body.woocommerce-account table.shop_table,
body.woocommerce-account .woocommerce-orders-table {
  border: 1px solid var(--ws-border) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  border-spacing: 0 !important;
}
body.woocommerce-account table.shop_table th,
body.woocommerce-account .woocommerce-orders-table th {
  background: var(--ws-surface-2) !important;
  padding: 12px 16px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  color: var(--ws-muted) !important;
  border-bottom: 1px solid var(--ws-border) !important;
}
body.woocommerce-account table.shop_table td,
body.woocommerce-account .woocommerce-orders-table td {
  padding: 14px 16px !important;
  border-bottom: 1px solid var(--ws-border) !important;
  font-size: 14px !important;
  color: var(--ws-text-2) !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}
body.woocommerce-account table.shop_table tr:last-child td,
body.woocommerce-account .woocommerce-orders-table tr:last-child td {
  border-bottom: none !important;
}
body.woocommerce-account table.shop_table tbody tr:hover td,
body.woocommerce-account .woocommerce-orders-table tbody tr:hover td {
  background: var(--ws-surface-2) !important;
}
body.woocommerce-account .woocommerce-orders-table__cell-order-actions .button,
body.woocommerce-account table.shop_table .button {
  min-height: 36px !important;
  padding: 0 14px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* ── Info / notice blocks ─────────────────────────────────── */
body.woocommerce-account .woocommerce-info {
  background: var(--ws-purple-soft) !important;
  border: 1px solid var(--ws-purple-border) !important;
  border-radius: 14px !important;
  color: var(--ws-purple-dark) !important;
  padding: 16px 20px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

/* ── Address cards ────────────────────────────────────────── */
body.woocommerce-account .woocommerce-Addresses {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
}
body.woocommerce-account .woocommerce-Address {
  background: var(--ws-surface-2) !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  padding: 20px 22px !important;
}
body.woocommerce-account .woocommerce-Address-title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 14px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--ws-border) !important;
}
body.woocommerce-account .woocommerce-Address-title h3 {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  color: var(--ws-muted) !important;
  margin: 0 !important;
}
body.woocommerce-account .woocommerce-Address-title a {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--ws-purple) !important;
  text-decoration: none !important;
  padding: 4px 10px !important;
  border-radius: 8px !important;
  background: var(--ws-purple-soft) !important;
  transition: background .15s !important;
}
body.woocommerce-account .woocommerce-Address-title a:hover {
  background: var(--ws-purple-border) !important;
}
body.woocommerce-account .woocommerce-Address address {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: var(--ws-text-2) !important;
  font-style: normal !important;
}

/* ── Account details form ─────────────────────────────────── */
body.woocommerce-account form.woocommerce-EditAccountForm {
  max-width: 600px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row {
  margin-bottom: 16px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--ws-muted) !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  margin-bottom: 7px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm input[type=text],
body.woocommerce-account .woocommerce-EditAccountForm input[type=email],
body.woocommerce-account .woocommerce-EditAccountForm input[type=password] {
  height: 48px !important;
  border: 1.5px solid var(--ws-border-dark) !important;
  border-radius: 12px !important;
  padding: 0 16px !important;
  font-size: 15px !important;
  transition: border-color .15s, box-shadow .15s !important;
}
body.woocommerce-account .woocommerce-EditAccountForm input:focus {
  border-color: var(--ws-purple) !important;
  box-shadow: 0 0 0 3px var(--ws-purple-glow) !important;
  outline: none !important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset {
  border: 1.5px solid var(--ws-border) !important;
  border-radius: 16px !important;
  padding: 20px 22px !important;
  background: var(--ws-surface-2) !important;
  margin-top: 24px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  color: var(--ws-muted) !important;
  padding: 0 8px !important;
}
body.woocommerce-account .woocommerce-EditAccountForm button[type=submit] {
  height: 50px !important;
  padding: 0 28px !important;
  border-radius: 14px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  margin-top: 8px !important;
}

/* ── Dashboard welcome text ───────────────────────────────── */
body.woocommerce-account.woocommerce-page .woocommerce-MyAccount-content > p:first-child {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: var(--ws-muted) !important;
  margin-bottom: 20px !important;
}

/* ── Tickets section ──────────────────────────────────────── */
body.woocommerce-account .ws-ticket-list {
  display: grid !important;
  gap: 12px !important;
  margin-bottom: 24px !important;
}
body.woocommerce-account .ws-ticket-empty {
  background: var(--ws-surface-2) !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 14px !important;
  padding: 20px !important;
  font-size: 14px !important;
  color: var(--ws-muted) !important;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 1080px) {
  body.woocommerce-account .ws-account-grid {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-account .ws-account-nav {
    position: static !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation li a {
    min-height: 38px !important;
    font-size: 13px !important;
    padding: 0 12px !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
    border-top: none !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}
@media (max-width: 640px) {
  body.woocommerce-account .ws-account-hero {
    padding: 20px 22px !important;
  }
  body.woocommerce-account .ws-account-content {
    padding: 20px !important;
  }
  body.woocommerce-account .woocommerce-Addresses {
    grid-template-columns: 1fr !important;
  }
}


/* ============================================================
   v3.5.147 — Unified single white block My Account layout
   Hero removed. Nav + content merged into one ws-account-shell.
   ============================================================ */

/* Hide old hero if it still renders anywhere */
body.woocommerce-account .ws-account-hero {
  display: none !important;
}

/* Shell: the ONE white card */
body.woocommerce-account .ws-account-shell {
  display: grid !important;
  grid-template-columns: 210px minmax(0,1fr) !important;
  gap: 0 !important;
  background: #ffffff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 22px !important;
  box-shadow: 0 4px 24px rgba(13,15,26,0.06), 0 1px 4px rgba(13,15,26,0.04) !important;
  overflow: hidden !important;
  align-items: stretch !important;
}

/* Sidebar nav inside shell */
body.woocommerce-account .ws-account-shell .ws-account-nav {
  background: var(--ws-surface-2) !important;
  border: none !important;
  border-right: 1px solid var(--ws-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 20px 12px !important;
  position: static !important;
}

/* Content area inside shell */
body.woocommerce-account .ws-account-shell .ws-account-content {
  background: #ffffff !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 32px 36px !important;
  min-height: 480px !important;
}

/* Nav links inside shell */
body.woocommerce-account .ws-account-shell .woocommerce-MyAccount-navigation ul {
  display: grid !important;
  gap: 2px !important;
}
body.woocommerce-account .ws-account-shell .woocommerce-MyAccount-navigation li a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 42px !important;
  padding: 0 12px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ws-text-2) !important;
  white-space: nowrap !important;
  transition: background .15s, color .15s !important;
  text-decoration: none !important;
}
body.woocommerce-account .ws-account-shell .woocommerce-MyAccount-navigation li a:hover {
  background: var(--ws-border) !important;
  color: var(--ws-text) !important;
}
body.woocommerce-account .ws-account-shell .woocommerce-MyAccount-navigation li.is-active a {
  background: var(--ws-purple-soft) !important;
  color: var(--ws-purple) !important;
  font-weight: 700 !important;
}

/* Responsive: stack on tablet/mobile */
@media (max-width: 860px) {
  body.woocommerce-account .ws-account-shell {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-account .ws-account-shell .ws-account-nav {
    border-right: none !important;
    border-bottom: 1px solid var(--ws-border) !important;
    padding: 14px 12px !important;
  }
  body.woocommerce-account .ws-account-shell .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
  }
  body.woocommerce-account .ws-account-shell .woocommerce-MyAccount-navigation li a {
    min-height: 36px !important;
    font-size: 13px !important;
    padding: 0 10px !important;
  }
  body.woocommerce-account .ws-account-shell .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
    border-top: none !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  body.woocommerce-account .ws-account-shell .ws-account-content {
    padding: 24px 20px !important;
  }
}


/* ============================================================
   v3.5.148 — Full Checkout Redesign
   High-converting two-column layout. WooPayments 100% supported.
   ============================================================ */

body.woocommerce-checkout .ws-co-form {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 32px 20px 60px !important;
}

/* ── Shell grid ───────────────────────────────────────────── */
body.woocommerce-checkout .ws-co-shell {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 380px !important;
  gap: 24px !important;
  align-items: start !important;
}

/* ── Left column ──────────────────────────────────────────── */
body.woocommerce-checkout .ws-co-left {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

/* ── Cards ────────────────────────────────────────────────── */
body.woocommerce-checkout .ws-co-card {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(13,15,26,0.05) !important;
}

/* Card header */
body.woocommerce-checkout .ws-co-card-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 20px 24px 18px !important;
  border-bottom: 1px solid #f3f4f6 !important;
}
body.woocommerce-checkout .ws-co-card-title {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}
body.woocommerce-checkout .ws-co-step-dot {
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #7B3DFF 0%, #6715ce 100%) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 4px 10px rgba(103,21,206,0.28) !important;
}
body.woocommerce-checkout .ws-co-card-title h2 {
  font-size: 17px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em !important;
  color: #0d0f1a !important;
  margin: 0 0 2px !important;
  line-height: 1.1 !important;
}
body.woocommerce-checkout .ws-co-card-title p {
  font-size: 12px !important;
  color: #9ca3af !important;
  margin: 0 !important;
}
body.woocommerce-checkout .ws-co-secure-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 5px 11px !important;
  border-radius: 999px !important;
  background: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
  color: #15803d !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
}

/* ── Express checkout (GPay / Apple Pay) ──────────────────── */
body.woocommerce-checkout .ws-co-express {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 20px !important;
  padding: 18px 20px !important;
  box-shadow: 0 2px 8px rgba(13,15,26,0.05) !important;
}
body.woocommerce-checkout .ws-co-divider {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: 16px !important;
  color: #9ca3af !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}
body.woocommerce-checkout .ws-co-divider::before,
body.woocommerce-checkout .ws-co-divider::after {
  content: "" !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e5e7eb !important;
}

/* ── Payment methods body (WooPayments / Stripe) ──────────── */
body.woocommerce-checkout .ws-co-payment-body {
  padding: 20px 24px !important;
}

/* Nuke ALL borders/bg from WooPayments containers */
body.woocommerce-checkout .ws-co-payment-body #payment,
body.woocommerce-checkout .ws-co-payment-body #payment ul.payment_methods,
body.woocommerce-checkout .ws-co-payment-body #payment ul.payment_methods li,
body.woocommerce-checkout .ws-co-payment-body #payment div.payment_box,
body.woocommerce-checkout .ws-co-payment-body #payment .payment_box,
body.woocommerce-checkout .ws-co-payment-body #payment fieldset,
body.woocommerce-checkout .ws-co-payment-body #payment fieldset.wc-payment-form,
body.woocommerce-checkout .ws-co-payment-body #payment .wcpay-upe-form,
body.woocommerce-checkout .ws-co-payment-body #payment .wc-payment-form,
body.woocommerce-checkout .ws-co-payment-body #payment [data-payment-method-type] {
  background: transparent !important;
  border: none !important;
  border-width: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  min-inline-size: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
body.woocommerce-checkout .ws-co-payment-body #payment div.payment_box::before,
body.woocommerce-checkout .ws-co-payment-body #payment div.payment_box::after,
body.woocommerce-checkout .ws-co-payment-body #payment fieldset::before,
body.woocommerce-checkout .ws-co-payment-body #payment fieldset::after {
  display: none !important;
  content: none !important;
  border: none !important;
}

/* "Card" label with card brand icons */
body.woocommerce-checkout .ws-co-payment-body #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-co-payment-body #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-co-payment-body #payment .payment_method_stripe > label {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0 0 14px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #374151 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}
body.woocommerce-checkout .ws-co-payment-body #payment input[type="radio"] {
  display: none !important;
}

/* WooPayments iframe */
body.woocommerce-checkout .ws-co-payment-body #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-co-payment-body #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-co-payment-body #payment .StripeElement,
body.woocommerce-checkout .ws-co-payment-body #payment .__PrivateStripeElement,
body.woocommerce-checkout .ws-co-payment-body #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-co-payment-body #payment iframe {
  display: block !important;
  width: 100% !important;
  min-height: 190px !important;
  height: auto !important;
  overflow: visible !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Save payment checkbox */
body.woocommerce-checkout .ws-co-payment-body .woocommerce-SavedPaymentMethods-saveNew,
body.woocommerce-checkout .ws-co-payment-body #payment .woocommerce-form__label-for-checkbox {
  margin-top: 14px !important;
  font-size: 13px !important;
  color: #6b7280 !important;
}

/* Privacy + terms text */
body.woocommerce-checkout .ws-co-action .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-co-action .woocommerce-terms-and-conditions-wrapper {
  font-size: 12px !important;
  color: #9ca3af !important;
  line-height: 1.55 !important;
  margin-bottom: 14px !important;
}
body.woocommerce-checkout .ws-co-action .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-co-action .woocommerce-terms-and-conditions-wrapper a {
  color: #7B3DFF !important;
  font-weight: 600 !important;
}
body.woocommerce-checkout .ws-co-action .woocommerce-form__label-for-checkbox {
  font-size: 12px !important;
  color: #6b7280 !important;
}

/* Place order button */
body.woocommerce-checkout .ws-co-action #place_order,
body.woocommerce-checkout .ws-co-action button[type="submit"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 56px !important;
  border: none !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #7B3DFF 0%, #5b21b6 100%) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: -.01em !important;
  cursor: pointer !important;
  box-shadow: 0 6px 20px rgba(91,33,182,0.38), 0 2px 6px rgba(91,33,182,0.2) !important;
  transition: transform .15s ease, box-shadow .15s ease !important;
  margin-top: 4px !important;
}
body.woocommerce-checkout .ws-co-action #place_order:hover,
body.woocommerce-checkout .ws-co-action button[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 28px rgba(91,33,182,0.48) !important;
}
body.woocommerce-checkout .ws-co-action .place-order {
  padding: 0 !important;
  margin: 0 !important;
}

/* ── Customer fields ──────────────────────────────────────── */
body.woocommerce-checkout .ws-co-fields {
  padding: 20px 24px 24px !important;
}
body.woocommerce-checkout .ws-co-fields .woocommerce-billing-fields__field-wrapper {
  display: grid !important;
  gap: 12px !important;
}
body.woocommerce-checkout .ws-co-fields .form-row {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}
body.woocommerce-checkout .ws-co-fields .form-row label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  color: #6b7280 !important;
  margin-bottom: 6px !important;
}
body.woocommerce-checkout .ws-co-fields input[type=text],
body.woocommerce-checkout .ws-co-fields input[type=email],
body.woocommerce-checkout .ws-co-fields input[type=tel],
body.woocommerce-checkout .ws-co-fields input[type=password],
body.woocommerce-checkout .ws-co-fields select,
body.woocommerce-checkout .ws-co-fields .select2-container--default .select2-selection--single {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 16px !important;
  border: 1.5px solid #e5e7eb !important;
  border-radius: 12px !important;
  background: #fafafa !important;
  color: #0d0f1a !important;
  font-size: 14px !important;
  transition: border-color .15s, box-shadow .15s !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
body.woocommerce-checkout .ws-co-fields input:focus,
body.woocommerce-checkout .ws-co-fields select:focus,
body.woocommerce-checkout .ws-co-fields .select2-container--default.select2-container--open .select2-selection--single {
  border-color: #7B3DFF !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(123,61,255,0.10) !important;
  outline: none !important;
}

/* ── Right: Order summary card ────────────────────────────── */
body.woocommerce-checkout .ws-co-right {
  position: sticky !important;
  top: calc(var(--ws-header-h, 72px) + 20px) !important;
}
body.woocommerce-checkout .ws-co-summary {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 24px rgba(13,15,26,0.07) !important;
}

/* Product row */
body.woocommerce-checkout .ws-co-product {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 18px 20px !important;
  border-bottom: 1px solid #f3f4f6 !important;
  background: linear-gradient(135deg, #faf8ff 0%, #f6f1ff 80%) !important;
}
body.woocommerce-checkout .ws-co-product-icon {
  width: 44px !important;
  height: 44px !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, #7B3DFF 0%, #5b21b6 100%) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 6px 14px rgba(91,33,182,0.24) !important;
}
body.woocommerce-checkout .ws-co-product-info {
  flex: 1 !important;
  min-width: 0 !important;
}
body.woocommerce-checkout .ws-co-product-info strong {
  display: block !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0d0f1a !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
body.woocommerce-checkout .ws-co-product-info small {
  font-size: 12px !important;
  color: #9ca3af !important;
}
body.woocommerce-checkout .ws-co-license-badge {
  flex-shrink: 0 !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: #ede9fe !important;
  border: 1px solid #ddd6fe !important;
  color: #6d28d9 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Totals table */
body.woocommerce-checkout .ws-co-totals {
  padding: 0 20px !important;
}
body.woocommerce-checkout .ws-co-totals .woocommerce-checkout-review-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
}
body.woocommerce-checkout .ws-co-totals .woocommerce-checkout-review-order-table thead {
  display: none !important;
}
body.woocommerce-checkout .ws-co-totals .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-co-totals .woocommerce-checkout-review-order-table td {
  padding: 13px 0 !important;
  border: none !important;
  border-bottom: 1px solid #f3f4f6 !important;
  font-size: 14px !important;
  color: #374151 !important;
  background: transparent !important;
}
body.woocommerce-checkout .ws-co-totals .woocommerce-checkout-review-order-table td {
  text-align: right !important;
}
body.woocommerce-checkout .ws-co-totals .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-co-totals .woocommerce-checkout-review-order-table .order-total td {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #0d0f1a !important;
  border-bottom: none !important;
  padding-top: 16px !important;
  padding-bottom: 18px !important;
}
body.woocommerce-checkout .ws-co-totals .amount,
body.woocommerce-checkout .ws-co-totals bdi {
  color: #0d0f1a !important;
}

/* Action area */
body.woocommerce-checkout .ws-co-action {
  padding: 0 20px 20px !important;
}

/* Trust signals */
body.woocommerce-checkout .ws-co-trust {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  padding: 14px 20px !important;
  border-top: 1px solid #f3f4f6 !important;
  background: #fafafa !important;
}
body.woocommerce-checkout .ws-co-trust span {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #6b7280 !important;
  white-space: nowrap !important;
}
body.woocommerce-checkout .ws-co-trust svg {
  color: #9ca3af !important;
  flex-shrink: 0 !important;
}

/* Instant access line above trust */
body.woocommerce-checkout .ws-co-summary::after {
  content: "⚡  Instant access after successful payment" !important;
  display: block !important;
  text-align: center !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #15803d !important;
  padding: 12px 20px !important;
  background: #f0fdf4 !important;
  border-top: 1px solid #bbf7d0 !important;
}

/* ── wc-block notices ─────────────────────────────────────── */
body.woocommerce-checkout .ws-co-form .woocommerce-NoticeGroup,
body.woocommerce-checkout .ws-co-form .woocommerce-error,
body.woocommerce-checkout .ws-co-form .woocommerce-message,
body.woocommerce-checkout .ws-co-form .woocommerce-info {
  margin-bottom: 16px !important;
  border-radius: 14px !important;
  font-size: 14px !important;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 900px) {
  body.woocommerce-checkout .ws-co-shell {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-checkout .ws-co-right {
    position: static !important;
    order: -1 !important;
  }
}
@media (max-width: 640px) {
  body.woocommerce-checkout .ws-co-form {
    padding: 16px 14px 40px !important;
  }
  body.woocommerce-checkout .ws-co-card-header,
  body.woocommerce-checkout .ws-co-payment-body,
  body.woocommerce-checkout .ws-co-fields {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  body.woocommerce-checkout .ws-co-trust {
    flex-wrap: wrap !important;
    gap: 10px !important;
  }
}


/* ============================================================
   v3.5.149 — Stripe-inspired Checkout Redesign
   ============================================================ */

/* Page wrapper — fix footer visibility */
body.woocommerce-checkout .ws-page {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background: #f6f6f9 !important;
  min-height: auto !important;
}
body.woocommerce-checkout .ws-container {
  max-width: 1080px !important;
  padding-top: 40px !important;
  padding-bottom: 56px !important;
}

/* ── Form wrap ────────────────────────────────────────────── */
body.woocommerce-checkout .ws-sc-form {
  width: 100% !important;
}

/* ── Two-column grid ──────────────────────────────────────── */
body.woocommerce-checkout .ws-sc-wrap {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 360px !important;
  gap: 24px !important;
  align-items: start !important;
}

/* ── Left column ──────────────────────────────────────────── */
body.woocommerce-checkout .ws-sc-left {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* ── Shared block card ────────────────────────────────────── */
body.woocommerce-checkout .ws-sc-block {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04) !important;
}

/* Block header */
body.woocommerce-checkout .ws-sc-block-head {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 18px 20px 16px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}
body.woocommerce-checkout .ws-sc-num {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: #635bff !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}
body.woocommerce-checkout .ws-sc-block-head > div {
  flex: 1 !important;
}
body.woocommerce-checkout .ws-sc-block-head h3 {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  margin: 0 0 2px !important;
  line-height: 1.2 !important;
  letter-spacing: -.01em !important;
}
body.woocommerce-checkout .ws-sc-block-head p {
  font-size: 12px !important;
  color: #94a3b8 !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}
body.woocommerce-checkout .ws-sc-block-label {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #64748b !important;
  margin: 0 0 12px !important;
  padding: 18px 20px 0 !important;
}
body.woocommerce-checkout .ws-sc-ssl {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 4px 9px !important;
  border-radius: 999px !important;
  background: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
  color: #16a34a !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  flex-shrink: 0 !important;
}

/* ── Express checkout block ───────────────────────────────── */
body.woocommerce-checkout .ws-sc-express {
  padding-bottom: 4px !important;
}
body.woocommerce-checkout .ws-sc-express .wcpay-express-checkout-wrapper,
body.woocommerce-checkout .ws-sc-express .wc-stripe-express-checkout-element-button-type,
body.woocommerce-checkout .ws-sc-express #wcpay-express-checkout-element,
body.woocommerce-checkout .ws-sc-express .wcpay-payment-request-wrapper {
  padding: 0 20px !important;
  width: 100% !important;
}
body.woocommerce-checkout .ws-sc-express > .wcpay-express-checkout-wrapper,
body.woocommerce-checkout .ws-sc-express > #wcpay-express-checkout-element,
body.woocommerce-checkout .ws-sc-express > .wcpay-payment-request-wrapper {
  padding: 0 20px 4px !important;
}
body.woocommerce-checkout .ws-sc-or {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  padding: 14px 20px 16px !important;
}
body.woocommerce-checkout .ws-sc-or::before,
body.woocommerce-checkout .ws-sc-or::after {
  content: "" !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e2e8f0 !important;
}
body.woocommerce-checkout .ws-sc-or span {
  padding: 0 12px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #94a3b8 !important;
  white-space: nowrap !important;
}

/* ── Payment methods body ─────────────────────────────────── */
body.woocommerce-checkout .ws-sc-payment-body {
  padding: 16px 20px 18px !important;
}

/* Strip ALL borders/bg from WooPayments internals */
body.woocommerce-checkout .ws-sc-payment-body #payment,
body.woocommerce-checkout .ws-sc-payment-body #payment ul.payment_methods,
body.woocommerce-checkout .ws-sc-payment-body #payment ul.payment_methods li,
body.woocommerce-checkout .ws-sc-payment-body #payment div.payment_box,
body.woocommerce-checkout .ws-sc-payment-body #payment .payment_box,
body.woocommerce-checkout .ws-sc-payment-body #payment fieldset,
body.woocommerce-checkout .ws-sc-payment-body #payment fieldset.wc-payment-form,
body.woocommerce-checkout .ws-sc-payment-body #payment .wcpay-upe-form,
body.woocommerce-checkout .ws-sc-payment-body #payment .wc-payment-form,
body.woocommerce-checkout .ws-sc-payment-body #payment [data-payment-method-type] {
  background: transparent !important;
  border: none !important;
  border-width: 0 !important;
  border-style: none !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  min-inline-size: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
body.woocommerce-checkout .ws-sc-payment-body #payment div.payment_box::before,
body.woocommerce-checkout .ws-sc-payment-body #payment div.payment_box::after,
body.woocommerce-checkout .ws-sc-payment-body #payment fieldset::before,
body.woocommerce-checkout .ws-sc-payment-body #payment fieldset::after {
  display: none !important;
  content: none !important;
}

/* Radio dot hidden */
body.woocommerce-checkout .ws-sc-payment-body #payment input[type="radio"] {
  display: none !important;
}

/* "Card" label row with card icons */
body.woocommerce-checkout .ws-sc-payment-body #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-sc-payment-body #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-sc-payment-body #payment .payment_method_stripe > label {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding-bottom: 12px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  letter-spacing: .03em !important;
  cursor: default !important;
}
body.woocommerce-checkout .ws-sc-payment-body #payment .wc_payment_method > label img {
  height: 20px !important;
  width: auto !important;
  margin-left: 0 !important;
}

/* WooPayments Stripe iframe */
body.woocommerce-checkout .ws-sc-payment-body #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-sc-payment-body #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-sc-payment-body #payment .StripeElement,
body.woocommerce-checkout .ws-sc-payment-body #payment .__PrivateStripeElement,
body.woocommerce-checkout .ws-sc-payment-body #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-sc-payment-body #payment iframe {
  display: block !important;
  width: 100% !important;
  min-height: 200px !important;
  height: auto !important;
  overflow: visible !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Save card checkbox */
body.woocommerce-checkout .ws-sc-payment-body .woocommerce-form__label-for-checkbox {
  margin-top: 12px !important;
  font-size: 13px !important;
  color: #64748b !important;
}

/* ── Customer fields ──────────────────────────────────────── */
body.woocommerce-checkout .ws-sc-fields {
  padding: 16px 20px 20px !important;
}
body.woocommerce-checkout .ws-sc-fields .woocommerce-billing-fields__field-wrapper {
  display: grid !important;
  gap: 14px !important;
}
body.woocommerce-checkout .ws-sc-fields .form-row {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}
body.woocommerce-checkout .ws-sc-fields .form-row label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #374151 !important;
  margin-bottom: 6px !important;
}
body.woocommerce-checkout .ws-sc-fields input[type=text],
body.woocommerce-checkout .ws-sc-fields input[type=email],
body.woocommerce-checkout .ws-sc-fields input[type=tel],
body.woocommerce-checkout .ws-sc-fields input[type=password],
body.woocommerce-checkout .ws-sc-fields select,
body.woocommerce-checkout .ws-sc-fields .select2-container--default .select2-selection--single {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #0f172a !important;
  font-size: 14px !important;
  transition: border-color .15s, box-shadow .15s !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
body.woocommerce-checkout .ws-sc-fields input:focus,
body.woocommerce-checkout .ws-sc-fields select:focus,
body.woocommerce-checkout .ws-sc-fields .select2-container--default.select2-container--open .select2-selection--single {
  border-color: #635bff !important;
  box-shadow: 0 0 0 3px rgba(99,91,255,0.12) !important;
  outline: none !important;
  background: #fff !important;
}

/* ── RIGHT: Summary card ──────────────────────────────────── */
body.woocommerce-checkout .ws-sc-right {
  position: sticky !important;
  top: calc(var(--ws-header-h, 72px) + 20px) !important;
}
body.woocommerce-checkout .ws-sc-summary {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
}

/* Product row */
body.woocommerce-checkout .ws-sc-product {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 16px 18px !important;
  background: #fafbff !important;
  border-bottom: 1px solid #e2e8f0 !important;
}
body.woocommerce-checkout .ws-sc-product-icon {
  width: 40px !important;
  height: 40px !important;
  border-radius: 10px !important;
  background: #635bff !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 4px 10px rgba(99,91,255,0.3) !important;
}
body.woocommerce-checkout .ws-sc-product-info {
  flex: 1 !important;
  min-width: 0 !important;
}
body.woocommerce-checkout .ws-sc-product-info strong {
  display: block !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
body.woocommerce-checkout .ws-sc-product-info small {
  font-size: 11px !important;
  color: #94a3b8 !important;
}
body.woocommerce-checkout .ws-sc-badge {
  flex-shrink: 0 !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
  background: #ede9fe !important;
  color: #6d28d9 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Totals table */
body.woocommerce-checkout .ws-sc-totals {
  padding: 0 18px !important;
}
body.woocommerce-checkout .ws-sc-totals .woocommerce-checkout-review-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
}
body.woocommerce-checkout .ws-sc-totals .woocommerce-checkout-review-order-table thead {
  display: none !important;
}
body.woocommerce-checkout .ws-sc-totals .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-sc-totals .woocommerce-checkout-review-order-table td {
  padding: 12px 0 !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  font-size: 13px !important;
  color: #374151 !important;
  background: transparent !important;
  vertical-align: middle !important;
}
body.woocommerce-checkout .ws-sc-totals .woocommerce-checkout-review-order-table td {
  text-align: right !important;
}
body.woocommerce-checkout .ws-sc-totals .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-sc-totals .woocommerce-checkout-review-order-table .order-total td {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  border-bottom: none !important;
  padding: 16px 0 14px !important;
}
body.woocommerce-checkout .ws-sc-totals .amount,
body.woocommerce-checkout .ws-sc-totals bdi {
  color: inherit !important;
}

/* CTA area — terms + button */
body.woocommerce-checkout .ws-sc-cta {
  padding: 0 18px 16px !important;
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 4px !important;
}
body.woocommerce-checkout .ws-sc-cta .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-sc-cta .woocommerce-terms-and-conditions-wrapper {
  font-size: 11px !important;
  color: #94a3b8 !important;
  line-height: 1.55 !important;
  margin: 12px 0 10px !important;
}
body.woocommerce-checkout .ws-sc-cta .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-sc-cta .woocommerce-terms-and-conditions-wrapper a {
  color: #635bff !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
body.woocommerce-checkout .ws-sc-cta .woocommerce-form__label-for-checkbox {
  font-size: 12px !important;
  color: #64748b !important;
  margin-bottom: 10px !important;
  display: flex !important;
  gap: 8px !important;
  align-items: flex-start !important;
}
body.woocommerce-checkout .ws-sc-cta .place-order {
  padding: 0 !important;
  margin: 0 !important;
}
body.woocommerce-checkout .ws-sc-cta #place_order,
body.woocommerce-checkout .ws-sc-cta button[type="submit"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  border: none !important;
  border-radius: 8px !important;
  background: #635bff !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: -.01em !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px rgba(99,91,255,0.4) !important;
  transition: background .15s, transform .15s, box-shadow .15s !important;
  margin-top: 4px !important;
}
body.woocommerce-checkout .ws-sc-cta #place_order:hover,
body.woocommerce-checkout .ws-sc-cta button[type="submit"]:hover {
  background: #4f46e5 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 20px rgba(99,91,255,0.5) !important;
}

/* Instant access note */
body.woocommerce-checkout .ws-sc-instant {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 11px 18px !important;
  background: #f0fdf4 !important;
  border-top: 1px solid #dcfce7 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #15803d !important;
}

/* Trust row */
body.woocommerce-checkout .ws-sc-trust {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  padding: 11px 18px !important;
  border-top: 1px solid #f1f5f9 !important;
  background: #fafbfc !important;
  flex-wrap: wrap !important;
}
body.woocommerce-checkout .ws-sc-trust span {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #94a3b8 !important;
  white-space: nowrap !important;
}

/* ── Notices ──────────────────────────────────────────────── */
body.woocommerce-checkout .ws-sc-form .woocommerce-NoticeGroup,
body.woocommerce-checkout .ws-sc-form .woocommerce-error,
body.woocommerce-checkout .ws-sc-form .woocommerce-message,
body.woocommerce-checkout .ws-sc-form .woocommerce-info {
  margin-bottom: 16px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
}

/* ── Footer fix — ensure it shows on checkout ─────────────── */
body.woocommerce-checkout .ws-site-footer {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 860px) {
  body.woocommerce-checkout .ws-sc-wrap {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-checkout .ws-sc-right {
    position: static !important;
    order: -1 !important;
  }
}
@media (max-width: 520px) {
  body.woocommerce-checkout .ws-container {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }
  body.woocommerce-checkout .ws-sc-block-head,
  body.woocommerce-checkout .ws-sc-payment-body,
  body.woocommerce-checkout .ws-sc-fields {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}


/* ============================================================
   v3.5.150 — Clean checkout like image 3 (Coht/Stripe style)
   Left: customer info + payment method
   Right: order summary + single place order button
   No duplicate actions. Compact. Easy to use.
   ============================================================ */

body.woocommerce-checkout .ws-page {
  background: #f0f2f5 !important;
  padding: 0 !important;
}
body.woocommerce-checkout .ws-container {
  max-width: 1040px !important;
  padding: 36px 20px 64px !important;
}

/* ── Main grid ────────────────────────────────────────────── */
body.woocommerce-checkout .ws-cx-form { width: 100% !important; }

body.woocommerce-checkout .ws-cx-grid {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 340px !important;
  gap: 20px !important;
  align-items: start !important;
}

/* ── Left column ──────────────────────────────────────────── */
body.woocommerce-checkout .ws-cx-left {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* Section block */
body.woocommerce-checkout .ws-cx-section {
  background: #fff !important;
  border: 1px solid #e4e7ec !important;
  border-radius: 14px !important;
  padding: 20px !important;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04) !important;
}
body.woocommerce-checkout .ws-cx-section-label {
  display: block !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #6b7280 !important;
  margin-bottom: 14px !important;
}

/* ── Express checkout ─────────────────────────────────────── */
body.woocommerce-checkout .ws-cx-express-buttons {
  min-height: 44px !important;
}
body.woocommerce-checkout .ws-cx-express-buttons > *,
body.woocommerce-checkout .ws-cx-express-buttons .wcpay-express-checkout-wrapper,
body.woocommerce-checkout .ws-cx-express-buttons #wcpay-express-checkout-element,
body.woocommerce-checkout .ws-cx-express-buttons .wcpay-payment-request-wrapper {
  width: 100% !important;
  margin: 0 !important;
}
body.woocommerce-checkout .ws-cx-divider {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: 14px !important;
  font-size: 12px !important;
  color: #9ca3af !important;
  font-weight: 500 !important;
}
body.woocommerce-checkout .ws-cx-divider::before,
body.woocommerce-checkout .ws-cx-divider::after {
  content: "" !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e4e7ec !important;
}
body.woocommerce-checkout .ws-cx-divider span { padding: 0 8px !important; }

/* ── Customer fields ──────────────────────────────────────── */
body.woocommerce-checkout .ws-cx-fields .woocommerce-billing-fields__field-wrapper {
  display: grid !important;
  gap: 12px !important;
}
body.woocommerce-checkout .ws-cx-fields .form-row {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
  clear: none !important;
}
body.woocommerce-checkout .ws-cx-fields .form-row label {
  display: block !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #374151 !important;
  margin-bottom: 5px !important;
}
body.woocommerce-checkout .ws-cx-fields input[type=text],
body.woocommerce-checkout .ws-cx-fields input[type=email],
body.woocommerce-checkout .ws-cx-fields input[type=tel],
body.woocommerce-checkout .ws-cx-fields input[type=password],
body.woocommerce-checkout .ws-cx-fields select,
body.woocommerce-checkout .ws-cx-fields .select2-container--default .select2-selection--single {
  width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 14px !important;
  border: 1.5px solid #e4e7ec !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #111827 !important;
  font-size: 14px !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  transition: border-color .15s, box-shadow .15s !important;
}
body.woocommerce-checkout .ws-cx-fields input:focus,
body.woocommerce-checkout .ws-cx-fields select:focus,
body.woocommerce-checkout .ws-cx-fields .select2-container--default.select2-container--open .select2-selection--single {
  border-color: #4f46e5 !important;
  box-shadow: 0 0 0 3px rgba(79,70,229,0.10) !important;
  outline: none !important;
}

/* ── Payment method section ───────────────────────────────── */
/* Nuke ALL WooPayments wrapper borders/bg */
body.woocommerce-checkout .ws-cx-payment #payment,
body.woocommerce-checkout .ws-cx-payment #payment ul.payment_methods,
body.woocommerce-checkout .ws-cx-payment #payment ul.payment_methods li,
body.woocommerce-checkout .ws-cx-payment #payment div.payment_box,
body.woocommerce-checkout .ws-cx-payment #payment .payment_box,
body.woocommerce-checkout .ws-cx-payment #payment fieldset,
body.woocommerce-checkout .ws-cx-payment #payment fieldset.wc-payment-form,
body.woocommerce-checkout .ws-cx-payment #payment .wcpay-upe-form,
body.woocommerce-checkout .ws-cx-payment #payment .wc-payment-form,
body.woocommerce-checkout .ws-cx-payment #payment [data-payment-method-type] {
  background: transparent !important;
  border: none !important;
  border-width: 0 !important;
  border-style: none !important;
  border-color: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  min-inline-size: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
body.woocommerce-checkout .ws-cx-payment #payment div.payment_box::before,
body.woocommerce-checkout .ws-cx-payment #payment div.payment_box::after,
body.woocommerce-checkout .ws-cx-payment #payment fieldset::before,
body.woocommerce-checkout .ws-cx-payment #payment fieldset::after {
  display: none !important;
  content: none !important;
}
/* Hide radio */
body.woocommerce-checkout .ws-cx-payment #payment input[type="radio"] {
  display: none !important;
}
/* Card label with brand icons */
body.woocommerce-checkout .ws-cx-payment #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-cx-payment #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-cx-payment #payment .payment_method_stripe > label {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #374151 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
  cursor: default !important;
}
/* WooPayments Stripe iframe */
body.woocommerce-checkout .ws-cx-payment #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-cx-payment #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-cx-payment #payment .StripeElement,
body.woocommerce-checkout .ws-cx-payment #payment .__PrivateStripeElement,
body.woocommerce-checkout .ws-cx-payment #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-cx-payment #payment iframe {
  display: block !important;
  width: 100% !important;
  min-height: 200px !important;
  height: auto !important;
  overflow: visible !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
/* Save card checkbox */
body.woocommerce-checkout .ws-cx-payment .woocommerce-form__label-for-checkbox {
  font-size: 13px !important;
  color: #6b7280 !important;
  margin-top: 10px !important;
}

/* ── Right column ─────────────────────────────────────────── */
body.woocommerce-checkout .ws-cx-right {
  position: sticky !important;
  top: calc(var(--ws-header-h, 72px) + 16px) !important;
  background: #fff !important;
  border: 1px solid #e4e7ec !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

/* Product row */
body.woocommerce-checkout .ws-cx-product-row {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 16px 18px !important;
  border-bottom: 1px solid #f3f4f6 !important;
  background: #fafbff !important;
}
body.woocommerce-checkout .ws-cx-product-icon {
  width: 38px !important;
  height: 38px !important;
  border-radius: 9px !important;
  background: #4f46e5 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 3px 8px rgba(79,70,229,0.28) !important;
}
body.woocommerce-checkout .ws-cx-product-info {
  flex: 1 !important;
  min-width: 0 !important;
}
body.woocommerce-checkout .ws-cx-product-info strong {
  display: block !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
body.woocommerce-checkout .ws-cx-product-info small {
  font-size: 11px !important;
  color: #9ca3af !important;
}
body.woocommerce-checkout .ws-cx-license-tag {
  flex-shrink: 0 !important;
  padding: 3px 8px !important;
  border-radius: 999px !important;
  background: #eef2ff !important;
  color: #4f46e5 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

/* Order summary totals table */
body.woocommerce-checkout .ws-cx-totals {
  padding: 4px 18px 0 !important;
  font-size: 14px !important;
}
body.woocommerce-checkout .ws-cx-totals .woocommerce-checkout-review-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
}
body.woocommerce-checkout .ws-cx-totals .woocommerce-checkout-review-order-table thead { display: none !important; }
body.woocommerce-checkout .ws-cx-totals .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-cx-totals .woocommerce-checkout-review-order-table td {
  padding: 11px 0 !important;
  border: none !important;
  border-bottom: 1px solid #f3f4f6 !important;
  font-size: 13px !important;
  color: #374151 !important;
  background: transparent !important;
  vertical-align: middle !important;
}
body.woocommerce-checkout .ws-cx-totals .woocommerce-checkout-review-order-table td { text-align: right !important; }
body.woocommerce-checkout .ws-cx-totals .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-cx-totals .woocommerce-checkout-review-order-table .order-total td {
  font-size: 17px !important;
  font-weight: 800 !important;
  color: #111827 !important;
  border-bottom: none !important;
  padding: 14px 0 12px !important;
}
body.woocommerce-checkout .ws-cx-totals .amount,
body.woocommerce-checkout .ws-cx-totals bdi { color: inherit !important; }

/* CTA area */
body.woocommerce-checkout .ws-cx-cta {
  padding: 0 18px 18px !important;
  border-top: 1px solid #f3f4f6 !important;
}
/* Privacy + terms text */
body.woocommerce-checkout .ws-cx-cta .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-cx-cta .woocommerce-terms-and-conditions-wrapper {
  font-size: 11px !important;
  color: #9ca3af !important;
  line-height: 1.55 !important;
  margin: 12px 0 10px !important;
}
body.woocommerce-checkout .ws-cx-cta .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-cx-cta .woocommerce-terms-and-conditions-wrapper a {
  color: #4f46e5 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
body.woocommerce-checkout .ws-cx-cta .woocommerce-form__label-for-checkbox {
  font-size: 12px !important;
  color: #6b7280 !important;
  margin-bottom: 12px !important;
  display: flex !important;
  gap: 8px !important;
  align-items: flex-start !important;
  line-height: 1.4 !important;
}
body.woocommerce-checkout .ws-cx-cta .place-order { padding: 0 !important; margin: 0 !important; }
/* THE place order button */
body.woocommerce-checkout .ws-cx-cta #place_order,
body.woocommerce-checkout .ws-cx-cta button[type="submit"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 50px !important;
  border: none !important;
  border-radius: 10px !important;
  background: #4f46e5 !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 4px 12px rgba(79,70,229,0.35) !important;
  transition: background .15s, transform .12s, box-shadow .15s !important;
  letter-spacing: -.01em !important;
}
body.woocommerce-checkout .ws-cx-cta #place_order:hover,
body.woocommerce-checkout .ws-cx-cta button[type="submit"]:hover {
  background: #4338ca !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(79,70,229,0.45) !important;
}

/* Trust row */
body.woocommerce-checkout .ws-cx-trust {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  padding: 10px 18px !important;
  border-top: 1px solid #f3f4f6 !important;
  background: #fafafa !important;
  flex-wrap: wrap !important;
}
body.woocommerce-checkout .ws-cx-trust span {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #9ca3af !important;
  white-space: nowrap !important;
}

/* ── Notices ──────────────────────────────────────────────── */
body.woocommerce-checkout .ws-cx-form .woocommerce-error,
body.woocommerce-checkout .ws-cx-form .woocommerce-message,
body.woocommerce-checkout .ws-cx-form .woocommerce-info,
body.woocommerce-checkout .ws-cx-form .woocommerce-NoticeGroup {
  margin-bottom: 16px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
}

/* ── Footer always visible ────────────────────────────────── */
body.woocommerce-checkout .ws-site-footer {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 0 !important;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 820px) {
  body.woocommerce-checkout .ws-cx-grid {
    grid-template-columns: 1fr !important;
  }
  body.woocommerce-checkout .ws-cx-right {
    position: static !important;
    order: -1 !important; /* Summary first on mobile */
  }
}
@media (max-width: 480px) {
  body.woocommerce-checkout .ws-container {
    padding: 16px 12px 40px !important;
  }
  body.woocommerce-checkout .ws-cx-section {
    padding: 16px !important;
  }
}


/* ============================================================
   v3.5.151 — Fresh checkout rebuild. No HTML splitting.
   WooCommerce #payment renders naturally (fields + button).
   Right column = totals only. No duplication possible.
   ============================================================ */

/* Page */
body.woocommerce-checkout .ws-page { background: #f0f2f5 !important; padding: 0 !important; }
body.woocommerce-checkout .ws-container { max-width: 1040px !important; padding: 36px 20px 60px !important; }
body.woocommerce-checkout .ws-ck-form { width: 100% !important; }

/* Grid */
body.woocommerce-checkout .ws-ck-wrap {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) 320px !important;
  gap: 20px !important;
  align-items: start !important;
}

/* Left column */
body.woocommerce-checkout .ws-ck-left {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* Card */
body.woocommerce-checkout .ws-ck-card {
  background: #fff !important;
  border: 1px solid #e4e7ec !important;
  border-radius: 14px !important;
  padding: 20px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}
body.woocommerce-checkout .ws-ck-label {
  display: block !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
  color: #6b7280 !important;
  margin: 0 0 14px !important;
}

/* Express checkout card */
body.woocommerce-checkout .ws-ck-express > * + * { margin-top: 0 !important; }
body.woocommerce-checkout .ws-ck-or {
  display: flex !important; align-items: center !important; gap: 10px !important;
  margin-top: 14px !important; font-size: 12px !important; color: #9ca3af !important;
}
body.woocommerce-checkout .ws-ck-or::before,
body.woocommerce-checkout .ws-ck-or::after { content: "" !important; flex: 1 !important; height: 1px !important; background: #e4e7ec !important; }
body.woocommerce-checkout .ws-ck-or span { padding: 0 8px !important; }

/* Customer fields */
body.woocommerce-checkout .ws-ck-fields .woocommerce-billing-fields__field-wrapper { display: grid !important; gap: 12px !important; }
body.woocommerce-checkout .ws-ck-fields .form-row { margin: 0 !important; padding: 0 !important; float: none !important; width: 100% !important; }
body.woocommerce-checkout .ws-ck-fields .form-row label { display: block !important; font-size: 12px !important; font-weight: 600 !important; color: #374151 !important; margin-bottom: 5px !important; }
body.woocommerce-checkout .ws-ck-fields input[type=text],
body.woocommerce-checkout .ws-ck-fields input[type=email],
body.woocommerce-checkout .ws-ck-fields input[type=tel],
body.woocommerce-checkout .ws-ck-fields select,
body.woocommerce-checkout .ws-ck-fields .select2-container--default .select2-selection--single {
  width: 100% !important; height: 46px !important; min-height: 46px !important;
  padding: 0 14px !important; border: 1.5px solid #e4e7ec !important; border-radius: 10px !important;
  background: #fff !important; color: #111827 !important; font-size: 14px !important;
  box-shadow: none !important; -webkit-appearance: none !important; appearance: none !important;
  transition: border-color .15s, box-shadow .15s !important;
}
body.woocommerce-checkout .ws-ck-fields input:focus,
body.woocommerce-checkout .ws-ck-fields select:focus {
  border-color: #4f46e5 !important; box-shadow: 0 0 0 3px rgba(79,70,229,.10) !important; outline: none !important;
}

/* ── Payment card: strip all WooPayments wrapper styling ──── */
body.woocommerce-checkout .ws-ck-payment-card #payment,
body.woocommerce-checkout .ws-ck-payment-card #payment ul.payment_methods,
body.woocommerce-checkout .ws-ck-payment-card #payment ul.payment_methods li,
body.woocommerce-checkout .ws-ck-payment-card #payment div.payment_box,
body.woocommerce-checkout .ws-ck-payment-card #payment .payment_box,
body.woocommerce-checkout .ws-ck-payment-card #payment fieldset,
body.woocommerce-checkout .ws-ck-payment-card #payment fieldset.wc-payment-form,
body.woocommerce-checkout .ws-ck-payment-card #payment .wcpay-upe-form,
body.woocommerce-checkout .ws-ck-payment-card #payment .wc-payment-form,
body.woocommerce-checkout .ws-ck-payment-card #payment [data-payment-method-type] {
  background: transparent !important; border: none !important; border-width: 0 !important;
  border-style: none !important; border-color: transparent !important;
  outline: none !important; box-shadow: none !important; padding: 0 !important;
  margin: 0 !important; min-inline-size: 0 !important;
  -webkit-appearance: none !important; appearance: none !important;
}
body.woocommerce-checkout .ws-ck-payment-card #payment div.payment_box::before,
body.woocommerce-checkout .ws-ck-payment-card #payment div.payment_box::after,
body.woocommerce-checkout .ws-ck-payment-card #payment fieldset::before,
body.woocommerce-checkout .ws-ck-payment-card #payment fieldset::after { display: none !important; content: none !important; }

/* Hide radio button */
body.woocommerce-checkout .ws-ck-payment-card #payment input[type="radio"] { display: none !important; }

/* Card label (VISA / MC icons row) */
body.woocommerce-checkout .ws-ck-payment-card #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-ck-payment-card #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-ck-payment-card #payment .payment_method_stripe > label {
  display: flex !important; align-items: center !important; gap: 8px !important;
  font-size: 12px !important; font-weight: 700 !important; color: #374151 !important;
  letter-spacing: .04em !important; text-transform: uppercase !important;
  margin-bottom: 12px !important; cursor: default !important;
}

/* WooPayments iframe */
body.woocommerce-checkout .ws-ck-payment-card #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-ck-payment-card #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-ck-payment-card #payment .StripeElement,
body.woocommerce-checkout .ws-ck-payment-card #payment .__PrivateStripeElement,
body.woocommerce-checkout .ws-ck-payment-card #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-ck-payment-card #payment iframe {
  display: block !important; width: 100% !important; min-height: 200px !important;
  height: auto !important; overflow: visible !important;
  border: none !important; outline: none !important; box-shadow: none !important; background: transparent !important;
}

/* Hide the order review table that WooCommerce puts inside #payment (we show it in right column) */
body.woocommerce-checkout .ws-ck-payment-card #payment .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .ws-ck-payment-card #payment .shop_table.woocommerce-checkout-review-order-table { display: none !important; }

/* Save card checkbox */
body.woocommerce-checkout .ws-ck-payment-card .woocommerce-SavedPaymentMethods-saveNew,
body.woocommerce-checkout .ws-ck-payment-card #payment .woocommerce-form__label-for-checkbox { font-size: 13px !important; color: #6b7280 !important; margin-top: 10px !important; }

/* Privacy + terms text inside payment */
body.woocommerce-checkout .ws-ck-payment-card .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-ck-payment-card .woocommerce-terms-and-conditions-wrapper {
  font-size: 11px !important; color: #9ca3af !important; line-height: 1.55 !important; margin: 12px 0 10px !important;
}
body.woocommerce-checkout .ws-ck-payment-card .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-ck-payment-card .woocommerce-terms-and-conditions-wrapper a { color: #4f46e5 !important; font-weight: 600 !important; }

body.woocommerce-checkout .ws-ck-payment-card .woocommerce-form__label-for-checkbox.checkbox {
  font-size: 12px !important; color: #6b7280 !important; margin-bottom: 12px !important;
  display: flex !important; gap: 8px !important; align-items: flex-start !important;
}
body.woocommerce-checkout .ws-ck-payment-card .place-order { padding: 0 !important; margin: 0 !important; }

/* Place order button */
body.woocommerce-checkout .ws-ck-payment-card #place_order,
body.woocommerce-checkout .ws-ck-payment-card button[type="submit"] {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; min-height: 52px !important;
  border: none !important; border-radius: 10px !important;
  background: #4f46e5 !important; color: #fff !important;
  font-size: 16px !important; font-weight: 700 !important; letter-spacing: -.01em !important;
  cursor: pointer !important; box-shadow: 0 4px 14px rgba(79,70,229,.38) !important;
  transition: background .15s, transform .12s, box-shadow .15s !important; margin-top: 4px !important;
}
body.woocommerce-checkout .ws-ck-payment-card #place_order:hover,
body.woocommerce-checkout .ws-ck-payment-card button[type="submit"]:hover {
  background: #4338ca !important; transform: translateY(-1px) !important; box-shadow: 0 6px 20px rgba(79,70,229,.48) !important;
}

/* ── Right column ─────────────────────────────────────────── */
body.woocommerce-checkout .ws-ck-right {
  position: sticky !important;
  top: calc(var(--ws-header-h, 72px) + 16px) !important;
  background: #fff !important;
  border: 1px solid #e4e7ec !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

/* Product row */
body.woocommerce-checkout .ws-ck-product {
  display: flex !important; align-items: center !important; gap: 12px !important;
  padding: 16px 18px !important; border-bottom: 1px solid #f3f4f6 !important; background: #fafbff !important;
}
body.woocommerce-checkout .ws-ck-product-icon {
  width: 38px !important; height: 38px !important; border-radius: 9px !important;
  background: #4f46e5 !important; color: #fff !important;
  font-size: 11px !important; font-weight: 800 !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important; box-shadow: 0 3px 8px rgba(79,70,229,.28) !important;
}
body.woocommerce-checkout .ws-ck-product-info { flex: 1 !important; min-width: 0 !important; }
body.woocommerce-checkout .ws-ck-product-info strong { display: block !important; font-size: 13px !important; font-weight: 700 !important; color: #111827 !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.woocommerce-checkout .ws-ck-product-info small { font-size: 11px !important; color: #9ca3af !important; }
body.woocommerce-checkout .ws-ck-tag { flex-shrink: 0 !important; padding: 3px 8px !important; border-radius: 999px !important; background: #eef2ff !important; color: #4f46e5 !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: .05em !important; text-transform: uppercase !important; white-space: nowrap !important; }

/* Totals table */
body.woocommerce-checkout .ws-ck-totals { padding: 4px 18px 16px !important; }
body.woocommerce-checkout .ws-ck-totals .woocommerce-checkout-review-order-table { width: 100% !important; border-collapse: collapse !important; }
body.woocommerce-checkout .ws-ck-totals .woocommerce-checkout-review-order-table thead { display: none !important; }
body.woocommerce-checkout .ws-ck-totals .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-ck-totals .woocommerce-checkout-review-order-table td { padding: 11px 0 !important; border: none !important; border-bottom: 1px solid #f3f4f6 !important; font-size: 13px !important; color: #374151 !important; background: transparent !important; vertical-align: middle !important; }
body.woocommerce-checkout .ws-ck-totals .woocommerce-checkout-review-order-table td { text-align: right !important; }
body.woocommerce-checkout .ws-ck-totals .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-ck-totals .woocommerce-checkout-review-order-table .order-total td { font-size: 17px !important; font-weight: 800 !important; color: #111827 !important; border-bottom: none !important; padding: 14px 0 4px !important; }
body.woocommerce-checkout .ws-ck-totals .amount, body.woocommerce-checkout .ws-ck-totals bdi { color: inherit !important; }

/* Trust row */
body.woocommerce-checkout .ws-ck-trust {
  display: flex !important; align-items: center !important; justify-content: center !important;
  gap: 14px !important; padding: 12px 18px !important;
  border-top: 1px solid #f3f4f6 !important; background: #fafafa !important; flex-wrap: wrap !important;
}
body.woocommerce-checkout .ws-ck-trust span { display: flex !important; align-items: center !important; gap: 4px !important; font-size: 11px !important; font-weight: 500 !important; color: #9ca3af !important; white-space: nowrap !important; }

/* Notices */
body.woocommerce-checkout .ws-ck-form .woocommerce-error,
body.woocommerce-checkout .ws-ck-form .woocommerce-message,
body.woocommerce-checkout .ws-ck-form .woocommerce-info,
body.woocommerce-checkout .ws-ck-form .woocommerce-NoticeGroup { margin-bottom: 16px !important; border-radius: 10px !important; font-size: 13px !important; }

/* Footer always visible */
body.woocommerce-checkout .ws-site-footer { display: block !important; visibility: visible !important; opacity: 1 !important; }

/* Responsive */
@media (max-width: 820px) {
  body.woocommerce-checkout .ws-ck-wrap { grid-template-columns: 1fr !important; }
  body.woocommerce-checkout .ws-ck-right { position: static !important; order: -1 !important; }
}
@media (max-width: 480px) {
  body.woocommerce-checkout .ws-container { padding: 16px 12px 40px !important; }
  body.woocommerce-checkout .ws-ck-card { padding: 16px !important; }
}


/* ============================================================
   v3.5.152 — Checkout fixes
   1. Hide express checkout block when empty (no GPay/ApplePay)
   2. Fix payment iframe empty space (remove forced min-height)
   3. Fix WP admin bar search field overlap on checkout
   ============================================================ */

/* ── Fix 1: Hide express checkout card when no buttons render ─ */
body.woocommerce-checkout .ws-ck-express:not(:has(*:not(.ws-ck-label):not(.ws-ck-or))) {
  display: none !important;
}
/* Broader fallback: hide if the express button wrapper has no children */
body.woocommerce-checkout .ws-ck-express .ws-ck-or:first-of-type:last-of-type {
  display: none !important;
}
/* Hide the entire express card if WooPayments reports no express methods */
body.woocommerce-checkout .ws-ck-express:empty { display: none !important; }

/* JS-based hide: add ws-ck-no-express class via inline JS below */
body.woocommerce-checkout .ws-ck-express.ws-ck-hidden { display: none !important; }

/* ── Fix 2: Remove forced min-height on payment iframe ──────── */
/* Let the Stripe iframe size itself naturally */
body.woocommerce-checkout .ws-ck-payment-card #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-ck-payment-card #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-ck-payment-card #payment .StripeElement,
body.woocommerce-checkout .ws-ck-payment-card #payment .__PrivateStripeElement {
  min-height: 0 !important;
  height: auto !important;
}
body.woocommerce-checkout .ws-ck-payment-card #payment iframe[title="Secure payment input frame"],
body.woocommerce-checkout .ws-ck-payment-card #payment iframe {
  min-height: 0 !important;
  height: auto !important;
}
/* The wcpay-upe-form wrapper — no forced height */
body.woocommerce-checkout .ws-ck-payment-card #payment .wcpay-upe-form {
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
}
/* Payment box that wraps the iframe — no padding/margin creating space */
body.woocommerce-checkout .ws-ck-payment-card #payment div.payment_box {
  padding: 0 !important;
  margin: 0 !important;
  min-height: 0 !important;
}



/* ============================================================
   v3.5.153 — Fix card fields hidden + WP admin bar search
   ============================================================ */

/* ── Fix 1: Restore Stripe iframe proper height ─────────────
   v3.5.152 wrongly set min-height:0 which collapsed the fields.
   Restore min-height so WooPayments iframe is fully visible.   */
body.woocommerce-checkout .ws-ck-payment-card #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-ck-payment-card #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-ck-payment-card #payment .StripeElement,
body.woocommerce-checkout .ws-ck-payment-card #payment .__PrivateStripeElement {
  display: block !important;
  width: 100% !important;
  min-height: 180px !important;
  height: auto !important;
  overflow: visible !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
body.woocommerce-checkout .ws-ck-payment-card #payment iframe[title="Secure payment input frame"] {
  display: block !important;
  width: 100% !important;
  min-height: 180px !important;
  height: auto !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}
/* Generic iframes inside payment — let them size naturally */
body.woocommerce-checkout .ws-ck-payment-card #payment iframe:not([title]) {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  border: none !important;
  box-shadow: none !important;
}
body.woocommerce-checkout .ws-ck-payment-card #payment .wcpay-upe-form {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
}



/* ============================================================
   v3.5.155 — ONE white card, 50/50 checkout like image 2
   Left = contact + payment. Right = summary + button.
   ============================================================ */

body.woocommerce-checkout .ws-page { background: #f0f2f5 !important; padding: 0 !important; }
body.woocommerce-checkout .ws-container { max-width: 1080px !important; padding: 40px 20px 64px !important; }
body.woocommerce-checkout .ws-one-form { width: 100% !important; }

/* THE one card */
body.woocommerce-checkout .ws-one-card {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  min-height: 600px !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 32px rgba(0,0,0,0.10), 0 1px 4px rgba(0,0,0,0.06) !important;
}

/* ── LEFT PANEL ───────────────────────────────────────────── */
body.woocommerce-checkout .ws-one-left {
  padding: 40px 36px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
  border-right: 1px solid #f0f0f0 !important;
  overflow-y: auto !important;
}

/* Section title */
body.woocommerce-checkout .ws-one-section-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: #6b7280 !important;
  margin: 0 0 14px !important;
}

/* Express checkout */
body.woocommerce-checkout .ws-one-express { width: 100% !important; }
body.woocommerce-checkout .ws-one-express > * { width: 100% !important; }
body.woocommerce-checkout .ws-one-divider {
  display: flex !important; align-items: center !important; gap: 10px !important;
  margin: 14px 0 0 !important; font-size: 12px !important; color: #9ca3af !important;
}
body.woocommerce-checkout .ws-one-divider::before,
body.woocommerce-checkout .ws-one-divider::after { content:"" !important; flex:1 !important; height:1px !important; background:#e5e7eb !important; }
body.woocommerce-checkout .ws-one-divider span { padding: 0 8px !important; }

/* Contact fields */
body.woocommerce-checkout .ws-one-fields .woocommerce-billing-fields__field-wrapper { display: grid !important; gap: 12px !important; }
body.woocommerce-checkout .ws-one-fields .form-row { margin: 0 !important; padding: 0 !important; float: none !important; width: 100% !important; }
body.woocommerce-checkout .ws-one-fields .form-row label { display: block !important; font-size: 12px !important; font-weight: 600 !important; color: #374151 !important; margin-bottom: 5px !important; }
body.woocommerce-checkout .ws-one-fields input[type=text],
body.woocommerce-checkout .ws-one-fields input[type=email],
body.woocommerce-checkout .ws-one-fields input[type=tel],
body.woocommerce-checkout .ws-one-fields select,
body.woocommerce-checkout .ws-one-fields .select2-container--default .select2-selection--single {
  width: 100% !important; height: 46px !important; min-height: 46px !important;
  padding: 0 14px !important; border: 1.5px solid #e5e7eb !important; border-radius: 10px !important;
  background: #fff !important; color: #111827 !important; font-size: 14px !important;
  box-shadow: none !important; -webkit-appearance: none !important; appearance: none !important;
  transition: border-color .15s, box-shadow .15s !important;
}
body.woocommerce-checkout .ws-one-fields input:focus,
body.woocommerce-checkout .ws-one-fields select:focus,
body.woocommerce-checkout .ws-one-fields .select2-container--default.select2-container--open .select2-selection--single {
  border-color: #4f46e5 !important; box-shadow: 0 0 0 3px rgba(79,70,229,.10) !important; outline: none !important;
}

/* ── Payment section ──────────────────────────────────────── */
/* Strip ALL WooPayments wrapper borders */
body.woocommerce-checkout .ws-one-payment #payment,
body.woocommerce-checkout .ws-one-payment #payment ul.payment_methods,
body.woocommerce-checkout .ws-one-payment #payment ul.payment_methods li,
body.woocommerce-checkout .ws-one-payment #payment div.payment_box,
body.woocommerce-checkout .ws-one-payment #payment .payment_box,
body.woocommerce-checkout .ws-one-payment #payment fieldset,
body.woocommerce-checkout .ws-one-payment #payment fieldset.wc-payment-form,
body.woocommerce-checkout .ws-one-payment #payment .wcpay-upe-form,
body.woocommerce-checkout .ws-one-payment #payment .wc-payment-form,
body.woocommerce-checkout .ws-one-payment #payment [data-payment-method-type] {
  background: transparent !important; border: none !important; border-width: 0 !important;
  border-style: none !important; border-color: transparent !important;
  outline: none !important; box-shadow: none !important; padding: 0 !important;
  margin: 0 !important; min-inline-size: 0 !important;
  -webkit-appearance: none !important; appearance: none !important;
}
body.woocommerce-checkout .ws-one-payment #payment div.payment_box::before,
body.woocommerce-checkout .ws-one-payment #payment div.payment_box::after,
body.woocommerce-checkout .ws-one-payment #payment fieldset::before,
body.woocommerce-checkout .ws-one-payment #payment fieldset::after { display: none !important; content: none !important; }
body.woocommerce-checkout .ws-one-payment #payment input[type="radio"] { display: none !important; }

/* Card label row */
body.woocommerce-checkout .ws-one-payment #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-one-payment #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-one-payment #payment .payment_method_stripe > label {
  display: flex !important; align-items: center !important; gap: 8px !important;
  font-size: 12px !important; font-weight: 600 !important; color: #374151 !important;
  margin-bottom: 12px !important; cursor: default !important;
}

/* WooPayments Stripe iframe — proper height */
body.woocommerce-checkout .ws-one-payment #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-one-payment #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-one-payment #payment .StripeElement,
body.woocommerce-checkout .ws-one-payment #payment .__PrivateStripeElement {
  display: block !important; width: 100% !important;
  min-height: 180px !important; height: auto !important;
  overflow: visible !important; border: none !important; outline: none !important; box-shadow: none !important; background: transparent !important;
}
body.woocommerce-checkout .ws-one-payment #payment iframe[title="Secure payment input frame"] {
  display: block !important; width: 100% !important;
  min-height: 180px !important; height: auto !important;
  border: none !important; outline: none !important; box-shadow: none !important;
}
body.woocommerce-checkout .ws-one-payment #payment iframe:not([title]) {
  display: block !important; width: 100% !important; min-height: 0 !important; height: auto !important; border: none !important;
}

/* Hide review order table inside #payment (shown in right column) */
body.woocommerce-checkout .ws-one-payment #payment .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .ws-one-payment #payment table.shop_table { display: none !important; }

/* Save card checkbox */
body.woocommerce-checkout .ws-one-payment .woocommerce-SavedPaymentMethods-saveNew,
body.woocommerce-checkout .ws-one-payment #payment .woocommerce-form__label-for-checkbox { font-size: 13px !important; color: #6b7280 !important; margin-top: 10px !important; }

/* Privacy + terms */
body.woocommerce-checkout .ws-one-payment .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-one-payment .woocommerce-terms-and-conditions-wrapper {
  font-size: 11px !important; color: #9ca3af !important; line-height: 1.55 !important; margin: 12px 0 10px !important;
}
body.woocommerce-checkout .ws-one-payment .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-one-payment .woocommerce-terms-and-conditions-wrapper a { color: #4f46e5 !important; font-weight: 600 !important; }
body.woocommerce-checkout .ws-one-payment .woocommerce-form__label-for-checkbox.checkbox {
  font-size: 12px !important; color: #6b7280 !important; margin-bottom: 12px !important;
  display: flex !important; gap: 8px !important; align-items: flex-start !important;
}
body.woocommerce-checkout .ws-one-payment .place-order { padding: 0 !important; margin: 0 !important; }

/* Place order button */
body.woocommerce-checkout .ws-one-payment #place_order,
body.woocommerce-checkout .ws-one-payment button[type="submit"] {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; min-height: 52px !important;
  border: none !important; border-radius: 10px !important;
  background: #4f46e5 !important; color: #fff !important;
  font-size: 16px !important; font-weight: 700 !important; letter-spacing: -.01em !important;
  cursor: pointer !important; box-shadow: 0 4px 14px rgba(79,70,229,.38) !important;
  transition: background .15s, transform .12s, box-shadow .15s !important; margin-top: 4px !important;
}
body.woocommerce-checkout .ws-one-payment #place_order:hover,
body.woocommerce-checkout .ws-one-payment button[type="submit"]:hover {
  background: #4338ca !important; transform: translateY(-1px) !important; box-shadow: 0 6px 20px rgba(79,70,229,.48) !important;
}

/* ── RIGHT PANEL ──────────────────────────────────────────── */
body.woocommerce-checkout .ws-one-right {
  padding: 40px 36px !important;
  background: #fafbff !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

/* Product row */
body.woocommerce-checkout .ws-one-product {
  display: flex !important; align-items: center !important; gap: 14px !important;
  padding-bottom: 24px !important; margin-bottom: 20px !important;
  border-bottom: 1px solid #eee !important;
}
body.woocommerce-checkout .ws-one-product-icon {
  width: 44px !important; height: 44px !important; border-radius: 12px !important;
  background: #4f46e5 !important; color: #fff !important; font-size: 12px !important; font-weight: 800 !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important; box-shadow: 0 4px 12px rgba(79,70,229,.30) !important;
}
body.woocommerce-checkout .ws-one-product-info { flex: 1 !important; min-width: 0 !important; }
body.woocommerce-checkout .ws-one-product-info strong { display: block !important; font-size: 14px !important; font-weight: 700 !important; color: #111827 !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.woocommerce-checkout .ws-one-product-info small { font-size: 12px !important; color: #9ca3af !important; }
body.woocommerce-checkout .ws-one-tag { flex-shrink: 0 !important; padding: 4px 10px !important; border-radius: 999px !important; background: #eef2ff !important; color: #4f46e5 !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: .05em !important; text-transform: uppercase !important; white-space: nowrap !important; }

/* Totals table */
body.woocommerce-checkout .ws-one-totals { flex: 1 !important; }
body.woocommerce-checkout .ws-one-totals .woocommerce-checkout-review-order-table { width: 100% !important; border-collapse: collapse !important; }
body.woocommerce-checkout .ws-one-totals .woocommerce-checkout-review-order-table thead { display: none !important; }
body.woocommerce-checkout .ws-one-totals .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-one-totals .woocommerce-checkout-review-order-table td { padding: 12px 0 !important; border: none !important; border-bottom: 1px solid #f0f0f0 !important; font-size: 14px !important; color: #374151 !important; background: transparent !important; vertical-align: middle !important; }
body.woocommerce-checkout .ws-one-totals .woocommerce-checkout-review-order-table td { text-align: right !important; }
body.woocommerce-checkout .ws-one-totals .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-one-totals .woocommerce-checkout-review-order-table .order-total td { font-size: 20px !important; font-weight: 800 !important; color: #111827 !important; border-bottom: none !important; padding: 18px 0 20px !important; }
body.woocommerce-checkout .ws-one-totals .amount, body.woocommerce-checkout .ws-one-totals bdi { color: inherit !important; }

/* Trust row */
body.woocommerce-checkout .ws-one-trust {
  display: flex !important; align-items: center !important; justify-content: center !important;
  gap: 16px !important; padding-top: 20px !important;
  border-top: 1px solid #f0f0f0 !important; flex-wrap: wrap !important; margin-top: auto !important;
}
body.woocommerce-checkout .ws-one-trust span { display: flex !important; align-items: center !important; gap: 5px !important; font-size: 11px !important; font-weight: 500 !important; color: #9ca3af !important; white-space: nowrap !important; }

/* Notices */
body.woocommerce-checkout .ws-one-form .woocommerce-error,
body.woocommerce-checkout .ws-one-form .woocommerce-message,
body.woocommerce-checkout .ws-one-form .woocommerce-info,
body.woocommerce-checkout .ws-one-form .woocommerce-NoticeGroup { margin-bottom: 20px !important; border-radius: 10px !important; font-size: 13px !important; }

/* Footer */
body.woocommerce-checkout .ws-site-footer { display: block !important; visibility: visible !important; opacity: 1 !important; }

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 860px) {
  body.woocommerce-checkout .ws-one-card { grid-template-columns: 1fr !important; }
  body.woocommerce-checkout .ws-one-right {
    border-right: none !important;
    border-bottom: 1px solid #f0f0f0 !important;
    order: -1 !important; /* Summary on top on mobile */
    padding: 28px 24px !important;
  }
  body.woocommerce-checkout .ws-one-left { border-right: none !important; padding: 28px 24px !important; }
}
@media (max-width: 480px) {
  body.woocommerce-checkout .ws-container { padding: 16px 12px 40px !important; }
  body.woocommerce-checkout .ws-one-left,
  body.woocommerce-checkout .ws-one-right { padding: 22px 18px !important; }
}


/* ============================================================
   v3.5.156 — Compact balanced checkout
   Left = contact details. Right = summary + payment + button.
   One card, 50/50, no empty space.
   ============================================================ */

body.woocommerce-checkout .ws-page { background: #f0f2f5 !important; padding: 0 !important; }
body.woocommerce-checkout .ws-container { max-width: 960px !important; padding: 36px 20px 60px !important; }
body.woocommerce-checkout .ws-v2-form { width: 100% !important; }

/* One card */
body.woocommerce-checkout .ws-v2-card {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  background: #fff !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 32px rgba(0,0,0,0.09), 0 1px 4px rgba(0,0,0,0.05) !important;
}

/* ── LEFT ─────────────────────────────────────────────────── */
body.woocommerce-checkout .ws-v2-left {
  padding: 36px 32px !important;
  border-right: 1px solid #f0f0f0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

/* Section label */
body.woocommerce-checkout .ws-v2-label {
  font-size: 11px !important; font-weight: 700 !important; letter-spacing: .09em !important;
  text-transform: uppercase !important; color: #6b7280 !important; margin: 0 !important;
}

/* Express */
body.woocommerce-checkout .ws-v2-express > * { width: 100% !important; }
body.woocommerce-checkout .ws-v2-divider {
  display: flex !important; align-items: center !important; gap: 10px !important;
  margin-top: 12px !important; font-size: 12px !important; color: #9ca3af !important;
}
body.woocommerce-checkout .ws-v2-divider::before,
body.woocommerce-checkout .ws-v2-divider::after { content:"" !important; flex:1 !important; height:1px !important; background:#e5e7eb !important; }
body.woocommerce-checkout .ws-v2-divider span { padding:0 8px !important; }

/* Contact fields */
body.woocommerce-checkout .ws-v2-fields .woocommerce-billing-fields__field-wrapper { display: grid !important; gap: 12px !important; }
body.woocommerce-checkout .ws-v2-fields .form-row { margin: 0 !important; padding: 0 !important; float: none !important; width: 100% !important; }
body.woocommerce-checkout .ws-v2-fields .form-row label { display: block !important; font-size: 12px !important; font-weight: 600 !important; color: #374151 !important; margin-bottom: 5px !important; }
body.woocommerce-checkout .ws-v2-fields input[type=text],
body.woocommerce-checkout .ws-v2-fields input[type=email],
body.woocommerce-checkout .ws-v2-fields input[type=tel],
body.woocommerce-checkout .ws-v2-fields select,
body.woocommerce-checkout .ws-v2-fields .select2-container--default .select2-selection--single {
  width: 100% !important; height: 44px !important; min-height: 44px !important;
  padding: 0 13px !important; border: 1.5px solid #e5e7eb !important; border-radius: 10px !important;
  background: #fafafa !important; color: #111827 !important; font-size: 14px !important;
  box-shadow: none !important; -webkit-appearance: none !important; appearance: none !important;
  transition: border-color .15s, box-shadow .15s !important;
}
body.woocommerce-checkout .ws-v2-fields input:focus,
body.woocommerce-checkout .ws-v2-fields select:focus {
  border-color: #4f46e5 !important; box-shadow: 0 0 0 3px rgba(79,70,229,.09) !important;
  outline: none !important; background: #fff !important;
}

/* ── RIGHT ────────────────────────────────────────────────── */
body.woocommerce-checkout .ws-v2-right {
  padding: 36px 32px !important;
  background: #fafbff !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
}

/* Product row */
body.woocommerce-checkout .ws-v2-product {
  display: flex !important; align-items: center !important; gap: 12px !important;
  padding-bottom: 18px !important; margin-bottom: 16px !important; border-bottom: 1px solid #ebebeb !important;
}
body.woocommerce-checkout .ws-v2-icon {
  width: 40px !important; height: 40px !important; border-radius: 10px !important;
  background: #4f46e5 !important; color: #fff !important; font-size: 11px !important; font-weight: 800 !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important; box-shadow: 0 3px 10px rgba(79,70,229,.28) !important;
}
body.woocommerce-checkout .ws-v2-product-info { flex: 1 !important; min-width: 0 !important; }
body.woocommerce-checkout .ws-v2-product-info strong { display: block !important; font-size: 13px !important; font-weight: 700 !important; color: #111827 !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.woocommerce-checkout .ws-v2-product-info small { font-size: 11px !important; color: #9ca3af !important; }
body.woocommerce-checkout .ws-v2-tag { flex-shrink: 0 !important; padding: 3px 8px !important; border-radius: 999px !important; background: #eef2ff !important; color: #4f46e5 !important; font-size: 10px !important; font-weight: 700 !important; letter-spacing: .05em !important; text-transform: uppercase !important; }

/* Totals table */
body.woocommerce-checkout .ws-v2-totals { margin-bottom: 20px !important; }
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table { width: 100% !important; border-collapse: collapse !important; }
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table thead { display: none !important; }
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table td { padding: 10px 0 !important; border: none !important; border-bottom: 1px solid #ebebeb !important; font-size: 13px !important; color: #374151 !important; background: transparent !important; vertical-align: middle !important; }
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table td { text-align: right !important; }
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table .order-total td { font-size: 18px !important; font-weight: 800 !important; color: #111827 !important; border-bottom: none !important; padding: 14px 0 10px !important; }
body.woocommerce-checkout .ws-v2-totals .amount, body.woocommerce-checkout .ws-v2-totals bdi { color: inherit !important; }

/* Payment section divider */
body.woocommerce-checkout .ws-v2-pay-section {
  padding-top: 18px !important;
  border-top: 1px solid #ebebeb !important;
}
body.woocommerce-checkout .ws-v2-pay-section > .ws-v2-label { margin-bottom: 14px !important; }

/* Strip WooPayments borders */
body.woocommerce-checkout .ws-v2-payment #payment,
body.woocommerce-checkout .ws-v2-payment #payment ul.payment_methods,
body.woocommerce-checkout .ws-v2-payment #payment ul.payment_methods li,
body.woocommerce-checkout .ws-v2-payment #payment div.payment_box,
body.woocommerce-checkout .ws-v2-payment #payment .payment_box,
body.woocommerce-checkout .ws-v2-payment #payment fieldset,
body.woocommerce-checkout .ws-v2-payment #payment fieldset.wc-payment-form,
body.woocommerce-checkout .ws-v2-payment #payment .wcpay-upe-form,
body.woocommerce-checkout .ws-v2-payment #payment .wc-payment-form,
body.woocommerce-checkout .ws-v2-payment #payment [data-payment-method-type] {
  background: transparent !important; border: none !important; border-width: 0 !important;
  border-style: none !important; border-color: transparent !important;
  outline: none !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important;
  min-inline-size: 0 !important; -webkit-appearance: none !important; appearance: none !important;
}
body.woocommerce-checkout .ws-v2-payment #payment div.payment_box::before,
body.woocommerce-checkout .ws-v2-payment #payment div.payment_box::after,
body.woocommerce-checkout .ws-v2-payment #payment fieldset::before,
body.woocommerce-checkout .ws-v2-payment #payment fieldset::after { display: none !important; content: none !important; }
body.woocommerce-checkout .ws-v2-payment #payment input[type="radio"] { display: none !important; }

/* Card label */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label {
  display: flex !important; align-items: center !important; gap: 8px !important;
  font-size: 12px !important; font-weight: 600 !important; color: #374151 !important;
  margin-bottom: 10px !important; cursor: default !important;
}

/* Stripe iframe */
body.woocommerce-checkout .ws-v2-payment #payment .wcpay-upe-element,
body.woocommerce-checkout .ws-v2-payment #payment .wc-stripe-elements-field,
body.woocommerce-checkout .ws-v2-payment #payment .StripeElement,
body.woocommerce-checkout .ws-v2-payment #payment .__PrivateStripeElement {
  display: block !important; width: 100% !important; min-height: 180px !important;
  height: auto !important; overflow: visible !important;
  border: none !important; outline: none !important; box-shadow: none !important; background: transparent !important;
}
body.woocommerce-checkout .ws-v2-payment #payment iframe[title="Secure payment input frame"] {
  display: block !important; width: 100% !important; min-height: 180px !important;
  height: auto !important; border: none !important; outline: none !important; box-shadow: none !important;
}
body.woocommerce-checkout .ws-v2-payment #payment iframe:not([title]) {
  display: block !important; width: 100% !important; min-height: 0 !important; height: auto !important; border: none !important;
}

/* Hide order table inside #payment */
body.woocommerce-checkout .ws-v2-payment #payment .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .ws-v2-payment #payment table.shop_table { display: none !important; }

/* Save card */
body.woocommerce-checkout .ws-v2-payment .woocommerce-SavedPaymentMethods-saveNew,
body.woocommerce-checkout .ws-v2-payment #payment .woocommerce-form__label-for-checkbox { font-size: 12px !important; color: #6b7280 !important; margin-top: 8px !important; }

/* Privacy + terms */
body.woocommerce-checkout .ws-v2-payment .woocommerce-privacy-policy-text,
body.woocommerce-checkout .ws-v2-payment .woocommerce-terms-and-conditions-wrapper { font-size: 11px !important; color: #9ca3af !important; line-height: 1.5 !important; margin: 10px 0 8px !important; }
body.woocommerce-checkout .ws-v2-payment .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .ws-v2-payment .woocommerce-terms-and-conditions-wrapper a { color: #4f46e5 !important; font-weight: 600 !important; }
body.woocommerce-checkout .ws-v2-payment .woocommerce-form__label-for-checkbox.checkbox { font-size: 12px !important; color: #6b7280 !important; margin-bottom: 10px !important; display: flex !important; gap: 7px !important; align-items: flex-start !important; }
body.woocommerce-checkout .ws-v2-payment .place-order { padding: 0 !important; margin: 0 !important; }

/* Place order button */
body.woocommerce-checkout .ws-v2-payment #place_order,
body.woocommerce-checkout .ws-v2-payment button[type="submit"] {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; min-height: 50px !important;
  border: none !important; border-radius: 10px !important;
  background: #4f46e5 !important; color: #fff !important;
  font-size: 15px !important; font-weight: 700 !important; letter-spacing: -.01em !important;
  cursor: pointer !important; box-shadow: 0 4px 12px rgba(79,70,229,.35) !important;
  transition: background .15s, transform .12s, box-shadow .15s !important; margin-top: 4px !important;
}
body.woocommerce-checkout .ws-v2-payment #place_order:hover,
body.woocommerce-checkout .ws-v2-payment button[type="submit"]:hover {
  background: #4338ca !important; transform: translateY(-1px) !important; box-shadow: 0 6px 18px rgba(79,70,229,.45) !important;
}

/* Trust row */
body.woocommerce-checkout .ws-v2-trust {
  display: flex !important; align-items: center !important; justify-content: center !important;
  gap: 14px !important; margin-top: 16px !important; padding-top: 14px !important;
  border-top: 1px solid #ebebeb !important; flex-wrap: wrap !important;
}
body.woocommerce-checkout .ws-v2-trust span { display: flex !important; align-items: center !important; gap: 4px !important; font-size: 11px !important; font-weight: 500 !important; color: #9ca3af !important; white-space: nowrap !important; }

/* Notices */
body.woocommerce-checkout .ws-v2-form .woocommerce-error,
body.woocommerce-checkout .ws-v2-form .woocommerce-message,
body.woocommerce-checkout .ws-v2-form .woocommerce-info,
body.woocommerce-checkout .ws-v2-form .woocommerce-NoticeGroup { margin-bottom: 16px !important; border-radius: 10px !important; font-size: 13px !important; }

/* Footer */
body.woocommerce-checkout .ws-site-footer { display: block !important; visibility: visible !important; opacity: 1 !important; }

/* Responsive */
@media (max-width: 800px) {
  body.woocommerce-checkout .ws-v2-card { grid-template-columns: 1fr !important; }
  body.woocommerce-checkout .ws-v2-right { order: -1 !important; border-right: none !important; border-bottom: 1px solid #f0f0f0 !important; padding: 24px 22px !important; }
  body.woocommerce-checkout .ws-v2-left { border-right: none !important; padding: 24px 22px !important; }
}
@media (max-width: 480px) {
  body.woocommerce-checkout .ws-container { padding: 14px 12px 36px !important; }
}


/* ============================================================
   v3.5.157 — Modern card brand icons row in payment section
   ============================================================ */

/* Hide the plain "Card" text label */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label > span:first-child,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label > span:first-child,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label > span:first-child {
  display: none !important;
}

/* Label becomes a flex row of pill-style brand chips */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
  padding: 10px 14px !important;
  background: #f8f9ff !important;
  border: 1.5px solid #e8eaff !important;
  border-radius: 12px !important;
  margin-bottom: 16px !important;
}

/* Each card brand image — clean modern pill */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label img,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label img,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label img {
  height: 22px !important;
  width: auto !important;
  border-radius: 5px !important;
  padding: 3px 6px !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.07) !important;
  margin: 0 !important;
  object-fit: contain !important;
  transition: transform .15s, box-shadow .15s !important;
}
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label img:hover,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label img:hover,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label img:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 3px 8px rgba(0,0,0,0.12) !important;
}

/* The "+ 3" more badge */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label .wc-payment-icon-more,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label .wc-payment-icon-more,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label .wc-payment-icon-more {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 28px !important;
  padding: 0 10px !important;
  border-radius: 6px !important;
  background: #eef2ff !important;
  color: #4f46e5 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
  border: 1px solid #ddd6fe !important;
}

/* "Secured by" text that WooPayments sometimes appends */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label .wc-payment-icon-title,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label .wc-payment-icon-title {
  margin-left: auto !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  color: #9ca3af !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}


/* ============================================================
   v3.5.161 — Full mobile checkout fix
   Issues fixed:
   1. "Card" text still showing — nuke all text nodes in label
   2. Place order button hidden behind browser bottom bar
   3. Better mobile padding and spacing
   4. Contact section shows first on mobile (already done via order:-1 on right)
   5. Card brand row compact on small screens
   6. Stripe iframe proper height on mobile
   ============================================================ */

/* ── Fix 1: Hide "Card" text — all possible selectors ───────
   WooPayments renders the text differently depending on version */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label {
  font-size: 0 !important; /* Hides raw text nodes */
  color: transparent !important;
}
/* Restore font-size for child elements (images, badges) */
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label *,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label *,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label * {
  font-size: 11px !important;
  color: initial !important;
}
body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label img,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label img,
body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label img {
  font-size: 0 !important;
}

/* ── Fix 2: Mobile-specific checkout layout ─────────────────  */
@media (max-width: 800px) {

  /* One column, no gap issues */
  body.woocommerce-checkout .ws-v2-card {
    grid-template-columns: 1fr !important;
    border-radius: 16px !important;
  }

  /* Right (summary) on top */
  body.woocommerce-checkout .ws-v2-right {
    order: -1 !important;
    padding: 22px 20px 18px !important;
    border-right: none !important;
    border-bottom: 1px solid #ebebeb !important;
  }

  /* Left (contact + payment) below */
  body.woocommerce-checkout .ws-v2-left {
    padding: 22px 20px 20px !important;
    border-right: none !important;
  }

  /* Product row more compact */
  body.woocommerce-checkout .ws-v2-product {
    padding-bottom: 14px !important;
    margin-bottom: 12px !important;
  }

  /* Totals table compact */
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table th,
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table td {
    padding: 9px 0 !important;
    font-size: 13px !important;
  }
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table .order-total th,
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table .order-total td {
    font-size: 17px !important;
    padding: 12px 0 8px !important;
  }

  /* Payment section on mobile */
  body.woocommerce-checkout .ws-v2-pay-section {
    padding-top: 16px !important;
  }

  /* Card brand row — tighter on mobile */
  body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label,
  body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label,
  body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label {
    padding: 8px 12px !important;
    gap: 5px !important;
  }
  body.woocommerce-checkout .ws-v2-payment #payment .wc_payment_method > label img,
  body.woocommerce-checkout .ws-v2-payment #payment .payment_method_woocommerce_payments > label img,
  body.woocommerce-checkout .ws-v2-payment #payment .payment_method_stripe > label img {
    height: 20px !important;
  }

  /* Stripe card fields on mobile — enough height */
  body.woocommerce-checkout .ws-v2-payment #payment .wcpay-upe-element,
  body.woocommerce-checkout .ws-v2-payment #payment .StripeElement,
  body.woocommerce-checkout .ws-v2-payment #payment .__PrivateStripeElement {
    min-height: 220px !important;
  }
  body.woocommerce-checkout .ws-v2-payment #payment iframe[title="Secure payment input frame"] {
    min-height: 220px !important;
    height: 220px !important;
  }

  /* Contact fields */
  body.woocommerce-checkout .ws-v2-fields input[type=text],
  body.woocommerce-checkout .ws-v2-fields input[type=email],
  body.woocommerce-checkout .ws-v2-fields input[type=tel],
  body.woocommerce-checkout .ws-v2-fields select {
    height: 50px !important;
    min-height: 50px !important;
    font-size: 16px !important; /* Prevents iOS zoom */
  }

  /* Trust row compact */
  body.woocommerce-checkout .ws-v2-trust { gap: 10px !important; padding-top: 12px !important; margin-top: 12px !important; }
}

/* ── Fix 3: Extra small screens (iPhone SE etc) ─────────────  */
@media (max-width: 480px) {
  body.woocommerce-checkout .ws-container {
    padding: 12px 10px 120px !important; /* 120px bottom = clears browser chrome */
  }
  body.woocommerce-checkout .ws-v2-card {
    border-radius: 14px !important;
  }
  body.woocommerce-checkout .ws-v2-left,
  body.woocommerce-checkout .ws-v2-right {
    padding: 18px 16px !important;
  }
  /* Place order button — sticky at bottom on mobile */
  body.woocommerce-checkout .ws-v2-payment .place-order {
    position: sticky !important;
    bottom: 16px !important;
    z-index: 10 !important;
  }
  body.woocommerce-checkout .ws-v2-payment #place_order,
  body.woocommerce-checkout .ws-v2-payment button[type="submit"] {
    box-shadow: 0 8px 24px rgba(79,70,229,.45), 0 0 0 4px rgba(255,255,255,0.9) !important;
  }
}


/* ============================================================
   v3.5.162 — Fix totals table text alignment on mobile
   Left-align all cells, right-align only the price column
   ============================================================ */
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table th {
  text-align: left !important;
}
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table td {
  text-align: right !important;
}
/* Product name cell — always left */
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table tfoot th {
  text-align: left !important;
}
/* On mobile: fix any centered text */
@media (max-width: 800px) {
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table th,
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table .product-name,
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table tfoot th {
    text-align: left !important;
  }
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table td,
  body.woocommerce-checkout .ws-v2-totals .woocommerce-checkout-review-order-table .product-total {
    text-align: right !important;
  }
  /* Product row */
  body.woocommerce-checkout .ws-v2-product {
    align-items: flex-start !important;
  }
  body.woocommerce-checkout .ws-v2-product-info strong,
  body.woocommerce-checkout .ws-v2-product-info small {
    text-align: left !important;
  }
}


/* ============================================================
   v3.5.168 — Checkout savings row
   ============================================================ */
body.woocommerce-checkout .ws-v2-savings {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 0 14px !important;
  border-top: 1px dashed #d1fae5 !important;
  margin-top: 2px !important;
}
body.woocommerce-checkout .ws-v2-savings-label {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #15803d !important;
}
body.woocommerce-checkout .ws-v2-savings-label svg {
  color: #15803d !important;
  flex-shrink: 0 !important;
}
body.woocommerce-checkout .ws-v2-savings-amount {
  font-size: 14px !important;
  font-weight: 800 !important;
  color: #15803d !important;
}
body.woocommerce-checkout .ws-v2-savings-amount .woocommerce-Price-currencySymbol,
body.woocommerce-checkout .ws-v2-savings-amount bdi {
  color: #15803d !important;
}


/* ============================================================
   v3.5.169 — Product page trust strip (replaces fake stats)
   ============================================================ */
.ws-trust-strip {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 16px !important;
  padding: 16px 0 4px !important;
}
.ws-trust-item {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  font-size: 13px !important;
  color: #374151 !important;
  white-space: nowrap !important;
}
.ws-trust-item svg {
  color: #6C47FF !important;
  flex-shrink: 0 !important;
}
.ws-trust-item strong {
  color: #0f172a !important;
  font-weight: 700 !important;
}

/* Version badge */
.ws-version-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 5px 12px !important;
  background: #f0fdf4 !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #15803d !important;
  margin-bottom: 8px !important;
}
.ws-version-dot {
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: #22c55e !important;
  flex-shrink: 0 !important;
  animation: ws-pulse 2s infinite !important;
}
@keyframes ws-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: .6; transform: scale(1.3); }
}


/* ============================================================
   v3.5.170 — Product page trust pills (scoped, no conflicts)
   ============================================================ */
body.single-product .ws-product-trust-row {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  padding: 14px 0 6px !important;
}
body.single-product .ws-ptrust-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 5px 12px !important;
  border-radius: 999px !important;
  background: var(--ws-purple-soft, #f3f0ff) !important;
  color: var(--ws-purple-dark, #4c1d95) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  border: 1px solid rgba(108,71,255,0.12) !important;
}
body.single-product .ws-ptrust-pill svg {
  opacity: .8 !important;
  flex-shrink: 0 !important;
}
body.single-product .ws-ptrust-pill--version {
  background: #f0fdf4 !important;
  color: #15803d !important;
  border-color: #bbf7d0 !important;
}
body.single-product .ws-ptrust-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #22c55e !important;
  flex-shrink: 0 !important;
  animation: ws-pulse 2s infinite !important;
}
@media (max-width: 480px) {
  body.single-product .ws-ptrust-pill { font-size: 11px !important; padding: 4px 10px !important; }
}


/* ============================================================
   v3.5.185 — Style WooCommerce Block Checkout to match theme
   No PHP overrides — pure CSS styling of native block checkout
   ============================================================ */
body.woocommerce-checkout .ws-container {
  max-width: 960px !important;
  padding: 36px 20px 60px !important;
}
/* Block checkout wrapper */
body.woocommerce-checkout .wp-block-woocommerce-checkout {
  background: #fff !important;
  border-radius: 18px !important;
  box-shadow: 0 4px 32px rgba(0,0,0,0.09) !important;
  overflow: hidden !important;
  padding: 32px !important;
}
/* Express checkout section */
body.woocommerce-checkout .wc-block-components-express-payment-event-buttons,
body.woocommerce-checkout .wc-block-components-express-payment {
  margin-bottom: 20px !important;
}
/* Input fields */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-select select {
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 10px !important;
  height: 46px !important;
  font-size: 14px !important;
}
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-select select:focus {
  border-color: #4f46e5 !important;
  box-shadow: 0 0 0 3px rgba(79,70,229,.1) !important;
  outline: none !important;
}
/* Place order button */
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-components-button.wc-block-components-checkout-place-order-button {
  background: #4f46e5 !important;
  border-radius: 10px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  height: 50px !important;
  box-shadow: 0 4px 12px rgba(79,70,229,.35) !important;
}


/* ============================================================
   v3.5.186 — Block checkout: fix country field + Place Order
   ============================================================ */

/* Country/Region — fix label overlapping value */
body.woocommerce-checkout .wc-block-components-country-input .wc-block-components-country-input__label,
body.woocommerce-checkout .wc-block-components-select__label,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox__label {
  top: 6px !important;
  font-size: 10px !important;
  transform: none !important;
  line-height: 1 !important;
}
body.woocommerce-checkout .wc-block-components-country-input input,
body.woocommerce-checkout .wc-block-components-combobox input {
  padding-top: 18px !important;
  padding-bottom: 4px !important;
}

/* Place Order button — white text, solid purple */
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button {
  background-color: #4f46e5 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  height: 52px !important;
  width: 100% !important;
  box-shadow: 0 4px 14px rgba(79,70,229,.4) !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
  background-color: #4338ca !important;
  color: #ffffff !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button span,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
  color: #ffffff !important;
}


/* ============================================================
   v3.5.187 — Hide duplicate Order Summary in block checkout
   ============================================================ */

/* The bottom order summary block is duplicate — hide it */
body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
  display: none !important;
}

/* Keep only the top sidebar/mobile order summary (the collapsible one) */
body.woocommerce-checkout .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block,
body.woocommerce-checkout .wc-block-checkout__order-summary {
  display: block !important;
}


/* ============================================================
   v3.5.188 — Fix Country/Region label overlapping value
   ============================================================ */

/* Floating label — move above when field has value */
body.woocommerce-checkout .wc-block-components-combobox,
body.woocommerce-checkout .wc-block-components-country-input,
body.woocommerce-checkout .wc-block-components-state-input {
  position: relative !important;
}

/* Hide the floating label entirely — value is self-explanatory */
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-form-token-field-wrapper label,
body.woocommerce-checkout .wc-block-components-country-input label,
body.woocommerce-checkout .wc-block-components-state-input label,
body.woocommerce-checkout .wc-block-components-combobox label {
  display: none !important;
}

/* Add placeholder-like text via the input placeholder attribute */
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-country-input input,
body.woocommerce-checkout .wc-block-components-state-input input {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  height: 46px !important;
  display: flex !important;
  align-items: center !important;
}

/* ============================================================
   v3.5.195 — Clean express buttons, no overflow clipping
   ============================================================ */

/* Add to cart matches Apple Pay height */
body.single-product .ws-add-to-cart-wrap .single_add_to_cart_button {
  height: 40px;
  min-height: 40px;
  max-height: 40px;
  border-radius: 8px;
  font-size: 14px;
}

/* Express section — divider TOP, buttons below, full visibility */
body.single-product .ws-express-section {
  margin-top: 14px;
  overflow: visible;
}

/* Auto-hide if slot is empty */
body.single-product .ws-express-section:has(.ws-express-checkout-slot--product:empty) {
  display: none;
}

/* Divider above buttons */
body.single-product .ws-express-divider {
  display: flex;
  align-items: center;
  margin: 0 0 10px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #94a3b8;
}
body.single-product .ws-express-divider span {
  padding: 0 12px;
}
body.single-product .ws-express-divider::before,
body.single-product .ws-express-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: #e2e8f0;
}

/* Express slot — full width column, no clipping */
body.single-product .ws-express-checkout-slot--product {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  overflow: visible !important;
  min-height: auto !important;
  height: auto !important;
}

/* Force all WooPayments containers inside to be visible */
body.single-product .ws-express-checkout-slot--product > *,
body.single-product .ws-express-checkout-slot--product > div,
body.single-product .ws-express-checkout-slot--product .wcpay-express-checkout-wrapper,
body.single-product .ws-express-checkout-slot--product #wcpay-express-checkout-element,
body.single-product .ws-express-checkout-slot--product #wcpay-express-checkout-button-separator {
  overflow: visible !important;
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
  display: block;
  width: 100%;
}

/* Hide WooPayments' own "Or" separator — we have our own divider */
body.single-product .ws-express-checkout-slot--product #wcpay-express-checkout-button-separator,
body.single-product .ws-express-checkout-slot--product .wcpay-payment-request-button-separator {
  display: none !important;
}

/* Empty slot - no display */
body.single-product .ws-express-checkout-slot--product:empty {
  display: none;
}


/* ============================================================
   v3.5.198 — Block checkout: fix floating labels overlapping values
   ============================================================ */

/* When input has value or is focused — move label to top */
body.woocommerce-checkout .wc-block-components-text-input.is-active label,
body.woocommerce-checkout .wc-block-components-text-input input:not(:placeholder-shown) ~ label,
body.woocommerce-checkout .wc-block-components-text-input input:focus ~ label,
body.woocommerce-checkout .wc-block-components-text-input.has-error label {
  top: 6px !important;
  font-size: 10px !important;
  line-height: 1 !important;
  transform: none !important;
  color: #94a3b8 !important;
}

/* Default label position — vertically centered */
body.woocommerce-checkout .wc-block-components-text-input label {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  left: 16px !important;
  font-size: 14px !important;
  color: #94a3b8 !important;
  pointer-events: none !important;
  transition: top 0.15s ease, font-size 0.15s ease, transform 0.15s ease !important;
  line-height: 1 !important;
  margin: 0 !important;
}

/* Input padding so typed value sits below label */
body.woocommerce-checkout .wc-block-components-text-input input {
  padding-top: 16px !important;
  padding-bottom: 4px !important;
  height: 50px !important;
}

/* Error state label — stays at top */
body.woocommerce-checkout .wc-block-components-text-input.has-error label {
  top: 6px !important;
  transform: none !important;
  font-size: 10px !important;
  color: #dc2626 !important;
}


/* ============================================================
   v3.5.199 — Billing period toggle + Plan cards (product sidebar)
   ============================================================ */

/* ── Billing toggle row ─────────────────────────────────── */
/* ============================================================
   v3.5.203 — Billing toggle + Plan cards (high-converting)
   ============================================================ */

/* ── License card wrapper ───────────────────────────────── */
.ws-license-card {
  padding: 20px !important;
  background: linear-gradient(135deg, #fafafe 0%, #fff 100%) !important;
}

/* ── Billing toggle ─────────────────────────────────────── */
.ws-billing-toggle-row {
  display: flex;
  gap: 0;
  background: #f1f5f9;
  border-radius: 999px;
  padding: 4px;
  margin-bottom: 20px;
  position: relative;
  box-shadow: inset 0 1px 4px rgba(15,23,42,.10);
  align-items: stretch;
}
.ws-billing-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 40px;          /* fixed height — both buttons identical */
  padding: 0 14px;
  border: none;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  background: transparent;
  color: #94a3b8;
  transition: background 0.18s, color 0.18s, box-shadow 0.18s;
  white-space: nowrap;
  letter-spacing: -0.01em;
  font-family: inherit;
  line-height: 1;
}
.ws-billing-btn--active {
  background: #fff;
  color: #0f172a;
  box-shadow: 0 2px 8px rgba(15,23,42,.10), 0 1px 2px rgba(15,23,42,.06);
  font-weight: 700;
}
.ws-billing-btn--monthly {
  color: #94a3b8;
  font-weight: 500;
}
.ws-billing-btn--monthly.ws-billing-btn--active {
  color: #0f172a;
  font-weight: 700;
}
/* Badge: positioned so it never changes button height */
.ws-billing-save-badge {
  display: inline-flex;
  align-items: center;
  background: #d1fae5;
  color: #065f46;
  font-size: 9px;
  font-weight: 800;
  padding: 2px 6px;
  border-radius: 999px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1;
  vertical-align: middle;
  flex-shrink: 0;
}
/* Dim badge when yearly is inactive */
.ws-billing-btn:not(.ws-billing-btn--active) .ws-billing-save-badge {
  opacity: 0.55;
}

/* ── Plan cards ─────────────────────────────────────────── */
.ws-plan-cards {
  display: grid;
  gap: 8px;
  margin-bottom: 16px;
}
.ws-plan-card {
  position: relative;
  border: 1.5px solid #e2e8f0;
  border-radius: 20px;
  padding: 14px 16px 12px;
  cursor: pointer;
  transition: all 0.18s ease;
  background: #fff;
  user-select: none;
  -webkit-user-select: none;
}
.ws-plan-card::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 24px;
  width: 3px;
  border-radius: 0 3px 3px 0;
  background: transparent;
  transition: background 0.18s;
}
.ws-plan-card:hover {
  border-color: #a5b4fc;
  box-shadow: 0 2px 12px rgba(99,102,241,.10);
  transform: translateY(-1px);
}
.ws-plan-card--selected {
  border-color: #6366f1 !important;
  background: #fafaff !important;
  box-shadow: 0 0 0 3px rgba(99,102,241,.13), 0 4px 16px rgba(99,102,241,.10) !important;
}
.ws-plan-card--selected::before {
  background: #6366f1;
}
.ws-plan-card--popular {
  border-color: #c7d2fe;
}
.ws-plan-card--popular.ws-plan-card--selected {
  background: #f5f3ff !important;
}

/* ── Most Popular badge ─────────────────────────────────── */
.ws-plan-popular-badge {
  position: absolute;
  top: -11px;
  right: 14px;
  left: auto;
  transform: none;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  padding: 3px 12px;
  border-radius: 999px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow: 0 2px 8px rgba(99,102,241,.35);
  white-space: nowrap;
}

/* ── Card layout ────────────────────────────────────────── */
.ws-plan-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.ws-plan-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}
.ws-plan-name {
  font-size: 14px;
  font-weight: 700;
  color: #0f172a;
  line-height: 1.2;
}
.ws-plan-desc {
  font-size: 11px;
  color: #94a3b8;
  line-height: 1.3;
  font-weight: 500;
}
.ws-plan-price-block {
  display: flex;
  align-items: baseline;
  gap: 2px;
  flex-shrink: 0;
  text-align: right;
}
.ws-plan-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 3px;
  line-height: 1;
}
.ws-plan-regular {
  font-size: 12px;
  color: #cbd5e1;
  text-decoration: line-through;
  font-weight: 500;
  display: none;
  align-self: baseline;
}
.ws-billing--yearly .ws-plan-regular {
  display: inline;
}
.ws-plan-currency {
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
  align-self: flex-start;
  margin-top: 3px;
}
.ws-plan-amount {
  font-size: 26px;
  font-weight: 800;
  color: #0f172a;
  letter-spacing: -0.03em;
  line-height: 1;
}
.ws-plan-period {
  font-size: 11px;
  color: #94a3b8;
  font-weight: 600;
  align-self: flex-end;
  margin-bottom: 2px;
}

/* Yearly savings note — shown only in yearly mode */
.ws-plan-yearly-note {
  display: none;
  font-size: 11px;
  color: #059669;
  font-weight: 600;
  margin-top: 6px;
  padding-left: 2px;
}
.ws-billing--yearly .ws-plan-yearly-note {
  display: block;
}

/* Radio indicator dot */
.ws-plan-card::after {
  content: '';
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid #e2e8f0;
  background: #fff;
  transition: all 0.18s;
  display: none;
}

/* ── Hidden WC form ─────────────────────────────────────── */
.ws-add-to-cart-wrap--hidden {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* ── CTA button ─────────────────────────────────────────── */
.ws-plan-cta-btn {
  width: 100%;
  height: 52px;
  background: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%);
  color: #fff;
  border: none;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  letter-spacing: -0.01em;
  box-shadow: 0 4px 16px rgba(99,102,241,.40);
  transition: all 0.18s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: 6px;
  position: relative;
  overflow: hidden;
}
.ws-plan-cta-btn::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.12) 0%, transparent 60%);
  pointer-events: none;
}
.ws-plan-cta-btn:hover:not(:disabled) {
  background: linear-gradient(135deg, #4f46e5 0%, #3730a3 100%);
  box-shadow: 0 8px 24px rgba(99,102,241,.50);
  transform: translateY(-1px);
}
.ws-plan-cta-btn:active:not(:disabled) {
  transform: translateY(0);
  box-shadow: 0 4px 12px rgba(99,102,241,.35);
}
.ws-plan-cta-btn:disabled {
  background: #e2e8f0;
  color: #94a3b8;
  box-shadow: none;
  cursor: not-allowed;
}


/* ============================================================
   v3.5.204 — Cart guarantee block + summary polish
   ============================================================ */

/* Guarantee block */
body.woocommerce-cart .ws-cart-guarantee {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: linear-gradient(135deg, #f5f3ff 0%, #ede9fe 100%);
  border: 1px solid #ddd6fe;
  border-radius: 14px;
  padding: 16px;
  margin-bottom: 22px;
}
body.woocommerce-cart .ws-cart-guarantee__icon {
  flex-shrink: 0;
  width: 42px;
  height: 42px;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 4px 12px rgba(99,102,241,.30);
}
body.woocommerce-cart .ws-cart-guarantee__body {
  flex: 1;
  min-width: 0;
}
body.woocommerce-cart .ws-cart-guarantee__body strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: #3730a3;
  margin-bottom: 4px;
  letter-spacing: -0.01em;
}
body.woocommerce-cart .ws-cart-guarantee__body p {
  font-size: 12px;
  color: #5b21b6;
  line-height: 1.55;
  margin: 0;
}
body.woocommerce-cart .ws-cart-guarantee__link {
  color: #6366f1;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
body.woocommerce-cart .ws-cart-guarantee__link:hover {
  color: #4338ca;
}

/* ── Qty input: lock to 1 (hidden) ──────────────────────── */
body.woocommerce-cart .ws-cart-line__meta--qty .quantity {
  pointer-events: none;
}
body.woocommerce-cart .ws-cart-line__meta--qty .qty {
  text-align: center;
  background: #f8fafc;
  border: 1.5px solid #e2e8f0;
  border-radius: 8px;
  font-weight: 700;
  color: #0f172a;
  width: 52px;
  height: 40px;
  font-size: 15px;
}

/* ── Refund policy page highlights ──────────────────────── */
.ws-refund-highlight {
  display: flex !important;
  gap: 20px !important;
  align-items: flex-start !important;
  background: linear-gradient(135deg, #f5f3ff, #ede9fe) !important;
  border-color: #ddd6fe !important;
}
.ws-refund-shield {
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  box-shadow: 0 4px 16px rgba(99,102,241,.30);
}
.ws-refund-highlight h2 { color: #3730a3 !important; }
.ws-refund-highlight p  { color: #4c1d95 !important; }
.ws-legal-content ol {
  padding-left: 20px;
  display: grid;
  gap: 10px;
}
.ws-legal-content ol li { font-size: 15px; line-height: 1.6; }

/* ==========================================
   v3.5.205 – Founders bar + CTA white btn
   ========================================== */

/* --- Founders pricing countdown bar --- */
.ws-founders-bar{
  position:sticky;
  top:0;
  z-index:1000;
  background:linear-gradient(90deg,#4a22e0 0%,#7c3aff 50%,#a855f7 100%);
  color:#fff;
  text-align:center;
  padding:9px 16px;
  font-size:13px;
  font-weight:500;
  letter-spacing:0.01em;
}

.ws-founders-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
}

.ws-founders-emoji{
  font-size:15px;
}

.ws-founders-clock{
  display:inline-flex;
  align-items:center;
  gap:3px;
  background:rgba(0,0,0,.22);
  border-radius:8px;
  padding:4px 10px;
  font-variant-numeric:tabular-nums;
}

.ws-clock-unit{
  display:inline-flex;
  align-items:baseline;
  gap:2px;
}

.ws-clock-num{
  font-size:15px;
  font-weight:700;
  letter-spacing:0.03em;
  min-width:22px;
  text-align:center;
}

.ws-clock-lbl{
  font-size:10px;
  opacity:.75;
  text-transform:lowercase;
}

.ws-clock-sep{
  font-size:15px;
  font-weight:700;
  opacity:.7;
  margin:0 1px;
  line-height:1;
  align-self:center;
}

.ws-founders-link{
  color:#fff;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.3);
  border-radius:6px;
  padding:4px 12px;
  font-size:12px;
  font-weight:600;
  text-decoration:none;
  white-space:nowrap;
  transition:background .18s;
}

.ws-founders-link:hover{
  background:rgba(255,255,255,.28);
  color:#fff;
}

@media(max-width:640px){
  /* Two-row layout on mobile: offer text top, clock+CTA bottom */
  .ws-founders-bar{ padding:8px 14px; }
  .ws-founders-inner{
    flex-direction:column;
    gap:6px;
    align-items:center;
  }
  /* Row 1: emoji + offer text */
  .ws-founders-text{
    display:flex !important;
    align-items:center;
    gap:5px;
    font-size:12px;
    font-weight:500;
    order:1;
  }
  .ws-founders-emoji{ font-size:13px; order:0; display:none; }
  /* Row 2: clock + CTA side by side */
  .ws-founders-clock{
    order:2;
    padding:3px 8px;
    font-size:12px;
  }
  .ws-clock-num{ font-size:13px; min-width:18px; }
  .ws-founders-link{
    order:3;
    font-size:11px;
    padding:4px 10px;
  }
  /* Group clock and link on same row */
  .ws-founders-inner{
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:center;
    gap:5px;
  }
  .ws-founders-text{ width:100%; justify-content:center; text-align:center; }
}

/* --- CTA section: white button --- */
.ws-btn-cta-white{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 26px;
  height:48px;
  border-radius:10px;
  font-size:15px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
  flex:0 0 auto;
  background:#fff;
  color:#6c47ff;
  border:2px solid #fff;
  box-shadow:0 4px 18px rgba(0,0,0,.14);
  transition:background .18s,color .18s,transform .14s;
}

.ws-btn-cta-white:hover{
  background:rgba(255,255,255,.92);
  color:#5330e0;
  transform:translateY(-1px);
}

/* ==========================================
   v3.5.206 – Compare table (div grid) + Guarantee strip
   ========================================== */

/* ---- Review card enhancements (badges + avatars) ---- */
.ws-review-card { display:flex; flex-direction:column; }
.ws-review-badge {
  display: inline-flex;
  align-items: center;
  margin-top: 14px;
  padding: 5px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  background: #edfaf3;
  color: #15803d;
  border: 1px solid #bbf7d0;
  width: fit-content;
}
.ws-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 900;
  color: #fff;
  flex-shrink: 0;
}
.ws-avatar-jt { background: linear-gradient(135deg, #6c47ff, #a370ff); }
.ws-avatar-sm { background: linear-gradient(135deg, #e040fb, #ab47bc); }
.ws-avatar-dr { background: linear-gradient(135deg, #059669, #0097a7); }

/* ---- Comparison table (div-based, no <table>) ---- */
.ws-v2-compare {
  margin-top: 56px;
  margin-bottom: 0;
}
.ws-v2-compare h2 {
  margin-bottom: 8px;
}
.ws-v2-compare-sub {
  color: var(--ws-muted);
  font-size: 14px;
  margin-bottom: 28px;
  max-width: 560px;
}
.ws-v2-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 18px;
  border: 1px solid var(--ws-border);
  box-shadow: var(--ws-shadow);
}
.ws-v2-table {
  min-width: 600px;
  width: 100%;
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
}
.ws-v2-row {
  display: grid;
  grid-template-columns: 2fr 1.3fr 1fr 1fr 1fr;
  border-bottom: 1px solid var(--ws-border);
}
.ws-v2-row-last {
  border-bottom: none;
}
.ws-v2-row:not(.ws-v2-row-head):hover {
  background: #faf8ff;
}
.ws-v2-cell {
  padding: 14px 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  color: var(--ws-text-2);
  line-height: 1.4;
}
.ws-v2-feat-col {
  justify-content: flex-start;
  font-weight: 500;
  color: var(--ws-text);
  padding-left: 22px;
}

/* Header row */
.ws-v2-row-head {
  background: var(--ws-surface-2);
  border-bottom: 2px solid var(--ws-border);
}
.ws-v2-row-head .ws-v2-cell {
  font-size: 13px;
  font-weight: 700;
  color: var(--ws-muted);
  padding-top: 16px;
  padding-bottom: 16px;
}
.ws-v2-row-head .ws-v2-feat-col {
  color: var(--ws-text);
}

/* WooSculpt highlighted column */
.ws-v2-ws-col {
  background: linear-gradient(180deg, rgba(108,71,255,0.07) 0%, rgba(108,71,255,0.03) 100%);
  border-left: 2px solid rgba(108,71,255,0.2);
  border-right: 2px solid rgba(108,71,255,0.2);
  flex-direction: column;
  gap: 5px;
}
.ws-v2-row-head .ws-v2-ws-col {
  background: linear-gradient(180deg, rgba(108,71,255,0.12) 0%, rgba(108,71,255,0.06) 100%);
}
.ws-v2-col-name {
  font-size: 14px;
  font-weight: 700;
  color: var(--ws-purple);
}
.ws-v2-best-badge {
  display: inline-block;
  background: linear-gradient(90deg, #6c47ff, #a370ff);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ws-v2-accent-text {
  color: var(--ws-purple) !important;
  font-weight: 700 !important;
}
.ws-v2-dim {
  color: var(--ws-muted-light);
}

/* Check / cross icons */
.ws-v2-yes {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #dcfce7;
  color: #16a34a;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
}
.ws-v2-no {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f3f4f6;
  color: #d1d5db;
  font-size: 13px;
  line-height: 1;
}

/* ---- 14-Day Guarantee strip ---- */
.ws-v2-guarantee {
  margin-top: 20px;
  margin-bottom: 0;
}
.ws-v2-guarantee-inner {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 24px;
  border-radius: 14px;
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
}
.ws-v2-guarantee-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #dcfce7;
}
.ws-v2-guarantee-text {
  margin: 0;
  font-size: 14px;
  color: #166534;
  line-height: 1.55;
}
.ws-v2-guarantee-text strong {
  color: #14532d;
  font-weight: 700;
}

@media (max-width: 640px) {
  .ws-v2-table { min-width: 520px; }
  .ws-v2-cell { padding: 12px 12px; font-size: 13px; }
  .ws-v2-feat-col { padding-left: 14px; }
  .ws-v2-guarantee-inner { padding: 16px 18px; gap: 12px; }
}

/* v3.5.222 — Hide WC notices on product page (direct-to-checkout flow) */
.single-product .woocommerce-notices-wrapper,
.single-product .woocommerce-message,
.single-product .woocommerce-error,
.single-product .woocommerce-info {
  display: none !important;
}

/* ════════════════════════════════════════════════════════════
   v3.5.231 — Checkout redesign: single centered card
   Inspired by Stripe's own checkout page aesthetic.
   Works for both classic WC and Blocks checkout.
   ════════════════════════════════════════════════════════════ */

/* Page background */
body.woocommerce-checkout {
  background: linear-gradient(160deg,#f0ecff 0%,#f5f3ff 40%,#eef0ff 100%) !important;
  min-height: 100vh;
}
body.woocommerce-checkout .ws-page,
body.woocommerce-checkout .ws-checkout-page {
  padding: 32px 16px 64px !important;
  background: transparent !important;
}

/* ── Single centered card shell ── */
body.woocommerce-checkout .ws-checkout-shell,
body.woocommerce-checkout .wc-block-checkout,
body.woocommerce-checkout .wp-block-woocommerce-checkout {
  max-width: 660px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: block !important;
}

/* The main card */
body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout .ws-checkout-card,
body.woocommerce-checkout form.woocommerce-checkout {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid rgba(124,77,255,.12) !important;
  box-shadow: 0 8px 48px rgba(88,40,255,.10), 0 2px 8px rgba(15,23,42,.06) !important;
  overflow: hidden !important;
  display: block !important;
  grid-template-columns: unset !important;
}

/* Hide the sidebar — order summary sits inside the card at top */
body.woocommerce-checkout .wc-block-checkout__sidebar,
body.woocommerce-checkout .ws-checkout-side { display: none !important; }

/* ── Product summary strip at card top ── */
body.woocommerce-checkout .wc-block-checkout__order-summary-cart-items,
body.woocommerce-checkout .wc-block-components-order-summary {
  border-bottom: 1px solid #f0ecff !important;
  padding: 24px 28px 20px !important;
  background: transparent !important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item {
  display: grid !important;
  grid-template-columns: 56px 1fr auto !important;
  gap: 12px !important;
  align-items: center !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
  width: 56px !important; height: 56px !important;
  border-radius: 12px !important; object-fit: cover !important;
  border: 1px solid #ede9ff !important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__full-name {
  font-family: 'Sora', sans-serif !important;
  font-size: 16px !important; font-weight: 700 !important; color: #0f172a !important;
  margin: 0 0 3px !important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__subtitle,
body.woocommerce-checkout .wc-block-components-order-summary-item__description,
body.woocommerce-checkout .wc-block-components-order-summary-item__variation {
  font-size: 13px !important; color: #64748b !important;
  display: flex !important; align-items: center !important; gap: 4px !important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices {
  display: none !important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__price {
  font-family: 'Sora', sans-serif !important;
  font-size: 22px !important; font-weight: 800 !important; color: #0f172a !important;
  text-align: right !important;
}
/* Totals under product */
body.woocommerce-checkout .wc-block-components-totals-wrapper {
  margin-top: 14px !important; padding-top: 14px !important;
  border-top: 1px dashed #e8e4f8 !important;
}
body.woocommerce-checkout .wc-block-components-totals-item {
  display: flex !important; justify-content: space-between !important;
  padding: 5px 0 !important; font-size: 14px !important; color: #64748b !important;
  border: none !important; background: none !important;
}
body.woocommerce-checkout .wc-block-components-totals-item.wc-block-components-totals-footer-item,
body.woocommerce-checkout .wc-block-components-totals-item:last-child {
  font-weight: 800 !important; font-size: 18px !important; color: #0f172a !important;
  padding-top: 10px !important; margin-top: 6px !important;
  border-top: 1px solid #e8e4f8 !important;
  font-family: 'Sora', sans-serif !important;
}
body.woocommerce-checkout .wc-block-formatted-money-amount { font-weight: inherit !important; }
body.woocommerce-checkout .wc-block-components-totals-coupon { display: none !important; }

/* ── Express checkout ── */
body.woocommerce-checkout .wc-block-components-express-payment,
body.woocommerce-checkout .wc-block-components-express-payment-event-buttons {
  padding: 22px 28px 0 !important;
  margin: 0 !important;
}
body.woocommerce-checkout .wc-block-components-express-payment__title {
  text-align: center !important;
  font-size: 12px !important; color: #94a3b8 !important;
  font-weight: 600 !important; letter-spacing: .06em !important;
  text-transform: uppercase !important; margin-bottom: 12px !important;
}
body.woocommerce-checkout .wc-block-components-express-payment__event-buttons {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 10px !important;
}
body.woocommerce-checkout .wc-block-components-express-payment button,
body.woocommerce-checkout .wc-block-components-express-payment iframe {
  border-radius: 10px !important; height: 48px !important;
}
/* "Or pay with card" divider */
body.woocommerce-checkout .wc-block-components-express-payment__separator {
  display: flex !important; align-items: center !important; gap: 12px !important;
  padding: 16px 28px !important; color: #94a3b8 !important;
  font-size: 12px !important; font-weight: 600 !important;
  text-transform: none !important; letter-spacing: 0 !important;
}
body.woocommerce-checkout .wc-block-components-express-payment__separator::before,
body.woocommerce-checkout .wc-block-components-express-payment__separator::after {
  content: '' !important; flex: 1 !important;
  height: 1px !important; background: #e8e4f0 !important;
  display: block !important;
}

/* ── Form sections ── */
body.woocommerce-checkout .wc-block-checkout__contact-fields,
body.woocommerce-checkout .wc-block-checkout__billing-fields,
body.woocommerce-checkout .wc-block-checkout__shipping-fields,
body.woocommerce-checkout .wc-block-checkout__payment-method,
body.woocommerce-checkout .wc-block-checkout__actions {
  padding: 0 28px 20px !important;
}
body.woocommerce-checkout .wc-block-checkout__contact-fields { padding-top: 4px !important; }

/* Section labels */
body.woocommerce-checkout .wc-block-components-checkout-step__heading,
body.woocommerce-checkout .wc-block-components-checkout-step__title,
body.woocommerce-checkout .wc-block-components-checkout-step__heading-content {
  font-size: 13px !important; font-weight: 700 !important;
  color: #475569 !important; text-transform: uppercase !important;
  letter-spacing: .05em !important; margin-bottom: 10px !important;
}

/* ── Inputs ── */
body.woocommerce-checkout .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-combobox,
body.woocommerce-checkout .wc-block-components-country-input {
  margin-bottom: 12px !important;
}
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-country-input input {
  width: 100% !important; height: 50px !important;
  padding: 14px 16px !important;
  border: 1.5px solid #dde3ed !important;
  border-radius: 12px !important;
  background: #fafbff !important;
  font-size: 15px !important; font-weight: 500 !important; color: #0f172a !important;
  box-shadow: none !important; outline: none !important;
  transition: border-color .15s, box-shadow .15s !important;
}
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-combobox input:focus,
body.woocommerce-checkout .wc-block-components-country-input input:focus {
  border-color: #7c4dff !important;
  box-shadow: 0 0 0 3px rgba(124,77,255,.12) !important;
  background: #fff !important; outline: none !important;
}
body.woocommerce-checkout .wc-block-components-text-input input::placeholder { color: #a0aec0 !important; }
body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-combobox label,
body.woocommerce-checkout .wc-block-components-country-input label {
  font-size: 12px !important; font-weight: 600 !important; color: #475569 !important;
  margin-bottom: 5px !important; display: block !important;
}

/* ── Hide unwanted fields ── */
body.woocommerce-checkout .wc-block-components-address-form__address_2-toggle,
body.woocommerce-checkout .wc-block-components-address-form__address_2,
body.woocommerce-checkout .wc-block-components-form-toggle,
body.woocommerce-checkout .wc-block-checkout__add-note,
body.woocommerce-checkout [id$="-city"], body.woocommerce-checkout [id$="-state"],
body.woocommerce-checkout [id$="-postcode"], body.woocommerce-checkout [id$="-phone"],
body.woocommerce-checkout .wc-block-components-address-form__city,
body.woocommerce-checkout .wc-block-components-address-form__postcode,
body.woocommerce-checkout .wc-block-components-address-form__state,
body.woocommerce-checkout .wc-block-components-address-form__phone,
body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button,
body.woocommerce-checkout .wp-block-woocommerce-checkout-return-to-cart-button-block,
body.woocommerce-checkout a.wc-block-components-checkout-return-to-cart-button,
body.woocommerce-checkout .wc-block-components-checkout-step__description,
body.woocommerce-checkout .wc-block-checkout__use-address-for-billing {
  display: none !important;
}

/* ── Payment method ── */
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option {
  border: 1.5px solid #dde3ed !important;
  border-radius: 12px !important; overflow: hidden !important;
  margin-bottom: 8px !important; background: #fafbff !important;
}
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option:has(input:checked),
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option.is-selected {
  border-color: #7c4dff !important;
  box-shadow: 0 0 0 3px rgba(124,77,255,.10) !important;
  background: #fff !important;
}
body.woocommerce-checkout .wc-block-components-payment-method-options__content {
  padding: 14px 16px !important;
  border-top: 1px solid #f0ecff !important;
  background: #fff !important;
}
body.woocommerce-checkout .wc-block-components-payment-method-label,
body.woocommerce-checkout .wc-block-components-radio-control__label {
  font-size: 14px !important; font-weight: 700 !important; color: #0f172a !important;
}
body.woocommerce-checkout .wc-block-components-payment-method-icons img {
  height: 22px !important; border-radius: 4px !important;
}

/* ── Place Order button ── */
body.woocommerce-checkout .wc-block-checkout__actions {
  padding-top: 4px !important; padding-bottom: 28px !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout button.wc-block-components-checkout-place-order-button {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; height: 56px !important;
  background: #6c47ff !important;
  border: none !important; border-radius: 12px !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 17px !important; font-weight: 800 !important;
  color: #fff !important; cursor: pointer !important;
  box-shadow: 0 6px 24px rgba(108,71,255,.38) !important;
  transition: transform .16s, box-shadow .16s, background .16s !important;
  letter-spacing: -.01em !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
  background: #5535e8 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 36px rgba(108,71,255,.48) !important;
}
body.woocommerce-checkout .wc-block-components-checkout-place-order-button span,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button .wc-block-components-button__text {
  color: #fff !important; font-size: 17px !important; font-weight: 800 !important;
}

/* ── Trust strip below button ── */
body.woocommerce-checkout .wc-block-checkout__terms,
body.woocommerce-checkout .wc-block-components-checkout-place-order__before-payment-info {
  text-align: center !important; font-size: 12px !important;
  color: #94a3b8 !important; padding: 0 28px 20px !important; margin: 0 !important;
}
body.woocommerce-checkout .wc-block-checkout__terms a { color: #7c4dff !important; }

/* Trust icons row */
body.woocommerce-checkout .ws-checkout-trust-row {
  display: flex !important; align-items: center !important; justify-content: center !important;
  gap: 16px !important; padding: 14px 28px 24px !important;
  border-top: 1px solid #f0ecff !important; font-size: 12px !important;
  color: #94a3b8 !important; font-weight: 600 !important; flex-wrap: wrap !important;
}
body.woocommerce-checkout .ws-checkout-trust-row span {
  display: flex !important; align-items: center !important; gap: 5px !important;
}

/* Errors */
body.woocommerce-checkout .wc-block-components-validation-error {
  font-size: 12px !important; color: #dc2626 !important;
  margin-top: 4px !important;
}
body.woocommerce-checkout .wc-block-store-notice,
body.woocommerce-checkout .wc-block-components-notice-banner {
  margin: 0 28px 16px !important; border-radius: 10px !important;
}

/* Checkbox */
body.woocommerce-checkout .wc-block-components-checkbox input[type="checkbox"] {
  accent-color: #7c4dff !important;
}
body.woocommerce-checkout .wc-block-components-checkbox__label {
  font-size: 13px !important; color: #475569 !important;
}

/* ── Classic WC checkout — hide shell wrappers ── */
body.woocommerce-checkout .ws-checkout-shell { display: none !important; }

/* Responsive */
@media (max-width: 700px) {
  body.woocommerce-checkout .wc-block-checkout__contact-fields,
  body.woocommerce-checkout .wc-block-checkout__billing-fields,
  body.woocommerce-checkout .wc-block-checkout__payment-method,
  body.woocommerce-checkout .wc-block-checkout__actions { padding-left: 18px !important; padding-right: 18px !important; }
  body.woocommerce-checkout .wc-block-components-express-payment { padding-left: 18px !important; padding-right: 18px !important; }
  body.woocommerce-checkout .wc-block-components-express-payment__separator { padding-left: 18px !important; padding-right: 18px !important; }
  body.woocommerce-checkout .wc-block-components-order-summary { padding: 20px 18px !important; }
}

/* ════════════════════════════════════════════════════════
   v3.5.232 — Fix floating label overlap + product summary
   ════════════════════════════════════════════════════════ */

/* ── Country/combobox floating label fix ──
   WC Blocks uses position:absolute labels inside the input wrapper.
   When a value is selected the label must shrink to the top. */
body.woocommerce-checkout .wc-block-components-country-input,
body.woocommerce-checkout .wc-block-components-combobox,
body.woocommerce-checkout .wc-block-components-state-input {
  position: relative !important;
}

/* The floating label sits inside the field container */
body.woocommerce-checkout .wc-block-components-country-input .wc-block-components-country-input__label,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox__label,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-form-token-field-wrapper label,
body.woocommerce-checkout .wc-block-components-country-input label {
  position: absolute !important;
  left: 16px !important;
  top: 8px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  color: #7c4dff !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  margin: 0 !important;
  display: block !important;
  transform: none !important;
}

/* Input with floating label — push text down so label doesn't overlap value */
body.woocommerce-checkout .wc-block-components-country-input input,
body.woocommerce-checkout .wc-block-components-combobox input {
  padding-top: 22px !important;
  padding-bottom: 8px !important;
  height: 56px !important;
}

/* Same treatment for text inputs with floating labels (email, name, address) */
body.woocommerce-checkout .wc-block-components-text-input {
  position: relative !important;
}
body.woocommerce-checkout .wc-block-components-text-input label {
  position: absolute !important;
  left: 16px !important; top: 8px !important;
  font-size: 10px !important; font-weight: 700 !important;
  color: #7c4dff !important; letter-spacing: .04em !important;
  text-transform: uppercase !important; line-height: 1 !important;
  z-index: 1 !important; pointer-events: none !important;
  margin: 0 !important; display: block !important; transform: none !important;
}
body.woocommerce-checkout .wc-block-components-text-input input {
  padding-top: 22px !important;
  padding-bottom: 8px !important;
  height: 56px !important;
}

/* ── Product summary strip — show what they're buying ──
   Render this via PHP wp_head hook (see functions.php).
   CSS styles the .ws-checkout-product-banner element. */
body.woocommerce-checkout .ws-checkout-product-banner {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 22px 28px !important;
  background: linear-gradient(135deg, #f7f4ff 0%, #fdfcff 100%) !important;
  border-bottom: 1px solid rgba(124,77,255,.12) !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-icon {
  width: 56px !important; height: 56px !important;
  background: linear-gradient(135deg, #7c4dff, #a370ff) !important;
  border-radius: 14px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 4px 16px rgba(124,77,255,.28) !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-icon svg {
  width: 28px !important; height: 28px !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-info {
  flex: 1 !important; min-width: 0 !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-name {
  font-family: 'Sora', sans-serif !important;
  font-size: 16px !important; font-weight: 700 !important;
  color: #0f172a !important; display: block !important; margin-bottom: 3px !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-meta {
  font-size: 13px !important; color: #64748b !important;
  display: flex !important; align-items: center !important; gap: 6px !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-dot {
  width: 3px !important; height: 3px !important;
  border-radius: 50% !important; background: #94a3b8 !important;
  display: inline-block !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-badge {
  display: inline-flex !important; align-items: center !important;
  background: #dcfce7 !important; color: #15803d !important;
  font-size: 11px !important; font-weight: 700 !important;
  padding: 2px 8px !important; border-radius: 999px !important;
  border: 1px solid #bbf7d0 !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-price {
  text-align: right !important; flex-shrink: 0 !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-amount {
  font-family: 'Sora', sans-serif !important;
  font-size: 24px !important; font-weight: 800 !important;
  color: #0f172a !important; display: block !important; line-height: 1 !important;
}
body.woocommerce-checkout .ws-checkout-product-banner-was {
  font-size: 12px !important; color: #94a3b8 !important;
  text-decoration: line-through !important; display: block !important;
  margin-top: 2px !important; text-align: right !important;
}

/* Push the block checkout form content below our banner */
body.woocommerce-checkout .wc-block-checkout__main > .wc-block-components-order-summary,
body.woocommerce-checkout .wc-block-checkout__main > .wc-block-components-totals-wrapper {
  display: none !important; /* Hide Blocks' own order summary inside main — we have our banner */
}

/* ── Trust strip below Place Order ── */
body.woocommerce-checkout .ws-ck-trust {
  display: flex !important;
  align-items: center !important; justify-content: center !important;
  gap: 16px !important; flex-wrap: wrap !important;
  padding: 12px 28px 24px !important;
  font-size: 12px !important; color: #94a3b8 !important; font-weight: 600 !important;
}
body.woocommerce-checkout .ws-ck-trust span {
  display: flex !important; align-items: center !important; gap: 5px !important;
}

/* ════════════════════════════════════════════════════════
   v3.5.233 — Product banner: real icon, clean design
   ════════════════════════════════════════════════════════ */
body.woocommerce-checkout .ws-cpb {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 20px 28px !important;
  background: #faf8ff !important;
  border-bottom: 1px solid rgba(124,77,255,.1) !important;
}
body.woocommerce-checkout .ws-cpb-icon {
  width: 52px !important; height: 52px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 10px rgba(124,77,255,.2) !important;
  display: block !important;
}
body.woocommerce-checkout .ws-cpb-info {
  flex: 1 !important; min-width: 0 !important;
}
body.woocommerce-checkout .ws-cpb-name {
  display: block !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 15px !important; font-weight: 700 !important;
  color: #0f172a !important; margin-bottom: 6px !important;
  letter-spacing: -.01em !important;
}
body.woocommerce-checkout .ws-cpb-meta {
  display: flex !important; align-items: center !important;
  gap: 6px !important; flex-wrap: wrap !important;
}
body.woocommerce-checkout .ws-cpb-pill {
  display: inline-flex !important; align-items: center !important;
  background: #f0ecff !important; color: #5a30e0 !important;
  font-size: 11px !important; font-weight: 700 !important;
  padding: 3px 9px !important; border-radius: 999px !important;
  border: 1px solid rgba(124,77,255,.2) !important;
  line-height: 1 !important;
}
body.woocommerce-checkout .ws-cpb-sep {
  color: #cbd5e1 !important; font-size: 11px !important;
}
body.woocommerce-checkout .ws-cpb-save {
  display: inline-flex !important; align-items: center !important;
  background: #dcfce7 !important; color: #15803d !important;
  font-size: 11px !important; font-weight: 700 !important;
  padding: 3px 9px !important; border-radius: 999px !important;
  border: 1px solid #bbf7d0 !important;
}
body.woocommerce-checkout .ws-cpb-price {
  text-align: right !important; flex-shrink: 0 !important;
}
body.woocommerce-checkout .ws-cpb-amount {
  display: block !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 22px !important; font-weight: 800 !important;
  color: #0f172a !important; letter-spacing: -.03em !important;
}
body.woocommerce-checkout .ws-cpb-was {
  display: block !important;
  font-size: 12px !important; color: #94a3b8 !important;
  text-decoration: line-through !important;
  text-align: right !important; margin-top: 2px !important;
}

/* trust strip */
body.woocommerce-checkout .ws-ck-trust {
  display: flex !important;
  align-items: center !important; justify-content: center !important;
  gap: 10px !important; flex-wrap: wrap !important;
  padding: 12px 28px 22px !important;
  font-size: 12px !important; color: #94a3b8 !important;
  font-weight: 600 !important;
}
body.woocommerce-checkout .ws-ck-dot { color: #e2e8f0 !important; }

/* ════════════════════════════════════════════════════════
   v3.5.234 — Express Checkout divider + country label fix
   ════════════════════════════════════════════════════════ */

/* Express Checkout — "EXPRESS CHECKOUT" label + lines */
body.woocommerce-checkout .wc-block-components-express-payment__title-container {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}
body.woocommerce-checkout .wc-block-components-express-payment__title-container::before,
body.woocommerce-checkout .wc-block-components-express-payment__title-container::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e8e4f0 !important;
  display: block !important;
}
body.woocommerce-checkout .wc-block-components-express-payment__title {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #94a3b8 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  padding: 0 4px !important;
}

/* "Or pay with card" separator — lines either side */
body.woocommerce-checkout .wc-block-components-express-payment__separator {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  font-size: 12px !important;
  color: #94a3b8 !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
body.woocommerce-checkout .wc-block-components-express-payment__separator::before,
body.woocommerce-checkout .wc-block-components-express-payment__separator::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e8e4f0 !important;
  display: block !important;
}

/* Country/Region + Combobox — ONLY show small label at top, value below */
/* Hide the WC Blocks floating label when it tries to overlap */
body.woocommerce-checkout .wc-block-components-country-input .wc-block-components-country-input__label,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox__label,
body.woocommerce-checkout .wc-block-components-country-input label,
body.woocommerce-checkout .wc-block-components-combobox label,
body.woocommerce-checkout .wc-block-components-form-token-field-wrapper label {
  position: absolute !important;
  top: 8px !important; left: 16px !important;
  font-size: 10px !important; font-weight: 700 !important;
  color: #7c4dff !important; text-transform: uppercase !important;
  letter-spacing: .04em !important; line-height: 1 !important;
  pointer-events: none !important; z-index: 2 !important;
  background: transparent !important;
  transform: none !important; transition: none !important;
  /* Never animate — always stay pinned at top */
  will-change: unset !important;
}
/* Input value sits below the small label */
body.woocommerce-checkout .wc-block-components-country-input input,
body.woocommerce-checkout .wc-block-components-combobox input {
  padding-top: 24px !important;
  padding-bottom: 6px !important;
  height: 58px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #0f172a !important;
}
/* Also fix text inputs floating labels */
body.woocommerce-checkout .wc-block-components-text-input label {
  position: absolute !important;
  top: 8px !important; left: 16px !important;
  font-size: 10px !important; font-weight: 700 !important;
  color: #7c4dff !important; text-transform: uppercase !important;
  letter-spacing: .04em !important; line-height: 1 !important;
  pointer-events: none !important; z-index: 2 !important;
  transform: none !important; transition: none !important;
}
body.woocommerce-checkout .wc-block-components-text-input input {
  padding-top: 24px !important;
  padding-bottom: 6px !important;
  height: 58px !important;
  font-size: 15px !important;
  color: #0f172a !important;
}

/* ════════════════════════════════════════════════════════
   v3.5.235 — Final fixes: express divider, banner bg, country label
   ════════════════════════════════════════════════════════ */

/* ── Express Checkout title: centered between two lines ──
   The title lives inside .wc-block-components-express-payment
   which itself is a flex column. We make the title a flex row
   with pseudo lines on either side. */
body.woocommerce-checkout .wc-block-components-express-payment__title {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #94a3b8 !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  margin: 0 0 14px !important;
  text-align: center !important;
  width: 100% !important;
}
body.woocommerce-checkout .wc-block-components-express-payment__title::before,
body.woocommerce-checkout .wc-block-components-express-payment__title::after {
  content: '' !important;
  flex: 1 !important;
  height: 1px !important;
  background: #e2e8f0 !important;
  display: block !important;
  min-width: 20px !important;
}

/* ── Banner: no background color, no border-bottom ── */
body.woocommerce-checkout .ws-cpb {
  background: transparent !important;
  border-bottom: 1px solid #f0ecff !important;
  padding: 22px 28px !important;
}

/* ── Country/Region label — COMPLETELY HIDDEN, value only ──
   WC Blocks renders a label element that floats inside the input.
   We hide it entirely. The input placeholder or selected value
   is self-explanatory. */
body.woocommerce-checkout .wc-block-components-country-input label,
body.woocommerce-checkout .wc-block-components-country-input .wc-block-components-country-input__label,
body.woocommerce-checkout .wc-block-components-combobox label,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox__label,
body.woocommerce-checkout .wc-block-components-form-token-field-wrapper label,
body.woocommerce-checkout .wc-block-components-state-input label {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  width: 1px !important;
  clip: rect(0,0,0,0) !important;
}

/* Input sits at normal vertical center with no top padding offset */
body.woocommerce-checkout .wc-block-components-country-input input,
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-state-input input {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  height: 52px !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #0f172a !important;
}
/* Also reset text inputs to normal center alignment */
body.woocommerce-checkout .wc-block-components-text-input label {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  width: 1px !important;
  clip: rect(0,0,0,0) !important;
}
body.woocommerce-checkout .wc-block-components-text-input input {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  height: 52px !important;
  font-size: 15px !important;
  color: #0f172a !important;
}

/* ════════════════════════════════════════════════════════
   v3.5.235 — Cart page: single centered card, no clutter
   Same language as checkout. One product, fast to checkout.
   ════════════════════════════════════════════════════════ */

/* Page background */
body.woocommerce-cart {
  background: linear-gradient(160deg,#f0ecff 0%,#f5f3ff 40%,#eef0ff 100%) !important;
  min-height: 100vh;
}
body.woocommerce-cart .ws-page,
body.woocommerce-cart .ws-cart-page {
  padding: 40px 16px 72px !important;
  background: transparent !important;
}
body.woocommerce-cart .ws-container { max-width: 620px !important; margin: 0 auto !important; }

/* ── Hide the old two-column shell entirely ── */
body.woocommerce-cart .ws-cart-shell { display: none !important; }

/* ── Block cart: single card ── */
body.woocommerce-cart .wc-block-cart,
body.woocommerce-cart .wp-block-woocommerce-cart {
  max-width: 620px !important;
  margin: 0 auto !important;
  display: block !important;
}
body.woocommerce-cart .wc-block-cart__main {
  background: #fff !important;
  border-radius: 20px !important;
  border: 1px solid rgba(124,77,255,.1) !important;
  box-shadow: 0 8px 48px rgba(88,40,255,.10), 0 2px 8px rgba(15,23,42,.05) !important;
  overflow: hidden !important;
  display: block !important;
}

/* Hide the sidebar (totals block) — we put totals inside the card */
body.woocommerce-cart .wc-block-cart__sidebar { display: none !important; }

/* ── Cart items table ── */
body.woocommerce-cart .wc-block-cart-items { padding: 0 !important; }
body.woocommerce-cart .wc-block-cart-items__header { display: none !important; }
body.woocommerce-cart .wc-block-cart-item {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 22px 28px !important;
  border-bottom: 1px solid #f0ecff !important;
}
body.woocommerce-cart .wc-block-cart-item:last-child { border-bottom: none !important; }

/* Product image */
body.woocommerce-cart .wc-block-cart-item__image img {
  width: 64px !important; height: 64px !important;
  border-radius: 14px !important;
  object-fit: cover !important;
  border: 1px solid #ede9ff !important;
  flex-shrink: 0 !important;
}
body.woocommerce-cart .wc-block-cart-item__image a { display: block !important; flex-shrink: 0 !important; }

/* Product name + meta */
body.woocommerce-cart .wc-block-cart-item__product {
  flex: 1 !important; min-width: 0 !important;
}
body.woocommerce-cart .wc-block-cart-item__product-name,
body.woocommerce-cart .wc-block-cart-item__product-name a {
  font-family: 'Sora', sans-serif !important;
  font-size: 15px !important; font-weight: 700 !important;
  color: #0f172a !important; text-decoration: none !important;
  display: block !important; margin-bottom: 5px !important;
  line-height: 1.3 !important;
}
body.woocommerce-cart .wc-block-cart-item__product-metadata {
  display: flex !important; flex-wrap: wrap !important; gap: 5px !important;
}
body.woocommerce-cart .wc-block-cart-item__product-metadata p,
body.woocommerce-cart .wc-block-cart-item__product-metadata .wc-block-components-product-metadata {
  margin: 0 !important; font-size: 12px !important; color: #64748b !important;
}
/* Variation pills */
body.woocommerce-cart .wc-block-cart-item__product-metadata .wc-block-components-product-metadata__description-list {
  display: flex !important; flex-wrap: wrap !important; gap: 5px !important;
  list-style: none !important; padding: 0 !important; margin: 0 !important;
}
body.woocommerce-cart .wc-block-cart-item__product-metadata dt,
body.woocommerce-cart .wc-block-cart-item__product-metadata dd { margin: 0 !important; }

/* Remove link — text only, subtle */
body.woocommerce-cart .wc-block-cart-item__remove-link {
  display: inline-flex !important; align-items: center !important;
  margin-top: 8px !important;
  font-size: 12px !important; font-weight: 600 !important;
  color: #94a3b8 !important; text-decoration: none !important;
  background: none !important; border: none !important; padding: 0 !important;
  cursor: pointer !important;
  transition: color .14s !important;
}
body.woocommerce-cart .wc-block-cart-item__remove-link:hover { color: #dc2626 !important; }

/* Quantity: hide — locked to 1 for license products */
body.woocommerce-cart .wc-block-cart-item__quantity { display: none !important; }

/* Price: right-aligned, clean */
body.woocommerce-cart .wc-block-cart-item__total {
  text-align: right !important; flex-shrink: 0 !important;
}
body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price {
  font-family: 'Sora', sans-serif !important;
  font-size: 20px !important; font-weight: 800 !important; color: #0f172a !important;
  display: block !important;
}
body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price__regular {
  font-size: 12px !important; color: #94a3b8 !important;
  text-decoration: line-through !important; display: block !important;
  font-weight: 400 !important; font-family: inherit !important;
}

/* ── Totals section inside card ── */
body.woocommerce-cart .wc-block-cart__submit-container {
  padding: 20px 28px 28px !important;
  border-top: 1px solid #f0ecff !important;
  background: #faf8ff !important;
}
body.woocommerce-cart .wc-block-components-totals-item {
  display: flex !important; justify-content: space-between !important;
  padding: 6px 0 !important; font-size: 14px !important; color: #64748b !important;
  border: none !important; background: none !important;
}
body.woocommerce-cart .wc-block-components-totals-item.wc-block-components-totals-footer-item {
  font-size: 20px !important; font-weight: 800 !important; color: #0f172a !important;
  padding-top: 12px !important; margin-top: 8px !important;
  border-top: 1px solid #e8e4f8 !important;
  font-family: 'Sora', sans-serif !important;
}

/* ── Proceed to checkout button ── */
body.woocommerce-cart .wc-block-cart__submit,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-block-components-checkout-place-order-button,
body.woocommerce-cart a.checkout-button {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; height: 56px !important;
  background: #6c47ff !important;
  border: none !important; border-radius: 12px !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 17px !important; font-weight: 800 !important;
  color: #fff !important; cursor: pointer !important;
  box-shadow: 0 6px 24px rgba(108,71,255,.38) !important;
  transition: transform .16s, box-shadow .16s, background .16s !important;
  text-decoration: none !important; margin-top: 14px !important;
  letter-spacing: -.01em !important;
}
body.woocommerce-cart .wc-block-cart__submit:hover,
body.woocommerce-cart a.checkout-button:hover {
  background: #5535e8 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 36px rgba(108,71,255,.48) !important;
}
body.woocommerce-cart .wc-block-cart__submit span,
body.woocommerce-cart .wc-block-cart__submit .wc-block-components-button__text {
  color: #fff !important; font-size: 17px !important; font-weight: 800 !important;
}

/* ── Hide everything we don't need ── */
body.woocommerce-cart .wc-block-components-totals-coupon,
body.woocommerce-cart .wc-block-cart__empty-cart__title,
body.woocommerce-cart .wc-block-components-order-summary__title,
body.woocommerce-cart .wc-block-cart-items__header,
body.woocommerce-cart .wc-block-components-cross-sells,
body.woocommerce-cart .wc-block-components-notice-banner--error .wc-block-cart__submit-container,
body.woocommerce-cart .wc-block-cart__return-to-shopping-button { display: none !important; }

/* Trust row below button */
body.woocommerce-cart .ws-cart-trust {
  display: flex !important; align-items: center !important; justify-content: center !important;
  gap: 12px !important; flex-wrap: wrap !important;
  margin-top: 14px !important;
  font-size: 12px !important; color: #94a3b8 !important; font-weight: 600 !important;
}

/* ── Responsive ── */
@media (max-width: 640px) {
  body.woocommerce-cart .wc-block-cart-item { padding: 18px !important; gap: 12px !important; }
  body.woocommerce-cart .wc-block-cart__submit-container { padding: 18px !important; }
}

/* ════════════════════════════════════════════════════════
   v3.5.237 — Cart page container fix
   ════════════════════════════════════════════════════════ */

/* Wrapper — centers the card */
body.woocommerce-cart .ws-cart-wrap {
  max-width: 620px !important;
  margin: 0 auto !important;
  width: 100% !important;
}

/* Kill the old ws-container wide layout on cart */
body.woocommerce-cart .ws-container {
  max-width: 620px !important;
}

/* Classic WC cart table — hide headers/qty/update, show clean item */
body.woocommerce-cart table.woocommerce-cart-form__contents {
  width: 100% !important;
  border-collapse: collapse !important;
}
body.woocommerce-cart table.woocommerce-cart-form__contents thead,
body.woocommerce-cart .woocommerce-cart-form .actions,
body.woocommerce-cart .woocommerce-cart-form .quantity,
body.woocommerce-cart .woocommerce-shipping-calculator,
body.woocommerce-cart .cart-collaterals .cross-sells,
body.woocommerce-cart .woocommerce-cart-form__cart-item .product-subtotal,
body.woocommerce-cart .coupon { display: none !important; }

body.woocommerce-cart table.woocommerce-cart-form__contents .cart_item {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 20px 28px !important;
  border-bottom: 1px solid #f0ecff !important;
}
body.woocommerce-cart table.woocommerce-cart-form__contents .cart_item td { border: none !important; padding: 0 !important; }
body.woocommerce-cart .product-thumbnail img {
  width: 64px !important; height: 64px !important;
  border-radius: 14px !important; object-fit: cover !important;
  border: 1px solid #ede9ff !important;
}
body.woocommerce-cart .product-name { flex: 1 !important; }
body.woocommerce-cart .product-name a {
  font-family: 'Sora', sans-serif !important;
  font-size: 15px !important; font-weight: 700 !important;
  color: #0f172a !important; text-decoration: none !important;
}
body.woocommerce-cart .product-price {
  font-family: 'Sora', sans-serif !important;
  font-size: 20px !important; font-weight: 800 !important; color: #0f172a !important;
}

/* Classic WC cart totals */
body.woocommerce-cart .cart-collaterals { margin-top: 0 !important; }
body.woocommerce-cart .cart_totals {
  background: #faf8ff !important;
  border-top: 1px solid #f0ecff !important;
  padding: 20px 28px 28px !important;
  border-radius: 0 0 20px 20px !important;
  float: none !important; width: 100% !important;
}
body.woocommerce-cart .cart_totals h2 { display: none !important; }
body.woocommerce-cart .cart_totals table { width: 100% !important; border-collapse: collapse !important; }
body.woocommerce-cart .cart_totals table tr td,
body.woocommerce-cart .cart_totals table tr th {
  padding: 6px 0 !important; border: none !important;
  font-size: 14px !important; color: #64748b !important; background: none !important;
}
body.woocommerce-cart .cart_totals .order-total td,
body.woocommerce-cart .cart_totals .order-total th {
  font-size: 20px !important; font-weight: 800 !important; color: #0f172a !important;
  padding-top: 12px !important; border-top: 1px solid #e8e4f8 !important;
  font-family: 'Sora', sans-serif !important;
}
body.woocommerce-cart .wc-proceed-to-checkout { padding: 0 !important; margin-top: 14px !important; }
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; height: 56px !important;
  background: #6c47ff !important; border: none !important; border-radius: 12px !important;
  font-family: 'Sora', sans-serif !important; font-size: 17px !important;
  font-weight: 800 !important; color: #fff !important;
  text-decoration: none !important; cursor: pointer !important;
  box-shadow: 0 6px 24px rgba(108,71,255,.38) !important;
  transition: transform .16s, box-shadow .16s !important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background: #5535e8 !important; transform: translateY(-2px) !important;
  box-shadow: 0 12px 36px rgba(108,71,255,.48) !important;
}

/* Wrap classic cart form + totals in a single white card */
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart form.woocommerce-cart-form {
  background: #fff !important;
  border-radius: 20px 20px 0 0 !important;
  border: 1px solid rgba(124,77,255,.1) !important;
  border-bottom: none !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
body.woocommerce-cart .cart_totals {
  border: 1px solid rgba(124,77,255,.1) !important;
  border-top: none !important;
  box-shadow: 0 8px 48px rgba(88,40,255,.10), 0 2px 8px rgba(15,23,42,.05) !important;
}

/* ════════════════════════════════════════════════════════
   v3.5.238 — Cart page: fully custom, zero WC dependencies
   ════════════════════════════════════════════════════════ */
body.woocommerce-cart {
  background: linear-gradient(160deg,#f0ecff 0%,#f5f3ff 40%,#eef0ff 100%) !important;
  min-height: 100vh;
}
body.woocommerce-cart .ws-page { padding: 40px 16px 72px !important; background: transparent !important; }

.wscart-wrap {
  max-width: 580px;
  margin: 0 auto;
  width: 100%;
}

.wscart-card {
  background: #fff;
  border-radius: 20px;
  border: 1px solid rgba(124,77,255,.12);
  box-shadow: 0 8px 48px rgba(88,40,255,.10), 0 2px 8px rgba(15,23,42,.06);
  overflow: hidden;
}

/* ── Product row ── */
.wscart-product {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px 28px;
  border-bottom: 1px solid #f0ecff;
}
.wscart-icon {
  width: 56px; height: 56px;
  border-radius: 14px;
  object-fit: cover;
  flex-shrink: 0;
  box-shadow: 0 2px 10px rgba(124,77,255,.2);
  display: block;
}
.wscart-product-info { flex: 1; min-width: 0; }
.wscart-product-name {
  display: block;
  font-family: 'Sora', sans-serif;
  font-size: 15px; font-weight: 700;
  color: #0f172a; margin-bottom: 6px;
}
.wscart-meta {
  display: flex; align-items: center;
  gap: 6px; flex-wrap: wrap; margin-bottom: 8px;
}
.wscart-pill {
  display: inline-flex; align-items: center;
  background: #f0ecff; color: #5a30e0;
  font-size: 11px; font-weight: 700;
  padding: 3px 9px; border-radius: 999px;
  border: 1px solid rgba(124,77,255,.2);
}
.wscart-sep { color: #cbd5e1; font-size: 11px; }
.wscart-save {
  display: inline-flex; align-items: center;
  background: #dcfce7; color: #15803d;
  font-size: 11px; font-weight: 700;
  padding: 3px 9px; border-radius: 999px;
  border: 1px solid #bbf7d0;
}
.wscart-change {
  font-size: 12px; font-weight: 600;
  color: #94a3b8; text-decoration: none;
  transition: color .14s;
}
.wscart-change:hover { color: #6c47ff; }
.wscart-price { text-align: right; flex-shrink: 0; }
.wscart-amount {
  display: block;
  font-family: 'Sora', sans-serif;
  font-size: 22px; font-weight: 800;
  color: #0f172a; letter-spacing: -.03em;
}
.wscart-was {
  display: block;
  font-size: 12px; color: #94a3b8;
  text-decoration: line-through;
  text-align: right; margin-top: 2px;
}

/* ── Totals ── */
.wscart-totals {
  padding: 16px 28px;
  background: #faf8ff;
  border-bottom: 1px solid #f0ecff;
}
.wscart-totals-row {
  display: flex; justify-content: space-between; align-items: center;
  font-size: 17px;
}
.wscart-totals-row span { font-weight: 500; color: #64748b; }
.wscart-totals-row strong {
  font-family: 'Sora', sans-serif;
  font-weight: 800; color: #0f172a;
}
.wscart-totals-row small {
  font-size: 12px; font-weight: 500; color: #94a3b8;
  margin-left: 4px;
}

/* ── CTA ── */
.wscart-cta { padding: 22px 28px 26px; }
.wscart-btn {
  display: flex; align-items: center; justify-content: center;
  width: 100%; height: 56px;
  background: #6c47ff;
  border: none; border-radius: 12px;
  font-family: 'Sora', sans-serif;
  font-size: 17px; font-weight: 800;
  color: #fff !important; cursor: pointer;
  box-shadow: 0 6px 24px rgba(108,71,255,.38);
  transition: transform .16s, box-shadow .16s, background .16s;
  text-decoration: none !important;
  letter-spacing: -.01em;
}
.wscart-btn:hover {
  background: #5535e8;
  transform: translateY(-2px);
  box-shadow: 0 12px 36px rgba(108,71,255,.48);
}
.wscart-trust {
  display: flex; align-items: center; justify-content: center;
  gap: 10px; flex-wrap: wrap;
  margin-top: 14px;
  font-size: 12px; color: #94a3b8; font-weight: 600;
}
.wscart-trust-dot { color: #e2e8f0; }

@media (max-width: 480px) {
  .wscart-product { padding: 18px; }
  .wscart-cta, .wscart-totals { padding-left: 18px; padding-right: 18px; }
}

/* ════════════════════════════════════════════════════════
   v3.5.239 — Checkout mobile: full width card
   ════════════════════════════════════════════════════════ */
@media (max-width: 640px) {
  /* Kill all side padding on the page wrapper */
  body.woocommerce-checkout .ws-page,
  body.woocommerce-checkout .ws-cart-page {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
  }

  /* Block checkout shell — full width, no margin */
  body.woocommerce-checkout .wc-block-checkout,
  body.woocommerce-checkout .wp-block-woocommerce-checkout {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Card itself — full width, no border radius on sides */
  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-checkout .wc-block-checkout__form,
  body.woocommerce-checkout form.woocommerce-checkout {
    border-radius: 0 !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
  }

  /* Product banner, sections — tighter padding */
  body.woocommerce-checkout .ws-cpb,
  body.woocommerce-checkout .wc-block-checkout__contact-fields,
  body.woocommerce-checkout .wc-block-checkout__billing-fields,
  body.woocommerce-checkout .wc-block-checkout__payment-method,
  body.woocommerce-checkout .wc-block-checkout__actions,
  body.woocommerce-checkout .wc-block-components-express-payment,
  body.woocommerce-checkout .wc-block-components-express-payment__separator,
  body.woocommerce-checkout .wc-block-components-order-summary,
  body.woocommerce-checkout .wc-block-checkout__terms,
  body.woocommerce-checkout .ws-ck-trust {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  /* Express payment buttons — stack if needed */
  body.woocommerce-checkout .wc-block-components-express-payment__event-buttons {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  /* Place order button */
  body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
    border-radius: 10px !important;
    font-size: 16px !important;
    height: 52px !important;
  }

  /* Country dropdown full width */
  body.woocommerce-checkout .wc-block-components-country-input,
  body.woocommerce-checkout .wc-block-components-combobox,
  body.woocommerce-checkout .wc-block-components-text-input {
    width: 100% !important;
  }

  /* Remove any side margin from WC Blocks inner components */
  body.woocommerce-checkout .wc-block-components-radio-control-accordion-option {
    border-radius: 10px !important;
  }
}

/* ════════════════════════════════════════════════════════
   v3.5.240 — Checkout product banner mobile fix
   ════════════════════════════════════════════════════════ */
@media (max-width: 640px) {
  body.woocommerce-checkout .ws-cpb {
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 18px 16px !important;
  }
  body.woocommerce-checkout .ws-cpb-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 11px !important;
    flex-shrink: 0 !important;
  }
  body.woocommerce-checkout .ws-cpb-info {
    flex: 1 !important;
    min-width: 0 !important;
  }
  body.woocommerce-checkout .ws-cpb-name {
    font-size: 14px !important;
    margin-bottom: 5px !important;
  }
  body.woocommerce-checkout .ws-cpb-meta {
    gap: 4px !important;
    flex-wrap: wrap !important;
  }
  body.woocommerce-checkout .ws-cpb-pill {
    font-size: 11px !important;
    padding: 2px 8px !important;
  }
  body.woocommerce-checkout .ws-cpb-save {
    font-size: 11px !important;
    padding: 2px 8px !important;
  }
  /* Price — smaller, sits right-aligned naturally */
  body.woocommerce-checkout .ws-cpb-price {
    flex-shrink: 0 !important;
    text-align: right !important;
  }
  body.woocommerce-checkout .ws-cpb-amount {
    font-size: 18px !important;
    letter-spacing: -.02em !important;
  }
  body.woocommerce-checkout .ws-cpb-was {
    font-size: 11px !important;
  }
}

/* ════════════════════════════════════════════════════════
   v3.5.241 — Checkout field placeholders visible
   ════════════════════════════════════════════════════════ */
body.woocommerce-checkout .wc-block-components-text-input input::placeholder,
body.woocommerce-checkout .wc-block-components-combobox input::placeholder,
body.woocommerce-checkout .wc-block-components-country-input input::placeholder,
body.woocommerce-checkout .wc-block-checkout input::placeholder {
  color: #a0aec0 !important;
  opacity: 1 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}
/* Also ensure input text and placeholder don't compete with hidden label */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-country-input input {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  height: 52px !important;
}

/* ════════════════════════════════════════════════════════
   v3.5.242 — Product banner: clean receipt style redesign
   ════════════════════════════════════════════════════════ */

/* Reset old banner styles */
body.woocommerce-checkout .ws-cpb,
body.woocommerce-checkout .ws-cpb-icon,
body.woocommerce-checkout .ws-cpb-info,
body.woocommerce-checkout .ws-cpb-name,
body.woocommerce-checkout .ws-cpb-meta,
body.woocommerce-checkout .ws-cpb-pill,
body.woocommerce-checkout .ws-cpb-sep,
body.woocommerce-checkout .ws-cpb-save,
body.woocommerce-checkout .ws-cpb-price,
body.woocommerce-checkout .ws-cpb-amount,
body.woocommerce-checkout .ws-cpb-was { all: revert; }

/* New banner */
body.woocommerce-checkout .ws-cpb {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 18px 28px !important;
  background: #fff !important;
  border-bottom: 1px solid #ede9ff !important;
}
body.woocommerce-checkout .ws-cpb-left {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
  flex: 1 !important;
}
body.woocommerce-checkout .ws-cpb-icon {
  width: 44px !important; height: 44px !important;
  border-radius: 10px !important;
  object-fit: cover !important; flex-shrink: 0 !important;
  display: block !important;
  box-shadow: 0 2px 8px rgba(124,77,255,.15) !important;
}
body.woocommerce-checkout .ws-cpb-info {
  min-width: 0 !important; flex: 1 !important;
}
body.woocommerce-checkout .ws-cpb-name {
  display: block !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 14px !important; font-weight: 700 !important;
  color: #0f172a !important; margin-bottom: 5px !important;
  white-space: nowrap !important;
}
body.woocommerce-checkout .ws-cpb-tags {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  flex-wrap: wrap !important;
}
body.woocommerce-checkout .ws-cpb-tag {
  display: inline-flex !important; align-items: center !important;
  height: 20px !important;
  padding: 0 8px !important;
  border-radius: 999px !important;
  font-size: 11px !important; font-weight: 600 !important;
  background: #f4f0ff !important; color: #5a30e0 !important;
  border: 1px solid rgba(124,77,255,.15) !important;
  white-space: nowrap !important;
}
body.woocommerce-checkout .ws-cpb-tag--green {
  background: #f0fdf4 !important; color: #15803d !important;
  border-color: #bbf7d0 !important;
}
body.woocommerce-checkout .ws-cpb-right {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  flex-shrink: 0 !important;
}
body.woocommerce-checkout .ws-cpb-amount {
  font-family: 'Sora', sans-serif !important;
  font-size: 20px !important; font-weight: 800 !important;
  color: #0f172a !important; letter-spacing: -.03em !important;
  line-height: 1 !important; display: block !important;
}
body.woocommerce-checkout .ws-cpb-was {
  font-size: 12px !important; color: #94a3b8 !important;
  text-decoration: line-through !important;
  display: block !important; text-align: right !important;
  margin-top: 3px !important;
}

/* Mobile */
@media (max-width: 640px) {
  body.woocommerce-checkout .ws-cpb {
    padding: 14px 16px !important;
  }
  body.woocommerce-checkout .ws-cpb-name { font-size: 13px !important; }
  body.woocommerce-checkout .ws-cpb-amount { font-size: 18px !important; }
}

/* ════════════════════════════════════════════════════════════════════
   v3.5.244 — Stripe-level SaaS polish, WooSculpt colors only
   Applies: spacing precision, shadow depth, gradient finesse,
   card lift, trust signals, review cards, CTA flow, pricing polish.
   Zero new colors. Zero new brand tokens. WooSculpt purple only.
   ════════════════════════════════════════════════════════════════════ */

/* ── 1. Page background: soft purple-tinted canvas (Stripe uses cool-tinted off-white) ── */
body { background: #f7f6fb !important; }
.ws-page, .ws-home-v2 { background: transparent !important; }

/* ── 2. Hero: atmospheric purple gradient mesh (Stripe's signature hero treatment) ── */
.home main.ws-home-v2 > .ws-home-hero,
body.home .ws-home-hero {
  position: relative;
  overflow: hidden;
  background: #fff !important;
}
body.home .ws-home-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 80% 60% at 60% -10%, rgba(108,71,255,.13) 0%, transparent 65%),
    radial-gradient(ellipse 50% 40% at 100% 30%, rgba(139,108,255,.09) 0%, transparent 60%),
    radial-gradient(ellipse 40% 50% at 0% 60%, rgba(108,71,255,.07) 0%, transparent 55%);
  pointer-events: none;
  z-index: 0;
}
body.home .ws-home-hero > * { position: relative; z-index: 1; }

/* ── 3. Eyebrow pill: refined, smaller, tighter (Stripe micro-cap style) ── */
.ws-eyebrow {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  padding: 4px 12px !important;
  border-radius: 999px !important;
  background: var(--ws-purple-soft) !important;
  border: 1px solid var(--ws-purple-border) !important;
  color: var(--ws-purple-dark) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  margin-bottom: 14px !important;
}

/* ── 4. Review cards: Stripe card-feature-light depth treatment ── */
.ws-home-reviews article,
.ws-review-card {
  background: #fff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 18px !important;
  box-shadow:
    rgba(108,71,255,0.05) 0 1px 3px,
    rgba(13,15,26,0.05) 0 8px 24px !important;
  padding: 24px !important;
  transition: box-shadow .2s, transform .2s !important;
}
.ws-home-reviews article:hover,
.ws-review-card:hover {
  box-shadow:
    rgba(108,71,255,0.10) 0 2px 8px,
    rgba(13,15,26,0.08) 0 16px 40px !important;
  transform: translateY(-3px) !important;
}
.ws-stars { color: #F59E0B !important; letter-spacing: .06em !important; }

/* ── 5. Feature section: tighter grid, more breathing room ── */
.ws-home-feature {
  gap: 56px !important;
  margin-bottom: 72px !important;
}
.ws-home-feature-visual {
  border-radius: 24px !important;
  filter: drop-shadow(0 24px 48px rgba(108,71,255,.14)) !important;
  border: 1px solid rgba(108,71,255,.1) !important;
}

/* ── 6. Check list items: Stripe-clean with better spacing ── */
.ws-home-checks { gap: 14px !important; }
.ws-home-checks p {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: var(--ws-text-2) !important;
}
.ws-home-checks p::before {
  background: rgba(108,71,255,.1) !important;
  color: var(--ws-purple) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

/* ── 7. Benefit cards: depth + glow treatment ── */
.ws-home-benefits .ws-home-benefit,
.ws-home-benefit {
  border: 1px solid var(--ws-border) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.04),
    0 4px 16px rgba(13,15,26,.05) !important;
  transition: border-color .18s, box-shadow .18s !important;
  padding: 22px !important;
}
.ws-home-benefit:hover {
  border-color: var(--ws-purple-border) !important;
  box-shadow:
    0 0 0 3px rgba(108,71,255,.06),
    0 8px 24px rgba(13,15,26,.08) !important;
}

/* ── 8. Stats / metric cards: tabular number treatment (Stripe tnum signal) ── */
.ws-home-stat,
.ws-home-stats .ws-home-stat,
.ws-stat-num,
[class*="stat"] .ws-stat-num,
.ws-home-metric {
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" !important;
}

/* ── 9. CTA section: refined gradient, tighter padding, stronger glow ── */
.ws-home-cta {
  background: linear-gradient(135deg, var(--ws-purple) 0%, #8B6CFF 60%, #a370ff 100%) !important;
  box-shadow:
    0 0 0 1px rgba(108,71,255,.2),
    0 24px 56px rgba(108,71,255,.28),
    0 8px 16px rgba(108,71,255,.16) !important;
  padding: 36px 40px !important;
  border-radius: 22px !important;
}
.ws-home-cta h2 { letter-spacing: -.035em !important; }

/* ── 10. Compare table: Stripe hairline precision ── */
.wsc-scroll,
.ws-v2-table-scroll {
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.05),
    0 8px 24px rgba(13,15,26,.06) !important;
}
.wsc-grid > div,
.ws-v2-cell {
  border-bottom: 1px solid var(--ws-border) !important;
  font-size: 14px !important;
}
.wsc-grid > div.wsc-ws,
.ws-v2-ws-col {
  background: rgba(108,71,255,.04) !important;
}

/* ── 11. Guarantee strip: Stripe calm green trust signal ── */
.wsg-strip,
.ws-v2-guarantee-inner {
  border: 1px solid #bbf7d0 !important;
  background: linear-gradient(90deg, #f0fdf6, #f8fff9) !important;
  border-radius: 14px !important;
  padding: 20px 28px !important;
  box-shadow: 0 1px 4px rgba(5,150,105,.06) !important;
}

/* ── 12. Product page pricing cards: Stripe card-pricing treatment ── */
.ws-plan-card {
  border: 1px solid var(--ws-border) !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.05),
    0 8px 24px rgba(13,15,26,.07) !important;
  transition: box-shadow .2s, transform .2s, border-color .2s !important;
}
.ws-plan-card:hover {
  border-color: var(--ws-purple-border) !important;
  box-shadow:
    0 0 0 3px rgba(108,71,255,.08),
    0 16px 40px rgba(13,15,26,.10) !important;
  transform: translateY(-2px) !important;
}
/* Featured plan: Stripe's dark featured tier — using WooSculpt purple, not navy */
.ws-plan-card.ws-plan-featured {
  background: linear-gradient(160deg, var(--ws-purple) 0%, var(--ws-purple-dark) 100%) !important;
  border-color: transparent !important;
  box-shadow:
    0 0 0 1px rgba(108,71,255,.3),
    0 24px 56px rgba(108,71,255,.32) !important;
}

/* ── 13. Pill toggle (billing period): pill precision ── */
.ws-billing-toggle-row {
  background: rgba(108,71,255,.07) !important;
  border-radius: 999px !important;
  box-shadow: inset 0 1px 3px rgba(108,71,255,.1) !important;
  border: 1px solid var(--ws-purple-border) !important;
}
.ws-billing-btn--active {
  box-shadow:
    0 2px 8px rgba(108,71,255,.14),
    0 1px 2px rgba(13,15,26,.06) !important;
}

/* ── 14. Header: refined nav with subtle border (Stripe nav-bar-on-mesh) ── */
.ws-site-header {
  border-bottom: 1px solid rgba(108,71,255,.08) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  background: rgba(255,255,255,.92) !important;
}

/* ── 15. Footer: Stripe footer-light — warm muted text, clean columns ── */
.ws-site-footer {
  background: #fff !important;
  border-top: 1px solid var(--ws-border) !important;
}
.ws-footer-col a {
  color: var(--ws-muted) !important;
  font-size: 13px !important;
  transition: color .14s !important;
}
.ws-footer-col a:hover { color: var(--ws-purple) !important; }
.ws-footer-col h3 {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--ws-muted-light) !important;
  margin-bottom: 14px !important;
}

/* ── 16. Legal pages: Stripe card-feature-light clean content cards ── */
.ws-legal-content .ws-info-card {
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.04),
    0 4px 16px rgba(13,15,26,.05) !important;
  padding: 28px 32px !important;
  margin-bottom: 16px !important;
}
.ws-legal-content .ws-info-card h2 {
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: -.02em !important;
  margin-bottom: 14px !important;
  color: var(--ws-text) !important;
}

/* ── 17. Founders bar: sharper gradient definition ── */
.ws-founders-bar {
  background: linear-gradient(90deg, #4a22e0 0%, var(--ws-purple) 45%, #9b6bff 100%) !important;
}
.ws-founders-clock {
  background: rgba(0,0,0,.18) !important;
  border-radius: 8px !important;
}

/* ── 18. Checkout & cart: Stripe input hairline precision ── */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-country-input input {
  border: 1.5px solid var(--ws-border-dark) !important;
  border-radius: 10px !important;
  background: #fff !important;
}
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-combobox input:focus,
body.woocommerce-checkout .wc-block-components-country-input input:focus {
  border-color: var(--ws-purple) !important;
  box-shadow: 0 0 0 3px rgba(108,71,255,.12) !important;
  outline: none !important;
}

/* ── 19. Buttons: Stripe-tight pill geometry for secondary ── */
.ws-btn-light {
  background: #fff !important;
  color: var(--ws-text) !important;
  border: 1.5px solid var(--ws-border-dark) !important;
  box-shadow: 0 1px 3px rgba(13,15,26,.06) !important;
}
.ws-btn-light:hover {
  border-color: var(--ws-purple) !important;
  color: var(--ws-purple) !important;
  box-shadow: 0 4px 12px rgba(108,71,255,.12) !important;
}

/* ── 20. Demo page: swatch pill, card polish ── */
.wsd-product,
.wsd-cart {
  box-shadow:
    0 1px 3px rgba(108,71,255,.06),
    0 12px 32px rgba(13,15,26,.08) !important;
}
.wsd-layout { gap: 24px !important; }

/* ── 21. Info / features section header ── */
.wsd-features h2,
.wsd-features-sub,
.ws-home-proof h2 {
  letter-spacing: -.03em !important;
}

/* ── 22. Responsive polish ── */
@media (max-width: 768px) {
  .ws-home-cta { padding: 24px 20px !important; flex-direction: column !important; align-items: flex-start !important; gap: 20px !important; }
  .ws-legal-content .ws-info-card { padding: 20px !important; }
}

/* ════════════════════════════════════════════════════════════════════
   v3.5.245 — Stripe-level polish: ALL remaining sections
   Docs, FAQ/accordions, support, auth, about, changelog, refund,
   product page, account, order received, step numbers, mini-stats.
   Zero new colors. WooSculpt purple only.
   ════════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────
   1. INFO / LEGAL / DOCS — page hero
   Stripe: generous whitespace, canvas-soft bg, strong h1 tracking
   ───────────────────────────────────────── */
.ws-info-hero {
  padding: 48px !important;
  background: linear-gradient(160deg, var(--ws-purple-soft) 0%, #fff 60%) !important;
  border: 1px solid var(--ws-purple-border) !important;
  border-radius: 22px !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.06),
    0 8px 24px rgba(13,15,26,.05) !important;
}
.ws-info-hero h1 {
  letter-spacing: -.04em !important;
  line-height: 1.06 !important;
  color: var(--ws-text) !important;
}
.ws-info-hero p {
  font-size: 16px !important;
  line-height: 1.65 !important;
  max-width: 640px !important;
}

/* ─────────────────────────────────────────
   2. INFO CARDS — docs, legal, about content blocks
   Stripe: card-feature-light — white, hairline border, subtle lift
   ───────────────────────────────────────── */
.ws-info-card {
  padding: 32px 36px !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.04),
    0 6px 20px rgba(13,15,26,.05) !important;
  transition: box-shadow .2s !important;
}
.ws-info-card:hover {
  box-shadow:
    0 1px 3px rgba(108,71,255,.07),
    0 12px 32px rgba(13,15,26,.08) !important;
}
.ws-info-card h2 {
  font-size: clamp(20px, 2.2vw, 28px) !important;
  letter-spacing: -.03em !important;
  line-height: 1.1 !important;
  margin: 6px 0 16px !important;
  color: var(--ws-text) !important;
}
.ws-info-card p,
.ws-info-card li {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: var(--ws-text-2) !important;
}
.ws-info-card ul,
.ws-info-card ol {
  padding-left: 20px !important;
  margin: 12px 0 0 !important;
  color: var(--ws-text-2) !important;
  line-height: 1.8 !important;
}
.ws-info-content { gap: 16px !important; }

/* ─────────────────────────────────────────
   3. STEP NUMBERS
   Stripe: brand-dark featured tile — using purple-soft + purple-dark
   ───────────────────────────────────────── */
.ws-step {
  width: 40px !important; height: 40px !important;
  border-radius: 12px !important;
  background: var(--ws-purple-soft) !important;
  color: var(--ws-purple-dark) !important;
  font-weight: 800 !important;
  font-family: 'Sora', sans-serif !important;
  font-size: 14px !important;
  letter-spacing: -.02em !important;
  border: 1px solid var(--ws-purple-border) !important;
  box-shadow: 0 1px 4px rgba(108,71,255,.12) !important;
}

/* ─────────────────────────────────────────
   4. FAQ ACCORDIONS — product, docs, support pages
   Stripe: hairline-bordered cards, precise open/close
   ───────────────────────────────────────── */
.ws-faq-list { gap: 8px !important; }
.ws-faq-list details {
  border: 1px solid var(--ws-border) !important;
  border-radius: 14px !important;
  background: #fff !important;
  overflow: hidden !important;
  transition: border-color .15s, box-shadow .15s !important;
  box-shadow: 0 1px 3px rgba(13,15,26,.04) !important;
}
.ws-faq-list details[open] {
  border-color: var(--ws-purple-border) !important;
  box-shadow:
    0 0 0 3px rgba(108,71,255,.07),
    0 4px 16px rgba(13,15,26,.06) !important;
}
.ws-faq-list summary {
  padding: 18px 22px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--ws-text) !important;
  list-style: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  cursor: pointer !important;
}
.ws-faq-list summary::-webkit-details-marker { display: none !important; }
.ws-faq-list summary::after {
  content: '+' !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  color: var(--ws-purple) !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}
.ws-faq-list details[open] summary::after { content: '−' !important; }
.ws-faq-list details p {
  padding: 0 22px 20px !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: var(--ws-text-2) !important;
  border-top: 1px solid var(--ws-border) !important;
  padding-top: 16px !important;
}

/* Support FAQ accordions (same treatment) */
.ws-support-faq details {
  border: 1px solid var(--ws-border) !important;
  border-radius: 14px !important;
  background: #fff !important;
  overflow: hidden !important;
  margin-bottom: 8px !important;
  box-shadow: 0 1px 3px rgba(13,15,26,.04) !important;
  transition: border-color .15s, box-shadow .15s !important;
}
.ws-support-faq details[open] {
  border-color: var(--ws-purple-border) !important;
  box-shadow: 0 0 0 3px rgba(108,71,255,.07), 0 4px 16px rgba(13,15,26,.06) !important;
}
.ws-support-faq summary {
  padding: 18px 22px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--ws-text) !important;
  list-style: none !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}
.ws-support-faq summary::-webkit-details-marker { display: none !important; }
.ws-support-faq summary::after {
  content: '+' !important;
  font-size: 20px !important;
  font-weight: 300 !important;
  color: var(--ws-purple) !important;
  flex-shrink: 0 !important;
  float: none !important;
}
.ws-support-faq details[open] summary::after { content: '−' !important; }
.ws-support-faq details p {
  padding: 0 22px 20px !important;
  margin: 0 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: var(--ws-text-2) !important;
  border-top: 1px solid var(--ws-border) !important;
  padding-top: 16px !important;
}

/* ─────────────────────────────────────────
   5. SUPPORT PAGE
   Stripe: clean card-feature-light sections, precise spacing
   ───────────────────────────────────────── */
.ws-support-hero,
.ws-support-checklist,
.ws-support-contact {
  border: 1px solid var(--ws-border) !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 1px 3px rgba(108,71,255,.04), 0 6px 20px rgba(13,15,26,.05) !important;
}
.ws-support-contact {
  background: linear-gradient(135deg, var(--ws-purple-soft) 0%, #fff 60%) !important;
  border-color: var(--ws-purple-border) !important;
}
.ws-support-contact-card {
  background: #fff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 3px rgba(13,15,26,.04) !important;
}

/* ─────────────────────────────────────────
   6. DOCS SIDEBAR
   Stripe: nav-bar-on-mesh — precise hairline links
   ───────────────────────────────────────── */
.ws-info-sidebar {
  background: #fff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 3px rgba(13,15,26,.04) !important;
  padding: 20px !important;
}
.ws-info-sidebar strong {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: .07em !important;
  color: var(--ws-muted-light) !important;
  display: block !important;
  margin-bottom: 10px !important;
}
.ws-info-sidebar a {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ws-text-2) !important;
  border-radius: 10px !important;
  padding: 8px 12px !important;
  transition: background .14s, color .14s !important;
}
.ws-info-sidebar a:hover {
  background: var(--ws-purple-soft) !important;
  color: var(--ws-purple-dark) !important;
}

/* ─────────────────────────────────────────
   7. MINI STATS (about, docs)
   Stripe: tabular-figure treatment, clean cards
   ───────────────────────────────────────── */
.ws-mini-stats div {
  background: #fff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 14px !important;
  padding: 20px !important;
  box-shadow: 0 1px 3px rgba(108,71,255,.04) !important;
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" !important;
  transition: box-shadow .2s, border-color .2s !important;
}
.ws-mini-stats div:hover {
  border-color: var(--ws-purple-border) !important;
  box-shadow: 0 4px 16px rgba(108,71,255,.1) !important;
}
.ws-mini-stats strong {
  font-family: 'Sora', sans-serif !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  color: var(--ws-purple) !important;
  letter-spacing: -.03em !important;
}

/* ─────────────────────────────────────────
   8. AUTH (login/register) — Stripe card-pricing feel
   ───────────────────────────────────────── */
.ws-auth-card {
  border-radius: 20px !important;
  border: 1px solid var(--ws-border) !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.06),
    0 16px 40px rgba(13,15,26,.08) !important;
}
.ws-auth-hero {
  border-radius: 20px !important;
  background: linear-gradient(160deg, var(--ws-purple-soft) 0%, #fff 70%) !important;
  border: 1px solid var(--ws-purple-border) !important;
  box-shadow: 0 1px 3px rgba(108,71,255,.06) !important;
}

/* ─────────────────────────────────────────
   9. ACCOUNT PAGES — order tables, sections
   Stripe: body-tabular tnum for all financial data
   ───────────────────────────────────────── */
body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-table--order-details,
body.woocommerce-order-received .woocommerce-order-details table {
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" !important;
  border-collapse: collapse !important;
  width: 100% !important;
}
body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td,
body.woocommerce-account .woocommerce-table--order-details th,
body.woocommerce-account .woocommerce-table--order-details td {
  font-size: 14px !important;
  padding: 12px 16px !important;
  border-bottom: 1px solid var(--ws-border) !important;
  color: var(--ws-text-2) !important;
}
body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-table--order-details th {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: var(--ws-muted-light) !important;
  background: var(--ws-surface-2) !important;
}

/* ─────────────────────────────────────────
   10. ORDER RECEIVED / THANK YOU
   Stripe: clean confirmation, success green accent
   ───────────────────────────────────────── */
body.woocommerce-order-received .woocommerce-order,
body.woocommerce-order-received .wc-block-order-confirmation {
  max-width: 640px !important;
  margin: 0 auto !important;
}
body.woocommerce-order-received .woocommerce-order-overview {
  background: #fff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  padding: 24px !important;
  list-style: none !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(140px,1fr)) !important;
  gap: 16px !important;
  box-shadow: 0 1px 3px rgba(13,15,26,.05) !important;
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" !important;
}
body.woocommerce-order-received .woocommerce-order-overview li {
  border: none !important;
  padding: 0 !important;
  font-size: 13px !important;
  color: var(--ws-muted) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
}
body.woocommerce-order-received .woocommerce-order-overview strong {
  font-size: 15px !important;
  color: var(--ws-text) !important;
  display: block !important;
}

/* ─────────────────────────────────────────
   11. CHANGELOG page
   Stripe: body-tabular dates, clean version cards
   ───────────────────────────────────────── */
.ws-changelog-entry,
.ws-changelog-version {
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 1px 3px rgba(13,15,26,.04) !important;
  overflow: hidden !important;
  margin-bottom: 16px !important;
}
.ws-changelog-entry-head,
.ws-changelog-version-head {
  background: var(--ws-surface-2) !important;
  border-bottom: 1px solid var(--ws-border) !important;
  padding: 16px 24px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}
.ws-changelog-version-num {
  font-family: 'Sora', sans-serif !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  color: var(--ws-purple) !important;
  letter-spacing: -.02em !important;
}
.ws-changelog-date {
  font-size: 12px !important;
  color: var(--ws-muted) !important;
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" !important;
}
.ws-changelog-entry-body,
.ws-changelog-version-body {
  padding: 20px 24px !important;
}

/* ─────────────────────────────────────────
   12. REFUND POLICY page: check/cross lists
   ───────────────────────────────────────── */
.ws-refund-check li,
/* ws-info-card check list — padding fixed at line 24300 */

/* ─────────────────────────────────────────
   13. PRODUCT PAGE — feature list, description
   Stripe: body-md precision, clean check marks
   ───────────────────────────────────────── */
.ws-home-v2 .ws-billing-save-badge,
.ws-plan-card .ws-billing-save-badge {
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
}
.single-product .ws-product-features li {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: var(--ws-text-2) !important;
  font-feature-settings: "ss01" !important;
}

/* ─────────────────────────────────────────
   14. INFO PAGE GRID (2-col sub-sections)
   ───────────────────────────────────────── */
.ws-info-grid-2 {
  gap: 16px !important;
}
.ws-info-grid-2 .ws-info-card {
  padding: 24px !important;
}

/* ─────────────────────────────────────────
   15. GLOBAL: Sora ss01 on all headings (Stripe's font-feature-settings)
   ───────────────────────────────────────── */
h1, h2, h3, h4, h5,
.ws-cpb-name, .ws-cpb-amount,
.wscart-product-name, .wscart-amount,
.ws-plan-price, .ws-plan-name {
  font-feature-settings: "ss01" !important;
}

/* ─────────────────────────────────────────
   16. GLOBAL: Body text — DM Sans at proper weight hierarchy
   Stripe uses weight 300 thin; WooSculpt uses DM Sans 400/500
   ───────────────────────────────────────── */
body {
  font-feature-settings: "ss01" !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
}
p { color: var(--ws-text-2) !important; }
.ws-info-card p,
.ws-home-checks p,
.ws-home-reviews p { color: var(--ws-muted) !important; }

/* ─────────────────────────────────────────
   17. PRICING SECTION number cells: tnum
   Stripe's quiet financial-infrastructure signal
   ───────────────────────────────────────── */
.ws-plan-price,
.ws-billing-price-yearly,
.ws-billing-price-monthly,
[class*="price"] {
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum", "ss01" !important;
}

/* ─────────────────────────────────────────
   18. CARD SHADOWS — unified Stripe shadow system
   Level 1: rgba(108,71,255,.05) 0 1px 3px
   Level 2: rgba(13,15,26,.06) 0 8px 24px
   ───────────────────────────────────────── */
.ws-card,
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
  box-shadow:
    rgba(108,71,255,.04) 0 1px 3px,
    rgba(13,15,26,.06) 0 6px 20px !important;
  border-radius: 18px !important;
  border: 1px solid var(--ws-border) !important;
}

/* ─────────────────────────────────────────
   19. RESPONSIVE polish
   ───────────────────────────────────────── */
@media (max-width: 768px) {
  .ws-info-hero { padding: 28px 24px !important; }
  .ws-info-card { padding: 22px !important; }
  .ws-info-sidebar { position: static !important; }
  .ws-support-contact { padding: 24px !important; grid-template-columns: 1fr !important; }
  .ws-mini-stats { grid-template-columns: 1fr 1fr !important; }
}

/* ════════════════════════════════════════════════════════════════════
   v3.5.246 — Fix 5 specific issues from screenshots
   ════════════════════════════════════════════════════════════════════ */

/* ── Fix 1: About page value cards (Lightweight/Practical/Focused)
   Was: plain divs with oversized purple bold text
   Fix: proper mini cards with header + body hierarchy ── */
.ws-mini-stats div strong {
  font-family: 'Sora', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--ws-text) !important;
  margin-bottom: 6px !important;
  display: block !important;
  letter-spacing: -.02em !important;
}
.ws-mini-stats div span {
  font-size: 13px !important;
  color: var(--ws-muted) !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
}

/* ── Fix 2: CTA section paragraph text — must be white, not dark
   The global p { color: var(--ws-text-2) } rule we added overrides it ── */
.ws-home-cta p,
.wsd-cta p,
.ws-demo-cta p {
  color: rgba(255,255,255,.82) !important;
}
.ws-home-cta h2,
.wsd-cta h2,
.ws-demo-cta h2 {
  color: #fff !important;
}

/* ── Fix 3: CTA section — add atmospheric gradient mesh
   Stripe-level: multiple radial overlays on top of the flat gradient ── */
.ws-home-cta {
  background: linear-gradient(135deg, #5c33e8 0%, var(--ws-purple) 50%, #8B6CFF 100%) !important;
  position: relative !important;
  overflow: hidden !important;
}
.ws-home-cta::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(ellipse 70% 80% at 90% 10%, rgba(255,255,255,.08) 0%, transparent 60%),
    radial-gradient(ellipse 40% 60% at 10% 90%, rgba(108,71,255,.3) 0%, transparent 55%) !important;
  pointer-events: none !important;
}
.ws-home-cta > * { position: relative !important; z-index: 1 !important; }

/* ── Fix 4: Feature benefits/convert section
   Lavender background is fine but cards need proper white surface ── */
.ws-home-convert {
  background: var(--ws-purple-soft) !important;
  border: 1px solid var(--ws-purple-border) !important;
  border-radius: 22px !important;
}
.ws-home-benefits .ws-home-benefit {
  background: #fff !important;
  border: 1px solid var(--ws-border) !important;
  border-radius: 16px !important;
  box-shadow:
    0 1px 3px rgba(108,71,255,.04),
    0 4px 14px rgba(13,15,26,.05) !important;
}
.ws-home-benefit:hover {
  border-color: var(--ws-purple-border) !important;
  box-shadow:
    0 0 0 3px rgba(108,71,255,.07),
    0 8px 24px rgba(13,15,26,.08) !important;
  transform: translateY(-2px) !important;
}

/* ── Fix 5: Account nav — Log out should NOT be red
   WooCommerce adds a .customer-logout class, override it ── */
body.woocommerce-account .woocommerce-MyAccount-navigation li.customer-logout a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a {
  color: var(--ws-muted) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.customer-logout a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
  color: var(--ws-danger) !important;
  background: #fff1f1 !important;
}

/* ── Also fix: account nav icons alignment — center them properly ── */
body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  gap: 10px !important;
  justify-content: center !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: var(--ws-purple-soft) !important;
  color: var(--ws-purple) !important;
  font-weight: 700 !important;
}

/* ── Fix global p color override — exclude elements that need white text ── */
.ws-home-cta p,
.wsd-cta p,
.ws-demo-cta p,
.ws-founders-bar p,
.ws-info-hero p + p { color: inherit !important; }


/* ════════════════════════════════════════════════════════
   v3.5.247 — Account nav mobile: compact horizontal scroll
   ════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  body.woocommerce-account .ws-account-nav {
    padding: 8px !important;
    margin-bottom: 16px !important;
    border-radius: 16px !important;
    overflow: visible !important;
  }

  /* Single scrollable horizontal row */
  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 6px !important;
    padding: 4px 2px 8px !important;
    scrollbar-width: none !important;
    grid-template-columns: unset !important;
    width: 100% !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
    display: none !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li {
    flex-shrink: 0 !important;
    width: auto !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    min-height: 36px !important;
    height: 36px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-align: center !important;
    background: var(--ws-surface-2) !important;
    color: var(--ws-text-2) !important;
    border: 1px solid var(--ws-border) !important;
    transition: background .14s, color .14s, border-color .14s !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
  body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: var(--ws-purple-soft) !important;
    color: var(--ws-purple) !important;
    border-color: var(--ws-purple-border) !important;
  }

  /* Log out chip — subtle red only on the chip */
  body.woocommerce-account .woocommerce-MyAccount-navigation li.customer-logout a {
    color: var(--ws-danger) !important;
    background: #fff1f2 !important;
    border-color: #fecdd3 !important;
  }
}

/* ════════════════════════════════════════════════════════
   v3.5.248 — Fix: account nav mobile + check list clipping
   ════════════════════════════════════════════════════════ */

/* ── Fix 1: Account nav mobile — revert to desktop vertical list ── */
@media (max-width: 768px) {
  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: grid !important;
    flex-direction: unset !important;
    flex-wrap: unset !important;
    overflow-x: visible !important;
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    padding: 0 !important;
    scrollbar-width: auto !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation li {
    flex-shrink: unset !important;
    width: 100% !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation a {
    display: flex !important;
    justify-content: center !important;
    white-space: normal !important;
    min-height: 46px !important;
    height: auto !important;
    padding: 0 16px !important;
    border-radius: 14px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    background: transparent !important;
    border: none !important;
    color: var(--ws-text-2) !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
    background: var(--ws-purple-soft) !important;
    color: var(--ws-purple) !important;
    border: none !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
    background: var(--ws-purple-soft) !important;
    color: var(--ws-purple-dark) !important;
    border: none !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation li.customer-logout a {
    color: var(--ws-muted) !important;
    background: transparent !important;
    border: none !important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation li.customer-logout a:hover {
    color: var(--ws-danger) !important;
    background: #fff1f2 !important;
  }
}

/* ── Fix 2: Check list padding — icon must not clip text ── */
.ws-info-card .ws-check-list li,
.ws-refund-check li {
  padding-left: 32px !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: var(--ws-text-2) !important;
}

/* ════════════════════════════════════════════════════════
   v3.5.249 — Account nav desktop: left-align text
   ════════════════════════════════════════════════════════ */
body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  justify-content: flex-start !important;
}
