/* Ambient FINAL — Visual link in head.tpl. Remove that link to disable.
   HOME v2 and catalog retain their existing component rules and geometry. */
body {
  --lkkb-ambient-base:#e9e5eb;
  --lkkb-ambient-card:#f8f6f8;
  --lkkb-ambient-panel:#ece6ef;
  --lkkb-ambient-text:#27242b;
  --lkkb-ambient-line:#c7bccd;
  --lkkb-ambient-focus:#63294f;
}
body:not(#index):not(#category):not(#search):not(#product):not(#module-leoproductsearch-productsearch) {
  color:var(--lkkb-ambient-text);
  background-color:var(--lkkb-ambient-base);
  background-image:
    radial-gradient(ellipse 85% 1100px at 0 0,rgba(204,156,171,.26),transparent 80%),
    radial-gradient(ellipse 95% 1400px at 100% 28%,rgba(174,155,193,.30),transparent 80%),
    radial-gradient(ellipse 100% 1200px at 0 65%,rgba(212,177,183,.26),transparent 80%),
    radial-gradient(ellipse 90% 1100px at 100% 100%,rgba(182,170,194,.28),transparent 80%);
}
body:not(#index) #header,
body:not(#index) #header .cus-sticky {
  background-color:var(--lkkb-ambient-base);
  background-image:radial-gradient(ellipse at 0 0,rgba(204,156,171,.23),transparent 85%),radial-gradient(ellipse at 100% 100%,rgba(174,155,193,.20),transparent 85%);
}
body:not(#index) #header .box-voganav2::before,
body:not(#index) #wrapper,
body:not(#index) .breadcrumb {background-color:transparent;}
body:not(#index) #header #leo_search_block_top {background-color:transparent;padding-block:0;margin-block:8px;}
@media(min-width:1280px) {
  body:not(#index) #header .box-vogatop2 :is(.h-logo,.popup-over > a.popup-title,.wislish-button > a.ap-btn-wishlist,.blockcart > .header,.userinfo-selector > button.popup-title) {height:68px;line-height:68px;}
}
/* Named public content surfaces, never an indiscriminate descendant reset. */
body :is(.page-customer-account,.page-authentication,.page-registration,.page-cms,.page-contact,.page-order-confirmation) #content,
body :is(#main > .page-content.card,.cart-grid .card,.cart-summary,.address,.addresses-footer,.order-confirmation-table,.definition-list,.page-not-found,.page-footer .account-link,.blog-item,.blog-detail,.blog-list .blog-container) {
  background-color:var(--lkkb-ambient-card);
  color:var(--lkkb-ambient-text);
  border-color:var(--lkkb-ambient-line);
}
body:is(#authentication,#registration,#identity,#address,#addresses,#history,#order-detail,#my-account,#cms,#contact,#password,#order-confirmation,#pagenotfound) #content {
  background-color:var(--lkkb-ambient-card);
  color:var(--lkkb-ambient-text);
  border-color:var(--lkkb-ambient-line);
}
body #content :is(.form-control,.input-group-addon,.custom-select),
body #footer .block_newsletter input {
  background-color:var(--lkkb-ambient-card);
  color:var(--lkkb-ambient-text);
  border-color:#8b7c93;
}
body #content :is(.table,.table-striped) {color:var(--lkkb-ambient-text);}
body #content .table thead th {background-color:var(--lkkb-ambient-panel);border-color:var(--lkkb-ambient-line);}
body#cart :is(.cart-grid-body .card,.cart-summary,.cart-detailed-actions,.cart-voucher,.cart-overview,.cart-items,.cart-summary-products,.cart-summary-totals) {background-color:var(--lkkb-ambient-card);border-color:var(--lkkb-ambient-line);color:var(--lkkb-ambient-text);}
body#cart :is(.product-line-info,.cart-summary-line,.cart-total,.cart-grid .label,.cart-grid .value,.cart-grid .product-price) {color:var(--lkkb-ambient-text);}
body#cart .cart-summary-totals {background-color:var(--lkkb-ambient-panel);}
/* Match the existing checkout visual stylesheet's scope; no layout or behavior overrides. */
body#checkout #form_ets_onepagecheckout {--lkkb-checkout-line:var(--lkkb-ambient-line);--lkkb-checkout-ink:var(--lkkb-ambient-text);background-color:transparent;}
body#checkout #form_ets_onepagecheckout :is(.block-onepagecheckout,.block-content,#delivery-addresses,#invoice-addresses,.payment-options,.delivery-options,.cart-summary-products) {background-color:var(--lkkb-ambient-card);color:var(--lkkb-ambient-text);}
body#checkout #form_ets_onepagecheckout .block-onepagecheckout > .title-heading {background-color:var(--lkkb-ambient-panel);color:var(--lkkb-ambient-text);}
body#checkout #form_ets_onepagecheckout .block-shopping-cart > .title-heading {background-color:#27242b;color:#f8f6f8;}
body#checkout #form_ets_onepagecheckout :is(.form-control,.promo-input) {background-color:var(--lkkb-ambient-card);color:var(--lkkb-ambient-text);border-color:#8b7c93;}
body#checkout #form_ets_onepagecheckout :is(.cart-summary-line,.cart-summary-line .label,.cart-summary-line .value,.product-line-info,.product-name,.product-price,.product-quantity,.product-line-grid,.cart-summary-totals) {color:var(--lkkb-ambient-text);}
body#checkout #form_ets_onepagecheckout :is(.cart-summary-totals,.delivery-option,.payment-option) {background-color:var(--lkkb-ambient-panel);}
/* Preserve native success/error semantics and checked/disabled indicators. */
body #content :is(.alert-danger,.has-error .help-block) {color:#7b1827;background-color:#f7e7eb;border-color:#bd7383;}
body #content .alert-success {color:#235037;background-color:#e6f0e9;border-color:#7b9f88;}
body #content .alert-warning {color:#624615;background-color:#f4eddf;border-color:#ac956b;}
body #content .alert-info {color:#34475b;background-color:#e7edf3;border-color:#8b9eaf;}
body :is(#header,#content,#content-wrapper,#footer) :is(a,button,input,textarea,select):focus-visible {
  /* Existing theme.css .btn:focus uses outline:none !important. */
  outline:2px solid var(--lkkb-ambient-focus) !important;outline-offset:3px;
}
/* No image, color-swatch, font, payment icon, visibility or validation changes. */
/* Same specificity as checkout-visual.css's non-number field rule. */
body#checkout #form_ets_onepagecheckout .form-control:not([type="number"]),
body#checkout #form_ets_onepagecheckout .promo-input {background-color:var(--lkkb-ambient-card);}
/* Blog listing/editorial stylesheets are emitted inside their templates,
   after head: use the existing #page ancestor to win without !important. */
body[id^="module-leoblog-"] #page #wrapper {background-color:transparent;}
body[id^="module-leoblog-"] #page :is(.lkkb-blog-card,.blog-detail,.blog-item) {background-color:var(--lkkb-ambient-card);border-color:var(--lkkb-ambient-line);}
body[id^="module-leoblog-"] #page :is(.lkkb-blog-card h2,.lkkb-blog-card time,.lkkb-blog-excerpt,.lkkb-blog-card-link) {font-family:Poppins,sans-serif;}
body#module-leoblog-blog #page .lkkb-editorial {font-family:Poppins,sans-serif;--ink:var(--lkkb-ambient-text);}
body#module-leoblog-blog #page .lkkb-editorial .blog-description {background-color:transparent;font-family:Poppins,sans-serif;}
/* Review arrows extend -5px beyond their carousel in the source theme.
   Keep the controls inside their panel instead of clipping the page. */
body #footer .box-nomreview .owl-controls .owl-buttons .owl-next {right:5px;}
body #footer .box-nomreview .owl-controls .owl-buttons .owl-prev {left:5px;}

/* AMBIENT-CART-POLISH — cart presentation only. Existing AJAX markup intact. */
body#cart .cart-grid .cart-container,
body#cart .cart-grid .cart-summary {
  border:1px solid var(--lkkb-ambient-line);
  border-radius:16px;
  box-shadow:0 5px 18px rgba(50,37,58,.055);
}
body#cart .cart-grid .cart-container {padding:24px;}
body#cart .cart-container > .card-block {padding:0 0 20px;}
body#cart .cart-container h1 {margin:0;line-height:1.4;}
body#cart .cart-container > .separator {margin:0;border-color:var(--lkkb-ambient-line);}
body#cart .cart-container .cart-overview {padding:0;}
body#cart .cart-container .cart-items {padding:0;margin:0;}
body#cart .cart-container .cart-item {padding:24px 0;}
body#cart .cart-container .cart-item + .cart-item {border-top:1px solid #ddd4e1;}
body#cart .cart-container .cart-item:last-child {padding-bottom:4px;}
body#cart .cart-item .product-line-grid {
  display:grid;grid-template-columns:100px minmax(0,1fr) 210px;
  align-items:center;gap:20px;margin:0;
}
body#cart .cart-item .product-line-grid::before,
body#cart .cart-item .product-line-grid::after {display:none;}
body#cart .cart-item .product-line-grid > div {float:none;width:auto;min-width:0;padding:0;}
body#cart .cart-item .product-line-grid-left img {display:block;width:100%;height:auto;object-fit:contain;border-radius:8px;}
body#cart .cart-item .product-line-grid-body .product-line-info {margin-bottom:6px;line-height:1.5;}
body#cart .cart-item .product-line-grid-body .product-line-info > .label {color:var(--lkkb-ambient-text);}
body#cart .cart-item .product-line-grid-body > br {display:none;}
body#cart .cart-item .product-line-grid-body a.label {display:inline;overflow-wrap:anywhere;}
body#cart .cart-item .product-line-grid-right > .row,
body#cart .cart-item .product-line-grid-right > .row > .col-md-10 > .row {display:flex;align-items:center;margin:0;gap:12px;}
body#cart .cart-item .product-line-grid-right .row::before,
body#cart .cart-item .product-line-grid-right .row::after {display:none;}
body#cart .cart-item .product-line-grid-right > .row > .hidden-md-up {display:none;}
body#cart .cart-item .product-line-grid-right > .row > .col-md-10 {flex:1;min-width:0;width:auto;padding:0;}
body#cart .cart-item .product-line-grid-right > .row > .text-xs-right {flex:0 0 40px;width:40px;padding:0;}
body#cart .cart-item .product-line-grid-right .qty {flex:0 0 68px;width:68px;padding:0;}
body#cart .cart-item .product-line-grid-right .price {flex:1;min-width:0;width:auto;padding:0;text-align:right;white-space:nowrap;}
body#cart .cart-item .product-line-grid-right .bootstrap-touchspin {box-shadow:none;}
body#cart .cart-item .remove-from-cart {display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:44px;color:#62566b;}
body#cart .cart-item .remove-from-cart:hover {color:#7b1827;}
body#cart .cart-item .remove-from-cart .material-icons {float:none;}
body#cart .cart-summary .cart-detailed-totals {padding:24px;}
body#cart .cart-summary .cart-detailed-actions {padding:0 24px 24px;}
body#cart .cart-summary .cart-summary-line {line-height:1.6;}
body#cart .cart-summary .cart-summary-totals {border-radius:10px;}
body#cart .cart-container .no-items {display:block;padding:24px 0 4px;line-height:1.6;}
@media(min-width:768px) {
  body#cart .cart-grid-body > .cart-container {margin-bottom:0;border-bottom:0;border-radius:16px 16px 0 0;}
  body#cart .cart-grid-body > a.label {
    display:flex;align-items:center;gap:6px;padding:20px 24px;
    margin:0 0 24px;background-color:var(--lkkb-ambient-card);
    border:1px solid var(--lkkb-ambient-line);border-top:0;border-radius:0 0 16px 16px;
    color:var(--lkkb-ambient-text);min-height:48px;
  }
}
@media(max-width:991px) and (min-width:768px) {
  body#cart .cart-item .product-line-grid {grid-template-columns:100px minmax(0,1fr) 210px;gap:16px;}
}
@media(max-width:767px) {
  body#cart .cart-grid .cart-container {padding:20px;}
  body#cart .cart-item .product-line-grid {grid-template-columns:80px minmax(0,1fr);gap:16px;align-items:start;}
  body#cart .cart-item .product-line-grid-right {grid-column:1 / -1;}
  body#cart .cart-item .product-line-grid-right > .row {justify-content:space-between;}
  body#cart .cart-item .product-line-grid-right > .row > .col-md-10 {flex:0 1 220px;}
  body#cart .cart-grid-right > .cart-summary::before {border:1px solid var(--lkkb-ambient-line);border-radius:16px;box-shadow:0 5px 18px rgba(50,37,58,.055);}
  body#cart .cart-grid .cart-detailed-totals {padding:24px 20px;}
  body#cart .cart-grid-body > a.label {border-radius:12px;background-color:var(--lkkb-ambient-card);border:1px solid var(--lkkb-ambient-line);color:var(--lkkb-ambient-text);}
}
/* Use one divider per article, replacing the theme's bottom-border rule. */
body#cart .cart-container .cart-item {border-bottom:1px solid #ddd4e1;}
body#cart .cart-container .cart-item + .cart-item {border-top:0;}
body#cart .cart-container .cart-item:last-child {border-bottom:0;}

/* Account and order-confirmation polish: presentation and existing tokens only. */
body:is(#authentication,#registration) #content {
  max-width:760px;margin-inline:auto;padding:clamp(20px,3vw,32px);
  border:1px solid var(--lkkb-ambient-line);border-radius:16px;
  box-shadow:0 5px 18px rgba(50,37,58,.055);
}
body:is(#authentication,#registration) #content :is(.login-form,.register-form) {min-width:0;}
body:is(#authentication,#registration) #content .form-control {border-radius:8px;}
body:is(#authentication,#registration) #content .form-footer {padding-top:16px;}
body:is(#authentication,#registration) #content .no-account {padding-top:8px;line-height:1.6;}
body:is(#authentication,#registration) #content :is(.no-account a,.forgot-password a) {text-decoration:underline;text-underline-offset:3px;}
body#order-confirmation :is(#content-hook_order_confirmation,#content,#content-hook_payment_return) {
  border:1px solid var(--lkkb-ambient-line);border-radius:16px;
  background-color:var(--lkkb-ambient-card);box-shadow:0 5px 18px rgba(50,37,58,.055);
  margin-bottom:24px;
}
body#order-confirmation :is(#content-hook_order_confirmation,#content,#content-hook_payment_return) > .card-block {padding:24px;}
body#order-confirmation #content-hook_order_confirmation .card-title {text-transform:none;line-height:1.35;overflow-wrap:anywhere;}
body#order-confirmation #content-hook_order_confirmation p {line-height:1.7;overflow-wrap:anywhere;}
body#order-confirmation #content-hook_order_confirmation p a {text-decoration:underline;text-underline-offset:3px;}
body#order-confirmation #content > .card-block > .row {display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:24px;margin:0;}
body#order-confirmation #content > .card-block > .row::before,
body#order-confirmation #content > .card-block > .row::after {display:none;}
body#order-confirmation :is(#order-items,#order-details) {width:auto;min-width:0;padding:0;float:none;}
body#order-confirmation #order-items .lkkb-order-items-title {text-transform:none;margin:0 0 20px;}
body#order-confirmation #order-items .lkkb-order-product {
  display:grid;grid-template-columns:84px minmax(0,1fr) 240px;gap:20px;
  align-items:center;margin:0 0 16px;padding:20px;
  background-color:var(--lkkb-ambient-card);border:1px solid var(--lkkb-ambient-line);border-radius:14px;
}
body#order-confirmation #order-items .lkkb-order-product::before,
body#order-confirmation #order-items .lkkb-order-product::after {display:none;}
body#order-confirmation #order-items .lkkb-order-product > :is(div,dl) {width:auto;min-width:0;float:none;padding:0;}
body#order-confirmation #order-items .lkkb-order-image .image {display:block;}
body#order-confirmation #order-items .lkkb-order-image img {display:block;width:84px;max-width:100%;height:auto;object-fit:contain;border-radius:8px;}
body#order-confirmation #order-items .details {font-family:inherit;line-height:1.6;overflow-wrap:anywhere;}
body#order-confirmation #order-items .lkkb-order-product-name {display:block;font-weight:600;}
body#order-confirmation #order-items .lkkb-order-description {font-size:13px;line-height:1.6;margin:8px 0;color:#514b58;}
body#order-confirmation #order-items .lkkb-order-attributes {margin:8px 0 0;}
body#order-confirmation #order-items .lkkb-order-attributes > div {display:flex;flex-wrap:wrap;gap:6px;}
body#order-confirmation #order-items .lkkb-order-attributes dt {font-weight:500;}
body#order-confirmation #order-items .lkkb-order-attributes dd {margin:0;}
body#order-confirmation #order-items .lkkb-order-amounts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;line-height:1.5;text-align:center;}
body#order-confirmation #order-items .lkkb-order-amounts dt {font-size:12px;font-weight:400;color:#514b58;text-transform:none;}
body#order-confirmation #order-items .lkkb-order-amounts dd {margin:6px 0 0;font-size:14px;overflow-wrap:anywhere;}
body#order-confirmation #order-items .order-confirmation-table > table {width:100%;line-height:1.6;}
body#order-confirmation #order-items .order-confirmation-table > table td {padding:12px 8px;border-color:var(--lkkb-ambient-line);}
body#order-confirmation #order-items .order-confirmation-table > table td:last-child {text-align:right;}
body#order-confirmation #order-items .order-confirmation-table > table .total-value {background-color:var(--lkkb-ambient-panel);}
body#order-confirmation #order-details {line-height:1.7;overflow-wrap:anywhere;}
@media(max-width:1199px) {
  body#order-confirmation #content > .card-block > .row {grid-template-columns:minmax(0,1fr);}
}
@media(max-width:767px) {
  body#order-confirmation :is(#content-hook_order_confirmation,#content,#content-hook_payment_return) > .card-block {padding:20px;}
  body#order-confirmation #order-items .lkkb-order-product {grid-template-columns:64px minmax(0,1fr);gap:14px;padding:16px;}
  body#order-confirmation #order-items .lkkb-order-amounts {grid-column:1 / -1;padding-top:14px;border-top:1px solid var(--lkkb-ambient-line);}
}
