/* Lightweight presentation only: native WooCommerce cart operations stay intact. */
.silverin-product-search { display: flex; gap: 12px; align-items: stretch; width: 100%; margin: 0 0 28px; }
.silverin-product-search input[type=search] { flex: 1; width: auto; min-width: 0; min-height: 48px; padding: 12px 16px; border: 1px solid var(--line, #e4ddd1); border-radius: 6px; background: #fff; font: inherit; }
.silverin-product-search button { min-height: 48px; padding: 12px 24px; border: 0; border-radius: 6px; background: var(--ink, #13110e); color: #fff; font: inherit; cursor: pointer; }
.silverin-product-search :is(input,button):focus-visible { outline: 2px solid var(--gold, #a98251); outline-offset: 4px; }
.woocommerce-cart .wc-block-cart { max-width: 1180px; margin: 36px auto; gap: 40px; align-items: start; }
.woocommerce-cart .wc-block-cart.is-large { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(310px, 1fr); }
.woocommerce-cart .wc-block-cart .wc-block-cart__main,
.woocommerce-cart .wc-block-cart .wc-block-cart__sidebar { width: auto; min-width: 0; padding: 0; margin: 0; }
.woocommerce-cart .wc-block-cart .wc-block-cart__sidebar { padding: 24px; background: var(--cream, #f3ede2); border: 1px solid var(--line, #e4ddd1); border-radius: 12px; }
.woocommerce-cart .wc-block-cart__totals-title { font-size: 22px !important; text-align: start !important; margin: 0 0 20px !important; text-transform: none !important; }
.woocommerce-cart .wc-block-cart-items { border: 0; border-collapse: separate; border-spacing: 0 14px; }
.woocommerce-cart .wc-block-cart-items__header { display: none; }
.woocommerce-cart .wc-block-cart-items__row { background: #fff; }
.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row td { border-block: 1px solid var(--line, #e4ddd1); padding: 20px 12px; vertical-align: top; }
.woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image { width: 128px; padding-inline-start: 20px; border-inline-start: 1px solid var(--line, #e4ddd1); border-start-start-radius: 10px; border-end-start-radius: 10px; }
.woocommerce-cart .wc-block-cart-item__image a { display: block; }
.woocommerce-cart .wc-block-cart-item__image img { display: block; width: 108px; height: 136px; object-fit: contain; object-position: center top; background: var(--paper, #fdfbf5); border-radius: 6px; }
.woocommerce-cart .wc-block-cart .wc-block-cart-item__product { padding-inline: 8px 16px !important; }
.woocommerce-cart .wc-block-cart .wc-block-components-product-name { font-size: 17px; line-height: 1.65; font-weight: 600; text-decoration: none; }
.woocommerce-cart .wc-block-components-product-metadata__description { font-size: 12px; color: var(--muted, #6f6960); line-height: 1.7; }
.woocommerce-cart .wc-block-cart-item__prices { margin-block: 8px; }
.woocommerce-cart .wc-block-cart .wc-block-cart-item__total { border-inline-end: 1px solid var(--line, #e4ddd1); border-start-end-radius: 10px; border-end-end-radius: 10px; white-space: nowrap; }
.woocommerce-cart .wc-block-cart-item__quantity { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 12px; }
.woocommerce-cart .wc-block-components-quantity-selector { border: 1px solid var(--line, #e4ddd1); border-radius: 6px; min-height: 44px; width: 120px; margin: 0; }
.woocommerce-cart .wc-block-cart-item__remove-link { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; margin: 0; }
.woocommerce-cart .wc-block-cart__submit-container .wc-block-components-button { width: 100%; min-height: 50px; background: var(--ink, #13110e); color: #fff; border-radius: 6px; text-decoration: none; }
.woocommerce-cart .wc-block-cart__submit-container { padding-top: 16px; }
.silverin-cart-hint { margin: 14px 0 0; color: var(--muted, #6f6960); font-size: 12px; line-height: 1.8; }
:is(.wc-block-cart,.wp-block-woocommerce-empty-cart-block,.silverin-minimal-checkout) :is(button,a,input,select,textarea):focus-visible { outline: 2px solid var(--gold, #a98251); outline-offset: 4px; }
.silverin-delivery-choice:has(input:checked) { background: rgba(169,130,81,.07); border-radius: 6px; }
.woocommerce-cart :is(.wc-block-cart-empty,.wp-block-woocommerce-empty-cart-block) .wp-block-button__link { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 12px 24px; border-radius: 6px; background: var(--ink, #13110e); color: #fff; }
@media (max-width: 781px) {
  /* A 16px input font avoids automatic mobile Safari form zoom. */
  :is(.wc-block-cart,.silverin-minimal-checkout,.silverin-product-search) :is(input,select,textarea),
  .select2-container .select2-search__field { font-size: 16px; }
  .woocommerce-cart .wc-block-cart { display: block; margin: 20px auto; }
  .woocommerce-cart .wc-block-cart .wc-block-cart__sidebar { margin-top: 26px; padding: 20px; }
  .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row { display: grid; grid-template-columns: 92px minmax(0, 1fr); padding: 14px; border: 1px solid var(--line, #e4ddd1); border-radius: 10px; margin-bottom: 14px; gap: 0 14px; }
  .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row td { border: 0; padding: 0 !important; width: auto; }
  .woocommerce-cart .wc-block-cart-item__image img { width: 92px; height: 118px; }
  .woocommerce-cart .wc-block-cart .wc-block-components-product-name { font-size: 15px; }
  /* Native WooCommerce puts line totals on row 1; do not overlap product names. */
  .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__image { grid-column: 1; grid-row: 1 / 3; }
  .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__product { grid-column: 2; grid-row: 1; min-width: 0; }
  .woocommerce-cart .wc-block-cart .wc-block-components-product-name { overflow-wrap: anywhere; }
  .woocommerce-cart .wc-block-cart table.wc-block-cart-items .wc-block-cart-item__total { grid-column: 2; grid-row: 2; text-align: start; padding-top: 10px !important; }
}
/* Homepage product rail: native horizontal swipe with a visible next-card peek. */
@media (max-width: 680px) {
  .home .products-section .woocommerce ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    direction: rtl !important;
    gap: 12px !important;
    overflow-x: auto !important;
    overflow-y: hidden;
    padding: 2px 2px 14px !important;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 14px;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: rgba(169,130,81,.65) transparent;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-inline: contain;
    touch-action: pan-x pan-y;
  }
  .home .products-section .woocommerce ul.products::before,
  .home .products-section .woocommerce ul.products::after {
    display: none !important;
    content: none !important;
  }
  .home .products-section .woocommerce ul.products li.product {
    flex: 0 0 clamp(218px, 74vw, 292px) !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
}

/* Motion is feedback, not a barrier: no loops, no hidden content or checkout delay. */
@media (prefers-reduced-motion: no-preference) {
  .woocommerce ul.products li.product, .woocommerce ul.products li.product .button,
  .woocommerce div.product form.cart .button, .wc-block-cart__submit-container a,
  .silverin-delivery-choice { transition: transform 180ms ease-out, background-color 180ms ease-out, border-color 180ms ease-out, box-shadow 180ms ease-out; }
  @media (hover: hover) {
    .woocommerce ul.products li.product:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(25,20,15,.06); }
    .woocommerce ul.products li.product .button:not(:disabled):not(.disabled):hover,
    .woocommerce div.product form.cart .button:not(:disabled):not(.disabled):hover { transform: translateY(-1px); }
  }
  .silverin-cart-feedback { animation: silverin-cart-feedback 240ms ease-out; }
  .silverin-total-feedback { animation: silverin-total-feedback 240ms ease-out; }
  @keyframes silverin-cart-feedback { 0%,100% { transform: scale(1); } 45% { transform: scale(1.08); } }
  @keyframes silverin-total-feedback { from { opacity: .6; transform: translateY(3px); } to { opacity: 1; transform: none; } }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .silverin-cart-feedback, .silverin-total-feedback { animation: none !important; }
  .woocommerce ul.products li.product, .woocommerce ul.products li.product .button,
  .woocommerce div.product form.cart .button, .silverin-delivery-choice { transition: none !important; transform: none !important; }
}


/* Silverin account-page refresh */
body.woocommerce-account .site-main > .woocommerce { width:min(1120px,calc(100% - 48px)); margin-inline:auto; padding-block:clamp(42px,7vw,88px); }
body.woocommerce-account .site-main > .woocommerce > h2 { margin:0 auto 24px; color:var(--ink); text-align:center; font:400 clamp(30px,4vw,44px)/1.2 var(--display); letter-spacing:-.025em; }
body.woocommerce-account form.woocommerce-form-login, body.woocommerce-account form.woocommerce-ResetPassword { position:relative; width:min(100%,590px); margin:0 auto; padding:clamp(22px,4vw,38px); overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 18px 48px rgba(35,28,19,.08); }
body.woocommerce-account form.woocommerce-form-login:before, body.woocommerce-account form.woocommerce-ResetPassword:before { content:""; position:absolute; inset:0 0 auto; height:3px; background:linear-gradient(90deg,var(--gold),var(--gold-light),var(--gold)); }
body.woocommerce-account form.woocommerce-form-login p.form-row, body.woocommerce-account form.woocommerce-ResetPassword p.form-row { margin:0 0 18px; }
body.woocommerce-account form.woocommerce-form-login label, body.woocommerce-account form.woocommerce-ResetPassword label { display:block; margin:0 0 7px; color:var(--ink-soft); font-size:13px; font-weight:700; }
body.woocommerce-account form.woocommerce-form-login .input-text, body.woocommerce-account form.woocommerce-ResetPassword .input-text { width:100%; min-height:50px; border:1px solid #d8d0c5; border-radius:7px; background:#fdfcf9; color:var(--ink); transition:border-color .18s ease,box-shadow .18s ease; }
body.woocommerce-account form.woocommerce-form-login .input-text:focus, body.woocommerce-account form.woocommerce-ResetPassword .input-text:focus { border-color:var(--gold); background:#fff; box-shadow:0 0 0 3px rgba(169,130,81,.13); outline:0; }
body.woocommerce-account form.woocommerce-form-login .form-row:last-of-type { display:flex; align-items:center; flex-wrap:wrap; gap:12px 18px; margin:2px 0 0; }
body.woocommerce-account .woocommerce-form-login__rememberme { display:inline-flex; align-items:center; gap:8px; margin:0 auto 0 0; color:var(--muted); font-size:12px; font-weight:400; }
body.woocommerce-account .woocommerce-form-login__rememberme input { width:17px; height:17px; accent-color:var(--gold); }
body.woocommerce-account form.woocommerce-form-login button.button, body.woocommerce-account form.woocommerce-ResetPassword button.button, body.woocommerce-account .woocommerce-MyAccount-content a.button { min-height:48px; padding:0 25px; border:1px solid var(--ink); border-radius:7px; background:var(--ink); color:#fff; font-size:13px; font-weight:700; transition:background .18s ease,transform .18s ease; }
body.woocommerce-account form.woocommerce-form-login button.button:hover, body.woocommerce-account form.woocommerce-ResetPassword button.button:hover, body.woocommerce-account .woocommerce-MyAccount-content a.button:hover { background:#332b21; transform:translateY(-1px); }
body.woocommerce-account form.woocommerce-form-login .lost_password { margin:19px 0 0!important; color:#87683f; font-size:12px; text-align:center; }
body.woocommerce-account form.woocommerce-form-login .lost_password a { text-decoration:underline; text-underline-offset:3px; }
body.woocommerce-account .woocommerce-MyAccount-navigation, body.woocommerce-account .woocommerce-MyAccount-content { box-sizing:border-box; padding:clamp(18px,3vw,30px); border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 10px 28px rgba(35,28,19,.05); }
body.woocommerce-account .woocommerce-MyAccount-navigation { float:none; width:auto; }
body.woocommerce-account .woocommerce-MyAccount-navigation ul { margin:0; padding:0; list-style:none; }
body.woocommerce-account .woocommerce-MyAccount-navigation li { margin:0; }
body.woocommerce-account .woocommerce-MyAccount-navigation li a { display:block; padding:12px 14px; border-radius:7px; color:var(--ink-soft); font-size:13px; transition:color .18s ease,background .18s ease; }
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover, body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a { background:var(--cream); color:#795a36; }
body.woocommerce-account .woocommerce-MyAccount-content { float:none; width:auto; min-width:0; line-height:1.8; }
body.woocommerce-account .woocommerce-MyAccount-content > p:first-child { margin-top:0; }
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button) { color:#795a36; text-underline-offset:3px; }
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table { border-collapse:separate; border-spacing:0; border-color:var(--line); border-radius:8px; overflow:hidden; }
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table th, body.woocommerce-account .woocommerce-MyAccount-content table.shop_table td { padding:13px 14px; border-color:var(--line); }
@media(min-width:782px) { body.woocommerce-account .woocommerce-MyAccount-navigation { float:right; width:25%; } body.woocommerce-account .woocommerce-MyAccount-content { float:left; width:71%; } }
@media(max-width:680px) { body.woocommerce-account .site-main > .woocommerce { width:min(100% - 28px,590px); padding-block:34px 48px; } body.woocommerce-account .site-main > .woocommerce > h2 { margin-bottom:18px; font-size:31px; } body.woocommerce-account form.woocommerce-form-login, body.woocommerce-account form.woocommerce-ResetPassword { padding:23px 18px; border-radius:10px; } body.woocommerce-account form.woocommerce-form-login .form-row:last-of-type { align-items:stretch; } body.woocommerce-account form.woocommerce-form-login button.button, body.woocommerce-account form.woocommerce-ResetPassword button.button { width:100%; } body.woocommerce-account .woocommerce-MyAccount-navigation { margin-bottom:16px; padding:8px; } body.woocommerce-account .woocommerce-MyAccount-navigation ul { display:flex; flex-wrap:wrap; gap:4px; } body.woocommerce-account .woocommerce-MyAccount-navigation li a { padding:9px 11px; font-size:12px; } body.woocommerce-account .woocommerce-MyAccount-content { padding:18px 14px; overflow-wrap:anywhere; } body.woocommerce-account .woocommerce-MyAccount-content table.shop_table th, body.woocommerce-account .woocommerce-MyAccount-content table.shop_table td { padding:10px 8px; font-size:12px; } }
@media(prefers-reduced-motion:reduce) { body.woocommerce-account form.woocommerce-form-login *, body.woocommerce-account form.woocommerce-ResetPassword *, body.woocommerce-account .woocommerce-MyAccount-navigation li a, body.woocommerce-account .woocommerce-MyAccount-content a.button { transition:none!important; } }


/* Correct account page's nested theme wrappers and heading alignment. */
body.woocommerce-account .site-main > .section { padding-block:clamp(42px,6vw,78px); }
body.woocommerce-account .site-main > .section > .wrap { width:min(1120px,calc(100% - 48px)); margin-inline:auto; }
body.woocommerce-account .site-main .woocommerce > h2 { margin:0 auto 24px; color:var(--ink); text-align:center; font:400 clamp(30px,4vw,44px)/1.2 var(--display); letter-spacing:-.025em; }
@media(max-width:680px) { body.woocommerce-account .site-main > .section { padding-block:32px 48px; } body.woocommerce-account .site-main > .section > .wrap { width:min(100% - 28px,590px); } body.woocommerce-account .site-main .woocommerce > h2 { margin-bottom:18px; font-size:31px; } }


/* Account sign-in: minimal brand styling, with no dated star-rating decoration. */
body.woocommerce-account form.woocommerce-form-login {
  width: min(100%, 500px);
  padding: clamp(24px, 5vw, 42px);
  border-color: #e8e0d4;
  border-radius: 18px;
  box-shadow: 0 20px 55px rgba(20, 34, 48, .08);
}
body.woocommerce-account form.woocommerce-form-login:before { height: 2px; }
body.woocommerce-account form.woocommerce-form-login p.form-row { margin-bottom: 20px; }
body.woocommerce-account form.woocommerce-form-login label { font-size: 14px; }
body.woocommerce-account form.woocommerce-form-login .input-text {
  min-height: 56px;
  padding: 0 15px;
  border-radius: 10px;
  background: #fff;
  font-size: 16px;
}
body.woocommerce-account form.woocommerce-form-login .form-row:last-of-type {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  margin-top: 6px;
}
body.woocommerce-account .woocommerce-form-login__rememberme { margin: 0; font-size: 13px; }
body.woocommerce-account form.woocommerce-form-login button.button {
  width: 100%;
  min-height: 54px;
  border-radius: 10px;
  background: #132f43;
  border-color: #132f43;
  font-size: 15px;
}
body.woocommerce-account form.woocommerce-form-login button.button:hover { background: #204762; }
body.woocommerce-account form.woocommerce-form-login .lost_password { margin-top: 16px !important; font-size: 14px; }
body.woocommerce-account form.woocommerce-form-login .lost_password a { text-decoration: none; }
body.woocommerce-account form.woocommerce-form-login .lost_password a:hover { text-decoration: underline; }
body.woocommerce-account .woocommerce-form-login .star-rating,
body.woocommerce-account .woocommerce-form-login p.stars { display: none !important; }
body.woocommerce-account .woocommerce-MyAccount-content .star-rating,
body.woocommerce-account .woocommerce-MyAccount-content p.stars { display: none !important; }
@media(max-width:680px) {
  body.woocommerce-account form.woocommerce-form-login { width: 100%; padding: 24px 18px; border-radius: 15px; }
  body.woocommerce-account form.woocommerce-form-login button.button { min-height: 52px; }
}