/*
 * Valgusallikad v2.1.6 — quality, accessibility and commerce polish
 */
:root{
  --vlg-focus-ring: 0 0 0 3px rgba(242,138,0,.24), 0 0 0 1px var(--vlg-primary);
}
.vlg-theme a:focus-visible,
.vlg-theme button:focus-visible,
.vlg-theme input:focus-visible,
.vlg-theme select:focus-visible,
.vlg-theme textarea:focus-visible,
.vlg-theme [tabindex]:focus-visible{
  outline:0!important;
  box-shadow:var(--vlg-focus-ring)!important;
}
.vlg-theme .skip-link:focus{
  left:16px;
  top:16px;
  z-index:99999;
  width:auto;
  height:auto;
  padding:12px 16px;
  border-radius:999px;
  background:#fff;
  color:var(--vlg-dark);
  box-shadow:0 18px 44px rgba(15,23,42,.20);
}
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error{
  position:relative;
  overflow:hidden;
}
body.woocommerce-cart .woocommerce-message .blockUI,
body.woocommerce-cart .woocommerce-message .blockOverlay,
body.woocommerce-cart .woocommerce-info .blockUI,
body.woocommerce-cart .woocommerce-info .blockOverlay,
body.woocommerce-cart .woocommerce-error .blockUI,
body.woocommerce-cart .woocommerce-error .blockOverlay,
.vlg-cleanup-hidden{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.woocommerce .woocommerce-notices-wrapper:empty,
.woocommerce .woocommerce-notices-wrapper:has(.vlg-cleanup-hidden:only-child){
  display:none;
}
.vlg-cookie-notice{
  position:fixed;
  z-index:9999;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  width:min(760px,calc(100vw - 32px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:16px 18px;
  border:1px solid rgba(148,163,184,.35);
  border-radius:22px;
  background:rgba(255,255,255,.96);
  box-shadow:0 24px 70px rgba(15,23,42,.18);
  backdrop-filter:blur(14px);
}
.vlg-cookie-notice[hidden]{display:none!important;}
body.vlg-theme .vlg-cookie-notice[hidden],
body.vlg-theme .vlg-cookie-notice[data-vlg-cookie-dismissed="1"]{display:none!important;visibility:hidden!important;pointer-events:none!important;}

.vlg-cookie-notice p{margin:0;color:#334155;font-size:14px;line-height:1.45;}
.vlg-cookie-notice a{font-weight:800;color:var(--vlg-primary);}
.vlg-cookie-notice__button{
  border:0;
  border-radius:999px;
  padding:12px 18px;
  font-weight:900;
  color:#fff;
  background:linear-gradient(135deg,var(--vlg-primary),var(--vlg-primary-2));
  cursor:pointer;
  white-space:nowrap;
}
.vlg-product-card,
.woocommerce ul.products li.product{
  min-width:0;
}
.woocommerce ul.products li.product .button,
.vlg-product-card .button,
.vlg-product-card .add_to_cart_button{
  touch-action:manipulation;
}
.woocommerce ul.products li.product .button.loading,
.vlg-product-card .button.loading{
  cursor:progress;
  opacity:.78;
}
.woocommerce ul.products li.product .button.loading::after,
.vlg-product-card .button.loading::after{
  content:'…';
  margin-left:6px;
}
.vlg-page-product .summary .price{
  letter-spacing:-.02em;
}
.vlg-page-cart .cart_totals,
.vlg-page-checkout .woocommerce-checkout-review-order{
  scroll-margin-top:110px;
}
.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select,
.woocommerce form .form-row.woocommerce-invalid textarea{
  border-color:#dc2626!important;
  box-shadow:0 0 0 4px rgba(220,38,38,.08)!important;
}
.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select,
.woocommerce form .form-row.woocommerce-validated textarea{
  border-color:#22c55e!important;
}
.vlg-search-suggestions,
.vlg-mini-cart-panel,
.vlg-cat-dropdown-panel{
  will-change:transform,opacity;
}
@media (max-width:700px){
  .vlg-cookie-notice{align-items:stretch;flex-direction:column;border-radius:18px;bottom:10px;width:calc(100vw - 20px);}
  .vlg-cookie-notice__button{width:100%;}
  .woocommerce-cart table.shop_table td.product-quantity input.qty{min-width:74px;}
}
@media (prefers-reduced-motion:reduce){
  .vlg-theme *,
  .vlg-theme *::before,
  .vlg-theme *::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
}
