/* Account, authenticated order views and checkout return endpoints only. */
.vbv2-customer-page{padding-block:56px var(--vbv2-section-lg)}
.vbv2-customer-intro{margin-bottom:36px;max-width:820px}
.vbv2-customer-intro h1{font-size:clamp(34px,4vw,48px);margin-bottom:16px}
.vbv2-customer-intro>p:last-child{margin-bottom:0;color:var(--vbv2-muted)}
.vbv2-customer-page .woocommerce{color:var(--vbv2-text)}
.vbv2-account-page>.woocommerce:has(.woocommerce-MyAccount-navigation){display:grid;grid-template-columns:250px minmax(0,1fr);align-items:start;gap:32px}
.vbv2-account-page>.woocommerce::before,.vbv2-account-page>.woocommerce::after{display:none}
.vbv2-account-page .woocommerce-MyAccount-navigation{float:none;width:auto;padding:12px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface)}
.vbv2-account-page .woocommerce-MyAccount-navigation ul{margin:0;padding:0;list-style:none}
.vbv2-account-page .woocommerce-MyAccount-navigation li+li{margin-top:4px}
.vbv2-account-page .woocommerce-MyAccount-navigation a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 16px;border-radius:var(--vbv2-radius-control);font-weight:700;text-decoration:none}
.vbv2-account-page .woocommerce-MyAccount-navigation a::after{content:"→";font-size:18px}
.vbv2-account-page .woocommerce-MyAccount-navigation a:hover{background:var(--vbv2-surface-soft)}
.vbv2-account-page .woocommerce-MyAccount-navigation .is-active a{background:var(--vbv2-green);color:var(--vbv2-white)}
.vbv2-account-page .woocommerce-MyAccount-navigation-link--customer-logout{margin-top:12px!important;padding-top:12px;border-top:1px solid var(--vbv2-border-soft)}
.vbv2-account-page .woocommerce-MyAccount-content{float:none;width:auto;min-width:0;padding:32px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface)}
.vbv2-account-page .woocommerce-MyAccount-content>:last-child{margin-bottom:0}
.vbv2-account-page>.woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.vbv2-account-page>.woocommerce>.woocommerce-notices-wrapper:empty{display:none}
.vbv2-customer-page h2{font-size:28px;line-height:1.3;margin-bottom:24px}
.vbv2-customer-page h3{font-size:23px}
.vbv2-account-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}
.vbv2-account-shortcuts>a{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:24px 20px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface-soft);text-decoration:none;transition:border-color var(--vbv2-transition),transform var(--vbv2-transition)}
.vbv2-account-shortcuts>a:hover{border-color:var(--vbv2-olive);transform:translateY(-2px)}
.vbv2-account-shortcuts>a>span:last-child{align-self:flex-end;margin-top:auto}
.vbv2-customer-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid var(--vbv2-border);border-radius:50%;background:var(--vbv2-surface);color:var(--vbv2-green)}
.vbv2-customer-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
/* Native form field names, ordering, validation and password controls remain authoritative. */
.vbv2-customer-page .woocommerce form .form-row{padding:0;margin:0 0 22px}
.vbv2-customer-page .woocommerce form .form-row-first,.vbv2-customer-page .woocommerce form .form-row-last{width:48%}
.vbv2-customer-page .woocommerce form .form-row label{display:block;margin-bottom:8px;font-size:14px;line-height:1.5;font-weight:700}
.vbv2-customer-page .woocommerce form .form-row input.input-text,.vbv2-customer-page .woocommerce form .form-row textarea,.vbv2-customer-page .woocommerce form .form-row select{width:100%;min-height:50px;padding:12px 15px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-control);background:var(--vbv2-bg);font:inherit;color:var(--vbv2-ink)}
.vbv2-customer-page .woocommerce form .form-row input[type=checkbox],.vbv2-customer-page .woocommerce form .form-row input[type=radio]{width:18px;height:18px;min-height:0;accent-color:var(--vbv2-green);vertical-align:middle;margin-right:8px}
.vbv2-customer-page .woocommerce form .form-row label.checkbox,.vbv2-customer-page .woocommerce-form-login__rememberme{font-weight:400}
.vbv2-customer-page .woocommerce .password-input{display:block;width:100%}
.vbv2-customer-page .woocommerce .password-input input{padding-right:48px!important}
.vbv2-customer-page .woocommerce .show-password-input{top:0;right:0;width:44px;height:50px;display:grid;place-items:center;transform:none}
.vbv2-customer-page .woocommerce .show-password-input::after{margin:0}
.vbv2-customer-page .woocommerce form span em,.vbv2-customer-page .woocommerce form .description,.vbv2-customer-page .woocommerce-password-hint{display:block;margin-top:8px;font-size:13px;line-height:1.6;font-style:normal;color:var(--vbv2-muted)}
.vbv2-customer-page .woocommerce form fieldset{clear:both;margin:32px 0;padding:28px 24px 4px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface-soft)}
.vbv2-customer-page .woocommerce form legend{padding:0 10px;font-family:var(--vbv2-font-display);font-size:23px;color:var(--vbv2-ink)}
.vbv2-customer-page .woocommerce button.button,.vbv2-customer-page .woocommerce a.button,.vbv2-customer-page .woocommerce input.button{min-height:46px;line-height:1.4;padding:11px 20px;border:1px solid var(--vbv2-green);border-radius:var(--vbv2-radius-control);background:var(--vbv2-green);color:var(--vbv2-white);font-size:14px;font-weight:700;text-align:center}
.vbv2-customer-page .woocommerce button.button:hover,.vbv2-customer-page .woocommerce a.button:hover{background:var(--vbv2-green-hover);color:var(--vbv2-white)}
.vbv2-customer-page .woocommerce button.button:disabled{opacity:.55}
.vbv2-customer-page .woocommerce form .woocommerce-invalid :is(input.input-text,select,textarea){border-color:var(--vbv2-error)}
.vbv2-customer-page .select2-container .select2-selection--single{height:50px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-control);background:var(--vbv2-bg)}
.vbv2-customer-page .select2-container .select2-selection--single .select2-selection__rendered{padding:10px 40px 10px 15px;line-height:28px;color:var(--vbv2-ink)}
.vbv2-customer-page .select2-container .select2-selection--single .select2-selection__arrow{height:48px;right:10px}
/* Notices occupy a full row and reserve their own icon space. */
.vbv2-customer-page .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){grid-column:1/-1;clear:both;padding:18px 22px 18px 54px;margin:0 0 24px;border:1px solid var(--vbv2-border);background:var(--vbv2-surface-soft);border-radius:var(--vbv2-radius-control);overflow-wrap:anywhere}
.vbv2-customer-page .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before{top:19px;left:22px;color:var(--vbv2-green)}
.vbv2-customer-page .woocommerce .woocommerce-error::before{color:var(--vbv2-error)}
.vbv2-customer-page .woocommerce .woocommerce-error li{padding:0;margin:0}
/* Orders, downloads, saved methods and order detail tables. */
.vbv2-customer-page .woocommerce table.shop_table{width:100%;margin:0 0 28px;border:1px solid var(--vbv2-border);border-spacing:0;border-radius:var(--vbv2-radius-control);overflow:hidden;font-size:15px}
.vbv2-customer-page .woocommerce table.shop_table th,.vbv2-customer-page .woocommerce table.shop_table td{padding:16px;vertical-align:middle;line-height:1.6;border-color:var(--vbv2-border-soft);overflow-wrap:anywhere}
.vbv2-customer-page .woocommerce table.shop_table thead{background:var(--vbv2-surface-soft)}
.vbv2-customer-page .woocommerce table.shop_table th{font-weight:700;color:var(--vbv2-ink)}
.vbv2-customer-page .woocommerce table.shop_table .button{margin:3px;min-height:40px;padding:8px 12px;font-size:13px}
.vbv2-customer-page .woocommerce .woocommerce-pagination{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}
.vbv2-customer-page .woocommerce table.order_details{table-layout:fixed}
.vbv2-customer-page .woocommerce table.order_details .product-total{width:32%;text-align:right}
.vbv2-customer-page .woocommerce table.order_details tfoot td{text-align:right}
.vbv2-customer-page .woocommerce .wc-item-meta{margin:8px 0 0;padding:0;font-size:13px;color:var(--vbv2-muted);list-style:none}
.vbv2-customer-page .woocommerce .wc-item-meta p{display:inline}
/* Native address cards and signed-in / guest forms. */
.vbv2-customer-page .woocommerce .col2-set{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:100%}
.vbv2-customer-page .woocommerce .col2-set::before,.vbv2-customer-page .woocommerce .col2-set::after{display:none}
.vbv2-customer-page .woocommerce .col2-set .col-1,.vbv2-customer-page .woocommerce .col2-set .col-2{float:none;width:auto;min-width:0}
.vbv2-customer-page .woocommerce .woocommerce-Addresses>div{padding:24px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-bg)}
.vbv2-customer-page .woocommerce .woocommerce-Address-title{display:block;margin-bottom:20px}
.vbv2-customer-page .woocommerce .woocommerce-Address-title::before,.vbv2-customer-page .woocommerce .woocommerce-Address-title::after{display:none}
.vbv2-customer-page .woocommerce .woocommerce-Address-title h2,.vbv2-customer-page .woocommerce .woocommerce-Address-title h3{float:none;margin:0;font-size:22px}
.vbv2-customer-page .woocommerce .woocommerce-Address-title a{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;float:none;font-size:14px;font-weight:700}
.vbv2-customer-page .woocommerce address{font-style:normal;line-height:1.9;overflow-wrap:anywhere}
.vbv2-customer-page .woocommerce form.login,.vbv2-customer-page .woocommerce form.register,.vbv2-customer-page .woocommerce form.lost_reset_password{padding:32px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface)}
.vbv2-customer-page .woocommerce form.lost_reset_password{max-width:640px}
.vbv2-customer-page .woocommerce form.lost_reset_password .form-row-first{float:none;width:100%}
.vbv2-customer-page .woocommerce .woocommerce-privacy-policy-text{font-size:14px}
/* Woo's validated order data and native gateway / delivery hooks. */
.vbv2-order-page{max-width:1100px}
.vbv2-order-page .woocommerce-order{display:grid;gap:28px}
.vbv2-receipt-heading{display:flex;align-items:flex-start;gap:24px;padding:36px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-editorial);background:var(--vbv2-surface-soft)}
.vbv2-receipt-heading .vbv2-customer-icon{width:64px;height:64px}
.vbv2-receipt-heading .vbv2-customer-icon svg{width:38px;height:38px}
.vbv2-receipt-heading h2{margin:0 0 12px;font-size:32px}
.vbv2-receipt-heading p{margin:0 0 16px}
.vbv2-order-status{display:inline-flex;padding:6px 12px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-pill);background:var(--vbv2-surface);color:var(--vbv2-green);font-size:13px;font-weight:700}
.vbv2-order-page .woocommerce ul.order_details{display:flex;flex-wrap:wrap;gap:24px;margin:0;padding:24px 28px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface)}
.vbv2-order-page .woocommerce ul.order_details::before,.vbv2-order-page .woocommerce ul.order_details::after{display:none}
.vbv2-order-page .woocommerce ul.order_details li{float:none;flex:1 1 150px;min-width:0;padding:0;margin:0;border:0;color:var(--vbv2-muted);font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.vbv2-order-page .woocommerce ul.order_details li strong{margin-top:6px;color:var(--vbv2-ink);font-size:17px;text-transform:none}
.vbv2-order-page .woocommerce-order-details,.vbv2-order-page .woocommerce-customer-details{padding:32px;margin:0;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface)}
.vbv2-customer-page .woocommerce .woocommerce-customer-details address{padding:20px;border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-control);background:var(--vbv2-bg)}
.vbv2-order-page .woocommerce-order-details table{margin-bottom:0}
.vbv2-order-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:24px;margin-top:36px}
.vbv2-order-page .woocommerce-notice--error{padding:24px;border:1px solid var(--vbv2-error);border-radius:var(--vbv2-radius-card);background:var(--vbv2-surface)}
.vbv2-order-page #order_review{padding:28px;background:var(--vbv2-surface);border:1px solid var(--vbv2-border);border-radius:var(--vbv2-radius-card)}
@media(max-width:1000px){
  .vbv2-account-page>.woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:210px minmax(0,1fr);gap:20px}
  .vbv2-account-page .woocommerce-MyAccount-content{padding:24px}
  .vbv2-account-shortcuts{grid-template-columns:1fr}
  .vbv2-account-shortcuts>a{flex-direction:row;align-items:center;padding:18px}
  .vbv2-account-shortcuts>a>span:last-child{align-self:center;margin:0 0 0 auto}
  .vbv2-account-page .woocommerce .col2-set{grid-template-columns:1fr}
}
@media(max-width:767px){
  .vbv2-customer-page{padding-top:32px}
  .vbv2-customer-intro{margin-bottom:28px}
  .vbv2-account-page>.woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:1fr}
  .vbv2-account-page .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:6px}
  .vbv2-account-page .woocommerce-MyAccount-navigation li+li{margin-top:0}
  .vbv2-account-page .woocommerce-MyAccount-navigation a{min-height:44px;padding:10px 12px;font-size:13px}
  .vbv2-account-page .woocommerce-MyAccount-navigation a::after{display:none}
  .vbv2-account-page .woocommerce-MyAccount-navigation-link--customer-logout{margin-top:0!important;padding:0;border:0}
  .vbv2-account-page .woocommerce-MyAccount-content{padding:24px 18px}
  .vbv2-customer-page .woocommerce form .form-row-first,.vbv2-customer-page .woocommerce form .form-row-last{float:none;width:100%}
  .vbv2-customer-page .woocommerce form fieldset{padding:20px 16px 0}
  .vbv2-customer-page .woocommerce .col2-set{grid-template-columns:1fr}
  .vbv2-customer-page .woocommerce form.login,.vbv2-customer-page .woocommerce form.register,.vbv2-customer-page .woocommerce form.lost_reset_password{padding:24px 18px}
  .vbv2-customer-page .woocommerce table.shop_table th,.vbv2-customer-page .woocommerce table.shop_table td{padding:12px;font-size:14px}
  .vbv2-customer-page .woocommerce table.shop_table_responsive tr{margin-bottom:16px}
  .vbv2-customer-page .woocommerce table.shop_table_responsive tr td{background:var(--vbv2-surface)}
  .vbv2-customer-page .woocommerce table.order_details .product-total{width:50%}
  .vbv2-customer-page h2{font-size:25px}
  .vbv2-receipt-heading{padding:24px 20px;gap:16px;flex-direction:column}
  .vbv2-receipt-heading h2{font-size:28px}
  .vbv2-order-page .woocommerce-order-details,.vbv2-order-page .woocommerce-customer-details{padding:24px 16px}
  .vbv2-order-page .woocommerce ul.order_details{padding:24px;gap:20px}
  .vbv2-order-page .woocommerce ul.order_details li{flex-basis:40%}
  .vbv2-order-page #order_review{padding:20px 16px}
}
